tabbox Class Reference

#include <tabbox.hpp>

Inheritance diagram for tabbox:

Inheritance graph
[legend]
Collaboration diagram for tabbox:

Collaboration graph
[legend]

List of all members.


Detailed Description

Definition at line 52 of file tabbox.hpp.


Event callbacks

event_handlerget_event_handler ()
 The event handler pointer is provided to override the default event handler of a particular widget object without needing to go to the trouble of creating a whole new derived class.
typedef bool(* event_handler )(widget *this_widget, const SDL_Event &)

Public Types

enum  widget_flags { NO_FLAGS = 0, WIDGET_INVISIBLE = (1 << 0), WIDGET_INACTIVE = (1 << 1), WIDGET_CAN_FOCUS = (1 << 2) }

Public Member Functions

void add_child (widget *)
void add_tab (const gsgl::string &name, widget *tab)
virtual void draw ()
virtual bool handle_event (const SDL_Event &)
void remove_child (widget *)
 tabbox (widget *parent, int x, int y, int w, int h, const platform::color &fg, const platform::color &bg, const gsgl::string &tab_font_face, const int tab_font_size, const int tab_bar_height)
virtual ~tabbox ()
Utilities
bool button_down_here (int button)
 Determines whether or not the latest mouse-down was in this widget.
void draw_box (int x, int y, int w, int h)
 Draws a box (in local coordinates).
void draw_line (int x0, int y0, int x1, int y1)
 Draws a line (in local coordinates).
void get_abs (int &x, int &y)
 Transforms the given local coordinates to absolute window coordinates.
void get_local (int &x, int &y)
 Transforms the given absolute window coordinates into local widget coordinates.
Accessors
platform::colorget_background ()
data::simple_stack< widget * > & get_children ()
gsgl::flags_tget_flags ()
platform::colorget_foreground ()
int & get_h ()
widget *& get_next_tab ()
widgetget_parent ()
widget *& get_prev_tab ()
platform::texture *& get_texture ()
int & get_w ()
int & get_x ()
int & get_y ()
void set_flags (const gsgl::flags_t f, bool flag_on)

Private Attributes

gsgl::index_t active_tab_index
int tab_bar_height
platform::fonttab_font
data::list< tab_rectabs

Classes

struct  tab_rec

Member Typedef Documentation

typedef bool(* event_handler)(widget *this_widget, const SDL_Event &) [inherited]


Member Enumeration Documentation

enum widget_flags [inherited]

Enumerator:
NO_FLAGS 
WIDGET_INVISIBLE  The widget is invisible but still active.
WIDGET_INACTIVE  The widget is neither visible nor active.
WIDGET_CAN_FOCUS  The widget is capable of handling keyboard events.

Definition at line 66 of file widget.hpp.


Constructor & Destructor Documentation

tabbox ( widget parent,
int  x,
int  y,
int  w,
int  h,
const platform::color fg,
const platform::color bg,
const gsgl::string tab_font_face,
const int  tab_font_size,
const int  tab_bar_height 
)

Definition at line 51 of file tabbox.cpp.

~tabbox (  )  [virtual]

Definition at line 64 of file tabbox.cpp.

References tabbox::tab_font, and tabbox::tabs.


Member Function Documentation

void add_child ( widget child  )  [inherited]

Definition at line 73 of file widget.cpp.

References widget::children, and widget::parent.

Referenced by tabbox::add_tab(), and widget::widget().

void add_tab ( const gsgl::string name,
widget tab 
)

bool button_down_here ( int  button  )  [inherited]

Determines whether or not the latest mouse-down was in this widget.

Definition at line 156 of file widget.cpp.

References widget::get_h(), widget::get_local(), widget::get_w(), and singleton::global_instance().

Referenced by treebox_node::handle_event(), and button::handle_event().

void draw (  )  [virtual]

void draw_box ( int  x,
int  y,
int  w,
int  h 
) [inherited]

Draws a box (in local coordinates).

Definition at line 179 of file widget.cpp.

References display::draw_rectangle(), and widget::get_abs().

void draw_line ( int  x0,
int  y0,
int  x1,
int  y1 
) [inherited]

Draws a line (in local coordinates).

Definition at line 167 of file widget.cpp.

References widget::get_abs().

void get_abs ( int &  x,
int &  y 
) [inherited]

Transforms the given local coordinates to absolute window coordinates.

Definition at line 124 of file widget.cpp.

References widget::parent, and widget::w.

Referenced by widget::draw_box(), and widget::draw_line().

platform::color& get_background (  )  [inline, inherited]

Definition at line 96 of file widget.hpp.

Referenced by tabbox::add_tab(), and button::draw().

data::simple_stack<widget *>& get_children (  )  [inline, inherited]

event_handler& get_event_handler (  )  [inline, inherited]

The event handler pointer is provided to override the default event handler of a particular widget object without needing to go to the trouble of creating a whole new derived class.

If the event handler is non-null, it will be called instead of handle_event(); if it returns false, then handle_event() will be called as well.

Definition at line 114 of file widget.hpp.

Referenced by application::handle_ui_event().

gsgl::flags_t& get_flags (  )  [inline, inherited]

Definition at line 81 of file widget.hpp.

Referenced by textbox::draw(), application::draw_ui(), and application::handle_ui_event().

platform::color& get_foreground (  )  [inline, inherited]

int& get_h (  )  [inline, inherited]

void get_local ( int &  x,
int &  y 
) [inherited]

Transforms the given absolute window coordinates into local widget coordinates.

Definition at line 140 of file widget.cpp.

References widget::w.

Referenced by widget::button_down_here(), and tabbox::handle_event().

widget* & get_next_tab (  )  [inline, inherited]

Definition at line 84 of file widget.hpp.

widget* get_parent (  )  [inline, inherited]

Definition at line 87 of file widget.hpp.

widget* & get_prev_tab (  )  [inline, inherited]

Definition at line 85 of file widget.hpp.

platform::texture* & get_texture (  )  [inline, inherited]

Definition at line 97 of file widget.hpp.

int& get_w (  )  [inline, inherited]

int& get_x (  )  [inline, inherited]

int& get_y (  )  [inline, inherited]

bool handle_event ( const SDL_Event &  e  )  [virtual]

Reimplemented from widget.

Definition at line 167 of file tabbox.cpp.

References tabbox::active_tab_index, widget::get_local(), singleton::global_instance(), and tabbox::tabs.

void remove_child ( widget child  )  [inherited]

Definition at line 80 of file widget.cpp.

References widget::children, and widget::parent.

Referenced by treebox::clear_tree_nodes(), and treebox_node::clear_tree_nodes().

void set_flags ( const gsgl::flags_t  f,
bool  flag_on 
) [inherited]


Member Data Documentation

Definition at line 68 of file tabbox.hpp.

Referenced by tabbox::draw(), and tabbox::handle_event().

int tab_bar_height [private]

Definition at line 71 of file tabbox.hpp.

Referenced by tabbox::add_tab(), and tabbox::draw().

Definition at line 69 of file tabbox.hpp.

Referenced by tabbox::add_tab(), and tabbox::~tabbox().

data::list<tab_rec> tabs [private]

Definition at line 67 of file tabbox.hpp.

Referenced by tabbox::add_tab(), tabbox::draw(), tabbox::handle_event(), and tabbox::~tabbox().


The documentation for this class was generated from the following files:

Generated on Sat Mar 1 13:50:06 2008 for Periapsis Project by  doxygen 1.5.5