android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/CanvasElement.java | 25 + android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelection.java | 203 ++++++++++ android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionCanvasElement.java | 199 --------- android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandle.java | 100 ++++ android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandleCanvasElement.java | 96 ---- android/experimental/LOAndroid3/src/java/org/libreoffice/overlay/TextCursorView.java | 7 6 files changed, 331 insertions(+), 299 deletions(-)
New commits: commit 888682c22af79dc7bc09a4f5d017f2c98bff817f Author: Tomaž Vajngerl <tomaz.vajng...@collabora.co.uk> Date: Thu Mar 26 19:55:18 2015 +0900 android: rename graphic selection and handle Change-Id: I7bf89b92190ba37535fa89118269d706d6bf05d9 diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionCanvasElement.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelection.java similarity index 80% rename from android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionCanvasElement.java rename to android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelection.java index a205c67..8251495 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionCanvasElement.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelection.java @@ -17,13 +17,13 @@ import android.graphics.RectF; import org.libreoffice.LOKitShell; import org.mozilla.gecko.gfx.LayerView; -import static org.libreoffice.canvas.GraphicSelectionHandleCanvasElement.HandlePosition; +import static org.libreoffice.canvas.GraphicSelectionHandle.HandlePosition; /** * This class is responsible to draw and reposition the selection * rectangle. */ -public class GraphicSelectionCanvasElement implements CanvasElement { +public class GraphicSelection implements CanvasElement { private final Paint mPaint; public RectF mRectangle = new RectF(); public RectF mScaledRectangle = new RectF(); @@ -31,23 +31,23 @@ public class GraphicSelectionCanvasElement implements CanvasElement { private DragType mType = DragType.NONE; private PointF mStartDragPosition; - private GraphicSelectionHandleCanvasElement mHandles[] = new GraphicSelectionHandleCanvasElement[8]; - private GraphicSelectionHandleCanvasElement mDragHandle = null; + private GraphicSelectionHandle mHandles[] = new GraphicSelectionHandle[8]; + private GraphicSelectionHandle mDragHandle = null; - public GraphicSelectionCanvasElement() { + public GraphicSelection() { mPaint = new Paint(); mPaint.setStyle(Paint.Style.STROKE); mPaint.setColor(Color.BLACK); mPaint.setStrokeWidth(2); - mHandles[0] = new GraphicSelectionHandleCanvasElement(HandlePosition.TOP_LEFT); - mHandles[1] = new GraphicSelectionHandleCanvasElement(HandlePosition.TOP); - mHandles[2] = new GraphicSelectionHandleCanvasElement(HandlePosition.TOP_RIGHT); - mHandles[3] = new GraphicSelectionHandleCanvasElement(HandlePosition.LEFT); - mHandles[4] = new GraphicSelectionHandleCanvasElement(HandlePosition.RIGHT); - mHandles[5] = new GraphicSelectionHandleCanvasElement(HandlePosition.BOTTOM_LEFT); - mHandles[6] = new GraphicSelectionHandleCanvasElement(HandlePosition.BOTTOM); - mHandles[7] = new GraphicSelectionHandleCanvasElement(HandlePosition.BOTTOM_RIGHT); + mHandles[0] = new GraphicSelectionHandle(HandlePosition.TOP_LEFT); + mHandles[1] = new GraphicSelectionHandle(HandlePosition.TOP); + mHandles[2] = new GraphicSelectionHandle(HandlePosition.TOP_RIGHT); + mHandles[3] = new GraphicSelectionHandle(HandlePosition.LEFT); + mHandles[4] = new GraphicSelectionHandle(HandlePosition.RIGHT); + mHandles[5] = new GraphicSelectionHandle(HandlePosition.BOTTOM_LEFT); + mHandles[6] = new GraphicSelectionHandle(HandlePosition.BOTTOM); + mHandles[7] = new GraphicSelectionHandle(HandlePosition.BOTTOM_RIGHT); } public void reposition(RectF scaledRectangle) { @@ -66,7 +66,7 @@ public class GraphicSelectionCanvasElement implements CanvasElement { public boolean contains(float x, float y) { // Check if handle was hit - for (GraphicSelectionHandleCanvasElement handle : mHandles) { + for (GraphicSelectionHandle handle : mHandles) { if (handle.contains(x, y)) { return true; } @@ -80,7 +80,7 @@ public class GraphicSelectionCanvasElement implements CanvasElement { @Override public void draw(Canvas canvas) { canvas.drawRect(mDrawRectangle, mPaint); - for (GraphicSelectionHandleCanvasElement handle : mHandles) { + for (GraphicSelectionHandle handle : mHandles) { handle.draw(canvas); } } @@ -88,7 +88,7 @@ public class GraphicSelectionCanvasElement implements CanvasElement { public void dragStart(PointF position) { mDragHandle = null; mType = DragType.NONE; - for (GraphicSelectionHandleCanvasElement handle : mHandles) { + for (GraphicSelectionHandle handle : mHandles) { if (handle.contains(position.x, position.y)) { mDragHandle = handle; mDragHandle.select(); @@ -189,7 +189,7 @@ public class GraphicSelectionCanvasElement implements CanvasElement { public void reset() { mDragHandle = null; - for (GraphicSelectionHandleCanvasElement handle : mHandles) { + for (GraphicSelectionHandle handle : mHandles) { handle.reset(); } } diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandleCanvasElement.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandle.java similarity index 93% rename from android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandleCanvasElement.java rename to android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandle.java index 5bf544c..109592e 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandleCanvasElement.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandle.java @@ -19,7 +19,7 @@ import android.graphics.RectF; * position and perform a hit test to determine if the selection handle was * touched. */ -public class GraphicSelectionHandleCanvasElement implements CanvasElement { +public class GraphicSelectionHandle implements CanvasElement { private final HandlePosition mHandlePosition; public PointF mPosition = new PointF(); private float mRadius = 20.0f; @@ -29,7 +29,7 @@ public class GraphicSelectionHandleCanvasElement implements CanvasElement { private RectF mHitRect = new RectF(); private boolean mSelected = false; - public GraphicSelectionHandleCanvasElement(HandlePosition position) { + public GraphicSelectionHandle(HandlePosition position) { mHandlePosition = position; mStrokePaint.setStyle(Paint.Style.STROKE); diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/overlay/TextCursorView.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/overlay/TextCursorView.java index 97230cf..818dbc4 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/overlay/TextCursorView.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/overlay/TextCursorView.java @@ -20,8 +20,7 @@ import android.view.MotionEvent; import android.view.View; import org.libreoffice.LOKitShell; -import org.libreoffice.canvas.GraphicSelectionCanvasElement; -import org.libreoffice.canvas.GraphicSelectionHandleCanvasElement; +import org.libreoffice.canvas.GraphicSelection; import org.mozilla.gecko.gfx.ImmutableViewportMetrics; import org.mozilla.gecko.gfx.LayerView; import org.mozilla.gecko.gfx.RectUtils; @@ -49,7 +48,7 @@ public class TextCursorView extends View implements View.OnTouchListener { private Paint mSelectionPaint = new Paint(); private boolean mSelectionsVisible; - private GraphicSelectionCanvasElement mGraphicSelection; + private GraphicSelection mGraphicSelection; private boolean mGraphicSelectionVisible; private boolean mGraphicSelectionMove = false; @@ -86,7 +85,7 @@ public class TextCursorView extends View implements View.OnTouchListener { mSelectionPaint.setAlpha(50); mSelectionsVisible = false; - mGraphicSelection = new GraphicSelectionCanvasElement(); + mGraphicSelection = new GraphicSelection(); mGraphicSelectionVisible = false; commit 57e5a175c439bc0a1e0ca0fc45c6668b3afa6268 Author: Tomaž Vajngerl <tomaz.vajng...@collabora.co.uk> Date: Thu Mar 26 19:50:49 2015 +0900 android: introduce CanvasElement interface Change-Id: Ic3cb636e397c110af54974159892b32b6c4c33c1 diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/CanvasElement.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/CanvasElement.java new file mode 100644 index 0000000..154d4ce --- /dev/null +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/CanvasElement.java @@ -0,0 +1,25 @@ +/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +package org.libreoffice.canvas; + +import android.graphics.Canvas; + +/** + * Canvas element is an element (or part) that is drawn canvas and can + * potentially be interacted with. + */ +public interface CanvasElement { + /** + * Called when the element needs to be draw no the canvas. + * @param canvas - the canvas + */ + void draw(Canvas canvas); +} +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionCanvasElement.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionCanvasElement.java index 909d808..a205c67 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionCanvasElement.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionCanvasElement.java @@ -23,7 +23,7 @@ import static org.libreoffice.canvas.GraphicSelectionHandleCanvasElement.HandleP * This class is responsible to draw and reposition the selection * rectangle. */ -public class GraphicSelectionCanvasElement { +public class GraphicSelectionCanvasElement implements CanvasElement { private final Paint mPaint; public RectF mRectangle = new RectF(); public RectF mScaledRectangle = new RectF(); @@ -74,6 +74,10 @@ public class GraphicSelectionCanvasElement { return mScaledRectangle.contains(x, y); } + /** + * @see org.libreoffice.canvas.CanvasElement#draw(android.graphics.Canvas) + */ + @Override public void draw(Canvas canvas) { canvas.drawRect(mDrawRectangle, mPaint); for (GraphicSelectionHandleCanvasElement handle : mHandles) { diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandleCanvasElement.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandleCanvasElement.java index 62b6bc1..5bf544c 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandleCanvasElement.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/canvas/GraphicSelectionHandleCanvasElement.java @@ -19,7 +19,7 @@ import android.graphics.RectF; * position and perform a hit test to determine if the selection handle was * touched. */ -public class GraphicSelectionHandleCanvasElement { +public class GraphicSelectionHandleCanvasElement implements CanvasElement { private final HandlePosition mHandlePosition; public PointF mPosition = new PointF(); private float mRadius = 20.0f; @@ -47,6 +47,10 @@ public class GraphicSelectionHandleCanvasElement { return mHandlePosition; } + /** + * @see org.libreoffice.canvas.CanvasElement#draw(android.graphics.Canvas) + */ + @Override public void draw(Canvas canvas) { if (mSelected) { drawFilledCircle(canvas, mPosition.x, mPosition.y, mRadius, mStrokePaint, mSelectedFillPaint);
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits