27#ifndef _CEGUIDragContainer_h_
28#define _CEGUIDragContainer_h_
31#include "../WindowFactory.h"
35# pragma warning(disable : 4251)
252 void setDragCursorImage(
const String& name);
303 bool pickUp(
const bool force_sticky =
false);
553 void addDragContainerProperties(
void);
Generic drag & drop enabled window class.
Definition DragContainer.h:46
static const String EventDragMouseCursorChanged
Definition DragContainer.h:88
const Image * d_dragCursorImage
Image to use for mouse cursor when dragging.
Definition DragContainer.h:531
float getDragAlpha(void) const
Return the alpha value that will be set on the DragContainer while a drag operation is in progress.
static const String EventDragDropTargetChanged
Definition DragContainer.h:101
static const String EventDragStarted
Definition DragContainer.h:58
void doDragging(const Vector2f &local_mouse)
Update state for window dragging.
void setDragAlpha(float alpha)
Set the alpha value to be set on the DragContainer when a drag operation is in progress.
virtual void onDragPositionChanged(WindowEventArgs &e)
Method called when the dragged object position is changed.
bool d_storedClipState
Parent clip state to re-set.
Definition DragContainer.h:529
Window * d_dropTarget
Target window for possible drop operation.
Definition DragContainer.h:530
void getRenderingContext_impl(RenderingContext &ctx) const
implementation of the default getRenderingContext logic.
virtual void onCaptureLost(WindowEventArgs &e)
Handler called when this window loses capture of mouse inputs.
bool d_stickyMode
true when we're in 'sticky' mode.
Definition DragContainer.h:534
virtual void onMoved(ElementEventArgs &e)
Handler called when the window's position changes.
void setDraggingEnabled(bool setting)
Set whether dragging is currently enabled for this DragContainer.
void initialiseDragging(void)
Initialise the required states to put the window into dragging mode.
static const String EventDragEnabledChanged
Definition DragContainer.h:76
float getPixelDragThreshold(void) const
Return the current drag threshold in pixels.
virtual void onClippingChanged(WindowEventArgs &e)
Handler called when the window's setting for being clipped by it's parent is changed.
bool d_dropflag
Definition DragContainer.h:532
virtual void onDragAlphaChanged(WindowEventArgs &e)
Method called when the alpha value to use when dragging is changed.
UVector2 d_fixedDragOffset
current fixed mouse offset value.
Definition DragContainer.h:540
void updateActiveMouseCursor(void) const
Method to update mouse cursor image.
virtual void onAlphaChanged(WindowEventArgs &e)
Handler called when the window's alpha blend value is changed.
void setStickyModeEnabled(bool setting)
Enable or disable sticky mode.
bool isUsingFixedDragOffset() const
Return whether the fixed dragging offset - as set with the setFixedDragOffset function - will be used...
static const String EventNamespace
Namespace for global events.
Definition DragContainer.h:52
const UVector2 & getFixedDragOffset() const
Return the fixed mouse cursor dragging offset to be used for this DragContainer.
virtual void onDragEnabledChanged(WindowEventArgs &e)
Method called when the dragging state is enabled or disabled.
bool isDraggingThresholdExceeded(const Vector2f &local_mouse)
Return whether the required minimum movement threshold before initiating dragging has been exceeded.
virtual void onDragDropTargetChanged(DragDropEventArgs &e)
Method called when the current drop target of this DragContainer changes.
static const String EventDragPositionChanged
Definition DragContainer.h:70
static const String WidgetTypeName
Type name for DragContainer.
Definition DragContainer.h:51
virtual void onMouseMove(MouseEventArgs &e)
Handler called when the mouse cursor has been moved within this window's area.
bool d_usingFixedDragOffset
true if fixed mouse offset is used for dragging position.
Definition DragContainer.h:538
bool isStickyModeEnabled() const
Return whether sticky mode is enable or disabled.
UVector2 d_startPosition
position prior to dragging.
Definition DragContainer.h:525
static const String EventDragEnded
Definition DragContainer.h:64
void setUsingFixedDragOffset(const bool enable)
Set whether the fixed dragging offset - as set with the setFixedDragOffset - function will be used,...
virtual void onDragThresholdChanged(WindowEventArgs &e)
Method called when the movement threshold required to trigger dragging is changed.
virtual void onDragStarted(WindowEventArgs &e)
Method called when dragging commences.
virtual void onMouseButtonDown(MouseEventArgs &e)
Handler called when a mouse button has been depressed within this window's area.
void setPixelDragThreshold(float pixels)
Set the current drag threshold in pixels.
void setDragCursorImage(const Image *image)
Set the Image to be used for the mouse cursor when a drag operation is in progress.
bool isDraggingEnabled(void) const
Return whether dragging is currently enabled for this DragContainer.
bool d_leftMouseDown
True when left mouse button is down.
Definition DragContainer.h:522
virtual void onMouseButtonUp(MouseEventArgs &e)
Handler called when a mouse button has been released within this window's area.
bool pickUp(const bool force_sticky=false)
Immediately pick up the DragContainer and optionally set the sticky mode in order to allow this to ha...
bool d_draggingEnabled
True when dragging is enabled.
Definition DragContainer.h:521
Window * getCurrentDropTarget(void) const
Return the Window object that is the current drop target for the DragContainer.
const Image * getDragCursorImage(void) const
Return the Image currently set to be used for the mouse cursor when a drag operation is in progress.
static const String EventDragThresholdChanged
Definition DragContainer.h:94
bool d_dragging
true when being dragged.
Definition DragContainer.h:523
virtual void onDragMouseCursorChanged(WindowEventArgs &e)
Method called when the mouse cursor to use when dragging is changed.
float d_storedAlpha
Alpha value to re-set when dragging ends.
Definition DragContainer.h:528
float d_dragAlpha
Alpha value to set when dragging.
Definition DragContainer.h:527
virtual ~DragContainer(void)
Destructor for DragContainer objects.
bool d_pickedUp
true after been picked-up / dragged via sticky mode
Definition DragContainer.h:536
float d_dragThreshold
Pixels mouse must move before dragging commences.
Definition DragContainer.h:526
void setFixedDragOffset(const UVector2 &offset)
Set the fixed mouse cursor dragging offset to be used for this DragContainer.
DragContainer(const String &type, const String &name)
Constructor for DragContainer objects.
static const String EventDragAlphaChanged
Definition DragContainer.h:82
virtual void onDragEnded(WindowEventArgs &e)
Method called when dragging ends.
bool isBeingDragged(void) const
Return whether the DragContainer is currently being dragged.
UVector2 d_dragPoint
point we are being dragged at.
Definition DragContainer.h:524
EventArgs based class used for certain drag/drop notifications.
Definition InputEvent.h:342
EventArgs based class that is used for objects passed to handlers triggered for events concerning som...
Definition Element.h:211
Interface for Image.
Definition Image.h:161
EventArgs based class that is used for objects passed to input event handlers concerning mouse input.
Definition InputEvent.h:281
String class used within the GUI system.
Definition String.h:64
EventArgs based class that is used for objects passed to handlers triggered for events concerning som...
Definition InputEvent.h:252
An abstract base class providing common functionality and specifying the required interface for deriv...
Definition Window.h:151
Main namespace for Crazy Eddie's GUI Library.
Definition arch_overview.dox:1
struct that holds some context relating to a RenderingSurface object.
Definition RenderingContext.h:41