亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? glui.h

?? c++源程序
?? H
?? 第 1 頁 / 共 4 頁
字號:
/****************************************************************************
  
  GLUI User Interface Toolkit
  ---------------------------

     glui.h - Main header for GLUI User Interface Toolkit


          --------------------------------------------------

  Copyright (c) 1998 Paul Rademacher

  This program is freely distributable without licensing fees and is
  provided without guarantee or warrantee expressed or implied. This
  program is -not- in the public domain.

*****************************************************************************/


#ifndef _GLUI_H_
#define _GLUI_H_

#include <GL/glut.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

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

class Arcball;

/********** Do some basic defines *******/
#ifndef false
#define true 1
#define false 0
#endif

#ifndef Byte
#define Byte unsigned char
#endif

#ifndef _RGBC_
class RGBc {
public:
  Byte r, g, b;
    
  void set(Byte r,Byte g,Byte b) {this->r=r;this->g=g;this->b=b;};
    
  RGBc( void ) {};
  RGBc( Byte r, Byte g, Byte b ) { set( r, g, b ); };
};
#define _RGBC_
#endif

/********** List of GLUT callbacks ********/

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  
};

/********** List of control types **********/
enum GLUI_Control_Types {
  GLUI_CONTROL_CHECKBOX =1,
  GLUI_CONTROL_BUTTON,
  GLUI_CONTROL_RADIOBUTTON,
  GLUI_CONTROL_RADIOGROUP,
  GLUI_CONTROL_SLIDER,
  GLUI_CONTROL_STATICTEXT,
  GLUI_CONTROL_EDITTEXT,
  GLUI_CONTROL_BITMAP,
  GLUI_CONTROL_PANEL,
  GLUI_CONTROL_SPINNER,
  GLUI_CONTROL_SEPARATOR,
  GLUI_CONTROL_COLUMN,
  GLUI_CONTROL_LISTBOX,
  GLUI_CONTROL_MOUSE_INTERACTION,
  GLUI_CONTROL_ROTATION,
  GLUI_CONTROL_TRANSLATION,
  GLUI_CONTROL_ROLLOUT
};


/********* Constants for window placement **********/
#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            60*/
/*  #define GLUI_ROTATION_HEIGHT           78 */
#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


/** Different panel control types **/
#define GLUI_PANEL_NONE      0
#define GLUI_PANEL_EMBOSSED  1
#define GLUI_PANEL_RAISED    2


/**  Max # of els in control's float_array  **/
#define GLUI_DEF_MAX_ARRAY  30

/********* The control's 'active' behavior *********/
#define GLUI_CONTROL_ACTIVE_MOUSEDOWN       1
#define GLUI_CONTROL_ACTIVE_PERMANENT       2


/********* Control alignment types **********/
#define GLUI_ALIGN_CENTER   1
#define GLUI_ALIGN_RIGHT    2
#define GLUI_ALIGN_LEFT     3


/********** Limit types - how to limit spinner values *********/
#define GLUI_LIMIT_NONE    0
#define GLUI_LIMIT_CLAMP   1
#define GLUI_LIMIT_WRAP    2


/********** Translation control types ********************/

#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

/********** How was a control activated? *****************/
#define GLUI_ACTIVATE_MOUSE 1
#define GLUI_ACTIVATE_TAB   2


/********** What type of live variable does a control have? **********/
#define GLUI_LIVE_NONE          0
#define GLUI_LIVE_INT           1
#define GLUI_LIVE_FLOAT         2
#define GLUI_LIVE_TEXT          3
#define GLUI_LIVE_DOUBLE        4
#define GLUI_LIVE_FLOAT_ARRAY   5


/**********  Translation codes  **********/

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
};

/************ A string type for us to use **********/
/*  typedef char  GLUI_String[300]; */
class GLUI_String
{
public:
  char string[300];

  char &operator[]( int i ) {
    return string[i];
  }

  operator char*() { return (char*) &string[0]; };
  /*    operator void*() { return (void*) &string[0]; }; */

