Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

glui.h File Reference

#include <GL/glut.h>
#include <cstdlib>
#include <cstdio>
#include <cstring>
#include <string>
#include <vector>

Go to the source code of this file.

Classes

class  RGBc
class  GLUI_CB
class  GLUI_Node
class  GLUI_Bitmap
class  GLUI_StdBitmaps
class  GLUI_Master_Object
class  GLUI_Glut_Window
class  GLUI_Main
class  GLUI_Control
class  GLUI_Button
class  GLUI_Checkbox
class  GLUI_Column
class  GLUI_Panel
class  GLUI_FileBrowser
class  GLUI_Rollout
class  GLUI_Tree
class  GLUI_TreePanel
class  GLUI
class  GLUI_EditText
class  GLUI_CommandLine
class  GLUI_RadioGroup
class  GLUI_RadioButton
class  GLUI_Separator
class  GLUI_Spinner
class  GLUI_StaticText
class  GLUI_TextBox
class  GLUI_List_Item
class  GLUI_List
class  GLUI_Scrollbar
class  GLUI_Listbox_Item
class  GLUI_Listbox
class  GLUI_Mouse_Interaction
class  GLUI_Rotation
class  GLUI_Translation

Defines

#define GLUI_NO_LIB_PRAGMA   /* static linking on Windows */
#define GLUI_VERSION   2.3f /********** Current version **********/
#define Byte   unsigned char
#define GLUI_XOFF   6
#define GLUI_YOFF   6
#define GLUI_ITEMSPACING   3
#define GLUI_CHECKBOX_SIZE   13
#define GLUI_RADIOBUTTON_SIZE   13
#define GLUI_BUTTON_SIZE   20
#define GLUI_STATICTEXT_SIZE   13
#define GLUI_SEPARATOR_HEIGHT   8
#define GLUI_DEFAULT_CONTROL_WIDTH   100
#define GLUI_DEFAULT_CONTROL_HEIGHT   13
#define GLUI_EDITTEXT_BOXINNERMARGINX   3
#define GLUI_EDITTEXT_HEIGHT   20
#define GLUI_EDITTEXT_WIDTH   130
#define GLUI_EDITTEXT_MIN_INT_WIDTH   35
#define GLUI_EDITTEXT_MIN_TEXT_WIDTH   50
#define GLUI_PANEL_NAME_DROP   8
#define GLUI_PANEL_EMBOSS_TOP   4
#define GLUI_ROTATION_WIDTH   50
#define GLUI_ROTATION_HEIGHT   (GLUI_ROTATION_WIDTH+18)
#define GLUI_MOUSE_INTERACTION_WIDTH   50
#define GLUI_MOUSE_INTERACTION_HEIGHT   (GLUI_MOUSE_INTERACTION_WIDTH)+18
#define GLUI_PANEL_NONE   0
#define GLUI_PANEL_EMBOSSED   1
#define GLUI_PANEL_RAISED   2
#define GLUI_DEF_MAX_ARRAY   30
#define GLUI_CONTROL_ACTIVE_MOUSEDOWN   1
#define GLUI_CONTROL_ACTIVE_PERMANENT   2
#define GLUI_ALIGN_CENTER   1
#define GLUI_ALIGN_RIGHT   2
#define GLUI_ALIGN_LEFT   3
#define GLUI_LIMIT_NONE   0
#define GLUI_LIMIT_CLAMP   1
#define GLUI_LIMIT_WRAP   2
#define GLUI_TRANSLATION_XY   0
#define GLUI_TRANSLATION_Z   1
#define GLUI_TRANSLATION_X   2
#define GLUI_TRANSLATION_Y   3
#define GLUI_TRANSLATION_LOCK_NONE   0
#define GLUI_TRANSLATION_LOCK_X   1
#define GLUI_TRANSLATION_LOCK_Y   2
#define GLUI_ACTIVATE_MOUSE   1
#define GLUI_ACTIVATE_TAB   2
#define GLUI_LIVE_NONE   0
#define GLUI_LIVE_INT   1
#define GLUI_LIVE_FLOAT   2
#define GLUI_LIVE_TEXT   3
#define GLUI_LIVE_STRING   6
#define GLUI_LIVE_DOUBLE   4
#define GLUI_LIVE_FLOAT_ARRAY   5
#define GLUI_TEXTBOX_HEIGHT   130
#define GLUI_TEXTBOX_WIDTH   130
#define GLUI_LIST_HEIGHT   130
#define GLUI_LIST_WIDTH   130
#define GLUI_DOUBLE_CLICK   1
#define GLUI_SINGLE_CLICK   0
#define GLUI_TAB_WIDTH   50 /* In pixels */
#define GLUI_TEXTBOX_BOXINNERMARGINX   3
#define GLUI_TEXTBOX_MIN_TEXT_WIDTH   50
#define GLUI_LIST_BOXINNERMARGINX   3
#define GLUI_LIST_MIN_TEXT_WIDTH   50
#define GLUI_TREEPANEL_DEFAULTS   0
#define GLUI_TREEPANEL_ALTERNATE_COLOR   1
#define GLUI_TREEPANEL_ENABLE_BAR   2
#define GLUI_TREEPANEL_DISABLE_BAR   4
#define GLUI_TREEPANEL_DISABLE_DEEPEST_BAR   8
#define GLUI_TREEPANEL_CONNECT_CHILDREN_ONLY   16
#define GLUI_TREEPANEL_DISPLAY_HIERARCHY   32
#define GLUI_TREEPANEL_HIERARCHY_NUMERICDOT   64
#define GLUI_TREEPANEL_HIERARCHY_LEVEL_ONLY   128
#define GLUI_SCROLL_ARROW_WIDTH   16
#define GLUI_SCROLL_ARROW_HEIGHT   16
#define GLUI_SCROLL_BOX_MIN_HEIGHT   5
#define GLUI_SCROLL_BOX_STD_HEIGHT   16
#define GLUI_SCROLL_STATE_NONE   0
#define GLUI_SCROLL_STATE_UP   1
#define GLUI_SCROLL_STATE_DOWN   2
#define GLUI_SCROLL_STATE_BOTH   3
#define GLUI_SCROLL_STATE_SCROLL   4
#define GLUI_SCROLL_DEFAULT_GROWTH_EXP   1.05f
#define GLUI_SCROLL_VERTICAL   0
#define GLUI_SCROLL_HORIZONTAL   1
#define CHAR_WIDTH_HASH_SIZE   128
#define GLUI_SUBWINDOW   ((long)(1<<1))
#define GLUI_SUBWINDOW_TOP   ((long)(1<<2))
#define GLUI_SUBWINDOW_BOTTOM   ((long)(1<<3))
#define GLUI_SUBWINDOW_LEFT   ((long)(1<<4))
#define GLUI_SUBWINDOW_RIGHT   ((long)(1<<5))
#define GLUI_EDITTEXT_TEXT   1
#define GLUI_EDITTEXT_INT   2
#define GLUI_EDITTEXT_FLOAT   3
#define GLUI_SPINNER_INT   GLUI_EDITTEXT_INT
#define GLUI_SPINNER_FLOAT   GLUI_EDITTEXT_FLOAT
#define GLUI_SCROLL_INT   GLUI_EDITTEXT_INT
#define GLUI_SCROLL_FLOAT   GLUI_EDITTEXT_FLOAT
#define GLUI_EDITTEXT_STRING   4
#define GLUI_SPINNER_ARROW_WIDTH   12
#define GLUI_SPINNER_ARROW_HEIGHT   8
#define GLUI_SPINNER_ARROW_Y   2
#define GLUI_SPINNER_STATE_NONE   0
#define GLUI_SPINNER_STATE_UP   1
#define GLUI_SPINNER_STATE_DOWN   2
#define GLUI_SPINNER_STATE_BOTH   3
#define GLUI_SPINNER_DEFAULT_GROWTH_EXP   1.05f

