Hot Door CORE 0.8.2
Adobe® Illustrator® Plug-in Library
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
hdi::core::CustomWidget Class Reference

Class for custom plugin widgets; receives notification of a variety of events, can be custom drawn, etc. More...

#include <hdicoreCustomWidget.h>

Inheritance diagram for hdi::core::CustomWidget:
Inheritance graph
[legend]
Collaboration diagram for hdi::core::CustomWidget:
Collaboration graph
[legend]

Public Types

typedef std::vector< PointPointVector
 
- Public Types inherited from hdi::core::Widget
enum  Type {
  UnknownType = 0 , BoxType = 10 , ButtonType = 20 , CheckboxType = 30 ,
  ColumnViewType = 40 , ComboBoxType = 50 , ColorWellType = 60 , CustomType = 70 ,
  DividerType = 80 , HierarchicalColumnViewType = 85 , HierarchicalViewType = 90 , LabelType = 100 ,
  ListViewType = 110 , PopupMenuType = 120 , RadioButtonType = 130 , SliderType = 140 ,
  StepperType = 150 , TextFieldType = 160 , TextViewType = 170 , WebViewType = 180
}
 Supported widget types.
 

Public Member Functions

 CustomWidget ()
 Constructs an empty CustomWidget object.
 
 CustomWidget (const CustomWidget &widget_)
 Constructs a new CustomWidget object from an existing CustomWidget object (copy constructor)
 
 CustomWidget (const Rect &frame_)
 CustomWidget constructor, taking an argument for the frame which will receive events.
 
virtual ~CustomWidget ()
 CustomWidget destructor.
 
virtual CustomWidgetoperator= (const CustomWidget &rhs_)
 Allows one CustomWidget object to be assigned from another.
 
virtual CustomWidgetclone () const
 Convenience method to clone a CustomWidget object on the heap.
 
virtual CustomWidgetduplicate () const
 Convenience method to duplicate a CustomWidget object, creating a new and identical UI element to the target (but not belonging to the same containing window)
 
virtual void redraw ()
 Forces the widget to redraw, calling the appropriate callbacks to do so.
 
virtual ModifierKey getClickDragModifiers () const
 Gets the modifier keys used during a click/drag event.
 
virtual bool getClickDragLocations (Point &start__, Point &end__) const
 Gets the mouse locations during a click/drag event.
 
virtual bool isMouseOver () const
 Indicates whether the mouse is currently over the widget (useful for implementing rollover effects, if desired)
 
virtual Callback *const mouseOverCallback () const
 Gets the current mouse over callback.
 
virtual void setMouseOverCallback (const Callback &cb_)
 Sets the mouse over callback.
 
virtual Callback *const mouseMoveCallback () const
 Gets the current mouse move callback.
 
virtual void setMouseMoveCallback (const Callback &cb_)
 Sets the mouse move callback.
 
virtual Callback *const mouseOutCallback () const
 Gets the current mouse out callback.
 
virtual void setMouseOutCallback (const Callback &cb_)
 Sets the mouse out callback.
 
virtual bool focusesOnClick () const
 Gets whether the widget automatically takes focus on click (mouse down, specifically)
 
virtual void setFocusesOnClick (const bool focus_)
 Sets whether the widget automatically takes focus on click (mouse down, specifically)
 
virtual Callback *const mouseDownCallback () const
 Gets the current mouse down callback.
 
virtual void setMouseDownCallback (const Callback &cb_)
 Sets the mouse down callback.
 
virtual Callback *const mouseDragCallback () const
 Gets the current mouse drag callback.
 
virtual void setMouseDragCallback (const Callback &cb_)
 Sets the mouse drag callback.
 
virtual Callback *const mouseUpCallback () const
 Gets the current mouse up callback.
 
virtual void setMouseUpCallback (const Callback &cb_)
 Sets the mouse up callback.
 
virtual bool draggable () const
 Gets whether dragging support for this particular widget is enabled.
 
virtual void setDraggable (const bool enable_)
 Sets whether dragging support for this particular widget is enabled.
 
virtual std::string dragData () const
 Gets the data that will be passed when the widget is dropped on a receiver.
 
virtual void setDragData (const std::string &data_)
 Sets the data that will be passed when the widget is dropped on a receiver.
 
virtual bool droppable () const
 Gets whether dropping support for this particular widget is enabled.
 
