28 #ifndef _CEGUIDragContainer_h_
29 #define _CEGUIDragContainer_h_
31 #include "../CEGUIWindow.h"
32 #include "../CEGUIWindowFactory.h"
33 #include "CEGUIDragContainerProperties.h"
37 # pragma warning(push)
38 # pragma warning(disable : 4251)
132 bool isDraggingEnabled(
void)
const;
145 void setDraggingEnabled(
bool setting);
155 bool isBeingDragged(
void)
const;
168 float getPixelDragThreshold(
void)
const;
184 void setPixelDragThreshold(
float pixels);
194 float getDragAlpha(
void)
const;
211 void setDragAlpha(
float alpha);
221 const Image* getDragCursorImage(
void)
const;
237 void setDragCursorImage(
const Image* image);
275 void setDragCursorImage(
const String& imageset,
const String& image);
288 Window* getCurrentDropTarget(
void)
const;
298 bool isStickyModeEnabled()
const;
308 void setStickyModeEnabled(
bool setting);
326 bool pickUp(
const bool force_sticky =
false);
341 void setFixedDragOffset(
const UVector2& offset);
356 const UVector2& getFixedDragOffset()
const;
368 void setUsingFixedDragOffset(
const bool enable);
380 bool isUsingFixedDragOffset()
const;
401 bool isDraggingThresholdExceeded(
const Point& local_mouse);
410 void initialiseDragging(
void);
422 void doDragging(
const Point& local_mouse);
428 void updateActiveMouseCursor(
void)
const;
443 if (class_name==
"DragContainer")
return true;
605 void addDragContainerProperties(
void);
611 #if defined(_MSC_VER)
612 # pragma warning(pop)
615 #endif // end of guard _CEGUIDragContainer_h_
static const String EventDragEnabledChanged
Definition: CEGUIDragContainer.h:79
Class used as a two dimensional vector (aka a Point)
Definition: CEGUIVector.h:45
float d_dragAlpha
Alpha value to set when dragging.
Definition: CEGUIDragContainer.h:568
Generic drag & drop enabled window class.
Definition: CEGUIDragContainer.h:48
Property to access the state of the fixed dragging offset setting.
Definition: CEGUIDragContainerProperties.h:183
bool d_storedClipState
Parent clip state to re-set.
Definition: CEGUIDragContainer.h:570
static const String EventDragDropTargetChanged
Definition: CEGUIDragContainer.h:104
Class that represents a single Image of an Imageset.
Definition: CEGUIImage.h:57
EventArgs based class used for certain drag/drop notifications.
Definition: CEGUIInputEvent.h:335
static const String WidgetTypeName
Type name for DragContainer.
Definition: CEGUIDragContainer.h:54
struct that holds some context relating to a RenderingSurface object.
Definition: CEGUIRenderingContext.h:40
virtual bool testClassName_impl(const String &class_name) const
Return whether this window was inherited from the given class name at some point in the inheritance h...
Definition: CEGUIWindow.h:3928
bool d_pickedUp
true after been picked-up / dragged via sticky mode
Definition: CEGUIDragContainer.h:577
Property to access the dragging alpha value.
Definition: CEGUIDragContainerProperties.h:75
static const String EventDragThresholdChanged
Definition: CEGUIDragContainer.h:97
UVector2 d_startPosition
position prior to dragging.
Definition: CEGUIDragContainer.h:566
bool d_draggingEnabled
True when dragging is enabled.
Definition: CEGUIDragContainer.h:562
bool d_dragging
true when being dragged.
Definition: CEGUIDragContainer.h:564
UVector2 d_dragPoint
point we are being dragged at.
Definition: CEGUIDragContainer.h:565
const Image * d_dragCursorImage
Image to use for mouse cursor when dragging.
Definition: CEGUIDragContainer.h:572
Property to access the state of the sticky mode setting.
Definition: CEGUIDragContainerProperties.h:151
MouseCursorImage
Enumeration of special values used for mouse cursor settings in Window objects.
Definition: CEGUIMouseCursor.h:57
static const String EventDragPositionChanged
Definition: CEGUIDragContainer.h:73
Property to access the dragging threshold value.
Definition: CEGUIDragContainerProperties.h:99
bool d_dropflag
Definition: CEGUIDragContainer.h:573
An abstract base class providing common functionality and specifying the required interface for deriv...
Definition: CEGUIWindow.h:138
static const String EventDragMouseCursorChanged
Definition: CEGUIDragContainer.h:91
static const String EventDragEnded
Definition: CEGUIDragContainer.h:67
Window * d_dropTarget
Target window for possible drop operation.
Definition: CEGUIDragContainer.h:571
EventArgs based class that is used for objects passed to handlers triggered for events concerning som...
Definition: CEGUIInputEvent.h:245
UVector2 d_fixedDragOffset
current fixed mouse offset value.
Definition: CEGUIDragContainer.h:581
EventArgs based class that is used for objects passed to input event handlers concerning mouse input...
Definition: CEGUIInputEvent.h:274
bool d_usingFixedDragOffset
true if fixed mouse offset is used for dragging position.
Definition: CEGUIDragContainer.h:579
virtual bool testClassName_impl(const String &class_name) const
Return whether this window was inherited from the given class name at some point in the inheritance h...
Definition: CEGUIDragContainer.h:441
bool d_leftMouseDown
True when left mouse button is down.
Definition: CEGUIDragContainer.h:563
static const String EventDragAlphaChanged
Definition: CEGUIDragContainer.h:85
Property to access the state of the dragging enabled setting.
Definition: CEGUIDragContainerProperties.h:51
float d_storedAlpha
Alpha value to re-set when dragging ends.
Definition: CEGUIDragContainer.h:569
static const String EventDragStarted
Definition: CEGUIDragContainer.h:61
float d_dragThreshold
Pixels mouse must move before dragging commences.
Definition: CEGUIDragContainer.h:567
Property to access the setting that controls whether the fixed drag offset will be used...
Definition: CEGUIDragContainerProperties.h:212
String class used within the GUI system.
Definition: CEGUIString.h:57
Property to access the dragging mouse cursor setting.
Definition: CEGUIDragContainerProperties.h:126
static const String EventNamespace
Namespace for global events.
Definition: CEGUIDragContainer.h:55
Two dimensional vector class built using unified dimensions (UDims). The UVector2 class is used for r...
Definition: CEGUIUDim.h:128