Dillo
Classes | Enumerations | Functions
dw::fltk::ui Namespace Reference

FLTK implementation of dw::core::ui. More...

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)
 

Detailed Description

FLTK implementation of dw::core::ui.

The design should be like this:

dot_inline_dotgraph_16.png
[legend]

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:

dot_inline_dotgraph_17.png
[legend]

To make this a bit simpler, we use templates:

dot_inline_dotgraph_18.png
[legend]

Enumeration Type Documentation

anonymous enum
Enumerator:
RELIEF_X_THICKNESS 
RELIEF_Y_THICKNESS 

Function Documentation

static core::ButtonState dw::fltk::ui::getDwButtonState ( )
static
static void dw::fltk::ui::setButtonEvent ( dw::core::EventButton event)
static