virtual void setDroppable (const bool enable_)
 Sets whether dropping support for this particular widget is enabled.
 
virtual Callback *const potentialDropCallback () const
 Gets the current potential-drop callback for the widget (for when the mouse is moving over the widget, in the middle of a drag-and-drop operation)
 
virtual void setPotentialDropCallback (const Callback &callback_)
 Sets the potential-drop callback for the widget.
 
virtual Point potentialDropPoint () const
 Gets the point at which the drop might occur, in the widget's coordinate system.
 
virtual Callback *const dropCallback () const
 Gets the current drop callback for the widget.
 
virtual void setDropCallback (const Callback &callback_)
 Sets the drop callback for the widget.
 
virtual std::string droppedData () const
 Gets the data that was passed when the widget received a drop.
 
virtual Point droppedPoint () const
 Gets the point at which the drop occurred, in the widget's coordinate system.
 
virtual std::unique_ptr< PanellinkedPanel () const
 Gets the panel that the target custom widget has been associated with.
 
virtual void setLinkedPanel (const Panel &p_)
 Sets the panel that can be shown when the whenever the custom widget implementer wants.
 
virtual void removeLinkedPanel ()
 Removes the panel that should be shown when the label is clicked.
 
virtual void showLinkedPanel (const Point &pt_)
 Shows the linked panel in a popdown borderless fashion at the given location.
 
virtual PlatformDrawingContextPtr platformDC () const
 Gets the platform-specific graphics drawing context for the current draw call.
 
virtual Callback *const drawCallback () const
 Gets the current draw callback.
 
virtual void setDrawCallback (const Callback &cb_)
 Sets the draw callback.
 
virtual bool clearsOnRedraw () const
 Gets whether the widget automatically clears the frame (i.e. paints the background color over the frame) before calling the draw callback.
 
virtual void setClearsOnRedraw (const bool clear_)
 Sets whether the widget automatically clears the frame (i.e. paints the background color over the frame) before calling the draw callback.
 
virtual void setDrawColor (const Color &color_)
 Sets the color for the current widget drawing context.
 
virtual void drawLine (const Point &from_, const Point &to_)
 Draws a line from a given point to an endpoint; will be the color set by setDrawColor()
 
virtual void drawRect (const Rect &rect_, const bool fill_=false)
 Draws a rect, optionally filled; will be the color set by setDrawColor()
 
virtual void drawRoundedRect (const Rect &rect_, const double radius_, const bool fill_=false)
 Draws a rounded rect, optionally filled; will be the color set by setDrawColor()
 
virtual void drawEllipse (const Rect &rect_, const bool fill_=false)
 Draws an ellipse, optionally filled; will be the color set by setDrawColor()
 
virtual void drawPolygon (const PointVector &points_, const bool fill_=false)
 Draws a polygon composed of a given set of points; can optionally be filled with the current draw color.
 
virtual void drawImage (const Point &tl_, const int16_t pngID_, const double scale_=1.0)
 Draws a PNGI image resource at the given point.
 
virtual void drawText (const Point &tl_, const std::string &text_, const Font &font_, const double fontSize_)
 Draws text at the given point.
 
- Public Member Functions inherited from hdi::core::Widget
virtual ~Widget ()
 Destructs a Widget.
 
virtual Widgetclone () const =0
 Convenience method to clone a Widget object in memory, taking its subclass type into account.
 
virtual Widgetduplicate () const =0
 Convenience method to duplicate a Widget object, creating a new and identical UI element to the target (but not belonging to the same containing window)
 
virtual PlatformWidgetPtr platformWidget () const
 Gets the platform-specific widget, around which the target object is wrapped.
 
virtual bool isEmpty () const
 Gets whether the target Widget object is empty (constructed with the default ctor)
 
virtual bool operator== (const Widget &rhs_) const
 Tests whether a given Widget object is the same as another.
 
virtual bool operator!= (const Widget &rhs_) const
 Tests whether a given Widget object is not the same as another.
 
virtual Type type () const
 Gets the type of the widget.
 
virtual Window *const window () const
 Gets the parent window of the widget.
 
virtual Rect frame () const
 Gets the widget frame.
 
virtual void setFrame (const Rect &frame_)
 Sets the widget frame.
 
virtual void offset (const double x_, const double y_)
 Offsets the widget from its current location by the given amounts, in 1x resolution coordinates.
 
virtual std::string text () const
 Gets the current text value of the widget.
 
