亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
精品欧美久久久| 欧美人妇做爰xxxⅹ性高电影| 成人免费一区二区三区在线观看| 91丨九色丨黑人外教| 午夜国产精品影院在线观看| 2欧美一区二区三区在线观看视频| av成人动漫在线观看| 亚洲成人一区在线| 国产日韩欧美亚洲| 欧美无砖砖区免费| 另类人妖一区二区av| 中文字幕中文字幕一区| 91麻豆精品国产91久久久使用方法| 国产成人av电影免费在线观看| 亚洲综合色婷婷| 欧美电影影音先锋| 99久久精品情趣| 久久精品99国产精品日本| 亚洲天天做日日做天天谢日日欢| 日韩精品专区在线| 色香蕉久久蜜桃| 国产精品影视在线观看| 亚洲午夜精品网| 国产精品久久久久毛片软件| 日韩一区二区在线观看视频 | 欧美一三区三区四区免费在线看| 国精产品一区一区三区mba视频| 尤物视频一区二区| 中文字幕在线一区二区三区| 欧美激情艳妇裸体舞| 国产日韩在线不卡| 国产婷婷精品av在线| 国产亚洲欧美激情| 欧美激情一区不卡| 国产精品久久毛片av大全日韩| 国产欧美综合在线| 国产精品进线69影院| 国产精品国产a| 自拍偷拍亚洲激情| 亚洲欧美日韩一区二区 | 欧美日韩精品一区二区天天拍小说| 色综合天天综合网国产成人综合天| 成人久久久精品乱码一区二区三区| 国产不卡高清在线观看视频| 成人美女视频在线观看| 91色视频在线| 欧美日韩国产三级| 欧美一级爆毛片| 久久无码av三级| 国产日韩欧美激情| 亚洲视频一区二区免费在线观看| 夜夜精品浪潮av一区二区三区| 亚洲国产欧美在线人成| 青青草视频一区| 激情欧美一区二区三区在线观看| 国产一区二区三区黄视频| 岛国av在线一区| 在线视频综合导航| 6080国产精品一区二区| 精品国产伦一区二区三区观看方式| 亚洲午夜久久久久久久久电影网| 亚洲bt欧美bt精品777| 久久国产夜色精品鲁鲁99| 粉嫩av一区二区三区| 在线这里只有精品| 日韩精品中文字幕一区| 国产精品乱人伦| 亚洲成人资源网| 韩国女主播成人在线| 91丨porny丨国产入口| 91精品免费观看| 欧美高清在线精品一区| 亚洲国产精品一区二区www在线| 麻豆精品在线播放| 91在线云播放| 精品三级在线看| 亚洲少妇30p| 激情成人午夜视频| 色综合久久中文字幕| 日韩欧美激情一区| 最新热久久免费视频| 免费人成精品欧美精品 | 白白色 亚洲乱淫| 欧美麻豆精品久久久久久| 国产女人18毛片水真多成人如厕 | 国产精品污网站| 日韩高清在线观看| av成人老司机| 精品福利av导航| 亚洲在线视频一区| 国产成人精品亚洲777人妖| 欧美天天综合网| 国产精品美日韩| 久久激情五月激情| 欧美亚日韩国产aⅴ精品中极品| 精品日韩成人av| 一区二区久久久| 成人精品视频一区| 一区二区三区免费观看| 国产精品一区二区久久精品爱涩| 欧美性大战xxxxx久久久| 国产精品少妇自拍| 精品一区二区三区在线观看| 欧美日韩高清影院| 一区二区三区在线观看欧美| 国产99久久久国产精品潘金| 欧美一级免费大片| 亚洲韩国精品一区| 色综合久久88色综合天天免费| 精品日韩在线观看| 日韩国产在线一| 欧美性生活大片视频| 亚洲欧洲日韩一区二区三区| 极品尤物av久久免费看| 3751色影院一区二区三区| 一区二区三区不卡视频| 99re这里只有精品视频首页| 久久久蜜桃精品| 激情文学综合网| 欧美岛国在线观看| 日本午夜精品视频在线观看| 欧美系列一区二区| 一区二区三区四区蜜桃| 91麻豆国产自产在线观看| 国产精品护士白丝一区av| 风间由美中文字幕在线看视频国产欧美 | 曰韩精品一区二区| 91免费观看国产| 亚洲欧美日韩国产综合在线| 波多野结衣的一区二区三区| 国产情人综合久久777777| 国产精品一二三四| 欧美精彩视频一区二区三区| 粉嫩蜜臀av国产精品网站| 中文字幕乱码日本亚洲一区二区 | 亚洲国产精品av| 粗大黑人巨茎大战欧美成人| 中文av一区特黄| av电影在线观看完整版一区二区| 中文字幕欧美一| 在线观看国产精品网站| 亚洲一区二区三区四区在线 | 亚洲精品在线电影| 国精品**一区二区三区在线蜜桃| 久久夜色精品国产噜噜av| 国产福利一区二区| 亚洲天堂av老司机| 91行情网站电视在线观看高清版| 亚洲午夜一区二区| 日韩三级高清在线| 国产成人精品免费视频网站| 中文字幕在线观看一区二区| 在线观看成人免费视频| 天堂成人国产精品一区| 精品日产卡一卡二卡麻豆| 国产成人亚洲精品青草天美| 中文字幕在线不卡国产视频| 欧美午夜一区二区三区| 蜜桃精品视频在线| 亚洲国产成人在线| 欧美日韩午夜影院| 国产一区不卡精品| 亚洲色图欧洲色图婷婷| 91麻豆精品91久久久久同性| 国产剧情一区二区| 日韩一区在线看| 日韩三级在线免费观看| 盗摄精品av一区二区三区| 亚洲成人免费在线| 久久久影院官网| 欧美日韩中字一区| 国产盗摄一区二区三区| 一区二区三区四区中文字幕| 精品少妇一区二区| 色中色一区二区| 国产一区视频网站| 亚洲综合无码一区二区| 91精品国产乱码久久蜜臀| 粉嫩一区二区三区性色av| 天堂在线一区二区| 国产精品青草综合久久久久99| 欧美日韩亚州综合| 高清av一区二区| 美女视频黄免费的久久 | 97久久精品人人爽人人爽蜜臀 | 国产原创一区二区| 亚洲综合一区在线| 国产女主播在线一区二区| 777午夜精品免费视频| 日韩精品在线一区| 色婷婷久久久久swag精品| 国产真实精品久久二三区| 亚洲伊人色欲综合网| 国产三级一区二区三区| 欧美一区二区啪啪| 色婷婷久久久久swag精品| 国产成人丝袜美腿| 日本成人在线视频网站| 夜夜夜精品看看| 中文字幕一区在线|