Public Member Functions |
Static Public Member Functions |
Protected Member Functions |
List of all members
canvascv::SelectionBox Class Reference
The SelectionBox class. More...
#include <selectionbox.h>
Inheritance diagram for canvascv::SelectionBox:
Public Member Functions | |
std::string | getTextAt (int index) const |
getTextAt More... | |
size_t | size () const |
return nunmber of check boxes in group | |
void | setUserCB (Widget::CBUserSelection cbUserSelection) |
cbUserSelection will be invoked per user selection | |
virtual const char * | getType () const |
getType is always implemented by derived to return the same static pointer per widget. More... | |
Public Member Functions inherited from canvascv::CompoundWidget | |
virtual void | setOutlineColor (const cv::Scalar &value) |
delegate to internal Widget parts added by derived classes | |
virtual void | setFillColor (const cv::Scalar &value) |
delegate to internal Widget parts added by derived classes | |
virtual void | setSelectColor (const cv::Scalar &value) |
delegate to internal Widget parts added by derived classes | |
virtual void | setThickness (int value) |
delegate to internal Widget parts added by derived classes | |
virtual void | setLineType (int value) |
delegate to internal Widget parts added by derived classes | |
virtual void | setVisible (bool value) |
delegate to internal Widget parts added by derived classes | |
virtual const std::string & | getStatusMsg () const |
delegate to active widget or to our derived class if none active | |
virtual void | translate (const cv::Point &translation) |
delegate to internal Widget parts added by derived classes | |
void | doForAll (CBWidget cb, int recurseLevel, bool doOnSelf) |
doForAll More... | |
virtual const cv::Rect & | getRect () |
Actual size the widget is occupying due to Layout manager. | |
Public Member Functions inherited from canvascv::Widget | |
Widget (const cv::Point &pos=cv::Point(0, 0)) | |
constructor | |
virtual | ~Widget () |
virtual destructor | |
void | notifyOnChange (CBWidgetState cb) |
used to register for notifications on a widget More... | |
cv::Scalar | getOutlineColor () const |
get the outline color | |
cv::Scalar | getFillColor () const |
get the bg color | |
bool | getVisible () const |
is the widget visible | |
int | getThickness () const |
get line thickness to use when drawing | |
int | getLineType () const |
get the line type (LINE_4, LINE_8, LINE_AA) | |
uchar | getAlpha () const |
get the alpha value used for the widge background [0,255] => [transparent,opaque] | |
void | setAlpha (uchar value) |
set the alpha value used for the widge background [0,255] => [transparent,opaque] | |
Anchor | getLayoutAnchor () const |
getLayoutAnchor returns the anchor for using in the Layout we're in More... | |
void | setLayoutAnchor (const Anchor &value) |
setLayoutAnchor sets the anchor for using in the Layout we're in More... | |
Anchor | getFlowAnchor () const |
getFlowAnchor get internal widget alignment and direction of growth More... | |
void | setFlowAnchor (const Anchor &value) |
setFlowAnchor set internal widget alignment and direction of growth More... | |
int | getId () |
Widgets have a unique id per instance. | |
void | setStatusMsg (const std::string &value) |
setStatusMsg More... | |
const cv::Point & | getLocation () const |
get widget position in Canvas | |
virtual void | setLocation (const cv::Point &value) |
set widget position in Canvas | |
bool | getStretchX () const |
get if the Layout we're in should stretch us in the X direction | |
void | setStretchX (bool value) |
set if the Layout we're in should stretch us in the X direction (and calls setStretchXToParent(false)) | |
bool | getStretchY () const |
get if the Layout we're in should stretch us in the Y direction | |
void | setStretchY (bool value) |
set if the Layout we're in should stretch us in the Y direction (and calls setStretchYToParent(false)) | |
cv::Scalar | getSelectColor () const |
get the color to use when a widget is selected | |
std::shared_ptr< Widget > | rmvFromLayout () |
get rid of the widget | |
bool | getIsSelectable () const |
get if the widget should appear as selected when the mouse is over it | |
void | setIsSelectable (bool value) |
set if the widget should appear as selected when the mouse is over it | |
int | getForcedWidth () const |
get the forced width for this widget | |
void | setForcedWidth (int value) |
set the forced width for this widget (and calls setStretchX/setStretchXToParent(false)) | |
int | getForcedHeight () const |
get the forced height for this widget | |
void | setForcedHeight (int value) |
set the forced height for this widget (and calls setStretchY/setStretchYToParent(false)) | |
void | update () |
removes 'dirty' state and invokes the derived 'recalc/recalcCompound' | |
bool | isRemoved () const |
returns true if the widget has no layout and false if it does | |
bool | getStretchXToParent () const |
get if this widget streches to parent layout width | |
void | setStretchXToParent (bool value) |
set if this widget streches to parent layout width (and calls setStretchX(false)) | |
bool | getStretchYToParent () const |
get if this widget streches to parent layout height | |
void | setStretchYToParent (bool value) |
set if this widget streches to parent layout height (and calls setStretchY(false)) | |
Static Public Member Functions | |
static std::shared_ptr< SelectionBox > | create (Layout &layoutVal, std::vector< std::string > selectionNames, Widget::CBUserSelection cbUserSelection=Widget::CBUserSelection(), const cv::Point &pos=cv::Point(0, 0)) |
create a selection box widget More... | |
Protected Member Functions | |
virtual void | recalcCompound () |
recalcCompound More... | |
Protected Member Functions inherited from canvascv::CompoundWidget | |
virtual void | recalc () final |
delegate to internal Widget parts added by derived classes | |
virtual void | addWidget (const std::shared_ptr< Widget > &widget) |
adds the widget to this Layout after removing it from it's previous layout | |
virtual std::shared_ptr< Widget > | rmvWidget (const std::shared_ptr< Widget > &widget) |
rmvWidget More... | |
virtual void | renderOn (cv::Mat &dst) |
render the widget to dst More... | |
virtual void | drawFG (cv::Mat &dst) |
dst is the roi of the widget size and not the full image | |
virtual bool | isAtPos (const cv::Point &pos) |
isAtPos More... | |
virtual const cv::Rect & | getMinimalRect () |
Minimal size the widget coould have occupy. | |
Protected Member Functions inherited from canvascv::Widget | |
void | setStateChangesBG () |
widgets like buttons change bg on mouse events | |
void | allocateBG (const cv::Size &size) |
invokes Theme::allocateBG() | |
void | flatWidget () |
delegate to Theme | |
void | raisedWidget () |
delegate to Theme | |
void | sunkenWidget () |
delegate to Theme | |
void | selectedWidget () |
delegate to Theme | |
void | callDrawFG (bool preAllocateMat=true) |
helper method which delgates to drawFG for derived | |
bool | setDirty () |
setDirty More... | |
Additional Inherited Members | |
Public Types inherited from canvascv::Widget | |
typedef std::function< void(Widget *)> | CBWidget |
signature of a callback which only gets the widget | |
typedef std::function< void(Widget *, State)> | CBWidgetState |
signature of a callback which gets the State | |
typedef std::function< void(Widget *, int)> | CBUserSelection |
signature of a callback which gets a user selection | |
Detailed Description
Use a message box with any number of buttons on an OpenCV window
- Examples:
- example_selectbox.cpp.
Member Function Documentation
|
static |
- Parameters
-
layoutVal widgets are placed in layouts Canvas/VFrame/HFrame/... selectionNames automatically create items with names of selectionNames cbUserSelection a callback to invoke with index of pressed button pos location in the Layout (if the layout supports Point locations)
- Returns
- a smart pointer copy of the object kept in the Layout Canvas c(winName, image.size());auto selectionBox = SelectionBox::create(c, {"Long Option1", // index 0"Option2\n2 lines", // index 1"Option3" // index 2},[](Widget *w, int i) {w->setVisible(false);cout << "Option " << i << " was chosen" << endl;});while(...){c.redrawOn(...);imshow(...);key = c.waitKeyEx(...); // GUI and callbacks happen here}
- Examples:
- example_selectbox.cpp.
std::string canvascv::SelectionBox::getTextAt | ( | int | index | ) | const |
return the text at index index
- Parameters
-
index is the index you want the text for
- Returns
- return the text at index index or empty string if invalid index
- Examples:
- example_selectbox.cpp.
|
virtual |
- Returns
- const char * pointer to string with widget type name
Implements canvascv::Widget.
|
protectedvirtual |
Your BG size recalculation/allocation and FG drawing is done here. It is done semi automatically. Is you invoke setters in this method on your internal widgets, then make sure to update them and/or their layout
Implements canvascv::CompoundWidget.
The documentation for this class was generated from the following file:
- CanvasCV-doxygen/src/canvascv/widgets/selectionbox.h
Generated by 1.8.11