Typedefs

typedef std::string GLUI_String
typedef void(* GLUI_Update_CB )(int id)
typedef void(* GLUI_Control_CB )(GLUI_Control *)
typedef void(* Int1_CB )(int)
typedef void(* Int2_CB )(int, int)
typedef void(* Int3_CB )(int, int, int)
typedef void(* Int4_CB )(int, int, int, int)

Enumerations

enum  GLUI_Glut_CB_Types {
  GLUI_GLUT_RESHAPE, GLUI_GLUT_KEYBOARD, GLUI_GLUT_DISPLAY, GLUI_GLUT_MOUSE,
  GLUI_GLUT_MOTION, GLUI_GLUT_SPECIAL, GLUI_GLUT_PASSIVE_MOTION, GLUI_GLUT_ENTRY,
  GLUI_GLUT_VISIBILITY
}
enum  TranslationCodes {
  GLUI_TRANSLATION_MOUSE_NONE = 0, GLUI_TRANSLATION_MOUSE_UP, GLUI_TRANSLATION_MOUSE_DOWN, GLUI_TRANSLATION_MOUSE_LEFT,
  GLUI_TRANSLATION_MOUSE_RIGHT, GLUI_TRANSLATION_MOUSE_UP_LEFT, GLUI_TRANSLATION_MOUSE_UP_RIGHT, GLUI_TRANSLATION_MOUSE_DOWN_LEFT,
  GLUI_TRANSLATION_MOUSE_DOWN_RIGHT
}
enum  GLUI_StdBitmaps_Codes {
  GLUI_STDBITMAP_CHECKBOX_OFF = 0, GLUI_STDBITMAP_CHECKBOX_ON, GLUI_STDBITMAP_RADIOBUTTON_OFF, GLUI_STDBITMAP_RADIOBUTTON_ON,
  GLUI_STDBITMAP_UP_ARROW, GLUI_STDBITMAP_DOWN_ARROW, GLUI_STDBITMAP_LEFT_ARROW, GLUI_STDBITMAP_RIGHT_ARROW,
  GLUI_STDBITMAP_SPINNER_UP_OFF, GLUI_STDBITMAP_SPINNER_UP_ON, GLUI_STDBITMAP_SPINNER_DOWN_OFF, GLUI_STDBITMAP_SPINNER_DOWN_ON,
  GLUI_STDBITMAP_CHECKBOX_OFF_DIS, GLUI_STDBITMAP_CHECKBOX_ON_DIS, GLUI_STDBITMAP_RADIOBUTTON_OFF_DIS, GLUI_STDBITMAP_RADIOBUTTON_ON_DIS,
  GLUI_STDBITMAP_SPINNER_UP_DIS, GLUI_STDBITMAP_SPINNER_DOWN_DIS, GLUI_STDBITMAP_LISTBOX_UP, GLUI_STDBITMAP_LISTBOX_DOWN,
  GLUI_STDBITMAP_LISTBOX_UP_DIS, GLUI_STDBITMAP_NUM_ITEMS
}

