Mercurial > projects > dwt2
view org.eclipse.draw2d/src/org/eclipse/draw2d/Cursors.d @ 12:bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sat, 14 Mar 2009 18:23:29 +0100 |
parents | |
children |
line wrap: on
line source
/******************************************************************************* * 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 org.eclipse.draw2d.Cursors; import java.lang.all; import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Cursor; import org.eclipse.draw2d.PositionConstants; /** * A collection of cursors. */ public class Cursors { /** * Returns the cursor corresponding to the given direction, defined in * {@link PositionConstants}. Note that {@link #getDirectionalCursor(int, bool)} should * be used for applications which want to run properly when running in a mirrored * environment. The behavior is the same as calling {@link #getDirectionalCursor(int, * bool) getDirectionalCursor(direction, false)}. * * @param direction the relative direction of the desired cursor * @return The appropriate directional cursor */ public static Cursor getDirectionalCursor(int direction) { return getDirectionalCursor(direction, false); } /** * Returns the cursor corresponding to the given direction and mirroring. The direction * must be one of: * <UL> * <LI>{@link PositionConstants#NORTH} * <LI>{@link PositionConstants#SOUTH} * <LI>{@link PositionConstants#EAST} * <LI>{@link PositionConstants#WEST} * <LI>{@link PositionConstants#NORTH_EAST} * <LI>{@link PositionConstants#NORTH_WEST} * <LI>{@link PositionConstants#SOUTH_EAST} * <LI>{@link PositionConstants#SOUTH_WEST} * </UL> * <P>The behavior is undefined for other values. If <code>isMirrored</code> is set to * <code>true</code>, EAST and WEST will be inverted. * @param direction the relative direction of the desired cursor * @param isMirrored <code>true</code> if EAST and WEST should be inverted * @return The appropriate directional cursor */ public static Cursor getDirectionalCursor(int direction, bool isMirrored) { if (isMirrored && (direction & PositionConstants.EAST_WEST) !is 0) direction = direction ^ PositionConstants.EAST_WEST; switch (direction) { case PositionConstants.NORTH : return SIZEN; case PositionConstants.SOUTH: return SIZES; case PositionConstants.EAST : return SIZEE; case PositionConstants.WEST: return SIZEW; case PositionConstants.SOUTH_EAST: return SIZESE; case PositionConstants.SOUTH_WEST: return SIZESW; case PositionConstants.NORTH_EAST: return SIZENE; case PositionConstants.NORTH_WEST: return SIZENW; default: break; } return null; } /** * @see SWT#CURSOR_ARROW */ private static Cursor ARROW_; public static Cursor ARROW(){ if( !initStaticCtor_done ) initStaticCtor(); return ARROW_; } /** * @see SWT#CURSOR_SIZEN */ private static Cursor SIZEN_; public static Cursor SIZEN(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZEN_; } /** * @see SWT#CURSOR_SIZENE */ private static Cursor SIZENE_; public static Cursor SIZENE(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZENE_; } /** * @see SWT#CURSOR_SIZEE */ private static Cursor SIZEE_; public static Cursor SIZEE(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZEE_; } /** * @see SWT#CURSOR_SIZESE */ private static Cursor SIZESE_; public static Cursor SIZESE(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZESE_; } /** * @see SWT#CURSOR_SIZES */ private static Cursor SIZES_; public static Cursor SIZES(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZES_; } /** * @see SWT#CURSOR_SIZESW */ private static Cursor SIZESW_; public static Cursor SIZESW(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZESW_; } /** * @see SWT#CURSOR_SIZEW */ private static Cursor SIZEW_; public static Cursor SIZEW(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZEW_; } /** * @see SWT#CURSOR_SIZENW */ private static Cursor SIZENW_; public static Cursor SIZENW(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZENW_; } /** * @see SWT#CURSOR_APPSTARTING */ private static Cursor APPSTARTING_; public static Cursor APPSTARTING(){ if( !initStaticCtor_done ) initStaticCtor(); return APPSTARTING_; } /** * @see SWT#CURSOR_CROSS */ private static Cursor CROSS_; public static Cursor CROSS(){ if( !initStaticCtor_done ) initStaticCtor(); return CROSS_; } /** * @see SWT#CURSOR_HAND */ private static Cursor HAND_; public static Cursor HAND(){ if( !initStaticCtor_done ) initStaticCtor(); return HAND_; } /** * @see SWT#CURSOR_HELP */ private static Cursor HELP_; public static Cursor HELP(){ if( !initStaticCtor_done ) initStaticCtor(); return HELP_; } /** * @see SWT#CURSOR_IBEAM */ private static Cursor IBEAM_; public static Cursor IBEAM(){ if( !initStaticCtor_done ) initStaticCtor(); return IBEAM_; } /** * @see SWT#CURSOR_NO */ private static Cursor NO_; public static Cursor NO(){ if( !initStaticCtor_done ) initStaticCtor(); return NO_; } /** * @see SWT#CURSOR_SIZEALL */ private static Cursor SIZEALL_; public static Cursor SIZEALL(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZEALL_; } /** * @see SWT#CURSOR_SIZENESW */ private static Cursor SIZENESW_; public static Cursor SIZENESW(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZENESW_; } /** * @see SWT#CURSOR_SIZENWSE */ private static Cursor SIZENWSE_; public static Cursor SIZENWSE(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZENWSE_; } /** * @see SWT#CURSOR_SIZEWE */ private static Cursor SIZEWE_; public static Cursor SIZEWE(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZEWE_; } /** * @see SWT#CURSOR_SIZENS */ private static Cursor SIZENS_; public static Cursor SIZENS(){ if( !initStaticCtor_done ) initStaticCtor(); return SIZENS_; } /** * @see SWT#CURSOR_UPARROW */ private static Cursor UPARROW_; public static Cursor UPARROW(){ if( !initStaticCtor_done ) initStaticCtor(); return UPARROW_; } /** * @see SWT#CURSOR_WAIT */ private static Cursor WAIT_; public static Cursor WAIT(){ if( !initStaticCtor_done ) initStaticCtor(); return WAIT_; } private static bool initStaticCtor_done = false; private static void initStaticCtor() { synchronized(Cursor.classinfo){ if(!initStaticCtor_done){ ARROW_ = new Cursor(null, SWT.CURSOR_ARROW); SIZEN_ = new Cursor(null, SWT.CURSOR_SIZEN); SIZENE_ = new Cursor(null, SWT.CURSOR_SIZENE); SIZEE_ = new Cursor(null, SWT.CURSOR_SIZEE); SIZESE_ = new Cursor(null, SWT.CURSOR_SIZESE); SIZES_ = new Cursor(null, SWT.CURSOR_SIZES); SIZESW_ = new Cursor(null, SWT.CURSOR_SIZESW); SIZEW_ = new Cursor(null, SWT.CURSOR_SIZEW); SIZENW_ = new Cursor(null, SWT.CURSOR_SIZENW); SIZENS_ = new Cursor(null, SWT.CURSOR_SIZENS); SIZEWE_ = new Cursor(null, SWT.CURSOR_SIZEWE); APPSTARTING_ = new Cursor(null, SWT.CURSOR_APPSTARTING); CROSS_ = new Cursor(null, SWT.CURSOR_CROSS); HAND_ = new Cursor(null, SWT.CURSOR_HAND); HELP_ = new Cursor(null, SWT.CURSOR_HELP); IBEAM_ = new Cursor(null, SWT.CURSOR_IBEAM); NO_ = new Cursor(null, SWT.CURSOR_NO); SIZEALL_ = new Cursor(null, SWT.CURSOR_SIZEALL); SIZENESW_ = new Cursor(null, SWT.CURSOR_SIZENESW); SIZENWSE_ = new Cursor(null, SWT.CURSOR_SIZENWSE); UPARROW_ = new Cursor(null, SWT.CURSOR_UPARROW); WAIT_ = new Cursor(null, SWT.CURSOR_WAIT); initStaticCtor_done = true; } } } }