Scroll area widget. More...
#include <CScroll.h>
Public Member Functions | |
CScroll (const char *label=0, int layoutSize=10, CLayoutAlign layoutAlign=CLayoutAlign::TOP) | |
Constructor in SPTK style. More... | |
void | resize (int x, int y, int w, int h) override |
Resizes the group and inside widgets. More... | |
void | draw () override |
Custom draw() method. | |
bool | preferredSize (int &w, int &h) override |
Computes the optimal group size. More... | |
void | clear () override |
Removes all the child widgets. More... | |
virtual void | position (int X, int Y) |
Sets the position of the scrolled area. | |
int | xposition () const |
Returns the x-position of the scrolled area. | |
int | yposition () const |
Returns the y-position of the scrolled area. | |
int | handle (int) override |
Custom handle method. | |
String | className () const override |
Returns widget class name (internal SPTK RTTI). More... | |
Public Member Functions inherited from sptk::CLayoutManager | |
CLayoutManager (Fl_Group *group, int layoutSize, CLayoutAlign ca) | |
~CLayoutManager () override=default | |
virtual void | clear () |
Removes all the children. More... | |
int | layoutSpacing () const |
void | layoutSpacing (int ls) |
void | layoutGrowMode (CLayoutGrowMode gm=CLayoutGrowMode::LGM_AUTO_GROW) |
CLayoutGrowMode | layoutGrowMode () const |
void | relayout () |
void | frame (CFrame *frame, bool drawBackground=true) |
Defines frame. More... | |
const CFrame * | frame () const |
Returnes the current frame. | |
uint32_t | frameWidth () const |
Returns frame width. | |
virtual void | loadLayout (const xdoc::SNode &node, CLayoutXMLmode xmlMode) |
Loads group controls data from XML node. More... | |
virtual void | saveLayout (const xdoc::SNode &node, CLayoutXMLmode xmlMode) const |
Saves group controls data into XML node. More... | |
void | nameIndex (CWidgetNamesMap &index, bool recursive, bool clean=true) const |
Builds an index of internal widget names. More... | |
bool | noXml () const |
Returns flag of blocking XML processing. More... | |
void | noXml (bool noXml) |
Sets flag of blocking XML processing. More... | |
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 CLayoutClient * | creator (const xdoc::SNode &node) |
Creates a widget based on the XML node information. More... | |
Static Public Member Functions inherited from sptk::CLayoutManager | |
static void | registerControl (std::string typeName, createControlCallback creator) noexcept |
Register control type for loading layouts. More... | |
static const std::map< std::string, Fl_Boxtype > & | boxTypeNames () |
Returns a read-only map of box type names and corresponding constants. | |
Public Attributes | |
CScrollBar | scrollbar |
CScrollBar | hscrollbar |
Additional Inherited Members | |
Protected Member Functions inherited from sptk::CLayoutManager | |
bool | autoLayout (int x, int y, int &w, int &h, bool resizeWidgets) const |
virtual void | paintBackground () |
Protected Member Functions inherited from sptk::CLayoutClient | |
int | lastPreferredH () const |
int | lastPreferredW () const |
void | lastPreferredH (int height) |
void | lastPreferredW (int width) |
Protected Attributes inherited from sptk::CLayoutManager | |
int | m_layoutSpacing |
CLayoutGrowMode | m_layoutGrowMode |
Fl_Group * | m_group |
CFrame * | m_frame |
bool | m_frameDrawBackground |
bool | m_noXml |
Protected Attributes inherited from sptk::CLayoutClient | |
Fl_Widget * | m_widget |
String | m_name |
String | m_label |
CLayoutAlign | m_layoutAlign |
Static Protected Attributes inherited from sptk::CLayoutManager | |
static std::map< std::string, Fl_Boxtype > | m_boxTypeNames |
static createControlCallbackMap | controlCreator |
Scroll area widget.
Extended version of FLTK Fl_Group that can be a layout manager and layout client at the same time.
sptk::CScroll::CScroll | ( | const char * | label = 0 , |
int | layoutSize = 10 , |
||
CLayoutAlign | layoutAlign = CLayoutAlign::TOP |
||
) |
Constructor in SPTK style.
label | const char *, label |
layoutSize | int, widget align in layout |
layoutAlign | CLayoutAlign, widget align in layout |
|
inlineoverridevirtual |
Returns widget class name (internal SPTK RTTI).
Reimplemented from sptk::CLayoutClient.
Reimplemented in sptk::CTreeControl.
|
overridevirtual |
Removes all the child widgets.
Reimplemented from sptk::CLayoutManager.
Reimplemented in sptk::CTreeControl.
|
static |
Creates a widget based on the XML node information.
node | xml::Node*, an XML node with widget information |
|
overridevirtual |
Computes the optimal group size.
w | int&, input - width offered by the program, output - width required by widget |
h | int&, input - height offered by the program, output - height required by widget |
Reimplemented from sptk::CLayoutClient.
|
override |
Resizes the group and inside widgets.
x | int, x-position |
y | int, y-position |
w | int, width |
h | int, height |
CScrollBar sptk::CScroll::hscrollbar |
Horizontal scrollbar
CScrollBar sptk::CScroll::scrollbar |
Vertical scrollbar