Functions

GLUI_Stringglui_format_str (GLUI_String &str, const char *fmt,...)
int _glutBitmapWidthString (void *font, const char *s)
void _glutBitmapString (void *font, const char *s)
void glui_display_func (void)
void glui_reshape_func (int w, int h)
void glui_keyboard_func (unsigned char key, int x, int y)
void glui_special_func (int key, int x, int y)
void glui_mouse_func (int button, int state, int x, int y)
void glui_motion_func (int x, int y)
void glui_passive_motion_func (int x, int y)
void glui_entry_func (int state)
void glui_visibility_func (int state)
void glui_idle_func (void)
void glui_parent_window_reshape_func (int w, int h)
void glui_parent_window_keyboard_func (unsigned char key, int x, int y)
void glui_parent_window_mouse_func (int, int, int, int)
void glui_parent_window_special_func (int key, int x, int y)

Variables

GLUI_Master_Object GLUI_Master


Define Documentation

#define Byte   unsigned char
 

#define CHAR_WIDTH_HASH_SIZE   128
 

Size of the character width hash table for faster lookups. Make sure to keep this a power of two to avoid the slow divide. This is also a speed/memory tradeoff; 128 is enough for low ASCII.

#define GLUI_ACTIVATE_MOUSE   1
 

#define GLUI_ACTIVATE_TAB   2
 