  GLUI_String( void ) {
    string[0] = '\0';
  }

  GLUI_String( char *text ) {
    strcpy( string, text );
  }
};


/********* Pre-declare the various classes *********/
class GLUI;
class GLUI_Control;
class GLUI_Listbox;
class GLUI_Rotation;
class GLUI_Translation;
class GLUI_Mouse_Interaction;
class GLUI_Checkbox;
class GLUI_Slider;
class GLUI_Button;
class GLUI_StaticText;
class GLUI_Bitmap;
class GLUI_EditText;
class GLUI_Node;
class GLUI_Main;
class GLUI_Panel;
class GLUI_Spinner;
class GLUI_RadioButton;
class GLUI_RadioGroup;
class GLUI_Separator;
class GLUI_Column;
class GLUI_Master;
class GLUI_Glut_Window;
class GLUI_Rollout;



/*** Flags for GLUI class constructor ***/
#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))

/*** Codes for different type of edittext boxes and spinners ***/
#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



/*** Definition of callbacks ***/
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);

				 

/************************************************************/
/*                                                          */
/*          Base class, for hierarchical relationships      */
/*                                                          */
/************************************************************/

class GLUI_Node {
protected:
  GLUI_Node *parent_node;
  GLUI_Node *child_head;
  GLUI_Node *child_tail;
  GLUI_Node *next_sibling;
  GLUI_Node *prev_sibling;

public:
  GLUI_Node *first_sibling( void );
  GLUI_Node *last_sibling( void );
  GLUI_Node *prev( void );
  GLUI_Node *next( void );
  GLUI_Node *first_child( void )   { return child_head; };
  GLUI_Node *last_child( void )    { return child_tail; };
  GLUI_Node *parent(void)          { return parent_node; };

  void      link_this_to_parent_last( GLUI_Node *parent );
  void      link_this_to_parent_first( GLUI_Node *parent );
  void      link_this_to_sibling_next( GLUI_Node *sibling );
  void      link_this_to_sibling_prev( GLUI_Node *sibling );
  void      unlink( void );

  void dump( FILE *out, char *name ) {
    fprintf( out, "GLUI_node: %s\n", name );
    fprintf( out, "   parent: %p     child_head: %p    child_tail: %p\n",
	     parent_node, child_head, child_tail );
    fprintf( out, "   next: %p       prev: %p\n", next_sibling, prev_sibling );
  }

  GLUI_Node( void ) { 
    parent_node= child_head = child_tail = next_sibling = prev_sibling = NULL;
  }; 

  friend GLUI_Rollout;
  friend GLUI_Main;
};



/************************************************************/
/*                                                          */
/*                  Standard Bitmap stuff                   */
/*                                                          */
/************************************************************/

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,    /*** Disactivated control bitmaps ***/
  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_SLIDER_TAB,
    ***/
  GLUI_STDBITMAP_NUM_ITEMS
};


/************ Image Bitmap arrays **********/
extern int glui_img_checkbox_0[];
extern int glui_img_checkbox_1[];
extern int glui_img_radiobutton_0[];
extern int glui_img_radiobutton_1[];
extern int glui_img_uparrow[];
extern int glui_img_downarrow[];
extern int glui_img_leftarrow[];
extern int glui_img_rightarrow[];
extern int glui_img_spinup_0[];
extern int glui_img_spinup_1[];
extern int glui_img_spindown_0[];
extern int glui_img_spindown_1[];
extern int glui_img_checkbox_0_dis[];
extern int glui_img_checkbox_1_dis[];
extern int glui_img_radiobutton_0_dis[];
extern int glui_img_radiobutton_1_dis[];
extern int glui_img_spinup_dis[];
extern int glui_img_spindown_dis[];
extern int glui_img_listbox_up[];
extern int glui_img_listbox_down[];
extern int glui_img_listbox_up_dis[];

extern int *bitmap_arrays[];