virtual void setText (const std::string &text_)
 Sets the current text value of the widget.
 
virtual bool enabled ()
 Gets whether the widget is enabled.
 
virtual void setEnabled (const bool enable_)
 Enables or disables the widget.
 
virtual bool visible ()
 Gets whether the widget is visible.
 
virtual void setVisible (const bool visible_)
 Shows or hides the widget.
 
virtual void setOrigin (const Point &p_)
 Convenience method to set just the origin of the target widget's frame.
 
virtual void setSize (const Size &s_)
 Convenience method to set just the size of the target widget's frame.
 
virtual void setWidth (const double w_)
 Convenience method to set just the width of the target widget's frame.
 
virtual void setHeight (const double h_)
 Convenience method to set just the height of the target widget's frame.
 
virtual bool hasFocus () const
 Gets whether the widget currently has focus.
 
virtual void focus () const
 Forces the widget to have focus, taking it from any other focused widget of the same window.
 
virtual Callback *const focusCallback () const
 Gets the current focus callback for the widget.
 
virtual void setFocusCallback (const Callback &callback_)
 Sets the focus callback for the widget.
 
virtual void blur () const
 Removes focus from the widget.
 
virtual Callback *const blurCallback () const
 Gets the current blur callback for the widget.
 
virtual void setBlurCallback (const Callback &callback_)
 Sets the blur callback for the widget.
 
virtual std::string tooltip () const
 Gets the tool tip string for the widget.
 
virtual void setTooltip (const std::string &tip_)
 Sets the tool tip string for the widget.
 
virtual void update ()
 Force the widget to update (i.e. cause it to redraw)
 

Additional Inherited Members

- Static Public Member Functions inherited from hdi::core::Widget
static bool isCoreWidget (const PlatformWidgetPtr widget_)
 Gets whether the given platform widget is a hdi_core widget.
 
static std::unique_ptr< WidgetlastClickedWidget ()
 Gets the last widget that received a click event (either by the user or programmatically)
 
static std::unique_ptr< WidgetlastValueChangingWidget ()
 Gets the last widget that received a value changing event (either by the user or programmatically)
 
static std::unique_ptr< WidgetlastValueChangedWidget ()
 Gets the last widget that received a value changed event (either by the user or programmatically)
 
static std::unique_ptr< WidgetlastDropWidget ()
 Gets the last widget that received a drag-and-drop drop event (either by the user or programmatically)
 
static std::unique_ptr< WidgetlastPotentialReorderWidget ()
 Gets the last widget that received a potential-reorder event.
 
static std::unique_ptr< WidgetlastReorderWidget ()
 Gets the last widget that received a reorder event.
 
- Protected Member Functions inherited from hdi::core::Widget
void * _impl () const
 Internal use only.
 
 Widget ()
 Constructs an empty Widget object.
 
 Widget (const Widget &w_)
 Constructs a new Widget object from an existing Widget object (copy constructor)
 
 Widget (pui::Widget *&)
 Internal use only.
 
virtual Widgetoperator= (const Widget &)
 Internal use only.
 
- Protected Attributes inherited from hdi::core::Widget
void * _data
 Private implementation data.
 

Detailed Description

Class for custom plugin widgets; receives notification of a variety of events, can be custom drawn, etc.

Constructor & Destructor Documentation

◆ CustomWidget() [1/3]

hdi::core::CustomWidget::CustomWidget ( )

Constructs an empty CustomWidget object.

Author
GW
Date
09/2013
Note
To test if a CustomWidget object is empty, call isEmpty() on it
Empty CustomWidget objects do not relate to any actual UI widget; they are designed to be "receivers" of some other CustomWidget object via the overloaded assignment operator. Empty CustomWidget objects are useless until such time (though it is safe to call any of their methods).

◆ CustomWidget() [2/3]

hdi::core::CustomWidget::CustomWidget ( const CustomWidget widget_)

Constructs a new CustomWidget object from an existing CustomWidget object (copy constructor)

Author
GW
Date
09/2013
Parameters
widget_Existing CustomWidget object
Note
This ctor does not perform a "deep copy" as it knows nothing about any potential subclass it might have. If you've subclassed CustomWidget, create your own copy ctor and use it instead.

◆ CustomWidget() [3/3]

hdi::core::CustomWidget::CustomWidget ( const Rect frame_)

CustomWidget constructor, taking an argument for the frame which will receive events.

