glui_add_controls.cpp
上传用户:gb3593
上传日期:2022-01-07
资源大小:3028k
文件大小:10k
源码类别:

游戏引擎

开发平台:

Visual C++

  1. /****************************************************************************
  2.   GLUI User Interface Toolkit (LGPL)
  3.   ---------------------------
  4.      glui_add_controls.cpp - Routines for adding controls to a GLUI window
  5. Note: these routines are all deprecated.  Keeping them all here
  6. prevents the linker from dragging in all the .o files, even for controls
  7. that aren't used.
  8.           --------------------------------------------------
  9.   Copyright (c) 1998 Paul Rademacher
  10.   WWW:    http://sourceforge.net/projects/glui/
  11.   Forums: http://sourceforge.net/forum/?group_id=92496
  12.   This library is free software; you can redistribute it and/or
  13.   modify it under the terms of the GNU Lesser General Public
  14.   License as published by the Free Software Foundation; either
  15.   version 2.1 of the License, or (at your option) any later version.
  16.   This library is distributed in the hope that it will be useful,
  17.   but WITHOUT ANY WARRANTY; without even the implied warranty of
  18.   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  19.   Lesser General Public License for more details.
  20.   You should have received a copy of the GNU Lesser General Public
  21.   License along with this library; if not, write to the Free Software
  22.   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  23. *****************************************************************************/
  24. #include "GL/glui.h"
  25. #include "glui_internal.h"
  26. /*********************************** GLUI:: add_checkbox() ************/
  27. GLUI_Checkbox   *GLUI:: add_checkbox( const char *name, int *value_ptr,
  28.                                       int id, GLUI_CB callback )
  29. {
  30.   return add_checkbox_to_panel( main_panel,
  31. name, value_ptr, id, callback );
  32. }
  33. /*********************************** GLUI:: add_checkbox_to_panel() **********/
  34. GLUI_Checkbox   *GLUI::add_checkbox_to_panel( GLUI_Panel *panel,
  35.       const char *name, int *value_ptr,
  36.       int id, 
  37.       GLUI_CB callback )
  38. {
  39.   return new GLUI_Checkbox( panel, name, value_ptr, id, callback );
  40. }
  41. /********************************************* GLUI::add_panel() *************/
  42. GLUI_Panel     *GLUI::add_panel( const char *name, int type )
  43. {
  44.   return add_panel_to_panel( main_panel, name, type );
  45. }
  46. /**************************************** GLUI::add_panel_to_panel() *********/
  47. GLUI_Panel *GLUI::add_panel_to_panel( GLUI_Panel *parent_panel,
  48.                                           const char *name, int type )
  49. {
  50.   return new GLUI_Panel( parent_panel, name, type );
  51. }
  52. /***************************** GLUI::add_radiogroup() ***************/
  53. GLUI_RadioGroup *GLUI::add_radiogroup( int *value_ptr,
  54.        int user_id, GLUI_CB callback)
  55. {
  56.   return add_radiogroup_to_panel( main_panel, value_ptr,
  57.   user_id, callback );
  58. }
  59. /***************************** GLUI::add_radiogroup_to_panel() ***************/
  60. GLUI_RadioGroup *GLUI::add_radiogroup_to_panel(  
  61.   GLUI_Panel *panel, int *value_ptr,
  62.   int user_id, GLUI_CB callback
  63.   )
  64. {
  65.   return new GLUI_RadioGroup( panel, value_ptr, user_id, callback );
  66. }
  67. /***************************** GLUI::add_radiobutton_to_group() *************/
  68. GLUI_RadioButton *GLUI::add_radiobutton_to_group(  GLUI_RadioGroup *group,
  69.                                                    const char *name )
  70. {
  71.   return new GLUI_RadioButton( group, name );
  72. }
  73. /********************************** GLUI::add_statictext() ************/
  74. GLUI_StaticText  *GLUI::add_statictext( const char *name )
  75. {
  76.   return add_statictext_to_panel( main_panel, name );
  77. }
  78. /******************************* GLUI::add_statictext_to_panel() **********/
  79. GLUI_StaticText *GLUI::add_statictext_to_panel( GLUI_Panel *panel, 
  80.                                                 const char *name )
  81. {
  82.   return new GLUI_StaticText( panel, name );
  83. }
  84. /***************************************** GLUI:: add_button() ************/
  85. GLUI_Button   *GLUI:: add_button( const char *name, 
  86.   int id, GLUI_CB callback )
  87. {
  88.   return add_button_to_panel( main_panel,
  89.                               name, id, callback );
  90. }
  91. /*********************************** GLUI:: add_button_to_panel() **********/
  92. GLUI_Button   *GLUI::add_button_to_panel( GLUI_Panel *panel,
  93.   const char *name, 
  94.   int id, 
  95.   GLUI_CB callback )
  96. {
  97.   return new GLUI_Button( panel, name, id, callback );
  98. }
  99. /********************************** GLUI::add_separator() ************/
  100. void  GLUI::add_separator( void )
  101. {
  102.   add_separator_to_panel( main_panel );
  103. }
  104. /******************************* GLUI::add_separator_to_panel() **********/
  105. void      GLUI::add_separator_to_panel( GLUI_Panel *panel )
  106. {
  107.   new GLUI_Separator( panel );
  108. }
  109. /********************************** GLUI::add_edittext() ************/
  110. GLUI_EditText  *GLUI::add_edittext( const char *name, 
  111.     int data_type, void *data,
  112.     int id, GLUI_CB callback)
  113. {
  114.   return add_edittext_to_panel( main_panel, name, data_type, data,
  115.                                 id, callback );
  116. }
  117. /******************************* GLUI::add_edittext_to_panel() **********/
  118. GLUI_EditText  *GLUI::add_edittext_to_panel( GLUI_Panel *panel, 
  119.                                              const char *name, 
  120.                                              int data_type, void *data,
  121.                                              int id, GLUI_CB callback)
  122. {
  123.   return new GLUI_EditText( panel, name, data_type, data, id, callback );
  124. }
  125. /********************************** GLUI::add_edittext() ************/
  126. GLUI_EditText  *GLUI::add_edittext( const char *name, 
  127.                                     GLUI_String & data,
  128.                                     int id, GLUI_CB callback)
  129. {
  130.   return add_edittext_to_panel( main_panel, name, data, id, callback );
  131. }
  132. /******************************* GLUI::add_edittext_to_panel() **********/
  133. GLUI_EditText*
  134. GLUI::add_edittext_to_panel( GLUI_Panel *panel, const char *name, 
  135.                              GLUI_String& data,
  136.                              int id, GLUI_CB callback)
  137. {
  138.   return new GLUI_EditText( panel, name, GLUI_EDITTEXT_STRING, &data, id, callback );
  139. }
  140. /********************************** GLUI::add_spinner() ************/
  141. GLUI_Spinner  *GLUI::add_spinner( const char *name, 
  142.   int data_type, void *data,
  143.   int id, GLUI_CB callback)
  144. {
  145.   return add_spinner_to_panel( main_panel, name, data_type, data,
  146.        id, callback );
  147. }
  148. /******************************* GLUI::add_spinner_to_panel() **********/
  149. GLUI_Spinner  *GLUI::add_spinner_to_panel( 
  150.   GLUI_Panel *panel, const char *name, 
  151.   int data_type, void *data,
  152.   int id, GLUI_CB callback
  153. )
  154. {
  155.   return new GLUI_Spinner( panel, name, data_type, data, id, callback );
  156. }
  157. /********************************** GLUI::add_column() ************/
  158. void   GLUI::add_column( int draw_bar )
  159. {
  160.   add_column_to_panel( main_panel, draw_bar );
  161. }
  162. /******************************* GLUI::add_column_to_panel() **********/
  163. void   GLUI::add_column_to_panel( GLUI_Panel *panel, int draw_bar )
  164. {
  165.   new GLUI_Column( panel, draw_bar );
  166. }
  167. /*********************************** GLUI:: add_listbox() ************/
  168. GLUI_Listbox   *GLUI:: add_listbox( const char *name, int *value_ptr,
  169.     int id, GLUI_CB callback )
  170. {
  171.   return add_listbox_to_panel( main_panel,
  172.                                name, value_ptr, id, callback );
  173. }
  174. /*********************************** GLUI:: add_listbox_to_panel() **********/
  175. GLUI_Listbox   *GLUI::add_listbox_to_panel( GLUI_Panel *panel,
  176.                                             const char *name, int *value_ptr,
  177.                                             int id, 
  178.                                             GLUI_CB callback )
  179. {
  180.   return new GLUI_Listbox( panel, name, value_ptr, id, callback );
  181. }
  182. /*********************************** GLUI:: add_rotation() ************/
  183. GLUI_Rotation   *GLUI:: add_rotation( const char *name, float *value_ptr,
  184.                                       int id, GLUI_CB callback )
  185. {
  186.   return add_rotation_to_panel( main_panel, name, value_ptr, id, callback );
  187. }
  188. /*********************************** GLUI:: add_rotation_to_panel() **********/
  189. GLUI_Rotation *GLUI::add_rotation_to_panel( GLUI_Panel *panel,
  190.                                             const char *name, float *value_ptr,
  191.                                             int id, 
  192.                                             GLUI_CB callback )
  193. {
  194.   return new GLUI_Rotation( panel, name, value_ptr, id, callback );
  195. }
  196. /*********************************** GLUI:: add_translation() ************/
  197. GLUI_Translation *GLUI:: add_translation( const char *name, int trans_type,
  198.                                           float *value_ptr, int id, 
  199.                                           GLUI_CB callback )
  200. {
  201.   return add_translation_to_panel( main_panel,name,trans_type, 
  202.                                    value_ptr, id, callback );
  203. }
  204. /*********************************** GLUI:: add_translation_to_panel() **********/
  205. GLUI_Translation *GLUI::add_translation_to_panel( 
  206.   GLUI_Panel *panel, const char *name, 
  207.   int trans_type, float *value_ptr,
  208.   int id, GLUI_CB callback 
  209.   )
  210. {
  211.   return new GLUI_Translation(panel, name, trans_type, value_ptr, id, callback);
  212. }
  213. /********************************** GLUI::add_rollout() **************/
  214. GLUI_Rollout   *GLUI::add_rollout( const char *name, int open, int type)
  215. {
  216.   return add_rollout_to_panel( main_panel, name, open, type);
  217. }
  218. /****************************** GLUI::add_rollout_to_panel() *********/
  219. GLUI_Rollout *GLUI::add_rollout_to_panel(GLUI_Panel *panel, const char *name,
  220.                                          int open, int type)
  221. {
  222.   return new GLUI_Rollout( panel, name, open, type );
  223. }