/************************************************************/
/*                                                          */
/*                  Class GLUI_Bitmap                       */
/*                                                          */
/************************************************************/
class GLUI_Bitmap 
{
public:
  unsigned char *pixels;
  int            w, h;
  
  void load_from_array( int *array );

  GLUI_Bitmap( void ) {
    pixels = NULL;
    w      = 0;
    h      = 0;
  }
};




/************************************************************/
/*                                                          */
/*                  Class GLUI_StdBitmap                    */
/*                                                          */
/************************************************************/
class GLUI_StdBitmaps
{
public:
  GLUI_Bitmap bitmaps[ GLUI_STDBITMAP_NUM_ITEMS ];

  void draw( int bitmap_num, int x, int y );
  
  GLUI_StdBitmaps( void ) {
    int i;

    for( i=0; i<GLUI_STDBITMAP_NUM_ITEMS; i++ ) {
      bitmaps[i].load_from_array( bitmap_arrays[i] );
    }
  }
};




/************************************************************/
/*                                                          */
/*                     Master GLUI Class                    */
/*                                                          */
/************************************************************/
class GLUI_Master_Object {
private:
  GLUI_Node     glut_windows;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩在线一区二区| 日本欧美加勒比视频| 欧美一区二区三区免费在线看| 亚洲欧美色图小说| 成人aa视频在线观看| 国产精品国产三级国产普通话三级| 国产揄拍国内精品对白| 久久嫩草精品久久久久| 国产一区二区福利| 国产精品色在线| 色综合视频一区二区三区高清| 欧美精品在线一区二区三区| 中文字幕在线一区免费| 亚洲成人久久影院| 欧美日韩高清影院| 日本vs亚洲vs韩国一区三区二区| 日韩一区二区视频| 国产成人综合自拍| 亚洲欧美电影院| 欧美一级理论片| 国产成人福利片| 亚洲精品视频一区二区| 欧美一区二区三区日韩| 国产毛片一区二区| 亚洲精品免费电影| 欧美xxxx老人做受| 99久久99久久精品国产片果冻| 亚洲最大的成人av| 精品久久人人做人人爽| 综合欧美亚洲日本| 日韩亚洲欧美高清| 99r国产精品| 免费在线看成人av| 一色屋精品亚洲香蕉网站| 欧美日韩精品欧美日韩精品一综合| 老司机精品视频线观看86| 中文字幕一区二区三区精华液| 欧美精品成人一区二区三区四区| 韩日精品视频一区| 亚洲综合偷拍欧美一区色| 欧美不卡激情三级在线观看| 在线观看日韩毛片| 国产专区欧美精品| 亚洲国产精品一区二区www在线| 久久久99免费| 欧洲国内综合视频| 国产suv精品一区二区6| 天天色天天操综合| 综合久久一区二区三区| 久久综合五月天婷婷伊人| 欧美亚洲另类激情小说| 春色校园综合激情亚洲| 麻豆一区二区三| 亚洲午夜电影网| 亚洲高清不卡在线观看| 国产成人免费视频网站 | 国产精品嫩草影院com| 欧美日韩一区二区三区高清 | 成人黄色免费短视频| 国产精品美女久久久久久2018| 99久久精品免费看国产| 国产自产视频一区二区三区| 琪琪久久久久日韩精品| 亚洲国产一区二区在线播放| 中文字幕免费一区| 久久综合色婷婷| 亚洲精品一区二区在线观看| 色欧美88888久久久久久影院| 国产999精品久久| 国产一区二区三区日韩| 精品国产乱码久久久久久1区2区 | 日韩视频永久免费| 欧美精品视频www在线观看| 日本精品一区二区三区四区的功能| 丁香激情综合五月| 国模一区二区三区白浆| 激情综合色播激情啊| 蜜臀av一区二区在线免费观看 | 日韩精品1区2区3区| 亚洲中国最大av网站| 色视频欧美一区二区三区| 国产aⅴ精品一区二区三区色成熟| 老司机一区二区| 黑人精品欧美一区二区蜜桃| 国内精品伊人久久久久av一坑| 日韩av一区二区三区| 奇米色一区二区| 免费成人在线播放| 麻豆精品久久久| 国产伦精品一区二区三区免费迷| 美国一区二区三区在线播放| 久久99精品久久久久婷婷| 欧美aaaaa成人免费观看视频| 美腿丝袜一区二区三区| 成人黄色免费短视频| 国产福利一区二区三区| 成人免费看黄yyy456| www.亚洲免费av| 91尤物视频在线观看| 欧美亚洲综合久久| 亚洲同性gay激情无套| 日韩欧美一二三| 欧美成人在线直播| 久久九九久久九九| 亚洲欧美自拍偷拍| 亚洲一区二区三区四区不卡| 三级在线观看一区二区| 久久av资源网| jiyouzz国产精品久久| 91搞黄在线观看| 日韩一区二区三区观看| 久久九九99视频| 亚洲另类春色校园小说| 日韩三级高清在线| 国产日韩欧美精品一区| 一区二区三区在线免费视频| 日韩av网站免费在线| 国产黄人亚洲片| 在线观看亚洲a| 久久视频一区二区| 亚洲精品国产一区二区精华液 | 欧美精品粉嫩高潮一区二区| 精品国产乱码久久| 中文字幕亚洲一区二区av在线 | 丝袜美腿亚洲综合| 国产一区二区免费看| 一本色道亚洲精品aⅴ| 日韩欧美一卡二卡| 综合激情网...| 精品中文字幕一区二区小辣椒| 日本一区二区三区四区| 久久综合久久久久88| 亚洲美女在线国产| 精品一区在线看| 欧美在线看片a免费观看| 久久综合九色综合欧美就去吻 | 国产精品久久久久久久午夜片| 亚洲午夜久久久久中文字幕久| 狠狠色丁香婷婷综合| 日日欢夜夜爽一区| 91亚洲精品久久久蜜桃网站| 2023国产精品视频| 丝瓜av网站精品一区二区| 91在线视频在线| 久久精品夜色噜噜亚洲aⅴ| 亚洲超丰满肉感bbw| 91丨porny丨首页| 久久久国产精品麻豆| 蜜臂av日日欢夜夜爽一区| 91国偷自产一区二区三区成为亚洲经典| 欧美成人一级视频| 天天射综合影视| 在线亚洲+欧美+日本专区| 国产精品每日更新在线播放网址| 国产精品乡下勾搭老头1| 欧美性做爰猛烈叫床潮| 中文字幕五月欧美| 国产成人福利片| 国产亚洲欧美日韩日本| 九九精品视频在线看| 日韩精品一区二| 麻豆国产精品一区二区三区| 91精品国产综合久久精品图片| 亚洲精品免费一二三区| 色拍拍在线精品视频8848| 中文字幕精品在线不卡| 欧美午夜视频网站| 亚洲啪啪综合av一区二区三区| 成人美女在线视频| 国产欧美一区二区精品性色超碰| 国内成人免费视频| 久久久久国产一区二区三区四区| 久久99国内精品| 2017欧美狠狠色| 国产98色在线|日韩| 国产精品美日韩| 成人深夜视频在线观看| 色综合天天性综合| 亚洲乱码中文字幕| 色婷婷av一区二区三区gif| 亚洲一区二区三区影院| 欧美日韩性生活| 蜜桃视频在线一区| 久久欧美中文字幕| 床上的激情91.| 亚洲精品大片www| 欧美精品久久99久久在免费线 | 暴力调教一区二区三区| 亚洲女人****多毛耸耸8| 91成人国产精品| 美国毛片一区二区| 日韩免费看的电影| 国产成人av影院| 亚洲私人影院在线观看| 欧美视频一区二区三区在线观看| 日本三级韩国三级欧美三级| 久久久久国产精品厨房| 色综合欧美在线视频区| 午夜伦欧美伦电影理论片| 欧美成人一区二区|