Author
GW
Date
09/2013
Parameters
frame_Top-left location and dimensions of the custom widget, in 1x resolution coordinates

◆ ~CustomWidget()

virtual hdi::core::CustomWidget::~CustomWidget ( )
virtual

CustomWidget destructor.

Author
GW
Date
09/2013

Member Function Documentation

◆ clearsOnRedraw()

virtual bool hdi::core::CustomWidget::clearsOnRedraw ( ) const
virtual

Gets whether the widget automatically clears the frame (i.e. paints the background color over the frame) before calling the draw callback.

Author
GW
Date
07/2014
Returns
true if the frame is cleared, false otherwise

◆ clone()

virtual CustomWidget * hdi::core::CustomWidget::clone ( ) const
virtual

Convenience method to clone a CustomWidget object on the heap.

Author
GW
Date
10/2013
Returns
A pointer to the new CustomWidget object
Note
If you subclass CustomWidget, you MUST overload this method yourself! If you don't and/or your clone() method does not return an instance of your CustomWidget subclass, you will experience "object slicing" when adding the widget to a window.
Warning
The caller must manage the memory for the returned CustomWidget object.

Implements hdi::core::Widget.

Reimplemented in hdi::core::DraggableDivider.

◆ dragData()

virtual std::string hdi::core::CustomWidget::dragData ( ) const
virtual

Gets the data that will be passed when the widget is dropped on a receiver.

Author
GW
Date
09/2018
Returns
The droppable data
Note
A value of "" (empty string; the default) will result in the text value of the widget itself being the drag data.

◆ draggable()

virtual bool hdi::core::CustomWidget::draggable ( ) const
virtual

Gets whether dragging support for this particular widget is enabled.

Author
GW
Date
09/2018
Returns
true if drag-and-drop source support is enabled, false otherwise

◆ drawCallback()

virtual Callback *const hdi::core::CustomWidget::drawCallback ( ) const
virtual

Gets the current draw callback.

Author
GW
Date
09/2013
Returns
A pointer to the currently registered draw callback

◆ drawEllipse()

virtual void hdi::core::CustomWidget::drawEllipse ( const Rect rect_,
const bool  fill_ = false 
)
virtual

Draws an ellipse, optionally filled; will be the color set by setDrawColor()

Author
GW
Date
01/2017
Parameters
rect_Rectangle in which to draw the ellipse, in local coordinates and at 1x resolution
fill_Whether to fill the ellipse
Note
This method is only functional during a widget's draw callback (set via the setDrawCallback() method)

◆ drawImage()

virtual void hdi::core::CustomWidget::drawImage ( const Point tl_,
const int16_t  pngID_,
const double  scale_ = 1.0 
)
virtual

Draws a PNGI image resource at the given point.

Author
GW
Date
11/2015
Parameters
tl_Top-left location of the image, in local coordinates and at 1x resolution
pngID_PNGI image resource ID
scaler_On Mac, this indicates how much the image should be scaled to adjust for a HiDPI display. At this time, only values of 1.0 and 2.0 are accepted.
Note
This method is only functional during a widget's draw callback (set via the setDrawCallback() method).
PNGI resource IDs from 0-5000 are reserved for hdi_core.

◆ drawLine()

virtual void hdi::core::CustomWidget::drawLine ( const Point from_,
const Point to_ 
)
virtual

Draws a line from a given point to an endpoint; will be the color set by setDrawColor()

Author
GW
Date
09/2013
Parameters
from_Start point for the line, in local coordinates and at 1x resolution
to_End point for the line, in local coordinates
Note
This method is only functional during a widget's draw callback (set via the setDrawCallback() method)

◆ drawPolygon()

virtual void hdi::core::CustomWidget::drawPolygon ( const PointVector &  points_,
const bool  fill_ = false 
)
virtual

Draws a polygon composed of a given set of points; can optionally be filled with the current draw color.

Author
GW
Date
09/2013
Parameters
points_Points that compose the polygon, in local coordinates and at 1x resolution
fill_Whether to fill the polygon
Note
This method is only functional during a widget's draw callback (set via the setDrawCallback() method)

◆ drawRect()

virtual void hdi::core::CustomWidget::drawRect ( const Rect rect_,
const bool  fill_ = false 
)
virtual

Draws a rect, optionally filled; will be the color set by setDrawColor()