#define GLUI_ALIGN_CENTER   1
 

#define GLUI_ALIGN_LEFT   3
 

#define GLUI_ALIGN_RIGHT   2
 

#define GLUI_BUTTON_SIZE   20
 

#define GLUI_CHECKBOX_SIZE   13
 

#define GLUI_CONTROL_ACTIVE_MOUSEDOWN   1
 

#define GLUI_CONTROL_ACTIVE_PERMANENT   2
 

#define GLUI_DEF_MAX_ARRAY   30
 

Max # of els in control's float_array *

#define GLUI_DEFAULT_CONTROL_HEIGHT   13
 

#define GLUI_DEFAULT_CONTROL_WIDTH   100
 

#define GLUI_DOUBLE_CLICK   1
 

#define GLUI_EDITTEXT_BOXINNERMARGINX   3
 

#define GLUI_EDITTEXT_FLOAT   3
 

#define GLUI_EDITTEXT_HEIGHT   20
 

#define GLUI_EDITTEXT_INT   2
 

#define GLUI_EDITTEXT_MIN_INT_WIDTH   35
 

#define GLUI_EDITTEXT_MIN_TEXT_WIDTH   50
 

#define GLUI_EDITTEXT_STRING   4
 

#define GLUI_EDITTEXT_TEXT   1
 

#define GLUI_EDITTEXT_WIDTH   130
 

#define GLUI_ITEMSPACING   3
 

#define GLUI_LIMIT_CLAMP   1
 

#define GLUI_LIMIT_NONE   0
 

#define GLUI_LIMIT_WRAP   2
 

#define GLUI_LIST_BOXINNERMARGINX   3
 

#define GLUI_LIST_HEIGHT   130
 

#define GLUI_LIST_MIN_TEXT_WIDTH   50
 

#define GLUI_LIST_WIDTH   130
 

#define GLUI_LIVE_DOUBLE   4
 

#define GLUI_LIVE_FLOAT   2
 

#define GLUI_LIVE_FLOAT_ARRAY   5
 

#define GLUI_LIVE_INT   1
 

#define GLUI_LIVE_NONE   0
 

#define GLUI_LIVE_STRING   6
 

#define GLUI_LIVE_TEXT   3
 

#define GLUI_MOUSE_INTERACTION_HEIGHT   (GLUI_MOUSE_INTERACTION_WIDTH)+18
 

#define GLUI_MOUSE_INTERACTION_WIDTH   50
 

#define GLUI_NO_LIB_PRAGMA   /* static linking on Windows */
 

#define GLUI_PANEL_EMBOSS_TOP   4
 

#define GLUI_PANEL_EMBOSSED   1
 

#define GLUI_PANEL_NAME_DROP   8
 

#define GLUI_PANEL_NONE   0
 

Different panel control types *

#define GLUI_PANEL_RAISED   2
 

#define GLUI_RADIOBUTTON_SIZE   13
 

#define GLUI_ROTATION_HEIGHT   (GLUI_ROTATION_WIDTH+18)
 

#define GLUI_ROTATION_WIDTH   50
 

#define GLUI_SCROLL_ARROW_HEIGHT   16
 

#define GLUI_SCROLL_ARROW_WIDTH   16
 

#define GLUI_SCROLL_BOX_MIN_HEIGHT   5
 

#define GLUI_SCROLL_BOX_STD_HEIGHT   16
 

#define GLUI_SCROLL_DEFAULT_GROWTH_EXP   1.05f
 

#define GLUI_SCROLL_FLOAT   GLUI_EDITTEXT_FLOAT
 

#define GLUI_SCROLL_HORIZONTAL   1
 

