From 0398af76eafcb115d9cbe4ff875594948c6b2ea1 Mon Sep 17 00:00:00 2001
From: Florian Hoelzl <hoelzl@fortiss.org>
Date: Thu, 5 Jan 2012 09:19:19 +0000
Subject: [PATCH] cleanup tooling.base.ui => YELLOW refs 311

---
 ...atedTextCellDatabindingEditingSupport.java |  13 +-
 ...ractTextCellDatabindingEditingSupport.java |  17 +-
 .../base/ui/utils/RectangleLayoutUtils.java   | 162 ++++++++++++------
 3 files changed, 123 insertions(+), 69 deletions(-)

diff --git a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/databinding/AbstractDecoratedTextCellDatabindingEditingSupport.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/databinding/AbstractDecoratedTextCellDatabindingEditingSupport.java
index 266aa31fa..27ad33735 100644
--- a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/databinding/AbstractDecoratedTextCellDatabindingEditingSupport.java
+++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/databinding/AbstractDecoratedTextCellDatabindingEditingSupport.java
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
+$Id$
 |                                                                          |
 | Copyright 2011 ForTISS GmbH                     |
 |                                                                          |
@@ -37,14 +37,11 @@ import org.fortiss.tooling.kernel.ui.util.DataBindingUtils;
  * Decoration is in effect if either {@link #getTextValidator()} or
  * {@link #getTextPostConvertValidator()} returns a non-null {@link IValidator}.
  * 
- * @author hoelzlf
- * @author $Author: hoelzlf $
- * @version $Rev: 1670 $
- * @levd.rating RED Rev:
+ * @author hoelzl
+ * @author $Author$
+ * @version $Rev$
+ * @ConQAT.Rating YELLOW Hash: 06F0B1246D80A923D8D6CC99575F57A5
  */
-// TODO (FH): I think we do not need this class anymore
-// Only data state editor uses it. Isnt there a part in MIRA
-// with cell editing? If so we should use MIRAs version of data binding
 public abstract class AbstractDecoratedTextCellDatabindingEditingSupport extends
 		AbstractTextCellDatabindingEditingSupport {
 
diff --git a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/databinding/AbstractTextCellDatabindingEditingSupport.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/databinding/AbstractTextCellDatabindingEditingSupport.java
index ce911d102..958c9868e 100644
--- a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/databinding/AbstractTextCellDatabindingEditingSupport.java
+++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/databinding/AbstractTextCellDatabindingEditingSupport.java
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
+$Id$
 |                                                                          |
 | Copyright 2011 ForTISS GmbH                     |
 |                                                                          |
@@ -36,14 +36,10 @@ import org.fortiss.tooling.kernel.ui.util.DataBindingUtils;
  * Abstract base class for inline text cell editors using data binding.
  * 
  * @author hoelzlf
- * @author $Author: hoelzlf $
- * @version $Rev: 5848 $
- * @levd.rating RED Rev:
+ * @author $Author$
+ * @version $Rev$
+ * @ConQAT.Rating YELLOW Hash: 4332834DD629BC28D0C0E6C5F3FBEE60
  */
-// TODO (FH): I think we do not need this class anymore
-// Only data state editor uses it. Isnt there a part in MIRA
-// with cell editing? If so we should use MIRAs version of data binding
-
 public abstract class AbstractTextCellDatabindingEditingSupport extends
 		EditingSupport {
 
@@ -151,11 +147,6 @@ public abstract class AbstractTextCellDatabindingEditingSupport extends
 	 * deactivated. This assures that no binding created by
 	 * {@link #createBinding(CellEditor, ViewerCell, CellEditor, DataBindingContext)}
 	 * is left behind in the {@link DataBindingContext}.
-	 * 
-	 * @author hoelzlf
-	 * @author $Author: hoelzlf $
-	 * @version $Rev: 5848 $
-	 * @levd.rating RED Rev:
 	 */
 	private class ColumnViewerEditorActivationListenerHelper extends
 			ColumnViewerEditorActivationListener {
diff --git a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/utils/RectangleLayoutUtils.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/utils/RectangleLayoutUtils.java
index 79a972a54..b3c002c18 100644
--- a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/utils/RectangleLayoutUtils.java
+++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/utils/RectangleLayoutUtils.java
@@ -17,37 +17,61 @@ $Id$
 +--------------------------------------------------------------------------*/
 package org.fortiss.tooling.base.ui.utils;
 
+import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_CONNECTOR_SIZE;
+import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_SHAPE_INSETS;
+import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_SHAPE_MINIMUM_HEIGHT;
+import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_SHAPE_MINIMUM_WIDTH;
+import static org.fortiss.tooling.base.model.layout.EOrientation.EAST;
+import static org.fortiss.tooling.base.model.layout.EOrientation.NORTH;
+import static org.fortiss.tooling.base.model.layout.EOrientation.SOUTH;
+import static org.fortiss.tooling.base.model.layout.EOrientation.WEST;
+import static org.fortiss.tooling.base.ui.utils.LayoutDataUtils.getAbsolute;
+import static org.fortiss.tooling.base.ui.utils.LayoutDataUtils.getConnectorOffsetOrientation;
+import static org.fortiss.tooling.base.ui.utils.LayoutDataUtils.getNodePosition;
+import static org.fortiss.tooling.base.ui.utils.LayoutDataUtils.getNodeSize;
+import static org.fortiss.tooling.base.ui.utils.LayoutDataUtils.setConnectorOffsetOrientation;
+import static org.fortiss.tooling.base.ui.utils.LayoutDataUtils.setNodePosition;
+import static org.fortiss.tooling.base.ui.utils.SnapToGridUtils.snapToGrid;
+import static org.fortiss.tooling.base.utils.LayoutModelElementFactory.createOffsetOrientation;
+
 import java.awt.Polygon;
 
 import org.eclipse.draw2d.geometry.Dimension;
 import org.eclipse.draw2d.geometry.Point;
 import org.eclipse.draw2d.geometry.Rectangle;
-import org.fortiss.tooling.base.layout.DefaultLayoutConstants;
 import org.fortiss.tooling.base.model.layout.EOrientation;
 import org.fortiss.tooling.base.model.layout.ILayoutedModelElement;
 import org.fortiss.tooling.base.model.layout.OffsetOrientation;
 import org.fortiss.tooling.base.ui.dnd.gef.ElementDropContext;
-import org.fortiss.tooling.base.utils.LayoutModelElementFactory;
 
 /**
  * Utility class for rectangle-shaped edit part layout.
  * 
  * @author wandinger
  * @author hummel
+ * @author hoelzl
  * @author $Author$
  * @version $Rev$
- * @ConQAT.Rating YELLOW Hash: 3DAA7FF0B916B47CC06441E6AC6808BC
+ * @ConQAT.Rating YELLOW Hash: 80F0CE6BDF08AD19CD6F1A664995CE02
  */
 public class RectangleLayoutUtils {
 
 	/**
 	 * Returns the {@link OffsetOrientation} of the point on the rectangle
 	 * border having a given Point inside the rectangle.
+	 * 
+	 * @param source
+	 *            the relative coordinates in the rectangle
+	 * @param rectangleSize
+	 *            the size of the rectangle
+	 * @param inset
+	 *            the inset from each side
+	 * @return the offset and orientation
 	 */
 	public static OffsetOrientation calculateRectangleBorderOrientation(
 			Point source, Dimension rectangleSize, int inset) {
 		int offset = 0;
-		EOrientation orientation = EOrientation.NORTH;
+		EOrientation orientation = NORTH;
 
 		// The figure bounds
 		Rectangle bounds = new Rectangle(0, 0, rectangleSize.width,
@@ -69,28 +93,37 @@ public class RectangleLayoutUtils {
 
 		// Determine in which sector we are and clamp the position accordingly
 		if (northSector.contains(source.x, source.y)) {
-			orientation = EOrientation.NORTH;
+			orientation = NORTH;
 			offset = (int) (source.x * (1 - (2 * inset) / (double) bounds.width));
 		}
 		if (westSector.contains(source.x, source.y)) {
-			orientation = EOrientation.WEST;
+			orientation = WEST;
 			offset = (int) (source.y * (1 - (2 * inset)
 					/ (double) bounds.height));
 		}
 		if (southSector.contains(source.x, source.y)) {
-			orientation = EOrientation.SOUTH;
+			orientation = SOUTH;
 			offset = (int) (source.x * (1 - (2 * inset) / (double) bounds.width));
 		}
 		if (eastSector.contains(source.x, source.y)) {
-			orientation = EOrientation.EAST;
+			orientation = EAST;
 			offset = (int) (source.y * (1 - (2 * inset)
 					/ (double) bounds.height));
 		}
-		return LayoutModelElementFactory.createOffsetOrientation(offset,
-				orientation, null);
+		return createOffsetOrientation(offset, orientation, null);
 	}
 
-	/** Ensure that the minimum size of a rectangular shape is redeemed. */
+	/**
+	 * Ensure that the minimum size of a rectangular shape is redeemed.
+	 * 
+	 * @param oldSize
+	 *            the old size to be adjusted
+	 * @param minimumWidth
+	 *            the minimum to be redeemed
+	 * @param minimumHeight
+	 *            the minimum height to be redeemed
+	 * @return the new dimensions
+	 */
 	public static Dimension clampRectangularShapeSize(Dimension oldSize,
 			int minimumWidth, int minimumHeight) {
 		// check for minimum size
@@ -100,82 +133,115 @@ public class RectangleLayoutUtils {
 		return newSize;
 	}
 
-	/** Ensure that the minimum size of a rectangular shape is redeemed. */
+	/**
+	 * Ensure that the minimum size of a rectangular shape is redeemed.
+	 * 
+	 * @param oldSize
+	 *            the old size to be adjusted
+	 * @return the new dimensions
+	 */
 	public static Dimension retainMinimumRectangularShapeSize(Dimension oldSize) {
-		return clampRectangularShapeSize(oldSize,
-				DefaultLayoutConstants.DEFAULT_SHAPE_MINIMUM_WIDTH,
-				DefaultLayoutConstants.DEFAULT_SHAPE_MINIMUM_HEIGHT);
+		return clampRectangularShapeSize(oldSize, DEFAULT_SHAPE_MINIMUM_WIDTH,
+				DEFAULT_SHAPE_MINIMUM_HEIGHT);
 	}
 
-	/** Layouts the given connector within the surrounding rectangle. */
+	/**
+	 * Layouts the given connector within the surrounding rectangle.
+	 * 
+	 * @param layouted
+	 *            the connector element
+	 * @param container
+	 *            the container of the connector
+	 * @param location
+	 *            the location in the rectangle to be used as hint
+	 */
 	public static void layoutConnectorInRectangle(
 			ILayoutedModelElement layouted, ILayoutedModelElement container,
 			Point location) {
 		Point position = location.getCopy();
-		org.fortiss.tooling.base.model.layout.Point np = LayoutDataUtils
-				.getNodePosition(container);
+		org.fortiss.tooling.base.model.layout.Point np = getNodePosition(container);
 		position.translate(-np.getX(), -np.getY());
 		// do border clamping
-		org.fortiss.tooling.base.model.layout.Dimension nd = LayoutDataUtils
-				.getNodeSize(container);
+		org.fortiss.tooling.base.model.layout.Dimension nd = getNodeSize(container);
 		Dimension d = new Dimension(nd.getWidth(), nd.getHeight());
 		OffsetOrientation orient = RectangleLayoutUtils
 				.calculateRectangleBorderOrientation(position, d,
-						DefaultLayoutConstants.DEFAULT_SHAPE_INSETS);
+						DEFAULT_SHAPE_INSETS);
 		// snap to grid and store the value in the model
-		orient.setOffset(SnapToGridUtils.snapToGrid(orient.getOffset()));
-		LayoutDataUtils.setConnectorOffsetOrientation(layouted, orient);
+		orient.setOffset(snapToGrid(orient.getOffset()));
+		setConnectorOffsetOrientation(layouted, orient);
 	}
 
-	/** Layouts the given layouted object using the position in the context. */
+	/**
+	 * Layouts the given layouted object using the position in the context
+	 * 
+	 * @param layouted
+	 *            the node to be layouted
+	 * @param context
+	 *            the location context information to be used
+	 * @param positionOffset
+	 *            the offset to adj ust the context location, e.g. grid size
+	 * @param snapToGrid
+	 *            snap to grid should be performed or not
+	 */
 	public static void layoutNodeInRoot(ILayoutedModelElement layouted,
 			ElementDropContext context, int positionOffset, boolean snapToGrid) {
 		layoutNodeInRoot(layouted, context.getPosition(), positionOffset,
 				snapToGrid);
 	}
 
-	/** Layouts the given layouted object using the position in the context. */
+	/**
+	 * Layouts the given layouted object using the position in the context.
+	 * 
+	 * @param layouted
+	 *            the node to be layouted
+	 * @param location
+	 *            the location information to be used
+	 * @param positionOffset
+	 *            the offset to adjust the location, e.g. grid size
+	 * @param snapToGrid
+	 *            snap to grid should be performed or not
+	 */
 	public static void layoutNodeInRoot(ILayoutedModelElement layouted,
 			Point location, int positionOffset, boolean snapToGrid) {
 		Point position = location.getCopy();
 		position.translate(-positionOffset, -positionOffset);
 		if (snapToGrid) {
-			SnapToGridUtils.snapToGrid(position);
+			snapToGrid(position);
 		}
-		LayoutDataUtils.setNodePosition(layouted, position.x, position.y);
+		setNodePosition(layouted, position.x, position.y);
 	}
 
-	/** Returns the bounds rectangle of the connector given its parent bounds. */
+	/**
+	 * Returns the bounds rectangle of the connector given its parent bounds.
+	 * 
+	 * @param connector
+	 *            the connector with relative positions
+	 * @param parent
+	 *            the parent container
+	 * @returns the absolute rectangle
+	 */
 	public static Rectangle getAbsoluteConnectorBounds(
 			ILayoutedModelElement connector, ILayoutedModelElement parent) {
-		Rectangle result = new Rectangle(0, 0,
-				DefaultLayoutConstants.DEFAULT_CONNECTOR_SIZE,
-				DefaultLayoutConstants.DEFAULT_CONNECTOR_SIZE);
+		Rectangle result = new Rectangle(0, 0, DEFAULT_CONNECTOR_SIZE,
+				DEFAULT_CONNECTOR_SIZE);
 
 		// get orientation
-		OffsetOrientation orient = LayoutDataUtils
-				.getConnectorOffsetOrientation(connector);
+		OffsetOrientation orient = getConnectorOffsetOrientation(connector);
 		// get parent size
-		org.fortiss.tooling.base.model.layout.Dimension parentSize = LayoutDataUtils
-				.getNodeSize(parent);
-		org.fortiss.tooling.base.model.layout.Point pos = LayoutDataUtils
-				.getAbsolute(orient, parentSize,
-						DefaultLayoutConstants.DEFAULT_SHAPE_INSETS);
+		org.fortiss.tooling.base.model.layout.Dimension parentSize = getNodeSize(parent);
+		org.fortiss.tooling.base.model.layout.Point pos = getAbsolute(orient,
+				parentSize, DEFAULT_SHAPE_INSETS);
 		int relX = pos.getX();
 		int relY = pos.getY();
-		org.fortiss.tooling.base.model.layout.Point parentPos = LayoutDataUtils
-				.getNodePosition(parent);
+		org.fortiss.tooling.base.model.layout.Point parentPos = getNodePosition(parent);
 		// fix X coordinate
-		if (relX > parentSize.getWidth()
-				- DefaultLayoutConstants.DEFAULT_CONNECTOR_SIZE) {
-			relX = parentSize.getWidth()
-					- DefaultLayoutConstants.DEFAULT_CONNECTOR_SIZE;
+		if (relX > parentSize.getWidth() - DEFAULT_CONNECTOR_SIZE) {
+			relX = parentSize.getWidth() - DEFAULT_CONNECTOR_SIZE;
 		}
 		// fix Y coordinate
-		if (relY > parentSize.getHeight()
-				- DefaultLayoutConstants.DEFAULT_CONNECTOR_SIZE) {
-			relY = parentSize.getHeight()
-					- DefaultLayoutConstants.DEFAULT_CONNECTOR_SIZE;
+		if (relY > parentSize.getHeight() - DEFAULT_CONNECTOR_SIZE) {
+			relY = parentSize.getHeight() - DEFAULT_CONNECTOR_SIZE;
 		}
 
 		result.x = parentPos.getX() + relX;
-- 
GitLab