Author
GW
Date
09/2013
Parameters
rect_Rectangle to draw, in local coordinates and at 1x resolution
fill_Whether to fill the rectangle
Note
This method is only functional during a widget's draw callback (set via the setDrawCallback() method)

◆ drawRoundedRect()

virtual void hdi::core::CustomWidget::drawRoundedRect ( const Rect rect_,
const double  radius_,
const bool  fill_ = false 
)
virtual

Draws a rounded rect, optionally filled; will be the color set by setDrawColor()

Author
GW
Date
10/2018
Parameters
rect_Rectangle to draw, in local coordinates and at 1x resolution
radius_Radius for the corners at 1x resolution
fill_Whether to fill the rectangle
Note
This method is only functional during a widget's draw callback (set via the setDrawCallback() method)
If radius_ is larger than half of either the rectangle width or height, it will be reduced accordingly.

◆ drawText()

virtual void hdi::core::CustomWidget::drawText ( const Point tl_,
const std::string &  text_,
const Font font_,
const double  fontSize_ 
)
virtual

Draws text at the given point.

Author
GW
Date
06/2018
Parameters
tl_Top-left location of the text, in local coordinates and at 1x resolution
text_Text value to be drawn, in UTF-8
font_Font to use when drawing the string
fontSize_Font size to use
Note
This method is only functional during a widget's draw callback (set via the setDrawControlCallback() method)

◆ dropCallback()

virtual Callback *const hdi::core::CustomWidget::dropCallback ( ) const
virtual

Gets the current drop callback for the widget.

Author
GW
Date
09/2018
Returns
A pointer to the currently registered drop callback

◆ droppable()

virtual bool hdi::core::CustomWidget::droppable ( ) const
virtual

Gets whether dropping support for this particular widget is enabled.

Author
GW
Date
09/2018
Returns
true if drag-and-drop destination support is enabled, false otherwise

◆ droppedData()

virtual std::string hdi::core::CustomWidget::droppedData ( ) const
virtual

Gets the data that was passed when the widget received a drop.

Author
GW
Date
09/2018
Returns
The dropped data
Warning
The result of this method is only valid when it is called from within a drop callback.

◆ droppedPoint()

virtual Point hdi::core::CustomWidget::droppedPoint ( ) const
virtual

Gets the point at which the drop occurred, in the widget's coordinate system.

Author
GW
Date
09/2018
Returns
The point at which the drop occurred
Warning
The result of this method is only valid when it is called from within a drop callback.

◆ duplicate()

virtual CustomWidget * hdi::core::CustomWidget::duplicate ( ) const
virtual

Convenience method to duplicate a CustomWidget object, creating a new and identical UI element to the target (but not belonging to the same containing window)

Author
GW
Date
11/2013
Returns
A pointer to the new CustomWidget object (and new UI element)
Warning
The caller must manage the memory for the returned CustomWidget object.

Implements hdi::core::Widget.

Reimplemented in hdi::core::DraggableDivider.

◆ focusesOnClick()

virtual bool hdi::core::CustomWidget::focusesOnClick ( ) const
virtual

Gets whether the widget automatically takes focus on click (mouse down, specifically)

Author
GW
Date
07/2018
Returns
true if the focus is taken when clicked, false otherwise

◆ getClickDragLocations()

virtual bool hdi::core::CustomWidget::getClickDragLocations ( Point start__,
Point end__ 
) const
virtual

Gets the mouse locations during a click/drag event.

Author
GW
Date
06/2015
Parameters
dragStart__Return-by-reference for the position of the mouse when drag started, in 1x resolution coordinates
dragEnd__Return-by-reference for the position of the mouse where drag is currently, in 1x resolution coordinates
Returns
true if the values could be acquired, false otherwise
Note
The return values of this method are only valid during a click or drag event.

◆ getClickDragModifiers()

virtual ModifierKey hdi::core::CustomWidget::getClickDragModifiers ( ) const
virtual

Gets the modifier keys used during a click/drag event.

Author
GW
Date
09/2013
Returns
A bitwise OR of the ModifierKey enum values for the current modifier key state
Note
The return value of this method is only valid during a click or drag event.

◆ isMouseOver()

virtual bool hdi::core::CustomWidget::isMouseOver ( ) const
virtual

Indicates whether the mouse is currently over the widget (useful for implementing rollover effects, if desired)

Author
GW
Date
06/2015
Returns
true if the cursor if over the widget bounds, false otherwise

◆ linkedPanel()

