|
Base class for most of SPTK widgets. More...
#include <CControl.h>
Public Member Functions | |
| CControl (const char *label, int layoutSize=20, CLayoutAlign layoutAlign=CLayoutAlign::TOP) | |
| Constructor in SPTK style. More... | |
| void | resize (int x, int y, int w, int h) override |
| Resizes the control and inside widgets. More... | |
| void | draw () override |
| Draws the control. | |
| virtual int | tag () const |
| Returns the control's user data tag. | |
| virtual void | tag (int t) |
| Sets the control's user data tag. | |
| virtual Fl_Font | textFont () const |
| Returns the control's text font. More... | |
| virtual void | textFont (Fl_Font) |
| Sets the control's text font. More... | |
| virtual uchar | textSize () const |
| Returns the control's text font size. More... | |
| virtual void | textSize (uchar) |
| Sets the control's text font size. More... | |
| virtual Fl_Color | textColor () const |
| Returns the control's text color. More... | |
| virtual void | textColor (Fl_Color) |
| Sets the control's text color. More... | |
| virtual Fl_Color | labelColor () const |
| Returns the control's label color. | |
| virtual void | labelColor (Fl_Color) |
| Sets the control's label color. | |
| virtual Fl_Color | color () const |
| Returns the control's background color. | |
| virtual void | color (Fl_Color) |
| Sets the control's background color. | |
| uint32_t | flags () const |
| Returns the control's flags. | |
| void | flags (uint32_t flags) |
| Sets the control's flags. | |
| Fl_Widget * | control () const |
| Returns main widget inside the container. | |
| const String & | label () const override |
| Returns control's label. More... | |
| void | label (const String &) override |
| Sets control's label. More... | |
| Fl_Menu_ * | menu () const |
| Returns control's menu. | |
| void | menu (const Fl_Menu_Item *) |
| Sets control's menu. | |
| Fl_Font | labelFont () const |
| Returns control's label font. | |
| void | labelSize (Fl_Font f) |
| Sets control's label font. | |
| uchar | labelSize () const |
| Returns control's label font size. | |
| void | labelSize (uchar) |
| Sets control's label font size. | |
| uint32_t | labelWidth () const |
| Returns control's label width. | |
| void | labelWidth (uint32_t) |
| Sets control's label width. | |
| void | hint (const String &str) |
| Sets control's hint (tooltip) More... | |
| String | hint () const |
| Returns control's hint (tooltip) | |
| virtual int | maxLength () const |
| Returns control's max input length, if applicable. More... | |
| virtual void | maxLength (int) |
| Sets control's max input length, if applicable. More... | |
| virtual const String & | fieldName () const |
| Returns control's field name for universal data connection. | |
| virtual void | fieldName (const String &) |
| Sets control's field name for universal data connection. | |
| virtual CControlKind | kind () const =0 |
| Returns control's kind (internal SPTK RTTI). More... | |
| String | className () const override |
| Returns control's class name (internal SPTK RTTI). More... | |
| virtual void | reset () |
| Sets the control to empty text (for the input entries) More... | |
| virtual void | load (Query *) |
| Loads control data from query fields. More... | |
| virtual void | save (Query *) |
| Saves control data to query params. More... | |
| void | load (const xdoc::SNode &node, CLayoutXMLmode xmlMode) override |
| Loads control data from XML. More... | |
| void | load (const xdoc::SNode &node) override |
| Loads control data from XML. More... | |
| void | save (const xdoc::SNode &node, CLayoutXMLmode xmlMode) const override |
| Saves control data to XML. More... | |
| virtual void | save (const xdoc::SNode &node) const |
| Saves control data to XML. More... | |
| virtual bool | valid () const =0 |
| Returns true if the control state is valid, and the data is inside the limits (if applicable) More... | |
| virtual Variant | data () const |
| The universal data connector. More... | |
| virtual void | data (const Variant &v) |
| The universal data connector, sets control data. More... | |
| void | fireEvent (CEvent ev, int32_t arg) |
| Fires the event generated by this control. | |
| const CEventInfo & | event () const |
| Returns the last event fired by this control. | |
| CEvent | eventType () const |
| Returns the event type for the last fired by this control. | |
| int | eventArgument () const |
| Returns the event argument for the last fired by this control. | |
| CControl & | operator= (const String &str) |
| Control data assignment. | |
| CControl & | operator= (const char *str) |
| Control data assignment. | |
| CControl & | operator= (int32_t v) |
| Control data assignment. | |
| CControl & | operator= (uint32_t v) |
| Control data assignment. | |
| CControl & | operator= (int64_t v) |
| Control data assignment. | |
| CControl & | operator= (float v) |
| Control data assignment. | |
| CControl & | operator= (double v) |
| Control data assignment. | |
| CControl & | operator= (const DateTime &dt) |
| Control data assignment. | |
| CControl & | operator= (const Field &fld) |
| Control data assignment. | |
| operator String () const | |
| Control data conversion. | |
| operator int32_t () const | |
| Control data conversion. | |
| operator uint32_t () const | |
| Control data conversion. | |
| operator int64_t () const | |
| Control data conversion. | |
| operator uint64_t () const | |
| Control data conversion. | |
| operator float () const | |
| Control data conversion. | |
| operator double () const | |
| Control data conversion. | |
| operator DateTime () const | |
| Control data conversion. | |
Public Member Functions inherited from sptk::CLayoutClient | |
| CLayoutClient (Fl_Widget *widget, int layoutSize, CLayoutAlign ca) | |
| virtual | ~CLayoutClient () |
| CLayoutAlign | layoutAlign () const |
| void | layoutAlign (CLayoutAlign al) |
| int | layoutSize () const |
| void | layoutSize (int ls) |
| virtual void | label (const String &l) |
| virtual const String & | label () const |
| void | name (const char *aname) |
| void | name (const String &aname) |
| const String & | name () const |
| virtual bool | preferredSize (int &w, int &h) |
| virtual bool | computeSize (int &w, int &h) |
| virtual String | className () const |
| Fl_Widget * | widget () const |
| virtual void | load (const xdoc::SNode &node, CLayoutXMLmode xmlMode) |
| virtual void | load (const std::shared_ptr< xdoc::Node > &node) |
| virtual void | save (const std::shared_ptr< xdoc::Node > &node, CLayoutXMLmode xmlMode) const |
Static Public Member Functions | |
| static CControlKind | controlNameToType (const String &typeName, int &maxLength, const String &values="") |
| Converts control name to control kind. | |
| static void | defaultControlMenuCopy (Fl_Widget *, void *) |
| Default callback function to support CControl default menu item 'Copy'. | |
| static void | defaultControlMenuCut (Fl_Widget *, void *) |
| Default callback function to support CControl default menu item 'Delete'. | |
| static void | defaultControlMenuPaste (Fl_Widget *, void *) |
| Default callback function to support CControl default menu item 'Paste'. | |
| static void | defaultControlMenuClear (Fl_Widget *, void *) |
| Default callback function to support CControl default menu item 'Clear'. | |
Static Public Attributes | |
| static const Fl_Menu_Item | defaultControlMenu [] |
| CControl default menu. | |
Protected Member Functions | |
| bool | containsFocus () const |
| Does the control contain focus? | |
| void | notifyFocus (bool gotFocus=true) |
| Internal focus notification on focus change. | |
| virtual void | onEnter () |
| Internal focus notification on focus change. | |
| virtual void | onExit () |
| Internal focus notification on focus change. More... | |
| uint32_t | labelHeight () const |
| Computes the label height based on the labelFont() and labelWidth() | |
| int | handle (int) override |
| Special handle() method. | |
Protected Member Functions inherited from sptk::CLayoutClient | |
| int | lastPreferredH () const |
| int | lastPreferredW () const |
| void | lastPreferredH (int height) |
| void | lastPreferredW (int width) |
Static Protected Member Functions | |
| static void | internalCallback (Fl_Widget *internalWidget, void *data) |
| Internal callback function. | |
Protected Attributes | |
| bool | m_limited {false} |
| uint32_t | m_labelWidth {0} |
| Fl_Color | m_labelColor |
| Fl_Color | m_textColor |
| Fl_Font | m_textFont |
| uchar | m_textSize {0} |
| String | m_fieldName |
| String | m_hint |
| Fl_Widget * | m_control {nullptr} |
| int | m_tag {0} |
| uint32_t | m_controlFlags {0} |
| Control's special flags (a bit combination of InputEntryFlags). More... | |
| Fl_Menu_Button * | m_menuButton {nullptr} |
| CEventInfo | m_event |
| bool | m_hasFocus {false} |
Protected Attributes inherited from sptk::CLayoutClient | |
| Fl_Widget * | m_widget |
| String | m_name |
| String | m_label |
| CLayoutAlign | m_layoutAlign |
Friends | |
| class | CInternalComboBoxPanel |
| class | CEditor |
| class | CBaseButton |
| class | CRadioButton |
| class | CCheckButton |
| class | CInput_ |
Base class for most of SPTK widgets.
It is a group used as a container for the widget(s) inside. Every CControl has a field name, and it can be a layout client.
|
explicit |
Constructor in SPTK style.
| label | const char *, label |
| layoutSize | int, widget align in layout |
| layoutAlign | CLayoutAlign, widget align in layout |
|
inlineoverridevirtual |
Returns control's class name (internal SPTK RTTI).
Reimplemented from sptk::CLayoutClient.
Reimplemented in sptk::CSplitter, sptk::CDateIntervalInput, sptk::CDateInput, sptk::CTimeInput, sptk::CDateTimeInput, sptk::CFloatInput, sptk::CFontComboBox, sptk::CHtmlBox, sptk::CInput, sptk::CIntegerInput, sptk::CListView, sptk::CMemoInput, sptk::CPhoneNumberInput, sptk::CRadioButtons, and sptk::CTreeView.
|
inlinevirtual |
The universal data connector.
Reimplemented in sptk::CBox, sptk::CButtonGroup, sptk::CCheckButtons, sptk::CBaseListBox, sptk::CDateIntervalInput, sptk::CDateInput, sptk::CDateTimeInput, sptk::CHtmlBox, sptk::CInput, sptk::CListView, sptk::CMemoInput, sptk::CPhoneNumberInput, sptk::CProgressBar, and sptk::CTreeView.
|
inlinevirtual |
The universal data connector, sets control data.
Reimplemented in sptk::CBox, sptk::CButtonGroup, sptk::CCheckButtons, sptk::CBaseListBox, sptk::CDateIntervalInput, sptk::CDateInput, sptk::CDateTimeInput, sptk::CHtmlBox, sptk::CInput, sptk::CListView, sptk::CMemoInput, sptk::CPhoneNumberInput, sptk::CProgressBar, and sptk::CTreeView.
|
inline |
Sets control's hint (tooltip)
| str | Tooltip text |
|
pure virtual |
Returns control's kind (internal SPTK RTTI).
Implemented in sptk::CBox, sptk::CCheckButtons, sptk::CComboBox, sptk::CListBox, sptk::CDateIntervalInput, sptk::CDateInput, sptk::CTimeInput, sptk::CDateTimeInput, sptk::CFloatInput, sptk::CHtmlBox, sptk::CInput, sptk::CIntegerInput, sptk::CListView, sptk::CMemoInput, sptk::CPhoneNumberInput, sptk::CRadioButtons, and sptk::CTreeView.
|
inlineoverridevirtual |
Returns control's label.
Reimplemented from sptk::CLayoutClient.
|
overridevirtual |
Sets control's label.
Reimplemented from sptk::CLayoutClient.
|
inlineoverride |
Loads control data from XML.
Layout information may also include widget size and position, as well as visible() and active() states
| node | the XML node |
References DATA.
|
overridevirtual |
Loads control data from XML.
Layout information may also include widget size and position, as well as visible() and active() states
| node | the XML node |
| xmlMode | the mode defining how the layout and/or data should be stored |
Reimplemented from sptk::CLayoutClient.
Reimplemented in sptk::CDateTimeBaseInput, sptk::CInput, and sptk::CListView.
|
inlinevirtual |
Loads control data from query fields.
Reimplemented in sptk::CButtonGroup, sptk::CBaseListBox, sptk::CDateTimeBaseInput, sptk::CInput, sptk::CListView, and sptk::CTreeView.
Referenced by sptk::CInput::load().
|
inlinevirtual |
Returns control's max input length, if applicable.
Reimplemented in sptk::CInput.
|
inlinevirtual |
Sets control's max input length, if applicable.
Reimplemented in sptk::CInput.
|
protectedvirtual |
Internal focus notification on focus change.
Reimplemented in sptk::CDBDropDownListView.
|
inlinevirtual |
Sets the control to empty text (for the input entries)
Also sets no selection state / default selection (for the lists)
|
override |
Resizes the control and inside widgets.
| x | int, x-position |
| y | int, y-position |
| w | int, width |
| h | int, height |
|
inlinevirtual |
Saves control data to XML.
Layout information may also include widget size and position, as well as visible() and active() states
| node | the XML node |
Reimplemented in sptk::CButtonGroup, and sptk::CTreeView.
References DATA.
|
override |
Saves control data to XML.
Layout information may also include widget size and position, as well as visible() and active() states
| node | the XML node |
| xmlMode | the mode defining how the layout and/or data should be stored |
|
inlinevirtual |
Saves control data to query params.
Reimplemented in sptk::CButtonGroup, sptk::CBaseListBox, sptk::CDateTimeBaseInput, sptk::CFloatInput, sptk::CInput, sptk::CIntegerInput, sptk::CListView, sptk::CMemoInput, and sptk::CTreeView.
Referenced by sptk::CInput::save().
|
virtual |
Returns the control's text color.
Reimplemented in sptk::CListView.
|
virtual |
Sets the control's text color.
Reimplemented in sptk::CListView.
|
virtual |
Returns the control's text font.
Reimplemented in sptk::CBox, sptk::CHtmlBox, sptk::CInput, sptk::CListView, and sptk::CMemoInput.
|
virtual |
Sets the control's text font.
Reimplemented in sptk::CBox, sptk::CHtmlBox, sptk::CInput, sptk::CListView, and sptk::CMemoInput.
|
virtual |
Returns the control's text font size.
Reimplemented in sptk::CBox, sptk::CHtmlBox, sptk::CInput, sptk::CListView, and sptk::CMemoInput.
|
virtual |
Sets the control's text font size.
Reimplemented in sptk::CBox, sptk::CHtmlBox, sptk::CInput, sptk::CListView, and sptk::CMemoInput.
|
pure virtual |
Returns true if the control state is valid, and the data is inside the limits (if applicable)
Implemented in sptk::CButtonGroup, sptk::CBaseListBox, sptk::CDateIntervalInput, sptk::CDateTimeBaseInput, sptk::CFloatInput, sptk::CInput, sptk::CIntegerInput, sptk::CListView, sptk::CPhoneNumberInput, and sptk::CTreeView.
|
protected |
The main widget inside the control.
|
protected |
Control's special flags (a bit combination of InputEntryFlags).
|
protected |
The last SPTK event inside this control.
|
protected |
Does the control have focus?
|
protected |
The text of the hint
|
protected |
Control label color
|
protected |
Control label width (on the left)
|
protected |
Control has the defined min and max values
|
protected |
Control's menu button - to show right-mouse click menu
|
protected |
Control's special data tag
|
protected |
Control text color
|
protected |
Control text font
|
protected |
Control text font size