treebox_node Class Reference

#include <treebox.hpp>

Inheritance diagram for treebox_node:

Inheritance graph
[legend]
Collaboration diagram for treebox_node:

Collaboration graph
[legend]

List of all members.


Detailed Description

Definition at line 60 of file treebox.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 clear_tree_nodes ()
virtual void draw ()
bool & get_expanded ()
int & get_indent ()
treeboxget_parent_treebox ()
data::list< treebox_node * > & get_tree_nodes ()
void *& get_user_data ()
 Get or set user data for this node.
virtual bool handle_event (const SDL_Event &)
void remove_child (widget *)
 treebox_node (treebox *parent_treebox, treebox_node *parent_node, const platform::color &fg, const platform::color &bg, const gsgl::string &text, void *user_data)
virtual ~treebox_node ()
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

bool expanded
int indent
treebox_nodeparent_node
treeboxparent_treebox
treebox_plusplus_widget
textboxtext_widget
data::list< treebox_node * > tree_nodes
void * user_data

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

treebox_node ( treebox parent_treebox,
treebox_node parent_node,
const platform::color fg,
const platform::color bg,
const gsgl::string text,
void *  user_data 
)

~treebox_node (  )  [virtual]

Definition at line 131 of file treebox.cpp.


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().

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 clear_tree_nodes (  ) 

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().

bool& get_expanded (  )  [inline]

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]

int& get_indent (  )  [inline]

Definition at line 86 of file treebox.hpp.

Referenced by treebox::draw(), and treebox::mark_expanded_nodes().

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.

treebox* get_parent_treebox (  )  [inline]

Definition at line 83 of file treebox.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.

data::list<treebox_node *>& get_tree_nodes (  )  [inline]

void*& get_user_data (  )  [inline]

Get or set user data for this node.

Definition at line 92 of file treebox.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 180 of file treebox.cpp.

References widget::button_down_here(), treebox::get_selected_node(), and treebox_node::parent_treebox.

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

bool expanded [private]

Definition at line 69 of file treebox.hpp.

int indent [private]

Definition at line 70 of file treebox.hpp.

Definition at line 64 of file treebox.hpp.

treebox* parent_treebox [private]

Definition at line 66 of file treebox.hpp.

Referenced by treebox_node::draw(), and treebox_node::treebox_node().

textbox* text_widget [private]

Definition at line 67 of file treebox.hpp.

Referenced by treebox_node::draw(), and treebox_node::treebox_node().

Definition at line 72 of file treebox.hpp.

Referenced by treebox_node::clear_tree_nodes().

void* user_data [private]

Definition at line 74 of file treebox.hpp.


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