virtual std::unique_ptr< Panel > hdi::core::CustomWidget::linkedPanel ( ) const
virtual

Gets the panel that the target custom widget has been associated with.

Author
GW
Date
09/2018
Returns
Panel that will be shown in a popdown borderless fashion whenever the custom widget implementer wants

◆ mouseDownCallback()

virtual Callback *const hdi::core::CustomWidget::mouseDownCallback ( ) const
virtual

Gets the current mouse down callback.

Author
GW
Date
09/2013
Returns
A pointer to the currently registered mouse down callback

◆ mouseDragCallback()

virtual Callback *const hdi::core::CustomWidget::mouseDragCallback ( ) const
virtual

Gets the current mouse drag callback.

Author
GW
Date
09/2013
Returns
A pointer to the currently registered mouse drag callback

◆ mouseMoveCallback()

virtual Callback *const hdi::core::CustomWidget::mouseMoveCallback ( ) const
virtual

Gets the current mouse move callback.

Author
GW
Date
09/2013
Returns
A pointer to the currently registered mouse move callback

◆ mouseOutCallback()

virtual Callback *const hdi::core::CustomWidget::mouseOutCallback ( ) const
virtual

Gets the current mouse out callback.

Author
GW
Date
11/2015
Returns
A pointer to the currently registered mouse out callback

◆ mouseOverCallback()

virtual Callback *const hdi::core::CustomWidget::mouseOverCallback ( ) const
virtual

Gets the current mouse over callback.

Author
GW
Date
11/2015
Returns
A pointer to the currently registered mouse over callback

◆ mouseUpCallback()

virtual Callback *const hdi::core::CustomWidget::mouseUpCallback ( ) const
virtual

Gets the current mouse up callback.

Author
GW
Date
09/2013
Returns
A pointer to the currently registered mouse up callback

◆ operator=()

virtual CustomWidget & hdi::core::CustomWidget::operator= ( const CustomWidget rhs_)
virtual

Allows one CustomWidget object to be assigned from another.

Author
GW
Date
10/2013
Parameters
rhs_Righthand side of the = operator; the object to copy values from
Returns
The target CustomWidget object, but with its value updated to match that of rhs_

◆ platformDC()

virtual PlatformDrawingContextPtr hdi::core::CustomWidget::platformDC ( ) const
virtual

Gets the platform-specific graphics drawing context for the current draw call.

Author
GW
Date
11/2016
Returns
The current context if in the middle of the drawing callback execution, NULL otherwise

◆ potentialDropCallback()

virtual Callback *const hdi::core::CustomWidget::potentialDropCallback ( ) const
virtual

Gets the current potential-drop callback for the widget (for when the mouse is moving over the widget, in the middle of a drag-and-drop operation)

Author
GW
Date
06/2019
Returns
A pointer to the currently registered potential-drop callback

◆ potentialDropPoint()

virtual Point hdi::core::CustomWidget::potentialDropPoint ( ) const
virtual

Gets the point at which the drop might occur, in the widget's coordinate system.

Author
GW
Date
06/2019
Returns
The point at which the drop might occur
Warning
The result of this method is only valid when it is called from within a potential-drop callback.

◆ redraw()

virtual void hdi::core::CustomWidget::redraw ( )
virtual

Forces the widget to redraw, calling the appropriate callbacks to do so.

Author
GW
Date
09/2013

◆ removeLinkedPanel()

virtual void hdi::core::CustomWidget::removeLinkedPanel ( )
virtual

Removes the panel that should be shown when the label is clicked.

Author
GW
Date
09/2018

◆ setClearsOnRedraw()

virtual void hdi::core::CustomWidget::setClearsOnRedraw ( const bool  clear_)
virtual

Sets whether the widget automatically clears the frame (i.e. paints the background color over the frame) before calling the draw callback.

Author
GW
Date
07/2014
Parameters
clear_true to clear the frame, false otherwise
Note
The default upon construction of a CustomWidget object is to clear the frame. If this behavior is undesired, call this function and pass false.

◆ setDragData()

virtual void hdi::core::CustomWidget::setDragData ( const std::string &  data_)
virtual

Sets the data that will be passed when the widget is dropped on a receiver.

Author
GW
Date
09/2018
Parameters
data_Data to be passed to a receiving drag-and-drop widget (when dropped)
Note
Passing a value of "" (empty string; the default) will result in the text value of the widget itself being the drag data.

◆ setDraggable()

