aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/SelectionHandle.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/SelectionHandle.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/SelectionHandle.java141
1 files changed, 0 insertions, 141 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/SelectionHandle.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/SelectionHandle.java
deleted file mode 100644
index c2db2431c..000000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/SelectionHandle.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Eclipse Public License, Version 1.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.eclipse.org/org/documents/epl-v10.php
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.ide.eclipse.adt.internal.editors.layout.gle2;
-
-import org.eclipse.swt.SWT;
-
-/**
- * A selection handle is a small rectangle on the border of a selected view which lets you
- * change the size of the view by dragging it.
- */
-public class SelectionHandle {
- /**
- * Size of the selection handle radius, in control coordinates. Note that this isn't
- * necessarily a <b>circular</b> radius; in the case of a rectangular handle, the
- * width and the height are both equal to this radius.
- * Note also that this radius is in <b>control</b> coordinates, whereas the rest
- * of the class operates in layout coordinates. This is because we do not want the
- * selection handles to grow or shrink along with the screen zoom; they are always
- * at the given pixel size in the control.
- */
- public final static int PIXEL_RADIUS = 3;
-
- /**
- * Extra number of pixels to look beyond the actual radius of the selection handle
- * when matching mouse positions to handles
- */
- public final static int PIXEL_MARGIN = 2;
-
- /** The position of the handle in the selection rectangle */
- enum Position {
- TOP_MIDDLE(SWT.CURSOR_SIZEN),
- TOP_RIGHT(SWT.CURSOR_SIZENE),
- RIGHT_MIDDLE(SWT.CURSOR_SIZEE),
- BOTTOM_RIGHT(SWT.CURSOR_SIZESE),
- BOTTOM_MIDDLE(SWT.CURSOR_SIZES),
- BOTTOM_LEFT(SWT.CURSOR_SIZESW),
- LEFT_MIDDLE(SWT.CURSOR_SIZEW),
- TOP_LEFT(SWT.CURSOR_SIZENW);
-
- /** Corresponding SWT cursor value */
- private int mSwtCursor;
-
- private Position(int swtCursor) {
- mSwtCursor = swtCursor;
- }
-
- private int getCursorType() {
- return mSwtCursor;
- }
-
- /** Is the {@link SelectionHandle} somewhere on the left edge? */
- boolean isLeft() {
- return this == TOP_LEFT || this == LEFT_MIDDLE || this == BOTTOM_LEFT;
- }
-
- /** Is the {@link SelectionHandle} somewhere on the right edge? */
- boolean isRight() {
- return this == TOP_RIGHT || this == RIGHT_MIDDLE || this == BOTTOM_RIGHT;
- }
-
- /** Is the {@link SelectionHandle} somewhere on the top edge? */
- boolean isTop() {
- return this == TOP_LEFT || this == TOP_MIDDLE || this == TOP_RIGHT;
- }
-
- /** Is the {@link SelectionHandle} somewhere on the bottom edge? */
- boolean isBottom() {
- return this == BOTTOM_LEFT || this == BOTTOM_MIDDLE || this == BOTTOM_RIGHT;
- }
- };
-
- /** The x coordinate of the center of the selection handle */
- public final int centerX;
- /** The y coordinate of the center of the selection handle */
- public final int centerY;
- /** The position of the handle in the selection rectangle */
- private final Position mPosition;
-
- /**
- * Constructs a new {@link SelectionHandle} at the given layout coordinate
- * corresponding to a handle at the given {@link Position}.
- *
- * @param centerX the x coordinate of the center of the selection handle
- * @param centerY y coordinate of the center of the selection handle
- * @param position the position of the handle in the selection rectangle
- */
- public SelectionHandle(int centerX, int centerY, Position position) {
- mPosition = position;
- this.centerX = centerX;
- this.centerY = centerY;
- }
-
- /**
- * Determines whether the given {@link LayoutPoint} is within the given distance in
- * layout coordinates. The distance should incorporate at least the equivalent
- * distance to the control coordinate space {@link #PIXEL_RADIUS}, but usually with a
- * few extra pixels added in to make the corners easier to target.
- *
- * @param point the mouse position in layout coordinates
- * @param distance the distance from the center of the handle to check whether the
- * point fits within
- * @return true if the given point is within the given distance of this handle
- */
- public boolean contains(LayoutPoint point, int distance) {
- return (point.x >= centerX - distance
- && point.x <= centerX + distance
- && point.y >= centerY - distance
- && point.y <= centerY + distance);
- }
-
- /**
- * Returns the position of the handle in the selection rectangle
- *
- * @return the position of the handle in the selection rectangle
- */
- public Position getPosition() {
- return mPosition;
- }
-
- /**
- * Returns the SWT cursor type to use for this selection handle
- *
- * @return the position of the handle in the selection rectangle
- */
- public int getSwtCursorType() {
- return mPosition.getCursorType();
- }
-}