public void setInputControllerListener(IInputControllerListener listener) { if (inputController != null) { inputController.setListener(listener); smartGuideView.setSmartGuideMoreHandler(listener); } }
@Override public void run() { setVisibility(View.INVISIBLE); } };
public void setInputMode(int inputMode) { if (inputController != null) { inputController.setInputMode(inputMode); } }
public static Map<String, Typeface> loadFontsFromAssets(AssetManager assetManager) { return loadFontsFromAssets(assetManager, "fonts"); }
public void setTypefaces(@NonNull Map<String, Typeface> typefaceMap) { this.typefaceMap = typefaceMap; for (int i = 0, count = getChildCount(); i < count; ++i) { View view = getChildAt(i); if (view instanceof IRenderView) { IRenderView renderView = (IRenderView) view; renderView.setCustomTypefaces(typefaceMap); } } }
@Override public final void invalidate(Renderer renderer, EnumSet<LayerType> layers) { invalidate(renderer, 0, 0, viewWidth, viewHeight, layers); }
public static Typeface getTypeface(String fontFamily, String fontStyle, String fontVariant, int fontWeight) { return getTypeface(fontFamily, getTypefaceStyle(fontStyle, fontVariant, fontWeight)); }
@Override public void onLongPress(MotionEvent event) { final float x = event.getX(); final float y = event.getY(); IInputControllerListener listener = getListener(); if (listener != null) listener.onLongPress(x, y, editor.hitBlock(x, y)); }
@Override public void viewTransformChanged(Renderer renderer) { update(block, UpdateCause.VIEW); }
@Override public final IPath createPath() { return new Path(); }
@Override public CustomTextSpan createFromParcel(Parcel in) { return new CustomTextSpan(in); }
@Override public void updateMeasureState(TextPaint ds) { applyCustomTypeFace(ds); }
@Override public void curveTo(float x1, float y1, float x2, float y2, float x, float y) { cubicTo(x1, y1, x2, y2, x, y); }
@Override public void closePath() { close(); }
public int getInputMode() { return inputController != null ? inputController.getInputMode() : InputController.INPUT_MODE_NONE; }
public void setImageLoader(ImageLoader imageLoader) { this.imageLoader = imageLoader; // transfer image loader to render views if (renderView != null) { renderView.setImageLoader(imageLoader); } else if (layerViews != null) { for (int i = 0; i < layerViews.length; ++i) { if (layerViews[i] != null) layerViews[i].setImageLoader(imageLoader); } } }
private final float getRightSideBearing(String label, int start, int end, RectF charBox) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { float advance = paint.getRunAdvance(label, start, end, start, end, false, end); return x_px2mm(advance - charBox.right); } else { return 0; } }
@Override public Rectangle[] getCharacterBoundingBoxes(Text text, TextSpan[] spans) { GlyphMetrics[] metrics = getGlyphMetrics(text, spans); Rectangle[] charBoxes = new Rectangle[metrics.length]; for (int i = 0; i < charBoxes.length; ++i) charBoxes[i] = new Rectangle(metrics[i].boundingBox); return charBoxes; }
@Override public void run() { setVisibility(View.INVISIBLE); } });
@Override public void partChanged(Editor editor) { activeBlock = selectedBlock = null; update(null, UpdateCause.VISUAL); }