virtual void hdi::core::CustomWidget::setDraggable ( const bool  enable_)
virtual

Sets whether dragging support for this particular widget is enabled.

Author
GW
Date
09/2018
Parameters
enable_true to enable drag-and-drop source support, false otherwise

◆ setDrawCallback()

virtual void hdi::core::CustomWidget::setDrawCallback ( const Callback cb_)
virtual

Sets the draw callback.

Author
GW
Date
09/2013
Parameters
cb_New callback (target and action) for when the widget show draw itself

◆ setDrawColor()

virtual void hdi::core::CustomWidget::setDrawColor ( const Color color_)
virtual

Sets the color for the current widget drawing context.

Author
GW
Date
09/2013
Parameters
color_New drawing context color
Note
This method is only functional during a widget's draw callback (set via the setDrawCallback() method)

◆ setDropCallback()

virtual void hdi::core::CustomWidget::setDropCallback ( const Callback callback_)
virtual

Sets the drop callback for the widget.

Author
GW
Date
09/2018
Parameters
callback_New callback for when the widget receives a drop

◆ setDroppable()

virtual void hdi::core::CustomWidget::setDroppable ( const bool  enable_)
virtual

Sets whether dropping support for this particular widget is enabled.

Author
GW
Date
09/2018
Parameters
enable_true to enable drag-and-drop destination support, false otherwise

◆ setFocusesOnClick()

virtual void hdi::core::CustomWidget::setFocusesOnClick ( const bool  focus_)
virtual

Sets whether the widget automatically takes focus on click (mouse down, specifically)

Author
GW
Date
07/2018
Parameters
focus_true to take focus when clicked, false otherwise
Note
The default upon construction of a CustomWidget object is to take focus when clicked. If this behavior is undesired, call this method and pass false.

◆ setLinkedPanel()

virtual void hdi::core::CustomWidget::setLinkedPanel ( const Panel p_)
virtual

Sets the panel that can be shown when the whenever the custom widget implementer wants.

Author
GW
Date
09/2018
Parameters
p_New panel to show in a popdown borderless fashion

◆ setMouseDownCallback()

virtual void hdi::core::CustomWidget::setMouseDownCallback ( const Callback cb_)
virtual

Sets the mouse down callback.

Author
GW
Date
09/2013
Parameters
cb_New callback (target and action) for when the widget receives a mouse down

◆ setMouseDragCallback()

virtual void hdi::core::CustomWidget::setMouseDragCallback ( const Callback cb_)
virtual

Sets the mouse drag callback.

Author
GW
Date
09/2013
Parameters
cb_New callback (target and action) for when the widget receives a mouse drag

◆ setMouseMoveCallback()

virtual void hdi::core::CustomWidget::setMouseMoveCallback ( const Callback cb_)
virtual

Sets the mouse move callback.

Author
GW
Date
09/2013
Parameters
cb_New callback (target and action) for when the widget receives a mouse move

◆ setMouseOutCallback()

virtual void hdi::core::CustomWidget::setMouseOutCallback ( const Callback cb_)
virtual

Sets the mouse out callback.

Author
GW
Date
11/2015
Parameters
cb_New callback (target and action) for when the widget receives a mouse out event

◆ setMouseOverCallback()

virtual void hdi::core::CustomWidget::setMouseOverCallback ( const Callback cb_)
virtual

Sets the mouse over callback.

Author
GW
Date
11/2015
Parameters
cb_New callback (target and action) for when the widget receives a mouse over event

◆ setMouseUpCallback()

virtual void hdi::core::CustomWidget::setMouseUpCallback ( const Callback cb_)
virtual

Sets the mouse up callback.

Author
GW
Date
09/2013
Parameters
cb_New callback (target and action) for when the widget receives a mouse up

◆ setPotentialDropCallback()

virtual void hdi::core::CustomWidget::setPotentialDropCallback ( const Callback callback_)
virtual

Sets the potential-drop callback for the widget.

Author
GW
Date
06/2019
Parameters
callback_New callback for when the widget receives a potential-drop event (when the mouse is moving over the widget, in the middle of a drag-and-drop operation)

◆ showLinkedPanel()

virtual void hdi::core::CustomWidget::showLinkedPanel ( const Point pt_)
virtual

Shows the linked panel in a popdown borderless fashion at the given location.

Author
GW
Date
09/2018
Parameters
pt_Location of the panel, in local coordinates