#define GLUI_SCROLL_INT   GLUI_EDITTEXT_INT
 

#define GLUI_SCROLL_STATE_BOTH   3
 

#define GLUI_SCROLL_STATE_DOWN   2
 

#define GLUI_SCROLL_STATE_NONE   0
 

#define GLUI_SCROLL_STATE_SCROLL   4
 

#define GLUI_SCROLL_STATE_UP   1
 

#define GLUI_SCROLL_VERTICAL   0
 

#define GLUI_SEPARATOR_HEIGHT   8
 

#define GLUI_SINGLE_CLICK   0
 

#define GLUI_SPINNER_ARROW_HEIGHT   8
 

#define GLUI_SPINNER_ARROW_WIDTH   12
 

#define GLUI_SPINNER_ARROW_Y   2
 

#define GLUI_SPINNER_DEFAULT_GROWTH_EXP   1.05f
 

#define GLUI_SPINNER_FLOAT   GLUI_EDITTEXT_FLOAT
 

#define GLUI_SPINNER_INT   GLUI_EDITTEXT_INT
 

#define GLUI_SPINNER_STATE_BOTH   3
 

#define GLUI_SPINNER_STATE_DOWN   2
 

#define GLUI_SPINNER_STATE_NONE   0
 

#define GLUI_SPINNER_STATE_UP   1
 

#define GLUI_STATICTEXT_SIZE   13
 

#define GLUI_SUBWINDOW   ((long)(1<<1))
 

#define GLUI_SUBWINDOW_BOTTOM   ((long)(1<<3))
 

#define GLUI_SUBWINDOW_LEFT   ((long)(1<<4))
 

#define GLUI_SUBWINDOW_RIGHT   ((long)(1<<5))
 

#define GLUI_SUBWINDOW_TOP   ((long)(1<<2))
 

#define GLUI_TAB_WIDTH   50 /* In pixels */
 

#define GLUI_TEXTBOX_BOXINNERMARGINX   3
 

#define GLUI_TEXTBOX_HEIGHT   130
 

#define GLUI_TEXTBOX_MIN_TEXT_WIDTH   50
 

#define GLUI_TEXTBOX_WIDTH   130
 

#define GLUI_TRANSLATION_LOCK_NONE   0
 

#define GLUI_TRANSLATION_LOCK_X   1
 

#define GLUI_TRANSLATION_LOCK_Y   2
 

#define GLUI_TRANSLATION_X   2
 

#define GLUI_TRANSLATION_XY   0
 

#define GLUI_TRANSLATION_Y   3
 

#define GLUI_TRANSLATION_Z   1
 

#define GLUI_TREEPANEL_ALTERNATE_COLOR   1
 

#define GLUI_TREEPANEL_CONNECT_CHILDREN_ONLY   16
 

#define GLUI_TREEPANEL_DEFAULTS   0
 

#define GLUI_TREEPANEL_DISABLE_BAR   4
 

#define GLUI_TREEPANEL_DISABLE_DEEPEST_BAR   8
 

#define GLUI_TREEPANEL_DISPLAY_HIERARCHY   32
 

#define GLUI_TREEPANEL_ENABLE_BAR   2
 

#define GLUI_TREEPANEL_HIERARCHY_LEVEL_ONLY   128
 

#define GLUI_TREEPANEL_HIERARCHY_NUMERICDOT   64
 

#define GLUI_VERSION   2.3f /********** Current version **********/
 

#define GLUI_XOFF   6
 

#define GLUI_YOFF   6
 


Typedef Documentation

typedef void(* GLUI_Control_CB)(GLUI_Control *)
 

typedef std::string GLUI_String
 

typedef void(* GLUI_Update_CB)(int id)
 

typedef void(* Int1_CB)(int)
 

typedef void(* Int2_CB)(int, int)
 

typedef void(* Int3_CB)(int, int, int)
 

typedef void(* Int4_CB)(int, int, int, int)
 


Enumeration Type Documentation

