#include <glui.h>
Inheritance diagram for GLUI_Control:
Yes, this is a huge and hideous class. It needs to be split up into simpler subobjects. None of the data members should be directly accessed by users (they should be protected, not public); only subclasses.
Public Member Functions | |
virtual void | set_name (const char *string) |
virtual void | set_int_val (int new_int) |
virtual void | set_float_val (float new_float) |
virtual void | set_ptr_val (void *new_ptr) |
virtual void | set_float_array_val (float *array_ptr) |
virtual float | get_float_val (void) |
virtual int | get_int_val (void) |
virtual void | get_float_array_val (float *array_ptr) |
virtual int | get_id (void) const |
virtual void | set_id (int id) |
virtual int | mouse_down_handler (int local_x, int local_y) |
virtual int | mouse_up_handler (int local_x, int local_y, bool inside) |
virtual int | mouse_held_down_handler (int local_x, int local_y, bool inside) |
virtual int | key_handler (unsigned char key, int modifiers) |
virtual int | special_handler (int key, int modifiers) |
virtual void | update_size (void) |
virtual void | idle (void) |
virtual int | mouse_over (int state, int x, int y) |
virtual void | enable (void) |
virtual void | disable (void) |
virtual void | activate (int how) |
virtual void | deactivate (void) |
void | hide_internal (int recurse) |
void | unhide_internal (int recurse) |
int | can_draw (void) |
void | redraw (void) |
void | redraw_window (void) |
virtual void | align (void) |
void | pack (int x, int y) |
void | pack_old (int x, int y) |
void | draw_recursive (int x, int y) |
int | set_to_glut_window (void) |
void | restore_window (int orig) |
void | translate_and_draw_front (void) |
void | translate_to_origin (void) |
virtual void | draw (int x, int y)=0 |
void | set_font (void *new_font) |
void * | get_font (void) |
int | string_width (const char *text) |
int | string_width (const GLUI_String &str) |
int | char_width (char c) |
void | draw_name (int x, int y) |
void | draw_box_inwards_outline (int x_min, int x_max, int y_min, int y_max) |
void | draw_box (int x_min, int x_max, int y_min, int y_max, float r, float g, float b) |
void | draw_bkgd_box (int x_min, int x_max, int y_min, int y_max) |
void | draw_emboss_box (int x_min, int x_max, int y_min, int y_max) |
void | draw_string (const char *text) |
void | draw_string (const GLUI_String &s) |
void | draw_char (char c) |
void | draw_active_box (int x_min, int x_max, int y_min, int y_max) |
void | set_to_bkgd_color (void) |
void | set_w (int new_w) |
void | set_h (int new_w) |
void | set_alignment (int new_align) |
void | sync_live (int recurse, int draw) |
void | init_live (void) |
void | output_live (int update_main_gfx) |
virtual void | set_text (const char *t) |
void | execute_callback (void) |
void | get_this_column_dims (int *col_x, int *col_y, int *col_w, int *col_h, int *col_x_off, int *col_y_off) |
virtual bool | needs_idle (void) const |
virtual bool | wants_tabs () const |
GLUI_Control (void) | |
virtual | ~GLUI_Control () |
Public Attributes | |
int | w |
int | h |
int | x_abs |
int | y_abs |
int | x_off |
int | y_off_top |
int | y_off_bot |
int | contain_x |
int | contain_y |
int | contain_w |
int | contain_h |
int | active_type |
"GLUI_CONTROL_ACTIVE_..." | |
bool | active |
If true, we've got the focus. | |
bool | can_activate |
If false, remove from tab order. | |
bool | spacebar_mouse_click |
Spacebar simulates click. | |
long | user_id |
Integer to pass to callback function. | |
GLUI_CB | callback |
User callback function, or NULL. | |
float | float_val |
int | int_val |
float | float_array_val [GLUI_DEF_MAX_ARRAY] |
int | float_array_size |
GLUI_String | text |
void * | ptr_val |
int | live_type |
bool | live_inited |
int | last_live_int |
float | last_live_float |
GLUI_String | last_live_text |
float | last_live_float_array [GLUI_DEF_MAX_ARRAY] |
GLUI * | glui |
bool | is_container |
int | alignment |
bool | enabled |
GLUI_String | name |
void * | font |
bool | collapsible |
bool | is_open |
GLUI_Node | collapsed_node |
bool | hidden |
int | char_widths [CHAR_WIDTH_HASH_SIZE][2] |
|
|
|
|
|
Reimplemented in GLUI_EditText, GLUI_TextBox, and GLUI_List. |
|
|
|
Return true if it currently makes sense to draw this class. |
|
|
|
Reimplemented in GLUI_EditText, GLUI_CommandLine, GLUI_TextBox, and GLUI_List. |
|
Reimplemented in GLUI_TextBox. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reimplemented in GLUI_TextBox. |
|
|
|
|
|
Reimplemented in GLUI_Spinner. |
|
|
|
Reimplemented in GLUI_Tree. |
|
Reimplemented in GLUI_Spinner. |
|
|
|
Hide (shrink into a rollout) and unhide (expose from a rollout) |
|
Reimplemented in GLUI_Spinner, GLUI_Scrollbar, and GLUI_Rotation. |
|
|
|
Reimplemented in GLUI_Button, GLUI_Checkbox, GLUI_EditText, GLUI_CommandLine, GLUI_Spinner, GLUI_TextBox, GLUI_List, GLUI_Scrollbar, and GLUI_Listbox. |
|
Reimplemented in GLUI_Button, GLUI_Checkbox, GLUI_Rollout, GLUI_Tree, GLUI_EditText, GLUI_RadioButton, GLUI_Spinner, GLUI_TextBox, GLUI_List, GLUI_Scrollbar, GLUI_Listbox, and GLUI_Mouse_Interaction. |
|
Reimplemented in GLUI_Button, GLUI_Checkbox, GLUI_Rollout, GLUI_Tree, GLUI_EditText, GLUI_RadioButton, GLUI_Spinner, GLUI_TextBox, GLUI_List, GLUI_Scrollbar, GLUI_Listbox, and GLUI_Mouse_Interaction. |
|
Reimplemented in GLUI_EditText, GLUI_TextBox, GLUI_List, and GLUI_Listbox. |
|
Reimplemented in GLUI_Button, GLUI_Checkbox, GLUI_Rollout, GLUI_Tree, GLUI_EditText, GLUI_RadioButton, GLUI_Spinner, GLUI_TextBox, GLUI_List, GLUI_Scrollbar, GLUI_Listbox, and GLUI_Mouse_Interaction. |
|
Reimplemented in GLUI_Spinner, GLUI_Scrollbar, and GLUI_Rotation. |
|
|
|
|
|
|
|
Redraw this control. In single-buffering mode (drawing to GL_FRONT), this is just a call to translate_and_draw_front (after a can_draw() check). In double-buffering mode (drawing to GL_BACK), this queues up a redraw and returns false, since you shouldn't draw yet. |
|
Redraw everybody in our window. |
|
|
|
|
|
|
|
Reimplemented in GLUI_EditText, GLUI_Spinner, and GLUI_Scrollbar. |
|
|
|
Reimplemented in GLUI_FileBrowser. |
|
Reimplemented in GLUI_Tree. |
|
Reimplemented in GLUI_Checkbox, GLUI_EditText, GLUI_RadioGroup, GLUI_Spinner, GLUI_Scrollbar, and GLUI_Listbox. |
|
Reimplemented in GLUI_Panel, and GLUI_RadioGroup. |
|
|
|
Writes live variable * Reimplemented in GLUI_EditText, GLUI_StaticText, and GLUI_TextBox. |
|
|
|
|
|
Reimplemented in GLUI_FileBrowser. |
|
Reimplemented in GLUI_EditText, GLUI_CommandLine, GLUI_Spinner, GLUI_TextBox, GLUI_List, GLUI_Scrollbar, GLUI_Listbox, and GLUI_Mouse_Interaction. |
|
|
|
|
|
|
|
|
|
|
|
If recurse is true, we go to children as well |
|
Reimplemented in GLUI_Button, GLUI_Checkbox, GLUI_Panel, GLUI_Rollout, GLUI_Tree, GLUI_EditText, GLUI_RadioButton, GLUI_Spinner, GLUI_StaticText, GLUI_TextBox, GLUI_List, GLUI_Scrollbar, GLUI_Listbox, and GLUI_Mouse_Interaction. |
|
Reimplemented in GLUI_TextBox. |
|
If true, we've got the focus.
|
|
"GLUI_CONTROL_ACTIVE_..." "activation" for tabbing between controls. |
|
|
|
User callback function, or NULL.
|
|
If false, remove from tab order.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Is this control grayed out? |
|
|
|
|
|
Our float value |
|
Our glutbitmap font |
|
Our containing event handler (NEVER NULL during event processing!) |
|
Onscreen coordinates |
|
|
|
Our integer value |
|
Is this a container class (e.g., panel) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The name of this control |
|
A pointer to the user's live variable value |
|
Spacebar simulates click.
|
|
The text inside this control |
|
Integer to pass to callback function. Callbacks |
|
Onscreen coordinates |
|
|
|
|
|
|
|
|
|
|