Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

ONE::gui::laf::chameleon Namespace Reference


Detailed Description

contains the Chameleon Look and Feel

The Chameleon (C7n) LaF is a skinnable, image map based, scalable LookAndFeel implementation.

Themes

LaF themes are loaded from XML files when the install function is called. The theme file contains delegate definitions that override the implementation's default settings. Note that there is no default delegate definition, so a valid delegate must be specified for each type used with the LaF. The exact make-up of a theme file is described in the theme.dtd file used to validate schemes.

Delegates

Each delegate uses a single texture to draw the delegating component. Also, each class holds one or several sets of UV coordinate rectangles that define which part of the texture is used.
Most delegates hold one such rectangle, which defines the texture area that is used to draw a component's background. The background texture is scaled to the delegating object's size.
Border delegates hold eight rectangles, one for each corner and edge. The textured areas are scaled according to the border's fringe.
Delegates that draw a border around an object (ScrollBarSliderDelegate and FrameTitleBarDelegate) hold nine UV rectangles, one for the background (which is scaled to the appropriate size) and eight used in a fashion similar to border delegates. However, the edges are displayed in the corner's natural texel size. The ButtonDelegate holds twice as many rectangles, one set for the idle and one for the pressed state.

Design Considerations

For clarity and visually pleasing results, component backgrounds should be kept simple. A plain single-colored background or a simple muted color gradient will yield the best results. Note that the texture color will be multiplied by the component's background (and, where applicable, foreground) color. Gray scale patterns combined with appropriate component colors (which may be defined by the LaF theme) will lead to most flexible looks.


Classes

class  BorderDelegate
class  BorderDelegateCreator
class  BorderedDelegate
 base class for Bordered object delegates More...
struct  BorderUVSet
class  ButtonDelegate
class  ButtonDelegateCreator
class  ChameleonLaF
 the main C7n LaF class More...
class  CheckBoxDelegate
class  ConsoleDelegate
class  DelegateBase
class  FramedDelegate
 UIDelegate implementation that draws decorated components More...
class  FramedDelegateCreator
class  FrameDelegate
class  FrameTitleBarDelegate
struct  FullUVSet
class  LabelDelegate
class  ListDelegate
class  PanelDelegate
class  PlainDelegate
 UIDelegate implementation that displays a plain background More...
class  PlainDelegateCreator
class  RadioButtonDelegate
class  ScrollBarDelegate
class  ScrollBarSliderDelegate
class  TextFieldDelegate
class  UIDelegateCreator
struct  UVRect
class  ViewportDelegate
class  WindowDelegate

Typedefs

typedef PlainDelegateCreator<
CheckBoxDelegate
CheckBoxDelegateCreator
typedef PlainDelegateCreator<
ConsoleDelegate
ConsoleDelegateCreator
typedef PlainDelegateCreator<
FrameDelegate
FrameDelegateCreator
typedef FramedDelegateCreator<
FrameTitleBarDelegate
FrameTitleBarDelegateCreator
typedef PlainDelegateCreator<
LabelDelegate
LabelDelegateCreator
typedef PlainDelegateCreator<
ListDelegate
ListDelegateCreator
typedef PlainDelegateCreator<
PanelDelegate
PanelDelegateCreator
typedef PlainDelegateCreator<
RadioButtonDelegate
RadioButtonDelegateCreator
typedef PlainDelegateCreator<
ScrollBarDelegate
ScrollBarDelegateCreator
typedef FramedDelegateCreator<
ScrollBarSliderDelegate
ScrollBarSliderDelegateCreator
typedef PlainDelegateCreator<
TextFieldDelegate
TextFieldDelegateCreator
typedef PlainDelegateCreator<
ViewportDelegate
ViewportDelegateCreator
typedef PlainDelegateCreator<
WindowDelegate
WindowDelegateCreator


Typedef Documentation

typedef PlainDelegateCreator<CheckBoxDelegate> ONE::gui::laf::chameleon::CheckBoxDelegateCreator
 

typedef PlainDelegateCreator<ConsoleDelegate> ONE::gui::laf::chameleon::ConsoleDelegateCreator
 

typedef PlainDelegateCreator<FrameDelegate> ONE::gui::laf::chameleon::FrameDelegateCreator
 

typedef FramedDelegateCreator<FrameTitleBarDelegate> ONE::gui::laf::chameleon::FrameTitleBarDelegateCreator
 

typedef PlainDelegateCreator<LabelDelegate> ONE::gui::laf::chameleon::LabelDelegateCreator
 

typedef PlainDelegateCreator<ListDelegate> ONE::gui::laf::chameleon::ListDelegateCreator
 

typedef PlainDelegateCreator<PanelDelegate> ONE::gui::laf::chameleon::PanelDelegateCreator
 

typedef PlainDelegateCreator<RadioButtonDelegate> ONE::gui::laf::chameleon::RadioButtonDelegateCreator
 

typedef PlainDelegateCreator<ScrollBarDelegate> ONE::gui::laf::chameleon::ScrollBarDelegateCreator
 

typedef FramedDelegateCreator<ScrollBarSliderDelegate> ONE::gui::laf::chameleon::ScrollBarSliderDelegateCreator
 

typedef PlainDelegateCreator<TextFieldDelegate> ONE::gui::laf::chameleon::TextFieldDelegateCreator
 

typedef PlainDelegateCreator<ViewportDelegate> ONE::gui::laf::chameleon::ViewportDelegateCreator
 

typedef PlainDelegateCreator<WindowDelegate> ONE::gui::laf::chameleon::WindowDelegateCreator
 


Generated on Wed Sep 7 19:03:22 2005 for ONEngine by  doxygen 1.4.3