enum GLUI_Glut_CB_Types
 

Enumeration values:
GLUI_GLUT_RESHAPE 
GLUI_GLUT_KEYBOARD 
GLUI_GLUT_DISPLAY 
GLUI_GLUT_MOUSE 
GLUI_GLUT_MOTION 
GLUI_GLUT_SPECIAL 
GLUI_GLUT_PASSIVE_MOTION 
GLUI_GLUT_ENTRY 
GLUI_GLUT_VISIBILITY 

enum GLUI_StdBitmaps_Codes
 

Enumeration values:
GLUI_STDBITMAP_CHECKBOX_OFF 
GLUI_STDBITMAP_CHECKBOX_ON 
GLUI_STDBITMAP_RADIOBUTTON_OFF 
GLUI_STDBITMAP_RADIOBUTTON_ON 
GLUI_STDBITMAP_UP_ARROW 
GLUI_STDBITMAP_DOWN_ARROW 
GLUI_STDBITMAP_LEFT_ARROW 
GLUI_STDBITMAP_RIGHT_ARROW 
GLUI_STDBITMAP_SPINNER_UP_OFF 
GLUI_STDBITMAP_SPINNER_UP_ON 
GLUI_STDBITMAP_SPINNER_DOWN_OFF 
GLUI_STDBITMAP_SPINNER_DOWN_ON 
GLUI_STDBITMAP_CHECKBOX_OFF_DIS 
GLUI_STDBITMAP_CHECKBOX_ON_DIS 
GLUI_STDBITMAP_RADIOBUTTON_OFF_DIS 
GLUI_STDBITMAP_RADIOBUTTON_ON_DIS 
GLUI_STDBITMAP_SPINNER_UP_DIS 
GLUI_STDBITMAP_SPINNER_DOWN_DIS 
GLUI_STDBITMAP_LISTBOX_UP 
GLUI_STDBITMAP_LISTBOX_DOWN 
GLUI_STDBITMAP_LISTBOX_UP_DIS 
GLUI_STDBITMAP_NUM_ITEMS 

enum TranslationCodes
 

Enumeration values:
GLUI_TRANSLATION_MOUSE_NONE 
GLUI_TRANSLATION_MOUSE_UP 
GLUI_TRANSLATION_MOUSE_DOWN 
GLUI_TRANSLATION_MOUSE_LEFT 
GLUI_TRANSLATION_MOUSE_RIGHT 
GLUI_TRANSLATION_MOUSE_UP_LEFT 
GLUI_TRANSLATION_MOUSE_UP_RIGHT 
GLUI_TRANSLATION_MOUSE_DOWN_LEFT 
GLUI_TRANSLATION_MOUSE_DOWN_RIGHT 


Function Documentation

void _glutBitmapString void *  font,
const char *  s
 

int _glutBitmapWidthString void *  font,
const char *  s
 

void glui_display_func void   ) 
 

void glui_entry_func int  state  ) 
 

GLUI_String& glui_format_str GLUI_String str,
const char *  fmt,
  ...
 

void glui_idle_func void   ) 
 

void glui_keyboard_func unsigned char  key,
int  x,
int  y
 

void glui_motion_func int  x,
int  y
 

void glui_mouse_func int  button,
int  state,
int  x,
int  y
 

void glui_parent_window_keyboard_func unsigned char  key,
int  x,
int  y
 

void glui_parent_window_mouse_func int  ,
int  ,
int  ,
int 
 

void glui_parent_window_reshape_func int  w,
int  h
 

void glui_parent_window_special_func int  key,
int  x,
int  y
 

void glui_passive_motion_func int  x,
int  y
 

void glui_reshape_func int  w,
int  h
 

void glui_special_func int  key,
int  x,
int  y
 

void glui_visibility_func int  state  ) 
 


Variable Documentation

GLUI_Master_Object GLUI_Master
 

This is the only GLUI_Master_Object in existence.


Generated on Fri Sep 15 17:51:57 2006 for GLUI by doxygen 1.3.6