diff dwtx/draw2d/PositionConstants.d @ 98:95307ad235d9

Added Draw2d code, still work in progress
author Frank Benoit <benoit@tionex.de>
date Sun, 03 Aug 2008 00:52:14 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dwtx/draw2d/PositionConstants.d	Sun Aug 03 00:52:14 2008 +0200
@@ -0,0 +1,97 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2005 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ * Port to the D programming language:
+ *     Frank Benoit <benoit@tionex.de>
+ *******************************************************************************/
+module dwtx.draw2d.PositionConstants;
+
+import dwt.dwthelper.utils;
+
+/**
+ * Constants representing cardinal directions and relative positions. Some of these
+ * constants can be grouped as follows:
+ * <TABLE border="1" cellpadding="5" cellspacing="0">
+ *  <TBODY>
+ *      <TR>
+ *          <TD>LEFT, CENTER, RIGHT</TD>
+ *          <TD>Used to describe horizontal position.</TD>
+ *      </TR>
+ *      <TR>
+ *          <TD>TOP, MIDDLE, BOTTOM</TD>
+ *          <TD>Used to describe vertical position.</TD>
+ *      </TR>
+ *      <TR>
+ *          <TD>NORTH, SOUTH, EAST, WEST</TD>
+ *          <TD>Used to describe the four positions relative to an object's center point.
+ *          May also be used when describing which direction an object is facing.<BR>
+ *          NOTE: If you have a use for all four of these possibilities, do not use TOP,
+ *          BOTTOM, RIGHT, LEFT in place of NORTH, SOUTH, EAST, WEST.</TD>
+ *      </TR>
+ *  </TBODY>
+ * </TABLE>
+ */
+public interface PositionConstants {
+
+/** None */
+static const int NONE  =  0;
+
+/** Left */
+static const int LEFT   =  1;
+/** Center (Horizontal) */
+static const int CENTER =  2;
+/** Right */
+static const int RIGHT  =  4;
+/** Bit-wise OR of LEFT, CENTER, and RIGHT */
+static const int LEFT_CENTER_RIGHT = LEFT | CENTER | RIGHT;
+/** Used to signify left alignment regardless of orientation (i.e., LTR or RTL) */
+static const int ALWAYS_LEFT = 64;
+/** Used to signify right alignment regardless of orientation (i.e., LTR or RTL) */
+static const int ALWAYS_RIGHT = 128;
+
+/** Top */
+static const int TOP    =  8;
+/** Middle (Vertical) */
+static const int MIDDLE = 16;
+/** Bottom */
+static const int BOTTOM = 32;
+/** Bit-wise OR of TOP, MIDDLE, and BOTTOM */
+static const int TOP_MIDDLE_BOTTOM = TOP | MIDDLE | BOTTOM;
+
+/** North */
+static const int NORTH =  1;
+/** South */
+static const int SOUTH =  4;
+/** West */
+static const int WEST  =  8;
+/** East */
+static const int EAST  = 16;
+
+/** A constant indicating horizontal direction */
+static const int HORIZONTAL = 64;
+/** A constant indicating vertical direction */
+static const int VERTICAL = 128;
+
+/** North-East: a bit-wise OR of {@link #NORTH} and {@link #EAST} */
+static const int NORTH_EAST = NORTH | EAST;
+/** North-West: a bit-wise OR of {@link #NORTH} and {@link #WEST} */
+static const int NORTH_WEST = NORTH | WEST;
+/** South-East: a bit-wise OR of {@link #SOUTH} and {@link #EAST} */
+static const int SOUTH_EAST = SOUTH | EAST;
+/** South-West: a bit-wise OR of {@link #SOUTH} and {@link #WEST} */
+static const int SOUTH_WEST = SOUTH | WEST;
+/** North-South: a bit-wise OR of {@link #NORTH} and {@link #SOUTH} */
+static const int NORTH_SOUTH = NORTH | SOUTH;
+/** East-West: a bit-wise OR of {@link #EAST} and {@link #WEST} */
+static const int EAST_WEST = EAST | WEST;
+
+/** North-South-East-West: a bit-wise OR of all 4 directions. */
+static const int NSEW = NORTH_SOUTH | EAST_WEST;
+
+}