Classes | |
| class | ComplexButton |
| class | FltkResource |
| class | FltkSpecificResource |
| class | FltkLabelButtonResource |
| class | FltkComplexButtonResource |
| class | FltkEntryResource |
| class | FltkMultiLineTextResource |
| class | FltkToggleButtonResource |
| class | FltkCheckButtonResource |
| class | FltkRadioButtonResource |
| class | FltkSelectionResource |
| class | FltkOptionMenuResource |
| class | FltkListResource |
Enumerations | |
| enum | { RELIEF_X_THICKNESS = 3, RELIEF_Y_THICKNESS = 3 } |
Functions | |
| static core::ButtonState | getDwButtonState () |
| static void | setButtonEvent (dw::core::EventButton *event) |
The design should be like this:
where dw::fltk::ui::FltkResource provides some base funtionality for all conctrete FLTK implementations of sub-interfaces of dw::core::ui::Resource. However, this is not directly possible in C++, since the base class dw::core::ui::Resource is ambiguous for dw::fltk::ui::FltkLabelButtonResource.
To solve this, we have to remove the dependency between dw::fltk::ui::FltkResource and dw::core::ui::Resource, instead, the part of dw::core::ui::Resource, which is implemented in dw::fltk::ui::FltkResource, must be explicitly delegated from dw::fltk::ui::FltkLabelButtonResourceto dw::fltk::ui::FltkResource:
To make this a bit simpler, we use templates:
| static core::ButtonState dw::fltk::ui::getDwButtonState | ( | ) | [static] |
References dw::core::BUTTON1_MASK, dw::core::BUTTON2_MASK, dw::core::BUTTON3_MASK, dw::core::CONTROL_MASK, dw::core::META_MASK, and dw::core::SHIFT_MASK.
Referenced by setButtonEvent().
| static void dw::fltk::ui::setButtonEvent | ( | dw::core::EventButton * | event | ) | [static] |
References getDwButtonState().
Referenced by dw::fltk::ui::FltkComplexButtonResource::widgetCallback(), and dw::fltk::ui::FltkLabelButtonResource::widgetCallback().
1.5.9