3d Controls: Main Page

3d Controls Documentation

v0.7

Generated on Fri Aug 20 19:19:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: File Index

3d Controls File List

Here is a list of all files with brief descriptions:
3d.cpp [code] |
3d.h [code] | Partie commune a la 3D
3dcontrols.cpp [code] |
angles.cpp [code] |
angles.h [code] | Gestion mixe des angles d'euler et quaternion
ARB_Multisample.cpp [code] |
ARB_Multisample.h [code] |
array.cpp [code] |
array.h [code] | Tableau dynamique
box.h [code] | Gestion de Boite 3D
button.cpp [code] |
button.h [code] | Control Button
calculator.cpp [code] |
calculator.h [code] | Control Calculator
color.cpp [code] |
color.h [code] | Gestion des couleur en 3D
communTools.cpp [code] |
communTools.h [code] | Outils commun
container.cpp [code] |
container.h [code] | Control Container
control.cpp [code] |
control.h [code] | Control
control_instance.h [code] | Instanciation static
controlEngine.cpp [code] |
controlEngine.h [code] | Moteur 3D
coordonate.h [code] | Gestion des coordonnée en 3D
cubedock.h [code] | Control Dock en cube
cursor.cpp [code] |
cursor.h [code] | Affiche le curseur
curve.cpp [code] |
curve.h [code] | Gestion de l'incurvation d'une face
dock.h [code] | Control Dock
effect.cpp [code] |
effect.h [code] |
equations.cpp [code] |
equations.h [code] | Gestion d'equation type et limité a [0;1] ==> [0;1]
face.cpp [code] |
face.h [code] | Gestion de Face
fog.h [code] | Gestion du brouillard
glext.h [code] |
Inertia.cpp [code] |
Inertia.h [code] | Gestion du mode Inertia
input.cpp [code] |
input.h [code] |
input_instance.h [code] | Instanciation static de input
layout.h [code] | Gestion de positionnement
light.cpp [code] |
light.h [code] | Gestion des lumieres
linedock.h [code] | Control Dock en ligne
masterContainer.cpp [code] |
masterContainer.h [code] | Control qui contien l'Univers
material.cpp [code] |
material.h [code] | Gestion des materiaux (couleur,type etc ...)
msgBox.cpp [code] |
msgBox.h [code] | Control MsgBox
MyDebug.cpp [code] |
MyDebug.h [code] | Partie cliente du debugeur MyDebugServer
MyException.h [code] |
MyList.h [code] | List generique
MyMenu.cpp [code] |
MyMenu.h [code] | Custom menu des commun controls de windows
MyObject.h [code] | Element generique d'un list ou d'un arbre
MyRegistry.CPP [code] |
MyRegistry.H [code] |
MyString.cpp [code] |
MyString.h [code] | Chaine de caractere dynamique
MyTree.h [code] | Arbre generique
Object3D.cpp [code] |
Object3D.h [code] | Affiche des object 3D de base
Object3D_instance.h [code] | Instancisation des statics de object3D
openGL_tools.cpp [code] |
openGL_tools.h [code] | Outils OpenGL
perfMon.cpp [code] |
perfMon.h [code] | Monteur de performance
picking.cpp [code] |
picking.h [code] | Gestion du picking 3D
polygonMode.h [code] | Gestion du mode de rendu polygonale
primitive.cpp [code] |
primitive.h [code] | Effet de transition des controls
recorder.cpp [code] |
recorder.h [code] | Gestion de suvegarde des liste openGL
region.cpp [code] |
region.h [code] | Gestion des region de Windows
resource.h [code] |
screen.cpp [code] |
screen.h [code] | Gestion du fenetrage du context OpenGL
slider.cpp [code] |
slider.h [code] | Control Slider
systray.cpp [code] |
systray.h [code] | Affiche un systray avec un menu
taskWindow.cpp [code] |
taskWindow.h [code] |
text3d.cpp [code] |
text3d.h [code] |
textBox.cpp [code] |
textBox.h [code] | Control d'affichage de text'
TextTexture.cpp [code] |
TextTexture.h [code] |
texture.cpp [code] |
texture.h [code] | Gestion des textures 3D
texture_instance.h [code] | Instancisation des statics de la list globale des textures
tip.cpp [code] |
tip.h [code] |
title.cpp [code] |
title.h [code] | Control Title
trackButton.cpp [code] |
trackButton.h [code] | Control Track Button
treeView.cpp [code] |
treeView.h [code] |
trigo.cpp [code] |
trigo.h [code] | Gestion de math: "trigonometrie" (points,sens trigonometrique,etc ...)
univers.cpp [code] |
univers.h [code] | Control Univers (celui qui contien un monde)
valueEditor.cpp [code] |
valueEditor.h [code] | Gestion de l'editeur de valeur
variable.h [code] | Variable active ou pas
wglext.h [code] |
window.cpp [code] |
window.h [code] | Control Window
windowTools.cpp [code] |
windowTools.h [code] | Fonction simple sur le fenetrage Windows
Generated on Fri Aug 20 19:19:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: 3d.cpp File Reference

3d.cpp File Reference

#include "3d.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: 3d.cpp Source File

3d.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 // include general
00020 #include "3d.h"
Generated on Fri Aug 20 19:19:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: 3d.h File Reference

3d.h File Reference

Partie commune a la 3D. More...

#include <stdio.h>
#include <math.h>
#include <windows.h>
#include <windowsx.h>
#include <commctrl.h>
#include <shellapi.h>
#include <zmouse.h>
#include <gl/gl.h>
#include <gl/glu.h>
#include <gl/glaux.h>
#include <ftgl/FTGLTextureFont.h>
#include <ftgl/FTGLPixmapFont.h>
#include <ftgl/FTGLExtrdFont.h>
#include <ftgl/FTGLOutlineFont.h>
#include <ftgl/FTGLPolygonFont.h>
#include <ftgl/FTGLBitmapFont.h>
#include "arb_multisample.h"
#include "trigo.h"
#include "MyString.h"
#include "MyTree.h"
#include "MyList.h"
#include "MyRegistry.h"
#include "MyDebug.h"

Go to the source code of this file.

Defines

#define | GET_WHEEL_DELTA_WPARAM(wParam) ((short)HIWORD(wParam))
#define | FONT_FILE "C:/Windows/Fonts/arial.ttf"
#define | FACE_BACK 0
#define | FACE_BOTTOM 1
#define | FACE_TOP 2
#define | FACE_LEFT 3
#define | FACE_RIGHT 4
#define | FACE_FRONT 5
#define | VERSION "0.7"

Enumerations

enum | DockPos { top = 1, bottom = 2, left = 4, right = 8 }

Detailed Description

Partie commune a la 3D.

Definition in file 3d.h.

Define Documentation

#define FACE_BACK 0

Definition at line 73 of file 3d.h.

Referenced by Tutorial::LayoutDemo::ConfigTreeButton(), TextBox::Create(), Slider::Create(), MsgBox::Create(), Calculator::Create(), and Tutorial::UniversDemo::UniversDemo().

#define FACE_BOTTOM 1

Definition at line 74 of file 3d.h.

Referenced by Title::GotFocus(), Title::LostFocus(), and Tutorial::UniversDemo::UniversDemo().

#define FACE_FRONT 5

Definition at line 78 of file 3d.h.

Referenced by TaskWindow::Add(), Tutorial::BaseDemo::BaseDemo(), Window::Create(), Title::Create(), TextBox::Create(), MsgBox::Create(), Calculator::Create(), Button::Create(), Tutorial::Create(), Tutorial::LayoutDemo::CreateTreeButton(), TreeView::Draw(), Title::GotFocus(), Tutorial::LayoutDemo::LayoutDemo(), Title::LostFocus(), Title::OnMax(), Title::OnMouseMove(), Title::OnOriginal(), Tutorial::BaseDemo::OnWinMove(), Tutorial::BaseDemo::OnWinOut(), TaskWindow::Refresh(), Tutorial::UniversDemo::SetFace(), Title::ToString(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

#define FACE_LEFT 3

Definition at line 76 of file 3d.h.

Referenced by MsgBox::Create(), Title::GotFocus(), Title::LostFocus(), and Tutorial::UniversDemo::UniversDemo().

#define FACE_RIGHT 4

Definition at line 77 of file 3d.h.

Referenced by TaskWindow::Create(), Title::GotFocus(), Title::LostFocus(), and Tutorial::UniversDemo::UniversDemo().

#define FACE_TOP 2

Definition at line 75 of file 3d.h.

Referenced by Title::GotFocus(), Title::LostFocus(), and Tutorial::UniversDemo::UniversDemo().

#define FONT_FILE "C:/Windows/Fonts/arial.ttf"

Definition at line 50 of file 3d.h.

Referenced by ControlEngine::InitFont().

#define GET_WHEEL_DELTA_WPARAM ( wParam ) ((short)HIWORD(wParam))

Definition at line 36 of file 3d.h.

Referenced by ControlEngine::Proc().

#define VERSION "0.7"

Definition at line 80 of file 3d.h.

Referenced by AboutProc(), ControlEngine::ControlEngine(), and ControlEngine::~ControlEngine().

Enumeration Type Documentation

enum DockPos

Enumeration values:
top
bottom
left
right

Definition at line 83 of file 3d.h.

Referenced by ResizingAndRotateControl::OnHover(), TrackButton::OnOverOut(), and TrackButton::TrackButton().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: 3d.h Source File

3d.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_H
00024 #define INCLUDE_3D_H
00025
00026 // include general
00027 #include <stdio.h>
00028 #include <math.h>
00029 #include <windows.h>
00030 #include <windowsx.h>
00031 #include <commctrl.h>
00032
00033 // gestion de la molette de la souris
00034 #include <shellapi.h>                            // pour ShellExecute
00035 #include <zmouse.h>
00036 #define GET_WHEEL_DELTA_WPARAM(wParam)  ((short)HIWORD(wParam))
00037
00038 // include pour la 3d
00039 // ajouter ./include dans les path des includes
00040 #include <gl/gl.h>                   // Header for OpenGL32 Lib
00041 #include <gl/glu.h>                  // GLu32 Lib
00042 #include <gl/glaux.h>                // GLaux Lib
00043 #include <ftgl/FTGLTextureFont.h>
00044 #include <ftgl/FTGLPixmapFont.h>
00045 #include <ftgl/FTGLExtrdFont.h>
00046 #include <ftgl/FTGLOutlineFont.h>
00047 #include <ftgl/FTGLPolygonFont.h>
00048 #include <ftgl/FTGLBitmapFont.h>
00049
00050 #define FONT_FILE "C:/Windows/Fonts/arial.ttf"
00051
00052 #include "arb_multisample.h"
00053 #include "trigo.h"
00054
00055 #pragma comment(lib, "OpenGL32.lib")
00056 #pragma comment(lib, "GLu32.lib")
00057 #pragma comment(lib, "GLaux.lib")
00058 #pragma comment(lib, "comctl32.lib")
00059 #pragma comment(lib, "lib/ftgl.lib")
00060 #pragma comment(lib, "lib/freetype2.lib")
00061 #pragma comment(lib, "lib/freeimage.lib")
00062
00063 // include de gestion "ordinaire"
00064 #include "MyString.h"
00065 #include "MyTree.h"
00066 #include "MyList.h"
00067 #include "MyRegistry.h"
00068
00069 // include pour debugage
00070 #include "MyDebug.h"
00071
00072 // macros de definition de type de face
00073 #define FACE_BACK               0
00074 #define FACE_BOTTOM             1
00075 #define FACE_TOP                2
00076 #define FACE_LEFT               3
00077 #define FACE_RIGHT              4
00078 #define FACE_FRONT              5
00079
00080 #define VERSION                 "0.7"           // version du moteur en cours
00081
00082 // enum de positionnement
00083 typedef enum { top=1,bottom=2,left=4,right=8 } DockPos;
00084 #endif
Generated on Fri Aug 20 19:19:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: 3dcontrols.cpp File Reference

3dcontrols.cpp File Reference

#include <Windows.h>
#include "controlEngine.h"
#include "MyString.h"
#include "MyList.h"
#include "input_instance.h"
#include "MyDebug.h"
#include "control_instance.h"
#include "button.h"
#include "texture_instance.h"
#include "textBox.h"
#include "title.h"
#include "container.h"
#include "window.h"
#include "effect.h"
#include "msgBox.h"
#include "tip.h"
#include "treeView.h"
#include "slider.h"
#include "calculator.h"

Go to the source code of this file.

Namespaces

namespace | sigslot

Classes

class | Tutorial
Evenement de parametre et d'evenement de l'application. More...

class | Tutorial::Demo
class | Tutorial::FaceDemo
class | Tutorial::UniversDemo
class | Tutorial::BaseDemo
class | Tutorial::LayoutDemo
class | Tutorial::WindowDemo
class | Tutorial::ApplicationDemo
class | Demo

Functions

int APIENTRY | WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)

Variables

ControlEngine ce

Function Documentation

int APIENTRY WinMain | ( | HINSTANCE | hInstance,
 |  | HINSTANCE | hPrevInstance,
 |  | LPSTR | lpCmdLine,
 |  | int | nCmdShow
 | ) |

Definition at line 1322 of file 3dcontrols.cpp.

References ce, Tutorial::Create(), ControlEngine::Loop(), ControlEngine::Start(), and MyDebug::Start().

Variable Documentation

ControlEngine ce

Definition at line 48 of file 3dcontrols.cpp.

Referenced by TaskWindow::Add(), Tutorial::ApplicationDemo::ApplicationDemo(), ApplyParamObj(), Cursor::ApplyType(), Tutorial::BaseDemo::BaseDemo(), Button::Button(), Config(), TreeView::ConfigFacesPlus(), ConfigProc(), Tutorial::LayoutDemo::ConfigTextFace(), ControlEngineProc(), Window::Create(), Univers::Create(), TreeView::Create(), TrackButton::Create(), Title::Create(), Tip::Create(), TextBox::Create(), TaskWindow::Create(), Slider::Create(), MsgBox::Create(), MasterContainer::Create(), Container::Create(), Calculator::Create(), Button::Create(), Tutorial::Create(), Tutorial::LayoutDemo::CreateTreeButton(), DebugStructProc(), Demo::Demo(), Tutorial::Demo::Demo(), TreeView::Draw(), Text3D::Draw(), BasicText3D::Draw(), Face::Draw(), ControlEngine::DrawFPS(), Univers::ExitQuestion(), Tutorial::FaceDemo::FaceDemo(), Picking::FindContainer(), Primitive::GetCorners(), Face::GetCorners(), Control::GetCorners(), Control::GetLocalPos(), Title::GotFocus(), Tutorial::LayoutDemo::LayoutDemo(), Title::LostFocus(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), TreeView::OnClick(), TreeDirectory::OnClickDirectory(), Tutorial::OnEnd(), Tutorial::ApplicationDemo::OnEnd(), Tutorial::WindowDemo::OnEnd(), Tutorial::BaseDemo::OnEnd(), Univers::OnExit(), ResizingAndRotateControl::OnHover(), EventInertia::OnInertia(), Univers::OnKeyDown(), Univers::OnKeyUp(), Univers::OnLButtonDown(), Title::OnLButtonDown(), TextBox::OnLButtonDown(), Univers::OnLButtonUp(), TextBox::OnLButtonUp(), Title::OnLMButtonUp(), Title::OnMax(), Univers::OnMButtonDown(), Title::OnMButtonDown(), Univers::OnMButtonUp(), Title::OnMin(), Control::OnMouseMove(), TreeView::OnNextFrame(), Title::OnOriginal(), Univers::OnOverIn(), Title::OnOverIn(), TextBox::OnOverIn(), Button::OnOverIn(), Univers::OnOverOut(), Title::OnOverOut(), Button::OnPushDown(), Button::OnPushUp(), Tutorial::ApplicationDemo::OnSelectBkg(), Demo::OnTimer(), Slider::Refresh(), TaskWindow::Restore(), Control::ScreenMove(), Control::ScreenMoveTo(), Tutorial::UniversDemo::SetFace(), Control::SetParent(), EventInertia::Start(), EffectApparition::Start(), EventInertia::Stop(), EffectApparition::Stop(), SysTrayProc(), Picking::Test(), TextBox::TextBox(), Tip::Tip(), Title::Title(), Tutorial::Tutorial(), Tutorial::UniversDemo::UniversDemo(), Tutorial::WindowDemo::WindowDemo(), WinMain(), Title::~Title(), Tutorial::~Tutorial(), and Univers::~Univers().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: 3dcontrols.cpp Source File

3dcontrols.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *************************************************************************************
00018         OpenGL source interessante
00019         de Microsoft: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/oglport_17jm.asp
00020
00021         Compilation: le rep "commun" doit faire partie de include de base
00022         /VS.NET aller dans Outils/options/project/repertoire de Vc++/fichier include
00023         /VS 6.0 aller dans ???
00024 ********************************************************************************** */
00025
00026 #include <Windows.h>
00027 #include "controlEngine.h"
00028 #include "MyString.h"
00029 #include "MyList.h"
00030 #include "input_instance.h"
00031
00032 #include "MyDebug.h"
00033 #include "control_instance.h"
00034 #include "button.h"
00035 #include "texture_instance.h"
00036 #include "textBox.h"
00037 #include "title.h"
00038 #include "container.h"
00039 #include "window.h"
00040 #include "effect.h"
00041
00042 #include "msgBox.h"
00043 #include "tip.h"
00044 #include "treeView.h"
00045 #include "slider.h"
00046 #include "calculator.h"
00047
00048 ControlEngine ce; // forcement en variable global
00049
00050 using namespace sigslot;  // pour signal (evit l'ecriture sigslot::signal?<...>)
00051
00057 class Tutorial : public Window
00058 {
00059 public:
00060         TextBox info;
00061         Button btnReturn;
00062         EffectApparition effect;
00063         Tip tip;
00064
00065         Button btnUniversDemo;
00066         Button btnFaceDemo;
00067         Button btnBaseDemo;
00068         Button btnLayoutDemo;
00069         Button btnWindowDemo;
00070         Button btnApplicationDemo;
00071
00072         class Demo : public has_slots<>
00073         {
00074         public:
00075                 Tutorial *parent;
00076
00077                 Demo(Tutorial *_parent)
00078                 {
00079                         parent=_parent;
00080                         parent->btnReturn.onButton.click.disconnect_all();
00081                         parent->title.OnMin();
00082                         ce.univers->HomePosition();
00083                 }
00084
00085                 void Ending()
00086                 {
00087                         parent->title.OnOriginal();
00088                         parent->SetTutorialTipText();
00089                         parent->btnReturn.onButton.click.disconnect_all();
00090                         parent->btnReturn.onButton.click.connect(parent,Tutorial::OnEnd);
00091                         parent->effect.Bind(parent->faceNode);
00092                         parent->effect.Start(FALSE,1);
00093                 }
00094         };
00095
00096         class FaceDemo  : public Demo
00097         {
00098         public:
00099                 Title *titleBasic;
00100                 Control *controlBasic;
00101                 Title *titleText;
00102                 Control *controlText;
00103                 Title *titleCurving;
00104                 Control *controlCurving;
00105
00106                 Timer timer;
00107                 MyList<FaceNode *> nodes;
00108
00109                 FaceDemo(Tutorial *_parent) : Demo (_parent)
00110                 {
00111                         parent->tip.SetText("Face is the base graphics primitive; for example a Box is just on combination of Face, and by extand, it was the same for all control");
00112                         parent->btnReturn.onButton.click.connect(this,OnEnd);
00113                         ce.Push(ce.univers);
00114                         FaceNode *node;
00115                         Face *face;
00116
00117                         // groupe "Basic"
00118                         controlBasic= new Control;
00119                         controlBasic->faceNode = ce.primitive.AddFace("basic container",controlBasic->id,0,FALSE);
00120                         face = controlBasic->faceNode->elem;
00121                         face->position.x=-170;
00122                         face->position.y=170;
00123                         face->size.x=300;
00124                         face->size.y=300;
00125                         face->line=1;
00126                         face->lineMaterial.SetDS(0.5,0.5,0.5);
00127                         ce.Push(controlBasic);
00128                         titleBasic = new Title;
00129                         titleBasic->SetUses(FALSE,FALSE,FALSE,FALSE);
00130                         titleBasic->Create(controlBasic);
00131                         titleBasic->SetText("Basic: Outline,Red,Texture,Blend");
00132                         titleBasic->XDockCenter(2,0);
00133                         titleBasic->YDockTop(2,30);
00134
00135
00136                         // outline
00137                         node = ce.primitive.AddFace("outline",controlBasic->id,1,FALSE);
00138                         nodes.i+=node;
00139                         face = node->elem;
00140                         face->position.x=-50;
00141                         face->position.y=50;
00142                         face->size.x=50;
00143                         face->size.y=50;
00144                         face->angle.Set(22,22,0);
00145                         face->line=1;
00146                         face->lineMaterial.SetDS(0,1,0);
00147
00148                         // basic
00149                         node = ce.primitive.AddFace("red",controlBasic->id,2,TRUE);
00150                         nodes.i+=node;
00151                         face = node->elem;
00152                         face->position.x=50;
00153                         face->position.y=50;
00154                         face->size.x=50;
00155                         face->size.y=50;
00156                         face->angle.Set(22,22,0);
00157                         face->material.SetDS(1,0,0);
00158
00159                         // textured
00160                         node = ce.primitive.AddFace("textured",controlBasic->id,3,TRUE);
00161                         nodes.i+=node;
00162                         face = node->elem;
00163                         face->position.x=-50;
00164                         face->position.y=-50;
00165                         face->size.x=50;
00166                         face->size.y=50;
00167                         face->angle.Set(22,22,0);
00168                         face->material.SetDS(1,1,1);
00169                         face->texture=&ce.texture.iconBase;
00170
00171                         // blending
00172                         node = ce.primitive.AddFace("blending",controlBasic->id,4,TRUE);
00173                         nodes.i+=node;
00174                         face = node->elem;
00175                         face->position.x=50;
00176                         face->position.y=-50;
00177                         face->size.x=50;
00178                         face->size.y=50;
00179                         face->angle.Set(22,22,0);
00180                         face->material.SetDS(1,0,0.5);
00181                         node = ce.primitive.AddFace("blending2",controlBasic->id,5,TRUE);
00182                         nodes.i+=node;
00183                         face = node->elem;
00184                         face->position.x=50+10;
00185                         face->position.y=-50+10;
00186                         face->position.z=20;
00187                         face->size.x=40;
00188                         face->size.y=40;
00189                         face->blending=TRUE;
00190                         face->material.SetDS(0,1,0,0.5);
00191                         ce.Pop();
00192
00193                         // groupe "Text"
00194                         controlText = new Control;
00195                         controlText->faceNode = ce.primitive.AddFace("text container",controlText->id,0,FALSE);
00196                         face = controlText->faceNode->elem;
00197                         face->position.x=-170;
00198                         face->position.y=-170;
00199                         face->size.x=300;
00200                         face->size.y=300;
00201                         face->line=1;
00202                         face->lineMaterial.SetDS(0.5,0.5,0.5);
00203                         ce.Push(controlText);
00204                         titleText = new Title;
00205                         titleText->SetUses(FALSE,FALSE,FALSE,FALSE);
00206                         titleText->Create(controlText);
00207                         titleText->SetText("Text & Alignement");
00208                         titleText->XDockCenter(2,0);
00209                         titleText->YDockTop(2,30);
00210
00211
00212                         // text
00213                         int x,y=68;
00214                         char xText[4][10]={"left","center","right","justify"};
00215                         char yText[4][10]={"top","center","bottom","justify"};
00216                         MyString text;
00217                         for (int yAlign=0;yAlign<4;yAlign++)
00218                         {
00219                                 x=-118;
00220                                 for (int xAlign=0;xAlign<4;xAlign++)
00221                                 {
00222                                         node = ce.primitive.AddFace("text",controlText->id,xAlign+yAlign*4,TRUE);
00223                                         nodes.i+=node;
00224                                         face = node->elem;
00225                                         face->position.x=x;
00226                                         face->position.y=y;
00227                                         face->size.x=60;
00228                                         face->size.y=50;
00229                                         face->angle.Set(22,22,0);
00230                                         face->text=new Text3D;
00231                                         face->text->SetJustifyLimit(100,100);
00232                                         face->text->Setup(ce.fontTexture,ft_texture);
00233                                         text<<clear<<xText[xAlign]<<"\n"<<yText[yAlign];
00234                                         face->text->SetText(text);
00235                                         face->text->SetAlign((TextAlign)xAlign,(TextAlign)yAlign);
00236                                         face->text->SetWrapping(TRUE,FALSE,TRUE);
00237                                         face->text->material.SetDS(0,0,1);
00238                                         face->line=1;
00239                                         face->lineMaterial.SetDS(1,0,0);
00240                                         x+=60;
00241                                 }
00242                                 y-=50;
00243                         }
00244                         ce.Pop();
00245
00246                         // groupe "Curving"
00247                         controlCurving= new Control;
00248                         controlCurving->faceNode = ce.primitive.AddFace("curving container",controlCurving->id,0,FALSE);
00249                         face = controlCurving->faceNode->elem;
00250                         face->position.x=170;
00251                         face->position.y=-170;
00252                         face->size.x=300;
00253                         face->size.y=300;
00254                         face->line=1;
00255                         face->lineMaterial.SetDS(0.5,0.5,0.5);
00256                         ce.Push(controlCurving);
00257                         titleCurving = new Title;
00258                         titleCurving->SetUses(FALSE,FALSE,FALSE,FALSE);
00259                         titleCurving->Create(controlCurving);
00260                         titleCurving->SetText("Curving");
00261                         titleCurving->XDockCenter(2,0);
00262                         titleCurving->YDockTop(2,30);
00263
00264
00265                         // curving
00266                         Material material[4];
00267                         material[0].SetDS(1,0.5,0);
00268                         material[1].SetDS(0.5,1,0);
00269                         material[2].SetDS(0.5,0,1);
00270                         material[3].SetDS(0.5,0.5,0.5);
00271                         int num=0;
00272
00273                         y=50;
00274                         for (float xCenter=0;xCenter<=1;xCenter+=0.5)
00275                         {
00276                                 x=-50;
00277                                 for (float yCenter=0;yCenter<=1;yCenter+=0.5)
00278                                 {
00279                                         node = ce.primitive.AddFace("curving",controlCurving->id,num++,TRUE);
00280                                         nodes.i+=node;
00281                                         face = node->elem;
00282                                         face->position.x=x;
00283                                         face->position.y=y;
00284                                         face->size.x=50;
00285                                         face->size.y=50;
00286                                         face->material=material[num%4];
00287                                         if (xCenter==0.5&&yCenter==0.5) face->curve.Set(75,6,6);
00288                                         else face->curve.Set(50,yCenter==0.5?1:6,xCenter==0.5?1:6);
00289                                         face->curve.center.x=1-yCenter;
00290                                         face->curve.center.y=xCenter;
00291                                         x+=60;
00292                                 }
00293                                 y-=60;
00294                         }
00295
00296                         ce.Pop();
00297                         ce.Pop();
00298
00299                         BindTimer(timer,OnTimer,40);
00300                 }
00301
00302                 int OnTimer(Timer *timer)
00303                 {
00304                         double time = timer->GetDeltaTime();
00305                         double decal = 0;
00306
00307                         int num;
00308                         // les 4*4+5 premiers sont les nodes du text
00309                         for (nodes.i=0,num=0;num<21;nodes.i++,num++)
00310                         {
00311                                 FaceNode *node = nodes.i.GetElem();
00312                                 node->elem->angle.Set(sin(0.6*time*PI+decal)*20,cos(0.6*time*PI+decal)*20,0);
00313                                 decal+=PI/3.0;
00314                         }
00315
00316                         // les 3*3 dernier sont les nodes du curving
00317                         decal = 0;
00318                         for (;nodes.i.More();nodes.i++)
00319                         {
00320                                 FaceNode *node = nodes.i.GetElem();
00321                                 node->elem->curve.center.z=sin(time*PI+decal)*50;
00322                                 decal+=PI/3.0;
00323                         }
00324                         return 0;
00325                 }
00326
00327                 int OnEnd()
00328                 {
00329                         timer.onTimer.disconnect_all();
00330                         Ending();
00331                         delete titleBasic; // !attention, du a l'ordre de supression
00332                         delete titleText;
00333                         delete titleCurving;
00334                         delete controlBasic;
00335                         delete controlText;
00336                         delete controlCurving;
00337                         return 1;
00338                 }
00339         };
00340
00341         class UniversDemo  : public Demo
00342         {
00343         public:
00344                 Control *control;
00345                 Button *button[4*6];
00346                 Timer timer;
00347                 DockPos slideDirection; // type de deplacement
00348                 double countDirection; // nombre de deplacement
00349
00350                 UniversDemo(Tutorial *_parent) : Demo(_parent)
00351                 {
00352                         parent->tip.SetText("The Univers is the basic container, to move inside you can:\npush left button on the mouse and moving or using key HOME, directionnal (add Shift to rotate) or PRIOR/NEXT");
00353                         parent->btnReturn.onButton.click.connect(this,OnEnd);
00354
00355                         ce.Push(ce.univers);
00356                         control= new Control;
00357                         control->faceNode = ce.primitive.AddBox("Box test",control->id,100,TRUE);
00358                         Face *face = control->faceNode->elem;
00359                         face->size.x=100;
00360                         face->size.y=100;
00361                         face->position.z=-50; // centré dans les z aussi
00362
00363                         SetFace(FACE_BACK,1,0,0,"Face\nBack");
00364                         SetFace(FACE_FRONT,0,1,0,"Face\nFront");
00365                         SetFace(FACE_LEFT,0,0,1,"Face\nLeft");
00366                         SetFace(FACE_RIGHT,1,1,0,"Face\nRight");
00367                         SetFace(FACE_TOP,1,0,1,"Face\nTop");
00368                         SetFace(FACE_BOTTOM,0,1,1,"Face\nBottom");
00369
00370                         ce.Pop();
00371                 }
00372
00373                 void SetFace(int numFace,float r,float g,float b,char *text)
00374                 {
00375                         Face *face = control->faceNode->Elems(numFace);
00376                         face->material.SetDS(r,g,b);
00377                         face->text= new Text3D;
00378                         face->text->Setup(ce.fontTexture);
00379                         face->text->SetAlign(align_center,align_center);
00380                         face->text->SetText(text);
00381                         face->text->material.SetDS(0,0,0);
00382                         ce.primitive.GoTo(control->faceNode);
00383                         ce.primitive.GoTo(numFace);
00384                         for (int i=numFace;i<numFace+4;i++)
00385                         {
00386                                 button[i] = new Button;
00387                                 button[i]->materialOnUp.SetDS(0.5,0.5,0.5,0.5);
00388                                 button[i]->materialOnDown.SetDS(1,1,1,0.5);
00389                                 button[i]->Create();
00390                                 button[i]->faceNode->Elems(FACE_FRONT)->texture = &ce.texture.arrow;
00391                                 button[i]->SetBlending(TRUE);
00392                         }
00393
00394                         button[numFace]->XDockLeft(3,15);
00395                         button[numFace]->YDockCenter(15);
00396
00397                         button[numFace+1]->XDockRight(3,15);
00398                         button[numFace+1]->YDockCenter(15);
00399
00400                         button[numFace+2]->XDockCenter(15);
00401                         button[numFace+2]->YDockTop(3,15);
00402
00403                         button[numFace+3]->XDockCenter(15);
00404                         button[numFace+3]->YDockBottom(3,15);
00405
00406                         button[numFace+1]->RotateTo(0,0,180);
00407                         button[numFace+2]->RotateTo(0,0,-90);
00408                         button[numFace+3]->RotateTo(0,0,90);
00409
00410                         button[numFace+1]->MoveTo(-18,0,0);
00411                         button[numFace+2]->MoveTo(9,-9,0);
00412                         button[numFace+3]->MoveTo(9,9,0);
00413
00414                         button[numFace]->onButton.click.connect(this,OnLeft);
00415                         button[numFace+1]->onButton.click.connect(this,OnRight);
00416                         button[numFace+2]->onButton.click.connect(this,OnTop);
00417                         button[numFace+3]->onButton.click.connect(this,OnBottom);
00418                 }
00419
00420                 int OnTimer(Timer *timer)
00421                 {
00422                         double delta = 5.0;
00423                         Face *face = control->faceNode->elem;
00424
00425                         countDirection-=delta;
00426                         if (countDirection<=0)
00427                         {
00428                                 timer->onTimer.disconnect(this);
00429                                 delta = -countDirection;
00430                         }
00431                         switch (slideDirection)
00432                         {
00433                         case left:      control->RotateQuaternion(delta,0,0);   break;
00434                         case right: control->RotateQuaternion(-delta,0,0);      break;
00435                         case top:       control->RotateQuaternion(0,delta,0);   break;
00436                         case bottom:control->RotateQuaternion(0,-delta,0);      break;
00437                         }
00438                         return 0;
00439                 }
00440
00441                 int OnLeft()
00442                 {
00443                         ConfigSlide(left);
00444                         return 1;
00445                 }
00446
00447                 int OnRight()
00448                 {
00449                         ConfigSlide(right);
00450                         return 1;
00451                 }
00452
00453                 int OnTop()
00454                 {
00455                         ConfigSlide(top);
00456                         return 1;
00457                 }
00458
00459                 int OnBottom()
00460                 {
00461                         ConfigSlide(bottom);
00462                         return 1;
00463                 }
00464
00465                 void ConfigSlide(DockPos direction)
00466                 {
00467                         slideDirection=direction;
00468                         countDirection=50; // il dois fonctioné en gradian, mais pourkoi ?!
00469                         timer.onTimer.disconnect(this);
00470                         BindTimer(timer,OnTimer,20);
00471                 }
00472
00473                 int OnEnd()
00474                 {
00475                         Ending();
00476                         //for (int i=0;i<4*6;i++) delete button[i];
00477                         delete control;
00478                         return 1;
00479                 }
00480         };
00481
00482         class BaseDemo : public Demo
00483         {
00484         public:
00485                 Button *button;
00486                 Title *title;
00487                 TextBox *textBox ;
00488                 Window *winInfo;
00489                 Window *winSlider;
00490                 MsgBox *msgBox;
00491                 Slider *xSlider,*ySlider;
00492                 Tip *tipSlider;
00493                 double xPercent,yPercent;
00494
00495                 BaseDemo(Tutorial *_parent) : Demo(_parent)
00496                 {
00497                         parent->tip.SetText("Basic Control, like Button, TextBox, Title, Window and MsgBox");
00498                         parent->btnReturn.onButton.click.connect(this,OnEnd);
00499                         ce.taskWindow->title.OnOriginal();
00500
00501                         ce.Push(ce.univers);
00502                         button = new Button;
00503                         button->Create();
00504                         button->SetText("Button");
00505                         button->text.SetAlign(align_justify,align_begin);
00506                         button->Size(80,50);
00507                         button->MoveTo(0,-100,0);
00508
00509                         title = new Title;
00510                         title->Create();
00511                         title->SetText("Title");
00512                         title->Size(200,20);
00513                         title->MoveTo(0,0,0);
00514
00515                         textBox = new TextBox;
00516                         textBox->Create();
00517                         textBox->SetText("Text");
00518                         textBox->Size(50,20);
00519                         textBox->MoveTo(0,100,0);
00520
00521                         winSlider = new Window;
00522                         winSlider->Create();
00523                         winSlider->title="Slider";
00524                         winSlider->Size(200,200);
00525                         winSlider->MoveTo(0,200,0);
00526
00527                         ce.Push(&winSlider->client);
00528                                 ce.primitive.GoTo(FACE_FRONT);
00529                                 xPercent=yPercent=0.5;
00530                                 xSlider = new Slider;
00531                                 xSlider->Create(10);
00532                                 xSlider->XDockCenter(2,15);
00533                                 xSlider->YDockBottom(2,15);
00534                                 xSlider->onSlidder.moving.connect(this,OnXSliderMove);
00535
00536                                 ySlider = new Slider;
00537                                 ySlider->Create(10);
00538                                 xSlider->XDockCenter(2,15);
00539                                 xSlider->YDockBottom(18,15);
00540                                 ySlider->onSlidder.moving.connect(this,OnYSliderMove);
00541
00542                                 tipSlider = new Tip;
00543                                 tipSlider->Create();
00544                                 tipSlider->XDockCenter(100);
00545                                 tipSlider->YDockCenter(100);
00546                                 tipSlider->text.SetWrapping(FALSE,FALSE,FALSE);
00547                                 tipSlider->Move(0,0,5);
00548                         ce.Pop();
00549
00550                         winInfo = new Window;
00551                         winInfo->Create();
00552                         winInfo->title="Window";
00553                         winInfo->Size(200,200);
00554                         winInfo->MoveTo(-200,0,0);
00555                         winInfo->RotateTo(0,35,0);
00556
00557                         winInfo->client.faceNode->Elems(FACE_FRONT)->texture=&ce.texture.tropique;
00558
00559                         winInfo->client.onControl.mouse.move.connect(this,OnWinMove);
00560                         //winInfo->client.onControl.over.out.connnect(this,OnWinOut); // pb a la compil pkoi ?!
00561                         Face *face = winInfo->client.faceNode->Elems(FACE_FRONT);
00562                         face->material.SetDS(1,1,1,0.5f);
00563                         face->blending=TRUE;
00564                         face->text = new Text3D;
00565                         face->text->Setup(ce.fontTexture);
00566                         face->text->SetAlign(align_center,align_center);
00567                         face->text->material.SetDS(1,1,0);
00568                         face->text->SetWrapping(FALSE,FALSE,FALSE);
00569                         face->text->SetText("Moving inside\nGive local positions");
00570
00571                         msgBox = new MsgBox;
00572                         msgBox->Create();
00573                         msgBox->Size(250,200);
00574                         msgBox->title="3D Controls - MsgBox";
00575                         msgBox->txtInfo="Hello Word !!\nVoici un example de l'utilisation de MsgBox";
00576                         msgBox->txtTranche="3D Controls";
00577                         msgBox->MoveTo(200,0,0);
00578                         msgBox->RotateTo(0,-35,0);
00579                         ce.Pop();
00580                 }
00581
00582                 int OnXSliderMove(double min,double max,double percent)
00583                 {
00584                         xPercent=percent;
00585                         MyString temp;
00586                         temp.Format("X=%.0lf%%\nY=%.0lf%%",xPercent*100.0,yPercent*100.0);
00587                         tipSlider->SetText(temp);
00588                         return 0;
00589                 }
00590
00591                 int OnYSliderMove(double min,double max,double percent)
00592                 {
00593                         yPercent=percent;
00594                         MyString temp;
00595                         temp.Format("X=%.0lf%%\nY=%.0lf%%",xPercent*100.0,yPercent*100.0);
00596                         tipSlider->SetText(temp);
00597                         return 0;
00598                 }
00599
00600                 int OnWinOut (Control *,int)
00601                 {
00602                         Face *face = winInfo->client.faceNode->Elems(FACE_FRONT);
00603                         face->text->SetText("Moving inside\nGive local positions");
00604                         return 0;
00605                 }
00606
00607                 int OnWinMove(StateMouse *mouse,int,int,int numFace)
00608                 {
00609                         MyString text;
00610                         Point2D<double> pos(mouse->pos.x,mouse->pos.y);
00611                         Point2D<double> localPos;
00612                         localPos = winInfo->client.GetLocalPos(numFace,pos);
00613
00614                         Point3D<double> corners[4];
00615                         winInfo->client.GetCorners(numFace,corners);
00616                         text.Format("Coordonate {x,y}\n%.2f , %.2f",localPos.x,localPos.y);
00617                         winInfo->client.faceNode->Elems(FACE_FRONT)->text->SetText(text);
00618                         return 0;
00619                 }
00620
00621                 int OnEnd()
00622                 {
00623                         ce.taskWindow->title.OnMin();
00624                         Ending();
00625                         delete button;
00626                         delete textBox;
00627                         delete winInfo;
00628                         delete winSlider;
00629                         delete title;
00630                         delete msgBox;
00631                         delete xSlider;
00632                         delete ySlider;
00633                         delete tipSlider;
00634                         return 1;
00635                 }
00636         };
00637
00638         class LayoutDemo  : public Demo
00639         {
00640         public:
00641                 Button btnToogleAll;
00642                 Button btnToogle;
00643                 Button btnResetAll;
00644                 Button btnReset;
00645                 Button btnSetAll;
00646                 Button btnSet;
00647                 Window window;
00648                 TextBox text;
00649                 Button btnTree;
00650                 Button *lastSelected;
00651                 MyList<Button> buttons;
00652
00653                 LayoutDemo(Tutorial *_parent) : Demo(_parent)
00654                 {
00655                         // general
00656                         lastSelected=NULL;
00657                         parent->tip.SetText("Layout cant be use to specify \"contact\" bitwin somme other Control\nIt's the easy way to create\"composite\" Controls");
00658                         parent->btnReturn.onButton.click.connect(this,OnEnd);
00659
00660                         ce.Push(ce.univers);
00661                         // affichage de l'arbre a boutton pushed like
00662                         btnTree.Create(40);
00663                         btnTree.XDockCenter(80);
00664                         btnTree.YDockCenter(40);
00665                         btnTree.ModePushLike(TRUE);
00666                         btnTree.depth_min=btnTree.depth_max;
00667                         btnTree.ModeAllButtons(TRUE);
00668                         btnTree.faceNode->Elems(FACE_FRONT)->view=TRUE;
00669                         ce.Push(&btnTree);
00670                                 CreateTreeButton(3);
00671                         ce.Pop();
00672
00673                         // affichage du text
00674                         window.Create();
00675                         window.title.SetText("Composite controls");
00676                         window.XDockCenter(300);
00677                         window.YDockTop(10,130);
00678                         window.faceNode->Elems(FACE_FRONT)->material.SetNull();
00679                         window.title.OnMax();
00680                         ce.Push(&window.client);
00681                                 ce.primitive.GoTo(FACE_FRONT);
00682                                 text.Create();
00683                                 text.SetText("Sample composite botton that use other button inside");
00684                                 text.XDockCenter(3,0);
00685                                 text.YDockTop(3,40);
00686
00687
00688                                 text.text.SetAlign(align_begin,align_center);
00689
00690                                 // boutton imbriqué "select"
00691                                 btnToogle="Toogle";
00692                                 btnToogle.Create();
00693                                 btnToogle.XDockCenter(80);
00694                                 btnToogle.YDockBottom(3,40);
00695                                 btnToogle.text.SetAlign(align_begin,align_center);
00696                                 btnToogle.onButton.click.connect(this,OnToogle);
00697                                 btnToogleAll.onButton.click.connect(this,OnToogleAll);
00698                                 ce.Push(&btnToogle);
00699                                         ce.primitive.GoTo(FACE_FRONT);
00700                                         btnToogleAll="All";
00701                                         btnToogleAll.Create();
00702                                         btnToogleAll.XDockRight(3,30);
00703                                         btnToogleAll.YDockCenter(2,2);
00704                                 ce.Pop();
00705
00706                                 // boutton imbriqué "set"
00707                                 btnSet="Set";
00708                                 btnSet.Create();
00709                                 btnSet.XDockLeft(3,80);
00710                                 btnSet.YDockBottom(3,40);
00711                                 btnSet.text.SetAlign(align_begin,align_center);
00712                                 btnSet.onButton.click.connect(this,OnSet);
00713                                 btnSetAll.onButton.click.connect(this,OnSetAll);
00714                                 ce.Push(&btnSet);
00715                                         ce.primitive.GoTo(FACE_FRONT);
00716                                         btnSetAll="All";
00717                                         btnSetAll.Create();
00718                                         btnSetAll.XDockRight(3,30);
00719                                         btnSetAll.YDockCenter(2,2);
00720                                 ce.Pop();
00721
00722                                 // boutton imbriqué "reset"
00723                                 btnReset="Reset";
00724                                 btnReset.Create();
00725                                 btnReset.XDockRight(3,80);
00726                                 btnReset.YDockBottom(3,40);
00727                                 btnReset.text.SetAlign(align_begin,align_center);
00728                                 btnReset.onButton.click.connect(this,OnReset);
00729                                 btnResetAll.onButton.click.connect(this,OnResetAll);
00730                                 ce.Push(&btnReset);
00731                                         ce.primitive.GoTo(FACE_FRONT);
00732                                         btnResetAll="All";
00733                                         btnResetAll.Create();
00734                                         btnResetAll.XDockRight(3,30);
00735                                         btnResetAll.YDockCenter(2,2);
00736                                 ce.Pop();
00737                         ce.Pop();
00738                 }
00739
00740                 void CreateTreeButton(int level)
00741                 {
00742                         if (level)
00743                         {
00744                                 Button *button;
00745                                 if (!(level%2))
00746                                 {       //si impaire ne fait qu'un boutton
00747                                         button = buttons.i.AddNewLast();
00748                                         ce.primitive.GoTo(FACE_FRONT);
00749                                         ConfigTreeButton(button,level*6);
00750                                         ce.Push(button);
00751                                                 CreateTreeButton(level-1);
00752                                         ce.Pop();
00753                                 }
00754                                 else
00755                                 {
00756                                         for (int i=0;i<6;i++)
00757                                         {
00758                                                 button = buttons.i.AddNewLast();
00759                                                 ce.primitive.GoTo(i);
00760                                                 ConfigTreeButton(button,level*6+i);
00761                                                 ce.Push(button);
00762                                                         CreateTreeButton(level-1);
00763                                                 ce.Pop();
00764                                                 ce.primitive.GoToParent();
00765                                         }
00766                                 }
00767                         }
00768                 }
00769
00770                 void ConfigTreeButton (Button *button,int num)
00771                 {
00772                         button->Create(40);
00773                         button->ModePushLike(TRUE);
00774                         button->ModeAllButtons(TRUE);
00775                         button->XDockCenter(5,5);
00776                         button->YDockCenter(5,5);
00777                         //button->onButton.click_sender.connect(this,OnTreeButtonClick);
00778                         MyString txtButton;
00779                         txtButton = materials[num%NB_MATERIAL].name;
00780                         //txtButton<<"n°"<<num;
00781                         button->SetBlending(TRUE);
00782                         button->faceNode->Elems(FACE_BACK)->material.As((TypeMaterial)num);
00783                         ConfigTextFace(&button->text,txtButton);
00784
00785                         for (int i=1;i<5;i++)
00786                         {
00787                                 Text3D *text = new Text3D;
00788                                 button->faceNode->Elems(i)->text = text;
00789                                 ConfigTextFace(text,txtButton);
00790                         }
00791                 }
00792
00793                 void ConfigTextFace(Text3D *text,char *textValue)
00794                 {
00795                         text->Setup(ce.fontTexture);
00796                         text->SetText(textValue);
00797                         text->material.SetDS(1,0,0);
00798                         text->scale=0.5;
00799                         text->SetWrapping(FALSE,FALSE,TRUE);
00800                         text->SetAlign(align_center,align_center);
00801                 }
00802
00803                 int OnTreeButtonClick(Control *sender)
00804                 {
00805                         Button *button = (Button *)sender;
00806                         lastSelected = button;
00807                         return 1;
00808                 }
00809
00810                 int OnToogle()
00811                 {
00812                         if (!lastSelected) return 1;
00813                         lastSelected->SetPushToogle();
00814                         return 1;
00815                 }
00816
00817                 int OnToogleAll()
00818                 {
00819                         for (buttons.i=0;buttons.i.More();buttons.i++)
00820                         {
00821                                 buttons.i.GetElemPtr()->SetPushToogle();
00822                         }
00823                         return 1;
00824                 }
00825
00826                 int OnReset()
00827                 {
00828                         if (!lastSelected) return 1;
00829                         lastSelected->SetPush(FALSE);
00830                         return 1;
00831                 }
00832
00833                 int OnResetAll()
00834                 {
00835                         for (buttons.i=0;buttons.i.More();buttons.i++)
00836                                 buttons.i.GetElemPtr()->SetPush(FALSE);
00837                         return 1;
00838                 }
00839
00840                 int OnSet()
00841                 {
00842                         if (!lastSelected) return 1;
00843                         lastSelected->SetPush(TRUE);
00844                         return 1;
00845                 }
00846
00847                 int OnSetAll()
00848                 {
00849                         for (buttons.i=0;buttons.i.More();buttons.i++)
00850                                 buttons.i.GetElemPtr()->SetPush(TRUE);
00851                         return 1;
00852                 }
00853
00854                 int OnEnd()
00855                 {
00856                         btnTree.Delete();
00857                         window.Delete();
00858                         Ending();
00859                         return 1;
00860                 }
00861         };
00862
00863         class WindowDemo  : public Demo
00864         {
00865         public:
00866                 Window *windowLeft;
00867                 Window *windowRight;
00868                 Window *windowTop;
00869                 Window *windowBottom;
00870
00871                 WindowDemo(Tutorial *_parent) : Demo(_parent)
00872                 {
00873                         parent->tip.SetText("The Window as a docking Title, he can:\nMinimize, Maximize, Moving, Close and Rotate");
00874                         parent->btnReturn.onButton.click.connect(this,OnEnd);
00875
00876                         ce.taskWindow->title.OnOriginal();
00877
00878                         ce.Push(ce.univers);
00879
00880                         Face *face;
00881                         windowLeft=new Window;
00882                         windowLeft->titleDock=left;
00883                         windowLeft->title.SetText("Left");
00884                         windowLeft->Create();
00885                         windowLeft->RotateTo(0,33,0);
00886                         windowLeft->XDockLeft(10,150);
00887                         windowLeft->YDockCenter(200);
00888                         face = windowLeft->client.faceNode->Elems(FACE_FRONT);
00889                         face->text = new Text3D;
00890                         face->text->Setup(ce.fontTexture);
00891                         face->text->SetAlign();
00892                         face->text->material.SetDS(0,0,0);
00893                         face->text->SetText("I can write text on client area !!");
00894
00895                         windowRight=new Window;
00896                         windowRight->titleDock=right;
00897                         windowRight->Create();
00898                         windowRight->title.SetText("Right");
00899                         windowRight->RotateTo(0,-33,0);
00900                         windowRight->XDockRight(10,150);
00901                         windowRight->YDockCenter(200);
00902                         face = windowRight->client.faceNode->Elems(FACE_FRONT);
00903                         face->text = new Text3D;
00904                         face->text->Setup(ce.fontTexture);
00905                         face->text->SetAlign();
00906                         face->text->material.SetDS(0,0,0);
00907                         face->text->SetText("I can write text on client area !!");
00908
00909                         windowTop=new Window;
00910                         windowTop->titleDock=top;
00911                         windowTop->Create();
00912                         windowTop->title.SetText("Top");
00913                         windowTop->RotateTo(33,0,0);
00914                         windowTop->XDockCenter(200);
00915                         windowTop->YDockTop(10,150);
00916                         face = windowTop->client.faceNode->Elems(FACE_FRONT);
00917                         face->text = new Text3D;
00918                         face->text->Setup(ce.fontTexture);
00919                         face->text->SetAlign();
00920                         face->text->material.SetDS(0,0,0);
00921                         face->text->SetText("I can write text on client area !!");
00922
00923                         windowBottom=new Window;
00924                         windowBottom->titleDock=bottom;
00925                         windowBottom->Create();
00926                         windowBottom->title.SetText("bottom");
00927                         face = windowBottom->client.faceNode->Elems(FACE_FRONT);
00928                         face->text = new Text3D;
00929                         face->text->Setup(ce.fontTexture);
00930                         face->text->SetAlign();
00931                         face->text->material.SetDS(0,0,0);
00932                         face->text->SetText("I can write text on client area !!");
00933
00934                         windowBottom->RotateTo(-33,0,0);
00935                         windowBottom->XDockCenter(200);
00936                         windowBottom->YDockBottom(10,150);
00937
00938                         ce.primitive.Pop();
00939                 }
00940
00941                 int OnEnd()
00942                 {
00943                         ce.taskWindow->title.OnMin();
00944                         Ending();
00945                         delete windowLeft;
00946                         delete windowRight;
00947                         delete windowTop;
00948                         delete windowBottom;
00949                         return 1;
00950                 }
00951         };
00952
00953         class ApplicationDemo  : public Demo
00954         {
00955         public:
00956                 Calculator *calc;
00957                 Window *winExplorer;
00958                 Window *winBackground;
00959                 TreeDirectory * tdBkg;
00960                 TreeDirectory * tdExplorer;
00961                 TextBox pathBox;
00962
00963                 ApplicationDemo(Tutorial *_parent) : Demo(_parent)
00964                 {
00965                         parent->tip.SetText("This is some sample of basic application using 3D Controls");
00966                         parent->btnReturn.onButton.click.connect(this,OnEnd);
00967                         ce.taskWindow->title.OnOriginal();
00968                         calc=new Calculator;
00969
00970                         ce.Push(ce.univers);
00971                                 calc->Create();
00972                                 calc->XDockCenter(94);
00973                                 calc->YDockCenter(224);
00974
00975                                 winBackground = new Window;
00976                                 winBackground->Create();
00977                                 winBackground->title.SetText("Backgrounds");
00978                                 winBackground->XDockLeft(20,200);
00979                                 winBackground->YDockCenter(400);
00980                                 ce.Push(&winBackground->client);
00981                                 {
00982                                         tdBkg = new TreeDirectory;
00983                                         tdBkg->Create();
00984                                         tdBkg->XDockCenter(2,2);
00985                                         tdBkg->YDockCenter(2,2);
00986                                         tdBkg->Config(TRUE,TRUE);
00987                                         tdBkg->Loading("texture/background",FALSE);
00988                                         tdBkg->Draw();
00989                                         tdBkg->onTreeView.select.connect(this,OnSelectBkg);
00990                                 }
00991                                 ce.Pop();
00992
00993                                 winExplorer = new Window;
00994                                 winExplorer->Create();
00995                                 winExplorer->title.SetText("Explorer");
00996                                 winExplorer->XDockRight(20,200);
00997                                 winExplorer->YDockCenter(400);
00998                                 ce.Push(&winExplorer->client);
00999                                 {
01000                                         pathBox.Create();
01001                                         pathBox.XDockCenter(2,2);
01002                                         pathBox.YDockTop(2,60);
01003                                         pathBox.text.SetAlign(align_begin,align_begin);
01004                                         pathBox.text.SetWrapping(FALSE,FALSE,FALSE);
01005
01006                                         tdExplorer = new TreeDirectory;
01007                                         tdExplorer->Create();
01008                                         tdExplorer->XDockCenter(2,2);
01009                                         tdExplorer->YDockBottom(2,300);
01010                                         tdExplorer->Config(FALSE,TRUE);
01011                                         tdExplorer->Loading("c:",TRUE);
01012                                         tdExplorer->Draw();
01013                                         tdExplorer->onTreeView.select.connect(this,OnSelectExplorer);
01014                                 }
01015                                 ce.Pop();
01016                         ce.Pop();
01017                 }
01018
01019                 int OnSelectBkg(TreeNode *treeNode)
01020                 {
01021                         MyString file;
01022                         tdBkg->GetTreePath(treeNode,file);
01023                         ce.texture.background.FromFile("background",file,TRUE);
01024                         return 0;
01025                 }
01026
01027                 int OnSelectExplorer(TreeNode *treeNode)
01028                 {
01029                         MyString file;
01030                         tdExplorer->GetTreePath(treeNode,file);
01031                         MyString complete;
01032                         complete<<"Path:\n"<<file;
01033                         pathBox.text.SetText(complete);
01034                         return 0;
01035                 }
01036
01037                 int OnEnd()
01038                 {
01039                         ce.taskWindow->title.OnMin();
01040                         Ending();
01041                         delete calc;
01042                         return 1;
01043                 }
01044         };
01045
01046         FaceDemo *fd;
01047         UniversDemo *ud;
01048         BaseDemo *db;
01049         LayoutDemo *ld;
01050         WindowDemo *wd;
01051         ApplicationDemo *ad;
01052
01053         Tutorial()
01054         {
01055                 fd = NULL;
01056                 ud = NULL;
01057                 db = NULL;
01058                 ld = NULL;
01059                 wd =NULL;
01060                 ad = NULL;
01061                 ce.taskWindow->title.OnMin();
01062
01063                 title="3D Controls - Tutorial";
01064                 title.useClose=FALSE;
01065                 title.useMax=FALSE;
01066                 title.useMin=FALSE;
01067
01068                 info="Here are 6 steps to familiarize with the 3D Controls.";
01069                 info.text.SetAlign(align_justify,align_center);
01070
01071                 btnUniversDemo="1°) How to move on the desktop:\nThe \"Univers\" concept.";
01072                 btnUniversDemo.text.SetAlign(align_justify,align_center);
01073
01074                 btnFaceDemo="2°) Basic graphical concepts:\nThe \"Face\" concept.";
01075                 btnFaceDemo.text.SetAlign(align_justify,align_center);
01076
01077                 btnBaseDemo="3°) See the basic controls.";
01078                 btnBaseDemo.text.SetAlign(align_justify,align_center);
01079
01080                 btnLayoutDemo="4°) How to position a control next to another ?";
01081                 btnLayoutDemo.text.SetAlign(align_justify,align_center);
01082
01083                 btnWindowDemo="5°) The Window is the basic container of the application.";
01084                 btnWindowDemo.text.SetAlign(align_justify,align_center);
01085
01086                 btnApplicationDemo="6°) Examples of applications for 3D Controls.";
01087                 btnApplicationDemo.text.SetAlign(align_justify,align_center);
01088
01089                 btnUniversDemo.onButton.click.connect(this,OnUniversDemo);
01090                 btnFaceDemo.onButton.click.connect(this,OnFaceDemo);
01091                 btnBaseDemo.onButton.click.connect(this,OnBaseDemo);
01092                 btnLayoutDemo.onButton.click.connect(this,OnLayoutDemo);
01093                 btnWindowDemo.onButton.click.connect(this,OnWindowDemo);
01094                 btnApplicationDemo.onButton.click.connect(this,OnApplicationDemo);
01095         }
01096
01097         ~Tutorial()
01098         {
01099                 ce.taskWindow->title.OnOriginal();
01100         }
01101
01102         void Create()
01103         {
01104                 ce.Push(ce.masterContainer);
01105
01106                 Window::Create();
01107                 canResize=FALSE;
01108                 canRotate=FALSE;
01109
01110                 XDockCenter(300);
01111                 YDockCenter(394);
01112                 ce.Push(&client);
01113                         ce.primitive.GoTo(FACE_FRONT);
01114                         info.Create();
01115                         int yPos = 2;
01116                         info.XDockCenter(2,0);
01117                         info.YDockTop(yPos,50);
01118
01119                         yPos+=52;
01120                         btnUniversDemo.Create();
01121                         btnUniversDemo.XDockCenter(2,0);
01122                         btnUniversDemo.YDockTop(yPos,50);
01123
01124                         yPos+=52;
01125                         btnFaceDemo.Create();
01126                         btnFaceDemo.XDockCenter(2,0);
01127                         btnFaceDemo.YDockTop(yPos,50);
01128
01129                         yPos+=52;
01130                         btnBaseDemo.Create();
01131                         btnBaseDemo.XDockCenter(2,0);
01132                         btnBaseDemo.YDockTop(yPos,50);
01133
01134                         yPos+=52;
01135                         btnLayoutDemo.Create();
01136                         btnLayoutDemo.XDockCenter(2,0);
01137                         btnLayoutDemo.YDockTop(yPos,50);
01138
01139                         yPos+=52;
01140                         btnWindowDemo.Create();
01141                         btnWindowDemo.XDockCenter(2,0);
01142                         btnWindowDemo.YDockTop(yPos,50);
01143
01144                         yPos+=52;
01145                         btnApplicationDemo.Create();
01146                         btnApplicationDemo.XDockCenter(2,0);
01147                         btnApplicationDemo.YDockTop(yPos,50);
01148
01149                         yPos+=52;
01150
01151                         ce.Push(ce.masterContainer);
01152                         tip.Create();
01153                         tip.XDockCenter(10,10);
01154                         tip.YDockBottom(10,50);
01155                         ce.Pop();
01156                         SetTutorialTipText();
01157                 ce.Pop();
01158
01159                 btnReturn.Create();
01160                 btnReturn.SetText("<< Back");
01161                 btnReturn.XDockRight(10,65);
01162                 btnReturn.YDockTop(10,20);
01163                 btnReturn.onButton.click.connect(this,OnEnd);
01164                 ce.Pop();
01165
01166                 effect.Bind(faceNode);
01167                 effect.Start(FALSE,1);
01168         }
01169
01170         void SetTutorialTipText()
01171         {
01172                 tip.SetText("Welcom to \"3D Controls\" user tutorial");
01173         }
01174
01175         void DestroyDemos()
01176         {
01177                 if (fd) { delete fd; fd=NULL;}
01178                 if (ud) { delete ud; ud=NULL;}
01179                 if (db) { delete db; db=NULL;}
01180                 if (ld) { delete ld; ld=NULL;}
01181                 if (wd) {delete wd; wd=NULL;}
01182                 if (ad) {delete ad; ad=NULL;}
01183         }
01184
01185         int OnUniversDemo()
01186         {
01187                 OnUniversDemoStart();
01188                 //effect.onEnding.connect(this,OnUniversDemoStart);
01189                 //effect.Start(TRUE,1);
01190                 return 1;
01191         }
01192
01193         int OnFaceDemo()
01194         {
01195                 OnFaceDemoStart();
01196                 //effect.onEnding.connect(this,OnFaceDemoStart);
01197                 //effect.Start(TRUE,1);
01198                 return 1;
01199         }
01200
01201         int OnBaseDemo()
01202         {
01203                 OnBaseDemoStart();
01204                 //effect.onEnding.connect(this,OnBaseDemoStart);
01205                 //effect.Start(TRUE,1);
01206                 return 1;
01207         }
01208
01209         int OnLayoutDemo()
01210         {
01211                 OnLayoutDemoStart();
01212                 //effect.onEnding.connect(this,OnLayoutDemoStart);
01213                 //effect.Start(TRUE,1);
01214                 return 1;
01215         }
01216
01217         int  OnWindowDemo()
01218         {
01219                 OnWindowDemoStart();
01220                 //effect.onEnding.connect(this,OnWindowDemoStart);
01221                 //effect.Start(TRUE,1);
01222                 return 1;
01223         }
01224
01225         int OnApplicationDemo()
01226         {
01227                 OnApplicationDemoStart();
01228                 //effect.onEnding.connect(this,OnApplicationDemoStart);
01229                 //effect.Start(TRUE,1);
01230                 return 1;
01231         }
01232         void OnUniversDemoStart()
01233         {
01234                 DestroyDemos();
01235                 UniversDemo * ud = new UniversDemo(this);
01236         }
01237
01238         void OnFaceDemoStart()
01239         {
01240                 DestroyDemos();
01241                 FaceDemo *fd = new FaceDemo(this);
01242         }
01243
01244         void OnBaseDemoStart()
01245         {
01246                 DestroyDemos();
01247                 BaseDemo *bd = new BaseDemo(this);
01248         }
01249
01250         void OnLayoutDemoStart()
01251         {
01252                 DestroyDemos();
01253                 LayoutDemo *ld = new LayoutDemo(this);
01254         }
01255
01256         void OnWindowDemoStart()
01257         {
01258                 DestroyDemos();
01259                 WindowDemo *wd = new WindowDemo(this);
01260         }
01261
01262         void OnApplicationDemoStart()
01263         {
01264                 DestroyDemos();
01265                 ApplicationDemo *ad = new ApplicationDemo(this);
01266         }
01267         int OnEnd()
01268         {
01269                 ce.univers->ExitQuestion();
01270                 return 1;
01271         }
01272 };
01273
01274 class Demo : public has_slots<>
01275 {
01276 public:
01277         Timer timer;
01278         Tip tip[6];
01279
01280         Demo()
01281         {
01282                 ce.taskWindow->title.OnMin();
01283                 ce.univers->faceNode->elem->position.z=-700;
01284
01285                 char text[][100]={
01286                         "Il y a bien longtemp",
01287                         "Tres tres longtemp",
01288                         "Trop même ...",
01289                         "Mais c'est finis !",
01290                         "Quoi ???",
01291                         "DE TROP PARLER"
01292                 };
01293
01294                 ce.Push(ce.masterContainer);
01295                 for (int i=0;i<6;i++)
01296                 {
01297                         tip[i].Create();
01298                         tip[i].XDockCenter(200);
01299                         tip[i].YDockCenter(200);
01300                         tip[i].SetText(text[i]);
01301                         tip[i].faceNode->elem->position.z=-i*800;
01302                         tip[i].SetAlphaBlending(0);
01303                         tip[i].text.material.SetDS(0,0,0,0.8f);
01304                 }
01305                 ce.Pop();
01306
01307                 BindTimer(timer,OnTimer,10);
01308         }
01309
01310         int OnTimer(Timer *)
01311         {
01312                 ce.univers->faceNode->elem->position.z.constValue +=10;
01313                 ce.univers->Rotate(0.1,0.2,0);
01314                 for (int i=0;i<6;i++)
01315                 {
01316                         tip[i].faceNode->elem->position.z.constValue+=10;
01317                 }
01318                 return 0;
01319         }
01320 };
01321
01322 int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
01323 {
01324         MyDebug::Start();
01325         ce.Start(hInstance);
01326
01327         //Demo demo;
01328         Tutorial tutorial;
01329         tutorial.Create();
01330
01331         ce.Loop();
01332         return 0;
01333 }
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: angles.cpp File Reference

angles.cpp File Reference

#include "angles.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: angles.cpp Source File

angles.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "angles.h"
00020
00021 void Angles::Zero()
00022 {
00023         isUpdatedEuler=TRUE;
00024         isUpdatedQuaternion=TRUE;
00025         euler.Zero();
00026 }
00027
00028 Angles::Angles()
00029 {
00030         Zero();
00031 }
00032
00033 void Angles::operator= (Angles &src)
00034 {
00035         quaternion=src.quaternion;
00036         euler=src.euler;
00037         isUpdatedEuler=src.isUpdatedEuler;
00038         isUpdatedQuaternion=src.isUpdatedQuaternion;
00039 }
00040
00041 Point3D<double> Angles::GetEuler()
00042 {
00043         if (!isUpdatedEuler)
00044         {
00045                 euler = quaternion.to_euler();
00046                 isUpdatedEuler=TRUE;
00047         }
00048         return euler;
00049 }
00050
00051 Angles::Angles(Point3D<double> &relativeAngles)
00052 {
00053         Zero();
00054         Set(relativeAngles);
00055 }
00056
00057 Angles::Angles(double x,double y,double z)
00058 {
00059         Zero();
00060         Set(x,y,z);
00061 }
00062
00063 void Angles::Rotate(Point3D<double> &relativeAngles)
00064 {
00065         if (!isUpdatedQuaternion)
00066         {
00067                 quaternion.from_euler(euler);
00068                 isUpdatedQuaternion=TRUE;
00069         }
00070         Quaternion qrotate;
00071         qrotate.from_euler(relativeAngles);
00072         quaternion*=qrotate;
00073 }
00074
00075 void Angles::Rotate(double x,double y,double z)
00076 {
00077         if (!isUpdatedQuaternion)
00078         {
00079                 quaternion.from_euler(euler);
00080                 isUpdatedQuaternion=TRUE;
00081         }
00082         Quaternion qrotate;
00083         Point3D<double> rotate(x,y,z);
00084         qrotate.from_euler(rotate);
00085         quaternion*=qrotate;
00086         isUpdatedEuler=FALSE;
00087 }
00088
00089 void Angles::Set(Point3D<double> &relativeAngles)
00090 {
00091         euler=relativeAngles;
00092         isUpdatedQuaternion=FALSE;
00093 }
00094
00095 void Angles::Set(double x,double y,double z)
00096 {
00097         euler.Set(x,y,z);
00098         isUpdatedQuaternion=FALSE;
00099 }
00100
00101 void Angles::Add(Point3D<double> &relativeAngles)
00102 {
00103         if (relativeAngles.IsNotNull())
00104         {
00105                 euler+=relativeAngles;
00106                 isUpdatedQuaternion=FALSE;
00107         }
00108 }
00109
00110 void Angles::Add(double x,double y,double z)
00111 {
00112         if (x||y||z)
00113         {
00114                 euler.Add(x,y,z);
00115                 isUpdatedQuaternion=FALSE;
00116         }
00117 }
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: angles.h File Reference

angles.h File Reference

Gestion mixe des angles d'euler et quaternion. More...

#include "trigo.h"
#include "include/quaternion.h"

Go to the source code of this file.

Classes

class Angles

Detailed Description

Gestion mixe des angles d'euler et quaternion.

Definition in file angles.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: angles.h Source File

angles.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_ANGLES_H
00024 #define INCLUDE_ANGLES_H
00025
00026 #include "trigo.h"
00027 #include "include/quaternion.h"
00028
00029
00030 class Angles
00031 {
00032 private:
00033         Quaternion quaternion;
00034         Point3D<double> euler;
00035         BOOL isUpdatedEuler;
00036         BOOL isUpdatedQuaternion;
00037
00038         void Zero();
00039
00040 public:
00041         Angles();
00042         Point3D<double> GetEuler();
00043         void operator= (Angles &src);
00044
00045         Angles(Point3D<double> &relativeAngles);
00046         void Rotate(Point3D<double> &relativeAngles);
00047         void Set(Point3D<double> &relativeAngles);
00048         void Add(Point3D<double> &relativeAngles);
00049
00050         Angles(double x,double y,double z) ;
00051         void Rotate(double x,double y,double z);
00052         void Set(double x,double y,double z);
00053         void Add(double x,double y,double z);
00054 };
00055
00056 #endif
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ARB_Multisample.cpp File Reference

ARB_Multisample.cpp File Reference

#include <windows.h>
#include <gl/gl.h>
#include <gl/glu.h>
#include "arb_multisample.h"

Go to the source code of this file.

Defines

#define | WGL_SAMPLE_BUFFERS_ARB 0x2041
#define | WGL_SAMPLES_ARB 0x2042

Functions

bool | WGLisExtensionSupported (const char *extension)
bool | InitMultisample (HINSTANCE hInstance, HWND hWnd, PIXELFORMATDESCRIPTOR pfd)

Variables

bool | arbMultisampleSupported = false
int | arbMultisampleFormat = 0

Define Documentation

#define WGL_SAMPLE_BUFFERS_ARB 0x2041

Definition at line 18 of file ARB_Multisample.cpp.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_SAMPLES_ARB 0x2042

Definition at line 19 of file ARB_Multisample.cpp.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

Function Documentation

bool InitMultisample | ( | HINSTANCE | hInstance,
 |  | HWND | hWnd,
 |  | PIXELFORMATDESCRIPTOR | pfd
 | ) |

Definition at line 65 of file ARB_Multisample.cpp.

References arbMultisampleFormat, arbMultisampleSupported, HDC(), WGL_ACCELERATION_ARB, WGL_ALPHA_BITS_ARB, WGL_COLOR_BITS_ARB, WGL_DEPTH_BITS_ARB, WGL_DOUBLE_BUFFER_ARB, WGL_DRAW_TO_WINDOW_ARB, WGL_FULL_ACCELERATION_ARB, WGL_SAMPLE_BUFFERS_ARB, WGL_SAMPLES_ARB, WGL_STENCIL_BITS_ARB, WGL_SUPPORT_OPENGL_ARB, and WGLisExtensionSupported().

bool WGLisExtensionSupported ( const char * extension )

Definition at line 25 of file ARB_Multisample.cpp.

References HDC(), and p.

Referenced by InitMultisample().

Variable Documentation

int arbMultisampleFormat = 0

Definition at line 22 of file ARB_Multisample.cpp.

Referenced by InitMultisample().

bool arbMultisampleSupported = false

Definition at line 21 of file ARB_Multisample.cpp.

Referenced by InitMultisample().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ARB_Multisample.cpp Source File

ARB_Multisample.cpp

Go to the documentation of this file.
00001 /*========================================================================================
00002
00003   Name:   ARB_multisample.cpp
00004         Author: Colt "MainRoach" McAnlis
00005         Date:   4/29/04
00006         Desc:   This file contains the context to load a WGL extension from a string
00007                     As well as collect the sample format available based upon the graphics card.
00008
00009 ========================================================================================*/
00010
00011 #include <windows.h>
00012 #include <gl/gl.h>
00013 #include <gl/glu.h>
00014
00015 #include "arb_multisample.h"
00016
00017 // Declairations We'll Use
00018 #define WGL_SAMPLE_BUFFERS_ARB           0x2041
00019 #define WGL_SAMPLES_ARB                      0x2042
00020
00021 bool    arbMultisampleSupported = false;
00022 int             arbMultisampleFormat    = 0;
00023
00024 // WGLisExtensionSupported: This Is A Form Of The Extension For WGL
00025 bool WGLisExtensionSupported(const char *extension)
00026 {
00027         const size_t extlen = strlen(extension);
00028         const char *supported = NULL;
00029
00030         // Try To Use wglGetExtensionStringARB On Current DC, If Possible
00031         PROC wglGetExtString = wglGetProcAddress("wglGetExtensionsStringARB");
00032
00033         if (wglGetExtString)
00034                 supported = ((char*(__stdcall*)(HDC))wglGetExtString)(wglGetCurrentDC());
00035
00036         // If That Failed, Try Standard Opengl Extensions String
00037         if (supported == NULL)
00038                 supported = (char*)glGetString(GL_EXTENSIONS);
00039
00040         // If That Failed Too, Must Be No Extensions Supported
00041         if (supported == NULL)
00042                 return false;
00043
00044         // Begin Examination At Start Of String, Increment By 1 On False Match
00045         for (const char* p = supported; ; p++)
00046         {
00047                 // Advance p Up To The Next Possible Match
00048                 p = strstr(p, extension);
00049
00050                 if (p == NULL)
00051                         return false;                                                                                                                   // No Match
00052
00053                 // Make Sure That Match Is At The Start Of The String Or That
00054                 // The Previous Char Is A Space, Or Else We Could Accidentally
00055                 // Match "wglFunkywglExtension" With "wglExtension"
00056
00057                 // Also, Make Sure That The Following Character Is Space Or NULL
00058                 // Or Else "wglExtensionTwo" Might Match "wglExtension"
00059                 if ((p==supported || p[-1]==' ') && (p[extlen]=='\0' || p[extlen]==' '))
00060                         return true;                                                                                                                    // Match
00061         }
00062 }
00063
00064 // InitMultisample: Used To Query The Multisample Frequencies
00065 bool InitMultisample(HINSTANCE hInstance,HWND hWnd,PIXELFORMATDESCRIPTOR pfd)
00066 {
00067          // See If The String Exists In WGL!
00068         if (!WGLisExtensionSupported("WGL_ARB_multisample"))
00069         {
00070                 arbMultisampleSupported=false;
00071                 return false;
00072         }
00073
00074         // Get Our Pixel Format
00075         PFNWGLCHOOSEPIXELFORMATARBPROC wglChoosePixelFormatARB = (PFNWGLCHOOSEPIXELFORMATARBPROC)wglGetProcAddress("wglChoosePixelFormatARB");
00076         if (!wglChoosePixelFormatARB)
00077         {
00078                 arbMultisampleSupported=false;
00079                 return false;
00080         }
00081
00082         // Get Our Current Device Context
00083         HDC hDC = GetDC(hWnd);
00084
00085         int             pixelFormat;
00086         int             valid;
00087         UINT    numFormats;
00088         float   fAttributes[] = {0,0};
00089
00090         // These Attributes Are The Bits We Want To Test For In Our Sample
00091         // Everything Is Pretty Standard, The Only One We Want To
00092         // Really Focus On Is The SAMPLE BUFFERS ARB And WGL SAMPLES
00093         // These Two Are Going To Do The Main Testing For Whether Or Not
00094         // We Support Multisampling On This Hardware.
00095         int iAttributes[] =
00096         {
00097                 WGL_DRAW_TO_WINDOW_ARB,GL_TRUE,
00098                 WGL_SUPPORT_OPENGL_ARB,GL_TRUE,
00099                 WGL_ACCELERATION_ARB,WGL_FULL_ACCELERATION_ARB,
00100                 WGL_COLOR_BITS_ARB,24,
00101                 WGL_ALPHA_BITS_ARB,8,
00102                 WGL_DEPTH_BITS_ARB,16,
00103                 WGL_STENCIL_BITS_ARB,0,
00104                 WGL_DOUBLE_BUFFER_ARB,GL_TRUE,
00105                 WGL_SAMPLE_BUFFERS_ARB,GL_TRUE,
00106                 WGL_SAMPLES_ARB,4,
00107                 0,0
00108         };
00109
00110         // First We Check To See If We Can Get A Pixel Format For 4 Samples
00111         valid = wglChoosePixelFormatARB(hDC,iAttributes,fAttributes,1,&pixelFormat,&numFormats);
00112
00113         // If We Returned True, And Our Format Count Is Greater Than 1
00114         if (valid && numFormats >= 1)
00115         {
00116                 arbMultisampleSupported = true;
00117                 arbMultisampleFormat = pixelFormat;
00118                 return arbMultisampleSupported;
00119         }
00120
00121         // Our Pixel Format With 4 Samples Failed, Test For 2 Samples
00122         iAttributes[19] = 2;
00123         valid = wglChoosePixelFormatARB(hDC,iAttributes,fAttributes,1,&pixelFormat,&numFormats);
00124         if (valid && numFormats >= 1)
00125         {
00126                 arbMultisampleSupported = true;
00127                 arbMultisampleFormat = pixelFormat;
00128                 return arbMultisampleSupported;
00129         }
00130
00131         // Return The Valid Format
00132         return  arbMultisampleSupported;
00133 }
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ARB_Multisample.h File Reference

ARB_Multisample.h File Reference

#include "wglext.h"
#include "glext.h"

Go to the source code of this file.

Defines

#define | CHECK_FOR_MULTISAMPLE 1

Functions

bool | InitMultisample (HINSTANCE hInstance, HWND hWnd, PIXELFORMATDESCRIPTOR pfd)

Variables

bool | arbMultisampleSupported
int | arbMultisampleFormat

Define Documentation

#define CHECK_FOR_MULTISAMPLE 1

Definition at line 21 of file ARB_Multisample.h.

Function Documentation

bool InitMultisample | ( | HINSTANCE | hInstance,
 |  | HWND | hWnd,
 |  | PIXELFORMATDESCRIPTOR | pfd
 | ) |

Definition at line 65 of file ARB_Multisample.cpp.

References arbMultisampleFormat, arbMultisampleSupported, HDC(), WGL_ACCELERATION_ARB, WGL_ALPHA_BITS_ARB, WGL_COLOR_BITS_ARB, WGL_DEPTH_BITS_ARB, WGL_DOUBLE_BUFFER_ARB, WGL_DRAW_TO_WINDOW_ARB, WGL_FULL_ACCELERATION_ARB, WGL_SAMPLE_BUFFERS_ARB, WGL_SAMPLES_ARB, WGL_STENCIL_BITS_ARB, WGL_SUPPORT_OPENGL_ARB, and WGLisExtensionSupported().

Variable Documentation

int arbMultisampleFormat

Definition at line 18 of file ARB_Multisample.h.

Referenced by InitMultisample().

bool arbMultisampleSupported

Definition at line 17 of file ARB_Multisample.h.

Referenced by InitMultisample().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ARB_Multisample.h Source File

ARB_Multisample.h

Go to the documentation of this file.
00001 /*====================================
00002         Name: ARB_multisample.h
00003         Author: Colt "MainRoach" McAnlis
00004         Date: 4/29/04
00005         Desc:
00006                 This file contains our external items
00007
00008 ====================================*/
00009
00010 #ifndef __ARB_MULTISAMPLE_H__
00011 #define __ARB_MULTISAMPLE_H__
00012
00013 #include "wglext.h"             //WGL extensions
00014 #include "glext.h"              //GL extensions
00015
00016 //Globals
00017 extern bool     arbMultisampleSupported;
00018 extern int arbMultisampleFormat;
00019
00020 //If you don't want multisampling, set this to 0
00021 #define CHECK_FOR_MULTISAMPLE 1
00022
00023 //to check for our sampling
00024 bool InitMultisample(HINSTANCE hInstance,HWND hWnd,PIXELFORMATDESCRIPTOR pfd);
00025
00026 #endif
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: array.cpp File Reference

array.cpp File Reference

#include "array.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: array.cpp Source File

array.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 // sans .cpp par d'obj donc temp de compilation augmenté
00020
00021 #include "array.h"
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: array.h File Reference

array.h File Reference

tableau dynamique More...

#include <stdio.h>
#include <windows.h>

Go to the source code of this file.

Classes

class Array

Detailed Description

tableau dynamique

Utilisation

Array<double> tabDouble1(10),tabDouble2(10);
tabDouble1.Set(0,0.111);
tabDouble1.Set(1,1.111);
//-ou-
tabDouble1.values[0]=0.111;
tabDouble2=tabDouble1;

Todo:
allocation par block pour optimiser les perfs

Definition in file array.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: array.h Source File

array.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00034 #ifndef INCLUDE_ARRAY_H
00035 #define INCLUDE_ARRAY_H
00036
00037 #include <stdio.h>
00038 #include <windows.h>
00039
00040 template <class T>
00041 class Array
00042 {
00043 public:
00044         int size;
00045         T *values;
00046
00047         Array()
00048         {
00049         }
00050
00051         Array(int _size)
00052         {
00053                 Init(_size);
00054         }
00055
00056         ~Array()
00057         {
00058                 Delete();
00059         }
00060
00061         void operator = (Array &src)
00062         {
00063                 size=src.size;
00064         }
00065
00066         void Init(int _size)
00067         {
00068                 size=_size;
00069                 values=NULL;
00070         }
00071
00072         void New()
00073         {
00074                 Delete();
00075                 values = new T[size];
00076                 Zero();
00077         }
00078
00079         void Zero()
00080         {
00081                 operator=(0);
00082         }
00083
00085         void operator=(int val)
00086         {
00087                 for (int i=0;i<size;i++) values[i]=0;
00088         }
00089
00090         void Delete()
00091         {
00092                 if (values)
00093                 {
00094                         delete values;
00095                         Init(size);
00096                 }
00097         }
00098
00099         BOOL Set(int num,T value)
00100         {
00101                 if (!values||num>=size) return FALSE;
00102                 values[num]=value;
00103                 return TRUE;
00104         }
00105 };
00106
00107 #endif
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: box.h File Reference

box.h File Reference

Gestion de Boite 3D. More...

#include "coordonate.h"
#include "material.h"

Go to the source code of this file.

Classes

class Box3D
Affiche une boite en 3D. More...

Detailed Description

Gestion de Boite 3D.

Definition in file box.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: box.h Source File

box.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_BOX
00024 #define INCLUDE_3D_BOX
00025
00026 #include "coordonate.h"
00027 #include "material.h"
00028
00033 class Box3D
00034 {
00035 public:
00036         Material material;
00037         Coordonate<GLfloat> coor;
00038         Coordonate<GLfloat> delta;
00039
00040 public:
00041         Box3D()
00042         {
00043                 Zero();
00044         }
00045
00046         void Zero()
00047         {
00048                 coor.Zero();
00049                 delta.Zero();
00050                 material.Zero();
00051         }
00052
00053         void operator=(Box3D &source)
00054         {
00055                 material=source.material;
00056                 coor=source.coor;
00057                 delta=source.delta;
00058         }
00059
00060         void Draw()
00061         {
00062                 float x1 = coor.x;
00063                 float x2 = x1+delta.x;
00064                 float y1 = coor.y;
00065                 float y2 = y1+delta.y;
00066                 float z1 = coor.z;
00067                 float z2 = z1+delta.z;
00068
00069                 material.Use();
00070                 glDisable(GL_BLEND);
00071                 glDisable(GL_TEXTURE_2D);
00072                 glBegin(GL_QUADS);
00073
00074                 glVertex3f(x1,y1,z1);
00075                 glVertex3f(x2,y1,z1);
00076                 glVertex3f(x2,y2,z1);
00077                 glVertex3f(x1,y2,z1);
00078
00079                 glVertex3f(x1,y1,z1);
00080                 glVertex3f(x1,y1,z2);
00081                 glVertex3f(x1,y2,z2);
00082                 glVertex3f(x1,y2,z1);
00083
00084                 glVertex3f(x1,y1,z1);
00085                 glVertex3f(x2,y1,z1);
00086                 glVertex3f(x2,y1,z2);
00087                 glVertex3f(x1,y1,z2);
00088
00089                 glVertex3f(x2,y1,z1);
00090                 glVertex3f(x2,y1,z2);
00091                 glVertex3f(x2,y2,z2);
00092                 glVertex3f(x2,y2,z1);
00093
00094                 glVertex3f(x1,y2,z1);
00095                 glVertex3f(x2,y2,z1);
00096                 glVertex3f(x2,y2,z2);
00097                 glVertex3f(x1,y2,z2);
00098
00099                 glVertex3f(x1,y1,z2);
00100                 glVertex3f(x2,y1,z2);
00101                 glVertex3f(x2,y2,z2);
00102                 glVertex3f(x1,y2,z2);
00103                 glEnd();
00104         }
00105
00106         void CenterIt()
00107         {
00108                 coor.x-=delta.x/2.0f;
00109                 coor.y-=delta.y/2.0f;
00110                 coor.z-=delta.z/2.0f;
00111         }
00112 };
00113
00114 #endif
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: button.cpp File Reference

button.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "myList.h"
#include "texture.h"
#include "equations.h"
#include "button.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 27 of file button.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: button.cpp Source File

button.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "myList.h"
00023 #include "texture.h"
00024 #include "equations.h"
00025 #include "button.h"
00026
00027 extern ControlEngine ce;
00028
00029 Button::Button()
00030 {
00031         // init variable
00032         name="Button";
00033         depth_min = DEFAULT_DEPTH_MIN_BUTTON;
00034         depth_max = DEFAULT_DEPTH_MAX_BUTTON;
00035         depth_cur = depth_max;
00036         timeOut = TIME_OUT_PUSH_DOWN_BUTTON;
00037         isPushed = FALSE;
00038         pushLikeMode = FALSE;
00039         allButtonMode = FALSE;
00040         materialOnUp.SetDS(0.6f,0.6f,0.6f);
00041         materialOnDown.SetDS(0.9f,0.9f,0.9f);
00042         materialCurrent = &materialOnUp;
00043
00044         //init du text
00045         text.SetAlign(align_center,align_center);
00046         //text.Setup(ce.fontPolygon,ft_polygon); // marche
00047         //text.Setup(ce.fontOutline,ft_outline); // marche
00048         //text.Setup(ce.fontExtrude,ft_extrude); // affichage pb de lumiere
00049         //text.depth=10;
00050         text.Setup(ce.fontTexture,ft_texture); // affiche que les textures dans un quads
00051         text.material.SetDS(0,0,0);
00052
00053         // gestion des evenements
00054         onControl.mouse.left.down.connect(this,OnPushDown);
00055         onControl.mouse.left.up.connect(this,OnPushUp);
00056         onControl.over.out.connect(this,OnOverOut);
00057         onControl.over.in.connect(this,OnOverIn);
00058 }
00059
00060 Button::~Button()
00061 {
00062 }
00063
00064 // ********************************************************************************
00065
00066 void Button::Create(double depth)
00067 {
00068         // init general
00069         SetParent();
00070         depth_max = depth;
00071         depth_cur = depth;
00072         faceNode = ce.primitive.AddBox(name,id,&depth_cur,FALSE);
00073         faceNode->Elems(FACE_FRONT)->text=&text; // attache le text
00074         faceNode->elem->material=*materialCurrent;
00075 }
00076
00077 // ********************************************************************************
00078
00079 int Button::OnPushDown(StateMouse *mouse,int face)
00080 {
00081         DebugMouse2("Button::OnPushDown",mouse,face);
00082         ce.cursor.ApplyTypes(cursorPush,cursorArrow);
00083
00084         if (pushLikeMode)
00085         {
00086                 SetPushToogle();
00087                 onButton.checked(isPushed);
00088                 return 0;
00089         }
00090         if (isPushed) timerPushDown.GetDeltaTime(TRUE);
00091         else
00092         {
00093                 isPushed=TRUE;
00094                 materialCurrent = &materialOnDown;
00095                 faceNode->elem->material = *materialCurrent;
00096                 BindTimer(timerPushDown,OnTimerPushDown,20);
00097         }
00098         return 0;
00099 }
00100
00101 // ********************************************************************************
00102
00103 int Button::OnTimerPushDown(Timer *timer)
00104 {
00105         Debug0Param("Button::OnTimerPushDown()");
00106         double time = timer->GetDeltaTime();
00107         double depth_delta = depth_max-depth_min;
00108
00109         if (time<timeOut) depth_cur=depth_min+Equ_1SURX(1.0-(time/timeOut))*depth_delta;
00110         else
00111         {
00112                 depth_cur=depth_min;
00113                 timer->Stop();
00114         }
00115         return 0;
00116 }
00117
00118 // ********************************************************************************
00119
00120 void Button::SetPush(BOOL enable)
00121 {
00122         isPushed=enable;
00123         depth_cur=isPushed?depth_min:depth_max;
00124 }
00125
00126 void Button::SetPushToogle()
00127 {
00128         SetPush(!isPushed);
00129 }
00130
00132 BOOL Button::GetPush()
00133 {
00134         return isPushed;
00135 }
00136
00137 int Button::OnPushUp(StateMouse *mouse,int face)
00138 {
00139         DebugMouse2("Button::OnPushUp",mouse,face);
00140         ce.cursor.ApplyTypes(cursorArrow,cursorPush);
00141         BOOL isPushedCopy = isPushed;
00142         if (!pushLikeMode) PushUp();
00143         if (isPushedCopy) onButton.click();
00144         return 0;
00145 }
00146
00148 void Button::ModePushLike(BOOL enable)
00149 {
00150         pushLikeMode = enable;
00151 }
00152
00154 void Button::ModeAllButtons(BOOL enable)
00155 {
00156         if (allButtonMode==enable) return;
00157         allButtonMode = enable;
00158         if (enable)
00159         {
00160                 onControl.mouse.mid.down.connect(this,OnPushDown);
00161                 onControl.mouse.mid.up.connect(this,OnPushUp);
00162                 onControl.mouse.right.down.connect(this,OnPushDown);
00163                 onControl.mouse.right.up.connect(this,OnPushUp);
00164         }
00165         else
00166         {
00167                 onControl.mouse.mid.down.disconnect(this);
00168                 onControl.mouse.mid.up.disconnect(this);
00169                 onControl.mouse.right.down.disconnect(this);
00170                 onControl.mouse.right.up.disconnect(this);
00171         }
00172 }
00173
00178 void Button::PushUp()
00179 {
00180         if (isPushed)
00181         {
00182                 materialCurrent = &materialOnUp;
00183                 faceNode->elem->material = *materialCurrent;
00184                 timerPushDown.Stop();
00185                 depth_cur=depth_max;
00186                 isPushed=FALSE;
00187         }
00188 }
00189
00190 // ********************************************************************************
00191
00192 int Button::OnOverIn(Control *oldControl,int face)
00193 {
00194         Debug2Param("Button::OnOverIn(oldCtrl:%s,face:%d)",(char *)oldControl->name,face);
00195         ce.cursor.ApplyTypes(cursorArrow,cursorPush,cursorNothing,cursorNothing);
00196         return 0;
00197 }
00198
00199 int Button::OnOverOut(Control *newControl,int face)
00200 {
00201         Debug2Param("Button::OnOverOut(newCtrl:%s,face:%d)",(char *)newControl->name,face);
00202         if (!pushLikeMode) PushUp();
00203         return 0;
00204 }
00205
00206 // ********************************************************************************
00207
00208 void Button::operator=(char *newCaption)
00209 {
00210         text.SetText(newCaption);
00211 }
00212
00213 void Button::SetText(char *newCaption)
00214 {
00215         text.SetText(newCaption);
00216 }
00217
00218 // ********************************************************************************
00219
00220 void Button::ToString(MyString &str)
00221 {
00222         str.AddFormat("name: %s caption:%s",name,caption);
00223 }
00224
00225 // ********************************************************************************
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: button.h File Reference

button.h File Reference

Control Button. More...

#include "control.h"

Go to the source code of this file.

Classes

class | EventButton
class | Button
Class de parametre et d'evenement d'un "Bouton". More...

Detailed Description

Control Button.

Definition in file button.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: button.h Source File

button.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_BUTTON_H
00024 #define INCLUDE_BUTTON_H
00025
00026 #include "control.h"
00027
00028 class EventButton
00029 {
00030 public:
00031         signal0<> click; // call: void Click();
00032         signal1<BOOL> checked; // call: void Checked(BOOL isPush);
00033 };
00034
00040 class Button : public Control
00041 {
00042 private:
00043         // config des modes
00044         BOOL pushLikeMode;
00045         BOOL allButtonMode;
00046
00047         int OnTimerPushDown(Timer *timer);
00048
00049 public:
00050         // varaible membre
00051         MyString caption;
00052         double depth_max,depth_min,depth_cur;
00053         double timeOut;
00054         BOOL isPushed;
00055         Material materialOnUp;
00056         Material materialOnDown;
00057         Material *materialCurrent;
00058         Text3D text;
00059
00060         // evenements
00061         EventButton onButton;
00062         Timer timerPushDown;
00063
00064         Button();
00065         ~Button();
00066
00067         virtual void Create() { Create(DEFAULT_DEPTH_MAX_BUTTON); } // Createur pour container
00068         void Create(double depth);
00069         void operator=(char *newCaption);
00070         void SetText(char *newCaption);
00071         void ToString(MyString &str);
00072         void PushUp();
00073
00074         void SetPush(BOOL enable);
00075         void SetPushToogle();
00076         BOOL GetPush();
00077
00078         void ModePushLike(BOOL enable);
00079         void ModeAllButtons(BOOL enable);
00080
00081         int OnPushDown(StateMouse *mouse,int face);
00082         int OnPushUp(StateMouse *mouse,int face);
00083         int OnOverOut(Control *newControl,int face);
00084         int OnOverIn(Control *oldControl,int face);
00085 };
00086
00087 #endif
Generated on Fri Aug 20 19:19:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: calculator.cpp File Reference

calculator.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "calculator.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 24 of file calculator.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: calculator.cpp Source File

calculator.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "calculator.h"
00023
00024 extern ControlEngine ce;
00025
00026 Opperation::Opperation()
00027 {
00028         number = 0;
00029         op=Op_Null;
00030 }
00031
00032 void Opperation::operator=(Opperation &src)
00033 {
00034         number=src.number;
00035         op=src.op;
00036 }
00037
00038 void Opperation::GetText(MyString &result)
00039 {
00040         switch (op)
00041         {
00042         case Op_Null: result="Null"; break;
00043         case Op_Add: result="+"; break;
00044         case Op_Sub: result="-"; break;
00045         case Op_Mult: result="*"; break;
00046         case Op_Div: result="/"; break;
00047         default: result="Error";
00048         }
00049 }
00050
00051 double Opperation::Compute(double param1,TOpperation op,double param2)
00052 {
00053         switch (op)
00054         {
00055         case Op_Null: return param1;
00056         case Op_Add: return param1+param2;
00057         case Op_Sub: return param1-param2;
00058         case Op_Mult: return param1*param2;
00059         case Op_Div: return !param2?-1:param1/param2;
00060         default: return -1;
00061         }
00062 }
00063
00064 // *********************************************************************
00065
00066 Calculator::Calculator()
00067 {
00068         lineCur="0";
00069         txtResult=lineCur;
00070         txtResult.text.SetAlign(align_begin,align_begin);
00071
00072         title="Calc";
00073         title.useMax=FALSE;
00074
00075         // gestion evenement de touche
00076         onControl.key.down.connect(this,OnKey);
00077         client.onControl.key.down.connect(this,OnKey);
00078         for (int i=0;i<10;i++) btnNumbers[i].onControl.key.down.connect(this,OnKey);
00079         btnAdd.onControl.key.down.connect(this,OnKey);
00080         btnSub.onControl.key.down.connect(this,OnKey);
00081         btnDiv.onControl.key.down.connect(this,OnKey);
00082         btnMult.onControl.key.down.connect(this,OnKey);
00083         btnEqual.onControl.key.down.connect(this,OnKey);
00084         btnDot.onControl.key.down.connect(this,OnKey);
00085         btnEqual.onControl.key.down.connect(this,OnKey);
00086
00087         // config des trouches numerique
00088         btnNumbers[0]="0";
00089         btnNumbers[0].onButton.click.connect(this,OnNum0);
00090         btnNumbers[1]="1";
00091         btnNumbers[1].onButton.click.connect(this,OnNum1);
00092         btnNumbers[2]="2";
00093         btnNumbers[2].onButton.click.connect(this,OnNum2);
00094         btnNumbers[3]="3";
00095         btnNumbers[3].onButton.click.connect(this,OnNum3);
00096         btnNumbers[4]="4";
00097         btnNumbers[4].onButton.click.connect(this,OnNum4);
00098         btnNumbers[5]="5";
00099         btnNumbers[5].onButton.click.connect(this,OnNum5);
00100         btnNumbers[6]="6";
00101         btnNumbers[6].onButton.click.connect(this,OnNum6);
00102         btnNumbers[7]="7";
00103         btnNumbers[7].onButton.click.connect(this,OnNum7);
00104         btnNumbers[8]="8";
00105         btnNumbers[8].onButton.click.connect(this,OnNum8);
00106         btnNumbers[9]="9";
00107         btnNumbers[9].onButton.click.connect(this,OnNum9);
00108
00109         // config touche operation
00110         btnEqual="=";
00111         btnEqual.onButton.click.connect(this,OnEqual);
00112         btnAdd="+";
00113         btnAdd.onButton.click.connect(this,OnAdd);
00114         btnSub="-";
00115         btnSub.onButton.click.connect(this,OnSub);
00116         btnMult="*";
00117         btnMult.onButton.click.connect(this,OnMult);
00118         btnDiv="/";
00119         btnDiv.onButton.click.connect(this,OnDiv);
00120         btnDot=".";
00121         btnDot.onButton.click.connect(this,OnDot);
00122         btnClear="C";
00123         btnClear.onButton.click.connect(this,OnClear);
00124 }
00125
00126 void Calculator::Create()
00127 {
00128         ce.Push(ce.univers);
00129         Window::Create();
00130         canResize=FALSE;
00131         textureIcon.FromBitmap("calculator icon","texture/control/calculator icon.bmp");
00132         title.btnIcon.faceNode->Elems(FACE_FRONT)->texture=&textureIcon;
00133
00134         ce.Push(&client);
00135         ce.primitive.GoTo(FACE_FRONT); // a l'avant
00136
00137         // text resultat
00138         txtResult.Create();
00139         txtResult.XDockCenter(2,0);
00140         txtResult.YDockTop(2,80);
00141
00142         int posX=2,posY=84;
00143         int dx=20,dy=20;
00144         btnClear.Create();
00145         btnClear.XDockLeft(posX,dx);
00146         btnClear.YDockTop(posY,dy);
00147         btnDiv.Create();
00148         btnDiv.XDockLeft(posX+dx+2,dx);
00149         btnDiv.YDockTop(posY,dy);
00150         btnMult.Create();
00151         btnMult.XDockLeft(posX+(dx+2)*2,dx);
00152         btnMult.YDockTop(posY,dy);
00153         btnSub.Create();
00154         btnSub.XDockLeft(posX+(dx+2)*3,dx);
00155         btnSub.YDockTop(posY,dy);
00156
00157         posY+=22;
00158         btnNumbers[7].Create();
00159         btnNumbers[7].XDockLeft(posX+(dx+2)*0,dx);
00160         btnNumbers[7].YDockTop(posY,dy);
00161         btnNumbers[8].Create();
00162         btnNumbers[8].XDockLeft(posX+(dx+2)*1,dx);
00163         btnNumbers[8].YDockTop(posY,dy);
00164         btnNumbers[9].Create();
00165         btnNumbers[9].XDockLeft(posX+(dx+2)*2,dx);
00166         btnNumbers[9].YDockTop(posY,dy);
00167         btnAdd.Create();
00168         btnAdd.XDockLeft(posX+(dx+2)*3,dx);
00169         btnAdd.YDockTop(posY,dy*2+2);
00170
00171         posY+=22;
00172         btnNumbers[4].Create();
00173         btnNumbers[4].XDockLeft(posX+(dx+2)*0,dx);
00174         btnNumbers[4].YDockTop(posY,dy);
00175         btnNumbers[5].Create();
00176         btnNumbers[5].XDockLeft(posX+(dx+2)*1,dx);
00177         btnNumbers[5].YDockTop(posY,dy);
00178         btnNumbers[6].Create();
00179         btnNumbers[6].XDockLeft(posX+(dx+2)*2,dx);
00180         btnNumbers[6].YDockTop(posY,dy);
00181
00182         posY+=22;
00183         btnNumbers[1].Create();
00184         btnNumbers[1].XDockLeft(posX+(dx+2)*0,dx);
00185         btnNumbers[1].YDockTop(posY,dy);
00186         btnNumbers[2].Create();
00187         btnNumbers[2].XDockLeft(posX+(dx+2)*1,dx);
00188         btnNumbers[2].YDockTop(posY,dy);
00189         btnNumbers[3].Create();
00190         btnNumbers[3].XDockLeft(posX+(dx+2)*2,dx);
00191         btnNumbers[3].YDockTop(posY,dy);
00192         btnEqual.Create();
00193         btnEqual.XDockLeft(posX+(dx+2)*3,dx);
00194         btnEqual.YDockTop(posY,dy*2+2);
00195
00196         posY+=22;
00197         btnNumbers[0].Create();
00198         btnNumbers[0].XDockLeft(posX+(dx+2)*0,dx*2+2);
00199         btnNumbers[0].YDockTop(posY,dy);
00200         btnDot.Create();
00201         btnDot.XDockLeft(posX+(dx+2)*2,dx);
00202         btnDot.YDockTop(posY,dy);
00203         ce.Pop();
00204
00205         //affichage arriere:
00206         ce.Push(this);
00207         ce.primitive.GoTo(FACE_BACK);
00208         txtResultBase.Create();
00209         txtResultBase.XDockCenter(2,2);
00210         txtResultBase.YDockCenter(2,2);
00211         txtResultBase.faceNode->elem->angle.z=180;
00212         txtResultBase.text.SetAlign(align_begin,align_center);
00213         ce.Pop();
00214         ce.Pop();
00215 }
00216
00217 void Calculator::MajResult()
00218 {
00219         MyString text,txtOp;
00220         for (lOpperation.i=0;lOpperation.i.More();lOpperation.i++)
00221         {
00222                 Opperation *oppCur = lOpperation.i.GetElemPtr();
00223                 oppCur->GetText(txtOp);
00224                 text<<oppCur->number<<" "<<txtOp<<"\n";
00225         }
00226         text<<lineCur;
00227         txtResult=text;
00228 }
00229
00230 void Calculator::Compute()
00231 {
00232         double result=0;
00233         double value;
00234         TOpperation oldOp=Op_Null;
00235         BOOL isFirst=TRUE;
00236
00237         for (lOpperation.i=0;lOpperation.i.More();lOpperation.i++)
00238         {
00239                 Opperation *oppCur = lOpperation.i.GetElemPtr();
00240                 if (isFirst) { result=oppCur->number; isFirst=FALSE; }
00241                 else result = Opperation::Compute(result,oldOp,oppCur->number);
00242                 oldOp=oppCur->op;
00243         }
00244         sscanf(lineCur,"%lf",&value);
00245         result = Opperation::Compute(result,oldOp,value);
00246         lineCur.Format("%lf",result);
00247         lOpperation.i.SuprAll();
00248         MyString str(result);
00249         txtResult=str;
00250
00251         MyString resultBase;
00252         str="";
00253         str<<"Hexa:\n";
00254         resultBase.EnterHexaNumber((int)result);
00255         str<<resultBase<<"\n";
00256         str<<"Bin:\n";
00257         resultBase.EnterBinNumber((int)result);
00258         str<<resultBase;
00259         txtResultBase=str;
00260 }
00261
00262 int Calculator::OnKey(StateKey *key,int face)
00263 {
00264         switch (key->code)
00265         {
00266         case VK_NUMPAD0:
00267         case VK_NUMPAD1:
00268         case VK_NUMPAD2:
00269         case VK_NUMPAD3:
00270         case VK_NUMPAD4:
00271         case VK_NUMPAD5:
00272         case VK_NUMPAD6:
00273         case VK_NUMPAD7:
00274         case VK_NUMPAD8:
00275         case VK_NUMPAD9: OnNum(key->code-VK_NUMPAD0); return 1;
00276         case VK_DECIMAL: OnDot(); return 1;;
00277         case VK_ADD: OnAdd(); return 1;
00278         case VK_SUBTRACT: OnSub(); return 1;
00279         case VK_DIVIDE: OnDiv(); return 1;
00280         case VK_MULTIPLY: OnMult(); return 1;
00281         case VK_RETURN: OnEqual(); return 1;
00282         case VK_DELETE: OnClear(); return 1;
00283         case VK_ESCAPE: Delete(); return 1;
00284         }
00285         return 1;
00286 }
00287
00288 void Calculator::OnNum(int num)
00289 {
00290         if (lineCur=="0") lineCur="";
00291         lineCur<<(char)('0'+num);
00292         MajResult();
00293
00294 }
00295 int Calculator::OnNum0() { OnNum(0); return 0;}
00296 int Calculator::OnNum1() { OnNum(1); return 0;}
00297 int Calculator::OnNum2() { OnNum(2); return 0;}
00298 int Calculator::OnNum3() { OnNum(3); return 0;}
00299 int Calculator::OnNum4() { OnNum(4); return 0;}
00300 int Calculator::OnNum5() { OnNum(5); return 0;}
00301 int Calculator::OnNum6() { OnNum(6); return 0;}
00302 int Calculator::OnNum7() { OnNum(7); return 0;}
00303 int Calculator::OnNum8() { OnNum(8); return 0;}
00304 int Calculator::OnNum9() { OnNum(9); return 0;}
00305
00306 int Calculator::OnDot()
00307 {
00308         lineCur<<'.';
00309         MajResult();
00310         return 1;
00311 }
00312
00313 int Calculator::OnClear()
00314 {
00315         lineCur="0";
00316         lOpperation.i.SuprAll();
00317         MajResult();
00318         return 1;
00319 }
00320
00321 int Calculator::OnEqual()
00322 {
00323         Compute();
00324         return 1;
00325 }
00326
00327 int Calculator::OnAdd()
00328 {
00329         double result;
00330         sscanf(lineCur,"%lf",&result);
00331         Opperation op;
00332         op.number=result;
00333         op.op=Op_Add;
00334         lOpperation.i+=op;
00335         lineCur="0";
00336         MajResult();
00337         return 1;
00338 }
00339
00340 int Calculator::OnSub()
00341 {
00342         if (lineCur=="0") lineCur="-";
00343         else if (lineCur=="-") lineCur="0";
00344         else
00345         {
00346                 double result;
00347                 sscanf(lineCur,"%lf",&result);
00348                 Opperation op;
00349                 op.number=result;
00350                 op.op=Op_Sub;
00351                 lOpperation.i+=op;
00352                 lineCur="0";
00353         }
00354         MajResult();
00355         return 1;
00356 }
00357
00358 int Calculator::OnMult()
00359 {
00360         double result;
00361         sscanf(lineCur,"%lf",&result);
00362         Opperation op;
00363         op.number=result;
00364         op.op=Op_Mult;
00365         lOpperation.i+=op;
00366         lineCur="0";
00367         MajResult();
00368         return 1;
00369 }
00370
00371 int Calculator::OnDiv()
00372 {
00373         double result;
00374         sscanf(lineCur,"%lf",&result);
00375         Opperation op;
00376         op.number=result;
00377         op.op=Op_Div;
00378         lOpperation.i+=op;
00379         lineCur="0";
00380         MajResult();
00381         return 1;
00382 }
00383
00384 int Calculator::OnOk()
00385 {
00386         OnClose();
00387         return 1;
00388 }
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: calculator.h File Reference

calculator.h File Reference

Control Calculator. More...

#include "window.h"

Go to the source code of this file.

Classes

class | Opperation
class | Calculator
Class de parametre et d'evenement d'un "Calculator". More...

Enumerations

enum TOpperation {
Op_Null, Op_Add, Op_Sub, Op_Div,
Op_Mult
}

Detailed Description

Control Calculator.

Definition in file calculator.h.

Enumeration Type Documentation

enum TOpperation

Enumeration values:
Op_Null
Op_Add
Op_Sub
Op_Div
Op_Mult

Definition at line 28 of file calculator.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: calculator.h Source File

calculator.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_CALCULATOR_H
00024 #define INCLUDE_CALCULATOR_H
00025
00026 #include "window.h"
00027
00028 typedef enum
00029 {
00030         Op_Null,Op_Add,Op_Sub,Op_Div,Op_Mult
00031 } TOpperation;
00032
00033 class Opperation
00034 {
00035 public:
00036         double number;
00037         TOpperation op;
00038
00039         Opperation();
00040         void operator=(Opperation &src);
00041         void GetText(MyString &result);
00042         static double Compute(double param1,TOpperation op,double param2);
00043 };
00044
00050 class Calculator : public Window
00051 {
00052 private:
00053         Button btnNumbers[10];
00054         Button btnAdd;
00055         Button btnSub;
00056         Button btnDiv;
00057         Button btnMult;
00058         Button btnEqual;
00059         Button btnDot;
00060         Button btnClear;
00061         TextBox txtResult;
00062         TextBox txtResultBase;
00063         MyList<Opperation> lOpperation;
00064
00065         Texture textureIcon;
00066         MyString lineCur;
00067
00068         void MajResult();
00069         void Compute();
00070
00071 public:
00072         Calculator();
00073         void Create();
00074
00075         int OnKey(StateKey *key,int face);
00076         void OnNum(int num);
00077         int OnNum0();
00078         int OnNum1();
00079         int OnNum2();
00080         int OnNum3();
00081         int OnNum4();
00082         int OnNum5();
00083         int OnNum6();
00084         int OnNum7();
00085         int OnNum8();
00086         int OnNum9();
00087         int OnDot();
00088         int OnClear();
00089         int OnEqual();
00090         int OnAdd();
00091         int OnSub();
00092         int OnMult();
00093         int OnDiv();
00094         int OnOk();
00095 };
00096
00097 #endif
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: color.cpp File Reference

color.cpp File Reference

#include "3d.h"
#include "color.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: color.cpp Source File

color.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 #include "3d.h"
00020 #include "color.h"
00021
00022 Color::Color()
00023 {
00024         Zero();
00025 }
00026
00027 Color::Color (float r,float g,float b,float a)
00028 {
00029         Set(r,g,b,a);
00030 }
00031
00032 Color::Color (float rgba)
00033 {
00034 }
00035 void Color::Zero()
00036 {
00037         r=0;
00038         g=0;
00039         b=0;
00040         a=1;
00041         isEnable = FALSE;
00042 }
00043
00044 void Color::operator=(Color &source)
00045 {
00046         r = source.r;
00047         g = source.g;
00048         b = source.b;
00049         a = source.a;
00050         isEnable = source.isEnable;
00051 }
00052
00053 void Color::operator=(float *source)
00054 {
00055         r = source[0];
00056         g = source[1];
00057         b = source[2];
00058         a = source[3];
00059         isEnable = TRUE;
00060 }
00061
00062 void Color::SetNull()
00063 {
00064         Set(0,0,0,0);
00065 }
00066
00067 void Color::SetFull()
00068 {
00069         Set(1,1,1,1);
00070 }
00071
00072 void Color::Set(float _r,float _g,float _b)
00073 {
00074         r = _r;
00075         g = _g;
00076         b = _b;
00077         isEnable = TRUE;
00078 }
00079
00080 void Color::Set(float _r,float _g,float _b,float _a)
00081 {
00082         r = _r;
00083         g = _g;
00084         b = _b;
00085         a = _a;
00086         isEnable = TRUE;
00087 }
00088
00089 Color::operator float *() const
00090 {
00091         return (float *)&value;
00092 }
00093 void Color::ToString (MyString &text)
00094 {
00095         text<<"[enable,r,g,b,a]: "<<isEnable<<" , "<<r<<" , "<<g<<" , "<<b<<" , "<<a;
00096 }
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: color.h File Reference

color.h File Reference

Gestion des couleur en 3D. More...

Go to the source code of this file.

Classes

struct | RGBA
class | Color
Gestion des couleurs en 3D valeur de [0;1] parametre: value ou {r,g,b,a}. More...

Detailed Description

Gestion des couleur en 3D.

Definition in file color.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: color.h Source File

color.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_COLOR_H
00024 #define INCLUDE_3D_COLOR_H
00025
00026 typedef struct
00027 {
00028         float r;
00029         float g;
00030         float b;
00031         float a;
00032 } RGBA;
00033
00040 class Color
00041 {
00042 public:
00043         union
00044         {
00045                 float value[4];
00046                 struct
00047                 {
00048                         float r;
00049                         float g;
00050                         float b;
00051                         float a;
00052                 };
00053         };
00054         BOOL isEnable;
00055
00056 public:
00057         Color();
00058         Color(float r,float g,float b,float a);
00059         Color(float rgba);
00060         void Zero();
00061         void operator=(Color &source);
00062         void operator=(float *source);
00063
00064         void SetNull();
00065         void SetFull();
00066         void Set(float _r,float _g,float _b);
00067         void Set(float _r,float _g,float _b,float _a);
00068         operator float *() const;
00069         void ToString (MyString &text);
00070 };
00071
00072 #endif
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: communTools.cpp File Reference

communTools.cpp File Reference

#include <windows.h>
#include "CommunTools.h"
#include "MyString.h"
#include <stdio.h>

Go to the source code of this file.

Functions

void | DrawTextOnFirstPlan (char *text, BOOL shadowMode)
void | MyOpenBrowser (char *url)
Ouvre un browser internet, utilise un ShellExecute.

void | ErrorMessage (BOOL useLastError, UINT type, const TCHAR *message,...)
BOOL | Run (char *exe, char *message)
void | MailTo (char *eMail)

Function Documentation

void DrawTextOnFirstPlan | ( | char * | text,
 |  | BOOL | shadowMode
 | ) |

Definition at line 8 of file communTools.cpp.

References HDC(), and len.

void ErrorMessage | ( | BOOL | useLastError,
 |  | UINT | type,
 |  | const TCHAR * | message,
 |  | ... |
 | ) |

Definition at line 99 of file communTools.cpp.

References buffer, and type.

Referenced by SysTrayProc().

void MailTo ( char * eMail )

Definition at line 209 of file communTools.cpp.

Referenced by AboutProc().

void MyOpenBrowser ( char * url )

Ouvre un browser internet, utilise un ShellExecute.

Definition at line 53 of file communTools.cpp.

References q, and type.

Referenced by AboutProc(), and SysTrayProc().

BOOL Run | ( | char * | exe,
 |  | char * | message
 | ) |

Definition at line 160 of file communTools.cpp.

References BOOL().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: communTools.cpp Source File

communTools.cpp

Go to the documentation of this file.
00001 #include <windows.h>
00002 #include "CommunTools.h"
00003 #include "MyString.h"
00004 #include <stdio.h>
00005
00006 // ***********************************************************************************
00007
00008 void DrawTextOnFirstPlan(char *text,BOOL shadowMode)
00009 {
00010         int len = (int)strlen(text);
00011         HWND hWnd = GetDesktopWindow();
00012         HDC hDC = GetDC(NULL);
00013
00014         HFONT hFont = CreateFont(100,45,0,0,0,0,0,0,0,0,0,0,0,"Arial");
00015         HFONT hFontOld = (HFONT) SelectObject(hDC,hFont);
00016         RECT rect;
00017         GetWindowRect(hWnd,&rect);
00018
00019         SetBkMode(hDC,TRANSPARENT);
00020
00021         if (shadowMode)
00022         {
00023                 SetTextColor(hDC, RGB(64,64,64));
00024                 for (int i=0;i<3;i++)
00025                 {
00026                         for (int j=0;j<3;j++)
00027                         {
00028                                 DrawText(hDC,text,len,&rect,DT_CENTER|DT_VCENTER|DT_SINGLELINE);
00029                                 rect.right+=1;
00030                                 rect.left+=1;
00031                         }
00032                         rect.right-=3;
00033                         rect.left-=3;
00034                         rect.bottom+=1;
00035                         rect.top+=1;
00036                 }
00037
00038                 // affiche le text
00039                 rect.right+=1;
00040                 rect.left+=1;
00041                 rect.bottom-=2;
00042                 rect.top-=2;
00043         }
00044         SetTextColor(hDC, RGB(0,255,0));
00045         DrawText(hDC,text,len,&rect,DT_CENTER|DT_VCENTER|DT_SINGLELINE);
00046         SelectObject(hDC,hFontOld);
00047 }
00048
00053 void MyOpenBrowser(char *url)
00054 {
00055         char Browser[MAX_PATH];
00056         char RegPath[MAX_PATH + MAX_PATH];
00057         char RegValue [MAX_PATH + MAX_PATH] ;
00058         DWORD DataSize = MAX_PATH;
00059         static HINSTANCE hShell=NULL;
00060         DWORD type = REG_SZ ;
00061         HKEY hKey;
00062
00063         RegOpenKeyEx(HKEY_CLASSES_ROOT, ".htm", 0, KEY_QUERY_VALUE, &hKey);
00064         RegQueryValueEx(hKey,NULL,NULL,&type,(unsigned char *)RegPath,&DataSize);
00065         RegCloseKey(hKey);
00066
00067         strcat(RegPath,"\\shell\\open\\command");
00068         DataSize = MAX_PATH*2; type = REG_SZ ;
00069         RegOpenKeyEx(HKEY_CLASSES_ROOT, RegPath,0, KEY_QUERY_VALUE ,&hKey) ;
00070         RegQueryValueEx(hKey,NULL,NULL,&type,(unsigned char *)RegValue,&DataSize) ;
00071
00072         RegCloseKey(hKey);
00073
00074         char *pos = strstr(RegValue,"\"%1\"");
00075         if(!pos )
00076         {
00077                 pos = strstr(RegValue,"%1");
00078                 if(pos == NULL) pos = RegValue+strlen(RegValue)-1;
00079                 else  *pos = '\0';
00080         } else *pos = '\0';
00081         pos = strstr(RegValue, " -") ;
00082         if (pos != NULL) *pos = '\0' ;
00083         char *q = Browser ;
00084         for (size_t i = 0; i < strlen (RegValue) ; i++)
00085         {
00086                 if (RegValue[i] != '\"')
00087                 {
00088                         *q = RegValue[i];
00089                         q++ ;
00090                 }
00091         }
00092         *q = '\0' ;
00093
00094         ShellExecute(NULL,"open",Browser,url,NULL,SW_SHOW);
00095 }
00096
00097 // *************************************************************************************************************************
00098
00099 void ErrorMessage(BOOL useLastError, UINT type, const TCHAR* message, ...)
00100 {
00101         const INT bufferSize = 4096;
00102         static TCHAR buffer[bufferSize];
00103
00104         if(message != NULL)
00105         {
00106                 va_list ap;
00107                 va_start(ap, message);
00108                 vsprintf(buffer, message, ap);
00109                 va_end(ap);
00110         }
00111         else
00112                 lstrcpy(buffer, TEXT(""));
00113
00114         if(useLastError)
00115         {
00116                 DWORD lastError = GetLastError();
00117
00118                 TCHAR* lastErrorMsg = NULL;
00119                 DWORD size = FormatMessage(
00120                         FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
00121                         NULL,
00122                         lastError,
00123                         0,
00124                         (TCHAR*)&lastErrorMsg,
00125                         bufferSize / 2,
00126                         NULL);
00127                 if(size == 0)
00128                         SetLastError(lastError);
00129
00130                 const TCHAR unknownError[] = TEXT("Unknown error.");
00131
00132                 if(lstrlen(buffer) > 0)
00133                 {
00134                         static TCHAR temp[bufferSize];
00135                         wsprintf(
00136                                 temp,
00137                                 TEXT("%s\n\n%s"),
00138                                 buffer,
00139                                 (lastErrorMsg != NULL) ?
00140 lastErrorMsg : unknownError);
00141                         lstrcpy(buffer, temp);
00142                 }
00143                 else
00144                         lstrcpy(
00145                         buffer,
00146                         (lastErrorMsg != NULL) ?
00147 lastErrorMsg : unknownError);
00148
00149                 if(lastErrorMsg != NULL)
00150                         LocalFree(lastErrorMsg);
00151         }
00152
00153         HWND hWndFocus = GetFocus();
00154         MessageBox(NULL, buffer, "Error on 3D Controls", type);
00155         if(hWndFocus != NULL && IsWindow(hWndFocus)) SetFocus(hWndFocus);
00156 }
00157
00158 // *********************************************************************************
00159
00160 BOOL Run(char *exe,char *message)
00161 {
00162         char *prog = exe;
00163         char *parameter = NULL;
00164
00165         char sep=' ';
00166         if (exe[0]=='\"')
00167         {
00168                 sep='\"';
00169                 prog++;
00170         }
00171
00172         for (unsigned int i=0;i<strlen(prog);i++)
00173                 if (prog[i]==sep)
00174                 {
00175                         if (i<(strlen(prog)-1)) parameter = prog+i+1+(sep=='\"');
00176                         prog[i]='\0';
00177                         break;
00178                 }
00179
00180                 HINSTANCE hInstExe = ShellExecute(NULL,"open",prog,parameter,NULL,SW_SHOW);
00181                 BOOL state =FALSE;
00182                 MyString textErr;
00183                 switch ((long)hInstExe)
00184                 {
00185                 case 0:  textErr="The operating system is out of memory or resources."; break;
00186                 case ERROR_FILE_NOT_FOUND: textErr="The specified file was not found."; break;
00187                 case ERROR_PATH_NOT_FOUND: textErr="The specified path was not found."; break;
00188                 case ERROR_BAD_FORMAT: textErr="The .exe file is invalid (non-Win32® .exe or error in .exe image)."; break;
00189                 case SE_ERR_ACCESSDENIED: textErr="The operating system denied access to the specified file. ";break;
00190                 case SE_ERR_ASSOCINCOMPLETE: textErr="The file name association is incomplete or invalid."; break;
00191                 case SE_ERR_DDEBUSY: textErr="The DDE transaction could not be completed because other DDE transactions were being processed."; break;
00192                 case SE_ERR_DDEFAIL:  textErr="The DDE transaction failed."; break;
00193                 case SE_ERR_DDETIMEOUT:  textErr="The DDE transaction could not be completed because the request timed out."; break;
00194                 case SE_ERR_DLLNOTFOUND:  textErr="The specified dynamic-link library was not found."; break;
00195                 case SE_ERR_NOASSOC:  textErr="There is no application associated with the given file name extension."; break;
00196                 case SE_ERR_OOM:  textErr="There was not enough memory to complete the operation."; break;
00197                 case SE_ERR_SHARE: textErr="A sharing violation occurred."; break;
00198                 default:
00199                         state = TRUE;
00200                         textErr = "Lancemennt correct !";
00201                 }
00202
00203                 if (message) strcpy (message,textErr);
00204
00205                 if (parameter) prog[i]=sep;
00206                 return state;
00207 }
00208
00209 void MailTo (char *eMail)
00210 {
00211         MyString temp;
00212         temp<<"mailto:"<<eMail;
00213         ShellExecute(NULL,"open",temp,NULL,NULL,0);
00214 }
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: communTools.h File Reference

communTools.h File Reference

Outils commun. More...

Go to the source code of this file.

Functions

void | DrawTextOnFirstPlan (char *text, BOOL shadowMode)
void | MyOpenBrowser (char *url)
Ouvre un browser internet, utilise un ShellExecute.

void | ErrorMessage (BOOL useLastError, UINT type, const TCHAR *message,...)
BOOL | Run (char *exe, char *message)
void | MailTo (char *eMail)

Detailed Description

Outils commun.

Definition in file communTools.h.

Function Documentation

void DrawTextOnFirstPlan | ( | char * | text,
 |  | BOOL | shadowMode
 | ) |

Definition at line 8 of file communTools.cpp.

References HDC(), and len.

void ErrorMessage | ( | BOOL | useLastError,
 |  | UINT | type,
 |  | const TCHAR * | message,
 |  | ... |
 | ) |

Definition at line 99 of file communTools.cpp.

References buffer, and type.

Referenced by SysTrayProc().

void MailTo ( char * eMail )

Definition at line 209 of file communTools.cpp.

Referenced by AboutProc().

void MyOpenBrowser ( char * url )

Ouvre un browser internet, utilise un ShellExecute.

Definition at line 53 of file communTools.cpp.

References q, and type.

Referenced by AboutProc(), and SysTrayProc().

BOOL Run | ( | char * | exe,
 |  | char * | message
 | ) |

Definition at line 160 of file communTools.cpp.

References BOOL().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: communTools.h Source File

communTools.h

Go to the documentation of this file.
00001 #ifndef INCLUDE_COMMUN_TOOLS_H
00002 #define INCLUDE_COMMUN_TOOLS_H
00003
00008 void DrawTextOnFirstPlan(char *text,BOOL shadowMode);
00009 void MyOpenBrowser(char *url);
00010 void ErrorMessage(BOOL useLastError, UINT type, const TCHAR* message, ...);
00011 BOOL Run(char *exe,char *message);
00012 void MailTo (char *eMail);
00013
00014 #endif
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: container.cpp File Reference

container.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "container.h"
#include "mylist.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 39 of file container.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: container.cpp Source File

container.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *************************************************************************************
00018         Ex.:
00019         Button *btnOk = new Button;
00020         btnOk->SetText("Ok");
00021         btnOk->debugInfo="btnOk";
00022         btnOk->onClick.Link(OnButtonOk);
00023
00024         TextBox *txtInfo = new TextBox;
00025         txtInfo->SetText("Hello Word !!");
00026         txtInfo->debugInfo="txtInfo";
00027         txtInfo->onMouse.leftBtn.up.Link(OnTextClick);
00028
00029         window.client+=txtInfo;
00030         window.client+=btnOk;
00031 ******************************************************************************** */
00032
00033 #include "3d.h"
00034 #include "input.h"
00035 #include "controlEngine.h"
00036 #include "container.h"
00037 #include "mylist.h"
00038
00039 extern ControlEngine ce;
00040
00041 void Container::Create(double depth)
00042 {
00043         SetParent();
00044         faceNode = ce.primitive.AddBox(name,id,depth,FALSE);
00045         faceNode->elem->material.SetDS(.75,.75,.75);
00046 /*
00047         ce.primitive.Push(FACE_FRONT);
00048                 for (controls=0;controls.More();controls++)
00049                 {
00050                         Control *control=controls.GetElem();
00051                         control->Create();
00052                 }
00053         ce.primitive.Pop();
00054 */
00055 }
00056
00057 // ********************************************************************************
00058
00059 Container::Container()
00060 {
00061         name="Container";
00062 }
00063
00064 Container::~Container()
00065 {
00066 }
00067
00068 // ********************************************************************************
00069
00070 void Container::ToString(MyString &str)
00071 {
00072         str.AddFormat("name: %s",name);
00073 }
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: container.h File Reference

container.h File Reference

Control Container. More...

#include "myList.h"
#include "title.h"

Go to the source code of this file.

Classes

class | EventContainer
class | Container
Class de parametre et d'evenement d'un "Container" qui peut contenir un autre control. More...

Detailed Description

Control Container.

Definition in file container.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: container.h Source File

container.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_CONTAINER_H
00024 #define INCLUDE_CONTAINER_H
00025
00026 #include "myList.h"
00027 #include "title.h"
00028
00029 class EventContainer
00030 {
00031 public:
00032 };
00033
00038 class Container : public Control
00039 {
00040 public:
00041         EventContainer onContainer;
00042
00043         Container();
00044         ~Container();
00045         virtual void Create() { Create(DEFAULT_DEPTH_CONTAINER); } // Createur pour container
00046         void Create(double depth);
00047         void ToString(MyString &str);
00048 };
00049
00050 #endif
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: control.cpp File Reference

control.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "container.h"
#include "mylist.h"
#include "control.h"

Go to the source code of this file.

Defines

#define DOCK_INIT
place le control en haut de son container avec: une marge margeX de charque coté dans les X une marge margeY dans les Y une talle Y de sizeY

Variables

ControlEngine ce

Define Documentation

#define DOCK_INIT

Value:

if (!faceNode) return FALSE; \
        Face *father,*child; \
        child = faceNode->elem; \
        father = faceNode->parent->elem; \
        if (!child||!father) return FALSE; \
place le control en haut de son container avec: une marge margeX de charque coté dans les X une marge margeY dans les Y une talle Y de sizeY

Definition at line 269 of file control.cpp.

Referenced by Control::ChangeDirection(), Control::XDockCenter(), Control::XDockLeft(), Control::XDockRight(), Control::YDockBottom(), Control::YDockCenter(), and Control::YDockTop().

Variable Documentation

ControlEngine ce

Definition at line 26 of file control.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: control.cpp Source File

control.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "container.h"
00023 #include "mylist.h"
00024 #include "control.h"
00025
00026 extern ControlEngine ce;
00027
00028 Control::Control()
00029 {
00030         parent=NULL;
00031         parentFace=-1;
00032         faceNode=NULL;
00033         sleepedDelay=-1;
00034         id=nextId++;
00035         name="Control";
00036         isEnable=TRUE;
00037         isView=TRUE;
00038         leftDown = FALSE;
00039         midDown = FALSE;
00040         rightDown = FALSE;
00041         controls.i+=this; // placement dans les instansiations de control
00042 }
00043
00044 Control::~Control()
00045 {
00046         Delete();
00047 }
00048
00050 void Control::SetParent()
00051 {
00052         parent = ce.Peek();
00053         FaceNode *faceNode = ce.primitive.tree.GetCurrent();// ce.primitive.Peek();
00054         if (faceNode) parentFace = faceNode->elem->idFace;
00055         else parentFace = -1;
00056 }
00057
00058 // ********************************************************************************
00059
00060 void Control::operator= (Control &src)
00061 {
00062         parent = src.parent;
00063         parentFace = src.parentFace;
00064         faceNode = src.faceNode;
00065         name = src.name;
00066         isEnable=src.isEnable;
00067         isView=src.isView;
00068         onControl = src.onControl;
00069         sleepedDelay = src.sleepedDelay;
00070 }
00071
00072 // ********************************************************************************
00073
00074 BOOL Control::Delete()
00075 {
00076         DeleteFaces();
00077
00078         // supression de l'element dans la liste static
00079         if (controls.i.GoTo((Control *)this))
00080         {
00081                 controls.i.Supr();
00082                 return TRUE;
00083         }
00084         return FALSE;
00085 }
00086
00087 void Control::DeleteFaces()
00088 {
00089         DeleteFaces(faceNode);
00090         faceNode=NULL;
00091 }
00092
00093 void Control::DeleteFaces(FaceNode *curFaceNode)
00094 {
00095         if (!curFaceNode || curFaceNode->elem->idControl!=id) return;
00096
00097         FaceNode *curChild;
00098         MyListItem<FaceNode *> *item;
00099         item = curFaceNode->childs.first;
00100         while (item)
00101         {
00102                 curChild = *item->elem;
00103                 item = item->after;
00104                 DeleteFaces(curChild);
00105         }
00106         ce.primitive.tree.SuprNode(curFaceNode,FALSE);
00107 }
00108
00111 void Control::DeleteSub()
00112 {
00113         DeleteSub(faceNode);
00114 }
00115
00116
00117 void Control::DeleteSub(FaceNode *curFaceNode)
00118 {
00119         if (!curFaceNode) return ;
00120         if (curFaceNode->elem->idControl!=id)
00121         {
00122                 // retrouve le control lié a une face particuliere
00123                 Control *control = Control::Find(curFaceNode->elem->idControl);
00124                 if (control)
00125                 {
00126                         control->DeleteSub();
00127                         delete control;
00128                         return;
00129                 }
00130         }
00131
00132         FaceNode *curChild;
00133         MyListItem<FaceNode *> *item;
00134         item = curFaceNode->childs.first;
00135         while (item)
00136         {
00137                 curChild = *item->elem;
00138                 item = item->after;
00139                 DeleteSub(curChild);
00140         }
00141 }
00142
00144 void Control::SetBlending(BOOL enable)
00145 {
00146         if (!faceNode) return;
00147         faceNode->elem->blending=enable;
00148         for (faceNode->childs.i=0;faceNode->childs.i.More();faceNode->childs.i++)
00149         {
00150                 faceNode->childs.i.GetElem()->elem->blending=enable;
00151         }
00152 }
00153
00155 void Control::SetAlphaBlending(float alpha)
00156 {
00157         if (!faceNode) return;
00158         Face * face = faceNode->elem;
00159         face->material.SetAlpha(alpha);
00160         face->blending=TRUE;
00161         for (faceNode->childs.i=0;faceNode->childs.i.More();faceNode->childs.i++)
00162         {
00163                 face = faceNode->childs.i.GetElem()->elem;
00164                 face->material.SetAlpha(alpha);
00165                 face->blending=TRUE;
00166         }
00167 }
00168
00169 void Control::SetLines(Color color,float size)
00170 {
00171         if (!faceNode) return;
00172         Face * face = faceNode->elem;
00173         face->lineMaterial.SetDS(color);
00174         face->line=size;
00175         for (faceNode->childs.i=0;faceNode->childs.i.More();faceNode->childs.i++)
00176         {
00177                 face = faceNode->childs.i.GetElem()->elem;
00178                 face->lineMaterial.SetDS(color);
00179                 face->line=size;
00180         }
00181 }
00182
00184 BOOL Control::ScreenMove(double x,double y,double z)
00185 {
00186         double zDistOfSelected;
00187         if (ce.usingInertia) zDistOfSelected = ce.pickingInertia.zDist;
00188         else zDistOfSelected = ce.pickingCursor.zDist;
00189         double realZ =ce.ComputeRealZ(zDistOfSelected);
00190         return Move(x*realZ,y*realZ,z);
00191
00192 }
00193
00195 BOOL Control::ScreenMoveTo(double x,double y,double z)
00196 {
00197         double realZ =ce.ComputeRealZ(ce.pickingCursor.zDist);
00198         return MoveTo(x*realZ,y*realZ,z);
00199 }
00200
00202 BOOL Control::MoveTo(double x,double y,double z)
00203 {
00204         if (!faceNode) return FALSE;
00205         faceNode->elem->MoveTo(x,y,z);
00206         return TRUE;
00207 }
00208
00210 BOOL Control::Move(double x,double y,double z)
00211 {
00212         if (!faceNode) return FALSE;
00213         faceNode->elem->Move(x,y,z);
00214         return TRUE;
00215 }
00216
00218 BOOL Control::ReSize(double dx,double dy)
00219 {
00220         if (!faceNode) return FALSE;
00221         faceNode->elem->size.x.constValue+=dx;
00222         faceNode->elem->size.y.constValue+=dy;
00223         return TRUE;
00224 }
00225
00227 BOOL Control::Size(double x,double y)
00228 {
00229         if (!faceNode) return FALSE;
00230         faceNode->elem->size.x=x;
00231         faceNode->elem->size.y=y;
00232         return TRUE;
00233 }
00234
00236 BOOL Control::RotateQuaternion(double x,double y,double z)
00237 {
00238         if (!faceNode) return FALSE;
00239         Point3D<double> angle(-y,-x,z);
00240         faceNode->elem->angle+=angle.QuaternionRotate(angle);
00241         return TRUE;
00242 }
00243
00245 BOOL Control::Rotate(double x,double y,double z)
00246 {
00247         if (!faceNode) return FALSE;
00248         Point3D<double> pt(x,y,z);
00249         faceNode->elem->angle+=pt;
00250         return TRUE;
00251 }
00252
00254 BOOL Control::RotateTo(double x,double y,double z)
00255 {
00256         if (!faceNode) return FALSE;
00257         Point3D<double> pt(x,y,z);
00258         faceNode->elem->angle=pt;
00259         return TRUE;
00260 }
00261
00269 #define DOCK_INIT \
00270         if (!faceNode) return FALSE; \
00271         Face *father,*child; \
00272         child = faceNode->elem; \
00273         father = faceNode->parent->elem; \
00274         if (!child||!father) return FALSE; \
00275
00276 BOOL Control::YDockTop(double margeY,double sizeY,BOOL isCenter)
00277 {
00278         DOCK_INIT;
00279         child->center.y=isCenter?0:-1;
00280         child->position.y.Set(-margeY,0.5,&father->computeSize.y);
00281         child->size.y.Set(sizeY);
00282         return TRUE;
00283 }
00284
00285 BOOL Control::YDockBottom(double margeY,double sizeY,BOOL isCenter)
00286 {
00287         DOCK_INIT;
00288         child->center.y=isCenter?0:1;
00289         child->position.y.Set(margeY,-0.5,&father->computeSize.y);
00290         child->size.y=sizeY;
00291         return TRUE;
00292 }
00293
00294 BOOL Control::XDockLeft(double margeX,double sizeX,BOOL isCenter)
00295 {
00296         DOCK_INIT;
00297         child->center.x=isCenter?0:1;
00298         child->position.x.Set(margeX,-0.5,&father->computeSize.x);
00299         child->size.x=sizeX;
00300         return TRUE;
00301 }
00302
00303 BOOL Control::XDockRight(double margeX,double sizeX,BOOL isCenter)
00304 {
00305         DOCK_INIT;
00306         child->center.x=isCenter?0:-1;
00307         child->position.x.Set(-margeX,0.5,&father->computeSize.x);
00308         child->size.x=sizeX;
00309         return TRUE;
00310 }
00311
00312 BOOL Control::XDockCenter(double sizeX)
00313 {
00314         DOCK_INIT;
00315         child->center.x=0;
00316         child->position.x.Set(0);
00317         child->size.x.Set(sizeX);
00318         return TRUE;
00319 }
00320
00321 BOOL Control::XDockCenter(double margeLeft,double margeRight)
00322 {
00323         DOCK_INIT;
00324         child->center.x=0;
00325         child->position.x.Set((margeLeft-margeRight)/2.0);
00326         child->size.x.Set(-margeLeft-margeRight,1,&father->computeSize.x);
00327         return TRUE;
00328 }
00329
00330 BOOL Control::YDockCenter(double sizeY)
00331 {
00332         DOCK_INIT;
00333         child->center.y=0;
00334         child->position.y.Set(0);
00335         child->size.y.Set(sizeY);
00336         return TRUE;
00337 }
00338
00339 BOOL Control::ChangeDirection()
00340 {
00341         DOCK_INIT;
00342         Rotate(0,0,90);
00343         Face old = *child;
00344         //child->center.x=old.center.y;
00345         //child->center.y=old.center.x;
00346         child->position.x=old.position.y;
00347         child->position.y=old.position.x;
00348         child->size.x=old.size.y;
00349         child->size.y=old.size.x;
00350         return TRUE;
00351 }
00352
00353 BOOL Control::YDockCenter(double margeTop,double margeBottom)
00354 {
00355         DOCK_INIT;
00356         child->center.y=0;
00357         child->position.y.Set((margeTop-margeBottom)/2.0);
00358         child->size.y.Set(-margeTop-margeBottom,1,&father->computeSize.y);
00359         return TRUE;
00360 }
00361
00365 void Control::ToString(MyString &str)
00366 {
00367         str.AddFormat("name:%s isEnable:%d isView:%d",name,isEnable,isView);
00368 }
00369
00373 Control * Control::Find(int idControl)
00374 {
00375         Control *controlFind;
00376         MyListIterator<Control *> i(&Control::controls);
00377         for (i=0;i.More();i++)
00378         {
00379                 controlFind = i.GetElem();
00380                 if (controlFind->id==idControl) return controlFind;
00381         }
00382         return NULL;
00383 }
00384
00390 int Control::OnAutoMouseWheel(Timer *timer)
00391 {
00392         Debug0Param("Control::AutoMouseWheel");
00393         onControl.mouse.wheel(&ce.pickingCursor.mouse,ce.pickingCursor.faceHover);
00394         return 0;
00395 }
00396
00397 int Control::OnMouseWheel(StateMouse *mouse,int face)
00398 {
00399         DebugMouse2("Control::OnMouseWheel",mouse,face);
00400         if (mouse->midBtn)
00401         {
00402                 BindTimer(timerAutoWheel,OnAutoMouseWheel,40);
00403         }
00404         return onControl.mouse.wheel(mouse,face);
00405 }
00406
00410 int Control::OnSleeped(Timer *timer)
00411 {
00412         Debug0Param("Control::Sleeped");
00413         timerSleeped.Stop();
00414         onControl.sleeped();
00415         return 0;
00416 }
00420 int Control::OnMouseMove(StateMouse *mouse,int face)
00421 {
00422         if (!this) return 0;
00423         //DebugMouse2("Control::OnMouseMove",mouse,face);
00424         // gestion du Sleeped
00425         if (sleepedDelay!=-1)
00426         {
00427                 timerSleeped.onTimer.disconnect_all();
00428                 BindTimer(timerSleeped,OnSleeped,sleepedDelay);
00429         }
00430
00431         // calcul du delta par rapport au dernier appel
00432         StateMouse * delta = ce.pickingCursor.mouse.GetDelta(&ce.pickingCursor.oldMouse);
00433         if (ce.enableInertia) inertia.Add(delta->pos); // gestion d'inertia
00434         return onControl.mouse.move(mouse,delta->pos.x,delta->pos.y,face);
00435 }
00436
00440 void Control::OverIn(Control *oldControl,int face)
00441 {
00442         Debug2Param("Control::OverIn(oldCtrl:%s,face:%d)",(char*)oldControl->name,face);
00443         leftDown = FALSE;
00444         rightDown = FALSE;
00445         midDown = FALSE;
00446         onControl.over.in(oldControl,face);
00447 }
00448
00452 void Control::OverOut(Control *newControl,int face)
00453 {
00454         Debug2Param("Control::OverOut(newCtrl:%s,face:%d)",(char*)newControl->name,face);
00455         leftDown = FALSE;
00456         rightDown = FALSE;
00457         midDown = FALSE;
00458         onControl.over.out(newControl,face);
00459 }
00460
00464 void Control::FaceOverIn(int oldFace)
00465 {
00466         Debug1Param("Control::FaceOverIn(oldFace:%d)",oldFace);
00467         onControl.faceOver.in(oldFace);
00468 }
00469
00475 void Control::FaceOverOut(int newFace)
00476 {
00477         Debug1Param("Control::FaceOverOut(newFace:%d)",newFace);
00478         onControl.faceOver.out(newFace);
00479 }
00480
00484 int Control::OnLButtonDown(StateMouse *mouse,int face)
00485 {
00486         DebugMouse2("Control::OnLButtonDown",mouse,face);
00487         leftDown = TRUE;
00488         return onControl.mouse.left.down(mouse,face);
00489 }
00490
00491 int Control::OnMButtonDown(StateMouse *mouse,int face)
00492 {
00493         DebugMouse2("Control::OnMButtonDown",mouse,face);
00494         midDown = TRUE;
00495         return onControl.mouse.mid.down(mouse,face);
00496 }
00497
00498 int Control::OnRButtonDown(StateMouse *mouse,int face)
00499 {
00500         DebugMouse2("Control::OnRButtonDown",mouse,face);
00501         rightDown = TRUE;
00502         return onControl.mouse.right.down(mouse,face);
00503 }
00504
00505 int Control::OnClick(StateMouse *mouse,int face)
00506 {
00507         DebugMouse2("Control::OnClick",mouse,face);
00508         return onControl.mouse.left.click(mouse,face);
00509 }
00510
00511 BOOL Control::UseInertia(int numButton,StateMouse *mouse,int face)
00512 {
00513         //MyDebug::SendLine("UseInertia","use");
00514         if (!ce.enableInertia) return FALSE;
00515         if (ce.eventInertia[numButton].enable)
00516         {
00517                 ce.eventInertia[numButton].Stop();
00518         }
00519         Point2D<double> moyInertia = inertia.GetMoyValue();
00520         if (moyInertia.Power()>SEUIL_MIN_INERTIA) // seuil avant traitement
00521         {
00522                 ce.eventInertia[numButton].enable=TRUE;
00523                 ce.usingInertia++;
00524                 ce.eventInertia[numButton].Start(face,moyInertia);
00525                 return TRUE;
00526         }
00527         return FALSE;
00528 }
00529
00530 int Control::OnLButtonUp(StateMouse *mouse,int face)
00531 {
00532         DebugMouse2("Control::OnLButtonUp",mouse,face);
00533         int res = 0;
00534         if (!UseInertia(0,mouse,face))
00535         {
00536                 res = onControl.mouse.left.up(mouse,face);
00537                 if (leftDown) OnClick(mouse,face);
00538         }
00539         return res;
00540 }
00541
00542 int Control::OnMButtonUp(StateMouse *mouse,int face)
00543 {
00544         DebugMouse2("Control::OnMButtonUp",mouse,face);
00545         int res = 0;
00546         if (timerAutoWheel.isRuning) timerAutoWheel.StopAndUnBind();
00547         if (!UseInertia(1,mouse,face))
00548         {
00549                 res = onControl.mouse.mid.up(mouse,face);
00550                 if (midDown) onControl.mouse.mid.click(mouse,face);
00551         }
00552         return res;
00553 }
00554
00555 int Control::OnRButtonUp(StateMouse *mouse,int face)
00556 {
00557         DebugMouse2("Control::OnRButtonUp",mouse,face);
00558         int res = 0;
00559         if (!UseInertia(2,mouse,face))
00560         {
00561                 res = onControl.mouse.right.up(mouse,face);
00562                 if (rightDown) onControl.mouse.right.click(mouse,face);
00563         }
00564         return res;
00565 }
00566
00567 int Control::OnLButtonDouble(StateMouse *mouse,int face)
00568 {
00569         DebugMouse2("Control::OnLButtonDblClk",mouse,face);
00570         return onControl.mouse.left.doubleClick(mouse,face);
00571 }
00572
00573 int Control::OnMButtonDouble(StateMouse *mouse,int face)
00574 {
00575         DebugMouse2("Control::OnMButtonDblClk",mouse,face);
00576         return onControl.mouse.mid.doubleClick.emit(mouse,face);
00577 }
00578
00579 int Control::OnRButtonDouble(StateMouse *mouse,int face)
00580 {
00581         DebugMouse2("Control::OnRButtonDblClk",mouse,face);
00582         return onControl.mouse.right.doubleClick(mouse,face);
00583 }
00584
00585 // ********************************************************************************
00586
00587 int Control::OnKeyUp(StateKey *key,int face)
00588 {
00589         DebugKey2("Control::OnKeyUp",key,face);
00590         return onControl.key.up(key,face);
00591 }
00592
00593 int Control::OnKeyDown(StateKey *key,int face)
00594 {
00595         DebugKey2("Control::OnKeyDown",key,face);
00596         return onControl.key.down(key,face);
00597 }
00598
00599 int Control::OnKeyDouble(StateKey *key,int face)
00600 {
00601         DebugKey2("Control::OnKeyDblClk",key,face);
00602         return onControl.key.doubleClick(key,face);
00603 }
00604
00605 // ********************************************************************************
00606
00607 void Control::GetCorners(int face,Point3D<double> *points)
00608 {
00609         ce.primitive.GetCorners(faceNode->childs.i[face],points);
00610 }
00611
00612 Point2D<double> Control::GetLocalPos(int face,Point2D<double> absolutePos)
00613 {
00614         return ce.primitive.GetLocalPos(faceNode->childs.i[face],absolutePos);
00615 }
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: control.h File Reference

control.h File Reference

Control. More...

#include "MyList.h"
#include "MyString.h"
#include "MyDebug.h"
#include "input.h"
#include "inertia.h"
#include "face.h"
#include "sigslot.h"

Go to the source code of this file.

Classes

class | EventMouseButton
Evenemnt EventMouseButton. More...

class | EventKey
class | EventMouse
Evenement de souris. More...

class | EventOver
Evenement sur le survole. More...

class | EventFaceOver
class | EventControl
class | Control
Class de parametre et d'evenement d'un "Control" (Control doit etre herité par tout control 3D). More...

Defines

#define | DEFAULT_DEPTH_TEXTBOX 4
#define | DEFAULT_DEPTH_MAX_BUTTON 5
#define | DEFAULT_DEPTH_MIN_BUTTON 1
#define | DEFAULT_DEPTH_CONTAINER 3
#define | DEFAULT_DEPTH_TITLE 2
#define | DEFAULT_DEPTH_WINDOW 10
#define | DEFAULT_SIZE_TRACK_BUTTON 16
#define | TIME_OUT_PUSH_DOWN_BUTTON 0.3
#define | Debug0Param(text) MyDebug::SendEvent(name,text);
#define | Debug1Param(text, p1) MyDebug::SendEvent(name,text,p1);
#define | Debug2Param(text, p1, p2) MyDebug::SendEvent(name,text,p1,p2);
#define | Debug3Param(text, p1, p2, p3) MyDebug::SendEvent(name,text,p1,p2,p3);

Typedefs

typedef Point2D< int > | Point2D_int
typedef Point2D< double > | Point2D_double

Enumerations

enum | TypeButton { buttonLeft = 0, buttonMid = 1, buttonRight = 2 }

Detailed Description

Control.

Definition in file control.h.

Define Documentation

#define Debug0Param ( text ) MyDebug::SendEvent(name,text);

Definition at line 51 of file control.h.

Referenced by Title::GotFocus(), Title::LostFocus(), MsgBox::OnButtonOk(), Window::OnClose(), Title::OnClose(), MsgBox::OnClose(), Univers::OnExit(), Title::OnMax(), Title::OnMaxOrOriginal(), Title::OnMin(), and Title::OnOriginal().

#define Debug1Param | ( | text,
 |  | p1 | ) | MyDebug::SendEvent(name,text,p1);

Definition at line 52 of file control.h.

Referenced by Control::FaceOverIn(), and Control::FaceOverOut().

#define Debug2Param | ( | text,
 |  | p1,
 |  | p2 | ) | MyDebug::SendEvent(name,text,p1,p2);

Definition at line 53 of file control.h.

Referenced by Univers::OnOverIn(), Title::OnOverIn(), TextBox::OnOverIn(), Button::OnOverIn(), Univers::OnOverOut(), TrackButton::OnOverOut(), Title::OnOverOut(), Button::OnOverOut(), Control::OverIn(), Control::OverOut(), and TextBox::SetCursor().

#define Debug3Param | ( | text,
 |  | p1,
 |  | p2,
 |  | p3 | ) | MyDebug::SendEvent(name,text,p1,p2,p3);

Definition at line 54 of file control.h.

#define DEFAULT_DEPTH_CONTAINER 3

Definition at line 38 of file control.h.

Referenced by Container::Create().

#define DEFAULT_DEPTH_MAX_BUTTON 5

Definition at line 36 of file control.h.

Referenced by Button::Button(), and Button::Create().

#define DEFAULT_DEPTH_MIN_BUTTON 1

Definition at line 37 of file control.h.

Referenced by Button::Button().

#define DEFAULT_DEPTH_TEXTBOX 4

Definition at line 35 of file control.h.

Referenced by TextBox::Create().

#define DEFAULT_DEPTH_TITLE 2

Definition at line 39 of file control.h.

Referenced by Title::Create().

#define DEFAULT_DEPTH_WINDOW 10

Definition at line 40 of file control.h.

Referenced by Window::Create().

#define DEFAULT_SIZE_TRACK_BUTTON 16

Definition at line 41 of file control.h.

Referenced by TrackButton::Create().

#define TIME_OUT_PUSH_DOWN_BUTTON 0.3

Definition at line 43 of file control.h.

Referenced by Button::Button().

Typedef Documentation

typedef Point2D<double> Point2D_double

Definition at line 64 of file control.h.

typedef Point2D<int> Point2D_int

Definition at line 63 of file control.h.

Enumeration Type Documentation

enum TypeButton

Enumeration values:
buttonLeft
buttonMid
buttonRight

Definition at line 138 of file control.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: control.h Source File

control.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_CONTROL_H
00024 #define INCLUDE_CONTROL_H
00025
00026 #include "MyList.h"
00027 #include "MyString.h"
00028 #include "MyDebug.h"
00029 #include "input.h"
00030 #include "inertia.h"
00031 #include "face.h"
00032 #include "sigslot.h"
00033
00034 // parametre des dimentions des controls
00035 #define DEFAULT_DEPTH_TEXTBOX            4
00036 #define DEFAULT_DEPTH_MAX_BUTTON         5
00037 #define DEFAULT_DEPTH_MIN_BUTTON         1 // ne peut etre =0 sinon erreur de picking
00038 #define DEFAULT_DEPTH_CONTAINER          3
00039 #define DEFAULT_DEPTH_TITLE                      2
00040 #define DEFAULT_DEPTH_WINDOW             10
00041 #define DEFAULT_SIZE_TRACK_BUTTON        16
00042
00043 #define TIME_OUT_PUSH_DOWN_BUTTON    0.3
00044
00045 /*
00046  *      Gestion des debugs
00047  */
00048
00049 // Info de debug
00050
00051 #define Debug0Param(text) MyDebug::SendEvent(name,text);
00052 #define Debug1Param(text,p1) MyDebug::SendEvent(name,text,p1);
00053 #define Debug2Param(text,p1,p2) MyDebug::SendEvent(name,text,p1,p2);
00054 #define Debug3Param(text,p1,p2,p3) MyDebug::SendEvent(name,text,p1,p2,p3);
00055
00056 // Pas d'info de debug
00057 /*
00058 #define Debug0Param(text)
00059 #define Debug1Param(text,p1)
00060 #define Debug2Param(text,p1,p2)
00061 #define Debug3Param(text,p1,p2,p3)
00062 */
00063 typedef Point2D<int> Point2D_int;
00064 typedef Point2D<double> Point2D_double;
00065
00066 using namespace sigslot;  // pour signal (evit l'ecriture sigslot::signal?<...>)
00067
00078 class EventMouseButton
00079 {
00080 public:
00081         signal2<StateMouse *,int > up;                  //Call: int OnUp(StateMouse *mouse,int face);
00082         signal2<StateMouse *,int > down;                //Call: int OnDown(StateMouse *mouse,int face);
00083         signal2<StateMouse *,int > doubleClick; //Call: int OnDoubleClick(StateMouse *mouse,int face);
00084         signal2<StateMouse *,int > click;               //Call: int OnClick(StateMouse *mouse,int face);
00085
00086         Timer timerClick;
00087         int GetNbLinks()
00088         {
00089                 return up.size()+down.size()+doubleClick.size()+click.size();
00090         }
00091 };
00092
00093 class EventKey
00094 {
00095 /*
00096 private:
00097         static StateKey oldKey;
00098         static int oldFace;
00099         static Timer *timerDoubleClick;
00100
00101         void TimeOutDoubleClick()
00102         {
00103                 timer->StopAndUnBind();
00104                 click(&oldKey,oldFace);
00105         }
00106 */
00107 public:
00108         signal2<StateKey *,int> up;                             //Call: int OnUp(StateKey *key,int face);
00109         signal2<StateKey *,int> down;                   //Call: int OnDown(StateKey *key,int face);
00110         signal2<StateKey *,int> doubleClick;    //Call: int OnDoubleClick(StateKey *key,int face);
00111         signal2<StateKey *,int> click;                  //Call: int OnClick(StateKey *key,int face);
00112
00113         int GetNbLinks()
00114         {
00115                 return up.size()+down.size()+doubleClick.size()+click.size();
00116         }
00117 /*
00118         int Up(StateKey *key,int face)
00119         {
00120                 if (doubleClick.size())
00121                 {
00122                         oldKey=*key;
00123                         oldFace=face;
00124                         BindTimer(timerDoubleClick,TimeOutDoubleClick,10);
00125                 }
00126         }
00127
00128         int Down()
00129         {
00130                 if (doubleClick.size())
00131                 {
00132                         timerDoubleClick->StopAndUnBind();
00133                 }
00134         }
00135 */
00136 };
00137
00138 typedef enum
00139 {
00140         buttonLeft = 0,
00141         buttonMid = 1,
00142         buttonRight = 2
00143 } TypeButton;
00144
00155 class EventMouse
00156 {
00157 public:
00158         EventMouseButton left,right,mid;
00159
00160         signal4<StateMouse *,int,int,int> move; //Call: int OnMove(StateMouse *mouse,int deltaX,int deltaY,int face);
00161         signal2<StateMouse *,int> wheel;//Call: int OnWheel(StateMouse *mouse,int face);
00162
00163         int GetNbLinks()
00164         {
00165                 return move.size()+wheel.size()+left.GetNbLinks()+right.GetNbLinks()+mid.GetNbLinks();
00166         }
00167 } ;
00168
00177 class EventOver
00178 {
00179 public:
00180         signal2<Control *,int> in; //Call: int OnIn(Control *oldControl,int face);
00181         signal2<Control *,int> out;//Call: int OnOut(Control *newControl,int face);
00182
00183         int GetNbLinks()
00184         {
00185                 return in.size()+out.size();
00186         }
00187 } ;
00188
00189 class EventFaceOver
00190 {
00191 public:
00192         signal1<int> in; //Call: int OnIn(int face);
00193         signal1<int> out;//Call: int OnOut(int face);
00194
00195         int GetNbLinks()
00196         {
00197                 return in.size()+out.size();
00198         }
00199 } ;
00200
00201 class EventControl
00202 {
00203 public:
00204         EventMouse mouse;
00205         EventKey key;
00206         EventOver over;
00207         EventFaceOver faceOver;
00208         signal0<> sleeped;      //Call: int OnSleeped();
00209
00210         int GetNbLinks()
00211         {
00212                 return mouse.GetNbLinks()+key.GetNbLinks()+over.GetNbLinks()+faceOver.GetNbLinks()+sleeped.size();
00213         }
00214 };
00215
00231 class Control : public has_slots<>
00232 {
00233 public:
00234         // list des instansition de control
00235         static MyList<Control *> controls;
00236         static int nextId;
00237         static Inertia inertia;
00238         static Timer timerAutoWheel;
00239         static Timer timerSleeped;
00240         static BOOL leftDown;
00241         static BOOL midDown;
00242         static BOOL rightDown;
00243
00244 public:
00245         // variable membre
00246         int id;
00247         FaceNode *faceNode;
00248         MyString name;
00249         BOOL isEnable;
00250         BOOL isView;
00251         int sleepedDelay;
00252         Control *parent;
00253         int parentFace;
00254
00255         // evenement disponible
00256         EventControl onControl;
00257
00258         // methodes
00259 private:
00260         BOOL UseInertia(int numButton,StateMouse *mouse,int face);//utilise une inertie sur bouton souris up uniquement
00261         int  OnAutoMouseWheel(Timer *timer);
00262         int  OnSleeped(Timer *timer);
00263         void DeleteSub(FaceNode *curFaceNode);
00264         void DeleteFaces(FaceNode *curFaceNode);
00265
00266 public:
00267         Control();
00268         ~Control();
00269         void SetParent();                                                               // config le parent
00270         BOOL Delete();                                                                  // supression de l'element dans la liste static
00271         void DeleteFaces();                                                             // supression des face du control
00272         void DeleteSub();                                                               // supression des controls contenue
00273         static Control * Find(int _idControl);                  // recherche un control par son idControl dans la list des instances
00274         void operator= (Control &src);                                  // operateur de copie
00275         virtual void Create() {};                                               // pour le prototipage des conteneurs
00276         void ToString(MyString &str);                                   // pour le debugage
00277         void SetBlending(BOOL enable);                                  // active/desactive le blending sur toute les faces
00278         void SetAlphaBlending(float alpha);                             // positionne l'alpha de toute le faces
00279         void SetLines(Color color,float size);                  // positionne les ligne de toute le faces
00280
00281         void OverIn(Control *oldControl,int face);              // on rentre sur le control
00282         void OverOut(Control *newControl,int face);             // on part du control
00283         void FaceOverIn (int oldFace);                                  // on entre sur un nouvelle face du control
00284         void FaceOverOut (int newFace);                                 // on sort d'un face
00285
00286         BOOL ScreenMove(double x,double y,double z);    // deplace en position ecran
00287         BOOL ScreenMoveTo(double x,double y,double z);  // place en position ecran
00288         BOOL Move(double x,double y,double z);                  // deplace le control
00289         BOOL MoveTo(double x,double y,double z);                // positione le control
00290         BOOL Size(double x,double y);                                   // assigne une taille du control
00291         BOOL ReSize(double dx,double dy);                               // redimetionne un control
00292         BOOL Rotate(double x,double y,double z);                // delta-rotation du control
00293         BOOL RotateQuaternion(double x,double y,double z);// delta-rotation du control par rapport a l'unives
00294         BOOL RotateTo(double x,double y,double z);              // assigne une rotation du control
00295
00296         // placement par rapport au pere
00297         BOOL XDockLeft(double margeX,double sizeX,BOOL isCenter=FALSE);
00298         BOOL XDockRight(double margeX,double sizeX,BOOL isCenter=FALSE);
00299         BOOL XDockCenter(double sizeX);
00300         BOOL XDockCenter(double margeLeft,double margeRight);
00301         BOOL YDockTop(double margeY,double sizeY,BOOL isCenter=FALSE);
00302         BOOL YDockBottom(double margeY,double sizeY,BOOL isCenter=FALSE);
00303         BOOL YDockCenter(double sizeY);
00304         BOOL YDockCenter(double margeTop,double margeBottom);
00305
00306         BOOL ChangeDirection();
00307
00308         int OnMouseWheel(StateMouse *mouse,int face);   // rotation de wheel de la souris
00309         int OnMouseMove(StateMouse *mouse,int face);    // la souris bouge
00310         int OnLButtonDown(StateMouse *mouse,int face);  // appuis
00311         int OnMButtonDown(StateMouse *mouse,int face);  // appuis
00312         int OnRButtonDown(StateMouse *mouse,int face);  // appuis
00313         int OnLButtonUp(StateMouse *mouse,int face);    // relachement
00314         int OnMButtonUp(StateMouse *mouse,int face);    // relachement
00315         int OnRButtonUp(StateMouse *mouse,int face);    // relachement
00316         int OnLButtonDouble(StateMouse *mouse,int face);// double click
00317         int OnMButtonDouble(StateMouse *mouse,int face);// double click
00318         int OnRButtonDouble(StateMouse *mouse,int face);// double click
00319         int OnKeyUp(StateKey *key,int face);                    // appuis
00320         int OnKeyDown(StateKey *key,int face);                  // relachement
00321         int OnKeyDouble(StateKey *key,int face);                // double click
00322         int OnClick(StateMouse *mouse,int face);                // click sans chagement de control depuis l'appuis
00323
00324         void GetCorners(int face,Point3D<double> *points);
00325         Point2D<double> GetLocalPos(int face,Point2D<double> absolutePos);
00326 };
00327
00328 #endif
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: control_instance.h File Reference

control_instance.h File Reference

instanciation static More...

#include "control.h"

Go to the source code of this file.

Detailed Description

instanciation static

doit etre inclus a partir du fichier main sinon les constructeur des class utilisés dans les variables static peuvent etre lancé apres leur utilisation dans les variables global

Definition in file control_instance.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: control_instance.h Source File

control_instance.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00027 #include "control.h"
00028
00029 MyList<Control *> Control::controls;
00030 int Control::nextId = 2;
00031 Inertia Control::inertia;
00032 Timer Control::timerAutoWheel;
00033 Timer Control::timerSleeped;
00034 BOOL Control::leftDown;
00035 BOOL Control::rightDown;
00036 BOOL Control::midDown;
Generated on Fri Aug 20 19:19:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: controlEngine.cpp File Reference

controlEngine.cpp File Reference

#include "controlEngine.h"
#include "object3d_instance.h"
#include "systray.h"
#include <math.h>
#include "jitter.h"
#include <freetype/freetype.h>

Go to the source code of this file.

Defines

#define | SIZE_LIST 25
#define | TIME_TO_VIEW 250

Functions

int | FTLibraryInit ()
void | FTLibraryFree ()
LRESULT CALLBACK | ControlEngineProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
LRESULT CALLBACK | ScreenShotProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
CallBack de gestion de copie de la fenetre OpenGL.

Variables

ControlEngine ce

Define Documentation

#define SIZE_LIST 25

Referenced by ControlEngine::GiveFPS().

#define TIME_TO_VIEW 250

Referenced by ControlEngine::GiveFPS().

Function Documentation

LRESULT CALLBACK ControlEngineProc | ( | HWND | hDlg,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Redirection de la callback

Definition at line 1046 of file controlEngine.cpp.

References ce, and ControlEngine::Proc().

Referenced by ControlEngine::Start().

void FTLibraryFree ( )

Definition at line 255 of file controlEngine.cpp.

int FTLibraryInit ( )

Definition at line 234 of file controlEngine.cpp.

References GLint().

LRESULT CALLBACK ScreenShotProc | ( | HWND | hWnd,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

CallBack de gestion de copie de la fenetre OpenGL.

Todo:
gestion de HDC dans chaque instance de la callback pour gestion message WM_PAINT

Definition at line 1056 of file controlEngine.cpp.

Referenced by ControlEngine::ScreenShot().

Variable Documentation

ControlEngine ce

Definition at line 25 of file controlEngine.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: controlEngine.cpp Source File

controlEngine.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "controlEngine.h"
00020 #include "object3d_instance.h"
00021 #include "systray.h"
00022 #include <math.h>
00023 #include "jitter.h"
00024
00025 extern ControlEngine ce;
00026
00068 ControlEngine::ControlEngine()
00069 {
00070         MyRegistry reg(FALSE);
00071         reg="HKCU\\Software\\3d controls";
00072         if (reg.TestKey())
00073         {
00074                 MyString version;
00075                 reg.GetValue("version",version,"?");
00076                 if (version!=VERSION)
00077                 {
00078                         MyString text,caption;
00079                         caption<<"3D Controls v"<<VERSION;
00080                         text<<"Your 3D Engine version is different of the last running version launched (v"<<version<<")\nWhould you want to use default configuration ?";
00081                         if (MessageBox(NULL,text,caption,MB_YESNO|MB_ICONINFORMATION)==IDYES)
00082                         {
00083                                 reg.DeleteKey();
00084                         }
00085                 }
00086         }
00087         reg="\\light";
00088         reg.GetValue("move0",&lightsMove[0],DEFAULT_LIGHT_MOVE0);
00089         reg.GetValue("move1",&lightsMove[1],DEFAULT_LIGHT_MOVE1);
00090         reg.GetValue("move2",&lightsMove[2],DEFAULT_LIGHT_MOVE2);
00091         reg.GetValue("enable0",&lights[0].isEnable,DEFAULT_LIGHT_ENABLE0);
00092         reg.GetValue("enable1",&lights[1].isEnable,DEFAULT_LIGHT_ENABLE1);
00093         reg.GetValue("enable2",&lights[2].isEnable,DEFAULT_LIGHT_ENABLE2);
00094
00095         reg="..\\fog";
00096         reg.GetValue("enable",&fog.isEnable,DEFAULT_FOG_ENABLE);
00097         reg.GetValue("start",&fog.start,DEFAULT_FOG_START);
00098         reg.GetValue("end",&fog.end,DEFAULT_FOG_END);
00099         reg.GetValue("density",&fog.density,DEFAULT_FOG_DENSITY);
00100         reg.GetValue("mode",(int *)&fog.mode,DEFAULT_FOG_MODE);
00101
00102         reg="..";
00103         reg.GetValue("enableAntiAliasing",&enableAntiAliasing,DEFAULT_ANTIALIASING);
00104         reg.GetValue("antiAliasingQuality",&antiAliasingQuality,DEFAULT_ANTIALIASING_QUALITY);
00105         reg.GetValue("enableRepere",&enableRepere,DEFAULT_VIEW_REPERE);
00106         reg.GetValue("enableLightView",&enableLightView,DEFAULT_VIEW_LIGHT);
00107         reg.GetValue("enablePicking",&enablePicking,DEFAULT_PICKING);
00108         reg.GetValue("enableDelta",&enableDelta,DEFAULT_DELTA);
00109         reg.GetValue("enableBackGround",&enableBackGround,DEFAULT_VIEW_BACKGROUND);
00110         reg.GetValue("enableFPS",&enableFPS,DEFAULT_VIEW_FPS);
00111         reg.GetValue("enableInertia",&enableInertia,DEFAULT_INERTIA);
00112         reg.GetValue("enableMonitor",&monitor.enable,DEFAULT_MONITOR);
00113         reg.GetValue("enableViewInertia",&enableViewInertia,DEFAULT_VIEW_INERTIA);
00114
00115         reg.GetValue("enableFullScreen",&screenMain.enableFullScreen,DEFAULT_FULLSCREEN);
00116         reg.GetValue("enableTitle",&screenMain.enableTitle,DEFAULT_TITLED);
00117         reg.GetValue("enableRegion",&screenMain.region.enable,DEFAULT_VIEW_REGION);
00118
00119         reg.GetValue("polygonModeFront",(int *)&polygonMode.front,DEFAULT_POLYGON_FRONT);
00120         reg.GetValue("polygonModeBack",(int *)&polygonMode.back,DEFAULT_POLYGON_BACK);
00121
00122         int dx,dy;
00123         reg.GetValue("dxWin",&dx,DEFAULT_XSIZE);
00124         reg.GetValue("dyWin",&dy,DEFAULT_YSIZE);
00125         dxWin=dx;
00126         dyWin=dy;
00127
00128         reg.GetValue("timerRefresh",&refreshTime,DEFAULT_TIMER_REFRESH);
00129         reg.GetValue("cpuLimit",&cpuLimit,DEFAULT_CPU_LIMIT);
00130
00131         depth = 15; // distance de l'observateur
00132
00133         hInst = NULL;
00134
00135         aspect = 0;
00136         enableCursor = FALSE;
00137         usingInertia = 0;
00138         for (int i=0;i<3;i++) eventInertia[i].Init(i);
00139
00140         tipFPS = 0;
00141         InitFont();
00142         fog.color.Set(0.22f,0.43f,0.64f,1);
00143
00144         // init de l'infine qui contien un univers
00146         masterContainer = new MasterContainer;
00147         masterContainer->Create();
00148
00149         Push(masterContainer);
00150                 Face trashFace;
00151                 trashFace.name="Trash";
00152                 trash.Add(trashFace);
00153                 // univers et taskWindow doivent etre delcarer en dynamique car sinon les contructeur sont appeler avant que tout soit initialisé
00154                 // ex.: TaskWindow() ==> Window()==> Title() mais la fonte n'est pas encors disponible
00155
00156                 univers = new Univers;
00157                 univers->Create();
00158
00159                 taskWindow = new TaskWindow;
00160                 taskWindow->Create();
00161         Pop();
00162         InitMonitor();
00163 }
00164
00170 ControlEngine::~ControlEngine()
00171 {
00172         MyRegistry reg(TRUE);
00173         reg="HKCU\\Software\\3d controls";
00174         reg="\\light";
00175         reg.SetValue("move0",lightsMove[0]);
00176         reg.SetValue("move1",lightsMove[1]);
00177         reg.SetValue("move2",lightsMove[2]);
00178         reg.SetValue("enable0",lights[0].isEnable);
00179         reg.SetValue("enable1",lights[1].isEnable);
00180         reg.SetValue("enable2",lights[2].isEnable);
00181
00182         reg="..\\fog";
00183         reg.SetValue("enable",fog.isEnable);
00184         reg.SetValue("start",fog.start);
00185         reg.SetValue("end",fog.end);
00186         reg.SetValue("density",fog.density);
00187         reg.SetValue("mode",fog.mode);
00188
00189         reg="..";
00190         reg.SetValue("version",VERSION);
00191         reg.SetValue("enableAntiAliasing",enableAntiAliasing);
00192         reg.SetValue("antiAliasingQuality",antiAliasingQuality);
00193         reg.SetValue("enableRepere",enableRepere);
00194         reg.SetValue("enableLightView",enableLightView);
00195         reg.SetValue("enablePicking",enablePicking);
00196         reg.SetValue("enableDelta",enableDelta);
00197         reg.SetValue("enableBackGround",enableBackGround);
00198         reg.SetValue("enableFPS",enableFPS);
00199         reg.SetValue("enableInertia",enableInertia);
00200         reg.SetValue("enableMonitor",monitor.enable);
00201         reg.SetValue("enableViewInertia",enableViewInertia);
00202
00203         reg.SetValue("enableFullScreen",screenMain.enableFullScreen);
00204         reg.SetValue("enableTitle",screenMain.enableTitle);
00205         reg.SetValue("enableRegion",screenMain.region.enable);
00206
00207         reg.SetValue("polygonModeFront",(int)polygonMode.front);
00208         reg.SetValue("polygonModeBack",(int)polygonMode.back);
00209
00210         reg.SetValue("dxWin",screenMain.dxNormal);
00211         reg.SetValue("dyWin",screenMain.dyNormal);
00212
00213         reg.SetValue("timerRefresh",refreshTime);
00214         reg.SetValue("cpuLimit",cpuLimit);
00215
00216         EndFont();
00217         Stop();
00218         delete taskWindow;
00219         delete univers;
00220
00221 }
00222
00223 #include <freetype/freetype.h>
00224 /* Memory state Var needed often*/
00225 static FT_Library FTlib = NULL;
00226 static int init_done = 0;
00227 static int maxTextSize = 0;
00228 static GLuint activeTextureID = 0;
00229
00230 /*
00231 Freetype library Handling
00232 \TODO essais correction bug de la FTGL v2.0.9
00233 */
00234 int FTLibraryInit ()
00235 {
00236         int err;
00237
00238         if (!maxTextSize) glGetIntegerv (GL_MAX_TEXTURE_SIZE, (GLint*) &maxTextSize);
00239         if (!maxTextSize) //maxTextSize = 256;
00240         {
00241                 glGetIntegerv( GL_MAX_TEXTURE_SIZE, (GLint*)&maxTextSize);
00242                 if (maxTextSize > 512) maxTextSize = 512;
00243         }
00244
00245         if (FTlib != 0 ) return TRUE;
00246         err = FT_Init_FreeType( &FTlib);
00247         if (err)
00248         {
00249                 FTlib = 0;
00250                 return FALSE;
00251         }
00252         return TRUE;
00253 }
00254
00255 void FTLibraryFree ()
00256 {
00257         if (init_done)
00258         {
00259                 FT_Done_FreeType (FTlib);
00260                 FTlib= 0;
00261         }
00262 }
00263
00269 BOOL ControlEngine::InitFont()
00270 {
00271         fontTexture = new FTGLTextureFont(FONT_FILE);
00272         fontExtrude = new FTGLExtrdFont(FONT_FILE);
00273         fontPixmap = new FTGLPixmapFont(FONT_FILE);
00274         fontOutline = new FTGLOutlineFont(FONT_FILE);
00275         fontPolygon = new FTGLPolygonFont(FONT_FILE);
00276         fontBitmap = new FTGLBitmapFont(FONT_FILE);
00277
00278         if (!fontPolygon->FaceSize(16)) return FALSE; // taille max 10
00279         if (!fontBitmap->FaceSize(16)) return FALSE;
00280         if (!fontOutline->FaceSize(16)) return FALSE;
00281         if (!fontTexture->FaceSize(16)) return FALSE;
00282         if (!fontExtrude->FaceSize(16)) return FALSE;
00283         if (!fontPixmap->FaceSize(16)) return FALSE;
00284
00285         fontPolygon->CharMap(ft_encoding_unicode);
00286         fontBitmap->CharMap(ft_encoding_unicode);
00287         fontOutline->CharMap(ft_encoding_unicode);
00288         fontTexture->CharMap(ft_encoding_unicode);
00289         fontExtrude->CharMap(ft_encoding_unicode);
00290         fontPixmap->CharMap(ft_encoding_unicode);
00291
00292         return TRUE;
00293 }
00294
00298 void ControlEngine::EndFont()
00299 {
00300         if (fontPolygon)        delete fontPolygon;
00301         if (fontBitmap)         delete fontBitmap;
00302         if (fontExtrude)        delete fontExtrude;
00303         if (fontTexture)        delete fontTexture;
00304         if (fontPixmap)         delete fontPixmap;
00305         if (fontOutline)        delete fontOutline;
00306 }
00307
00309
00310 void ControlEngine::InitMonitor()
00311 {
00312         monitor.fileName="tools/perfMon.txt";
00313         monitor.Begin("freeTime",TRUE);
00314 }
00315
00322 void ControlEngine::Start(HINSTANCE hInstance)
00323 {
00324         // pour les dialogs
00325         LoadLibrary("riched32.dll");
00326         InitCommonControls(); // ajouter "comctl32.lib" dans les settings
00327
00328         hInst = hInstance;
00329         lights[0].id = GL_LIGHT0;
00330         lights[1].id = GL_LIGHT1;
00331         lights[2].id = GL_LIGHT2;
00332         lights[3].id = GL_LIGHT3;
00333
00334         // class de la fenetre de base
00335         WNDCLASS wc ;
00336         memset (&wc, 0, sizeof(wc)) ;
00337         wc.style = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS;
00338         wc.hInstance = hInst;
00339         wc.hbrBackground = NULL;//si valeur: "(HBRUSH) (COLOR_BTNFACE + 1);" il faut gerer le WM_ERASEBKGND//
00340
00341         // config du systray
00342         wc.hCursor = LoadCursor (NULL, IDC_ARROW);
00343         wc.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICON_SYSTRAY));
00344         wc.lpfnWndProc = SysTrayProc;
00345         screenSystray.Setup(&wc,"Systray","3D Controls - Systray");
00346         screenSystray.Create(hInst);
00347
00348         // creation de la class fenetre
00349         wc.hCursor = LoadCursor (NULL, IDC_ARROW);
00350         wc.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_DCONTROLS));
00351         wc.lpfnWndProc = ControlEngineProc;
00352         screenMain.Setup(&wc,"Render","3D Controls - Render");
00353         screenMain.SetStyle(WS_OVERLAPPEDWINDOW);
00354         screenMain.SetSize((int)dxWin,(int)dyWin,TRUE);
00355         screenMain.Create(hInst);
00356         screenMain.BindOpenGL(TRUE);//enableAntiAliasing);
00357         Object3D::hDC=screenMain.hDC;
00358         InitTextures();
00359         InitLights();
00360         ShowCursor(FALSE);
00361         screenMain.Show(TRUE); // pour que la fenetre soit active il faut la créer en dernier (la derniere est activé !)
00362         Setup((int)dxWin,(int)dyWin);
00363         // init de timer
00364         Timer::Init(screenMain.hWnd);
00365         SetTimerRefresh(refreshTime);
00366
00367         // init de Inertia
00368         Control::inertia.Start();
00369         cursor.Create();
00370
00371 }
00372
00376 void ControlEngine::Stop()
00377 {
00378         PostQuitMessage(0);
00379         screenMain.Destroy();
00380         screenSystray.Destroy();
00381 }
00382
00386 void ControlEngine::Loop()
00387 {
00388         MSG msg;
00389         while (GetMessage(&msg, NULL, 0, 0))
00390         {
00391                 TranslateMessage(&msg);
00392                 DispatchMessage(&msg);
00393         }
00394 }
00395
00401 void ControlEngine::InitViewPort(int deltaX,int deltaY)
00402 {
00403         glViewport(0, 0, deltaX,deltaY);
00404         glGetIntegerv(GL_VIEWPORT,viewPort);
00405
00406         glMatrixMode(GL_PROJECTION);
00407         aspect = (GLdouble)deltaX/(GLdouble)deltaY;
00408         glLoadIdentity();
00409         SetPerspective(0,0);
00410 }
00411
00417 void ControlEngine::Setup(int deltaX, int deltaY)
00418 {
00419         InitViewPort(deltaX,deltaY);
00420         glMatrixMode(GL_MODELVIEW);
00421         glLoadIdentity();                    // Reset (init) the modelview matrix
00422         gluLookAt(0,0,depth,0,0,0,0,1,0);
00423
00424         polygonMode.Use();                                       // type de calcul polygonal
00425         glShadeModel(GL_SMOOTH);             // Enable smooth shading
00426
00427         //glEnable(GL_CULL_FACE);                       // n'affiche que les face avant
00428         //glColorMaterial(GL_FRONT, GL_DIFFUSE);
00429         //glEnable(GL_COLOR_MATERIAL);
00430
00431         glClearDepth(1);                                         // Clear depth buffer
00432         glEnable(GL_DEPTH_TEST);             // Enables depth test
00433         glDepthFunc(GL_LEQUAL);                      // Type of depth test to perform
00434
00435         glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // Enhances image quality
00436
00437         fog.Use();
00438
00439         glClearColor(0.22f,0.43f,0.64f,0);      // Set background to blue
00440         glClearAccum(0.0, 0.0, 0.0, 0.0);               // tempon d'accumulation a 0
00441
00442         glEnable(GL_LINE_SMOOTH);
00443         glEnable(GL_POLYGON_SMOOTH);
00444         glEnable(GL_POINT_SMOOTH);
00445
00446         // pour se simplifier la vie au niveau des calcul des normal, (au detriment des performance par contre)
00447         glEnable(GL_NORMALIZE);
00448         glEnable(GL_AUTO_NORMAL);
00449 }
00450
00451 void ControlEngine::Refresh(BOOL setSize)
00452 {
00453         Setup((int)dxWin,(int)dyWin);
00454         if (setSize) screenMain.SetSize((int)dxWin,(int)dyWin,FALSE);
00455         screenMain.Update(FALSE);
00456         screenMain.Show(TRUE);
00457 }
00458
00467 void ControlEngine::SetTimerRefresh(int value)
00468 {
00469         BindTimer(timerRefresh,OnRefresh,value);
00470 }
00471
00475 void ControlEngine::DrawCursors()
00476 {
00477         if (!enableCursor) return;
00478         enableCursor = FALSE; // le message WM_SETCURSOR re-active l'affichage
00479
00480         glGetDoublev (GL_PROJECTION_MATRIX,projMatrix);
00481         glGetDoublev (GL_MODELVIEW_MATRIX,modelMatrix);
00482
00483         Color color;
00484         if (usingInertia)
00485         {
00486                 color.Set(0,0,1);
00487                 DrawCursor(pickingInertia.mouse.pos,color,FALSE);
00488         }
00489         color.SetFull();
00490         DrawCursor(pickingCursor.mouse.pos,color,TRUE);
00491 }
00492
00499 void ControlEngine::DrawCursor(Point2D<int> mousePos,Color color,BOOL isDrawInertia)
00500 {
00501         Point2D<int> hotSpot;
00502         hotSpot = cursor.GetHotSpot(cursor.curType);
00503         cursor.Rotate(univers->faceNode->elem->angle);
00504         cursor.Draw(mousePos.x+hotSpot.x,mousePos.y+hotSpot.y);
00505 }
00506
00515 void ControlEngine::Draw2DText(int xCenter,int yCenter,int x,int y,char *text,Color *color)
00516 {
00517         Color colorFull;
00518         if (!color)
00519         {
00520                 color=&colorFull;
00521                 color->SetFull();
00522         }
00523         Material material;
00524         material.emission=*color;
00525         material.Use();
00526
00527         Point3D<GLdouble> pos;
00528         switch (xCenter)
00529         {
00530         case -1: break;
00531         case 0: x+=deltaXwin/2; break;
00532         case 1: x+=deltaXwin; break;
00533         }
00534         switch (yCenter)
00535         {
00536         case -1: y=deltaYwin-y; break;
00537         case 0: y=deltaYwin/2-y; break;
00538         case 1: break;
00539         }
00540
00541         if (gluUnProject(x,y,0,modelMatrix,projMatrix,viewPort,&pos.x,&pos.y,&pos.z)==GL_TRUE)
00542         {
00543                 glPushMatrix();
00544                 pos.glTranslated();
00545                 glScalef(0.001f,0.001f,1); // valeur empirique
00546                 fontTexture->Render(text);
00547                 glPopMatrix();
00548         }
00549 }
00550
00554 BOOL ControlEngine::DrawOrigineRepere()
00555 {
00556         if (!enableRepere) return FALSE;
00557         Object3D::DrawRepere();
00558         return TRUE;
00559 }
00560
00565 BOOL ControlEngine::DrawFPS()
00566 {
00567         if (!enableFPS)
00568         {
00569                 if (tipFPS)
00570                 {
00571                         delete tipFPS;
00572                         tipFPS=NULL;
00573                 }
00574                 return FALSE;
00575         }
00576         if (!tipFPS)
00577         {
00578                 tipFPS = new Tip;
00579                 ce.Push(ce.masterContainer);
00580                         tipFPS->Create();
00581                         tipFPS->XDockLeft(2,80);
00582                         tipFPS->YDockTop(2,20);
00583                 ce.Pop();
00584         }
00585         static MyString fps;
00586         fps.Format("%.1f fps",GiveFPS());
00587         tipFPS->SetText(fps);
00588 /*
00589         Draw2DText(-1,-1,0,24,fps);
00590         Draw2DText(0,-1,0,24,"haut center ");
00591         Draw2DText(1,-1,-100,24,"haut droit");
00592         Draw2DText(-1,0,0,0,"centré gauche");
00593         Draw2DText(0,0,0,0,"centré centré");
00594         Draw2DText(1,0,-100,0,"centré droit");
00595         Draw2DText(-1,1,0,0,"bas gauche");
00596         Draw2DText(0,1,0,0,"bas centré");
00597         Draw2DText(1,1,-100,0,"bas droit");
00598 */
00599         return TRUE;
00600 }
00601
00608 float ControlEngine::GiveFPS()
00609 {
00610 #define SIZE_LIST 25     // nb d'element a prendre en compt
00611 #define TIME_TO_VIEW 250 // temp de changement de valeur min
00612
00613         static MyStack<int> lstTime;
00614         static DWORD oldTick=0;
00615         static int sumTime=0;
00616         static DWORD lastViewTime=0;
00617         static float lastViewValue=0;
00618
00619         DWORD tick = GetTickCount();
00620         if (!oldTick) { lastViewTime = oldTick = tick; return 0; }
00621         int delta = tick-oldTick;
00622
00623         oldTick = tick;
00624         sumTime+=delta;
00625         lstTime.Push(delta);
00626
00627         if (lstTime.GetNbElem()>SIZE_LIST)
00628         {
00629                 sumTime-=lstTime.FrontPop();
00630                 if ((tick-lastViewTime)> TIME_TO_VIEW)
00631                 {
00632                         lastViewValue = (SIZE_LIST*1000)/(float)sumTime;
00633                         lastViewTime=tick;
00634                 }
00635                 return lastViewValue;
00636         }
00637         else return 0;
00638 }
00639
00647 void ControlEngine::ApplyScaleView()
00648 {
00649         GLdouble scaling=12.4/dyWin;
00650         glScaled(scaling,scaling,scaling);
00651 }
00652
00656 void ControlEngine::SetPerspective(float xJitter,float yJitter)
00657 {
00658         //glOrtho(-dxWin/2,dxWin/2-1,-dyWin/2,dyWin/2-1,-100,100);
00659         double angle=45;
00660         if (!xJitter&&!yJitter) gluPerspective(angle, aspect, 0.01, 1000);
00661         else accPerspective(angle,aspect , 0.01, 1000, xJitter , yJitter, 0.0, 0.0, 1.0);
00662 }
00663
00664 BOOL ControlEngine::ProjectWindowToObject(Point3D<GLdouble> &windowPos,Point3D<GLdouble> *objectPos)
00665 {
00666         return gluUnProject(windowPos.x,deltaYwin-windowPos.y,windowPos.z,modelMatrix,projMatrix,viewPort,&objectPos->x,&objectPos->y,&objectPos->z)==GL_TRUE?TRUE:FALSE;
00667 }
00668
00669 BOOL ControlEngine::ProjectWindowToObject(GLdouble windowPosX,GLdouble windowPosY,GLdouble windowPosZ,GLdouble *objectPosX,GLdouble *objectPosY,GLdouble *objectPosZ)
00670 {
00671         GLdouble _objectPosX,_objectPosY,_objectPosZ;
00672         if (!objectPosX) objectPosX=&_objectPosX;
00673         if (!objectPosY) objectPosY=&_objectPosY;
00674         if (!objectPosZ) objectPosZ=&_objectPosZ;
00675         return gluUnProject(windowPosX,deltaYwin-windowPosY,windowPosZ,modelMatrix,projMatrix,viewPort,objectPosX,objectPosY,objectPosZ)==GL_TRUE?TRUE:FALSE;
00676 }
00677
00678 BOOL ControlEngine::ProjectObjectToWindow(Point3D<GLdouble> &objectPos,Point3D<GLdouble> *windowPos)
00679 {
00680         int result = gluProject(objectPos.x,objectPos.y,objectPos.z,modelMatrix,projMatrix,viewPort,&windowPos->x,&windowPos->y,&windowPos->z);
00681         windowPos->y=deltaYwin-windowPos->y;
00682         return result==GL_TRUE?TRUE:FALSE;
00683 }
00684
00685 BOOL ControlEngine::ProjectObjectToWindow(GLdouble objectPosX,GLdouble objectPosY,GLdouble objectPosZ,GLdouble *windowPosX,GLdouble *windowPosY,GLdouble *windowPosZ)
00686 {
00687         GLdouble _windowPosX,_windowPosY,_windowPosZ;
00688         if (!windowPosX) windowPosX=&_windowPosX;
00689         if (!windowPosY) windowPosY=&_windowPosY;
00690         if (!windowPosZ) windowPosZ=&_windowPosZ;
00691         int result = gluProject(objectPosX,objectPosY,objectPosZ,modelMatrix,projMatrix,viewPort,windowPosX,windowPosY,windowPosZ);
00692         *windowPosY=deltaYwin-*windowPosY;
00693         return result==GL_TRUE?TRUE:FALSE;
00694 }
00695
00701 void ControlEngine::InitLights()
00702 {
00703         Light::SetLighting(TRUE);
00704         glLightModeli(GL_LIGHT_MODEL_TWO_SIDE,GL_TRUE); // sinon les face arriere ne sont pas affiché
00705
00706         lights[0].material.SetDS(1,0,0);
00707         lights[0].position.Set(-0,0,10,TRUE);
00708         lights[0].cutoff = 20;
00709         lights[0].exponent = 50;
00710
00711         BOOL isEnable;
00712         isEnable=lights[1].isEnable;
00713         lights[1]=lights[0];
00714         lights[1].isEnable=isEnable;
00715         lights[1].material.SetDS(0,1,0);
00716
00717         isEnable=lights[2].isEnable;
00718         lights[2]=lights[1];
00719         lights[2].isEnable=isEnable;
00720         lights[2].material.SetDS(1,1,1);
00721         lights[2].attenuationCst.Set(4);
00722
00723         lights[3].isEnable=TRUE;
00724         lights[3].material.SetDS(.5,.5,.5);
00725         lights[3].material.ambient.Set(.5,.5,.5);
00726         lights[3].position.Set(0,0,(GLfloat)depth,FALSE);
00727
00728         MajLights();
00729 }
00730
00737 void ControlEngine::InitTextures()
00738 {
00739         texture.min.FromFile("min","texture/control/button minus.bmp");
00740         texture.max.FromFile("max","texture/control/button max.bmp");
00741         texture.maxAlternate.FromFile("alternate","texture/control/button max alternate.bmp");
00742
00743         texture.rotateFace.FromFile("rotated face","texture/control/button rotate face.bmp");
00744         texture.close.FromFile("close","texture/control/button close.bmp");
00745         texture.iconBase.FromFile("baseIcon","texture/control/base icon.bmp");
00746         texture.tropique.FromFile("tropique","texture/other/virus.jpg");
00747         texture.arrow.FromFile("arrow","texture/control/arrow left.png");
00748         texture.arrowOblique.FromFile("arrow oblique","texture/control/arrow top left.png");
00749         texture.plus.FromFile("plus","texture/control/plus.png");
00750         texture.minus.FromFile("minus","texture/control/minus.png");
00751         texture.grip.FromFile("grip","texture/control/grip.bmp");
00752
00753         texture.degradeeFocus.Begin("degradeeOn",2,2);
00754         texture.degradeeFocus.SetPixel(0,0,10,36,106);
00755         texture.degradeeFocus.SetPixel(1,0,166,202,240);
00756         texture.degradeeFocus.SetPixel(0,1,10,36,106);
00757         texture.degradeeFocus.SetPixel(1,1,10,36,106);
00758         texture.degradeeFocus.End();
00759
00760         texture.degradeeUnFocus.Begin("degradeeOff",2,2);
00761         texture.degradeeUnFocus.SetPixel(0,0,128,128,128);
00762         texture.degradeeUnFocus.SetPixel(1,0,192,192,192);
00763         texture.degradeeUnFocus.SetPixel(0,1,128,128,128);
00764         texture.degradeeUnFocus.SetPixel(1,1,128,128,128);
00765         texture.degradeeUnFocus.End();
00766
00767         texture.cursorArrow.FromFile("cursorArrow","texture/cursor/arrow.png");
00768         texture.cursorWait.FromFile("cursorWait","texture/cursor/wait.png");
00769         texture.cursorText.FromFile("cursorArrow","texture/cursor/text.png");
00770         texture.cursorMoving.FromFile("cursorWait","texture/cursor/moving.png");
00771         texture.cursorPush.FromFile("cursorPush","texture/cursor/push.png");
00772
00773         texture.background.FromFile("background","texture/background/venus.png");
00774
00775         //fonte.CreateFromBitmap("Arial","fonte/arial.bmp");
00776 }
00777
00781 void ControlEngine::MajLights()
00782 {
00783         for (int i=0;i<4;i++) lights[i].Use();
00784
00785         boxLights[0].material.emission = lights[0].material.specular;
00786         boxLights[0].delta.Set(1,1,1);
00787         boxLights[0].coor.z = 10;
00788
00789         boxLights[1]=boxLights[0];
00790         boxLights[1].material.emission = lights[1].material.specular;
00791
00792         boxLights[2]=boxLights[0];
00793         boxLights[2].material.emission = lights[2].material.specular;
00794 }
00795
00800 void ControlEngine::Draw()
00801 {
00802         monitor.Reset("text");
00803         monitor.Reset("testPicking");
00804         monitor.End("freeTime");
00805         monitor.Begin("frame",TRUE);
00806         monitor.Begin("initScene",TRUE);
00807         monitor.Reset("textRender");
00808         monitor.Reset("textRenderCenter");
00809         monitor.Reset("textAlign");
00810
00811         //primitive.ReOrderForBlending();
00812
00813         // gestion de l'antialiasing
00814         int jitterNum = antiAliasingQuality;
00815         BOOL isFirst = TRUE;
00816         if (!enableAntiAliasing) jitterNum=0;
00817         Jitter *jitter = &jitters[jitterNum];
00818         int jitterIndice;
00819         Recorder record;
00820         for (jitterIndice = 0; jitterIndice < jitter->nb ; jitterIndice++)
00821         {
00822                 if (enableAntiAliasing) glEnable(GL_MULTISAMPLE_ARB);
00823                 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
00824                 if (enableAntiAliasing) SetPerspective(jitter->tab[jitterIndice].x,jitter->tab[jitterIndice].y);
00825                 glMatrixMode(GL_MODELVIEW);
00826                 glLoadIdentity();
00827                 gluLookAt(0,0,depth,0,0,0,0,1,0);
00828
00829                 DrawLight();
00830                 DrawBackGround();
00831
00832                 // sauvegarde des projections
00833                 glGetDoublev (GL_PROJECTION_MATRIX,projMatrix);
00834                 glGetDoublev (GL_MODELVIEW_MATRIX,modelMatrix);
00835
00836                 //affichage
00837                 DrawOrigineRepere();
00838                 ApplyScaleView();
00839
00840                 monitor.End("initScene");
00841                 monitor.Begin("draw",TRUE);
00842
00843                 if (enableAntiAliasing)
00844                 {
00845                         if (isFirst)
00846                         {
00847                                 record.BeginRecord(TRUE);
00848                                 DrawScene(FALSE);
00849                                 DrawCursors();
00850                                 record.EndRecord();
00851                                 glAccum(GL_LOAD,1.0f/(float)jitter->nb); //pour eviter de faire un glClear(GL_ACCUM_BUFFER_BIT); au debut
00852                                 isFirst=FALSE;
00853                         }
00854                         else
00855                         {
00856                                 record.Play();
00857                                 glAccum(GL_ACCUM, 1.0f/(float)jitter->nb);
00858                         }
00859                 }
00860                 else
00861                 {
00862                         DrawScene(FALSE);
00863                         DrawCursors();
00864                 }
00865         }
00866         if (enableAntiAliasing) glAccum (GL_RETURN, 1.0f);
00867
00868         monitor.End("draw");
00869         monitor.Begin("picking",TRUE);
00870         monitor.Begin("drawPicking",TRUE);
00871         if (enablePicking)
00872         {
00873                 pickingCursor.Test();
00874                 if (usingInertia) pickingInertia.Test();
00875         }
00876         DrawFPS();
00877
00878         monitor.End("picking");
00879         monitor.End("frame");
00880         monitor.AddRecord();
00881         monitor.Begin("freeTime",TRUE);
00882 }
00883
00888 BOOL ControlEngine::DrawBackGround()
00889 {
00890         if (!enableBackGround) return FALSE;
00891
00892         glPushMatrix();
00893         univers->faceNode->elem->angle.glRotated();
00894
00895         /*Face fond;
00896         fond.material.SetDS(.5,.5,.5);
00897         fond.name = 7;
00898         fond.Draw(FALSE);*/
00899
00900         glDisable(GL_BLEND);
00901         glDisable(GL_TEXTURE_2D);
00902
00903         Material material;
00904         material.SetNull();
00905
00906         GLUquadric *newQuadric = gluNewQuadric();
00907         gluQuadricNormals(newQuadric,GLU_NONE); // sinon influ de maniere misterieuse les autre normales
00908         material.emission.Set(1,1,1);
00909         material.Use();
00910         glEnable(GL_TEXTURE_2D);
00911         //glDisable(GL_DEPTH_TEST);
00912         glBindTexture(GL_TEXTURE_2D,texture.background.id);
00913         gluQuadricOrientation(newQuadric, GLU_INSIDE);
00914         gluQuadricTexture(newQuadric,TRUE);
00915         gluQuadricDrawStyle(newQuadric, GLU_FILL);
00916
00917         // immage correct de 24 a 900
00918         gluSphere(newQuadric,univers->faceNode->elem->computePosition.z*0.1+200,50,50);
00919         gluDeleteQuadric(newQuadric);
00920         glDisable(GL_TEXTURE_2D);
00921         material.emission.SetNull();
00922         material.Use();
00923         glPopMatrix();
00924         //glEnable(GL_DEPTH_TEST); // si gestion exterieur
00925         //glClear(GL_DEPTH_BUFFER_BIT);
00926         return FALSE;
00927 }
00928
00932 void ControlEngine::DrawScene(BOOL isPicking)
00933 {
00934         //glCallList(1);
00935         primitive.Draw(isPicking);
00936 }
00937
00941 void ControlEngine::DrawLight()
00942 {
00943         static float count =0;
00944         count+=0.04f;
00945
00946         // affiche une lumiere
00947         if (lights[0].IsEnabled())
00948         {
00949                 if (lightsMove[0])
00950                 {
00951                         lights[0].position.x=0;
00952                         lights[0].position.y=cos(count)*10.0f;
00953                         lights[0].position.z=sin(count)*10.0f;
00954                         lights[0].direction.Set(-lights[0].position.x,-lights[0].position.y,-lights[0].position.z);
00955                 }
00956                 if (enableLightView)
00957                 {
00958                         boxLights[0].coor = lights[0].position;
00959                         boxLights[0].CenterIt();
00960                         boxLights[0].Draw();
00961                 }
00962         }
00963
00964         if (lights[1].IsEnabled())
00965         {
00966                 if (lightsMove[1])
00967                 {
00968                         lights[1].position.x=sin(count)*10.0f;
00969                         lights[1].position.y=0;
00970                         lights[1].position.z=cos(count)*10.0f;
00971                         lights[1].direction.Set(-lights[1].position.x,-lights[1].position.y,-lights[1].position.z);
00972                 }
00973                 if (enableLightView)
00974                 {
00975                         boxLights[1].coor = lights[1].position;
00976                         boxLights[1].CenterIt();
00977                         boxLights[1].Draw();
00978                 }
00979         }
00980
00981         if (lights[2].IsEnabled())
00982         {
00983                 if (lightsMove[2])
00984                 {
00985                         lights[2].position.x=sin(count)*10.0f;
00986                         lights[2].position.y=cos(count)*10.0f;
00987                         lights[2].position.z=(GLfloat)depth;
00988                         lights[2].direction.Set(0,0,-1); // direction paralelle
00989                 }
00990                 else
00991                 {
00992                         lights[2].position.x=10.0f*(-1+2.0f*((float)pickingCursor.mouse.pos.x/(float)deltaXwin));
00993                         lights[2].position.y=10.0f*(1-2.0f*((float)pickingCursor.mouse.pos.y/(float)deltaYwin));
00994                         lights[2].position.z=(GLfloat)depth;
00995                 }
00996                 if (enableLightView)
00997                 {
00998                         boxLights[2].coor = lights[2].position;
00999                         boxLights[2].CenterIt();
01000                         boxLights[2].Draw();
01001                 }
01002         }
01003         MajLights();
01004 }
01005
01016 double ControlEngine::ComputeRealZ(double logicZ)
01017 {
01018         double y10=438.5964912;
01019         double y100=5434.782609;
01020         double alpha = (y100-y10)/90.0; // empirique je sais mais ca marche!
01021         double cst = y100-100.0*alpha;
01022         double zLineaire = 1.0/(2.0-logicZ);
01023         double realZdist =(zLineaire-cst)/alpha;
01024         double zDist = realZdist*0.001015;              // ratio en pleine ecrant
01025         return zDist;
01026 }
01027
01032 int ControlEngine::OnRefresh(Timer *timer)
01033 {
01034         /* fonctionne mais n'est pas optimisé, le mieux est de faire cela apres le swaping
01035         region.Reset(deltaXwin,deltaYwin);
01036         Draw();
01037         region.Use(hWnd);
01038         */
01039         InvalidateRect(screenMain.hWnd,NULL,FALSE);
01040         return 0;
01041 }
01042
01046 LRESULT CALLBACK ControlEngineProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam)
01047 {
01048         return ce.Proc(hDlg,message,wParam,lParam);
01049 }
01050
01056 LRESULT CALLBACK ScreenShotProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
01057 {
01058         switch (message)
01059         {
01060                 case WM_CREATE:
01061                         return TRUE;
01062
01063                 case WM_PAINT:
01064                         PAINTSTRUCT ps;
01065                         BeginPaint(hWnd,&ps);
01066                         EndPaint(hWnd,&ps);
01067                         return TRUE;
01068         }
01069         return DefWindowProc(hWnd,message,wParam,lParam);
01070 }
01071
01072 void ControlEngine::ScreenShot(TypeScreenShot type)
01073 {
01074         static BOOL isFirst = TRUE;
01075         if (isFirst)
01076         {
01077                 isFirst=FALSE;
01078                 WNDCLASS   wc ;
01079                 memset (&wc, 0, sizeof(wc)) ;
01080                 wc.style                        = CS_HREDRAW | CS_VREDRAW;
01081                 wc.lpfnWndProc          = ScreenShotProc;
01082                 wc.hInstance            = hInst;
01083                 wc.hIcon                        = LoadIcon(hInst, MAKEINTRESOURCE(IDI_DCONTROLS));
01084                 wc.hCursor                      = LoadCursor (NULL, IDC_ARROW);
01085                 wc.hbrBackground        = NULL;//si valeur: "(HBRUSH) (COLOR_BTNFACE + 1);" il faut gerer le WM_ERASEBKGND//
01086                 wc.lpszClassName        = TEXT ("ScreenShot");
01087                 if (!RegisterClass(&wc) ) MessageBox (NULL, "ScreenShot - Window","!Failed",MB_OK) ;
01088         }
01089
01090         MyString title("3D Control - ScreenShot - ");
01091         switch (type)
01092         {
01093                 case ssRGB: title<<"RGB"; break;
01094                 case ssDepth: title<<"Depth"; break;
01095                 case ssBlending: title<<"blending"; break;
01096                 case ssLuminance: title<<"luminance"; break;
01097         }
01098         HWND hWndScreenShot = CreateWindow("ScreenShot",title,WS_OVERLAPPEDWINDOW,0,0,(int)dxWin,(int)dyWin,NULL,NULL,hInst,NULL);
01099         MoveWindow(hWndScreenShot,400,0,(int)dxWin,(int)dyWin+28,FALSE);
01100         ShowWindow (hWndScreenShot,SW_SHOW);
01101
01102         HDC hDc = GetDC(hWndScreenShot);
01103         Point3D<GLfloat> pos;
01104         Color color;
01105         GLfloat value;
01106         for (pos.x=0;pos.x<dxWin;pos.x++)
01107                 for (pos.y=0;pos.y<dyWin;pos.y++)
01108                 {
01109                         switch (type)
01110                         {
01111                         case ssLuminance:
01112                                 glReadPixels((GLint)pos.x,(GLint)pos.y,1,1,GL_LUMINANCE,GL_FLOAT,&value);
01113                                 SetPixel(hDc,(int)pos.x,(int)dyWin-(int)pos.y,RGB(value*255,value*255,value*255));
01114                                 break;
01115                         case ssRGB:
01116                                 glReadPixels((GLint)pos.x,(GLint)pos.y,1,1,GL_RGBA,GL_FLOAT,&color);
01117                                 SetPixel(hDc,(int)pos.x,(int)dyWin-(int)pos.y,RGB(color.r*255,color.g*255,color.b*255));
01118                                 break;
01119                         case ssDepth:
01120                                 glReadPixels((GLint)pos.x,(GLint)pos.y,1,1,GL_DEPTH_COMPONENT,GL_FLOAT,&pos.z);
01121                                 value=(pos.z-0.999f)*1000.0f;
01122                                 SetPixel(hDc,(int)pos.x,(int)dyWin-(int)pos.y,RGB(value*255,value*255,value*255));
01123                                 break;
01124                         case ssBlending:
01125                                 glReadPixels((GLint)pos.x,(GLint)pos.y,1,1,GL_ALPHA,GL_FLOAT,&value);
01126                                 SetPixel(hDc,(int)pos.x,(int)dyWin-(int)pos.y,RGB(value*255,value*255,value*255));
01127                                 break;
01128                         }
01129
01130                 }
01131 }
01132
01136 LRESULT ControlEngine::Proc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
01137 {
01138         LRESULT result=FALSE;
01139         //perf_callback->Begin();
01140         //MyDebug::SendEvent("Engine","Proc(%d,%d,%d,%d)",hWnd,message,wParam,lParam);
01141         static Timer keyDouble;
01142         static Control control_LMouseDown,control_RMouseDown,control_MMouseDown;
01143
01144         switch(message)
01145         {
01146         case WM_SETCURSOR:
01147                 ShowMouse(FALSE);
01148                 enableCursor=TRUE;
01149                 result=TRUE;
01150                 break; // message envoyer a achaque calcul d'image si souris dans la scene
01151
01152         case WM_KILLFOCUS:
01153                 ShowMouse(TRUE);
01154                 result=TRUE;
01155                 break;
01156
01157         case WM_CREATE:
01158                 pickingCursor.controlHover=univers;
01159                 pickingCursor.controlContainer=univers;
01160                 pickingInertia.controlHover=univers; // le picking de inertia doit exister avent les tests
01161                 pickingInertia.controlContainer=univers; // le picking de inertia doit exister avent les tests
01162                 univers->OverIn(univers,-1);
01163                 result=TRUE;
01164                 break;
01165
01166         case WM_DESTROY:                        // Perform cleanup
01167                 Stop();                                 // Clean up and close OpenGL
01168                 PostQuitMessage(0);             // en CreatenWindows
01169                 result=FALSE;
01170                 break;
01171
01172         case WM_TIMER:
01173                 result=Timer::Call((int)wParam);
01174                 break;
01175
01176         case WM_PAINT:
01177                 PAINTSTRUCT ps;
01178                 BeginPaint(hWnd,&ps);
01179                 EndPaint(hWnd,&ps); // si on ne fait pas le begin / end sans les region, les perf sont netement meilleur
01180                 if (!screenMain.region.enable) SetWindowRgn(hWnd,NULL,FALSE);
01181                 screenMain.SwapBuffers();
01182                 screenMain.RegionReset();
01183                 Draw();
01184                 screenMain.RegionUse();
01185                 result=TRUE;
01186                 break;
01187
01188         case WM_SIZE:
01189                 dxWin = LOWORD(lParam); // dx de la zone client
01190                 dyWin = HIWORD(lParam); // dy de la zone client
01191                 MyDebug::SendEvent("Size","%f, %f",dxWin,dyWin);
01192                 Refresh(TRUE);
01193                 result=FALSE;
01194
01195         case WM_NCMOUSEMOVE:
01196                 ShowMouse(TRUE);
01197                 enableCursor=FALSE;
01198                 result=TRUE;
01199                 break;
01200
01201                 // debut de gestion des evenement du control **********************************
01202
01203         case WM_MOUSEWHEEL:
01204                 pickingCursor.SetDeltaWheel(GET_WHEEL_DELTA_WPARAM(wParam));
01205                 if (!pickingCursor.controlHover->OnMouseWheel(&pickingCursor.mouse,pickingCursor.faceHover))
01206                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01207                                 pickingCursor.controlContainer->OnMouseWheel(&pickingCursor.mouse,pickingCursor.faceContainer);
01208                 result=TRUE;
01209                 break;
01210
01211         case WM_MOUSEMOVE:
01212                 enableCursor=TRUE;
01213                 pickingCursor.mouse.leftBtn =   (wParam&MK_LBUTTON)==MK_LBUTTON?TRUE:FALSE;
01214                 pickingCursor.mouse.midBtn =    (wParam&MK_MBUTTON)==MK_MBUTTON?TRUE:FALSE;
01215                 pickingCursor.mouse.rightBtn =  (wParam&MK_RBUTTON)==MK_RBUTTON?TRUE:FALSE;
01216                 pickingCursor.SetMousePos(GET_X_LPARAM(lParam),GET_Y_LPARAM(lParam));
01217                 if (pickingCursor.isMoving)
01218                         if (!pickingCursor.controlHover->OnMouseMove(&pickingCursor.mouse,pickingCursor.faceHover))
01219                                 if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01220                                         pickingCursor.controlContainer->OnMouseMove(&pickingCursor.mouse,pickingCursor.faceContainer);
01221                 result=TRUE;
01222                 break;
01223
01224         case WM_LBUTTONDBLCLK:
01225                 if (!pickingCursor.controlHover->OnLButtonDouble(&pickingCursor.mouse,pickingCursor.faceHover))
01226                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01227                                 pickingCursor.controlContainer->OnLButtonDouble(&pickingCursor.mouse,pickingCursor.faceContainer);
01228                 result=TRUE;
01229                 break;
01230
01231         case WM_MBUTTONDBLCLK:
01232                 if (!pickingCursor.controlHover->OnMButtonDouble(&pickingCursor.mouse,pickingCursor.faceHover))
01233                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01234                                 pickingCursor.controlContainer->OnMButtonDouble(&pickingCursor.mouse,pickingCursor.faceContainer);
01235                 result=TRUE;
01236                 break;
01237
01238         case WM_RBUTTONDBLCLK:
01239                 if (!pickingCursor.controlHover->OnRButtonDouble(&pickingCursor.mouse,pickingCursor.faceHover))
01240                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01241                                 pickingCursor.controlContainer->OnRButtonDouble(&pickingCursor.mouse,pickingCursor.faceContainer);
01242                 result=TRUE;
01243                 break;
01244
01245         case WM_LBUTTONUP:
01246                 ReleaseCapture(); // ca doit etre ca qui declenche onMouseMove
01247                 pickingCursor.mouse.leftBtn=FALSE;
01248                 if (!pickingCursor.controlHover->OnLButtonUp(&pickingCursor.mouse,pickingCursor.faceHover))
01249                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01250                                 pickingCursor.controlContainer->OnLButtonUp(&pickingCursor.mouse,pickingCursor.faceContainer);
01251                 result=TRUE;
01252                 break;
01253
01254         case WM_MBUTTONUP:
01255                 pickingCursor.mouse.midBtn=FALSE;
01256                 if (!pickingCursor.controlHover->OnMButtonUp(&pickingCursor.mouse,pickingCursor.faceHover))
01257                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01258                                 pickingCursor.controlContainer->OnMButtonUp(&pickingCursor.mouse,pickingCursor.faceContainer);
01259                 result=TRUE;
01260                 break;
01261
01262         case WM_RBUTTONUP:
01263                 pickingCursor.mouse.rightBtn=FALSE;
01264                 if (!pickingCursor.controlHover->OnRButtonUp(&pickingCursor.mouse,pickingCursor.faceHover))
01265                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01266                                 pickingCursor.controlContainer->OnRButtonUp(&pickingCursor.mouse,pickingCursor.faceContainer);
01267                 result=TRUE;
01268                 break;
01269
01270         case WM_LBUTTONDOWN:
01271                 SetCapture(hWnd); // la fenetre openGL n'a paeut etre pas le focus
01272                 pickingCursor.mouse.leftBtn=TRUE;
01273                 if (!pickingCursor.controlHover->OnLButtonDown(&pickingCursor.mouse,pickingCursor.faceHover))
01274                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01275                                 pickingCursor.controlContainer->OnLButtonDown(&pickingCursor.mouse,pickingCursor.faceContainer);
01276                 result=TRUE;
01277                 break;
01278
01279         case WM_MBUTTONDOWN:
01280                 pickingCursor.mouse.midBtn=TRUE;
01281                 if (!pickingCursor.controlHover->OnMButtonDown(&pickingCursor.mouse,pickingCursor.faceHover))
01282                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01283                                 pickingCursor.controlContainer->OnMButtonDown(&pickingCursor.mouse,pickingCursor.faceContainer);
01284                 result=TRUE;
01285                 break;
01286
01287         case WM_RBUTTONDOWN:
01288                 pickingCursor.mouse.rightBtn=TRUE;
01289                 if (!pickingCursor.controlHover->OnRButtonDown(&pickingCursor.mouse,pickingCursor.faceHover))
01290                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01291                                 pickingCursor.controlContainer->OnRButtonDown(&pickingCursor.mouse,pickingCursor.faceContainer);
01292                 result=TRUE;
01293                 break;
01294
01295         case WM_KEYDOWN:
01296                 {
01297                         short code = (short)wParam;
01298                         double counter = keyDouble.GetDeltaTime(TRUE);
01299                         BOOL isSame = code==key.code;
01300                         key.code= code;
01301                         key.letter=(char)wParam; // sinon voir l'API: MapVirtualKey
01302                         key.isPush=TRUE;
01303                         if (!pickingCursor.controlHover->OnKeyDown(&key,pickingCursor.faceHover))
01304                                 if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01305                                         pickingCursor.controlContainer->OnKeyDown(&key,pickingCursor.faceContainer);
01306                         if (isSame && counter<=DEFAULT_DOUBLE_CLICK)
01307                         {
01308                                 if (!pickingCursor.controlHover->OnKeyDouble(&key,pickingCursor.faceHover))
01309                                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01310                                                 pickingCursor.controlContainer->OnKeyDouble(&key,pickingCursor.faceContainer);
01311                         }
01312                 }
01313                 result=FALSE;
01314                 break;
01315
01316         case WM_KEYUP:
01317                 key.code=(short)wParam;
01318                 key.letter=(char)wParam; // sinon voir l'API: MapVirtualKey
01319                 key.isPush=FALSE;
01320                 if (!pickingCursor.controlHover->OnKeyUp(&key,pickingCursor.faceHover))
01321                         if (pickingCursor.controlHover!=pickingCursor.controlContainer)
01322                                 pickingCursor.controlContainer->OnKeyUp(&key,pickingCursor.faceContainer);
01323                 result=FALSE;
01324                 break;
01325
01326         // fin de gestion des evenement du control *********************************
01327
01328         default: result = DefWindowProc(hWnd,message,wParam,lParam);
01329         }
01330         //perf_callback->End();
01331         return result;
01332 }
01333
01340 BOOL ControlEngine::RegionAdd(double x,double y)
01341 {
01342         GLdouble modelMatrixCur[16];
01343         glGetDoublev (GL_MODELVIEW_MATRIX,modelMatrixCur);
01344         Point2D<double> pos(x,y);
01345         return screenMain.region.AddElem(pos,modelMatrixCur,projMatrix,viewPort);
01346 }
01347
01354 BOOL ControlEngine::RegionGet(double x,double y,Point3D<double> *pt)
01355 {
01356         GLdouble modelMatrixCur[16];
01357         glGetDoublev (GL_MODELVIEW_MATRIX,modelMatrixCur);
01358         Point2D<double> pos(x,y);
01359         return screenMain.region.Compute(pos,modelMatrixCur,projMatrix,viewPort,pt);
01360 }
01361
01362 // Gestion de la pile *********************************************************
01363 BOOL ControlEngine::Push(Control *control)
01364 {
01365         if (!control) return FALSE;
01366         stack.Push(control);
01367         primitive.Push();
01368         primitive.GoTo(control->faceNode);
01369         return TRUE;
01370 }
01371
01372 Control * ControlEngine::Pop()
01373 {
01374         if (!stack.GetNbElem()) return NULL;
01375         Control *control = stack.Pop();
01376         primitive.Pop();
01377         return control;
01378 }
01379
01380 Control * ControlEngine::Peek()
01381 {
01382         if (!stack.GetNbElem()) return NULL;
01383         return stack.Peek();
01384 }
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: controlEngine.h File Reference

controlEngine.h File Reference

Moteur 3D. More...

#include "3d.h"
#include "texture.h"
#include "box.h"
#include "fog.h"
#include "light.h"
#include "region.h"
#include "polygonMode.h"
#include "openGL_tools.h"
#include "windowTools.h"
#include "primitive.h"
#include "control.h"
#include "univers.h"
#include "taskWindow.h"
#include "picking.h"
#include "perfMon.h"
#include "screen.h"
#include "masterContainer.h"
#include "cursor.h"
#include "tip.h"
#include "resource.h"

Go to the source code of this file.

Classes

struct | Textures
Toute les textures "commune". More...

class | ControlEngine
Gestion du moteur de rendu des controls. More...

Defines

#define | DEFAULT_DOUBLE_CLICK 0.25
#define | SEUIL_MIN_INERTIA 5
#define | SEUIL_MAX_INERTIA 15
#define | DEFAULT_LIGHT_MOVE0 FALSE
#define | DEFAULT_LIGHT_MOVE1 FALSE
#define | DEFAULT_LIGHT_MOVE2 FALSE
#define | DEFAULT_LIGHT_ENABLE0 FALSE
#define | DEFAULT_LIGHT_ENABLE1 FALSE
#define | DEFAULT_LIGHT_ENABLE2 TRUE
#define | DEFAULT_FOG_ENABLE FALSE
#define | DEFAULT_FOG_START 4.5f
#define | DEFAULT_FOG_END 6.0f
#define | DEFAULT_FOG_DENSITY 0.3f
#define | DEFAULT_FOG_MODE fogLinear
#define | DEFAULT_ANTIALIASING FALSE
#define | DEFAULT_ANTIALIASING_QUALITY 4
#define | DEFAULT_VIEW_REPERE FALSE
#define | DEFAULT_VIEW_LIGHT FALSE
#define | DEFAULT_PICKING TRUE
#define | DEFAULT_DELTA FALSE
#define | DEFAULT_VIEW_BACKGROUND TRUE
#define | DEFAULT_VIEW_FPS FALSE
#define | DEFAULT_INERTIA FALSE
#define | DEFAULT_MONITOR FALSE
#define | DEFAULT_VIEW_INERTIA TRUE
#define | DEFAULT_FULLSCREEN TRUE
#define | DEFAULT_TITLED TRUE
#define | DEFAULT_VIEW_REGION FALSE
#define | DEFAULT_POLYGON_BACK fill
#define | DEFAULT_POLYGON_FRONT fill
#define | DEFAULT_XSIZE 500
#define | DEFAULT_YSIZE 400
#define | DEFAULT_TIMER_REFRESH 30
#define | DEFAULT_CPU_LIMIT 100
#define | deltaXwin viewPort[2]
#define | deltaYwin viewPort[3]

Enumerations

enum | TypeScreenShot { ssRGB, ssDepth, ssBlending, ssLuminance }

Functions

int | FTLibraryInit ()
void | FTLibraryFree ()
LRESULT CALLBACK | ControlEngineProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)

Detailed Description

Moteur 3D.

Definition in file controlEngine.h.

Define Documentation

#define DEFAULT_ANTIALIASING FALSE

Definition at line 69 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_ANTIALIASING_QUALITY 4

Definition at line 70 of file controlEngine.h.

Referenced by ControlEngine::ControlEngine().

#define DEFAULT_CPU_LIMIT 100

Definition at line 88 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_DELTA FALSE

Definition at line 74 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_DOUBLE_CLICK 0.25

Definition at line 53 of file controlEngine.h.

Referenced by ControlEngine::Proc().

#define DEFAULT_FOG_DENSITY 0.3f

Definition at line 67 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_FOG_ENABLE FALSE

Definition at line 64 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_FOG_END 6.0f

Definition at line 66 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_FOG_MODE fogLinear

Definition at line 68 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_FOG_START 4.5f

Definition at line 65 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_FULLSCREEN TRUE

Definition at line 80 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_INERTIA FALSE

Definition at line 77 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_LIGHT_ENABLE0 FALSE

Definition at line 61 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_LIGHT_ENABLE1 FALSE

Definition at line 62 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_LIGHT_ENABLE2 TRUE

Definition at line 63 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_LIGHT_MOVE0 FALSE

Definition at line 58 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_LIGHT_MOVE1 FALSE

Definition at line 59 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_LIGHT_MOVE2 FALSE

Definition at line 60 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_MONITOR FALSE

Definition at line 78 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_PICKING TRUE

Definition at line 73 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_POLYGON_BACK fill

Definition at line 83 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_POLYGON_FRONT fill

Definition at line 84 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_TIMER_REFRESH 30

Definition at line 87 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_TITLED TRUE

Definition at line 81 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_VIEW_BACKGROUND TRUE

Definition at line 75 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_VIEW_FPS FALSE

Definition at line 76 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_VIEW_INERTIA TRUE

Definition at line 79 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_VIEW_LIGHT FALSE

Definition at line 72 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_VIEW_REGION FALSE

Definition at line 82 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_VIEW_REPERE FALSE

Definition at line 71 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_XSIZE 500

Definition at line 85 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define DEFAULT_YSIZE 400

Definition at line 86 of file controlEngine.h.

Referenced by ConfigProc(), and ControlEngine::ControlEngine().

#define deltaXwin viewPort[2]

Definition at line 170 of file controlEngine.h.

Referenced by ControlEngine::Draw2DText(), ControlEngine::DrawLight(), and Region::Reset().

#define deltaYwin viewPort[3]

Definition at line 171 of file controlEngine.h.

Referenced by ControlEngine::Draw2DText(), ControlEngine::DrawLight(), ControlEngine::ProjectObjectToWindow(), ControlEngine::ProjectWindowToObject(), and Region::Reset().

#define SEUIL_MAX_INERTIA 15

Definition at line 55 of file controlEngine.h.

#define SEUIL_MIN_INERTIA 5

Definition at line 54 of file controlEngine.h.

Enumeration Type Documentation

enum TypeScreenShot

Enumeration values:
ssRGB
ssDepth
ssBlending
ssLuminance

Definition at line 94 of file controlEngine.h.

Function Documentation

LRESULT CALLBACK ControlEngineProc | ( | HWND | hDlg,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Redirection de la callback

Definition at line 1046 of file controlEngine.cpp.

References ce, and ControlEngine::Proc().

Referenced by ControlEngine::Start().

void FTLibraryFree ( )

Definition at line 255 of file controlEngine.cpp.

int FTLibraryInit ( )

Definition at line 234 of file controlEngine.cpp.

References GLint().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: controlEngine.h Source File

controlEngine.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_CONTROL_ENGINE_H
00024 #define INCLUDE_CONTROL_ENGINE_H
00025
00026 #include "3d.h"
00027
00028 #include "texture.h"
00029 #include "box.h"
00030 #include "fog.h"
00031 #include "light.h"
00032 #include "region.h"
00033 #include "polygonMode.h"
00034
00035 #include "openGL_tools.h"
00036 #include "windowTools.h"
00037 #include "primitive.h"
00038
00039 #include "control.h"
00040 #include "univers.h"
00041 #include "taskWindow.h"
00042 #include "picking.h"
00043
00044 #include "perfMon.h"
00045 #include "screen.h"
00046
00047 #include "masterContainer.h"
00048 #include "cursor.h"
00049 #include "tip.h"
00050
00051 #include "resource.h"
00052
00053 #define DEFAULT_DOUBLE_CLICK    0.25    // timeout du DblClk pour les touches
00054 #define SEUIL_MIN_INERTIA               5
00055 #define SEUIL_MAX_INERTIA               15
00056
00057 // config par default (sauvé dans la registry)
00058 #define DEFAULT_LIGHT_MOVE0             FALSE
00059 #define DEFAULT_LIGHT_MOVE1             FALSE
00060 #define DEFAULT_LIGHT_MOVE2             FALSE
00061 #define DEFAULT_LIGHT_ENABLE0   FALSE
00062 #define DEFAULT_LIGHT_ENABLE1   FALSE
00063 #define DEFAULT_LIGHT_ENABLE2   TRUE
00064 #define DEFAULT_FOG_ENABLE              FALSE
00065 #define DEFAULT_FOG_START               4.5f
00066 #define DEFAULT_FOG_END                 6.0f
00067 #define DEFAULT_FOG_DENSITY             0.3f
00068 #define DEFAULT_FOG_MODE                fogLinear
00069 #define DEFAULT_ANTIALIASING    FALSE
00070 #define DEFAULT_ANTIALIASING_QUALITY    4 // 4 points
00071 #define DEFAULT_VIEW_REPERE             FALSE
00072 #define DEFAULT_VIEW_LIGHT              FALSE
00073 #define DEFAULT_PICKING                 TRUE
00074 #define DEFAULT_DELTA                   FALSE
00075 #define DEFAULT_VIEW_BACKGROUND TRUE
00076 #define DEFAULT_VIEW_FPS                FALSE
00077 #define DEFAULT_INERTIA                 FALSE
00078 #define DEFAULT_MONITOR                 FALSE
00079 #define DEFAULT_VIEW_INERTIA    TRUE
00080 #define DEFAULT_FULLSCREEN              TRUE
00081 #define DEFAULT_TITLED                  TRUE
00082 #define DEFAULT_VIEW_REGION             FALSE
00083 #define DEFAULT_POLYGON_BACK    fill
00084 #define DEFAULT_POLYGON_FRONT   fill
00085 #define DEFAULT_XSIZE                   500
00086 #define DEFAULT_YSIZE                   400
00087 #define DEFAULT_TIMER_REFRESH   30
00088 #define DEFAULT_CPU_LIMIT               100
00089
00090 // init de la freetype
00091 int FTLibraryInit ();
00092 void FTLibraryFree ();
00093
00094 typedef enum
00095 {
00096         ssRGB,ssDepth,ssBlending,ssLuminance
00097 } TypeScreenShot;
00098
00099 LRESULT CALLBACK ControlEngineProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
00100
00102 typedef struct
00103 {
00104         Texture background;
00105         Texture plus;
00106         Texture minus;
00107         Texture min;
00108         Texture max;
00109         Texture maxAlternate;
00110         Texture rotateFace;
00111         Texture close;
00112         Texture tropique;
00113         Texture arrow;
00114         Texture arrowOblique;
00115         Texture degradeeFocus;
00116         Texture degradeeUnFocus;
00117         Texture iconBase;
00118         Texture cursorArrow;
00119         Texture cursorWait;
00120         Texture cursorText;
00121         Texture cursorMoving;
00122         Texture cursorPush;
00123         Texture grip;
00124 } Textures ;
00125
00131 class ControlEngine : public has_slots<>
00132 {
00133 private:
00134         MyStack<Control *> stack;
00135
00136 public: // variable de class
00137         PerfMonitor monitor;
00138         Primitive primitive;
00139         MyTree<Face> trash;
00140         Fog fog;
00141         Light lights[4];
00142         BOOL enableAntiAliasing;
00143         int antiAliasingQuality;
00144         BOOL enableCursor ;
00145         BOOL enableRepere;
00146         BOOL enableLightView;
00147         BOOL enableFPS;
00148         Tip *tipFPS;
00149         Cursor cursor;
00150         BOOL enableInertia;
00151         BOOL enableViewInertia;
00152         PolygonMode polygonMode;
00153         Box3D boxLights[3];
00154         GLdouble aspect;
00155
00156         // Handle
00157         Screen screenMain;
00158         Screen screenSystray;
00159         Screen screenConfig;
00160         HINSTANCE hInst;
00161         double dxWin;
00162         double dyWin;
00163         int cpuLimit;
00164
00165         // pour la gestion des region (cf.: CreatePolyPolygonRgn)
00166         GLdouble projMatrix[16];
00167         GLdouble modelMatrix[16];
00168         GLint viewPort[4];
00169         int     refreshTime;
00170         #define deltaXwin viewPort[2]
00171         #define deltaYwin viewPort[3]
00172         BOOL enablePicking;
00173         BOOL enableDelta;
00174         BOOL enableBackGround;
00175         GLdouble depth;
00176         BOOL lightsMove[4];
00177         Timer timerRefresh;
00178         Univers *univers;
00179         TaskWindow *taskWindow;
00180         MasterContainer *masterContainer;
00181         StateKey key;
00182         Picking pickingCursor;
00183         Picking pickingInertia;
00184         int usingInertia;
00185         EventInertia eventInertia[3];
00186
00187         // gestion des fonte
00188         FTFont *fontPixmap;
00189         FTFont *fontTexture;
00190         FTFont *fontExtrude;
00191         FTFont *fontOutline;
00192         FTFont *fontPolygon;
00193         FTFont *fontBitmap;
00194
00195         Textures texture;
00196
00197 public:
00198         ControlEngine();
00199         ~ControlEngine();
00200         void Start(HINSTANCE hInstance);
00201         void Stop();
00202         void Loop();
00203         void InitViewPort(int deltaX,int deltaY);
00204         void Setup(int deltaX, int deltaY);
00205         void Refresh(BOOL setSize);
00206         void SetTimerRefresh(int value); // 10 au plus rapide 60 ==> 15Frm/s 30 ==> 30Frm/s 40 ==> 21Frm/s
00207         int      OnRefresh(Timer *timer);
00208
00209         BOOL Push(Control *control);
00210         Control * Pop();
00211         Control * Peek();
00212
00213         void InitMonitor();
00214         BOOL InitFont();
00215         void InitTextures();
00216         void InitLights();
00217         void EndFont();
00218
00219         void Draw();
00220         BOOL DrawBackGround();
00221         void DrawScene(BOOL isPicking);
00222         void DrawLight();
00223         void DrawCursors();
00224         void DrawCursor(Point2D<int> pos,Color color,BOOL isDrawInertia);
00225         void Draw2DText(int xCenter,int yCenter,int x,int y,char *text,Color *color=NULL); // if !color ==> black
00226         BOOL DrawOrigineRepere();
00227         BOOL DrawFPS();
00228
00229         void MajLights();
00230
00231         float GiveFPS();
00232
00233         void SetPerspective(float xJitter,float yJiiter);
00234         void ApplyScaleView();
00235
00236         BOOL RegionAdd(double x,double y);
00237         BOOL RegionGet(double x,double y,Point3D<double> *pt);
00238
00239         LRESULT Proc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
00240
00241         void ScreenShot(TypeScreenShot type);
00242
00243         double ComputeRealZ(double logicZ);
00244         BOOL ProjectWindowToObject(Point3D<GLdouble> &windowPos,Point3D<GLdouble> *objectPos);
00245         BOOL ProjectWindowToObject(GLdouble windowPosX,GLdouble windowPosY,GLdouble windowPosZ,GLdouble *objectPosX,GLdouble *objectPosY,GLdouble *objectPosZ);
00246         BOOL ProjectObjectToWindow(Point3D<GLdouble> &objectPos,Point3D<GLdouble> *windowPos);
00247         BOOL ProjectObjectToWindow(GLdouble objectPosX,GLdouble objectPosY,GLdouble objectPosZ,GLdouble *windowPosX,GLdouble *windowPosY,GLdouble *windowPosZ);
00248 };
00249
00250 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: coordonate.h File Reference

coordonate.h File Reference

Gestion des coordonnée en 3D. More...

Go to the source code of this file.

Classes

class Coordonate
Gestion des coordonnée en 3D (compatible avec OpenGL). More...

Detailed Description

Gestion des coordonnée en 3D.

Definition in file coordonate.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: coordonate.h Source File

coordonate.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016 http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_COORDONATE_H
00024 #define INCLUDE_3D_COORDONATE_H
00025
00031 template <class T> class Coordonate
00032 {
00033 public:
00034         union
00035         {
00036                 T value[4];
00037                 struct
00038                 {
00039                         T x;
00040                         T y;
00041                         T z;
00042                         T w;
00043                 };
00044         };
00045         BOOL isEnable;
00046
00047 public:
00048         Coordonate()
00049         {
00050                 Zero();
00051         }
00052
00053         void Zero()
00054         {
00055                 x=0;
00056                 y=0;
00057                 z=0;
00058                 isEnable = FALSE;
00059         }
00060
00061         void operator=(Coordonate &src)
00062         {
00063                 isEnable = src.isEnable;
00064                 x = src.x;
00065                 y = src.y;
00066                 z = src.z;
00067                 w = src.w;
00068         }
00069
00070         void Set(T _x,T _y,T _z=0,T _w=0)
00071         {
00072                 x = _x;
00073                 y = _y;
00074                 z = _z;
00075                 w = _w;
00076                 isEnable = TRUE;
00077         }
00078
00079         BOOL operator!=(Coordonate &src)
00080         {
00081                 return !operator==(src);
00082         }
00083
00084         BOOL operator==(Coordonate &src)
00085         {
00086                 return isEnable==src.isEnable&&x==src.x&&y==src.y&&z==src.z&&w==src.w;
00087         }
00088
00089         operator T *() const
00090         {
00091                 return (T *)&value;
00092         }
00093
00094         void ToString (MyString &source)
00095         {
00096                 source<<"[enable,x,y,z,w]: "<<isEnable<<" , "<<x<<" , "<<y<<" , "<<z<<" , "<<w;
00097         }
00098 };
00099
00100 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: cubedock.h File Reference

cubedock.h File Reference

Control Dock en cube. More...

#include "control.h"
#include "linedock.h"
#include "dock.h"

Go to the source code of this file.

Classes

class CubeDock
Docker: test le click sur une partie zone cubique. More...

Detailed Description

Control Dock en cube.

Definition in file cubedock.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: cubedock.h Source File

cubedock.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_CUBEDOCK_H
00024 #define INCLUDE_CUBEDOCK_H
00025
00026 #include "control.h"
00027 #include "linedock.h"
00028 #include "dock.h"
00029
00034 class CubeDock
00035 {
00036 public:
00037         Control *parent;
00038         LineDock frontTop,frontBottom,frontLeft,frontRight;
00039         Dock frontTopRight,frontTopLeft,frontBottomLeft,frontBottomRight;
00040         LineDock backTop,backBottom,backLeft,backRight;
00041         Dock backTopRight,backTopLeft,backBottomLeft,backBottomRight;
00042
00043         CubeDock()
00044         {
00045                 parent=NULL;
00046         }
00047
00048         void Config(Control *_parent,double width=-1) //wifth=-1==> valeur par default
00049         {
00050                 parent=_parent;
00051                 frontTop.Set(0,0,0, 1,0,0,width);
00052                 frontBottom.Set(0,1,0, 1,1,0,width);
00053                 frontLeft.Set(0,0,0, 0,1,0,width);
00054                 frontRight.Set(1,0,0, 1,1,0, width);
00055                 frontTopLeft.Set(0,0,0,width);
00056                 frontTopRight.Set(1,0,0,width);
00057                 frontBottomLeft.Set(0,1,0,width);
00058                 frontBottomRight.Set(1,1,0,width);
00059                 backTop.Set(0,0,1, 1,0,1,width);
00060                 backBottom.Set(0,1,1, 1,1,1,width);
00061                 backLeft.Set(0,0,1, 0,1,1,width);
00062                 backRight.Set(1,0,1, 1,1,1,width);
00063                 backTopLeft.Set(0,0,1,width);
00064                 backTopRight.Set(1,0,1,width);
00065                 backBottomLeft.Set(0,1,1,width);
00066                 backBottomRight.Set(1,1,1,width);
00067         }
00068         ~CubeDock()
00069         {
00070         }
00071 };
00072
00073 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: cursor.cpp File Reference

cursor.cpp File Reference

#include "3d.h"
#include "cursor.h"
#include "controlEngine.h"

Go to the source code of this file.

Functions

void Config (Face *face, double dx, double dy, float alpha)

Variables

ControlEngine ce

Function Documentation

void Config | ( | Face * | face,
 |  | double | dx,
 |  | double | dy,
 |  | float | alpha
 | ) |

Definition at line 27 of file cursor.cpp.

References alpha, Face::blending, ce, Face::computeSize, MyTreeNode< T >::elem, Control::faceNode, ControlEngine::masterContainer, Face::material, Face::noPicking, Face::position, Material::SetDS(), Layout< T >::SetPercent(), Face::size, Point2D< GLdouble >::x, Point3D< LayoutDouble >::x, Point2D< LayoutDouble >::x, Point2D< GLdouble >::y, Point3D< LayoutDouble >::y, and Point2D< LayoutDouble >::y.

Referenced by Cursor::Create().

Variable Documentation

ControlEngine ce

Definition at line 23 of file cursor.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: cursor.cpp Source File

cursor.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "cursor.h"
00021
00022 #include "controlEngine.h"
00023 extern ControlEngine ce;
00024
00025 // ****************************************************************************
00026
00027 void Config(Face *face,double dx,double dy,float alpha)
00028 {
00029         face->size.x=dx;
00030         face->size.y=dy;
00031         face->blending=TRUE;
00032         face->noPicking=TRUE;
00033         face->material.SetDS(1,1,1,alpha);
00034         Face *faceMC = ce.masterContainer->faceNode->elem;
00035         face->position.x.SetPercent(-0.5,&faceMC->computeSize.x);
00036         face->position.y.SetPercent(0.5,&faceMC->computeSize.y);
00037 }
00038
00039 Cursor::Cursor()
00040 {
00041         curType=cursorArrow;
00042         leftType=cursorNothing;
00043         rightType=cursorNothing;
00044         midType=cursorNothing;
00045 }
00046
00047 void Cursor::Create()
00048 {
00049         recorderRepere.BeginRecord(FALSE);
00050         DrawRepere();
00051         recorderRepere.EndRecord();
00052
00053         Config(&curFace,32,32,1);
00054         Config(&leftFace,16,16,0.5f);
00055         Config(&midFace,16,16,0.5f);
00056         Config(&leftFace,16,16,0.5f);
00057         ApplyTypes();
00058 }
00059
00060 void Cursor::Draw(double x,double y)
00061 {
00062         glDisable(GL_DEPTH_TEST);
00063         glDepthMask(GL_FALSE);
00064         y=-y;
00065
00066         glPushMatrix();
00067         curFace.MoveTo(x,y,0);
00068         curFace.ComputeLayout();
00069         curFace.MovingInside();
00070         curFace.Draw(FALSE);
00071         glPopMatrix();
00072
00073         glPushMatrix();
00074         leftFace.MoveTo(x-16,y-16,0);
00075         leftFace.ComputeLayout();
00076         leftFace.MovingInside();
00077         leftFace.Draw(FALSE);
00078         glPopMatrix();
00079
00080         glPushMatrix();
00081         midFace.MoveTo(x,y-16,0);
00082         midFace.ComputeLayout();
00083         midFace.MovingInside();
00084         midFace.Draw(FALSE);
00085         glPopMatrix();
00086
00087         glPushMatrix();
00088         rightFace.MoveTo(x+16,y-16,0);
00089         rightFace.ComputeLayout();
00090         rightFace.MovingInside();
00091         rightFace.Draw(FALSE);
00092         glPopMatrix();
00093
00094         glDepthMask(GL_TRUE);
00095         glEnable(GL_DEPTH_TEST);
00096 }
00097
00098 Point2D<int> Cursor::GetHotSpot(CursorType type)
00099 {
00100         Point2D<int> hotSpot;
00101         switch (type)
00102         {
00103         case cursorArrow:  hotSpot.Set(11,10); break;
00104         case cursorPush: hotSpot.Set(11,10); break;
00105         //case cursorWait:
00106         //case cursorText:
00107         //case cursorMoving:
00108         //case cursorRepere:
00109         //case cursorNoChange:
00110         //case cursorNothing:
00111         }
00112         return hotSpot;
00113 }
00114
00115 void Cursor::ApplyTypes(CursorType current,CursorType left,CursorType mid,CursorType right)
00116 {
00117         if (current!=cursorNoChange) curType=current;
00118         if (left!=cursorNoChange) leftType=left;
00119         if (mid!=cursorNoChange) midType=mid;
00120         if (right!=cursorNoChange) rightType=right;
00121         ApplyType(&curFace,curType);
00122         ApplyType(&leftFace,leftType);
00123         ApplyType(&midFace,midType);
00124         ApplyType(&rightFace,rightType);
00125 }
00126
00127 void Cursor::ApplyType(Face *face,CursorType type)
00128 {
00129         face->view = TRUE;
00130         if (type!=cursorRepere) face->childRecorder.Zero();
00131         switch (type)
00132         {
00133         case cursorNothing: face->view = FALSE; break;
00134         case cursorArrow: face->texture = &ce.texture.cursorArrow; break;
00135         case cursorWait: face->texture = &ce.texture.cursorWait; break;
00136         case cursorPush: face->texture = &ce.texture.cursorPush; break;
00137         case cursorText: face->texture = &ce.texture.cursorText; break;
00138         case cursorMoving: face->texture = &ce.texture.cursorMoving; break;
00139         case cursorRepere: face->view = FALSE; face->childRecorder=recorderRepere; break;
00140         }
00141 }
00142
00143 void Cursor::Rotate(Face *face,CursorType type,Point3D<double> angle)
00144 {
00145         switch (type)
00146         {
00147         case cursorRepere: face->angle=angle; break;
00148         default: face->angle.Zero();
00149         }
00150 }
00151 void Cursor::Rotate(Point3D<double> angle)
00152 {
00153         Rotate(&curFace,curType,angle);
00154         Rotate(&leftFace,leftType,angle);
00155         Rotate(&midFace,midType,angle);
00156         Rotate(&rightFace,rightType,angle);
00157 }
00158
00159 BOOL Cursor::DrawVectorMinMax(double x,double y,double minIntensity,double maxIntensity)
00160 {
00161         double intensity = sqrt(x*x+y*y);
00162         //MyDebug::SendEvent("draw vector","x:%lf y:%lf i:%lf",x,y,intensity);
00163
00164         if (intensity<minIntensity) return FALSE;
00165         if (intensity>maxIntensity)
00166         {
00167                 double angle=atan2(y,-x);
00168                 x=cos(angle)*maxIntensity;
00169                 y=sin(angle)*maxIntensity;
00170         }
00171         DrawVector(x,y);
00172         return TRUE;
00173 }
00174
00179 void Cursor::DrawVector(double x,double y)
00180 {
00181         glDisable(GL_TEXTURE_2D);
00182         //glEnable(GL_BLEND);
00183         //glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
00184         double angle=atan2(y,-x)*(180.0/PI);
00185         double intensity = sqrt(x*x+y*y)/25.0;
00186
00187         Point3D<double> rotate(0,0,angle);
00188
00189         Material material;
00190         material.SetNull();
00191         //material.SetDS(0,0,1,0.5);
00192         material.emission.Set(0,0,1);
00193         material.Use();
00194
00195         glPushMatrix();
00196         rotate.glRotated();
00197         glBegin(GL_POLYGON);
00198         glVertex2d(0,0);
00199         glVertex2d(intensity,0);
00200         glVertex2d(intensity-0.05,-0.05);
00201         glVertex2d(intensity-0.05,0.05);
00202         glVertex2d(intensity,0);
00203         glEnd();
00204         glPopMatrix();
00205         //glDisable(GL_BLEND);
00206 }
00207
00208 void Cursor::DrawArrow(Color color)
00209 {
00210         glDisable(GL_BLEND);
00211         glDisable(GL_TEXTURE_2D);
00212         Material material;
00213
00214         material.SetNull();
00215         material.emission = color;
00216         material.Use();
00217
00218         // tracement des regions
00219         glBegin(GL_POLYGON);
00220         glVertex2d(0,0);
00221         glVertex2d(0,-0.2);
00222         glVertex2d(0.05,-0.15);
00223         glVertex2d(0.12,-0.3);
00224         glVertex2d(0.20,-0.22);
00225         glVertex2d(0.10,-0.10);
00226         glVertex2d(0.15,-0.06);
00227         glVertex2d(0,0);
00228         glEnd();
00229
00230         // les contours
00231         material.emission.SetNull();
00232         material.Use();
00233         glBegin(GL_LINE_LOOP);
00234         glVertex2d(0,0);
00235         glVertex2d(0,-0.2);
00236         glVertex2d(0.05,-0.15);
00237         glVertex2d(0.12,-0.3);
00238         glVertex2d(0.2,-0.22);
00239         glVertex2d(0.10,-0.10);
00240         glVertex2d(0.15,-0.06);
00241         glEnd();
00242 }
00243
00244 // ********************************************************************************
00245
00246 void Cursor::DrawRepere()
00247 {
00248         Material material;
00249         glDisable(GL_BLEND);
00250         glDisable(GL_TEXTURE_2D);
00251
00252         material.SetNull();
00253
00254         GLUquadric *newQuadric = gluNewQuadric();
00255         gluQuadricNormals(newQuadric,GLU_NONE); // sinon influ de maniere misterieuse les autre normales
00256         double size=0.6;
00257         double baseSize=8;
00258         double arrowSize=6;
00259         double baseArrowSize=3;
00260
00261         glPushMatrix(); // les Z
00262                 material.emission.Set(1,0,0);
00263                 material.Use();
00264                 gluCylinder(newQuadric,size,size,baseSize,3,3);
00265                 glTranslated(0,0,baseSize);
00266                 gluCylinder(newQuadric,baseArrowSize,0,arrowSize,3,3);
00267                 //glTranslated(0,0,0.5);
00268                 //DrawText("Z");
00269         glPopMatrix();
00270
00271         glPushMatrix(); // les Y
00272                 material.emission.Set(0,1,0);
00273                 material.Use();
00274                 glRotated(-90,1,0,0);
00275                 gluCylinder(newQuadric,size,size,baseSize,3,3);
00276                 glTranslated(0,0,baseSize);
00277                 gluCylinder(newQuadric,baseArrowSize,0,arrowSize,3,3);
00278                 //glTranslated(0,0,0.5);
00279                 //DrawText("Y");
00280         glPopMatrix();
00281
00282         glPushMatrix(); // les X
00283                 material.emission.Set(0,0,1);
00284                 material.Use();
00285                 glRotated(90,0,1,0);
00286                 gluCylinder(newQuadric,size,size,baseSize,3,3);
00287                 glTranslated(0,0,baseSize);
00288                 gluCylinder(newQuadric,baseArrowSize,0,arrowSize,3,3);
00289                 //glTranslated(0,0,0.5);
00290                 //DrawText("X");
00291         glPopMatrix();
00292
00293         gluDeleteQuadric(newQuadric);
00294
00295         material.emission.SetNull();
00296         material.Use();
00297 }
00298
00300
00301 void Cursor::DrawText(char *text)
00302 {
00303
00304 }
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: cursor.h File Reference

cursor.h File Reference

Affiche le curseur. More...

#include "color.h"
#include "control.h"

Go to the source code of this file.

Classes

class Cursor

Enumerations

enum CursorType {
cursorArrow, cursorWait, cursorText, cursorMoving,
cursorRepere, cursorPush, cursorNoChange, cursorNothing
}
Curseur 3D. More...

Detailed Description

Affiche le curseur.

Definition in file cursor.h.

Enumeration Type Documentation

enum CursorType

Curseur 3D.

Enumeration values:
cursorArrow
cursorWait
cursorText
cursorMoving
cursorRepere
cursorPush
cursorNoChange
cursorNothing

Definition at line 34 of file cursor.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: cursor.h Source File

cursor.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_CURSOR_H
00024 #define INCLUDE_CURSOR_H
00025
00026 #include "color.h"
00027 #include "control.h"
00028
00034 typedef enum
00035 {
00036         cursorArrow,
00037         cursorWait,
00038         cursorText,
00039         cursorMoving,
00040         cursorRepere,
00041         cursorPush,
00042         cursorNoChange,
00043         cursorNothing
00044 } CursorType;
00045
00046 class Cursor
00047 {
00048 public:
00049         CursorType curType;
00050         CursorType leftType,rightType,midType;
00051         Face curFace;
00052         Face leftFace;
00053         Face midFace;
00054         Face rightFace;
00055         Recorder recorderRepere;
00056
00057         Cursor();
00058         void Create();
00059         void ApplyType(Face *face,CursorType type);
00060         void ApplyTypes(CursorType current=cursorNoChange,CursorType left=cursorNoChange,CursorType mid=cursorNoChange,CursorType right=cursorNoChange);
00061         void Rotate(Face *face,CursorType type,Point3D<double> angle);
00062         void Rotate(Point3D<double> angle);
00063         void Draw(double x,double y);
00064
00065         Point2D<int> GetHotSpot(CursorType type);
00066         void DrawArrow(Color color);
00067         void DrawRepere();
00068         void DrawText(char *text);
00069         void DrawVector(double x,double y);
00070         BOOL DrawVectorMinMax(double x,double y,double minIntensity,double maxIntensity);
00071 };
00072
00073 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: curve.cpp File Reference

curve.cpp File Reference

#include "curve.h"

Go to the source code of this file.

Defines

#define | f(value) sin(PI*(value))
#define | fxy(value, center) ((value<center)?sin((HALF_PI/center)*(value)):cos((HALF_PI/(1-center))*((value)-center)))
#define | fx(value) fxy(value,center.x)
#define | fy(value) fxy(value,center.y)

Define Documentation

#define f ( value ) sin(PI*(value))

Referenced by Tutorial::BaseDemo::BaseDemo(), Button::Button(), ControlEngine::ControlEngine(), TrackButton::Create(), Tip::Create(), Slider::Create(), Cursor::Create(), Demo::Demo(), ControlEngine::Draw(), ControlEngine::Draw2DText(), Title::GotFocus(), Text3D::Setup(), BasicText3D::Setup(), and ControlEngine::Setup().

#define fx ( value ) fxy(value,center.x)

Referenced by Curve::Draw().

#define fxy | ( | value,
 |  | center | ) | ((value<center)?sin((HALF_PI/center)*(value)):cos((HALF_PI/(1-center))*((value)-center)))

#define fy ( value ) fxy(value,center.y)

Referenced by Curve::Draw().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: curve.cpp Source File

curve.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "curve.h"
00020
00021 Curve::Curve()
00022 {
00023         tabQuads = NULL;
00024         tabSommets = NULL;
00025         tabCoorTextures = NULL;
00026         Zero();
00027 }
00028
00029 Curve::~Curve()
00030 {
00031         UnAlloc();
00032 }
00033 void Curve::Zero()
00034 {
00035         UnAlloc();
00036         nbCut.Set(1,1);
00037         center.Set(0.5,0.5);
00038         numList=0;
00039 }
00040
00041 void Curve::operator=(Curve &source)
00042 {
00043         nbCut = source.nbCut;
00044         center = source.center;
00045         oldCenter = source.oldCenter;
00046         oldNbCut = source.oldNbCut;
00047 }
00048
00049 BOOL Curve::Set(GLdouble zCenter,int nbCutXY)
00050 {
00051         if (nbCutXY<0) return FALSE;
00052         nbCut.Set(nbCutXY,nbCutXY);
00053         center.Set(0.5,0.5,zCenter);
00054         return TRUE;
00055 }
00056
00057 BOOL Curve::Set(GLdouble zCenter,int nbCutX,int nbCutY)
00058 {
00059         if ((nbCutX<0)||(nbCutY<0)) return FALSE;
00060         nbCut.Set(nbCutX,nbCutY);
00061         center.Set(0.5,0.5,zCenter);
00062         return TRUE;
00063 }
00064
00065 BOOL Curve::IsActive()
00066 {
00067         return ((nbCut.x>1)||(nbCut.y>1))?TRUE:FALSE;
00068 }
00069
00076 BOOL Curve::Draw(Point2D<double> size,Texture *texture)
00077 {
00078         if (!IsActive()) return FALSE;
00079         glBegin(GL_QUADS);
00080         GLdouble cdx = 1.0/(GLdouble)nbCut.x;
00081         GLdouble cdy = 1.0/(GLdouble)nbCut.y;
00082         BOOL noCutX = nbCut.x==1?TRUE:FALSE;
00083         BOOL noCutY = nbCut.y==1?TRUE:FALSE;
00084         GLdouble px = 0;
00085         GLdouble py = 0;
00086         GLdouble z1,z2,z3,z4;
00087         for (int x=0;x<nbCut.x;x++)
00088         {
00089                 for (int y=0;y<nbCut.y;y++)
00090                 {
00091 #define f(value) sin(PI*(value))
00092 #define fxy(value,center) ((value<center)?sin((HALF_PI/center)*(value)):cos((HALF_PI/(1-center))*((value)-center)))
00093 #define fx(value) fxy(value,center.x)
00094 #define fy(value) fxy(value,center.y)
00095                         if (noCutX)
00096                         {
00097                                 z1 = fy(py)*center.z;
00098                                 z2 = fy(py)*center.z;
00099                                 z3 = fy(py+cdy)*center.z;
00100                                 z4 = fy(py+cdy)*center.z;
00101                         }
00102                         else if (noCutY)
00103                         {
00104                                 z1 = fx(px)*center.z;
00105                                 z2 = fx(px+cdx)*center.z;
00106                                 z3 = fx(px+cdx)*center.z;
00107                                 z4 = fx(px)*center.z;
00108                         }
00109                         else
00110                         {
00111                                 z1 = (fx(px)*fy(py))*center.z;
00112                                 z2 = (fx(px+cdx)*fy(py))*center.z;
00113                                 z3 = (fx(px+cdx)*fy(py+cdy))*center.z;
00114                                 z4 = (fx(px)*fy(py+cdy))*center.z;
00115                         }
00116                         GLdouble x1 = px*size.x;
00117                         GLdouble y1 = py*size.y-size.y;
00118                         GLdouble x2 = (px+cdx)*size.x;
00119                         GLdouble y2 = (py+cdy)*size.y-size.y;
00120
00121                         if (texture)
00122                         {
00123                                 texture->SetCoord(px,py);
00124                                 glVertex3d(x1,y1,z1);
00125                                 texture->SetCoord(px+cdx,py);
00126                                 glVertex3d(x2,y1,z2);
00127                                 texture->SetCoord(px+cdx,py+cdy);
00128                                 glVertex3d(x2,y2,z3);
00129                                 texture->SetCoord(px,py+cdy);
00130                                 glVertex3d(x1,y2,z4);
00131                         }
00132                         else
00133                         {
00134                                 glVertex3d(x1,y1,z1);
00135                                 glVertex3d(x2,y1,z2);
00136                                 glVertex3d(x2,y2,z3);
00137                                 glVertex3d(x1,y2,z4);
00138                         }
00139                         py+=cdy;
00140                 }
00141                 px+=cdx;
00142                 py=0;
00143         }
00144         glEnd();
00145         return TRUE;
00146 }
00147
00148 // le fonction ci-apres son pour utilisé l'optimisation (qui n'est pas mailleur d'ailleur)
00149
00156 void Curve::Refresh()
00157 {
00158         nbCut.Set(-1,-1);
00159 }
00160
00161 void Curve::UnAlloc()
00162 {
00163         if (tabQuads) delete tabQuads;
00164         if (tabSommets) delete tabSommets;
00165         if (tabCoorTextures) delete tabCoorTextures;
00166         tabQuads = NULL;
00167         tabSommets = NULL;
00168         tabCoorTextures = NULL;
00169 }
00170
00179 /*
00180 BOOL Curve::Draw(Point2D<double> size,Texture *texture)
00181 {
00182         if (!IsActive()) return FALSE;
00183         int nbFaces = nbCut.x*nbCut.y;
00184
00185         BOOL isResize = oldNbCut!=nbCut;
00186         BOOL isRepositioning;
00187         GLdouble *ptrCoorTexture;
00188         if (isResize)
00189         {       // y a t'il eut des changement depuis le dernier appel ?
00190                 UnAlloc();
00191                 oldNbCut = nbCut;
00192                 nbFaces = nbCut.x*nbCut.y;
00193                 int nbSommets = (nbCut.x+1)*(nbCut.y+1);
00194                 tabSommets = new GLdouble[nbSommets*3];
00195                 tabCoorTextures = new GLdouble[nbSommets*2];
00196                 tabQuads = new GLuint[nbFaces*4];
00197                 isRepositioning = TRUE;
00198         }
00199         else isRepositioning = oldCenter!=center;
00200
00201         if (texture)
00202         {
00203                 ptrCoorTexture = tabCoorTextures;
00204                 glEnableClientState(GL_TEXTURE_COORD_ARRAY);
00205                 glTexCoordPointer(2,GL_DOUBLE,0,tabCoorTextures);
00206         }
00207         else ptrCoorTexture = NULL;
00208
00209         GLdouble *ptrSommet = tabSommets;
00210         GLuint *ptrQuad = tabQuads;
00211         glEnableClientState(GL_VERTEX_ARRAY);
00212         glVertexPointer(3,GL_DOUBLE,0,tabSommets);
00213
00214         if (isRepositioning)
00215         {
00216                 oldCenter=center;
00217                 GLdouble cdx = 1.0/(GLdouble)nbCut.x;
00218                 GLdouble cdy = 1.0/(GLdouble)nbCut.y;
00219                 BOOL noCutX = nbCut.x==1?TRUE:FALSE;
00220                 BOOL noCutY = nbCut.y==1?TRUE:FALSE;
00221                 GLdouble px = 0;
00222                 GLdouble py = 0;
00223                 GLdouble z;
00224                 for (int x=0;x<=nbCut.x;x++)
00225                 {
00226                         for (int y=0;y<=nbCut.y;y++)
00227                         {
00228                         #define fxy(value,center) ((value<center)?sin((HALF_PI/center)*(value)):cos((HALF_PI/(1-center))*((value)-center)))
00229                         #define fx(value) fxy(value,center.x)
00230                         #define fy(value) fxy(value,center.y)
00231                         if (noCutX) z = fy(py);
00232                         else if (noCutY) z = fx(px);
00233                         else z = fx(px)*fy(py);
00234                         ptrSommet[0]=px*size.x;
00235                         ptrSommet[1]=py*size.y-size.y;
00236                         ptrSommet[2]=z*center.z;
00237                         ptrSommet+=3;
00238                         if (ptrCoorTexture)
00239                         {
00240                                 ptrCoorTexture[0]=texture->GetXCoord(px);
00241                                 ptrCoorTexture[1]=texture->GetYCoord(py);
00242                                 ptrCoorTexture+=2;
00243                         }
00244                         py+=cdy;
00245                 }
00246                 px+=cdx;
00247                 py=0;
00248         }
00249
00250         int numSommet=0;
00251         for (int x=0;x<nbCut.x;x++)
00252         {
00253         for (int y=0;y<nbCut.y;y++)
00254         {
00255         ptrQuad[1]=numSommet;
00256         ptrQuad[0]=numSommet+1;
00257         ptrQuad[3]=numSommet+nbCut.y+2;
00258         ptrQuad[2]=numSommet+nbCut.y+1;
00259         ptrQuad+=4;
00260         numSommet++;
00261         }
00262         numSommet++;
00263         }
00264         }
00265
00266 glDrawElements(GL_QUADS,nbFaces*4,GL_UNSIGNED_INT,tabQuads);
00267 glDisableClientState(GL_VERTEX_ARRAY);
00268 if (tabCoorTextures) glDisableClientState(GL_TEXTURE_COORD_ARRAY);
00269
00270 return TRUE;
00271 }
00272 */
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: curve.h File Reference

curve.h File Reference

Gestion de l'incurvation d'une face. More...

#include "3d.h"
#include "coordonate.h"
#include "texture.h"

Go to the source code of this file.

Classes

class Curve
Gestion des l'incurvation d'une face. More...

Detailed Description

Gestion de l'incurvation d'une face.

Definition in file curve.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: curve.h Source File

curve.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_CURVE_H
00024 #define INCLUDE_CURVE_H
00025
00026 #include "3d.h"
00027 #include "coordonate.h"
00028 #include "texture.h"
00029
00033 class Curve
00034 {
00035 private:
00036         // variable avec les valeurs precalculé
00037         Point2D<int> oldNbCut;
00038         GLdouble *tabSommets;
00039         GLdouble *tabCoorTextures;
00040         GLuint *tabQuads;
00041         Coordonate<GLdouble> oldCenter; // centre de l'incurvation
00042         void UnAlloc();
00043         int numList;
00044
00045 public:
00046         Point2D<int> nbCut;     // nb de decoupe en X et Y
00047         Coordonate<GLdouble> center; // centre de l'incurvation
00048
00049 public:
00050         Curve();
00051         ~Curve();
00052         void Zero();
00053         void operator=(Curve &source);
00054         BOOL Set(GLdouble zCenter,int nbCutXY);
00055         BOOL Set(GLdouble zCenter,int nbCutX,int nbCutY);
00056         BOOL IsActive();
00057         void Refresh();
00058         BOOL Draw(Point2D<double> size,Texture *texture);
00059 };
00060
00061 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: dock.h File Reference

dock.h File Reference

Control Dock. More...

#include "control.h"

Go to the source code of this file.

Classes

class | Dock
Test le click sur une zone cubique (a utiliser pour faire un "Splitter"). More...

Defines

#define | DEFAULT_WIDTH 0.1

Detailed Description

Control Dock.

Definition in file dock.h.

Define Documentation

#define DEFAULT_WIDTH 0.1

Definition at line 28 of file dock.h.

Referenced by Dock::Dock(), LineDock::LineDock(), LineDock::Set(), and Dock::Set().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: dock.h Source File

dock.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_DOCK_H
00024 #define INCLUDE_DOCK_H
00025
00026 #include "control.h"
00027
00028 #define DEFAULT_WIDTH 0.1
00029
00035 class Dock : public Control
00036 {
00037 public:
00038         double width;
00039         double x,y,z;
00040
00041         Dock()
00042         {
00043                 width = DEFAULT_WIDTH;
00044         }
00045
00046         void Set (double _x,double _y,double _z,double width=-1)
00047         {
00048                 x=_x;
00049                 y=_y;
00050                 z=_z;
00051                 if (width==-1) width = DEFAULT_WIDTH;
00052         }
00053
00054         ~Dock()
00055         {
00056         }
00057 };
00058
00059 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: effect.cpp File Reference

effect.cpp File Reference

#include "3d.h"
#include "face.h"
#include "effect.h"
#include "controlEngine.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 24 of file effect.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: effect.cpp Source File

effect.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 #include "3d.h"
00020 #include "face.h"
00021 #include "effect.h"
00022 #include "controlEngine.h"
00023
00024 extern ControlEngine ce;
00025
00026 Effect::Effect()
00027 {
00028         Bind(NULL);
00029 }
00030
00031 void Effect::Bind(FaceNode *_faceNode)
00032 {
00033         faceNode=_faceNode;
00034         isRunning=FALSE;
00035 }
00036
00037 EffectApparition::EffectApparition()
00038 {
00039         nbSeconds = 0;
00040 }
00041
00042 EffectApparition::~EffectApparition()
00043 {
00044         Stop();
00045 }
00046
00047 void EffectApparition::Start(BOOL _isFadeIn,double _nbSeconds)
00048 {
00049         if (isRunning)
00050         {
00051                 Stop();
00052         }
00053         isFadeIn = _isFadeIn;
00054         ce.timerRefresh.onTimer.connect(this,OnTimer);
00055         ce.timerRefresh.GetDeltaTime(TRUE,&beginTime); // conteur de temp au debut
00056
00057         nbSeconds = _nbSeconds;
00058         isRunning = TRUE;
00059         oldTree = faceNode;
00060 }
00061
00062 void EffectApparition::Stop()
00063 {
00064         if (!isRunning) return;
00065         ce.timerRefresh.onTimer.disconnect(this);
00066         progress=1;
00067         UnApply(faceNode,oldTree.GetRoot(),0);
00068         onEnding();
00069         onEnding.disconnect(this);
00070 }
00071
00072 int EffectApparition::OnTimer(Timer *timer)
00073 {
00074         double nbSecondsCur = timer->GetDeltaTime(FALSE,&beginTime);
00075         progress = nbSecondsCur/nbSeconds;
00076         // progress=0% si nbMilliSecondsCur=0
00077         // progress=100% si nbMilliSecondsCur=nbMilliseconds
00078         if (progress>=1) Stop();
00079         else Apply(faceNode,oldTree.GetRoot(),0);
00080         return 0;
00081 }
00082
00083 void EffectApparition::Apply(FaceNode *faceNode,FaceNode *oldFaceNode,int level)
00084 {
00085         if (!faceNode) return;
00086         Apply(faceNode->elem,oldFaceNode->elem,level);
00087         for (oldFaceNode->childs.i=0,faceNode->childs.i=0;
00088                  faceNode->childs.i.More();
00089                  faceNode->childs.i++,oldFaceNode->childs.i++)
00090         {
00091                 Apply(faceNode->childs.i.GetElem(),oldFaceNode->childs.i.GetElem(),level+1);
00092         }
00093 }
00094
00095 void EffectApparition::UnApply(FaceNode *faceNode,FaceNode *oldFaceNode,int level)
00096 {
00097         if (!faceNode) return;
00098         UnApply(faceNode->elem,oldFaceNode->elem,level);
00099         for (oldFaceNode->childs.i=0,faceNode->childs.i=0;
00100                 faceNode->childs.i.More();
00101                 faceNode->childs.i++,oldFaceNode->childs.i++)
00102         {
00103                 UnApply(faceNode->childs.i.GetElem(),oldFaceNode->childs.i.GetElem(),level+1);
00104         }
00105 }
00106
00107 void EffectApparition::Apply(Face *face,Face *oldFace,int level)
00108 {
00109         double progressCur = isFadeIn? progress : 1-progress;
00110         face->position.z.constValue =oldFace->position.z.constValue+20.0*(level+1)*progressCur;
00111         if (!level) face->angle.y=oldFace->angle.y+60.0*sin(progressCur*2.0*PI);
00112 }
00113
00114 void EffectApparition::UnApply(Face *face,Face *oldFace,int level)
00115 {
00116         face->position.z.constValue =oldFace->position.z.constValue;
00117         if (!level) face->angle.y=oldFace->angle.y;
00118 }
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: effect.h File Reference

effect.h File Reference

#include "3d.h"
#include "face.h"
#include "sigslot.h"
#include "input.h"

Go to the source code of this file.

Classes

class | Effect
class | EffectApparition

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: effect.h Source File

effect.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_EFFECT_H
00024 #define INCLUDE_EFFECT_H
00025
00026 #include "3d.h"
00027 #include "face.h"
00028 #include "sigslot.h"
00029 #include "input.h"
00030
00041 class Effect : public has_slots<>
00042 {
00043 protected:
00044         FaceNode *faceNode;
00045         BOOL isFadeIn;
00046         BOOL isRunning;
00047         MyTree<Face> oldTree;
00048         LARGE_INTEGER beginTime;
00049
00050
00051 public:
00052         signal0<> onEnding;
00053
00054         Effect();
00055         void Bind(FaceNode *_faceNode);
00056 };
00057
00058 class EffectApparition : public Effect
00059 {
00060 private:
00061         double nbSeconds;
00062         double progress;
00063         int OnTimer(Timer *timer);
00064         void Apply(FaceNode *faceNode,FaceNode *oldFace,int level);
00065         void Apply(Face *face,Face *oldFace,int level);
00066         void UnApply(FaceNode *faceNode,FaceNode *oldFace,int level);
00067         void UnApply(Face *face,Face *oldFace,int level);
00068 public:
00069
00070         EffectApparition();
00071         ~EffectApparition();
00072         void Start(BOOL _isFadeIn,double _nbSeconds);
00073         void Stop();
00074 };
00075
00076 /* effet a faire
00077 EffectShow
00078 EffectStreetch
00079 EffectHomewold
00080 EffectCompress
00081 EffectRotate
00082 EffectExplosed
00083 */
00084
00085 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: equations.cpp File Reference

equations.cpp File Reference

#include "math.h"
#include "equations.h"

Go to the source code of this file.

Functions

double Equ_1SURX (double x)
Equation de form y=1/x.

Function Documentation

double Equ_1SURX ( double x )

Equation de form y=1/x.

Donnant pour: x=[0,1] ==> y=[0,1] (Transposée de x=[0.25,1] ==> y=[4,1])

Definition at line 27 of file equations.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: equations.cpp Source File

equations.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "math.h"
00020 #include "equations.h"
00021
00027 double Equ_1SURX(double x)
00028 {
00029         return 1.0-((1.0/((x*0.75)+0.25))-1.0)/3.0;
00030 }
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: equations.h File Reference

equations.h File Reference

Gestion d'equation type et limité a [0;1] ==> [0;1]. More...

Go to the source code of this file.

Functions

double Equ_1SURX (double x)
Equation de form y=1/x.

Detailed Description

Gestion d'equation type et limité a [0;1] ==> [0;1].

Definition in file equations.h.

Function Documentation

double Equ_1SURX ( double x )

Equation de form y=1/x.

Donnant pour: x=[0,1] ==> y=[0,1] (Transposée de x=[0.25,1] ==> y=[4,1])

Definition at line 27 of file equations.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: equations.h Source File

equations.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016 http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_EQUATION_H
00024 #define INCLUDE_EQUATION_H
00025
00026 double Equ_1SURX(double x);
00027
00028 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: face.cpp File Reference

face.cpp File Reference

#include "face.h"
#include "trigo.h"
#include "controlEngine.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 23 of file face.cpp.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: face.cpp Source File

face.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "face.h"
00020 #include "trigo.h"
00021 #include "controlEngine.h"
00022
00023 extern ControlEngine ce;
00024
00025 // ********************************************************************************
00026
00027 void Face::Set(char *_name,int _idControl,int _idFace,BOOL _view)
00028 {
00029         idControl = _idControl;
00030         idFace = _idFace;
00031         name = _name;
00032         view = _view;
00033 }
00034
00038 BOOL Face::ConfigDynamicLayout(Face *father,double xPosition,double yPosition,double xSize,double ySize)
00039 {
00040         if (!father) return FALSE;
00041         position.x.SetPercent(xPosition,&father->computeSize.x);
00042         position.y.SetPercent(yPosition,&father->computeSize.y);
00043         size.x.SetPercent(xSize,&father->computeSize.x);
00044         size.y.SetPercent(ySize,&father->computeSize.y);
00045         return TRUE;
00046 }
00047
00048 void Face::ConfigStaticLayout(double xPosition,double yPosition,double zPosition,double xSize,double ySize)
00049 {
00050         MoveTo(xPosition,yPosition,zPosition);
00051         size.x.constValue=xSize;
00052         size.y.constValue=ySize;
00053 }
00054
00055 void Face::ConfigCenter(int xCenter,int yCenter)
00056 {
00057         center.x=xCenter;
00058         center.y=xCenter;
00059 }
00060
00061 void Face::Move(double x,double y,double z)
00062 {
00063         position.x.constValue+=x;
00064         position.y.constValue+=y;
00065         position.z.constValue+=z;
00066 }
00067
00068 void Face::MoveTo(double x,double y,double z)
00069 {
00070         position.x.constValue=x;
00071         position.y.constValue=y;
00072         position.z.constValue=z;
00073 }
00074
00075 void Face::ComputeLayout()
00076 {
00077         computeSize.x = size.x.Compute()*scale.x;
00078         computeSize.y = size.y.Compute()*scale.y;
00079         computePosition.x = position.x.Compute()*scale.x;
00080         computePosition.y = position.y.Compute()*scale.y;
00081         computePosition.z = position.z.Compute();
00082
00083         switch (center.x)
00084         {
00085         case -1: computeCenter.x = -computeSize.x/2.0; break;
00086         case 0: computeCenter.x = 0; break;
00087         case 1: computeCenter.x = computeSize.x/2.0; break;
00088         }
00089         switch (center.y)
00090         {
00091         case -1: computeCenter.y = -computeSize.y/2.0; break;
00092         case 0: computeCenter.y = 0; break;
00093         case 1: computeCenter.y = computeSize.y/2.0; break;
00094         }
00095 }
00096
00109 void Face::Draw(BOOL onPicking)
00110 {
00111         GLdouble dx = computeSize.x/2.0;
00112         GLdouble dy = computeSize.y/2.0;
00113         if (!onPicking) material.Use();
00114         if (view)
00115         {
00116                 if (onPicking)
00117                 {       // on est en mode picking
00118                         if (noPicking) return; // cette face ne dois pas etre considere pour le picking
00119                         glPushName(idControl);
00120                         glPushName(idFace);
00121                         childRecorder.Play(); // s'il y a un objet custom a dessine
00122
00123                         if (curve.IsActive())
00124                         {       // dessine des sous rectangle pour plus de realisme
00125                                 glTranslated(-dx,dy,0);
00126                                 curve.Draw(computeSize,NULL);
00127                                 glTranslated(dx,-dy,0);
00128                         }
00129                         else
00130                         {
00131                                 glBegin(GL_QUADS);
00132                                 glVertex2d(-dx,-dy);
00133                                 glVertex2d(dx,-dy);
00134                                 glVertex2d(dx,dy);
00135                                 glVertex2d(-dx,dy);
00136                                 glEnd();
00137                         }
00138
00139                         if (text)
00140                         {       // le text a sont propre picking
00141                                 text->SetClipping(computeSize);
00142                                 text->SetRatioXY(ratioXY);
00143                                 glTranslated(-dx,dy,0);
00144                                 text->DrawPicking();
00145                                 glTranslated(dx,-dy,0);
00146                         }
00147
00148                         glPopName();
00149                         glPopName();
00150                 }
00151                 else
00152                 {       // on est en mode affichage
00153                         if (!fog&&ce.fog.isEnable) glDisable(GL_FOG);
00154
00155                         if (texture)
00156                         {
00157                                 glEnable(GL_TEXTURE_2D);
00158                                 glBindTexture(GL_TEXTURE_2D,texture->id);
00159                         }
00160                         else glDisable(GL_TEXTURE_2D);
00161                         if (blending)
00162                         {
00163                                 glEnable(GL_BLEND);
00164                                 glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
00165                         }
00166                         else glDisable(GL_BLEND);
00167
00168                         childRecorder.Play(); // s'il y a un objet custom a dessine
00169
00170                         if (ce.screenMain.region.enable)
00171                         {       // pour les region ou calcul du la distance z au picking:
00172                                 // determination des coordonnées de chaque sommet sur l'ecrant
00173                                 ce.RegionAdd(-dx,-dy);
00174                                 ce.RegionAdd(dx,-dy);
00175                                 ce.RegionAdd(dx,dy);
00176                                 ce.RegionAdd(-dx,dy);
00177                         }
00178
00179                         //glNormal3d(0,0,1); // utilisation GL_NORMALIZE sinon pb, a re-etudier, pise, les normal utilse t'elle la matrice de projection ?
00180                         if (curve.IsActive())
00181                         {       // dessine des sous rectangle pour plus de realisme
00182                                 glTranslated(-dx,dy,0);
00183                                 curve.Draw(computeSize,texture);
00184                                 glTranslated(dx,-dy,0);
00185                         }
00186                         else
00187                         {
00188                                 glBegin(GL_QUADS);
00189                                 if (texture)
00190                                 {
00191                                         texture->SetCoord(0,0);         glVertex2d(-dx,-dy);
00192                                         texture->SetCoord(1,0);         glVertex2d(dx,-dy);
00193                                         texture->SetCoord(1,1);         glVertex2d(dx,dy);
00194                                         texture->SetCoord(0,1);         glVertex2d(-dx,dy);
00195                                 }
00196                                 else
00197                                 {
00198                                         glVertex2d(-dx,-dy);
00199                                         glVertex2d(dx,-dy);
00200                                         glVertex2d(dx,dy);
00201                                         glVertex2d(-dx,dy);
00202                                 }
00203                                 glEnd();
00204                         }
00205                         if (!fog&&ce.fog.isEnable) glEnable(GL_FOG);
00206                         if (texture) glDisable(GL_TEXTURE_2D);
00207                         if (blending) glDisable(GL_BLEND);
00208
00209                         if (text) // affichage du text
00210                         {       // le text dois etre affiché apres la face sinon ca bug
00211                                 // text->SetClipping(delta.x,delta.y);
00212                                 text->SetClipping(computeSize);
00213                                 glPushAttrib(GL_LIGHTING_BIT);
00214                                 text->SetRatioXY(ratioXY);
00215                                 glTranslated(-dx,dy,0); // a faire: transposé tout dans le draw
00216                                 text->Draw();
00217                                 glTranslated(dx,-dy,0);
00218                                 glPopAttrib();
00219                         }
00220                 }
00221         }
00222         else
00223         {
00224                 if (!onPicking)
00225                 {
00226                         childRecorder.Play(); // s'il y a un objet custom a dessine
00227                 }
00228         }
00229         if (!onPicking&&line)
00230         {
00231                 if (antialias)
00232                 {
00233                         glEnable(GL_BLEND);
00234                         glBlendFunc(GL_SRC_ALPHA,GL_ONE);
00235                 }
00236                 glPushAttrib(GL_LIGHTING_BIT);
00237                 lineMaterial.Use();
00238                 glLineWidth(line);
00239                 glBegin(GL_LINE_LOOP);
00240                 glVertex2d(-dx,-dy);
00241                 glVertex2d(dx,-dy);
00242                 glVertex2d(dx,dy);
00243                 glVertex2d(-dx,dy);
00244                 glEnd();
00245                 glPopAttrib();
00246                 if (antialias) glDisable(GL_BLEND);
00247         }
00248 }
00249
00251 void Face::MovingInside()
00252 {
00253         computePosition.glTranslated();                                 // deplacement par rapport au conteneur
00254         angle.glRotated();                                                              // effectue la rotation de face
00255         glTranslated(computeCenter.x,computeCenter.y,0);// centrage
00256 }
00257
00259 void Face::GetCorners(Point3D<double> *corners)
00260 {
00261         GLdouble dx = computeSize.x/2.0;
00262         GLdouble dy = computeSize.y/2.0;
00263
00264         ce.RegionGet(-dx,-dy,&corners[0]);
00265         ce.RegionGet(dx,-dy,&corners[1]);
00266         ce.RegionGet(dx,dy,&corners[2]);
00267         ce.RegionGet(-dx,dy,&corners[3]);
00268 }
00269
00270 // ********************************************************************************
00271
00272 Face::Face()
00273 {
00274         Zero();
00275 }
00276
00277 Face::~Face()
00278 {
00279 }
00280
00281 // ********************************************************************************
00282
00283 void Face::Zero()
00284 {
00285         idFace = 0;
00286         childRecorder.Delete();
00287         idControl = 0;
00288         name = "";
00289
00290         size.Zero();
00291         center.Zero();
00292         position.Zero();
00293         computeSize.Zero();
00294         computeCenter.Zero();
00295         computePosition.Zero();
00296         angle.Zero();
00297         scale.Set(1,1,1);
00298         ratioXY = 1;
00299
00300         view = TRUE;
00301         blending = FALSE;
00302         antialias = TRUE;
00303         noPicking = FALSE;
00304         fog = TRUE;
00305         line = 0;
00306         lineMaterial.Zero();
00307
00308         texture = NULL;
00309         material.Zero();
00310         curve.Zero();
00311
00312         text = NULL;
00313 }
00314
00315 // ********************************************************************************
00316
00317 void Face::operator=(Face &src)
00318 {
00319         line = src.line;
00320         lineMaterial = src.lineMaterial;
00321         name = src.name;
00322         idFace = src.idFace;
00323         idControl = src.idControl;
00324
00325         fog = src.fog;
00326
00327         size=src.size;
00328         center=src.center;
00329         position=src.position;
00330         computeSize=src.computeSize;
00331         computeCenter=src.computeCenter;
00332         computePosition=src.computePosition;
00333         angle=src.angle;
00334         scale=src.scale;
00335         ratioXY = src.ratioXY;
00336
00337         view = src.view;
00338         blending = src.blending;
00339         noPicking = src.noPicking;
00340         antialias = src.antialias;
00341         texture = src.texture;
00342         material = src.material;
00343         curve = src.curve;
00344
00345         angle = src.angle;
00346         text = src.text;
00347 }
00348
00349 // ********************************************************************************
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: face.h File Reference

face.h File Reference

Gestion de Face. More...

#include "3d.h"
#include "texture.h"
#include "curve.h"
#include "material.h"
#include "layout.h"
#include "text3d.h"

Go to the source code of this file.

Classes

class | Face
Une face est la brique de base de l'affichage 3D. More...

Typedefs

typedef Layout< GLdouble > | LayoutDouble
typedef MyTreeNode< Face > | FaceNode

Detailed Description

Gestion de Face.

Definition in file face.h.

Typedef Documentation

typedef MyTreeNode<Face> FaceNode

Definition at line 94 of file face.h.

Referenced by TaskWindow::Add(), Primitive::AddBox(), Primitive::AddFace(), Effect::Bind(), Primitive::ComputeLayout(), TaskWindow::Create(), MsgBox::Create(), DebugStructProc(), Primitive::Draw(), Tutorial::FaceDemo::FaceDemo(), Primitive::Find(), Picking::FindContainer(), Primitive::GetCorners(), Primitive::GetLocalPos(), Primitive::GoTo(), Primitive::GoToParent(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), ValueEditors::MakeElemFaceStruct(), Tutorial::FaceDemo::OnTimer(), Primitive::Peek(), Primitive::ReOrderForBlending(), Control::SetParent(), and Primitive::ViewDebug().

typedef Layout<GLdouble> LayoutDouble

Definition at line 33 of file face.h.

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: face.h Source File

face.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_FACE_H
00024 #define INCLUDE_3D_FACE_H
00025
00026 #include "3d.h"
00027 #include "texture.h"
00028 #include "curve.h"
00029 #include "material.h"
00030 #include "layout.h"
00031 #include "text3d.h"
00032
00033 typedef Layout<GLdouble> LayoutDouble;
00046 class Face
00047 {
00048 public:
00049         // params
00050         Recorder childRecorder;
00051         int idFace,idControl;
00052         BOOL noPicking;
00053         BOOL view;
00054         BOOL blending;
00055         MyString name;
00056         Text3D *text;
00057         Material material;
00058         Texture *texture;
00059         Curve curve;
00060         float line;
00061         Material lineMaterial;
00062         BOOL antialias;
00063         BOOL fog;
00064
00065         // positionement
00066         Point2D<LayoutDouble> size;
00067         Point2D<int> center;
00068         Point3D<LayoutDouble> position;
00069         Point3D<GLdouble> scale;
00070         Point3D<GLdouble> angle;
00071         Point2D<GLdouble> computeSize;
00072         Point2D<GLdouble> computeCenter;
00073         Point3D<GLdouble> computePosition;
00074         double ratioXY;
00075
00076 public:
00077         Face();
00078         ~Face();
00079         void Set (char *name,int idControl,int idFace,BOOL view);
00080         BOOL ConfigDynamicLayout(Face *father,double xCenter,double yCenter,double xSize,double ySize);
00081         void ConfigStaticLayout(double xCenter,double yCenter,double zCenter,double xSize,double ySize);
00082         void ConfigCenter(int xCenter,int yCenter);
00083         void Move(double x,double y,double z);
00084         void MoveTo(double x,double y,double z);
00085         void MovingInside();
00086         void Zero();
00087         void operator=(Face &source);
00088         void Draw(BOOL onPicking);
00089         void GetCorners(Point3D<double> *corners);
00090         void ComputeLayout();
00091
00092 };
00093
00094 typedef MyTreeNode<Face> FaceNode; // pour simplifier l'ecriture
00095
00096 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: fog.h File Reference

fog.h File Reference

Gestion du brouillard. More...

Go to the source code of this file.

Classes

class | Fog

Enumerations

enum | FogMode { fogLinear = GL_LINEAR, fogExponential = GL_EXP, fogExponential2 = GL_EXP2 }
Gestion du brouillard (charque face peut choisir ou pas de l'utiliser). More...

Detailed Description

Gestion du brouillard.

Definition in file fog.h.

Enumeration Type Documentation

enum FogMode

Gestion du brouillard (charque face peut choisir ou pas de l'utiliser).

Les parametres:

  • actife (isEnable)
  • position (start,end)
  • densité (density)
  • mode
  • couleur (color)
Enumeration values:
fogLinear
fogExponential
fogExponential2

Definition at line 37 of file fog.h.

Referenced by Fog::SetIndexMode().

Generated on Fri Aug 20 19:19:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: fog.h Source File

fog.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_FOG_H
00024 #define INCLUDE_3D_FOG_H
00025
00037 typedef enum
00038 {
00039         fogLinear = GL_LINEAR,
00040         fogExponential = GL_EXP,
00041         fogExponential2 = GL_EXP2
00042 } FogMode;
00053 class Fog
00054 {
00055 public:
00056         BOOL  isEnable;
00057         float start;
00058         float end;
00059         float density;
00060         FogMode mode;
00061         Color color;
00062
00063 public:
00064         Fog()
00065         {
00066                 isEnable=FALSE;
00067                 start=0;
00068                 end=0;
00069                 density=0;
00070                 mode=fogLinear;
00071                 color.Set(0,0,0,1.0);
00072         }
00073
00074         void Enable(BOOL set=-1)
00075         {
00076                 if (set!=-1) isEnable = set;
00077                 if (isEnable) glEnable(GL_FOG);
00078                 else glDisable(GL_FOG);
00079         }
00080
00081         void Use()
00082         {
00083                 Enable();
00084                 glFogfv(GL_FOG_COLOR,color);
00085                 glFogf(GL_FOG_START,start);
00086                 glFogf(GL_FOG_END,end);
00087                 glFogf(GL_FOG_DENSITY,density);
00088                 glFogi(GL_FOG_MODE,(int)mode);
00089         }
00090
00091         void GetStringMode (MyString &result)
00092         {
00093                 switch (mode)
00094                 {
00095                 case fogLinear: result="Linear"; break;
00096                 case fogExponential: result="Exponential"; break;
00097                 case fogExponential2: result="Exponential²"; break;
00098                 default: result="Error";
00099                 }
00100         }
00101
00102         int GetIndexMode()
00103         {
00104                 switch (mode)
00105                 {
00106                 case fogLinear: return 0;
00107                 case fogExponential: return 1;
00108                 case fogExponential2: return 2;
00109                 default: return -1;
00110                 }
00111         }
00112
00113         void SetIndexMode(int index)
00114         {
00115                 FogMode listMode[]={fogLinear,fogExponential,fogExponential2};
00116                 mode = listMode[index];
00117         }
00118 };
00119
00120 #endif
Generated on Fri Aug 20 19:19:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: glext.h File Reference

glext.h File Reference

#include <stddef.h>

Go to the source code of this file.

Defines

#define | GLAPI extern
#define | GL_GLEXT_VERSION 18
#define | GL_UNSIGNED_BYTE_3_3_2 0x8032
#define | GL_UNSIGNED_SHORT_4_4_4_4 0x8033
#define | GL_UNSIGNED_SHORT_5_5_5_1 0x8034
#define | GL_UNSIGNED_INT_8_8_8_8 0x8035
#define | GL_UNSIGNED_INT_10_10_10_2 0x8036
#define | GL_RESCALE_NORMAL 0x803A
#define | GL_TEXTURE_BINDING_3D 0x806A
#define | GL_PACK_SKIP_IMAGES 0x806B
#define | GL_PACK_IMAGE_HEIGHT 0x806C
#define | GL_UNPACK_SKIP_IMAGES 0x806D
#define | GL_UNPACK_IMAGE_HEIGHT 0x806E
#define | GL_TEXTURE_3D 0x806F
#define | GL_PROXY_TEXTURE_3D 0x8070
#define | GL_TEXTURE_DEPTH 0x8071
#define | GL_TEXTURE_WRAP_R 0x8072
#define | GL_MAX_3D_TEXTURE_SIZE 0x8073
#define | GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
#define | GL_UNSIGNED_SHORT_5_6_5 0x8363
#define | GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
#define | GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
#define | GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
#define | GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
#define | GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
#define | GL_BGR 0x80E0
#define | GL_BGRA 0x80E1
#define | GL_MAX_ELEMENTS_VERTICES 0x80E8
#define | GL_MAX_ELEMENTS_INDICES 0x80E9
#define | GL_CLAMP_TO_EDGE 0x812F
#define | GL_TEXTURE_MIN_LOD 0x813A
#define | GL_TEXTURE_MAX_LOD 0x813B
#define | GL_TEXTURE_BASE_LEVEL 0x813C
#define | GL_TEXTURE_MAX_LEVEL 0x813D
#define | GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
#define | GL_SINGLE_COLOR 0x81F9
#define | GL_SEPARATE_SPECULAR_COLOR 0x81FA
#define | GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
#define | GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
#define | GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
#define | GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
#define | GL_ALIASED_POINT_SIZE_RANGE 0x846D
#define | GL_ALIASED_LINE_WIDTH_RANGE 0x846E
#define | GL_CONSTANT_COLOR 0x8001
#define | GL_ONE_MINUS_CONSTANT_COLOR 0x8002
#define | GL_CONSTANT_ALPHA 0x8003
#define | GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
#define | GL_BLEND_COLOR 0x8005
#define | GL_FUNC_ADD 0x8006
#define | GL_MIN 0x8007
#define | GL_MAX 0x8008
#define | GL_BLEND_EQUATION 0x8009
#define | GL_FUNC_SUBTRACT 0x800A
#define | GL_FUNC_REVERSE_SUBTRACT 0x800B
#define | GL_CONVOLUTION_1D 0x8010
#define | GL_CONVOLUTION_2D 0x8011
#define | GL_SEPARABLE_2D 0x8012
#define | GL_CONVOLUTION_BORDER_MODE 0x8013
#define | GL_CONVOLUTION_FILTER_SCALE 0x8014
#define | GL_CONVOLUTION_FILTER_BIAS 0x8015
#define | GL_REDUCE 0x8016
#define | GL_CONVOLUTION_FORMAT 0x8017
#define | GL_CONVOLUTION_WIDTH 0x8018
#define | GL_CONVOLUTION_HEIGHT 0x8019
#define | GL_MAX_CONVOLUTION_WIDTH 0x801A
#define | GL_MAX_CONVOLUTION_HEIGHT 0x801B
#define | GL_POST_CONVOLUTION_RED_SCALE 0x801C
#define | GL_POST_CONVOLUTION_GREEN_SCALE 0x801D
#define | GL_POST_CONVOLUTION_BLUE_SCALE 0x801E
#define | GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F
#define | GL_POST_CONVOLUTION_RED_BIAS 0x8020
#define | GL_POST_CONVOLUTION_GREEN_BIAS 0x8021
#define | GL_POST_CONVOLUTION_BLUE_BIAS 0x8022
#define | GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023
#define | GL_HISTOGRAM 0x8024
#define | GL_PROXY_HISTOGRAM 0x8025
#define | GL_HISTOGRAM_WIDTH 0x8026
#define | GL_HISTOGRAM_FORMAT 0x8027
#define | GL_HISTOGRAM_RED_SIZE 0x8028
#define | GL_HISTOGRAM_GREEN_SIZE 0x8029
#define | GL_HISTOGRAM_BLUE_SIZE 0x802A
#define | GL_HISTOGRAM_ALPHA_SIZE 0x802B
#define | GL_HISTOGRAM_LUMINANCE_SIZE 0x802C
#define | GL_HISTOGRAM_SINK 0x802D
#define | GL_MINMAX 0x802E
#define | GL_MINMAX_FORMAT 0x802F
#define | GL_MINMAX_SINK 0x8030
#define | GL_TABLE_TOO_LARGE 0x8031
#define | GL_COLOR_MATRIX 0x80B1
#define | GL_COLOR_MATRIX_STACK_DEPTH 0x80B2
#define | GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3
#define | GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4
#define | GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5
#define | GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6
#define | GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7
#define | GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8
#define | GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9
#define | GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA
#define | GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB
#define | GL_COLOR_TABLE 0x80D0
#define | GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1
#define | GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2
#define | GL_PROXY_COLOR_TABLE 0x80D3
#define | GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
#define | GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
#define | GL_COLOR_TABLE_SCALE 0x80D6
#define | GL_COLOR_TABLE_BIAS 0x80D7
#define | GL_COLOR_TABLE_FORMAT 0x80D8
#define | GL_COLOR_TABLE_WIDTH 0x80D9
#define | GL_COLOR_TABLE_RED_SIZE 0x80DA
#define | GL_COLOR_TABLE_GREEN_SIZE 0x80DB
#define | GL_COLOR_TABLE_BLUE_SIZE 0x80DC
#define | GL_COLOR_TABLE_ALPHA_SIZE 0x80DD
#define | GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE
#define | GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF
#define | GL_CONSTANT_BORDER 0x8151
#define | GL_REPLICATE_BORDER 0x8153
#define | GL_CONVOLUTION_BORDER_COLOR 0x8154
#define | GL_TEXTURE0 0x84C0
#define | GL_TEXTURE1 0x84C1
#define | GL_TEXTURE2 0x84C2
#define | GL_TEXTURE3 0x84C3
#define | GL_TEXTURE4 0x84C4
#define | GL_TEXTURE5 0x84C5
#define | GL_TEXTURE6 0x84C6
#define | GL_TEXTURE7 0x84C7
#define | GL_TEXTURE8 0x84C8
#define | GL_TEXTURE9 0x84C9
#define | GL_TEXTURE10 0x84CA
#define | GL_TEXTURE11 0x84CB
#define | GL_TEXTURE12 0x84CC
#define | GL_TEXTURE13 0x84CD
#define | GL_TEXTURE14 0x84CE
#define | GL_TEXTURE15 0x84CF
#define | GL_TEXTURE16 0x84D0
#define | GL_TEXTURE17 0x84D1
#define | GL_TEXTURE18 0x84D2
#define | GL_TEXTURE19 0x84D3
#define | GL_TEXTURE20 0x84D4
#define | GL_TEXTURE21 0x84D5
#define | GL_TEXTURE22 0x84D6
#define | GL_TEXTURE23 0x84D7
#define | GL_TEXTURE24 0x84D8
#define | GL_TEXTURE25 0x84D9
#define | GL_TEXTURE26 0x84DA
#define | GL_TEXTURE27 0x84DB
#define | GL_TEXTURE28 0x84DC
#define | GL_TEXTURE29 0x84DD
#define | GL_TEXTURE30 0x84DE
#define | GL_TEXTURE31 0x84DF
#define | GL_ACTIVE_TEXTURE 0x84E0
#define | GL_CLIENT_ACTIVE_TEXTURE 0x84E1
#define | GL_MAX_TEXTURE_UNITS 0x84E2
#define | GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
#define | GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
#define | GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
#define | GL_TRANSPOSE_COLOR_MATRIX 0x84E6
#define | GL_MULTISAMPLE 0x809D
#define | GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
#define | GL_SAMPLE_ALPHA_TO_ONE 0x809F
#define | GL_SAMPLE_COVERAGE 0x80A0
#define | GL_SAMPLE_BUFFERS 0x80A8
#define | GL_SAMPLES 0x80A9
#define | GL_SAMPLE_COVERAGE_VALUE 0x80AA
#define | GL_SAMPLE_COVERAGE_INVERT 0x80AB
#define | GL_MULTISAMPLE_BIT 0x20000000
#define | GL_NORMAL_MAP 0x8511
#define | GL_REFLECTION_MAP 0x8512
#define | GL_TEXTURE_CUBE_MAP 0x8513
#define | GL_TEXTURE_BINDING_CUBE_MAP 0x8514
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
#define | GL_PROXY_TEXTURE_CUBE_MAP 0x851B
#define | GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
#define | GL_COMPRESSED_ALPHA 0x84E9
#define | GL_COMPRESSED_LUMINANCE 0x84EA
#define | GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
#define | GL_COMPRESSED_INTENSITY 0x84EC
#define | GL_COMPRESSED_RGB 0x84ED
#define | GL_COMPRESSED_RGBA 0x84EE
#define | GL_TEXTURE_COMPRESSION_HINT 0x84EF
#define | GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
#define | GL_TEXTURE_COMPRESSED 0x86A1
#define | GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
#define | GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
#define | GL_CLAMP_TO_BORDER 0x812D
#define | GL_CLAMP_TO_BORDER_SGIS 0x812D
#define | GL_COMBINE 0x8570
#define | GL_COMBINE_RGB 0x8571
#define | GL_COMBINE_ALPHA 0x8572
#define | GL_SOURCE0_RGB 0x8580
#define | GL_SOURCE1_RGB 0x8581
#define | GL_SOURCE2_RGB 0x8582
#define | GL_SOURCE0_ALPHA 0x8588
#define | GL_SOURCE1_ALPHA 0x8589
#define | GL_SOURCE2_ALPHA 0x858A
#define | GL_OPERAND0_RGB 0x8590
#define | GL_OPERAND1_RGB 0x8591
#define | GL_OPERAND2_RGB 0x8592
#define | GL_OPERAND0_ALPHA 0x8598
#define | GL_OPERAND1_ALPHA 0x8599
#define | GL_OPERAND2_ALPHA 0x859A
#define | GL_RGB_SCALE 0x8573
#define | GL_ADD_SIGNED 0x8574
#define | GL_INTERPOLATE 0x8575
#define | GL_SUBTRACT 0x84E7
#define | GL_CONSTANT 0x8576
#define | GL_PRIMARY_COLOR 0x8577
#define | GL_PREVIOUS 0x8578
#define | GL_DOT3_RGB 0x86AE
#define | GL_DOT3_RGBA 0x86AF
#define | GL_BLEND_DST_RGB 0x80C8
#define | GL_BLEND_SRC_RGB 0x80C9
#define | GL_BLEND_DST_ALPHA 0x80CA
#define | GL_BLEND_SRC_ALPHA 0x80CB
#define | GL_POINT_SIZE_MIN 0x8126
#define | GL_POINT_SIZE_MAX 0x8127
#define | GL_POINT_FADE_THRESHOLD_SIZE 0x8128
#define | GL_POINT_DISTANCE_ATTENUATION 0x8129
#define | GL_GENERATE_MIPMAP 0x8191
#define | GL_GENERATE_MIPMAP_HINT 0x8192
#define | GL_DEPTH_COMPONENT16 0x81A5
#define | GL_DEPTH_COMPONENT24 0x81A6
#define | GL_DEPTH_COMPONENT32 0x81A7
#define | GL_MIRRORED_REPEAT 0x8370
#define | GL_FOG_COORDINATE_SOURCE 0x8450
#define | GL_FOG_COORDINATE 0x8451
#define | GL_FRAGMENT_DEPTH 0x8452
#define | GL_CURRENT_FOG_COORDINATE 0x8453
#define | GL_FOG_COORDINATE_ARRAY_TYPE 0x8454
#define | GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455
#define | GL_FOG_COORDINATE_ARRAY_POINTER 0x8456
#define | GL_FOG_COORDINATE_ARRAY 0x8457
#define | GL_COLOR_SUM 0x8458
#define | GL_CURRENT_SECONDARY_COLOR 0x8459
#define | GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A
#define | GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B
#define | GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C
#define | GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D
#define | GL_SECONDARY_COLOR_ARRAY 0x845E
#define | GL_MAX_TEXTURE_LOD_BIAS 0x84FD
#define | GL_TEXTURE_FILTER_CONTROL 0x8500
#define | GL_TEXTURE_LOD_BIAS 0x8501
#define | GL_INCR_WRAP 0x8507
#define | GL_DECR_WRAP 0x8508
#define | GL_TEXTURE_DEPTH_SIZE 0x884A
#define | GL_DEPTH_TEXTURE_MODE 0x884B
#define | GL_TEXTURE_COMPARE_MODE 0x884C
#define | GL_TEXTURE_COMPARE_FUNC 0x884D
#define | GL_COMPARE_R_TO_TEXTURE 0x884E
#define | GL_TEXTURE0_ARB 0x84C0
#define | GL_TEXTURE1_ARB 0x84C1
#define | GL_TEXTURE2_ARB 0x84C2
#define | GL_TEXTURE3_ARB 0x84C3
#define | GL_TEXTURE4_ARB 0x84C4
#define | GL_TEXTURE5_ARB 0x84C5
#define | GL_TEXTURE6_ARB 0x84C6
#define | GL_TEXTURE7_ARB 0x84C7
#define | GL_TEXTURE8_ARB 0x84C8
#define | GL_TEXTURE9_ARB 0x84C9
#define | GL_TEXTURE10_ARB 0x84CA
#define | GL_TEXTURE11_ARB 0x84CB
#define | GL_TEXTURE12_ARB 0x84CC
#define | GL_TEXTURE13_ARB 0x84CD
#define | GL_TEXTURE14_ARB 0x84CE
#define | GL_TEXTURE15_ARB 0x84CF
#define | GL_TEXTURE16_ARB 0x84D0
#define | GL_TEXTURE17_ARB 0x84D1
#define | GL_TEXTURE18_ARB 0x84D2
#define | GL_TEXTURE19_ARB 0x84D3
#define | GL_TEXTURE20_ARB 0x84D4
#define | GL_TEXTURE21_ARB 0x84D5
#define | GL_TEXTURE22_ARB 0x84D6
#define | GL_TEXTURE23_ARB 0x84D7
#define | GL_TEXTURE24_ARB 0x84D8
#define | GL_TEXTURE25_ARB 0x84D9
#define | GL_TEXTURE26_ARB 0x84DA
#define | GL_TEXTURE27_ARB 0x84DB
#define | GL_TEXTURE28_ARB 0x84DC
#define | GL_TEXTURE29_ARB 0x84DD
#define | GL_TEXTURE30_ARB 0x84DE
#define | GL_TEXTURE31_ARB 0x84DF
#define | GL_ACTIVE_TEXTURE_ARB 0x84E0
#define | GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1
#define | GL_MAX_TEXTURE_UNITS_ARB 0x84E2
#define | GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3
#define | GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4
#define | GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5
#define | GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6
#define | GL_MULTISAMPLE_ARB 0x809D
#define | GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809E
#define | GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809F
#define | GL_SAMPLE_COVERAGE_ARB 0x80A0
#define | GL_SAMPLE_BUFFERS_ARB 0x80A8
#define | GL_SAMPLES_ARB 0x80A9
#define | GL_SAMPLE_COVERAGE_VALUE_ARB 0x80AA
#define | GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB
#define | GL_MULTISAMPLE_BIT_ARB 0x20000000
#define | GL_NORMAL_MAP_ARB 0x8511
#define | GL_REFLECTION_MAP_ARB 0x8512
#define | GL_TEXTURE_CUBE_MAP_ARB 0x8513
#define | GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A
#define | GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B
#define | GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851C
#define | GL_COMPRESSED_ALPHA_ARB 0x84E9
#define | GL_COMPRESSED_LUMINANCE_ARB 0x84EA
#define | GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB
#define | GL_COMPRESSED_INTENSITY_ARB 0x84EC
#define | GL_COMPRESSED_RGB_ARB 0x84ED
#define | GL_COMPRESSED_RGBA_ARB 0x84EE
#define | GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF
#define | GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0
#define | GL_TEXTURE_COMPRESSED_ARB 0x86A1
#define | GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2
#define | GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3
#define | GL_CLAMP_TO_BORDER_ARB 0x812D
#define | GL_POINT_SIZE_MIN_ARB 0x8126
#define | GL_POINT_SIZE_MAX_ARB 0x8127
#define | GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128
#define | GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129
#define | GL_MAX_VERTEX_UNITS_ARB 0x86A4
#define | GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5
#define | GL_WEIGHT_SUM_UNITY_ARB 0x86A6
#define | GL_VERTEX_BLEND_ARB 0x86A7
#define | GL_CURRENT_WEIGHT_ARB 0x86A8
#define | GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9
#define | GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA
#define | GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB
#define | GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC
#define | GL_WEIGHT_ARRAY_ARB 0x86AD
#define | GL_MODELVIEW0_ARB 0x1700
#define | GL_MODELVIEW1_ARB 0x850A
#define | GL_MODELVIEW2_ARB 0x8722
#define | GL_MODELVIEW3_ARB 0x8723
#define | GL_MODELVIEW4_ARB 0x8724
#define | GL_MODELVIEW5_ARB 0x8725
#define | GL_MODELVIEW6_ARB 0x8726
#define | GL_MODELVIEW7_ARB 0x8727
#define | GL_MODELVIEW8_ARB 0x8728
#define | GL_MODELVIEW9_ARB 0x8729
#define | GL_MODELVIEW10_ARB 0x872A
#define | GL_MODELVIEW11_ARB 0x872B
#define | GL_MODELVIEW12_ARB 0x872C
#define | GL_MODELVIEW13_ARB 0x872D
#define | GL_MODELVIEW14_ARB 0x872E
#define | GL_MODELVIEW15_ARB 0x872F
#define | GL_MODELVIEW16_ARB 0x8730
#define | GL_MODELVIEW17_ARB 0x8731
#define | GL_MODELVIEW18_ARB 0x8732
#define | GL_MODELVIEW19_ARB 0x8733
#define | GL_MODELVIEW20_ARB 0x8734
#define | GL_MODELVIEW21_ARB 0x8735
#define | GL_MODELVIEW22_ARB 0x8736
#define | GL_MODELVIEW23_ARB 0x8737
#define | GL_MODELVIEW24_ARB 0x8738
#define | GL_MODELVIEW25_ARB 0x8739
#define | GL_MODELVIEW26_ARB 0x873A
#define | GL_MODELVIEW27_ARB 0x873B
#define | GL_MODELVIEW28_ARB 0x873C
#define | GL_MODELVIEW29_ARB 0x873D
#define | GL_MODELVIEW30_ARB 0x873E
#define | GL_MODELVIEW31_ARB 0x873F
#define | GL_MATRIX_PALETTE_ARB 0x8840
#define | GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841
#define | GL_MAX_PALETTE_MATRICES_ARB 0x8842
#define | GL_CURRENT_PALETTE_MATRIX_ARB 0x8843
#define | GL_MATRIX_INDEX_ARRAY_ARB 0x8844
#define | GL_CURRENT_MATRIX_INDEX_ARB 0x8845
#define | GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846
#define | GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847
#define | GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848
#define | GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849
#define | GL_COMBINE_ARB 0x8570
#define | GL_COMBINE_RGB_ARB 0x8571
#define | GL_COMBINE_ALPHA_ARB 0x8572
#define | GL_SOURCE0_RGB_ARB 0x8580
#define | GL_SOURCE1_RGB_ARB 0x8581
#define | GL_SOURCE2_RGB_ARB 0x8582
#define | GL_SOURCE0_ALPHA_ARB 0x8588
#define | GL_SOURCE1_ALPHA_ARB 0x8589
#define | GL_SOURCE2_ALPHA_ARB 0x858A
#define | GL_OPERAND0_RGB_ARB 0x8590
#define | GL_OPERAND1_RGB_ARB 0x8591
#define | GL_OPERAND2_RGB_ARB 0x8592
#define | GL_OPERAND0_ALPHA_ARB 0x8598
#define | GL_OPERAND1_ALPHA_ARB 0x8599
#define | GL_OPERAND2_ALPHA_ARB 0x859A
#define | GL_RGB_SCALE_ARB 0x8573
#define | GL_ADD_SIGNED_ARB 0x8574
#define | GL_INTERPOLATE_ARB 0x8575
#define | GL_SUBTRACT_ARB 0x84E7
#define | GL_CONSTANT_ARB 0x8576
#define | GL_PRIMARY_COLOR_ARB 0x8577
#define | GL_PREVIOUS_ARB 0x8578
#define | GL_DOT3_RGB_ARB 0x86AE
#define | GL_DOT3_RGBA_ARB 0x86AF
#define | GL_MIRRORED_REPEAT_ARB 0x8370
#define | GL_DEPTH_COMPONENT16_ARB 0x81A5
#define | GL_DEPTH_COMPONENT24_ARB 0x81A6
#define | GL_DEPTH_COMPONENT32_ARB 0x81A7
#define | GL_TEXTURE_DEPTH_SIZE_ARB 0x884A
#define | GL_DEPTH_TEXTURE_MODE_ARB 0x884B
#define | GL_TEXTURE_COMPARE_MODE_ARB 0x884C
#define | GL_TEXTURE_COMPARE_FUNC_ARB 0x884D
#define | GL_COMPARE_R_TO_TEXTURE_ARB 0x884E
#define | GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF
#define | GL_COLOR_SUM_ARB 0x8458
#define | GL_VERTEX_PROGRAM_ARB 0x8620
#define | GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622
#define | GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623
#define | GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624
#define | GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625
#define | GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626
#define | GL_PROGRAM_LENGTH_ARB 0x8627
#define | GL_PROGRAM_STRING_ARB 0x8628
#define | GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E
#define | GL_MAX_PROGRAM_MATRICES_ARB 0x862F
#define | GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640
#define | GL_CURRENT_MATRIX_ARB 0x8641
#define | GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642
#define | GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643
#define | GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645
#define | GL_PROGRAM_ERROR_POSITION_ARB 0x864B
#define | GL_PROGRAM_BINDING_ARB 0x8677
#define | GL_MAX_VERTEX_ATTRIBS_ARB 0x8869
#define | GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A
#define | GL_PROGRAM_ERROR_STRING_ARB 0x8874
#define | GL_PROGRAM_FORMAT_ASCII_ARB 0x8875
#define | GL_PROGRAM_FORMAT_ARB 0x8876
#define | GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0
#define | GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1
#define | GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2
#define | GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3
#define | GL_PROGRAM_TEMPORARIES_ARB 0x88A4
#define | GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5
#define | GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6
#define | GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7
#define | GL_PROGRAM_PARAMETERS_ARB 0x88A8
#define | GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9
#define | GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA
#define | GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB
#define | GL_PROGRAM_ATTRIBS_ARB 0x88AC
#define | GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD
#define | GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE
#define | GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF
#define | GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0
#define | GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1
#define | GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2
#define | GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3
#define | GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4
#define | GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5
#define | GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6
#define | GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7
#define | GL_MATRIX0_ARB 0x88C0
#define | GL_MATRIX1_ARB 0x88C1
#define | GL_MATRIX2_ARB 0x88C2
#define | GL_MATRIX3_ARB 0x88C3
#define | GL_MATRIX4_ARB 0x88C4
#define | GL_MATRIX5_ARB 0x88C5
#define | GL_MATRIX6_ARB 0x88C6
#define | GL_MATRIX7_ARB 0x88C7
#define | GL_MATRIX8_ARB 0x88C8
#define | GL_MATRIX9_ARB 0x88C9
#define | GL_MATRIX10_ARB 0x88CA
#define | GL_MATRIX11_ARB 0x88CB
#define | GL_MATRIX12_ARB 0x88CC
#define | GL_MATRIX13_ARB 0x88CD
#define | GL_MATRIX14_ARB 0x88CE
#define | GL_MATRIX15_ARB 0x88CF
#define | GL_MATRIX16_ARB 0x88D0
#define | GL_MATRIX17_ARB 0x88D1
#define | GL_MATRIX18_ARB 0x88D2
#define | GL_MATRIX19_ARB 0x88D3
#define | GL_MATRIX20_ARB 0x88D4
#define | GL_MATRIX21_ARB 0x88D5
#define | GL_MATRIX22_ARB 0x88D6
#define | GL_MATRIX23_ARB 0x88D7
#define | GL_MATRIX24_ARB 0x88D8
#define | GL_MATRIX25_ARB 0x88D9
#define | GL_MATRIX26_ARB 0x88DA
#define | GL_MATRIX27_ARB 0x88DB
#define | GL_MATRIX28_ARB 0x88DC
#define | GL_MATRIX29_ARB 0x88DD
#define | GL_MATRIX30_ARB 0x88DE
#define | GL_MATRIX31_ARB 0x88DF
#define | GL_FRAGMENT_PROGRAM_ARB 0x8804
#define | GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805
#define | GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806
#define | GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807
#define | GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808
#define | GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809
#define | GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A
#define | GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B
#define | GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C
#define | GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D
#define | GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E
#define | GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F
#define | GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810
#define | GL_MAX_TEXTURE_COORDS_ARB 0x8871
#define | GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872
#define | GL_BUFFER_SIZE_ARB 0x8764
#define | GL_BUFFER_USAGE_ARB 0x8765
#define | GL_ARRAY_BUFFER_ARB 0x8892
#define | GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893
#define | GL_ARRAY_BUFFER_BINDING_ARB 0x8894
#define | GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895
#define | GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896
#define | GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897
#define | GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898
#define | GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899
#define | GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A
#define | GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B
#define | GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C
#define | GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D
#define | GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E
#define | GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F
#define | GL_READ_ONLY_ARB 0x88B8
#define | GL_WRITE_ONLY_ARB 0x88B9
#define | GL_READ_WRITE_ARB 0x88BA
#define | GL_BUFFER_ACCESS_ARB 0x88BB
#define | GL_BUFFER_MAPPED_ARB 0x88BC
#define | GL_BUFFER_MAP_POINTER_ARB 0x88BD
#define | GL_STREAM_DRAW_ARB 0x88E0
#define | GL_STREAM_READ_ARB 0x88E1
#define | GL_STREAM_COPY_ARB 0x88E2
#define | GL_STATIC_DRAW_ARB 0x88E4
#define | GL_STATIC_READ_ARB 0x88E5
#define | GL_STATIC_COPY_ARB 0x88E6
#define | GL_DYNAMIC_DRAW_ARB 0x88E8
#define | GL_DYNAMIC_READ_ARB 0x88E9
#define | GL_DYNAMIC_COPY_ARB 0x88EA
#define | GL_ABGR_EXT 0x8000
#define | GL_CONSTANT_COLOR_EXT 0x8001
#define | GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002
#define | GL_CONSTANT_ALPHA_EXT 0x8003
#define | GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004
#define | GL_BLEND_COLOR_EXT 0x8005
#define | GL_POLYGON_OFFSET_EXT 0x8037
#define | GL_POLYGON_OFFSET_FACTOR_EXT 0x8038
#define | GL_POLYGON_OFFSET_BIAS_EXT 0x8039
#define | GL_ALPHA4_EXT 0x803B
#define | GL_ALPHA8_EXT 0x803C
#define | GL_ALPHA12_EXT 0x803D
#define | GL_ALPHA16_EXT 0x803E
#define | GL_LUMINANCE4_EXT 0x803F
#define | GL_LUMINANCE8_EXT 0x8040
#define | GL_LUMINANCE12_EXT 0x8041
#define | GL_LUMINANCE16_EXT 0x8042
#define | GL_LUMINANCE4_ALPHA4_EXT 0x8043
#define | GL_LUMINANCE6_ALPHA2_EXT 0x8044
#define | GL_LUMINANCE8_ALPHA8_EXT 0x8045
#define | GL_LUMINANCE12_ALPHA4_EXT 0x8046
#define | GL_LUMINANCE12_ALPHA12_EXT 0x8047
#define | GL_LUMINANCE16_ALPHA16_EXT 0x8048
#define | GL_INTENSITY_EXT 0x8049
#define | GL_INTENSITY4_EXT 0x804A
#define | GL_INTENSITY8_EXT 0x804B
#define | GL_INTENSITY12_EXT 0x804C
#define | GL_INTENSITY16_EXT 0x804D
#define | GL_RGB2_EXT 0x804E
#define | GL_RGB4_EXT 0x804F
#define | GL_RGB5_EXT 0x8050
#define | GL_RGB8_EXT 0x8051
#define | GL_RGB10_EXT 0x8052
#define | GL_RGB12_EXT 0x8053
#define | GL_RGB16_EXT 0x8054
#define | GL_RGBA2_EXT 0x8055
#define | GL_RGBA4_EXT 0x8056
#define | GL_RGB5_A1_EXT 0x8057
#define | GL_RGBA8_EXT 0x8058
#define | GL_RGB10_A2_EXT 0x8059
#define | GL_RGBA12_EXT 0x805A
#define | GL_RGBA16_EXT 0x805B
#define | GL_TEXTURE_RED_SIZE_EXT 0x805C
#define | GL_TEXTURE_GREEN_SIZE_EXT 0x805D
#define | GL_TEXTURE_BLUE_SIZE_EXT 0x805E
#define | GL_TEXTURE_ALPHA_SIZE_EXT 0x805F
#define | GL_TEXTURE_LUMINANCE_SIZE_EXT 0x8060
#define | GL_TEXTURE_INTENSITY_SIZE_EXT 0x8061
#define | GL_REPLACE_EXT 0x8062
#define | GL_PROXY_TEXTURE_1D_EXT 0x8063
#define | GL_PROXY_TEXTURE_2D_EXT 0x8064
#define | GL_TEXTURE_TOO_LARGE_EXT 0x8065
#define | GL_PACK_SKIP_IMAGES_EXT 0x806B
#define | GL_PACK_IMAGE_HEIGHT_EXT 0x806C
#define | GL_UNPACK_SKIP_IMAGES_EXT 0x806D
#define | GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E
#define | GL_TEXTURE_3D_EXT 0x806F
#define | GL_PROXY_TEXTURE_3D_EXT 0x8070
#define | GL_TEXTURE_DEPTH_EXT 0x8071
#define | GL_TEXTURE_WRAP_R_EXT 0x8072
#define | GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073
#define | GL_FILTER4_SGIS 0x8146
#define | GL_TEXTURE_FILTER4_SIZE_SGIS 0x8147
#define | GL_HISTOGRAM_EXT 0x8024
#define | GL_PROXY_HISTOGRAM_EXT 0x8025
#define | GL_HISTOGRAM_WIDTH_EXT 0x8026
#define | GL_HISTOGRAM_FORMAT_EXT 0x8027
#define | GL_HISTOGRAM_RED_SIZE_EXT 0x8028
#define | GL_HISTOGRAM_GREEN_SIZE_EXT 0x8029
#define | GL_HISTOGRAM_BLUE_SIZE_EXT 0x802A
#define | GL_HISTOGRAM_ALPHA_SIZE_EXT 0x802B
#define | GL_HISTOGRAM_LUMINANCE_SIZE_EXT 0x802C
#define | GL_HISTOGRAM_SINK_EXT 0x802D
#define | GL_MINMAX_EXT 0x802E
#define | GL_MINMAX_FORMAT_EXT 0x802F
#define | GL_MINMAX_SINK_EXT 0x8030
#define | GL_TABLE_TOO_LARGE_EXT 0x8031
#define | GL_CONVOLUTION_1D_EXT 0x8010
#define | GL_CONVOLUTION_2D_EXT 0x8011
#define | GL_SEPARABLE_2D_EXT 0x8012
#define | GL_CONVOLUTION_BORDER_MODE_EXT 0x8013
#define | GL_CONVOLUTION_FILTER_SCALE_EXT 0x8014
#define | GL_CONVOLUTION_FILTER_BIAS_EXT 0x8015
#define | GL_REDUCE_EXT 0x8016
#define | GL_CONVOLUTION_FORMAT_EXT 0x8017
#define | GL_CONVOLUTION_WIDTH_EXT 0x8018
#define | GL_CONVOLUTION_HEIGHT_EXT 0x8019
#define | GL_MAX_CONVOLUTION_WIDTH_EXT 0x801A
#define | GL_MAX_CONVOLUTION_HEIGHT_EXT 0x801B
#define | GL_POST_CONVOLUTION_RED_SCALE_EXT 0x801C
#define | GL_POST_CONVOLUTION_GREEN_SCALE_EXT 0x801D
#define | GL_POST_CONVOLUTION_BLUE_SCALE_EXT 0x801E
#define | GL_POST_CONVOLUTION_ALPHA_SCALE_EXT 0x801F
#define | GL_POST_CONVOLUTION_RED_BIAS_EXT 0x8020
#define | GL_POST_CONVOLUTION_GREEN_BIAS_EXT 0x8021
#define | GL_POST_CONVOLUTION_BLUE_BIAS_EXT 0x8022
#define | GL_POST_CONVOLUTION_ALPHA_BIAS_EXT 0x8023
#define | GL_COLOR_MATRIX_SGI 0x80B1
#define | GL_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B2
#define | GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B3
#define | GL_POST_COLOR_MATRIX_RED_SCALE_SGI 0x80B4
#define | GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI 0x80B5
#define | GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI 0x80B6
#define | GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI 0x80B7
#define | GL_POST_COLOR_MATRIX_RED_BIAS_SGI 0x80B8
#define | GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI 0x80B9
#define | GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI 0x80BA
#define | GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI 0x80BB
#define | GL_COLOR_TABLE_SGI 0x80D0
#define | GL_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D1
#define | GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D2
#define | GL_PROXY_COLOR_TABLE_SGI 0x80D3
#define | GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D4
#define | GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D5
#define | GL_COLOR_TABLE_SCALE_SGI 0x80D6
#define | GL_COLOR_TABLE_BIAS_SGI 0x80D7
#define | GL_COLOR_TABLE_FORMAT_SGI 0x80D8
#define | GL_COLOR_TABLE_WIDTH_SGI 0x80D9
#define | GL_COLOR_TABLE_RED_SIZE_SGI 0x80DA
#define | GL_COLOR_TABLE_GREEN_SIZE_SGI 0x80DB
#define | GL_COLOR_TABLE_BLUE_SIZE_SGI 0x80DC
#define | GL_COLOR_TABLE_ALPHA_SIZE_SGI 0x80DD
#define | GL_COLOR_TABLE_LUMINANCE_SIZE_SGI 0x80DE
#define | GL_COLOR_TABLE_INTENSITY_SIZE_SGI 0x80DF
#define | GL_PIXEL_TEXTURE_SGIS 0x8353
#define | GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS 0x8354
#define | GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS 0x8355
#define | GL_PIXEL_GROUP_COLOR_SGIS 0x8356
#define | GL_PIXEL_TEX_GEN_SGIX 0x8139
#define | GL_PIXEL_TEX_GEN_MODE_SGIX 0x832B
#define | GL_PACK_SKIP_VOLUMES_SGIS 0x8130
#define | GL_PACK_IMAGE_DEPTH_SGIS 0x8131
#define | GL_UNPACK_SKIP_VOLUMES_SGIS 0x8132
#define | GL_UNPACK_IMAGE_DEPTH_SGIS 0x8133
#define | GL_TEXTURE_4D_SGIS 0x8134
#define | GL_PROXY_TEXTURE_4D_SGIS 0x8135
#define | GL_TEXTURE_4DSIZE_SGIS 0x8136
#define | GL_TEXTURE_WRAP_Q_SGIS 0x8137
#define | GL_MAX_4D_TEXTURE_SIZE_SGIS 0x8138
#define | GL_TEXTURE_4D_BINDING_SGIS 0x814F
#define | GL_TEXTURE_COLOR_TABLE_SGI 0x80BC
#define | GL_PROXY_TEXTURE_COLOR_TABLE_SGI 0x80BD
#define | GL_CMYK_EXT 0x800C
#define | GL_CMYKA_EXT 0x800D
#define | GL_PACK_CMYK_HINT_EXT 0x800E
#define | GL_UNPACK_CMYK_HINT_EXT 0x800F
#define | GL_TEXTURE_PRIORITY_EXT 0x8066
#define | GL_TEXTURE_RESIDENT_EXT 0x8067
#define | GL_TEXTURE_1D_BINDING_EXT 0x8068
#define | GL_TEXTURE_2D_BINDING_EXT 0x8069
#define | GL_TEXTURE_3D_BINDING_EXT 0x806A
#define | GL_DETAIL_TEXTURE_2D_SGIS 0x8095
#define | GL_DETAIL_TEXTURE_2D_BINDING_SGIS 0x8096
#define | GL_LINEAR_DETAIL_SGIS 0x8097
#define | GL_LINEAR_DETAIL_ALPHA_SGIS 0x8098
#define | GL_LINEAR_DETAIL_COLOR_SGIS 0x8099
#define | GL_DETAIL_TEXTURE_LEVEL_SGIS 0x809A
#define | GL_DETAIL_TEXTURE_MODE_SGIS 0x809B
#define | GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS 0x809C
#define | GL_LINEAR_SHARPEN_SGIS 0x80AD
#define | GL_LINEAR_SHARPEN_ALPHA_SGIS 0x80AE
#define | GL_LINEAR_SHARPEN_COLOR_SGIS 0x80AF
#define | GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS 0x80B0
#define | GL_UNSIGNED_BYTE_3_3_2_EXT 0x8032
#define | GL_UNSIGNED_SHORT_4_4_4_4_EXT 0x8033
#define | GL_UNSIGNED_SHORT_5_5_5_1_EXT 0x8034
#define | GL_UNSIGNED_INT_8_8_8_8_EXT 0x8035
#define | GL_UNSIGNED_INT_10_10_10_2_EXT 0x8036
#define | GL_TEXTURE_MIN_LOD_SGIS 0x813A
#define | GL_TEXTURE_MAX_LOD_SGIS 0x813B
#define | GL_TEXTURE_BASE_LEVEL_SGIS 0x813C
#define | GL_TEXTURE_MAX_LEVEL_SGIS 0x813D
#define | GL_MULTISAMPLE_SGIS 0x809D
#define | GL_SAMPLE_ALPHA_TO_MASK_SGIS 0x809E
#define | GL_SAMPLE_ALPHA_TO_ONE_SGIS 0x809F
#define | GL_SAMPLE_MASK_SGIS 0x80A0
#define | GL_1PASS_SGIS 0x80A1
#define | GL_2PASS_0_SGIS 0x80A2
#define | GL_2PASS_1_SGIS 0x80A3
#define | GL_4PASS_0_SGIS 0x80A4
#define | GL_4PASS_1_SGIS 0x80A5
#define | GL_4PASS_2_SGIS 0x80A6
#define | GL_4PASS_3_SGIS 0x80A7
#define | GL_SAMPLE_BUFFERS_SGIS 0x80A8
#define | GL_SAMPLES_SGIS 0x80A9
#define | GL_SAMPLE_MASK_VALUE_SGIS 0x80AA
#define | GL_SAMPLE_MASK_INVERT_SGIS 0x80AB
#define | GL_SAMPLE_PATTERN_SGIS 0x80AC
#define | GL_RESCALE_NORMAL_EXT 0x803A
#define | GL_VERTEX_ARRAY_EXT 0x8074
#define | GL_NORMAL_ARRAY_EXT 0x8075
#define | GL_COLOR_ARRAY_EXT 0x8076
#define | GL_INDEX_ARRAY_EXT 0x8077
#define | GL_TEXTURE_COORD_ARRAY_EXT 0x8078
#define | GL_EDGE_FLAG_ARRAY_EXT 0x8079
#define | GL_VERTEX_ARRAY_SIZE_EXT 0x807A
#define | GL_VERTEX_ARRAY_TYPE_EXT 0x807B
#define | GL_VERTEX_ARRAY_STRIDE_EXT 0x807C
#define | GL_VERTEX_ARRAY_COUNT_EXT 0x807D
#define | GL_NORMAL_ARRAY_TYPE_EXT 0x807E
#define | GL_NORMAL_ARRAY_STRIDE_EXT 0x807F
#define | GL_NORMAL_ARRAY_COUNT_EXT 0x8080
#define | GL_COLOR_ARRAY_SIZE_EXT 0x8081
#define | GL_COLOR_ARRAY_TYPE_EXT 0x8082
#define | GL_COLOR_ARRAY_STRIDE_EXT 0x8083
#define | GL_COLOR_ARRAY_COUNT_EXT 0x8084
#define | GL_INDEX_ARRAY_TYPE_EXT 0x8085
#define | GL_INDEX_ARRAY_STRIDE_EXT 0x8086
#define | GL_INDEX_ARRAY_COUNT_EXT 0x8087
#define | GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088
#define | GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089
#define | GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A
#define | GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B
#define | GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C
#define | GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D
#define | GL_VERTEX_ARRAY_POINTER_EXT 0x808E
#define | GL_NORMAL_ARRAY_POINTER_EXT 0x808F
#define | GL_COLOR_ARRAY_POINTER_EXT 0x8090
#define | GL_INDEX_ARRAY_POINTER_EXT 0x8091
#define | GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092
#define | GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093
#define | GL_GENERATE_MIPMAP_SGIS 0x8191
#define | GL_GENERATE_MIPMAP_HINT_SGIS 0x8192
#define | GL_LINEAR_CLIPMAP_LINEAR_SGIX 0x8170
#define | GL_TEXTURE_CLIPMAP_CENTER_SGIX 0x8171
#define | GL_TEXTURE_CLIPMAP_FRAME_SGIX 0x8172
#define | GL_TEXTURE_CLIPMAP_OFFSET_SGIX 0x8173
#define | GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX 0x8174
#define | GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX 0x8175
#define | GL_TEXTURE_CLIPMAP_DEPTH_SGIX 0x8176
#define | GL_MAX_CLIPMAP_DEPTH_SGIX 0x8177
#define | GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX 0x8178
#define | GL_NEAREST_CLIPMAP_NEAREST_SGIX 0x844D
#define | GL_NEAREST_CLIPMAP_LINEAR_SGIX 0x844E
#define | GL_LINEAR_CLIPMAP_NEAREST_SGIX 0x844F
#define | GL_TEXTURE_COMPARE_SGIX 0x819A
#define | GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B
#define | GL_TEXTURE_LEQUAL_R_SGIX 0x819C
#define | GL_TEXTURE_GEQUAL_R_SGIX 0x819D
#define | GL_CLAMP_TO_EDGE_SGIS 0x812F
#define | GL_FUNC_ADD_EXT 0x8006
#define | GL_MIN_EXT 0x8007
#define | GL_MAX_EXT 0x8008
#define | GL_BLEND_EQUATION_EXT 0x8009
#define | GL_FUNC_SUBTRACT_EXT 0x800A
#define | GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B
#define | GL_INTERLACE_SGIX 0x8094
#define | GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX 0x813E
#define | GL_PIXEL_TILE_CACHE_INCREMENT_SGIX 0x813F
#define | GL_PIXEL_TILE_WIDTH_SGIX 0x8140
#define | GL_PIXEL_TILE_HEIGHT_SGIX 0x8141
#define | GL_PIXEL_TILE_GRID_WIDTH_SGIX 0x8142
#define | GL_PIXEL_TILE_GRID_HEIGHT_SGIX 0x8143
#define | GL_PIXEL_TILE_GRID_DEPTH_SGIX 0x8144
#define | GL_PIXEL_TILE_CACHE_SIZE_SGIX 0x8145
#define | GL_DUAL_ALPHA4_SGIS 0x8110
#define | GL_DUAL_ALPHA8_SGIS 0x8111
#define | GL_DUAL_ALPHA12_SGIS 0x8112
#define | GL_DUAL_ALPHA16_SGIS 0x8113
#define | GL_DUAL_LUMINANCE4_SGIS 0x8114
#define | GL_DUAL_LUMINANCE8_SGIS 0x8115
#define | GL_DUAL_LUMINANCE12_SGIS 0x8116
#define | GL_DUAL_LUMINANCE16_SGIS 0x8117
#define | GL_DUAL_INTENSITY4_SGIS 0x8118
#define | GL_DUAL_INTENSITY8_SGIS 0x8119
#define | GL_DUAL_INTENSITY12_SGIS 0x811A
#define | GL_DUAL_INTENSITY16_SGIS 0x811B
#define | GL_DUAL_LUMINANCE_ALPHA4_SGIS 0x811C
#define | GL_DUAL_LUMINANCE_ALPHA8_SGIS 0x811D
#define | GL_QUAD_ALPHA4_SGIS 0x811E
#define | GL_QUAD_ALPHA8_SGIS 0x811F
#define | GL_QUAD_LUMINANCE4_SGIS 0x8120
#define | GL_QUAD_LUMINANCE8_SGIS 0x8121
#define | GL_QUAD_INTENSITY4_SGIS 0x8122
#define | GL_QUAD_INTENSITY8_SGIS 0x8123
#define | GL_DUAL_TEXTURE_SELECT_SGIS 0x8124
#define | GL_QUAD_TEXTURE_SELECT_SGIS 0x8125
#define | GL_SPRITE_SGIX 0x8148
#define | GL_SPRITE_MODE_SGIX 0x8149
#define | GL_SPRITE_AXIS_SGIX 0x814A
#define | GL_SPRITE_TRANSLATION_SGIX 0x814B
#define | GL_SPRITE_AXIAL_SGIX 0x814C
#define | GL_SPRITE_OBJECT_ALIGNED_SGIX 0x814D
#define | GL_SPRITE_EYE_ALIGNED_SGIX 0x814E
#define | GL_TEXTURE_MULTI_BUFFER_HINT_SGIX 0x812E
#define | GL_POINT_SIZE_MIN_EXT 0x8126
#define | GL_POINT_SIZE_MAX_EXT 0x8127
#define | GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128
#define | GL_DISTANCE_ATTENUATION_EXT 0x8129
#define | GL_POINT_SIZE_MIN_SGIS 0x8126
#define | GL_POINT_SIZE_MAX_SGIS 0x8127
#define | GL_POINT_FADE_THRESHOLD_SIZE_SGIS 0x8128
#define | GL_DISTANCE_ATTENUATION_SGIS 0x8129
#define | GL_INSTRUMENT_BUFFER_POINTER_SGIX 0x8180
#define | GL_INSTRUMENT_MEASUREMENTS_SGIX 0x8181
#define | GL_POST_TEXTURE_FILTER_BIAS_SGIX 0x8179
#define | GL_POST_TEXTURE_FILTER_SCALE_SGIX 0x817A
#define | GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX 0x817B
#define | GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX 0x817C
#define | GL_FRAMEZOOM_SGIX 0x818B
#define | GL_FRAMEZOOM_FACTOR_SGIX 0x818C
#define | GL_MAX_FRAMEZOOM_FACTOR_SGIX 0x818D
#define | GL_TEXTURE_DEFORMATION_BIT_SGIX 0x00000001
#define | GL_GEOMETRY_DEFORMATION_BIT_SGIX 0x00000002
#define | GL_GEOMETRY_DEFORMATION_SGIX 0x8194
#define | GL_TEXTURE_DEFORMATION_SGIX 0x8195
#define | GL_DEFORMATIONS_MASK_SGIX 0x8196
#define | GL_MAX_DEFORMATION_ORDER_SGIX 0x8197
#define | GL_REFERENCE_PLANE_SGIX 0x817D
#define | GL_REFERENCE_PLANE_EQUATION_SGIX 0x817E
#define | GL_DEPTH_COMPONENT16_SGIX 0x81A5
#define | GL_DEPTH_COMPONENT24_SGIX 0x81A6
#define | GL_DEPTH_COMPONENT32_SGIX 0x81A7
#define | GL_FOG_FUNC_SGIS 0x812A
#define | GL_FOG_FUNC_POINTS_SGIS 0x812B
#define | GL_MAX_FOG_FUNC_POINTS_SGIS 0x812C
#define | GL_FOG_OFFSET_SGIX 0x8198
#define | GL_FOG_OFFSET_VALUE_SGIX 0x8199
#define | GL_IMAGE_SCALE_X_HP 0x8155
#define | GL_IMAGE_SCALE_Y_HP 0x8156
#define | GL_IMAGE_TRANSLATE_X_HP 0x8157
#define | GL_IMAGE_TRANSLATE_Y_HP 0x8158
#define | GL_IMAGE_ROTATE_ANGLE_HP 0x8159
#define | GL_IMAGE_ROTATE_ORIGIN_X_HP 0x815A
#define | GL_IMAGE_ROTATE_ORIGIN_Y_HP 0x815B
#define | GL_IMAGE_MAG_FILTER_HP 0x815C
#define | GL_IMAGE_MIN_FILTER_HP 0x815D
#define | GL_IMAGE_CUBIC_WEIGHT_HP 0x815E
#define | GL_CUBIC_HP 0x815F
#define | GL_AVERAGE_HP 0x8160
#define | GL_IMAGE_TRANSFORM_2D_HP 0x8161
#define | GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP 0x8162
#define | GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP 0x8163
#define | GL_IGNORE_BORDER_HP 0x8150
#define | GL_CONSTANT_BORDER_HP 0x8151
#define | GL_REPLICATE_BORDER_HP 0x8153
#define | GL_CONVOLUTION_BORDER_COLOR_HP 0x8154
#define | GL_TEXTURE_ENV_BIAS_SGIX 0x80BE
#define | GL_VERTEX_DATA_HINT_PGI 0x1A22A
#define | GL_VERTEX_CONSISTENT_HINT_PGI 0x1A22B
#define | GL_MATERIAL_SIDE_HINT_PGI 0x1A22C
#define | GL_MAX_VERTEX_HINT_PGI 0x1A22D
#define | GL_COLOR3_BIT_PGI 0x00010000
#define | GL_COLOR4_BIT_PGI 0x00020000
#define | GL_EDGEFLAG_BIT_PGI 0x00040000
#define | GL_INDEX_BIT_PGI 0x00080000
#define | GL_MAT_AMBIENT_BIT_PGI 0x00100000
#define | GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI 0x00200000
#define | GL_MAT_DIFFUSE_BIT_PGI 0x00400000
#define | GL_MAT_EMISSION_BIT_PGI 0x00800000
#define | GL_MAT_COLOR_INDEXES_BIT_PGI 0x01000000
#define | GL_MAT_SHININESS_BIT_PGI 0x02000000
#define | GL_MAT_SPECULAR_BIT_PGI 0x04000000
#define | GL_NORMAL_BIT_PGI 0x08000000
#define | GL_TEXCOORD1_BIT_PGI 0x10000000
#define | GL_TEXCOORD2_BIT_PGI 0x20000000
#define | GL_TEXCOORD3_BIT_PGI 0x40000000
#define | GL_TEXCOORD4_BIT_PGI 0x80000000
#define | GL_VERTEX23_BIT_PGI 0x00000004
#define | GL_VERTEX4_BIT_PGI 0x00000008
#define | GL_PREFER_DOUBLEBUFFER_HINT_PGI 0x1A1F8
#define | GL_CONSERVE_MEMORY_HINT_PGI 0x1A1FD
#define | GL_RECLAIM_MEMORY_HINT_PGI 0x1A1FE
#define | GL_NATIVE_GRAPHICS_HANDLE_PGI 0x1A202
#define | GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI 0x1A203
#define | GL_NATIVE_GRAPHICS_END_HINT_PGI 0x1A204
#define | GL_ALWAYS_FAST_HINT_PGI 0x1A20C
#define | GL_ALWAYS_SOFT_HINT_PGI 0x1A20D
#define | GL_ALLOW_DRAW_OBJ_HINT_PGI 0x1A20E
#define | GL_ALLOW_DRAW_WIN_HINT_PGI 0x1A20F
#define | GL_ALLOW_DRAW_FRG_HINT_PGI 0x1A210
#define | GL_ALLOW_DRAW_MEM_HINT_PGI 0x1A211
#define | GL_STRICT_DEPTHFUNC_HINT_PGI 0x1A216
#define | GL_STRICT_LIGHTING_HINT_PGI 0x1A217
#define | GL_STRICT_SCISSOR_HINT_PGI 0x1A218
#define | GL_FULL_STIPPLE_HINT_PGI 0x1A219
#define | GL_CLIP_NEAR_HINT_PGI 0x1A220
#define | GL_CLIP_FAR_HINT_PGI 0x1A221
#define | GL_WIDE_LINE_HINT_PGI 0x1A222
#define | GL_BACK_NORMALS_HINT_PGI 0x1A223
#define | GL_COLOR_INDEX1_EXT 0x80E2
#define | GL_COLOR_INDEX2_EXT 0x80E3
#define | GL_COLOR_INDEX4_EXT 0x80E4
#define | GL_COLOR_INDEX8_EXT 0x80E5
#define | GL_COLOR_INDEX12_EXT 0x80E6
#define | GL_COLOR_INDEX16_EXT 0x80E7
#define | GL_TEXTURE_INDEX_SIZE_EXT 0x80ED
#define | GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0
#define | GL_LIST_PRIORITY_SGIX 0x8182
#define | GL_IR_INSTRUMENT1_SGIX 0x817F
#define | GL_CALLIGRAPHIC_FRAGMENT_SGIX 0x8183
#define | GL_TEXTURE_LOD_BIAS_S_SGIX 0x818E
#define | GL_TEXTURE_LOD_BIAS_T_SGIX 0x818F
#define | GL_TEXTURE_LOD_BIAS_R_SGIX 0x8190
#define | GL_SHADOW_AMBIENT_SGIX 0x80BF
#define | GL_INDEX_MATERIAL_EXT 0x81B8
#define | GL_INDEX_MATERIAL_PARAMETER_EXT 0x81B9
#define | GL_INDEX_MATERIAL_FACE_EXT 0x81BA
#define | GL_INDEX_TEST_EXT 0x81B5
#define | GL_INDEX_TEST_FUNC_EXT 0x81B6
#define | GL_INDEX_TEST_REF_EXT 0x81B7
#define | GL_IUI_V2F_EXT 0x81AD
#define | GL_IUI_V3F_EXT 0x81AE
#define | GL_IUI_N3F_V2F_EXT 0x81AF
#define | GL_IUI_N3F_V3F_EXT 0x81B0
#define | GL_T2F_IUI_V2F_EXT 0x81B1
#define | GL_T2F_IUI_V3F_EXT 0x81B2
#define | GL_T2F_IUI_N3F_V2F_EXT 0x81B3
#define | GL_T2F_IUI_N3F_V3F_EXT 0x81B4
#define | GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8
#define | GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9
#define | GL_CULL_VERTEX_EXT 0x81AA
#define | GL_CULL_VERTEX_EYE_POSITION_EXT 0x81AB
#define | GL_CULL_VERTEX_OBJECT_POSITION_EXT 0x81AC
#define | GL_YCRCB_422_SGIX 0x81BB
#define | GL_YCRCB_444_SGIX 0x81BC
#define | GL_FRAGMENT_LIGHTING_SGIX 0x8400
#define | GL_FRAGMENT_COLOR_MATERIAL_SGIX 0x8401
#define | GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX 0x8402
#define | GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX 0x8403
#define | GL_MAX_FRAGMENT_LIGHTS_SGIX 0x8404
#define | GL_MAX_ACTIVE_LIGHTS_SGIX 0x8405
#define | GL_CURRENT_RASTER_NORMAL_SGIX 0x8406
#define | GL_LIGHT_ENV_MODE_SGIX 0x8407
#define | GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX 0x8408
#define | GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX 0x8409
#define | GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX 0x840A
#define | GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX 0x840B
#define | GL_FRAGMENT_LIGHT0_SGIX 0x840C
#define | GL_FRAGMENT_LIGHT1_SGIX 0x840D
#define | GL_FRAGMENT_LIGHT2_SGIX 0x840E
#define | GL_FRAGMENT_LIGHT3_SGIX 0x840F
#define | GL_FRAGMENT_LIGHT4_SGIX 0x8410
#define | GL_FRAGMENT_LIGHT5_SGIX 0x8411
#define | GL_FRAGMENT_LIGHT6_SGIX 0x8412
#define | GL_FRAGMENT_LIGHT7_SGIX 0x8413
#define | GL_RASTER_POSITION_UNCLIPPED_IBM 0x19262
#define | GL_TEXTURE_LIGHTING_MODE_HP 0x8167
#define | GL_TEXTURE_POST_SPECULAR_HP 0x8168
#define | GL_TEXTURE_PRE_SPECULAR_HP 0x8169
#define | GL_MAX_ELEMENTS_VERTICES_EXT 0x80E8
#define | GL_MAX_ELEMENTS_INDICES_EXT 0x80E9
#define | GL_PHONG_WIN 0x80EA
#define | GL_PHONG_HINT_WIN 0x80EB
#define | GL_FOG_SPECULAR_TEXTURE_WIN 0x80EC
#define | GL_FRAGMENT_MATERIAL_EXT 0x8349
#define | GL_FRAGMENT_NORMAL_EXT 0x834A
#define | GL_FRAGMENT_COLOR_EXT 0x834C
#define | GL_ATTENUATION_EXT 0x834D
#define | GL_SHADOW_ATTENUATION_EXT 0x834E
#define | GL_TEXTURE_APPLICATION_MODE_EXT 0x834F
#define | GL_TEXTURE_LIGHT_EXT 0x8350
#define | GL_TEXTURE_MATERIAL_FACE_EXT 0x8351
#define | GL_TEXTURE_MATERIAL_PARAMETER_EXT 0x8352
#define | GL_ALPHA_MIN_SGIX 0x8320
#define | GL_ALPHA_MAX_SGIX 0x8321
#define | GL_PIXEL_TEX_GEN_Q_CEILING_SGIX 0x8184
#define | GL_PIXEL_TEX_GEN_Q_ROUND_SGIX 0x8185
#define | GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX 0x8186
#define | GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX 0x8187
#define | GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX 0x8188
#define | GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX 0x8189
#define | GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX 0x818A
#define | GL_BGR_EXT 0x80E0
#define | GL_BGRA_EXT 0x80E1
#define | GL_ASYNC_MARKER_SGIX 0x8329
#define | GL_ASYNC_TEX_IMAGE_SGIX 0x835C
#define | GL_ASYNC_DRAW_PIXELS_SGIX 0x835D
#define | GL_ASYNC_READ_PIXELS_SGIX 0x835E
#define | GL_MAX_ASYNC_TEX_IMAGE_SGIX 0x835F
#define | GL_MAX_ASYNC_DRAW_PIXELS_SGIX 0x8360
#define | GL_MAX_ASYNC_READ_PIXELS_SGIX 0x8361
#define | GL_ASYNC_HISTOGRAM_SGIX 0x832C
#define | GL_MAX_ASYNC_HISTOGRAM_SGIX 0x832D
#define | GL_PARALLEL_ARRAYS_INTEL 0x83F4
#define | GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL 0x83F5
#define | GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL 0x83F6
#define | GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL 0x83F7
#define | GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL 0x83F8
#define | GL_OCCLUSION_TEST_HP 0x8165
#define | GL_OCCLUSION_TEST_RESULT_HP 0x8166
#define | GL_PIXEL_TRANSFORM_2D_EXT 0x8330
#define | GL_PIXEL_MAG_FILTER_EXT 0x8331
#define | GL_PIXEL_MIN_FILTER_EXT 0x8332
#define | GL_PIXEL_CUBIC_WEIGHT_EXT 0x8333
#define | GL_CUBIC_EXT 0x8334
#define | GL_AVERAGE_EXT 0x8335
#define | GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8336
#define | GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8337
#define | GL_PIXEL_TRANSFORM_2D_MATRIX_EXT 0x8338
#define | GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB
#define | GL_LIGHT_MODEL_COLOR_CONTROL_EXT 0x81F8
#define | GL_SINGLE_COLOR_EXT 0x81F9
#define | GL_SEPARATE_SPECULAR_COLOR_EXT 0x81FA
#define | GL_COLOR_SUM_EXT 0x8458
#define | GL_CURRENT_SECONDARY_COLOR_EXT 0x8459
#define | GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A
#define | GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B
#define | GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C
#define | GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D
#define | GL_SECONDARY_COLOR_ARRAY_EXT 0x845E
#define | GL_PERTURB_EXT 0x85AE
#define | GL_TEXTURE_NORMAL_EXT 0x85AF
#define | GL_FOG_COORDINATE_SOURCE_EXT 0x8450
#define | GL_FOG_COORDINATE_EXT 0x8451
#define | GL_FRAGMENT_DEPTH_EXT 0x8452
#define | GL_CURRENT_FOG_COORDINATE_EXT 0x8453
#define | GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454
#define | GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455
#define | GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456
#define | GL_FOG_COORDINATE_ARRAY_EXT 0x8457
#define | GL_SCREEN_COORDINATES_REND 0x8490
#define | GL_INVERTED_SCREEN_W_REND 0x8491
#define | GL_TANGENT_ARRAY_EXT 0x8439
#define | GL_BINORMAL_ARRAY_EXT 0x843A
#define | GL_CURRENT_TANGENT_EXT 0x843B
#define | GL_CURRENT_BINORMAL_EXT 0x843C
#define | GL_TANGENT_ARRAY_TYPE_EXT 0x843E
#define | GL_TANGENT_ARRAY_STRIDE_EXT 0x843F
#define | GL_BINORMAL_ARRAY_TYPE_EXT 0x8440
#define | GL_BINORMAL_ARRAY_STRIDE_EXT 0x8441
#define | GL_TANGENT_ARRAY_POINTER_EXT 0x8442
#define | GL_BINORMAL_ARRAY_POINTER_EXT 0x8443
#define | GL_MAP1_TANGENT_EXT 0x8444
#define | GL_MAP2_TANGENT_EXT 0x8445
#define | GL_MAP1_BINORMAL_EXT 0x8446
#define | GL_MAP2_BINORMAL_EXT 0x8447
#define | GL_COMBINE_EXT 0x8570
#define | GL_COMBINE_RGB_EXT 0x8571
#define | GL_COMBINE_ALPHA_EXT 0x8572
#define | GL_RGB_SCALE_EXT 0x8573
#define | GL_ADD_SIGNED_EXT 0x8574
#define | GL_INTERPOLATE_EXT 0x8575
#define | GL_CONSTANT_EXT 0x8576
#define | GL_PRIMARY_COLOR_EXT 0x8577
#define | GL_PREVIOUS_EXT 0x8578
#define | GL_SOURCE0_RGB_EXT 0x8580
#define | GL_SOURCE1_RGB_EXT 0x8581
#define | GL_SOURCE2_RGB_EXT 0x8582
#define | GL_SOURCE0_ALPHA_EXT 0x8588
#define | GL_SOURCE1_ALPHA_EXT 0x8589
#define | GL_SOURCE2_ALPHA_EXT 0x858A
#define | GL_OPERAND0_RGB_EXT 0x8590
#define | GL_OPERAND1_RGB_EXT 0x8591
#define | GL_OPERAND2_RGB_EXT 0x8592
#define | GL_OPERAND0_ALPHA_EXT 0x8598
#define | GL_OPERAND1_ALPHA_EXT 0x8599
#define | GL_OPERAND2_ALPHA_EXT 0x859A
#define | GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE 0x85B0
#define | GL_TRANSFORM_HINT_APPLE 0x85B1
#define | GL_FOG_SCALE_SGIX 0x81FC
#define | GL_FOG_SCALE_VALUE_SGIX 0x81FD
#define | GL_UNPACK_CONSTANT_DATA_SUNX 0x81D5
#define | GL_TEXTURE_CONSTANT_DATA_SUNX 0x81D6
#define | GL_GLOBAL_ALPHA_SUN 0x81D9
#define | GL_GLOBAL_ALPHA_FACTOR_SUN 0x81DA
#define | GL_RESTART_SUN 0x0001
#define | GL_REPLACE_MIDDLE_SUN 0x0002
#define | GL_REPLACE_OLDEST_SUN 0x0003
#define | GL_TRIANGLE_LIST_SUN 0x81D7
#define | GL_REPLACEMENT_CODE_SUN 0x81D8
#define | GL_REPLACEMENT_CODE_ARRAY_SUN 0x85C0
#define | GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN 0x85C1
#define | GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN 0x85C2
#define | GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN 0x85C3
#define | GL_R1UI_V3F_SUN 0x85C4
#define | GL_R1UI_C4UB_V3F_SUN 0x85C5
#define | GL_R1UI_C3F_V3F_SUN 0x85C6
#define | GL_R1UI_N3F_V3F_SUN 0x85C7
#define | GL_R1UI_C4F_N3F_V3F_SUN 0x85C8
#define | GL_R1UI_T2F_V3F_SUN 0x85C9
#define | GL_R1UI_T2F_N3F_V3F_SUN 0x85CA
#define | GL_R1UI_T2F_C4F_N3F_V3F_SUN 0x85CB
#define | GL_BLEND_DST_RGB_EXT 0x80C8
#define | GL_BLEND_SRC_RGB_EXT 0x80C9
#define | GL_BLEND_DST_ALPHA_EXT 0x80CA
#define | GL_BLEND_SRC_ALPHA_EXT 0x80CB
#define | GL_RED_MIN_CLAMP_INGR 0x8560
#define | GL_GREEN_MIN_CLAMP_INGR 0x8561
#define | GL_BLUE_MIN_CLAMP_INGR 0x8562
#define | GL_ALPHA_MIN_CLAMP_INGR 0x8563
#define | GL_RED_MAX_CLAMP_INGR 0x8564
#define | GL_GREEN_MAX_CLAMP_INGR 0x8565
#define | GL_BLUE_MAX_CLAMP_INGR 0x8566
#define | GL_ALPHA_MAX_CLAMP_INGR 0x8567
#define | GL_INTERLACE_READ_INGR 0x8568
#define | GL_INCR_WRAP_EXT 0x8507
#define | GL_DECR_WRAP_EXT 0x8508
#define | GL_422_EXT 0x80CC
#define | GL_422_REV_EXT 0x80CD
#define | GL_422_AVERAGE_EXT 0x80CE
#define | GL_422_REV_AVERAGE_EXT 0x80CF
#define | GL_NORMAL_MAP_NV 0x8511
#define | GL_REFLECTION_MAP_NV 0x8512
#define | GL_NORMAL_MAP_EXT 0x8511
#define | GL_REFLECTION_MAP_EXT 0x8512
#define | GL_TEXTURE_CUBE_MAP_EXT 0x8513
#define | GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518
#define | GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519
#define | GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A
#define | GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B
#define | GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C
#define | GL_WRAP_BORDER_SUN 0x81D4
#define | GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD
#define | GL_TEXTURE_FILTER_CONTROL_EXT 0x8500
#define | GL_TEXTURE_LOD_BIAS_EXT 0x8501
#define | GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
#define | GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
#define | GL_MODELVIEW0_STACK_DEPTH_EXT GL_MODELVIEW_STACK_DEPTH
#define | GL_MODELVIEW1_STACK_DEPTH_EXT 0x8502
#define | GL_MODELVIEW0_MATRIX_EXT GL_MODELVIEW_MATRIX
#define | GL_MODELVIEW1_MATRIX_EXT 0x8506
#define | GL_VERTEX_WEIGHTING_EXT 0x8509
#define | GL_MODELVIEW0_EXT GL_MODELVIEW
#define | GL_MODELVIEW1_EXT 0x850A
#define | GL_CURRENT_VERTEX_WEIGHT_EXT 0x850B
#define | GL_VERTEX_WEIGHT_ARRAY_EXT 0x850C
#define | GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT 0x850D
#define | GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT 0x850E
#define | GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F
#define | GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510
#define | GL_MAX_SHININESS_NV 0x8504
#define | GL_MAX_SPOT_EXPONENT_NV 0x8505
#define | GL_VERTEX_ARRAY_RANGE_NV 0x851D
#define | GL_VERTEX_ARRAY_RANGE_LENGTH_NV 0x851E
#define | GL_VERTEX_ARRAY_RANGE_VALID_NV 0x851F
#define | GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520
#define | GL_VERTEX_ARRAY_RANGE_POINTER_NV 0x8521
#define | GL_REGISTER_COMBINERS_NV 0x8522
#define | GL_VARIABLE_A_NV 0x8523
#define | GL_VARIABLE_B_NV 0x8524
#define | GL_VARIABLE_C_NV 0x8525
#define | GL_VARIABLE_D_NV 0x8526
#define | GL_VARIABLE_E_NV 0x8527
#define | GL_VARIABLE_F_NV 0x8528
#define | GL_VARIABLE_G_NV 0x8529
#define | GL_CONSTANT_COLOR0_NV 0x852A
#define | GL_CONSTANT_COLOR1_NV 0x852B
#define | GL_PRIMARY_COLOR_NV 0x852C
#define | GL_SECONDARY_COLOR_NV 0x852D
#define | GL_SPARE0_NV 0x852E
#define | GL_SPARE1_NV 0x852F
#define | GL_DISCARD_NV 0x8530
#define | GL_E_TIMES_F_NV 0x8531
#define | GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532
#define | GL_UNSIGNED_IDENTITY_NV 0x8536
#define | GL_UNSIGNED_INVERT_NV 0x8537
#define | GL_EXPAND_NORMAL_NV 0x8538
#define | GL_EXPAND_NEGATE_NV 0x8539
#define | GL_HALF_BIAS_NORMAL_NV 0x853A
#define | GL_HALF_BIAS_NEGATE_NV 0x853B
#define | GL_SIGNED_IDENTITY_NV 0x853C
#define | GL_SIGNED_NEGATE_NV 0x853D
#define | GL_SCALE_BY_TWO_NV 0x853E
#define | GL_SCALE_BY_FOUR_NV 0x853F
#define | GL_SCALE_BY_ONE_HALF_NV 0x8540
#define | GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541
#define | GL_COMBINER_INPUT_NV 0x8542
#define | GL_COMBINER_MAPPING_NV 0x8543
#define | GL_COMBINER_COMPONENT_USAGE_NV 0x8544
#define | GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545
#define | GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546
#define | GL_COMBINER_MUX_SUM_NV 0x8547
#define | GL_COMBINER_SCALE_NV 0x8548
#define | GL_COMBINER_BIAS_NV 0x8549
#define | GL_COMBINER_AB_OUTPUT_NV 0x854A
#define | GL_COMBINER_CD_OUTPUT_NV 0x854B
#define | GL_COMBINER_SUM_OUTPUT_NV 0x854C
#define | GL_MAX_GENERAL_COMBINERS_NV 0x854D
#define | GL_NUM_GENERAL_COMBINERS_NV 0x854E
#define | GL_COLOR_SUM_CLAMP_NV 0x854F
#define | GL_COMBINER0_NV 0x8550
#define | GL_COMBINER1_NV 0x8551
#define | GL_COMBINER2_NV 0x8552
#define | GL_COMBINER3_NV 0x8553
#define | GL_COMBINER4_NV 0x8554
#define | GL_COMBINER5_NV 0x8555
#define | GL_COMBINER6_NV 0x8556
#define | GL_COMBINER7_NV 0x8557
#define | GL_FOG_DISTANCE_MODE_NV 0x855A
#define | GL_EYE_RADIAL_NV 0x855B
#define | GL_EYE_PLANE_ABSOLUTE_NV 0x855C
#define | GL_EMBOSS_LIGHT_NV 0x855D
#define | GL_EMBOSS_CONSTANT_NV 0x855E
#define | GL_EMBOSS_MAP_NV 0x855F
#define | GL_COMBINE4_NV 0x8503
#define | GL_SOURCE3_RGB_NV 0x8583
#define | GL_SOURCE3_ALPHA_NV 0x858B
#define | GL_OPERAND3_RGB_NV 0x8593
#define | GL_OPERAND3_ALPHA_NV 0x859B
#define | GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
#define | GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
#define | GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
#define | GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
#define | GL_CULL_VERTEX_IBM 103050
#define | GL_VERTEX_ARRAY_LIST_IBM 103070
#define | GL_NORMAL_ARRAY_LIST_IBM 103071
#define | GL_COLOR_ARRAY_LIST_IBM 103072
#define | GL_INDEX_ARRAY_LIST_IBM 103073
#define | GL_TEXTURE_COORD_ARRAY_LIST_IBM 103074
#define | GL_EDGE_FLAG_ARRAY_LIST_IBM 103075
#define | GL_FOG_COORDINATE_ARRAY_LIST_IBM 103076
#define | GL_SECONDARY_COLOR_ARRAY_LIST_IBM 103077
#define | GL_VERTEX_ARRAY_LIST_STRIDE_IBM 103080
#define | GL_NORMAL_ARRAY_LIST_STRIDE_IBM 103081
#define | GL_COLOR_ARRAY_LIST_STRIDE_IBM 103082
#define | GL_INDEX_ARRAY_LIST_STRIDE_IBM 103083
#define | GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM 103084
#define | GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM 103085
#define | GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM 103086
#define | GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM 103087
#define | GL_PACK_SUBSAMPLE_RATE_SGIX 0x85A0
#define | GL_UNPACK_SUBSAMPLE_RATE_SGIX 0x85A1
#define | GL_PIXEL_SUBSAMPLE_4444_SGIX 0x85A2
#define | GL_PIXEL_SUBSAMPLE_2424_SGIX 0x85A3
#define | GL_PIXEL_SUBSAMPLE_4242_SGIX 0x85A4
#define | GL_YCRCB_SGIX 0x8318
#define | GL_YCRCBA_SGIX 0x8319
#define | GL_DEPTH_PASS_INSTRUMENT_SGIX 0x8310
#define | GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX 0x8311
#define | GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX 0x8312
#define | GL_COMPRESSED_RGB_FXT1_3DFX 0x86B0
#define | GL_COMPRESSED_RGBA_FXT1_3DFX 0x86B1
#define | GL_MULTISAMPLE_3DFX 0x86B2
#define | GL_SAMPLE_BUFFERS_3DFX 0x86B3
#define | GL_SAMPLES_3DFX 0x86B4
#define | GL_MULTISAMPLE_BIT_3DFX 0x20000000
#define | GL_MULTISAMPLE_EXT 0x809D
#define | GL_SAMPLE_ALPHA_TO_MASK_EXT 0x809E
#define | GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F
#define | GL_SAMPLE_MASK_EXT 0x80A0
#define | GL_1PASS_EXT 0x80A1
#define | GL_2PASS_0_EXT 0x80A2
#define | GL_2PASS_1_EXT 0x80A3
#define | GL_4PASS_0_EXT 0x80A4
#define | GL_4PASS_1_EXT 0x80A5
#define | GL_4PASS_2_EXT 0x80A6
#define | GL_4PASS_3_EXT 0x80A7
#define | GL_SAMPLE_BUFFERS_EXT 0x80A8
#define | GL_SAMPLES_EXT 0x80A9
#define | GL_SAMPLE_MASK_VALUE_EXT 0x80AA
#define | GL_SAMPLE_MASK_INVERT_EXT 0x80AB
#define | GL_SAMPLE_PATTERN_EXT 0x80AC
#define | GL_MULTISAMPLE_BIT_EXT 0x20000000
#define | GL_VERTEX_PRECLIP_SGIX 0x83EE
#define | GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF
#define | GL_CONVOLUTION_HINT_SGIX 0x8316
#define | GL_PACK_RESAMPLE_SGIX 0x842C
#define | GL_UNPACK_RESAMPLE_SGIX 0x842D
#define | GL_RESAMPLE_REPLICATE_SGIX 0x842E
#define | GL_RESAMPLE_ZERO_FILL_SGIX 0x842F
#define | GL_RESAMPLE_DECIMATE_SGIX 0x8430
#define | GL_EYE_DISTANCE_TO_POINT_SGIS 0x81F0
#define | GL_OBJECT_DISTANCE_TO_POINT_SGIS 0x81F1
#define | GL_EYE_DISTANCE_TO_LINE_SGIS 0x81F2
#define | GL_OBJECT_DISTANCE_TO_LINE_SGIS 0x81F3
#define | GL_EYE_POINT_SGIS 0x81F4
#define | GL_OBJECT_POINT_SGIS 0x81F5
#define | GL_EYE_LINE_SGIS 0x81F6
#define | GL_OBJECT_LINE_SGIS 0x81F7
#define | GL_TEXTURE_COLOR_WRITEMASK_SGIS 0x81EF
#define | GL_DOT3_RGB_EXT 0x8740
#define | GL_DOT3_RGBA_EXT 0x8741
#define | GL_MIRROR_CLAMP_ATI 0x8742
#define | GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743
#define | GL_ALL_COMPLETED_NV 0x84F2
#define | GL_FENCE_STATUS_NV 0x84F3
#define | GL_FENCE_CONDITION_NV 0x84F4
#define | GL_MIRRORED_REPEAT_IBM 0x8370
#define | GL_EVAL_2D_NV 0x86C0
#define | GL_EVAL_TRIANGULAR_2D_NV 0x86C1
#define | GL_MAP_TESSELLATION_NV 0x86C2
#define | GL_MAP_ATTRIB_U_ORDER_NV 0x86C3
#define | GL_MAP_ATTRIB_V_ORDER_NV 0x86C4
#define | GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5
#define | GL_EVAL_VERTEX_ATTRIB0_NV 0x86C6
#define | GL_EVAL_VERTEX_ATTRIB1_NV 0x86C7
#define | GL_EVAL_VERTEX_ATTRIB2_NV 0x86C8
#define | GL_EVAL_VERTEX_ATTRIB3_NV 0x86C9
#define | GL_EVAL_VERTEX_ATTRIB4_NV 0x86CA
#define | GL_EVAL_VERTEX_ATTRIB5_NV 0x86CB
#define | GL_EVAL_VERTEX_ATTRIB6_NV 0x86CC
#define | GL_EVAL_VERTEX_ATTRIB7_NV 0x86CD
#define | GL_EVAL_VERTEX_ATTRIB8_NV 0x86CE
#define | GL_EVAL_VERTEX_ATTRIB9_NV 0x86CF
#define | GL_EVAL_VERTEX_ATTRIB10_NV 0x86D0
#define | GL_EVAL_VERTEX_ATTRIB11_NV 0x86D1
#define | GL_EVAL_VERTEX_ATTRIB12_NV 0x86D2
#define | GL_EVAL_VERTEX_ATTRIB13_NV 0x86D3
#define | GL_EVAL_VERTEX_ATTRIB14_NV 0x86D4
#define | GL_EVAL_VERTEX_ATTRIB15_NV 0x86D5
#define | GL_MAX_MAP_TESSELLATION_NV 0x86D6
#define | GL_MAX_RATIONAL_EVAL_ORDER_NV 0x86D7
#define | GL_DEPTH_STENCIL_NV 0x84F9
#define | GL_UNSIGNED_INT_24_8_NV 0x84FA
#define | GL_PER_STAGE_CONSTANTS_NV 0x8535
#define | GL_TEXTURE_RECTANGLE_NV 0x84F5
#define | GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6
#define | GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7
#define | GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8
#define | GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864C
#define | GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864D
#define | GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864E
#define | GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86D9
#define | GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA
#define | GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB
#define | GL_DSDT_MAG_INTENSITY_NV 0x86DC
#define | GL_SHADER_CONSISTENT_NV 0x86DD
#define | GL_TEXTURE_SHADER_NV 0x86DE
#define | GL_SHADER_OPERATION_NV 0x86DF
#define | GL_CULL_MODES_NV 0x86E0
#define | GL_OFFSET_TEXTURE_MATRIX_NV 0x86E1
#define | GL_OFFSET_TEXTURE_SCALE_NV 0x86E2
#define | GL_OFFSET_TEXTURE_BIAS_NV 0x86E3
#define | GL_OFFSET_TEXTURE_2D_MATRIX_NV GL_OFFSET_TEXTURE_MATRIX_NV
#define | GL_OFFSET_TEXTURE_2D_SCALE_NV GL_OFFSET_TEXTURE_SCALE_NV
#define | GL_OFFSET_TEXTURE_2D_BIAS_NV GL_OFFSET_TEXTURE_BIAS_NV
#define | GL_PREVIOUS_TEXTURE_INPUT_NV 0x86E4
#define | GL_CONST_EYE_NV 0x86E5
#define | GL_PASS_THROUGH_NV 0x86E6
#define | GL_CULL_FRAGMENT_NV 0x86E7
#define | GL_OFFSET_TEXTURE_2D_NV 0x86E8
#define | GL_DEPENDENT_AR_TEXTURE_2D_NV 0x86E9
#define | GL_DEPENDENT_GB_TEXTURE_2D_NV 0x86EA
#define | GL_DOT_PRODUCT_NV 0x86EC
#define | GL_DOT_PRODUCT_DEPTH_REPLACE_NV 0x86ED
#define | GL_DOT_PRODUCT_TEXTURE_2D_NV 0x86EE
#define | GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86F0
#define | GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86F1
#define | GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86F2
#define | GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86F3
#define | GL_HILO_NV 0x86F4
#define | GL_DSDT_NV 0x86F5
#define | GL_DSDT_MAG_NV 0x86F6
#define | GL_DSDT_MAG_VIB_NV 0x86F7
#define | GL_HILO16_NV 0x86F8
#define | GL_SIGNED_HILO_NV 0x86F9
#define | GL_SIGNED_HILO16_NV 0x86FA
#define | GL_SIGNED_RGBA_NV 0x86FB
#define | GL_SIGNED_RGBA8_NV 0x86FC
#define | GL_SIGNED_RGB_NV 0x86FE
#define | GL_SIGNED_RGB8_NV 0x86FF
#define | GL_SIGNED_LUMINANCE_NV 0x8701
#define | GL_SIGNED_LUMINANCE8_NV 0x8702
#define | GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703
#define | GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704
#define | GL_SIGNED_ALPHA_NV 0x8705
#define | GL_SIGNED_ALPHA8_NV 0x8706
#define | GL_SIGNED_INTENSITY_NV 0x8707
#define | GL_SIGNED_INTENSITY8_NV 0x8708
#define | GL_DSDT8_NV 0x8709
#define | GL_DSDT8_MAG8_NV 0x870A
#define | GL_DSDT8_MAG8_INTENSITY8_NV 0x870B
#define | GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C
#define | GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D
#define | GL_HI_SCALE_NV 0x870E
#define | GL_LO_SCALE_NV 0x870F
#define | GL_DS_SCALE_NV 0x8710
#define | GL_DT_SCALE_NV 0x8711
#define | GL_MAGNITUDE_SCALE_NV 0x8712
#define | GL_VIBRANCE_SCALE_NV 0x8713
#define | GL_HI_BIAS_NV 0x8714
#define | GL_LO_BIAS_NV 0x8715
#define | GL_DS_BIAS_NV 0x8716
#define | GL_DT_BIAS_NV 0x8717
#define | GL_MAGNITUDE_BIAS_NV 0x8718
#define | GL_VIBRANCE_BIAS_NV 0x8719
#define | GL_TEXTURE_BORDER_VALUES_NV 0x871A
#define | GL_TEXTURE_HI_SIZE_NV 0x871B
#define | GL_TEXTURE_LO_SIZE_NV 0x871C
#define | GL_TEXTURE_DS_SIZE_NV 0x871D
#define | GL_TEXTURE_DT_SIZE_NV 0x871E
#define | GL_TEXTURE_MAG_SIZE_NV 0x871F
#define | GL_DOT_PRODUCT_TEXTURE_3D_NV 0x86EF
#define | GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533
#define | GL_VERTEX_PROGRAM_NV 0x8620
#define | GL_VERTEX_STATE_PROGRAM_NV 0x8621
#define | GL_ATTRIB_ARRAY_SIZE_NV 0x8623
#define | GL_ATTRIB_ARRAY_STRIDE_NV 0x8624
#define | GL_ATTRIB_ARRAY_TYPE_NV 0x8625
#define | GL_CURRENT_ATTRIB_NV 0x8626
#define | GL_PROGRAM_LENGTH_NV 0x8627
#define | GL_PROGRAM_STRING_NV 0x8628
#define | GL_MODELVIEW_PROJECTION_NV 0x8629
#define | GL_IDENTITY_NV 0x862A
#define | GL_INVERSE_NV 0x862B
#define | GL_TRANSPOSE_NV 0x862C
#define | GL_INVERSE_TRANSPOSE_NV 0x862D
#define | GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E
#define | GL_MAX_TRACK_MATRICES_NV 0x862F
#define | GL_MATRIX0_NV 0x8630
#define | GL_MATRIX1_NV 0x8631
#define | GL_MATRIX2_NV 0x8632
#define | GL_MATRIX3_NV 0x8633
#define | GL_MATRIX4_NV 0x8634
#define | GL_MATRIX5_NV 0x8635
#define | GL_MATRIX6_NV 0x8636
#define | GL_MATRIX7_NV 0x8637
#define | GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640
#define | GL_CURRENT_MATRIX_NV 0x8641
#define | GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642
#define | GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643
#define | GL_PROGRAM_PARAMETER_NV 0x8644
#define | GL_ATTRIB_ARRAY_POINTER_NV 0x8645
#define | GL_PROGRAM_TARGET_NV 0x8646
#define | GL_PROGRAM_RESIDENT_NV 0x8647
#define | GL_TRACK_MATRIX_NV 0x8648
#define | GL_TRACK_MATRIX_TRANSFORM_NV 0x8649
#define | GL_VERTEX_PROGRAM_BINDING_NV 0x864A
#define | GL_PROGRAM_ERROR_POSITION_NV 0x864B
#define | GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650
#define | GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651
#define | GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652
#define | GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653
#define | GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654
#define | GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655
#define | GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656
#define | GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657
#define | GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658
#define | GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659
#define | GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A
#define | GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B
#define | GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C
#define | GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D
#define | GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E
#define | GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F
#define | GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660
#define | GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661
#define | GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662
#define | GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663
#define | GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664
#define | GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665
#define | GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666
#define | GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667
#define | GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668
#define | GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669
#define | GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A
#define | GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B
#define | GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C
#define | GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D
#define | GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E
#define | GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F
#define | GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670
#define | GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671
#define | GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672
#define | GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673
#define | GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674
#define | GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675
#define | GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676
#define | GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677
#define | GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678
#define | GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679
#define | GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A
#define | GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B
#define | GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C
#define | GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D
#define | GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E
#define | GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F
#define | GL_TEXTURE_MAX_CLAMP_S_SGIX 0x8369
#define | GL_TEXTURE_MAX_CLAMP_T_SGIX 0x836A
#define | GL_TEXTURE_MAX_CLAMP_R_SGIX 0x836B
#define | GL_SCALEBIAS_HINT_SGIX 0x8322
#define | GL_INTERLACE_OML 0x8980
#define | GL_INTERLACE_READ_OML 0x8981
#define | GL_FORMAT_SUBSAMPLE_24_24_OML 0x8982
#define | GL_FORMAT_SUBSAMPLE_244_244_OML 0x8983
#define | GL_PACK_RESAMPLE_OML 0x8984
#define | GL_UNPACK_RESAMPLE_OML 0x8985
#define | GL_RESAMPLE_REPLICATE_OML 0x8986
#define | GL_RESAMPLE_ZERO_FILL_OML 0x8987
#define | GL_RESAMPLE_AVERAGE_OML 0x8988
#define | GL_RESAMPLE_DECIMATE_OML 0x8989
#define | GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E
#define | GL_DEPTH_STENCIL_TO_BGRA_NV 0x886F
#define | GL_BUMP_ROT_MATRIX_ATI 0x8775
#define | GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776
#define | GL_BUMP_NUM_TEX_UNITS_ATI 0x8777
#define | GL_BUMP_TEX_UNITS_ATI 0x8778
#define | GL_DUDV_ATI 0x8779
#define | GL_DU8DV8_ATI 0x877A
#define | GL_BUMP_ENVMAP_ATI 0x877B
#define | GL_BUMP_TARGET_ATI 0x877C
#define | GL_FRAGMENT_SHADER_ATI 0x8920
#define | GL_REG_0_ATI 0x8921
#define | GL_REG_1_ATI 0x8922
#define | GL_REG_2_ATI 0x8923
#define | GL_REG_3_ATI 0x8924
#define | GL_REG_4_ATI 0x8925
#define | GL_REG_5_ATI 0x8926
#define | GL_REG_6_ATI 0x8927
#define | GL_REG_7_ATI 0x8928
#define | GL_REG_8_ATI 0x8929
#define | GL_REG_9_ATI 0x892A
#define | GL_REG_10_ATI 0x892B
#define | GL_REG_11_ATI 0x892C
#define | GL_REG_12_ATI 0x892D
#define | GL_REG_13_ATI 0x892E
#define | GL_REG_14_ATI 0x892F
#define | GL_REG_15_ATI 0x8930
#define | GL_REG_16_ATI 0x8931
#define | GL_REG_17_ATI 0x8932
#define | GL_REG_18_ATI 0x8933
#define | GL_REG_19_ATI 0x8934
#define | GL_REG_20_ATI 0x8935
#define | GL_REG_21_ATI 0x8936
#define | GL_REG_22_ATI 0x8937
#define | GL_REG_23_ATI 0x8938
#define | GL_REG_24_ATI 0x8939
#define | GL_REG_25_ATI 0x893A
#define | GL_REG_26_ATI 0x893B
#define | GL_REG_27_ATI 0x893C
#define | GL_REG_28_ATI 0x893D
#define | GL_REG_29_ATI 0x893E
#define | GL_REG_30_ATI 0x893F
#define | GL_REG_31_ATI 0x8940
#define | GL_CON_0_ATI 0x8941
#define | GL_CON_1_ATI 0x8942
#define | GL_CON_2_ATI 0x8943
#define | GL_CON_3_ATI 0x8944
#define | GL_CON_4_ATI 0x8945
#define | GL_CON_5_ATI 0x8946
#define | GL_CON_6_ATI 0x8947
#define | GL_CON_7_ATI 0x8948
#define | GL_CON_8_ATI 0x8949
#define | GL_CON_9_ATI 0x894A
#define | GL_CON_10_ATI 0x894B
#define | GL_CON_11_ATI 0x894C
#define | GL_CON_12_ATI 0x894D
#define | GL_CON_13_ATI 0x894E
#define | GL_CON_14_ATI 0x894F
#define | GL_CON_15_ATI 0x8950
#define | GL_CON_16_ATI 0x8951
#define | GL_CON_17_ATI 0x8952
#define | GL_CON_18_ATI 0x8953
#define | GL_CON_19_ATI 0x8954
#define | GL_CON_20_ATI 0x8955
#define | GL_CON_21_ATI 0x8956
#define | GL_CON_22_ATI 0x8957
#define | GL_CON_23_ATI 0x8958
#define | GL_CON_24_ATI 0x8959
#define | GL_CON_25_ATI 0x895A
#define | GL_CON_26_ATI 0x895B
#define | GL_CON_27_ATI 0x895C
#define | GL_CON_28_ATI 0x895D
#define | GL_CON_29_ATI 0x895E
#define | GL_CON_30_ATI 0x895F
#define | GL_CON_31_ATI 0x8960
#define | GL_MOV_ATI 0x8961
#define | GL_ADD_ATI 0x8963
#define | GL_MUL_ATI 0x8964
#define | GL_SUB_ATI 0x8965
#define | GL_DOT3_ATI 0x8966
#define | GL_DOT4_ATI 0x8967
#define | GL_MAD_ATI 0x8968
#define | GL_LERP_ATI 0x8969
#define | GL_CND_ATI 0x896A
#define | GL_CND0_ATI 0x896B
#define | GL_DOT2_ADD_ATI 0x896C
#define | GL_SECONDARY_INTERPOLATOR_ATI 0x896D
#define | GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E
#define | GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F
#define | GL_NUM_PASSES_ATI 0x8970
#define | GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971
#define | GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972
#define | GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973
#define | GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974
#define | GL_COLOR_ALPHA_PAIRING_ATI 0x8975
#define | GL_SWIZZLE_STR_ATI 0x8976
#define | GL_SWIZZLE_STQ_ATI 0x8977
#define | GL_SWIZZLE_STR_DR_ATI 0x8978
#define | GL_SWIZZLE_STQ_DQ_ATI 0x8979
#define | GL_SWIZZLE_STRQ_ATI 0x897A
#define | GL_SWIZZLE_STRQ_DQ_ATI 0x897B
#define | GL_RED_BIT_ATI 0x00000001
#define | GL_GREEN_BIT_ATI 0x00000002
#define | GL_BLUE_BIT_ATI 0x00000004
#define | GL_2X_BIT_ATI 0x00000001
#define | GL_4X_BIT_ATI 0x00000002
#define | GL_8X_BIT_ATI 0x00000004
#define | GL_HALF_BIT_ATI 0x00000008
#define | GL_QUARTER_BIT_ATI 0x00000010
#define | GL_EIGHTH_BIT_ATI 0x00000020
#define | GL_SATURATE_BIT_ATI 0x00000040
#define | GL_COMP_BIT_ATI 0x00000002
#define | GL_NEGATE_BIT_ATI 0x00000004
#define | GL_BIAS_BIT_ATI 0x00000008
#define | GL_PN_TRIANGLES_ATI 0x87F0
#define | GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1
#define | GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2
#define | GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3
#define | GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4
#define | GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5
#define | GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6
#define | GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7
#define | GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8
#define | GL_STATIC_ATI 0x8760
#define | GL_DYNAMIC_ATI 0x8761
#define | GL_PRESERVE_ATI 0x8762
#define | GL_DISCARD_ATI 0x8763
#define | GL_OBJECT_BUFFER_SIZE_ATI 0x8764
#define | GL_OBJECT_BUFFER_USAGE_ATI 0x8765
#define | GL_ARRAY_OBJECT_BUFFER_ATI 0x8766
#define | GL_ARRAY_OBJECT_OFFSET_ATI 0x8767
#define | GL_VERTEX_SHADER_EXT 0x8780
#define | GL_VERTEX_SHADER_BINDING_EXT 0x8781
#define | GL_OP_INDEX_EXT 0x8782
#define | GL_OP_NEGATE_EXT 0x8783
#define | GL_OP_DOT3_EXT 0x8784
#define | GL_OP_DOT4_EXT 0x8785
#define | GL_OP_MUL_EXT 0x8786
#define | GL_OP_ADD_EXT 0x8787
#define | GL_OP_MADD_EXT 0x8788
#define | GL_OP_FRAC_EXT 0x8789
#define | GL_OP_MAX_EXT 0x878A
#define | GL_OP_MIN_EXT 0x878B
#define | GL_OP_SET_GE_EXT 0x878C
#define | GL_OP_SET_LT_EXT 0x878D
#define | GL_OP_CLAMP_EXT 0x878E
#define | GL_OP_FLOOR_EXT 0x878F
#define | GL_OP_ROUND_EXT 0x8790
#define | GL_OP_EXP_BASE_2_EXT 0x8791
#define | GL_OP_LOG_BASE_2_EXT 0x8792
#define | GL_OP_POWER_EXT 0x8793
#define | GL_OP_RECIP_EXT 0x8794
#define | GL_OP_RECIP_SQRT_EXT 0x8795
#define | GL_OP_SUB_EXT 0x8796
#define | GL_OP_CROSS_PRODUCT_EXT 0x8797
#define | GL_OP_MULTIPLY_MATRIX_EXT 0x8798
#define | GL_OP_MOV_EXT 0x8799
#define | GL_OUTPUT_VERTEX_EXT 0x879A
#define | GL_OUTPUT_COLOR0_EXT 0x879B
#define | GL_OUTPUT_COLOR1_EXT 0x879C
#define | GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D
#define | GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E
#define | GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F
#define | GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0
#define | GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1
#define | GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2
#define | GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3
#define | GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4
#define | GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5
#define | GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6
#define | GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7
#define | GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8
#define | GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9
#define | GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA
#define | GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB
#define | GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC
#define | GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD
#define | GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE
#define | GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF
#define | GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0
#define | GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1
#define | GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2
#define | GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3
#define | GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4
#define | GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5
#define | GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6
#define | GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7
#define | GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8
#define | GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9
#define | GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA
#define | GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB
#define | GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC
#define | GL_OUTPUT_FOG_EXT 0x87BD
#define | GL_SCALAR_EXT 0x87BE
#define | GL_VECTOR_EXT 0x87BF
#define | GL_MATRIX_EXT 0x87C0
#define | GL_VARIANT_EXT 0x87C1
#define | GL_INVARIANT_EXT 0x87C2
#define | GL_LOCAL_CONSTANT_EXT 0x87C3
#define | GL_LOCAL_EXT 0x87C4
#define | GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5
#define | GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6
#define | GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7
#define | GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8
#define | GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9
#define | GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA
#define | GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB
#define | GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CC
#define | GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CD
#define | GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE
#define | GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF
#define | GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0
#define | GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1
#define | GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2
#define | GL_VERTEX_SHADER_LOCALS_EXT 0x87D3
#define | GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4
#define | GL_X_EXT 0x87D5
#define | GL_Y_EXT 0x87D6
#define | GL_Z_EXT 0x87D7
#define | GL_W_EXT 0x87D8
#define | GL_NEGATIVE_X_EXT 0x87D9
#define | GL_NEGATIVE_Y_EXT 0x87DA
#define | GL_NEGATIVE_Z_EXT 0x87DB
#define | GL_NEGATIVE_W_EXT 0x87DC
#define | GL_ZERO_EXT 0x87DD
#define | GL_ONE_EXT 0x87DE
#define | GL_NEGATIVE_ONE_EXT 0x87DF
#define | GL_NORMALIZED_RANGE_EXT 0x87E0
#define | GL_FULL_RANGE_EXT 0x87E1
#define | GL_CURRENT_VERTEX_EXT 0x87E2
#define | GL_MVP_MATRIX_EXT 0x87E3
#define | GL_VARIANT_VALUE_EXT 0x87E4
#define | GL_VARIANT_DATATYPE_EXT 0x87E5
#define | GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6
#define | GL_VARIANT_ARRAY_TYPE_EXT 0x87E7
#define | GL_VARIANT_ARRAY_EXT 0x87E8
#define | GL_VARIANT_ARRAY_POINTER_EXT 0x87E9
#define | GL_INVARIANT_VALUE_EXT 0x87EA
#define | GL_INVARIANT_DATATYPE_EXT 0x87EB
#define | GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC
#define | GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED
#define | GL_MAX_VERTEX_STREAMS_ATI 0x876B
#define | GL_VERTEX_STREAM0_ATI 0x876C
#define | GL_VERTEX_STREAM1_ATI 0x876D
#define | GL_VERTEX_STREAM2_ATI 0x876E
#define | GL_VERTEX_STREAM3_ATI 0x876F
#define | GL_VERTEX_STREAM4_ATI 0x8770
#define | GL_VERTEX_STREAM5_ATI 0x8771
#define | GL_VERTEX_STREAM6_ATI 0x8772
#define | GL_VERTEX_STREAM7_ATI 0x8773
#define | GL_VERTEX_SOURCE_ATI 0x8774
#define | GL_ELEMENT_ARRAY_ATI 0x8768
#define | GL_ELEMENT_ARRAY_TYPE_ATI 0x8769
#define | GL_ELEMENT_ARRAY_POINTER_ATI 0x876A
#define | GL_QUAD_MESH_SUN 0x8614
#define | GL_TRIANGLE_MESH_SUN 0x8615
#define | GL_SLICE_ACCUM_SUN 0x85CC
#define | GL_MULTISAMPLE_FILTER_HINT_NV 0x8534
#define | GL_DEPTH_CLAMP_NV 0x864F
#define | GL_PIXEL_COUNTER_BITS_NV 0x8864
#define | GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865
#define | GL_PIXEL_COUNT_NV 0x8866
#define | GL_PIXEL_COUNT_AVAILABLE_NV 0x8867
#define | GL_POINT_SPRITE_NV 0x8861
#define | GL_COORD_REPLACE_NV 0x8862
#define | GL_POINT_SPRITE_R_MODE_NV 0x8863
#define | GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV 0x8850
#define | GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV 0x8851
#define | GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8852
#define | GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV 0x8853
#define | GL_OFFSET_HILO_TEXTURE_2D_NV 0x8854
#define | GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV 0x8855
#define | GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV 0x8856
#define | GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8857
#define | GL_DEPENDENT_HILO_TEXTURE_2D_NV 0x8858
#define | GL_DEPENDENT_RGB_TEXTURE_3D_NV 0x8859
#define | GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV 0x885A
#define | GL_DOT_PRODUCT_PASS_THROUGH_NV 0x885B
#define | GL_DOT_PRODUCT_TEXTURE_1D_NV 0x885C
#define | GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV 0x885D
#define | GL_HILO8_NV 0x885E
#define | GL_SIGNED_HILO8_NV 0x885F
#define | GL_FORCE_BLUE_TO_ONE_NV 0x8860
#define | GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910
#define | GL_ACTIVE_STENCIL_FACE_EXT 0x8911
#define | GL_TEXT_FRAGMENT_SHADER_ATI 0x8200
#define | GL_UNPACK_CLIENT_STORAGE_APPLE 0x85B2
#define | GL_ELEMENT_ARRAY_APPLE 0x8768
#define | GL_ELEMENT_ARRAY_TYPE_APPLE 0x8769
#define | GL_ELEMENT_ARRAY_POINTER_APPLE 0x876A
#define | GL_DRAW_PIXELS_APPLE 0x8A0A
#define | GL_FENCE_APPLE 0x8A0B
#define | GL_VERTEX_ARRAY_BINDING_APPLE 0x85B5
#define | GL_VERTEX_ARRAY_RANGE_APPLE 0x851D
#define | GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE 0x851E
#define | GL_VERTEX_ARRAY_STORAGE_HINT_APPLE 0x851F
#define | GL_VERTEX_ARRAY_RANGE_POINTER_APPLE 0x8521
#define | GL_STORAGE_CACHED_APPLE 0x85BE
#define | GL_STORAGE_SHARED_APPLE 0x85BF
#define | GL_YCBCR_422_APPLE 0x85B9
#define | GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
#define | GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
#define | GL_RGB_S3TC 0x83A0
#define | GL_RGB4_S3TC 0x83A1
#define | GL_RGBA_S3TC 0x83A2
#define | GL_RGBA4_S3TC 0x83A3
#define | GL_MAX_DRAW_BUFFERS_ATI 0x8824
#define | GL_DRAW_BUFFER0_ATI 0x8825
#define | GL_DRAW_BUFFER1_ATI 0x8826
#define | GL_DRAW_BUFFER2_ATI 0x8827
#define | GL_DRAW_BUFFER3_ATI 0x8828
#define | GL_DRAW_BUFFER4_ATI 0x8829
#define | GL_DRAW_BUFFER5_ATI 0x882A
#define | GL_DRAW_BUFFER6_ATI 0x882B
#define | GL_DRAW_BUFFER7_ATI 0x882C
#define | GL_DRAW_BUFFER8_ATI 0x882D
#define | GL_DRAW_BUFFER9_ATI 0x882E
#define | GL_DRAW_BUFFER10_ATI 0x882F
#define | GL_DRAW_BUFFER11_ATI 0x8830
#define | GL_DRAW_BUFFER12_ATI 0x8831
#define | GL_DRAW_BUFFER13_ATI 0x8832
#define | GL_DRAW_BUFFER14_ATI 0x8833
#define | GL_DRAW_BUFFER15_ATI 0x8834
#define | GL_MODULATE_ADD_ATI 0x8744
#define | GL_MODULATE_SIGNED_ADD_ATI 0x8745
#define | GL_MODULATE_SUBTRACT_ATI 0x8746
#define | GL_RGBA_FLOAT32_ATI 0x8814
#define | GL_RGB_FLOAT32_ATI 0x8815
#define | GL_ALPHA_FLOAT32_ATI 0x8816
#define | GL_INTENSITY_FLOAT32_ATI 0x8817
#define | GL_LUMINANCE_FLOAT32_ATI 0x8818
#define | GL_LUMINANCE_ALPHA_FLOAT32_ATI 0x8819
#define | GL_RGBA_FLOAT16_ATI 0x881A
#define | GL_RGB_FLOAT16_ATI 0x881B
#define | GL_ALPHA_FLOAT16_ATI 0x881C
#define | GL_INTENSITY_FLOAT16_ATI 0x881D
#define | GL_LUMINANCE_FLOAT16_ATI 0x881E
#define | GL_LUMINANCE_ALPHA_FLOAT16_ATI 0x881F
#define | GL_FLOAT_R_NV 0x8880
#define | GL_FLOAT_RG_NV 0x8881
#define | GL_FLOAT_RGB_NV 0x8882
#define | GL_FLOAT_RGBA_NV 0x8883
#define | GL_FLOAT_R16_NV 0x8884
#define | GL_FLOAT_R32_NV 0x8885
#define | GL_FLOAT_RG16_NV 0x8886
#define | GL_FLOAT_RG32_NV 0x8887
#define | GL_FLOAT_RGB16_NV 0x8888
#define | GL_FLOAT_RGB32_NV 0x8889
#define | GL_FLOAT_RGBA16_NV 0x888A
#define | GL_FLOAT_RGBA32_NV 0x888B
#define | GL_TEXTURE_FLOAT_COMPONENTS_NV 0x888C
#define | GL_FLOAT_CLEAR_COLOR_VALUE_NV 0x888D
#define | GL_FLOAT_RGBA_MODE_NV 0x888E
#define | GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868
#define | GL_FRAGMENT_PROGRAM_NV 0x8870
#define | GL_MAX_TEXTURE_COORDS_NV 0x8871
#define | GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872
#define | GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873
#define | GL_PROGRAM_ERROR_STRING_NV 0x8874
#define | GL_HALF_FLOAT_NV 0x140B
#define | GL_WRITE_PIXEL_DATA_RANGE_NV 0x8878
#define | GL_READ_PIXEL_DATA_RANGE_NV 0x8879
#define | GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV 0x887A
#define | GL_READ_PIXEL_DATA_RANGE_LENGTH_NV 0x887B
#define | GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV 0x887C
#define | GL_READ_PIXEL_DATA_RANGE_POINTER_NV 0x887D
#define | GL_PRIMITIVE_RESTART_NV 0x8558
#define | GL_PRIMITIVE_RESTART_INDEX_NV 0x8559
#define | GL_TEXTURE_UNSIGNED_REMAP_MODE_NV 0x888F
#define | GL_STENCIL_BACK_FUNC_ATI 0x8800
#define | GL_STENCIL_BACK_FAIL_ATI 0x8801
#define | GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802
#define | GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803
#define | GL_VERSION_1_2 1
#define | GL_VERSION_1_3 1
#define | GL_VERSION_1_4 1
#define | GL_ARB_multitexture 1
#define | GL_ARB_transpose_matrix 1
#define | GL_ARB_multisample 1
#define | GL_ARB_texture_env_add 1
#define | GL_ARB_texture_cube_map 1
#define | GL_ARB_texture_compression 1
#define | GL_ARB_texture_border_clamp 1
#define | GL_ARB_point_parameters 1
#define | GL_ARB_vertex_blend 1
#define | GL_ARB_matrix_palette 1
#define | GL_ARB_texture_env_combine 1
#define | GL_ARB_texture_env_crossbar 1
#define | GL_ARB_texture_env_dot3 1
#define | GL_ARB_texture_mirror_repeat 1
#define | GL_ARB_depth_texture 1
#define | GL_ARB_shadow 1
#define | GL_ARB_shadow_ambient 1
#define | GL_ARB_window_pos 1
#define | GL_ARB_vertex_program 1
#define | GL_ARB_fragment_program 1
#define | GL_ARB_vertex_buffer_object 1
#define | GL_EXT_abgr 1
#define | GL_EXT_blend_color 1
#define | GL_EXT_polygon_offset 1
#define | GL_EXT_texture 1
#define | GL_EXT_texture3D 1
#define | GL_SGIS_texture_filter4 1
#define | GL_EXT_subtexture 1
#define | GL_EXT_copy_texture 1
#define | GL_EXT_histogram 1
#define | GL_EXT_convolution 1
#define | GL_EXT_color_matrix 1
#define | GL_SGI_color_table 1
#define | GL_SGIX_pixel_texture 1
#define | GL_SGIS_pixel_texture 1
#define | GL_SGIS_texture4D 1
#define | GL_SGI_texture_color_table 1
#define | GL_EXT_cmyka 1
#define | GL_EXT_texture_object 1
#define | GL_SGIS_detail_texture 1
#define | GL_SGIS_sharpen_texture 1
#define | GL_EXT_packed_pixels 1
#define | GL_SGIS_texture_lod 1
#define | GL_SGIS_multisample 1
#define | GL_EXT_rescale_normal 1
#define | GL_EXT_vertex_array 1
#define | GL_EXT_misc_attribute 1
#define | GL_SGIS_generate_mipmap 1
#define | GL_SGIX_clipmap 1
#define | GL_SGIX_shadow 1
#define | GL_SGIS_texture_edge_clamp 1
#define | GL_SGIS_texture_border_clamp 1
#define | GL_EXT_blend_minmax 1
#define | GL_EXT_blend_subtract 1
#define | GL_EXT_blend_logic_op 1
#define | GL_SGIX_interlace 1
#define | GL_SGIX_pixel_tiles 1
#define | GL_SGIX_texture_select 1
#define | GL_SGIX_sprite 1
#define | GL_SGIX_texture_multi_buffer 1
#define | GL_EXT_point_parameters 1
#define | GL_SGIS_point_parameters 1
#define | GL_SGIX_instruments 1
#define | GL_SGIX_texture_scale_bias 1
#define | GL_SGIX_framezoom 1
#define | GL_SGIX_tag_sample_buffer 1
#define | GL_SGIX_polynomial_ffd 1
#define | GL_SGIX_reference_plane 1
#define | GL_SGIX_flush_raster 1
#define | GL_SGIX_depth_texture 1
#define | GL_SGIS_fog_function 1
#define | GL_SGIX_fog_offset 1
#define | GL_HP_image_transform 1
#define | GL_HP_convolution_border_modes 1
#define | GL_SGIX_texture_add_env 1
#define | GL_EXT_color_subtable 1
#define | GL_PGI_vertex_hints 1
#define | GL_PGI_misc_hints 1
#define | GL_EXT_paletted_texture 1
#define | GL_EXT_clip_volume_hint 1
#define | GL_SGIX_list_priority 1
#define | GL_SGIX_ir_instrument1 1
#define | GL_SGIX_calligraphic_fragment 1
#define | GL_SGIX_texture_lod_bias 1
#define | GL_SGIX_shadow_ambient 1
#define | GL_EXT_index_texture 1
#define | GL_EXT_index_material 1
#define | GL_EXT_index_func 1
#define | GL_EXT_index_array_formats 1
#define | GL_EXT_compiled_vertex_array 1
#define | GL_EXT_cull_vertex 1
#define | GL_SGIX_ycrcb 1
#define | GL_SGIX_fragment_lighting 1
#define | GL_IBM_rasterpos_clip 1
#define | GL_HP_texture_lighting 1
#define | GL_EXT_draw_range_elements 1
#define | GL_WIN_phong_shading 1
#define | GL_WIN_specular_fog 1
#define | GL_EXT_light_texture 1
#define | GL_SGIX_blend_alpha_minmax 1
#define | GL_EXT_bgra 1
#define | GL_SGIX_async 1
#define | GL_SGIX_async_pixel 1
#define | GL_SGIX_async_histogram 1
#define | GL_INTEL_parallel_arrays 1
#define | GL_HP_occlusion_test 1
#define | GL_EXT_pixel_transform 1
#define | GL_EXT_pixel_transform_color_table 1
#define | GL_EXT_shared_texture_palette 1
#define | GL_EXT_separate_specular_color 1
#define | GL_EXT_secondary_color 1
#define | GL_EXT_texture_perturb_normal 1
#define | GL_EXT_multi_draw_arrays 1
#define | GL_EXT_fog_coord 1
#define | GL_REND_screen_coordinates 1
#define | GL_EXT_coordinate_frame 1
#define | GL_EXT_texture_env_combine 1
#define | GL_APPLE_specular_vector 1
#define | GL_APPLE_transform_hint 1
#define | GL_SGIX_fog_scale 1
#define | GL_SUNX_constant_data 1
#define | GL_SUN_global_alpha 1
#define | GL_SUN_triangle_list 1
#define | GL_SUN_vertex 1
#define | GL_EXT_blend_func_separate 1
#define | GL_INGR_blend_func_separate 1
#define | GL_INGR_color_clamp 1
#define | GL_INGR_interlace_read 1
#define | GL_EXT_stencil_wrap 1
#define | GL_EXT_422_pixels 1
#define | GL_NV_texgen_reflection 1
#define | GL_SUN_convolution_border_modes 1
#define | GL_EXT_texture_env_add 1
#define | GL_EXT_texture_lod_bias 1
#define | GL_EXT_texture_filter_anisotropic 1
#define | GL_EXT_vertex_weighting 1
#define | GL_NV_light_max_exponent 1
#define | GL_NV_vertex_array_range 1
#define | GL_NV_register_combiners 1
#define | GL_NV_fog_distance 1
#define | GL_NV_texgen_emboss 1
#define | GL_NV_blend_square 1
#define | GL_NV_texture_env_combine4 1
#define | GL_MESA_resize_buffers 1
#define | GL_MESA_window_pos 1
#define | GL_IBM_cull_vertex 1
#define | GL_IBM_multimode_draw_arrays 1
#define | GL_IBM_vertex_array_lists 1
#define | GL_SGIX_subsample 1
#define | GL_SGIX_ycrcba 1
#define | GL_SGIX_ycrcb_subsample 1
#define | GL_SGIX_depth_pass_instrument 1
#define | GL_3DFX_texture_compression_FXT1 1
#define | GL_3DFX_multisample 1
#define | GL_3DFX_tbuffer 1
#define | GL_EXT_multisample 1
#define | GL_SGIX_vertex_preclip 1
#define | GL_SGIX_convolution_accuracy 1
#define | GL_SGIX_resample 1
#define | GL_SGIS_point_line_texgen 1
#define | GL_SGIS_texture_color_mask 1
#define | GL_SGIX_igloo_interface 1
#define | GL_EXT_texture_env_dot3 1
#define | GL_ATI_texture_mirror_once 1
#define | GL_NV_fence 1
#define | GL_NV_evaluators 1
#define | GL_NV_packed_depth_stencil 1
#define | GL_NV_register_combiners2 1
#define | GL_NV_texture_compression_vtc 1
#define | GL_NV_texture_rectangle 1
#define | GL_NV_texture_shader 1
#define | GL_NV_texture_shader2 1
#define | GL_NV_vertex_array_range2 1
#define | GL_NV_vertex_program 1
#define | GL_SGIX_texture_coordinate_clamp 1
#define | GL_SGIX_scalebias_hint 1
#define | GL_OML_interlace 1
#define | GL_OML_subsample 1
#define | GL_OML_resample 1
#define | GL_NV_copy_depth_to_color 1
#define | GL_ATI_envmap_bumpmap 1
#define | GL_ATI_fragment_shader 1
#define | GL_ATI_pn_triangles 1
#define | GL_ATI_vertex_array_object 1
#define | GL_EXT_vertex_shader 1
#define | GL_ATI_vertex_streams 1
#define | GL_ATI_element_array 1
#define | GL_SUN_mesh_array 1
#define | GL_SUN_slice_accum 1
#define | GL_NV_multisample_filter_hint 1
#define | GL_NV_depth_clamp 1
#define | GL_NV_occlusion_query 1
#define | GL_NV_point_sprite 1
#define | GL_NV_texture_shader3 1
#define | GL_NV_vertex_program1_1 1
#define | GL_EXT_shadow_funcs 1
#define | GL_EXT_stencil_two_side 1
#define | GL_ATI_text_fragment_shader 1
#define | GL_APPLE_client_storage 1
#define | GL_APPLE_element_array 1
#define | GL_APPLE_fence 1
#define | GL_APPLE_vertex_array_object 1
#define | GL_APPLE_vertex_array_range 1
#define | GL_APPLE_ycbcr_422 1
#define | GL_S3_s3tc 1
#define | GL_ATI_draw_buffers 1
#define | GL_ATI_texture_env_combine3 1
#define | GL_ATI_texture_float 1
#define | GL_NV_float_buffer 1
#define | GL_NV_fragment_program 1
#define | GL_NV_half_float 1
#define | GL_NV_pixel_data_range 1
#define | GL_NV_primitive_restart 1
#define | GL_NV_texture_expand_normal 1
#define | GL_NV_vertex_program2 1
#define | GL_ATI_map_object_buffer 1
#define | GL_ATI_separate_stencil 1
#define | GL_ATI_vertex_attrib_array_object 1

Typedefs

typedef GLclampf | green
typedef GLclampf GLclampf | blue
typedef GLclampf GLclampf
GLclampf 		alpha
typedef GLuint | start
typedef GLuint GLuint | end
typedef GLuint GLuint GLsizei | count
typedef GLuint GLuint GLsizei
GLenum 		type
typedef GLuint GLuint GLsizei
GLenum const GLvoid * 		indices
typedef GLenum | internalformat
typedef GLenum GLsizei | width
typedef GLenum GLsizei GLenum | format
typedef GLenum GLsizei GLenum
GLenum const GLvoid * 		table
typedef GLenum | pname
typedef GLenum const GLfloat * | params
typedef GLenum GLint | x
typedef GLenum GLint GLint | y
typedef GLsizei GLsizei GLenum
GLenum const GLvoid * 		data
typedef GLenum GLsizei GLenum
GLenum const GLvoid * 		image
typedef GLenum GLsizei GLsizei | height
typedef GLenum GLenum GLvoid * | row
typedef GLenum GLenum GLvoid
GLvoid * 		column
typedef GLenum GLenum GLvoid
GLvoid GLvoid * 		span
typedef GLboolean | reset
typedef GLboolean GLenum GLenum
GLvoid * 		values
typedef GLsizei GLenum GLboolean | sink
typedef GLint | level
typedef GLint GLint GLsizei
GLsizei GLsizei 		depth
typedef GLint GLint GLsizei
GLsizei GLsizei GLint 		border
typedef GLint GLint GLsizei
GLsizei GLsizei GLint GLenum
GLenum const GLvoid * 		pixels
typedef GLint GLint | xoffset
typedef GLint GLint GLint | yoffset
typedef GLint GLint GLint
GLint 		zoffset
typedef GLdouble | s
typedef const GLdouble * | v
typedef GLdouble GLdouble | t
typedef GLdouble GLdouble
GLdouble 		r
typedef GLdouble GLdouble
GLdouble GLdouble 		q
typedef GLboolean | invert
typedef GLint GLenum GLsizei
GLsizei GLsizei GLint GLsizei 		imageSize
typedef GLint GLvoid * | img
typedef GLenum | dfactorRGB
typedef GLenum GLenum | sfactorAlpha
typedef GLenum GLenum GLenum | dfactorAlpha
typedef GLsizei | stride
typedef GLsizei const GLvoid * | pointer
typedef GLint * | first
typedef GLint GLsizei GLsizei | primcount
typedef GLfloat | param
typedef GLdouble GLdouble | z
typedef const GLbyte * | weights
typedef GLubyte GLubyte GLubyte
GLubyte 		w
typedef GLint | size
typedef GLint GLenum GLboolean | normalized
typedef GLenum GLsizei | len
typedef GLenum GLsizei const
GLvoid * 		string
typedef GLuint | program
typedef const GLuint * | programs
typedef GLuint | index
typedef ptrdiff_t | GLintptrARB
typedef ptrdiff_t | GLsizeiptrARB
typedef GLuint | buffer
typedef const GLuint * | buffers
typedef GLsizeiptrARB const
GLvoid GLenum 		usage
typedef GLintptrARB | offset
typedef GLvoid *APIENTRY * | PFNGLMAPBUFFERARBPROC (GLenum target, GLenum access)
typedef GLfloat | bias
typedef GLenum | filter
typedef GLenum GLsizei | n
typedef GLint GLenum GLsizei
GLsizei GLsizei GLsizei 		size4d
typedef GLint GLint GLint
GLint GLint 		woffset
typedef const GLuint * | textures
typedef const GLuint GLboolean * | residences
typedef GLuint | texture
typedef const GLuint const
GLclampf * 		priorities
typedef GLsizei const GLfloat * | points
typedef GLdouble | u1
typedef GLdouble GLdouble | u2
typedef GLdouble GLdouble
GLint 		ustride
typedef GLdouble GLdouble
GLint GLint 		uorder
typedef GLdouble GLdouble
GLint GLint GLdouble 		v1
typedef GLdouble GLdouble
GLint GLint GLdouble GLdouble 		v2
typedef GLdouble GLdouble
GLint GLint GLdouble GLdouble
GLint 		vstride
typedef GLdouble GLdouble
GLint GLint GLdouble GLdouble
GLint GLint 		vorder
typedef GLdouble GLdouble
GLint GLint GLdouble GLdouble
GLint GLint GLdouble 		w1
typedef GLdouble GLdouble
GLint GLint GLdouble GLdouble
GLint GLint GLdouble GLdouble 		w2
typedef GLdouble GLdouble
GLint GLint GLdouble GLdouble
GLint GLint GLdouble GLdouble
GLint 		wstride
typedef GLdouble GLdouble
GLint GLint GLdouble GLdouble
GLint GLint GLdouble GLdouble
GLint GLint 		worder
typedef GLint | mode
typedef GLenum | internalFormat
typedef GLclampf | ref
typedef GLsizei | range
typedef GLbyte | ty
typedef GLbyte GLbyte | tz
typedef GLbyte | by
typedef GLbyte GLbyte | bz
typedef GLubyte | g
typedef GLubyte GLubyte | b
typedef GLubyte GLubyte GLubyte | a
typedef GLfloat | ny
typedef GLfloat GLfloat | nz
typedef GLfloat GLfloat GLfloat
GLfloat 		nx
typedef GLfloat GLfloat | p
typedef const GLubyte * | c
typedef const GLfloat * | tc
typedef GLenum | portion
typedef GLenum GLenum | variable
typedef GLenum GLenum GLenum | input
typedef GLenum GLenum GLenum
GLenum 		mapping
typedef GLenum GLenum GLenum
GLenum GLenum 		componentUsage
typedef GLenum GLenum | abOutput
typedef GLenum GLenum GLenum | cdOutput
typedef GLenum GLenum GLenum
GLenum 		sumOutput
typedef GLenum GLenum GLenum
GLenum GLenum 		scale
typedef GLenum GLenum GLenum
GLenum GLenum GLenum GLboolean 		abDotProduct
typedef GLenum GLenum GLenum
GLenum GLenum GLenum GLboolean
GLboolean 		cdDotProduct
typedef GLenum GLenum GLenum
GLenum GLenum GLenum GLboolean
GLboolean GLboolean 		muxSum
typedef const GLint const
GLsizei GLsizei GLint 		modestride
typedef GLenum GLint const
GLvoid GLint 		ptrstride
typedef const GLuint * | fences
typedef GLenum | condition
typedef GLuint GLenum GLsizei
GLsizei GLint GLint GLboolean 		packed
typedef GLuint | id
typedef GLuint | address
typedef GLuint GLenum | matrix
typedef GLuint GLenum GLenum | transform
typedef GLint | fsize
typedef GLuint | coord
typedef GLuint GLenum | swizzle
typedef GLuint | interp
typedef GLuint | dst
typedef GLuint GLuint | dstMask
typedef GLuint GLuint GLuint | dstMod
typedef GLuint GLuint GLuint
GLuint 		arg1
typedef GLuint GLuint GLuint
GLuint GLuint 		arg1Rep
typedef GLuint GLuint GLuint
GLuint GLuint GLuint 		arg1Mod
typedef GLuint GLuint GLuint
GLuint GLuint GLuint GLuint 		arg2
typedef GLuint GLuint GLuint
GLuint GLuint GLuint GLuint
GLuint 		arg2Rep
typedef GLuint GLuint GLuint
GLuint GLuint GLuint GLuint
GLuint GLuint 		arg2Mod
typedef GLuint GLuint GLuint
GLuint GLuint GLuint GLuint
GLuint GLuint GLuint 		arg3
typedef GLuint GLuint GLuint
GLuint GLuint GLuint GLuint
GLuint GLuint GLuint GLuint 		arg3Rep
typedef GLuint GLuint GLuint
GLuint GLuint GLuint GLuint
GLuint GLuint GLuint GLuint
GLuint 		arg3Mod
typedef const GLfloat * | value
typedef GLuint GLsizei const
GLvoid GLenum 		preserve
typedef GLuint | res
typedef GLuint | in
typedef GLuint GLenum | outX
typedef GLuint GLenum GLenum | outY
typedef GLuint GLenum GLenum
GLenum 		outZ
typedef GLuint GLenum GLenum
GLenum GLenum 		outW
typedef GLuint | src
typedef GLuint GLuint | num
typedef GLenum | storagetype
typedef GLenum GLenum GLuint | components
typedef GLenum const GLvoid * | addr
typedef GLenum | cap
typedef const GLshort * | coords
typedef GLuint * | ids
typedef GLuint | name
typedef const GLuint * | arrays
typedef const GLenum * | bufs
typedef unsigned short | GLhalfNV
typedef GLsizei | length
typedef GLvoid *APIENTRY * | PFNGLMAPOBJECTBUFFERATIPROC (GLuint buffer)
typedef GLenum | sfail
typedef GLenum GLenum | dpfail
typedef GLenum GLenum GLenum | dppass
typedef GLenum | backfunc
typedef GLenum GLint GLuint | mask

Functions

typedef | void (APIENTRY *PFNGLBLENDCOLORPROC)(GLclampf red
typedef | GLboolean (APIENTRY *PFNGLISPROGRAMARBPROC)(GLuint program)
typedef | GLint (APIENTRY *PFNGLGETINSTRUMENTSSGIXPROC)(void)
typedef | GLuint (APIENTRY *PFNGLGENASYNCMARKERSSGIXPROC)(GLsizei range)

Define Documentation

#define GL_1PASS_EXT 0x80A1

Definition at line 1829 of file glext.h.

#define GL_1PASS_SGIS 0x80A1

Definition at line 915 of file glext.h.

#define GL_2PASS_0_EXT 0x80A2

Definition at line 1830 of file glext.h.

#define GL_2PASS_0_SGIS 0x80A2

Definition at line 916 of file glext.h.

#define GL_2PASS_1_EXT 0x80A3

Definition at line 1831 of file glext.h.

#define GL_2PASS_1_SGIS 0x80A3

Definition at line 917 of file glext.h.

#define GL_2X_BIT_ATI 0x00000001

Definition at line 2252 of file glext.h.

#define GL_3DFX_multisample 1

Definition at line 4609 of file glext.h.

#define GL_3DFX_tbuffer 1

Definition at line 4613 of file glext.h.

#define GL_3DFX_texture_compression_FXT1 1

Definition at line 4605 of file glext.h.

#define GL_422_AVERAGE_EXT 0x80CE

Definition at line 1594 of file glext.h.

#define GL_422_EXT 0x80CC

Definition at line 1592 of file glext.h.

#define GL_422_REV_AVERAGE_EXT 0x80CF

Definition at line 1595 of file glext.h.

#define GL_422_REV_EXT 0x80CD

Definition at line 1593 of file glext.h.

#define GL_4PASS_0_EXT 0x80A4

Definition at line 1832 of file glext.h.

#define GL_4PASS_0_SGIS 0x80A4

Definition at line 918 of file glext.h.

#define GL_4PASS_1_EXT 0x80A5

Definition at line 1833 of file glext.h.

#define GL_4PASS_1_SGIS 0x80A5

Definition at line 919 of file glext.h.

#define GL_4PASS_2_EXT 0x80A6

Definition at line 1834 of file glext.h.

#define GL_4PASS_2_SGIS 0x80A6

Definition at line 920 of file glext.h.

#define GL_4PASS_3_EXT 0x80A7

Definition at line 1835 of file glext.h.

#define GL_4PASS_3_SGIS 0x80A7

Definition at line 921 of file glext.h.

#define GL_4X_BIT_ATI 0x00000002

Definition at line 2253 of file glext.h.

#define GL_8X_BIT_ATI 0x00000004

Definition at line 2254 of file glext.h.

#define GL_ABGR_EXT 0x8000

Definition at line 673 of file glext.h.

#define GL_ACTIVE_STENCIL_FACE_EXT 0x8911

Definition at line 2477 of file glext.h.

#define GL_ACTIVE_TEXTURE 0x84E0

Definition at line 213 of file glext.h.

#define GL_ACTIVE_TEXTURE_ARB 0x84E0

Definition at line 355 of file glext.h.

#define GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5

Definition at line 424 of file glext.h.

#define GL_ADD_ATI 0x8963

Definition at line 2224 of file glext.h.

#define GL_ADD_SIGNED 0x8574

Definition at line 270 of file glext.h.

#define GL_ADD_SIGNED_ARB 0x8574

Definition at line 497 of file glext.h.

#define GL_ADD_SIGNED_EXT 0x8574

Definition at line 1499 of file glext.h.

#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E

Definition at line 99 of file glext.h.

#define GL_ALIASED_POINT_SIZE_RANGE 0x846D

Definition at line 98 of file glext.h.

#define GL_ALL_COMPLETED_NV 0x84F2

Definition at line 1887 of file glext.h.

#define GL_ALLOW_DRAW_FRG_HINT_PGI 0x1A210

Definition at line 1214 of file glext.h.

#define GL_ALLOW_DRAW_MEM_HINT_PGI 0x1A211

Definition at line 1215 of file glext.h.

#define GL_ALLOW_DRAW_OBJ_HINT_PGI 0x1A20E

Definition at line 1212 of file glext.h.

#define GL_ALLOW_DRAW_WIN_HINT_PGI 0x1A20F

Definition at line 1213 of file glext.h.

#define GL_ALPHA12_EXT 0x803D

Definition at line 693 of file glext.h.

#define GL_ALPHA16_EXT 0x803E

Definition at line 694 of file glext.h.

#define GL_ALPHA4_EXT 0x803B

Definition at line 691 of file glext.h.

#define GL_ALPHA8_EXT 0x803C

Definition at line 692 of file glext.h.

#define GL_ALPHA_FLOAT16_ATI 0x881C

Definition at line 2560 of file glext.h.

#define GL_ALPHA_FLOAT32_ATI 0x8816

Definition at line 2554 of file glext.h.

#define GL_ALPHA_MAX_CLAMP_INGR 0x8567

Definition at line 1579 of file glext.h.

#define GL_ALPHA_MAX_SGIX 0x8321

Definition at line 1366 of file glext.h.

#define GL_ALPHA_MIN_CLAMP_INGR 0x8563

Definition at line 1575 of file glext.h.

#define GL_ALPHA_MIN_SGIX 0x8320

Definition at line 1365 of file glext.h.

#define GL_ALWAYS_FAST_HINT_PGI 0x1A20C

Definition at line 1210 of file glext.h.

#define GL_ALWAYS_SOFT_HINT_PGI 0x1A20D

Definition at line 1211 of file glext.h.

#define GL_APPLE_client_storage 1

Definition at line 5267 of file glext.h.

#define GL_APPLE_element_array 1

Definition at line 5271 of file glext.h.

#define GL_APPLE_fence 1

Definition at line 5287 of file glext.h.

#define GL_APPLE_specular_vector 1

Definition at line 4217 of file glext.h.

#define GL_APPLE_transform_hint 1

Definition at line 4221 of file glext.h.

#define GL_APPLE_vertex_array_object 1

Definition at line 5309 of file glext.h.

#define GL_APPLE_vertex_array_range 1

Definition at line 5323 of file glext.h.

#define GL_APPLE_ycbcr_422 1

Definition at line 5335 of file glext.h.

#define GL_ARB_depth_texture 1

Definition at line 3107 of file glext.h.

#define GL_ARB_fragment_program 1

Definition at line 3287 of file glext.h.

#define GL_ARB_matrix_palette 1

Definition at line 3075 of file glext.h.

#define GL_ARB_multisample 1

Definition at line 2999 of file glext.h.

#define GL_ARB_multitexture 1

Definition at line 2911 of file glext.h.

#define GL_ARB_point_parameters 1

Definition at line 3039 of file glext.h.

#define GL_ARB_shadow 1

Definition at line 3111 of file glext.h.

#define GL_ARB_shadow_ambient 1

Definition at line 3115 of file glext.h.

#define GL_ARB_texture_border_clamp 1

Definition at line 3035 of file glext.h.

#define GL_ARB_texture_compression 1

Definition at line 3015 of file glext.h.

#define GL_ARB_texture_cube_map 1

Definition at line 3011 of file glext.h.

#define GL_ARB_texture_env_add 1

Definition at line 3007 of file glext.h.

#define GL_ARB_texture_env_combine 1

Definition at line 3091 of file glext.h.

#define GL_ARB_texture_env_crossbar 1

Definition at line 3095 of file glext.h.

#define GL_ARB_texture_env_dot3 1

Definition at line 3099 of file glext.h.

#define GL_ARB_texture_mirror_repeat 1

Definition at line 3103 of file glext.h.

#define GL_ARB_transpose_matrix 1

Definition at line 2985 of file glext.h.

#define GL_ARB_vertex_blend 1

Definition at line 3049 of file glext.h.

#define GL_ARB_vertex_buffer_object 1

Definition at line 3292 of file glext.h.

#define GL_ARB_vertex_program 1

Definition at line 3157 of file glext.h.

#define GL_ARB_window_pos 1

Definition at line 3119 of file glext.h.

#define GL_ARRAY_BUFFER_ARB 0x8892

Definition at line 641 of file glext.h.

#define GL_ARRAY_BUFFER_BINDING_ARB 0x8894

Definition at line 643 of file glext.h.

#define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9

Definition at line 1290 of file glext.h.

#define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8

Definition at line 1289 of file glext.h.

#define GL_ARRAY_OBJECT_BUFFER_ATI 0x8766

Definition at line 2283 of file glext.h.

#define GL_ARRAY_OBJECT_OFFSET_ATI 0x8767

Definition at line 2284 of file glext.h.

#define GL_ASYNC_DRAW_PIXELS_SGIX 0x835D

Definition at line 1390 of file glext.h.

#define GL_ASYNC_HISTOGRAM_SGIX 0x832C

Definition at line 1398 of file glext.h.

#define GL_ASYNC_MARKER_SGIX 0x8329

Definition at line 1385 of file glext.h.

#define GL_ASYNC_READ_PIXELS_SGIX 0x835E

Definition at line 1391 of file glext.h.

#define GL_ASYNC_TEX_IMAGE_SGIX 0x835C

Definition at line 1389 of file glext.h.

#define GL_ATI_draw_buffers 1

Definition at line 5343 of file glext.h.

#define GL_ATI_element_array 1

Definition at line 5181 of file glext.h.

#define GL_ATI_envmap_bumpmap 1

Definition at line 4907 of file glext.h.

#define GL_ATI_fragment_shader 1

Definition at line 4921 of file glext.h.

#define GL_ATI_map_object_buffer 1

Definition at line 5511 of file glext.h.

#define GL_ATI_pn_triangles 1

Definition at line 4955 of file glext.h.

#define GL_ATI_separate_stencil 1

Definition at line 5521 of file glext.h.

#define GL_ATI_text_fragment_shader 1

Definition at line 5263 of file glext.h.

#define GL_ATI_texture_env_combine3 1

Definition at line 5351 of file glext.h.

#define GL_ATI_texture_float 1

Definition at line 5355 of file glext.h.

#define GL_ATI_texture_mirror_once 1

Definition at line 4667 of file glext.h.

#define GL_ATI_vertex_array_object 1

Definition at line 4965 of file glext.h.

#define GL_ATI_vertex_attrib_array_object 1

Definition at line 5531 of file glext.h.

#define GL_ATI_vertex_streams 1

Definition at line 5085 of file glext.h.

#define GL_ATTENUATION_EXT 0x834D

Definition at line 1355 of file glext.h.

#define GL_ATTRIB_ARRAY_POINTER_NV 0x8645

Definition at line 2055 of file glext.h.

#define GL_ATTRIB_ARRAY_SIZE_NV 0x8623

Definition at line 2029 of file glext.h.

#define GL_ATTRIB_ARRAY_STRIDE_NV 0x8624

Definition at line 2030 of file glext.h.

#define GL_ATTRIB_ARRAY_TYPE_NV 0x8625

Definition at line 2031 of file glext.h.

#define GL_AVERAGE_EXT 0x8335

Definition at line 1424 of file glext.h.

#define GL_AVERAGE_HP 0x8160

Definition at line 1155 of file glext.h.

#define GL_BACK_NORMALS_HINT_PGI 0x1A223

Definition at line 1223 of file glext.h.

#define GL_BGR 0x80E0

Definition at line 82 of file glext.h.

#define GL_BGR_EXT 0x80E0

Definition at line 1380 of file glext.h.

#define GL_BGRA 0x80E1

Definition at line 83 of file glext.h.

#define GL_BGRA_EXT 0x80E1

Definition at line 1381 of file glext.h.

#define GL_BIAS_BIT_ATI 0x00000008

Definition at line 2261 of file glext.h.

#define GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541

Definition at line 1694 of file glext.h.

#define GL_BINORMAL_ARRAY_EXT 0x843A

Definition at line 1479 of file glext.h.

#define GL_BINORMAL_ARRAY_POINTER_EXT 0x8443

Definition at line 1487 of file glext.h.

#define GL_BINORMAL_ARRAY_STRIDE_EXT 0x8441

Definition at line 1485 of file glext.h.

#define GL_BINORMAL_ARRAY_TYPE_EXT 0x8440

Definition at line 1484 of file glext.h.

#define GL_BLEND_COLOR 0x8005

Definition at line 107 of file glext.h.

#define GL_BLEND_COLOR_EXT 0x8005

Definition at line 681 of file glext.h.

#define GL_BLEND_DST_ALPHA 0x80CA

Definition at line 283 of file glext.h.

#define GL_BLEND_DST_ALPHA_EXT 0x80CA

Definition at line 1567 of file glext.h.

#define GL_BLEND_DST_RGB 0x80C8

Definition at line 281 of file glext.h.

#define GL_BLEND_DST_RGB_EXT 0x80C8

Definition at line 1565 of file glext.h.

#define GL_BLEND_EQUATION 0x8009

Definition at line 111 of file glext.h.

#define GL_BLEND_EQUATION_EXT 0x8009

Definition at line 1006 of file glext.h.

#define GL_BLEND_SRC_ALPHA 0x80CB

Definition at line 284 of file glext.h.

#define GL_BLEND_SRC_ALPHA_EXT 0x80CB

Definition at line 1568 of file glext.h.

#define GL_BLEND_SRC_RGB 0x80C9

Definition at line 282 of file glext.h.

#define GL_BLEND_SRC_RGB_EXT 0x80C9

Definition at line 1566 of file glext.h.

#define GL_BLUE_BIT_ATI 0x00000004

Definition at line 2251 of file glext.h.

#define GL_BLUE_MAX_CLAMP_INGR 0x8566

Definition at line 1578 of file glext.h.

#define GL_BLUE_MIN_CLAMP_INGR 0x8562

Definition at line 1574 of file glext.h.

#define GL_BUFFER_ACCESS_ARB 0x88BB

Definition at line 658 of file glext.h.

#define GL_BUFFER_MAP_POINTER_ARB 0x88BD

Definition at line 660 of file glext.h.

#define GL_BUFFER_MAPPED_ARB 0x88BC

Definition at line 659 of file glext.h.

#define GL_BUFFER_SIZE_ARB 0x8764

Definition at line 639 of file glext.h.

#define GL_BUFFER_USAGE_ARB 0x8765

Definition at line 640 of file glext.h.

#define GL_BUMP_ENVMAP_ATI 0x877B

Definition at line 2153 of file glext.h.

#define GL_BUMP_NUM_TEX_UNITS_ATI 0x8777

Definition at line 2149 of file glext.h.

#define GL_BUMP_ROT_MATRIX_ATI 0x8775

Definition at line 2147 of file glext.h.

#define GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776

Definition at line 2148 of file glext.h.

#define GL_BUMP_TARGET_ATI 0x877C

Definition at line 2154 of file glext.h.

#define GL_BUMP_TEX_UNITS_ATI 0x8778

Definition at line 2150 of file glext.h.

#define GL_CALLIGRAPHIC_FRAGMENT_SGIX 0x8183

Definition at line 1249 of file glext.h.

#define GL_CLAMP_TO_BORDER 0x812D

Definition at line 252 of file glext.h.

#define GL_CLAMP_TO_BORDER_ARB 0x812D

Definition at line 412 of file glext.h.

#define GL_CLAMP_TO_BORDER_SGIS 0x812D

Definition at line 253 of file glext.h.

#define GL_CLAMP_TO_EDGE 0x812F

Definition at line 86 of file glext.h.

#define GL_CLAMP_TO_EDGE_SGIS 0x812F

Definition at line 999 of file glext.h.

#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1

Definition at line 214 of file glext.h.

#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1

Definition at line 356 of file glext.h.

#define GL_CLIP_FAR_HINT_PGI 0x1A221

Definition at line 1221 of file glext.h.

#define GL_CLIP_NEAR_HINT_PGI 0x1A220

Definition at line 1220 of file glext.h.

#define GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0

Definition at line 1237 of file glext.h.

#define GL_CMYK_EXT 0x800C

Definition at line 863 of file glext.h.

#define GL_CMYKA_EXT 0x800D

Definition at line 864 of file glext.h.

#define GL_CND0_ATI 0x896B

Definition at line 2232 of file glext.h.

#define GL_CND_ATI 0x896A

Definition at line 2231 of file glext.h.

#define GL_COLOR3_BIT_PGI 0x00010000

Definition at line 1183 of file glext.h.

#define GL_COLOR4_BIT_PGI 0x00020000

Definition at line 1184 of file glext.h.

#define GL_COLOR_ALPHA_PAIRING_ATI 0x8975

Definition at line 2242 of file glext.h.

#define GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898

Definition at line 647 of file glext.h.

#define GL_COLOR_ARRAY_COUNT_EXT 0x8084

Definition at line 950 of file glext.h.

#define GL_COLOR_ARRAY_EXT 0x8076

Definition at line 936 of file glext.h.

#define GL_COLOR_ARRAY_LIST_IBM 103072

Definition at line 1771 of file glext.h.

#define GL_COLOR_ARRAY_LIST_STRIDE_IBM 103082

Definition at line 1779 of file glext.h.

#define GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL 0x83F7

Definition at line 1409 of file glext.h.

#define GL_COLOR_ARRAY_POINTER_EXT 0x8090

Definition at line 962 of file glext.h.

#define GL_COLOR_ARRAY_SIZE_EXT 0x8081

Definition at line 947 of file glext.h.

#define GL_COLOR_ARRAY_STRIDE_EXT 0x8083

Definition at line 949 of file glext.h.

#define GL_COLOR_ARRAY_TYPE_EXT 0x8082

Definition at line 948 of file glext.h.

#define GL_COLOR_INDEX12_EXT 0x80E6

Definition at line 1231 of file glext.h.

#define GL_COLOR_INDEX16_EXT 0x80E7

Definition at line 1232 of file glext.h.

#define GL_COLOR_INDEX1_EXT 0x80E2

Definition at line 1227 of file glext.h.

#define GL_COLOR_INDEX2_EXT 0x80E3

Definition at line 1228 of file glext.h.

#define GL_COLOR_INDEX4_EXT 0x80E4

Definition at line 1229 of file glext.h.

#define GL_COLOR_INDEX8_EXT 0x80E5

Definition at line 1230 of file glext.h.

#define GL_COLOR_MATRIX 0x80B1

Definition at line 148 of file glext.h.

#define GL_COLOR_MATRIX_SGI 0x80B1

Definition at line 800 of file glext.h.

#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2

Definition at line 149 of file glext.h.

#define GL_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B2

Definition at line 801 of file glext.h.

#define GL_COLOR_SUM 0x8458

Definition at line 303 of file glext.h.

#define GL_COLOR_SUM_ARB 0x8458

Definition at line 539 of file glext.h.

#define GL_COLOR_SUM_CLAMP_NV 0x854F

Definition at line 1708 of file glext.h.

#define GL_COLOR_SUM_EXT 0x8458

Definition at line 1444 of file glext.h.

#define GL_COLOR_TABLE 0x80D0

Definition at line 159 of file glext.h.

#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD

Definition at line 172 of file glext.h.

#define GL_COLOR_TABLE_ALPHA_SIZE_SGI 0x80DD

Definition at line 827 of file glext.h.

#define GL_COLOR_TABLE_BIAS 0x80D7

Definition at line 166 of file glext.h.

#define GL_COLOR_TABLE_BIAS_SGI 0x80D7

Definition at line 821 of file glext.h.

#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC

Definition at line 171 of file glext.h.

#define GL_COLOR_TABLE_BLUE_SIZE_SGI 0x80DC

Definition at line 826 of file glext.h.

#define GL_COLOR_TABLE_FORMAT 0x80D8

Definition at line 167 of file glext.h.

#define GL_COLOR_TABLE_FORMAT_SGI 0x80D8

Definition at line 822 of file glext.h.

#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB

Definition at line 170 of file glext.h.

#define GL_COLOR_TABLE_GREEN_SIZE_SGI 0x80DB

Definition at line 825 of file glext.h.

#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF

Definition at line 174 of file glext.h.

#define GL_COLOR_TABLE_INTENSITY_SIZE_SGI 0x80DF

Definition at line 829 of file glext.h.

#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE

Definition at line 173 of file glext.h.

#define GL_COLOR_TABLE_LUMINANCE_SIZE_SGI 0x80DE

Definition at line 828 of file glext.h.

#define GL_COLOR_TABLE_RED_SIZE 0x80DA

Definition at line 169 of file glext.h.

#define GL_COLOR_TABLE_RED_SIZE_SGI 0x80DA

Definition at line 824 of file glext.h.

#define GL_COLOR_TABLE_SCALE 0x80D6

Definition at line 165 of file glext.h.

#define GL_COLOR_TABLE_SCALE_SGI 0x80D6

Definition at line 820 of file glext.h.

#define GL_COLOR_TABLE_SGI 0x80D0

Definition at line 814 of file glext.h.

#define GL_COLOR_TABLE_WIDTH 0x80D9

Definition at line 168 of file glext.h.

#define GL_COLOR_TABLE_WIDTH_SGI 0x80D9

Definition at line 823 of file glext.h.

#define GL_COMBINE 0x8570

Definition at line 254 of file glext.h.

#define GL_COMBINE4_NV 0x8503

Definition at line 1741 of file glext.h.

#define GL_COMBINE_ALPHA 0x8572

Definition at line 256 of file glext.h.

#define GL_COMBINE_ALPHA_ARB 0x8572

Definition at line 483 of file glext.h.

#define GL_COMBINE_ALPHA_EXT 0x8572

Definition at line 1497 of file glext.h.

#define GL_COMBINE_ARB 0x8570

Definition at line 481 of file glext.h.

#define GL_COMBINE_EXT 0x8570

Definition at line 1495 of file glext.h.

#define GL_COMBINE_RGB 0x8571

Definition at line 255 of file glext.h.

#define GL_COMBINE_RGB_ARB 0x8571

Definition at line 482 of file glext.h.

#define GL_COMBINE_RGB_EXT 0x8571

Definition at line 1496 of file glext.h.

#define GL_COMBINER0_NV 0x8550

Definition at line 1709 of file glext.h.

#define GL_COMBINER1_NV 0x8551

Definition at line 1710 of file glext.h.

#define GL_COMBINER2_NV 0x8552

Definition at line 1711 of file glext.h.

#define GL_COMBINER3_NV 0x8553

Definition at line 1712 of file glext.h.

#define GL_COMBINER4_NV 0x8554

Definition at line 1713 of file glext.h.

#define GL_COMBINER5_NV 0x8555

Definition at line 1714 of file glext.h.

#define GL_COMBINER6_NV 0x8556

Definition at line 1715 of file glext.h.

#define GL_COMBINER7_NV 0x8557

Definition at line 1716 of file glext.h.

#define GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545

Definition at line 1698 of file glext.h.

#define GL_COMBINER_AB_OUTPUT_NV 0x854A

Definition at line 1703 of file glext.h.

#define GL_COMBINER_BIAS_NV 0x8549

Definition at line 1702 of file glext.h.

#define GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546

Definition at line 1699 of file glext.h.

#define GL_COMBINER_CD_OUTPUT_NV 0x854B

Definition at line 1704 of file glext.h.

#define GL_COMBINER_COMPONENT_USAGE_NV 0x8544

Definition at line 1697 of file glext.h.

#define GL_COMBINER_INPUT_NV 0x8542

Definition at line 1695 of file glext.h.

#define GL_COMBINER_MAPPING_NV 0x8543

Definition at line 1696 of file glext.h.

#define GL_COMBINER_MUX_SUM_NV 0x8547

Definition at line 1700 of file glext.h.

#define GL_COMBINER_SCALE_NV 0x8548

Definition at line 1701 of file glext.h.

#define GL_COMBINER_SUM_OUTPUT_NV 0x854C

Definition at line 1705 of file glext.h.

#define GL_COMP_BIT_ATI 0x00000002

Definition at line 2259 of file glext.h.

#define GL_COMPARE_R_TO_TEXTURE 0x884E

Definition at line 319 of file glext.h.

#define GL_COMPARE_R_TO_TEXTURE_ARB 0x884E

Definition at line 528 of file glext.h.

#define GL_COMPRESSED_ALPHA 0x84E9

Definition at line 241 of file glext.h.

#define GL_COMPRESSED_ALPHA_ARB 0x84E9

Definition at line 398 of file glext.h.

#define GL_COMPRESSED_INTENSITY 0x84EC

Definition at line 244 of file glext.h.

#define GL_COMPRESSED_INTENSITY_ARB 0x84EC

Definition at line 401 of file glext.h.

#define GL_COMPRESSED_LUMINANCE 0x84EA

Definition at line 242 of file glext.h.

#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB

Definition at line 243 of file glext.h.

#define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB

Definition at line 400 of file glext.h.

#define GL_COMPRESSED_LUMINANCE_ARB 0x84EA

Definition at line 399 of file glext.h.

#define GL_COMPRESSED_RGB 0x84ED

Definition at line 245 of file glext.h.

#define GL_COMPRESSED_RGB_ARB 0x84ED

Definition at line 402 of file glext.h.

#define GL_COMPRESSED_RGB_FXT1_3DFX 0x86B0

Definition at line 1810 of file glext.h.

#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0

Definition at line 1755 of file glext.h.

#define GL_COMPRESSED_RGBA 0x84EE

Definition at line 246 of file glext.h.

#define GL_COMPRESSED_RGBA_ARB 0x84EE

Definition at line 403 of file glext.h.

#define GL_COMPRESSED_RGBA_FXT1_3DFX 0x86B1

Definition at line 1811 of file glext.h.

#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1

Definition at line 1756 of file glext.h.

#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2

Definition at line 1757 of file glext.h.

#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3

Definition at line 1758 of file glext.h.

#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3

Definition at line 251 of file glext.h.

#define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3

Definition at line 408 of file glext.h.

#define GL_CON_0_ATI 0x8941

Definition at line 2191 of file glext.h.

#define GL_CON_10_ATI 0x894B

Definition at line 2201 of file glext.h.

#define GL_CON_11_ATI 0x894C

Definition at line 2202 of file glext.h.

#define GL_CON_12_ATI 0x894D

Definition at line 2203 of file glext.h.

#define GL_CON_13_ATI 0x894E

Definition at line 2204 of file glext.h.

#define GL_CON_14_ATI 0x894F

Definition at line 2205 of file glext.h.

#define GL_CON_15_ATI 0x8950

Definition at line 2206 of file glext.h.

#define GL_CON_16_ATI 0x8951

Definition at line 2207 of file glext.h.

#define GL_CON_17_ATI 0x8952

Definition at line 2208 of file glext.h.

#define GL_CON_18_ATI 0x8953

Definition at line 2209 of file glext.h.

#define GL_CON_19_ATI 0x8954

Definition at line 2210 of file glext.h.

#define GL_CON_1_ATI 0x8942

Definition at line 2192 of file glext.h.

#define GL_CON_20_ATI 0x8955

Definition at line 2211 of file glext.h.

#define GL_CON_21_ATI 0x8956

Definition at line 2212 of file glext.h.

#define GL_CON_22_ATI 0x8957

Definition at line 2213 of file glext.h.

#define GL_CON_23_ATI 0x8958

Definition at line 2214 of file glext.h.

#define GL_CON_24_ATI 0x8959

Definition at line 2215 of file glext.h.

#define GL_CON_25_ATI 0x895A

Definition at line 2216 of file glext.h.

#define GL_CON_26_ATI 0x895B

Definition at line 2217 of file glext.h.

#define GL_CON_27_ATI 0x895C

Definition at line 2218 of file glext.h.

#define GL_CON_28_ATI 0x895D

Definition at line 2219 of file glext.h.

#define GL_CON_29_ATI 0x895E

Definition at line 2220 of file glext.h.

#define GL_CON_2_ATI 0x8943

Definition at line 2193 of file glext.h.

#define GL_CON_30_ATI 0x895F

Definition at line 2221 of file glext.h.

#define GL_CON_31_ATI 0x8960

Definition at line 2222 of file glext.h.

#define GL_CON_3_ATI 0x8944

Definition at line 2194 of file glext.h.

#define GL_CON_4_ATI 0x8945

Definition at line 2195 of file glext.h.

#define GL_CON_5_ATI 0x8946

Definition at line 2196 of file glext.h.

#define GL_CON_6_ATI 0x8947

Definition at line 2197 of file glext.h.

#define GL_CON_7_ATI 0x8948

Definition at line 2198 of file glext.h.

#define GL_CON_8_ATI 0x8949

Definition at line 2199 of file glext.h.

#define GL_CON_9_ATI 0x894A

Definition at line 2200 of file glext.h.

#define GL_CONSERVE_MEMORY_HINT_PGI 0x1A1FD

Definition at line 1205 of file glext.h.

#define GL_CONST_EYE_NV 0x86E5

Definition at line 1961 of file glext.h.

#define GL_CONSTANT 0x8576

Definition at line 273 of file glext.h.

#define GL_CONSTANT_ALPHA 0x8003

Definition at line 105 of file glext.h.

#define GL_CONSTANT_ALPHA_EXT 0x8003

Definition at line 679 of file glext.h.

#define GL_CONSTANT_ARB 0x8576

Definition at line 500 of file glext.h.

#define GL_CONSTANT_BORDER 0x8151

Definition at line 175 of file glext.h.

#define GL_CONSTANT_BORDER_HP 0x8151

Definition at line 1163 of file glext.h.

#define GL_CONSTANT_COLOR 0x8001

Definition at line 103 of file glext.h.

#define GL_CONSTANT_COLOR0_NV 0x852A

Definition at line 1674 of file glext.h.

#define GL_CONSTANT_COLOR1_NV 0x852B

Definition at line 1675 of file glext.h.

#define GL_CONSTANT_COLOR_EXT 0x8001

Definition at line 677 of file glext.h.

#define GL_CONSTANT_EXT 0x8576

Definition at line 1501 of file glext.h.

#define GL_CONVOLUTION_1D 0x8010

Definition at line 114 of file glext.h.

#define GL_CONVOLUTION_1D_EXT 0x8010

Definition at line 777 of file glext.h.

#define GL_CONVOLUTION_2D 0x8011

Definition at line 115 of file glext.h.

#define GL_CONVOLUTION_2D_EXT 0x8011

Definition at line 778 of file glext.h.

#define GL_CONVOLUTION_BORDER_COLOR 0x8154

Definition at line 177 of file glext.h.

#define GL_CONVOLUTION_BORDER_COLOR_HP 0x8154

Definition at line 1165 of file glext.h.

#define GL_CONVOLUTION_BORDER_MODE 0x8013

Definition at line 117 of file glext.h.

#define GL_CONVOLUTION_BORDER_MODE_EXT 0x8013

Definition at line 780 of file glext.h.

#define GL_CONVOLUTION_FILTER_BIAS 0x8015

Definition at line 119 of file glext.h.

#define GL_CONVOLUTION_FILTER_BIAS_EXT 0x8015

Definition at line 782 of file glext.h.

#define GL_CONVOLUTION_FILTER_SCALE 0x8014

Definition at line 118 of file glext.h.

#define GL_CONVOLUTION_FILTER_SCALE_EXT 0x8014

Definition at line 781 of file glext.h.

#define GL_CONVOLUTION_FORMAT 0x8017

Definition at line 121 of file glext.h.

#define GL_CONVOLUTION_FORMAT_EXT 0x8017

Definition at line 784 of file glext.h.

#define GL_CONVOLUTION_HEIGHT 0x8019

Definition at line 123 of file glext.h.

#define GL_CONVOLUTION_HEIGHT_EXT 0x8019

Definition at line 786 of file glext.h.

#define GL_CONVOLUTION_HINT_SGIX 0x8316

Definition at line 1850 of file glext.h.

#define GL_CONVOLUTION_WIDTH 0x8018

Definition at line 122 of file glext.h.

#define GL_CONVOLUTION_WIDTH_EXT 0x8018

Definition at line 785 of file glext.h.

#define GL_COORD_REPLACE_NV 0x8862

Definition at line 2445 of file glext.h.

#define GL_CUBIC_EXT 0x8334

Definition at line 1423 of file glext.h.

#define GL_CUBIC_HP 0x815F

Definition at line 1154 of file glext.h.

#define GL_CULL_FRAGMENT_NV 0x86E7

Definition at line 1963 of file glext.h.

#define GL_CULL_MODES_NV 0x86E0

Definition at line 1953 of file glext.h.

#define GL_CULL_VERTEX_EXT 0x81AA

Definition at line 1294 of file glext.h.

#define GL_CULL_VERTEX_EYE_POSITION_EXT 0x81AB

Definition at line 1295 of file glext.h.

#define GL_CULL_VERTEX_IBM 103050

Definition at line 1762 of file glext.h.

#define GL_CULL_VERTEX_OBJECT_POSITION_EXT 0x81AC

Definition at line 1296 of file glext.h.

#define GL_CURRENT_ATTRIB_NV 0x8626

Definition at line 2032 of file glext.h.

#define GL_CURRENT_BINORMAL_EXT 0x843C

Definition at line 1481 of file glext.h.

#define GL_CURRENT_FOG_COORDINATE 0x8453

Definition at line 298 of file glext.h.

#define GL_CURRENT_FOG_COORDINATE_EXT 0x8453

Definition at line 1465 of file glext.h.

#define GL_CURRENT_MATRIX_ARB 0x8641

Definition at line 551 of file glext.h.

#define GL_CURRENT_MATRIX_INDEX_ARB 0x8845

Definition at line 473 of file glext.h.

#define GL_CURRENT_MATRIX_NV 0x8641

Definition at line 2051 of file glext.h.

#define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640

Definition at line 550 of file glext.h.

#define GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640

Definition at line 2050 of file glext.h.

#define GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865

Definition at line 2438 of file glext.h.

#define GL_CURRENT_PALETTE_MATRIX_ARB 0x8843

Definition at line 471 of file glext.h.

#define GL_CURRENT_RASTER_NORMAL_SGIX 0x8406

Definition at line 1311 of file glext.h.

#define GL_CURRENT_SECONDARY_COLOR 0x8459

Definition at line 304 of file glext.h.

#define GL_CURRENT_SECONDARY_COLOR_EXT 0x8459

Definition at line 1445 of file glext.h.

#define GL_CURRENT_TANGENT_EXT 0x843B

Definition at line 1480 of file glext.h.

#define GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626

Definition at line 545 of file glext.h.

#define GL_CURRENT_VERTEX_EXT 0x87E2

Definition at line 2386 of file glext.h.

#define GL_CURRENT_VERTEX_WEIGHT_EXT 0x850B

Definition at line 1644 of file glext.h.

#define GL_CURRENT_WEIGHT_ARB 0x86A8

Definition at line 427 of file glext.h.

#define GL_DECR_WRAP 0x8508

Definition at line 314 of file glext.h.

#define GL_DECR_WRAP_EXT 0x8508

Definition at line 1588 of file glext.h.

#define GL_DEFORMATIONS_MASK_SGIX 0x8196

Definition at line 1114 of file glext.h.

#define GL_DEPENDENT_AR_TEXTURE_2D_NV 0x86E9

Definition at line 1965 of file glext.h.

#define GL_DEPENDENT_GB_TEXTURE_2D_NV 0x86EA

Definition at line 1966 of file glext.h.

#define GL_DEPENDENT_HILO_TEXTURE_2D_NV 0x8858

Definition at line 2458 of file glext.h.

#define GL_DEPENDENT_RGB_TEXTURE_3D_NV 0x8859

Definition at line 2459 of file glext.h.

#define GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV 0x885A

Definition at line 2460 of file glext.h.

#define GL_DEPTH_CLAMP_NV 0x864F

Definition at line 2433 of file glext.h.

#define GL_DEPTH_COMPONENT16 0x81A5

Definition at line 291 of file glext.h.

#define GL_DEPTH_COMPONENT16_ARB 0x81A5

Definition at line 518 of file glext.h.

#define GL_DEPTH_COMPONENT16_SGIX 0x81A5

Definition at line 1127 of file glext.h.

#define GL_DEPTH_COMPONENT24 0x81A6

Definition at line 292 of file glext.h.

#define GL_DEPTH_COMPONENT24_ARB 0x81A6

Definition at line 519 of file glext.h.

#define GL_DEPTH_COMPONENT24_SGIX 0x81A6

Definition at line 1128 of file glext.h.

#define GL_DEPTH_COMPONENT32 0x81A7

Definition at line 293 of file glext.h.

#define GL_DEPTH_COMPONENT32_ARB 0x81A7

Definition at line 520 of file glext.h.

#define GL_DEPTH_COMPONENT32_SGIX 0x81A7

Definition at line 1129 of file glext.h.

#define GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX 0x8311

Definition at line 1805 of file glext.h.

#define GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX 0x8312

Definition at line 1806 of file glext.h.

#define GL_DEPTH_PASS_INSTRUMENT_SGIX 0x8310

Definition at line 1804 of file glext.h.

#define GL_DEPTH_STENCIL_NV 0x84F9

Definition at line 1924 of file glext.h.

#define GL_DEPTH_STENCIL_TO_BGRA_NV 0x886F

Definition at line 2143 of file glext.h.

#define GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E

Definition at line 2142 of file glext.h.

#define GL_DEPTH_TEXTURE_MODE 0x884B

Definition at line 316 of file glext.h.

#define GL_DEPTH_TEXTURE_MODE_ARB 0x884B

Definition at line 522 of file glext.h.

#define GL_DETAIL_TEXTURE_2D_BINDING_SGIS 0x8096

Definition at line 879 of file glext.h.

#define GL_DETAIL_TEXTURE_2D_SGIS 0x8095

Definition at line 878 of file glext.h.

#define GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS 0x809C

Definition at line 885 of file glext.h.

#define GL_DETAIL_TEXTURE_LEVEL_SGIS 0x809A

Definition at line 883 of file glext.h.

#define GL_DETAIL_TEXTURE_MODE_SGIS 0x809B

Definition at line 884 of file glext.h.

#define GL_DISCARD_ATI 0x8763

Definition at line 2280 of file glext.h.

#define GL_DISCARD_NV 0x8530

Definition at line 1680 of file glext.h.

#define GL_DISTANCE_ATTENUATION_EXT 0x8129

Definition at line 1075 of file glext.h.

#define GL_DISTANCE_ATTENUATION_SGIS 0x8129

Definition at line 1082 of file glext.h.

#define GL_DOT2_ADD_ATI 0x896C

Definition at line 2233 of file glext.h.

#define GL_DOT3_ATI 0x8966

Definition at line 2227 of file glext.h.

#define GL_DOT3_RGB 0x86AE

Definition at line 276 of file glext.h.

#define GL_DOT3_RGB_ARB 0x86AE

Definition at line 509 of file glext.h.

#define GL_DOT3_RGB_EXT 0x8740

Definition at line 1877 of file glext.h.

#define GL_DOT3_RGBA 0x86AF

Definition at line 277 of file glext.h.

#define GL_DOT3_RGBA_ARB 0x86AF

Definition at line 510 of file glext.h.

#define GL_DOT3_RGBA_EXT 0x8741

Definition at line 1878 of file glext.h.

#define GL_DOT4_ATI 0x8967

Definition at line 2228 of file glext.h.

#define GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV 0x885D

Definition at line 2463 of file glext.h.

#define GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86F3

Definition at line 1973 of file glext.h.

#define GL_DOT_PRODUCT_DEPTH_REPLACE_NV 0x86ED

Definition at line 1968 of file glext.h.

#define GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86F1

Definition at line 1971 of file glext.h.

#define GL_DOT_PRODUCT_NV 0x86EC

Definition at line 1967 of file glext.h.

#define GL_DOT_PRODUCT_PASS_THROUGH_NV 0x885B

Definition at line 2461 of file glext.h.

#define GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86F2

Definition at line 1972 of file glext.h.

#define GL_DOT_PRODUCT_TEXTURE_1D_NV 0x885C

Definition at line 2462 of file glext.h.

#define GL_DOT_PRODUCT_TEXTURE_2D_NV 0x86EE

Definition at line 1969 of file glext.h.

#define GL_DOT_PRODUCT_TEXTURE_3D_NV 0x86EF

Definition at line 2019 of file glext.h.

#define GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86F0

Definition at line 1970 of file glext.h.

#define GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864E

Definition at line 1945 of file glext.h.

#define GL_DRAW_BUFFER0_ATI 0x8825

Definition at line 2527 of file glext.h.

#define GL_DRAW_BUFFER10_ATI 0x882F

Definition at line 2537 of file glext.h.

#define GL_DRAW_BUFFER11_ATI 0x8830

Definition at line 2538 of file glext.h.

#define GL_DRAW_BUFFER12_ATI 0x8831

Definition at line 2539 of file glext.h.

#define GL_DRAW_BUFFER13_ATI 0x8832

Definition at line 2540 of file glext.h.

#define GL_DRAW_BUFFER14_ATI 0x8833

Definition at line 2541 of file glext.h.

#define GL_DRAW_BUFFER15_ATI 0x8834

Definition at line 2542 of file glext.h.

#define GL_DRAW_BUFFER1_ATI 0x8826

Definition at line 2528 of file glext.h.

#define GL_DRAW_BUFFER2_ATI 0x8827

Definition at line 2529 of file glext.h.

#define GL_DRAW_BUFFER3_ATI 0x8828

Definition at line 2530 of file glext.h.

#define GL_DRAW_BUFFER4_ATI 0x8829

Definition at line 2531 of file glext.h.

#define GL_DRAW_BUFFER5_ATI 0x882A

Definition at line 2532 of file glext.h.

#define GL_DRAW_BUFFER6_ATI 0x882B

Definition at line 2533 of file glext.h.

#define GL_DRAW_BUFFER7_ATI 0x882C

Definition at line 2534 of file glext.h.

#define GL_DRAW_BUFFER8_ATI 0x882D

Definition at line 2535 of file glext.h.

#define GL_DRAW_BUFFER9_ATI 0x882E

Definition at line 2536 of file glext.h.

#define GL_DRAW_PIXELS_APPLE 0x8A0A

Definition at line 2495 of file glext.h.

#define GL_DS_BIAS_NV 0x8716

Definition at line 2006 of file glext.h.

#define GL_DS_SCALE_NV 0x8710

Definition at line 2000 of file glext.h.

#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B

Definition at line 1995 of file glext.h.

#define GL_DSDT8_MAG8_NV 0x870A

Definition at line 1994 of file glext.h.

#define GL_DSDT8_NV 0x8709

Definition at line 1993 of file glext.h.

#define GL_DSDT_MAG_INTENSITY_NV 0x86DC

Definition at line 1949 of file glext.h.

#define GL_DSDT_MAG_NV 0x86F6

Definition at line 1976 of file glext.h.

#define GL_DSDT_MAG_VIB_NV 0x86F7

Definition at line 1977 of file glext.h.

#define GL_DSDT_NV 0x86F5

Definition at line 1975 of file glext.h.

#define GL_DT_BIAS_NV 0x8717

Definition at line 2007 of file glext.h.

#define GL_DT_SCALE_NV 0x8711

Definition at line 2001 of file glext.h.

#define GL_DU8DV8_ATI 0x877A

Definition at line 2152 of file glext.h.

#define GL_DUAL_ALPHA12_SGIS 0x8112

Definition at line 1035 of file glext.h.

#define GL_DUAL_ALPHA16_SGIS 0x8113

Definition at line 1036 of file glext.h.

#define GL_DUAL_ALPHA4_SGIS 0x8110

Definition at line 1033 of file glext.h.

#define GL_DUAL_ALPHA8_SGIS 0x8111

Definition at line 1034 of file glext.h.

#define GL_DUAL_INTENSITY12_SGIS 0x811A

Definition at line 1043 of file glext.h.

#define GL_DUAL_INTENSITY16_SGIS 0x811B

Definition at line 1044 of file glext.h.

#define GL_DUAL_INTENSITY4_SGIS 0x8118

Definition at line 1041 of file glext.h.

#define GL_DUAL_INTENSITY8_SGIS 0x8119

Definition at line 1042 of file glext.h.

#define GL_DUAL_LUMINANCE12_SGIS 0x8116

Definition at line 1039 of file glext.h.

#define GL_DUAL_LUMINANCE16_SGIS 0x8117

Definition at line 1040 of file glext.h.

#define GL_DUAL_LUMINANCE4_SGIS 0x8114

Definition at line 1037 of file glext.h.

#define GL_DUAL_LUMINANCE8_SGIS 0x8115

Definition at line 1038 of file glext.h.

#define GL_DUAL_LUMINANCE_ALPHA4_SGIS 0x811C

Definition at line 1045 of file glext.h.

#define GL_DUAL_LUMINANCE_ALPHA8_SGIS 0x811D

Definition at line 1046 of file glext.h.

#define GL_DUAL_TEXTURE_SELECT_SGIS 0x8124

Definition at line 1053 of file glext.h.

#define GL_DUDV_ATI 0x8779

Definition at line 2151 of file glext.h.

#define GL_DYNAMIC_ATI 0x8761

Definition at line 2278 of file glext.h.

#define GL_DYNAMIC_COPY_ARB 0x88EA

Definition at line 669 of file glext.h.

#define GL_DYNAMIC_DRAW_ARB 0x88E8

Definition at line 667 of file glext.h.

#define GL_DYNAMIC_READ_ARB 0x88E9

Definition at line 668 of file glext.h.

#define GL_E_TIMES_F_NV 0x8531

Definition at line 1681 of file glext.h.

#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B

Definition at line 650 of file glext.h.

#define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D

Definition at line 959 of file glext.h.

#define GL_EDGE_FLAG_ARRAY_EXT 0x8079

Definition at line 939 of file glext.h.

#define GL_EDGE_FLAG_ARRAY_LIST_IBM 103075

Definition at line 1774 of file glext.h.

#define GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM 103085

Definition at line 1782 of file glext.h.

#define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093

Definition at line 965 of file glext.h.

#define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C

Definition at line 958 of file glext.h.

#define GL_EDGEFLAG_BIT_PGI 0x00040000

Definition at line 1185 of file glext.h.

#define GL_EIGHTH_BIT_ATI 0x00000020

Definition at line 2257 of file glext.h.

#define GL_ELEMENT_ARRAY_APPLE 0x8768

Definition at line 2489 of file glext.h.

#define GL_ELEMENT_ARRAY_ATI 0x8768

Definition at line 2414 of file glext.h.

#define GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893

Definition at line 642 of file glext.h.

#define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895

Definition at line 644 of file glext.h.

#define GL_ELEMENT_ARRAY_POINTER_APPLE 0x876A

Definition at line 2491 of file glext.h.

#define GL_ELEMENT_ARRAY_POINTER_ATI 0x876A

Definition at line 2416 of file glext.h.

#define GL_ELEMENT_ARRAY_TYPE_APPLE 0x8769

Definition at line 2490 of file glext.h.

#define GL_ELEMENT_ARRAY_TYPE_ATI 0x8769

Definition at line 2415 of file glext.h.

#define GL_EMBOSS_CONSTANT_NV 0x855E

Definition at line 1733 of file glext.h.

#define GL_EMBOSS_LIGHT_NV 0x855D

Definition at line 1732 of file glext.h.

#define GL_EMBOSS_MAP_NV 0x855F

Definition at line 1734 of file glext.h.

#define GL_EVAL_2D_NV 0x86C0

Definition at line 1897 of file glext.h.

#define GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5

Definition at line 1902 of file glext.h.

#define GL_EVAL_TRIANGULAR_2D_NV 0x86C1

Definition at line 1898 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB0_NV 0x86C6

Definition at line 1903 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB10_NV 0x86D0

Definition at line 1913 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB11_NV 0x86D1

Definition at line 1914 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB12_NV 0x86D2

Definition at line 1915 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB13_NV 0x86D3

Definition at line 1916 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB14_NV 0x86D4

Definition at line 1917 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB15_NV 0x86D5

Definition at line 1918 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB1_NV 0x86C7

Definition at line 1904 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB2_NV 0x86C8

Definition at line 1905 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB3_NV 0x86C9

Definition at line 1906 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB4_NV 0x86CA

Definition at line 1907 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB5_NV 0x86CB

Definition at line 1908 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB6_NV 0x86CC

Definition at line 1909 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB7_NV 0x86CD

Definition at line 1910 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB8_NV 0x86CE

Definition at line 1911 of file glext.h.

#define GL_EVAL_VERTEX_ATTRIB9_NV 0x86CF

Definition at line 1912 of file glext.h.

#define GL_EXPAND_NEGATE_NV 0x8539

Definition at line 1686 of file glext.h.

#define GL_EXPAND_NORMAL_NV 0x8538

Definition at line 1685 of file glext.h.

#define GL_EXT_422_pixels 1

Definition at line 4393 of file glext.h.

#define GL_EXT_abgr 1

Definition at line 3325 of file glext.h.

#define GL_EXT_bgra 1

Definition at line 4011 of file glext.h.

#define GL_EXT_blend_color 1

Definition at line 3329 of file glext.h.

#define GL_EXT_blend_func_separate 1

Definition at line 4365 of file glext.h.

#define GL_EXT_blend_logic_op 1

Definition at line 3641 of file glext.h.

#define GL_EXT_blend_minmax 1

Definition at line 3629 of file glext.h.

#define GL_EXT_blend_subtract 1

Definition at line 3637 of file glext.h.

#define GL_EXT_clip_volume_hint 1

Definition at line 3843 of file glext.h.

#define GL_EXT_cmyka 1

Definition at line 3517 of file glext.h.

#define GL_EXT_color_matrix 1

Definition at line 3453 of file glext.h.

#define GL_EXT_color_subtable 1

Definition at line 3807 of file glext.h.

#define GL_EXT_compiled_vertex_array 1

Definition at line 3905 of file glext.h.

#define GL_EXT_convolution 1

Definition at line 3421 of file glext.h.

#define GL_EXT_coordinate_frame 1

Definition at line 4163 of file glext.h.

#define GL_EXT_copy_texture 1

Definition at line 3379 of file glext.h.

#define GL_EXT_cull_vertex 1

Definition at line 3915 of file glext.h.

#define GL_EXT_draw_range_elements 1

Definition at line 3979 of file glext.h.

#define GL_EXT_fog_coord 1

Definition at line 4143 of file glext.h.

#define GL_EXT_histogram 1

Definition at line 3395 of file glext.h.

#define GL_EXT_index_array_formats 1

Definition at line 3901 of file glext.h.

#define GL_EXT_index_func 1

Definition at line 3893 of file glext.h.

#define GL_EXT_index_material 1

Definition at line 3885 of file glext.h.

#define GL_EXT_index_texture 1

Definition at line 3881 of file glext.h.

#define GL_EXT_light_texture 1

Definition at line 3995 of file glext.h.

#define GL_EXT_misc_attribute 1

Definition at line 3605 of file glext.h.

#define GL_EXT_multi_draw_arrays 1

Definition at line 4133 of file glext.h.

#define GL_EXT_multisample 1

Definition at line 4621 of file glext.h.

#define GL_EXT_packed_pixels 1

Definition at line 3559 of file glext.h.

#define GL_EXT_paletted_texture 1

Definition at line 3829 of file glext.h.

#define GL_EXT_pixel_transform 1

Definition at line 4059 of file glext.h.

#define GL_EXT_pixel_transform_color_table 1

Definition at line 4073 of file glext.h.

#define GL_EXT_point_parameters 1

Definition at line 3675 of file glext.h.

#define GL_EXT_polygon_offset 1

Definition at line 3337 of file glext.h.

#define GL_EXT_rescale_normal 1

Definition at line 3577 of file glext.h.

#define GL_EXT_secondary_color 1

Definition at line 4085 of file glext.h.

#define GL_EXT_separate_specular_color 1

Definition at line 4081 of file glext.h.

#define GL_EXT_shadow_funcs 1

Definition at line 5251 of file glext.h.

#define GL_EXT_shared_texture_palette 1

Definition at line 4077 of file glext.h.

#define GL_EXT_stencil_two_side 1

Definition at line 5255 of file glext.h.

#define GL_EXT_stencil_wrap 1

Definition at line 4389 of file glext.h.

#define GL_EXT_subtexture 1

Definition at line 3369 of file glext.h.

#define GL_EXT_texture 1

Definition at line 3345 of file glext.h.

#define GL_EXT_texture3D 1

Definition at line 3349 of file glext.h.

#define GL_EXT_texture_env_add 1

Definition at line 4405 of file glext.h.

#define GL_EXT_texture_env_combine 1

Definition at line 4213 of file glext.h.

#define GL_EXT_texture_env_dot3 1

Definition at line 4663 of file glext.h.

#define GL_EXT_texture_filter_anisotropic 1

Definition at line 4413 of file glext.h.

#define GL_EXT_texture_lod_bias 1

Definition at line 4409 of file glext.h.

#define GL_EXT_texture_object 1

Definition at line 3521 of file glext.h.

#define GL_EXT_texture_perturb_normal 1

Definition at line 4125 of file glext.h.

#define GL_EXT_vertex_array 1

Definition at line 3581 of file glext.h.

#define GL_EXT_vertex_shader 1

Definition at line 4995 of file glext.h.

#define GL_EXT_vertex_weighting 1

Definition at line 4417 of file glext.h.

#define GL_EYE_DISTANCE_TO_LINE_SGIS 0x81F2

Definition at line 1864 of file glext.h.

#define GL_EYE_DISTANCE_TO_POINT_SGIS 0x81F0

Definition at line 1862 of file glext.h.

#define GL_EYE_LINE_SGIS 0x81F6

Definition at line 1868 of file glext.h.

#define GL_EYE_PLANE_ABSOLUTE_NV 0x855C

Definition at line 1727 of file glext.h.

#define GL_EYE_POINT_SGIS 0x81F4

Definition at line 1866 of file glext.h.

#define GL_EYE_RADIAL_NV 0x855B

Definition at line 1726 of file glext.h.

#define GL_FENCE_APPLE 0x8A0B

Definition at line 2496 of file glext.h.

#define GL_FENCE_CONDITION_NV 0x84F4

Definition at line 1889 of file glext.h.

#define GL_FENCE_STATUS_NV 0x84F3

Definition at line 1888 of file glext.h.

#define GL_FILTER4_SGIS 0x8146

Definition at line 749 of file glext.h.

#define GL_FLOAT_CLEAR_COLOR_VALUE_NV 0x888D

Definition at line 2580 of file glext.h.

#define GL_FLOAT_R16_NV 0x8884

Definition at line 2571 of file glext.h.

#define GL_FLOAT_R32_NV 0x8885

Definition at line 2572 of file glext.h.

#define GL_FLOAT_R_NV 0x8880

Definition at line 2567 of file glext.h.

#define GL_FLOAT_RG16_NV 0x8886

Definition at line 2573 of file glext.h.

#define GL_FLOAT_RG32_NV 0x8887

Definition at line 2574 of file glext.h.

#define GL_FLOAT_RG_NV 0x8881

Definition at line 2568 of file glext.h.

#define GL_FLOAT_RGB16_NV 0x8888

Definition at line 2575 of file glext.h.

#define GL_FLOAT_RGB32_NV 0x8889

Definition at line 2576 of file glext.h.

#define GL_FLOAT_RGB_NV 0x8882

Definition at line 2569 of file glext.h.

#define GL_FLOAT_RGBA16_NV 0x888A

Definition at line 2577 of file glext.h.

#define GL_FLOAT_RGBA32_NV 0x888B

Definition at line 2578 of file glext.h.

#define GL_FLOAT_RGBA_MODE_NV 0x888E

Definition at line 2581 of file glext.h.

#define GL_FLOAT_RGBA_NV 0x8883

Definition at line 2570 of file glext.h.

#define GL_FOG_COORDINATE 0x8451

Definition at line 296 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY 0x8457

Definition at line 302 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D

Definition at line 652 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_EXT 0x8457

Definition at line 1469 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_LIST_IBM 103076

Definition at line 1775 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM 103086

Definition at line 1783 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456

Definition at line 301 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456

Definition at line 1468 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455

Definition at line 300 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455

Definition at line 1467 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454

Definition at line 299 of file glext.h.

#define GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454

Definition at line 1466 of file glext.h.

#define GL_FOG_COORDINATE_EXT 0x8451

Definition at line 1463 of file glext.h.

#define GL_FOG_COORDINATE_SOURCE 0x8450

Definition at line 295 of file glext.h.

#define GL_FOG_COORDINATE_SOURCE_EXT 0x8450

Definition at line 1462 of file glext.h.

#define GL_FOG_DISTANCE_MODE_NV 0x855A

Definition at line 1725 of file glext.h.

#define GL_FOG_FUNC_POINTS_SGIS 0x812B

Definition at line 1134 of file glext.h.

#define GL_FOG_FUNC_SGIS 0x812A

Definition at line 1133 of file glext.h.

#define GL_FOG_OFFSET_SGIX 0x8198

Definition at line 1139 of file glext.h.

#define GL_FOG_OFFSET_VALUE_SGIX 0x8199

Definition at line 1140 of file glext.h.

#define GL_FOG_SCALE_SGIX 0x81FC

Definition at line 1527 of file glext.h.

#define GL_FOG_SCALE_VALUE_SGIX 0x81FD

Definition at line 1528 of file glext.h.

#define GL_FOG_SPECULAR_TEXTURE_WIN 0x80EC

Definition at line 1348 of file glext.h.

#define GL_FORCE_BLUE_TO_ONE_NV 0x8860

Definition at line 2466 of file glext.h.

#define GL_FORMAT_SUBSAMPLE_244_244_OML 0x8983

Definition at line 2129 of file glext.h.

#define GL_FORMAT_SUBSAMPLE_24_24_OML 0x8982

Definition at line 2128 of file glext.h.

#define GL_FRAGMENT_COLOR_EXT 0x834C

Definition at line 1354 of file glext.h.

#define GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX 0x8402

Definition at line 1307 of file glext.h.

#define GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX 0x8403

Definition at line 1308 of file glext.h.

#define GL_FRAGMENT_COLOR_MATERIAL_SGIX 0x8401

Definition at line 1306 of file glext.h.

#define GL_FRAGMENT_DEPTH 0x8452

Definition at line 297 of file glext.h.

#define GL_FRAGMENT_DEPTH_EXT 0x8452

Definition at line 1464 of file glext.h.

#define GL_FRAGMENT_LIGHT0_SGIX 0x840C

Definition at line 1317 of file glext.h.

#define GL_FRAGMENT_LIGHT1_SGIX 0x840D

Definition at line 1318 of file glext.h.

#define GL_FRAGMENT_LIGHT2_SGIX 0x840E

Definition at line 1319 of file glext.h.

#define GL_FRAGMENT_LIGHT3_SGIX 0x840F

Definition at line 1320 of file glext.h.

#define GL_FRAGMENT_LIGHT4_SGIX 0x8410

Definition at line 1321 of file glext.h.

#define GL_FRAGMENT_LIGHT5_SGIX 0x8411

Definition at line 1322 of file glext.h.

#define GL_FRAGMENT_LIGHT6_SGIX 0x8412

Definition at line 1323 of file glext.h.

#define GL_FRAGMENT_LIGHT7_SGIX 0x8413

Definition at line 1324 of file glext.h.

#define GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX 0x840A

Definition at line 1315 of file glext.h.

#define GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX 0x8408

Definition at line 1313 of file glext.h.

#define GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX 0x840B

Definition at line 1316 of file glext.h.

#define GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX 0x8409

Definition at line 1314 of file glext.h.

#define GL_FRAGMENT_LIGHTING_SGIX 0x8400

Definition at line 1305 of file glext.h.

#define GL_FRAGMENT_MATERIAL_EXT 0x8349

Definition at line 1352 of file glext.h.

#define GL_FRAGMENT_NORMAL_EXT 0x834A

Definition at line 1353 of file glext.h.

#define GL_FRAGMENT_PROGRAM_ARB 0x8804

Definition at line 621 of file glext.h.

#define GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873

Definition at line 2589 of file glext.h.

#define GL_FRAGMENT_PROGRAM_NV 0x8870

Definition at line 2586 of file glext.h.

#define GL_FRAGMENT_SHADER_ATI 0x8920

Definition at line 2158 of file glext.h.

#define GL_FRAMEZOOM_FACTOR_SGIX 0x818C

Definition at line 1099 of file glext.h.

#define GL_FRAMEZOOM_SGIX 0x818B

Definition at line 1098 of file glext.h.

#define GL_FULL_RANGE_EXT 0x87E1

Definition at line 2385 of file glext.h.

#define GL_FULL_STIPPLE_HINT_PGI 0x1A219

Definition at line 1219 of file glext.h.

#define GL_FUNC_ADD 0x8006

Definition at line 108 of file glext.h.

#define GL_FUNC_ADD_EXT 0x8006

Definition at line 1003 of file glext.h.

#define GL_FUNC_REVERSE_SUBTRACT 0x800B

Definition at line 113 of file glext.h.

#define GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B

Definition at line 1011 of file glext.h.

#define GL_FUNC_SUBTRACT 0x800A

Definition at line 112 of file glext.h.

#define GL_FUNC_SUBTRACT_EXT 0x800A

Definition at line 1010 of file glext.h.

#define GL_GENERATE_MIPMAP 0x8191

Definition at line 289 of file glext.h.

#define GL_GENERATE_MIPMAP_HINT 0x8192

Definition at line 290 of file glext.h.

#define GL_GENERATE_MIPMAP_HINT_SGIS 0x8192

Definition at line 973 of file glext.h.

#define GL_GENERATE_MIPMAP_SGIS 0x8191

Definition at line 972 of file glext.h.

#define GL_GEOMETRY_DEFORMATION_BIT_SGIX 0x00000002

Definition at line 1108 of file glext.h.

#define GL_GEOMETRY_DEFORMATION_SGIX 0x8194

Definition at line 1112 of file glext.h.

#define GL_GLEXT_VERSION 18

Definition at line 56 of file glext.h.

#define GL_GLOBAL_ALPHA_FACTOR_SUN 0x81DA

Definition at line 1538 of file glext.h.

#define GL_GLOBAL_ALPHA_SUN 0x81D9

Definition at line 1537 of file glext.h.

#define GL_GREEN_BIT_ATI 0x00000002

Definition at line 2250 of file glext.h.

#define GL_GREEN_MAX_CLAMP_INGR 0x8565

Definition at line 1577 of file glext.h.

#define GL_GREEN_MIN_CLAMP_INGR 0x8561

Definition at line 1573 of file glext.h.

#define GL_HALF_BIAS_NEGATE_NV 0x853B

Definition at line 1688 of file glext.h.

#define GL_HALF_BIAS_NORMAL_NV 0x853A

Definition at line 1687 of file glext.h.

#define GL_HALF_BIT_ATI 0x00000008

Definition at line 2255 of file glext.h.

#define GL_HALF_FLOAT_NV 0x140B

Definition at line 2594 of file glext.h.

#define GL_HI_BIAS_NV 0x8714

Definition at line 2004 of file glext.h.

#define GL_HI_SCALE_NV 0x870E

Definition at line 1998 of file glext.h.

#define GL_HILO16_NV 0x86F8

Definition at line 1978 of file glext.h.

#define GL_HILO8_NV 0x885E

Definition at line 2464 of file glext.h.

#define GL_HILO_NV 0x86F4

Definition at line 1974 of file glext.h.

#define GL_HISTOGRAM 0x8024

Definition at line 134 of file glext.h.

#define GL_HISTOGRAM_ALPHA_SIZE 0x802B

Definition at line 141 of file glext.h.

#define GL_HISTOGRAM_ALPHA_SIZE_EXT 0x802B

Definition at line 767 of file glext.h.

#define GL_HISTOGRAM_BLUE_SIZE 0x802A

Definition at line 140 of file glext.h.

#define GL_HISTOGRAM_BLUE_SIZE_EXT 0x802A

Definition at line 766 of file glext.h.

#define GL_HISTOGRAM_EXT 0x8024

Definition at line 760 of file glext.h.

#define GL_HISTOGRAM_FORMAT 0x8027

Definition at line 137 of file glext.h.

#define GL_HISTOGRAM_FORMAT_EXT 0x8027

Definition at line 763 of file glext.h.

#define GL_HISTOGRAM_GREEN_SIZE 0x8029

Definition at line 139 of file glext.h.

#define GL_HISTOGRAM_GREEN_SIZE_EXT 0x8029

Definition at line 765 of file glext.h.

#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C

Definition at line 142 of file glext.h.

#define GL_HISTOGRAM_LUMINANCE_SIZE_EXT 0x802C

Definition at line 768 of file glext.h.

#define GL_HISTOGRAM_RED_SIZE 0x8028

Definition at line 138 of file glext.h.

#define GL_HISTOGRAM_RED_SIZE_EXT 0x8028

Definition at line 764 of file glext.h.

#define GL_HISTOGRAM_SINK 0x802D

Definition at line 143 of file glext.h.

#define GL_HISTOGRAM_SINK_EXT 0x802D

Definition at line 769 of file glext.h.

#define GL_HISTOGRAM_WIDTH 0x8026

Definition at line 136 of file glext.h.

#define GL_HISTOGRAM_WIDTH_EXT 0x8026

Definition at line 762 of file glext.h.

#define GL_HP_convolution_border_modes 1

Definition at line 3799 of file glext.h.

#define GL_HP_image_transform 1

Definition at line 3781 of file glext.h.

#define GL_HP_occlusion_test 1

Definition at line 4055 of file glext.h.

#define GL_HP_texture_lighting 1

Definition at line 3975 of file glext.h.

#define GL_IBM_cull_vertex 1

Definition at line 4553 of file glext.h.

#define GL_IBM_multimode_draw_arrays 1

Definition at line 4557 of file glext.h.

#define GL_IBM_rasterpos_clip 1

Definition at line 3971 of file glext.h.

#define GL_IBM_vertex_array_lists 1

Definition at line 4567 of file glext.h.

#define GL_IDENTITY_NV 0x862A

Definition at line 2036 of file glext.h.

#define GL_IGNORE_BORDER_HP 0x8150

Definition at line 1162 of file glext.h.

#define GL_IMAGE_CUBIC_WEIGHT_HP 0x815E

Definition at line 1153 of file glext.h.

#define GL_IMAGE_MAG_FILTER_HP 0x815C

Definition at line 1151 of file glext.h.

#define GL_IMAGE_MIN_FILTER_HP 0x815D

Definition at line 1152 of file glext.h.

#define GL_IMAGE_ROTATE_ANGLE_HP 0x8159

Definition at line 1148 of file glext.h.

#define GL_IMAGE_ROTATE_ORIGIN_X_HP 0x815A

Definition at line 1149 of file glext.h.

#define GL_IMAGE_ROTATE_ORIGIN_Y_HP 0x815B

Definition at line 1150 of file glext.h.

#define GL_IMAGE_SCALE_X_HP 0x8155

Definition at line 1144 of file glext.h.

#define GL_IMAGE_SCALE_Y_HP 0x8156

Definition at line 1145 of file glext.h.

#define GL_IMAGE_TRANSFORM_2D_HP 0x8161

Definition at line 1156 of file glext.h.

#define GL_IMAGE_TRANSLATE_X_HP 0x8157

Definition at line 1146 of file glext.h.

#define GL_IMAGE_TRANSLATE_Y_HP 0x8158

Definition at line 1147 of file glext.h.

#define GL_INCR_WRAP 0x8507

Definition at line 313 of file glext.h.

#define GL_INCR_WRAP_EXT 0x8507

Definition at line 1587 of file glext.h.

#define GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899

Definition at line 648 of file glext.h.

#define GL_INDEX_ARRAY_COUNT_EXT 0x8087

Definition at line 953 of file glext.h.

#define GL_INDEX_ARRAY_EXT 0x8077

Definition at line 937 of file glext.h.

#define GL_INDEX_ARRAY_LIST_IBM 103073

Definition at line 1772 of file glext.h.

#define GL_INDEX_ARRAY_LIST_STRIDE_IBM 103083

Definition at line 1780 of file glext.h.

#define GL_INDEX_ARRAY_POINTER_EXT 0x8091

Definition at line 963 of file glext.h.

#define GL_INDEX_ARRAY_STRIDE_EXT 0x8086

Definition at line 952 of file glext.h.

#define GL_INDEX_ARRAY_TYPE_EXT 0x8085

Definition at line 951 of file glext.h.

#define GL_INDEX_BIT_PGI 0x00080000

Definition at line 1186 of file glext.h.

#define GL_INDEX_MATERIAL_EXT 0x81B8

Definition at line 1266 of file glext.h.

#define GL_INDEX_MATERIAL_FACE_EXT 0x81BA

Definition at line 1268 of file glext.h.

#define GL_INDEX_MATERIAL_PARAMETER_EXT 0x81B9

Definition at line 1267 of file glext.h.

#define GL_INDEX_TEST_EXT 0x81B5

Definition at line 1272 of file glext.h.

#define GL_INDEX_TEST_FUNC_EXT 0x81B6

Definition at line 1273 of file glext.h.

#define GL_INDEX_TEST_REF_EXT 0x81B7

Definition at line 1274 of file glext.h.

#define GL_INGR_blend_func_separate 1

Definition at line 4373 of file glext.h.

#define GL_INGR_color_clamp 1

Definition at line 4381 of file glext.h.

#define GL_INGR_interlace_read 1

Definition at line 4385 of file glext.h.

#define GL_INSTRUMENT_BUFFER_POINTER_SGIX 0x8180

Definition at line 1086 of file glext.h.

#define GL_INSTRUMENT_MEASUREMENTS_SGIX 0x8181

Definition at line 1087 of file glext.h.

#define GL_INTEL_parallel_arrays 1

Definition at line 4041 of file glext.h.

#define GL_INTENSITY12_EXT 0x804C

Definition at line 708 of file glext.h.

#define GL_INTENSITY16_EXT 0x804D

Definition at line 709 of file glext.h.

#define GL_INTENSITY4_EXT 0x804A

Definition at line 706 of file glext.h.

#define GL_INTENSITY8_EXT 0x804B

Definition at line 707 of file glext.h.

#define GL_INTENSITY_EXT 0x8049

Definition at line 705 of file glext.h.

#define GL_INTENSITY_FLOAT16_ATI 0x881D

Definition at line 2561 of file glext.h.

#define GL_INTENSITY_FLOAT32_ATI 0x8817

Definition at line 2555 of file glext.h.

#define GL_INTERLACE_OML 0x8980

Definition at line 2123 of file glext.h.

#define GL_INTERLACE_READ_INGR 0x8568

Definition at line 1583 of file glext.h.

#define GL_INTERLACE_READ_OML 0x8981

Definition at line 2124 of file glext.h.

#define GL_INTERLACE_SGIX 0x8094

Definition at line 1018 of file glext.h.

#define GL_INTERPOLATE 0x8575

Definition at line 271 of file glext.h.

#define GL_INTERPOLATE_ARB 0x8575

Definition at line 498 of file glext.h.

#define GL_INTERPOLATE_EXT 0x8575

Definition at line 1500 of file glext.h.

#define GL_INVARIANT_DATATYPE_EXT 0x87EB

Definition at line 2395 of file glext.h.

#define GL_INVARIANT_EXT 0x87C2

Definition at line 2354 of file glext.h.

#define GL_INVARIANT_VALUE_EXT 0x87EA

Definition at line 2394 of file glext.h.

#define GL_INVERSE_NV 0x862B

Definition at line 2037 of file glext.h.

#define GL_INVERSE_TRANSPOSE_NV 0x862D

Definition at line 2039 of file glext.h.

#define GL_INVERTED_SCREEN_W_REND 0x8491

Definition at line 1474 of file glext.h.

#define GL_IR_INSTRUMENT1_SGIX 0x817F

Definition at line 1245 of file glext.h.

#define GL_IUI_N3F_V2F_EXT 0x81AF

Definition at line 1280 of file glext.h.

#define GL_IUI_N3F_V3F_EXT 0x81B0

Definition at line 1281 of file glext.h.

#define GL_IUI_V2F_EXT 0x81AD

Definition at line 1278 of file glext.h.

#define GL_IUI_V3F_EXT 0x81AE

Definition at line 1279 of file glext.h.

#define GL_LERP_ATI 0x8969

Definition at line 2230 of file glext.h.

#define GL_LIGHT_ENV_MODE_SGIX 0x8407

Definition at line 1312 of file glext.h.

#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8

Definition at line 91 of file glext.h.

#define GL_LIGHT_MODEL_COLOR_CONTROL_EXT 0x81F8

Definition at line 1438 of file glext.h.

#define GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE 0x85B0

Definition at line 1519 of file glext.h.

#define GL_LINEAR_CLIPMAP_LINEAR_SGIX 0x8170

Definition at line 977 of file glext.h.

#define GL_LINEAR_CLIPMAP_NEAREST_SGIX 0x844F

Definition at line 988 of file glext.h.

#define GL_LINEAR_DETAIL_ALPHA_SGIS 0x8098

Definition at line 881 of file glext.h.

#define GL_LINEAR_DETAIL_COLOR_SGIS 0x8099

Definition at line 882 of file glext.h.

#define GL_LINEAR_DETAIL_SGIS 0x8097

Definition at line 880 of file glext.h.

#define GL_LINEAR_SHARPEN_ALPHA_SGIS 0x80AE

Definition at line 890 of file glext.h.

#define GL_LINEAR_SHARPEN_COLOR_SGIS 0x80AF

Definition at line 891 of file glext.h.

#define GL_LINEAR_SHARPEN_SGIS 0x80AD

Definition at line 889 of file glext.h.

#define GL_LIST_PRIORITY_SGIX 0x8182

Definition at line 1241 of file glext.h.

#define GL_LO_BIAS_NV 0x8715

Definition at line 2005 of file glext.h.

#define GL_LO_SCALE_NV 0x870F

Definition at line 1999 of file glext.h.

#define GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED

Definition at line 2397 of file glext.h.

#define GL_LOCAL_CONSTANT_EXT 0x87C3

Definition at line 2355 of file glext.h.

#define GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC

Definition at line 2396 of file glext.h.

#define GL_LOCAL_EXT 0x87C4

Definition at line 2356 of file glext.h.

#define GL_LUMINANCE12_ALPHA12_EXT 0x8047

Definition at line 703 of file glext.h.

#define GL_LUMINANCE12_ALPHA4_EXT 0x8046

Definition at line 702 of file glext.h.

#define GL_LUMINANCE12_EXT 0x8041

Definition at line 697 of file glext.h.

#define GL_LUMINANCE16_ALPHA16_EXT 0x8048

Definition at line 704 of file glext.h.

#define GL_LUMINANCE16_EXT 0x8042

Definition at line 698 of file glext.h.

#define GL_LUMINANCE4_ALPHA4_EXT 0x8043

Definition at line 699 of file glext.h.

#define GL_LUMINANCE4_EXT 0x803F

Definition at line 695 of file glext.h.

#define GL_LUMINANCE6_ALPHA2_EXT 0x8044

Definition at line 700 of file glext.h.

#define GL_LUMINANCE8_ALPHA8_EXT 0x8045

Definition at line 701 of file glext.h.

#define GL_LUMINANCE8_EXT 0x8040

Definition at line 696 of file glext.h.

#define GL_LUMINANCE_ALPHA_FLOAT16_ATI 0x881F

Definition at line 2563 of file glext.h.

#define GL_LUMINANCE_ALPHA_FLOAT32_ATI 0x8819

Definition at line 2557 of file glext.h.

#define GL_LUMINANCE_FLOAT16_ATI 0x881E

Definition at line 2562 of file glext.h.

#define GL_LUMINANCE_FLOAT32_ATI 0x8818

Definition at line 2556 of file glext.h.

#define GL_MAD_ATI 0x8968

Definition at line 2229 of file glext.h.

#define GL_MAGNITUDE_BIAS_NV 0x8718

Definition at line 2008 of file glext.h.

#define GL_MAGNITUDE_SCALE_NV 0x8712

Definition at line 2002 of file glext.h.

#define GL_MAP1_BINORMAL_EXT 0x8446

Definition at line 1490 of file glext.h.

#define GL_MAP1_TANGENT_EXT 0x8444

Definition at line 1488 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660

Definition at line 2078 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A

Definition at line 2088 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B

Definition at line 2089 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C

Definition at line 2090 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D

Definition at line 2091 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E

Definition at line 2092 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F

Definition at line 2093 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661

Definition at line 2079 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662

Definition at line 2080 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663

Definition at line 2081 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664

Definition at line 2082 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665

Definition at line 2083 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666

Definition at line 2084 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667

Definition at line 2085 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668

Definition at line 2086 of file glext.h.

#define GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669

Definition at line 2087 of file glext.h.

#define GL_MAP2_BINORMAL_EXT 0x8447

Definition at line 1491 of file glext.h.

#define GL_MAP2_TANGENT_EXT 0x8445

Definition at line 1489 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670

Definition at line 2094 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A

Definition at line 2104 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B

Definition at line 2105 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C

Definition at line 2106 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D

Definition at line 2107 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E

Definition at line 2108 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F

Definition at line 2109 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671

Definition at line 2095 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672

Definition at line 2096 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673

Definition at line 2097 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674

Definition at line 2098 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675

Definition at line 2099 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676

Definition at line 2100 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677

Definition at line 2101 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678

Definition at line 2102 of file glext.h.

#define GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679

Definition at line 2103 of file glext.h.

#define GL_MAP_ATTRIB_U_ORDER_NV 0x86C3

Definition at line 1900 of file glext.h.

#define GL_MAP_ATTRIB_V_ORDER_NV 0x86C4

Definition at line 1901 of file glext.h.

#define GL_MAP_TESSELLATION_NV 0x86C2

Definition at line 1899 of file glext.h.

#define GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI 0x00200000

Definition at line 1188 of file glext.h.

#define GL_MAT_AMBIENT_BIT_PGI 0x00100000

Definition at line 1187 of file glext.h.

#define GL_MAT_COLOR_INDEXES_BIT_PGI 0x01000000

Definition at line 1191 of file glext.h.

#define GL_MAT_DIFFUSE_BIT_PGI 0x00400000

Definition at line 1189 of file glext.h.

#define GL_MAT_EMISSION_BIT_PGI 0x00800000

Definition at line 1190 of file glext.h.

#define GL_MAT_SHININESS_BIT_PGI 0x02000000

Definition at line 1192 of file glext.h.

#define GL_MAT_SPECULAR_BIT_PGI 0x04000000

Definition at line 1193 of file glext.h.

#define GL_MATERIAL_SIDE_HINT_PGI 0x1A22C

Definition at line 1181 of file glext.h.

#define GL_MATRIX0_ARB 0x88C0

Definition at line 586 of file glext.h.

#define GL_MATRIX0_NV 0x8630

Definition at line 2042 of file glext.h.

#define GL_MATRIX10_ARB 0x88CA

Definition at line 596 of file glext.h.

#define GL_MATRIX11_ARB 0x88CB

Definition at line 597 of file glext.h.

#define GL_MATRIX12_ARB 0x88CC

Definition at line 598 of file glext.h.

#define GL_MATRIX13_ARB 0x88CD

Definition at line 599 of file glext.h.

#define GL_MATRIX14_ARB 0x88CE

Definition at line 600 of file glext.h.

#define GL_MATRIX15_ARB 0x88CF

Definition at line 601 of file glext.h.

#define GL_MATRIX16_ARB 0x88D0

Definition at line 602 of file glext.h.

#define GL_MATRIX17_ARB 0x88D1

Definition at line 603 of file glext.h.

#define GL_MATRIX18_ARB 0x88D2

Definition at line 604 of file glext.h.

#define GL_MATRIX19_ARB 0x88D3

Definition at line 605 of file glext.h.

#define GL_MATRIX1_ARB 0x88C1

Definition at line 587 of file glext.h.

#define GL_MATRIX1_NV 0x8631

Definition at line 2043 of file glext.h.

#define GL_MATRIX20_ARB 0x88D4

Definition at line 606 of file glext.h.

#define GL_MATRIX21_ARB 0x88D5

Definition at line 607 of file glext.h.

#define GL_MATRIX22_ARB 0x88D6

Definition at line 608 of file glext.h.

#define GL_MATRIX23_ARB 0x88D7

Definition at line 609 of file glext.h.

#define GL_MATRIX24_ARB 0x88D8

Definition at line 610 of file glext.h.

#define GL_MATRIX25_ARB 0x88D9

Definition at line 611 of file glext.h.

#define GL_MATRIX26_ARB 0x88DA

Definition at line 612 of file glext.h.

#define GL_MATRIX27_ARB 0x88DB

Definition at line 613 of file glext.h.

#define GL_MATRIX28_ARB 0x88DC

Definition at line 614 of file glext.h.

#define GL_MATRIX29_ARB 0x88DD

Definition at line 615 of file glext.h.

#define GL_MATRIX2_ARB 0x88C2

Definition at line 588 of file glext.h.

#define GL_MATRIX2_NV 0x8632

Definition at line 2044 of file glext.h.

#define GL_MATRIX30_ARB 0x88DE

Definition at line 616 of file glext.h.

#define GL_MATRIX31_ARB 0x88DF

Definition at line 617 of file glext.h.

#define GL_MATRIX3_ARB 0x88C3

Definition at line 589 of file glext.h.

#define GL_MATRIX3_NV 0x8633

Definition at line 2045 of file glext.h.

#define GL_MATRIX4_ARB 0x88C4

Definition at line 590 of file glext.h.

#define GL_MATRIX4_NV 0x8634

Definition at line 2046 of file glext.h.

#define GL_MATRIX5_ARB 0x88C5

Definition at line 591 of file glext.h.

#define GL_MATRIX5_NV 0x8635

Definition at line 2047 of file glext.h.

#define GL_MATRIX6_ARB 0x88C6

Definition at line 592 of file glext.h.

#define GL_MATRIX6_NV 0x8636

Definition at line 2048 of file glext.h.

#define GL_MATRIX7_ARB 0x88C7

Definition at line 593 of file glext.h.

#define GL_MATRIX7_NV 0x8637

Definition at line 2049 of file glext.h.

#define GL_MATRIX8_ARB 0x88C8

Definition at line 594 of file glext.h.

#define GL_MATRIX9_ARB 0x88C9

Definition at line 595 of file glext.h.

#define GL_MATRIX_EXT 0x87C0

Definition at line 2352 of file glext.h.

#define GL_MATRIX_INDEX_ARRAY_ARB 0x8844

Definition at line 472 of file glext.h.

#define GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849

Definition at line 477 of file glext.h.

#define GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846

Definition at line 474 of file glext.h.

#define GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848

Definition at line 476 of file glext.h.

#define GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847

Definition at line 475 of file glext.h.

#define GL_MATRIX_PALETTE_ARB 0x8840

Definition at line 468 of file glext.h.

#define GL_MAX 0x8008

Definition at line 110 of file glext.h.

#define GL_MAX_3D_TEXTURE_SIZE 0x8073

Definition at line 74 of file glext.h.

#define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073

Definition at line 745 of file glext.h.

#define GL_MAX_4D_TEXTURE_SIZE_SGIS 0x8138

Definition at line 853 of file glext.h.

#define GL_MAX_ACTIVE_LIGHTS_SGIX 0x8405

Definition at line 1310 of file glext.h.

#define GL_MAX_ASYNC_DRAW_PIXELS_SGIX 0x8360

Definition at line 1393 of file glext.h.

#define GL_MAX_ASYNC_HISTOGRAM_SGIX 0x832D

Definition at line 1399 of file glext.h.

#define GL_MAX_ASYNC_READ_PIXELS_SGIX 0x8361

Definition at line 1394 of file glext.h.

#define GL_MAX_ASYNC_TEX_IMAGE_SGIX 0x835F

Definition at line 1392 of file glext.h.

#define GL_MAX_CLIPMAP_DEPTH_SGIX 0x8177

Definition at line 984 of file glext.h.

#define GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX 0x8178

Definition at line 985 of file glext.h.

#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3

Definition at line 150 of file glext.h.

#define GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B3

Definition at line 802 of file glext.h.

#define GL_MAX_CONVOLUTION_HEIGHT 0x801B

Definition at line 125 of file glext.h.

#define GL_MAX_CONVOLUTION_HEIGHT_EXT 0x801B

Definition at line 788 of file glext.h.

#define GL_MAX_CONVOLUTION_WIDTH 0x801A

Definition at line 124 of file glext.h.

#define GL_MAX_CONVOLUTION_WIDTH_EXT 0x801A

Definition at line 787 of file glext.h.

#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C

Definition at line 240 of file glext.h.

#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851C

Definition at line 394 of file glext.h.

#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C

Definition at line 1615 of file glext.h.

#define GL_MAX_DEFORMATION_ORDER_SGIX 0x8197

Definition at line 1115 of file glext.h.

#define GL_MAX_DRAW_BUFFERS_ATI 0x8824

Definition at line 2526 of file glext.h.

#define GL_MAX_ELEMENTS_INDICES 0x80E9

Definition at line 85 of file glext.h.

#define GL_MAX_ELEMENTS_INDICES_EXT 0x80E9

Definition at line 1339 of file glext.h.

#define GL_MAX_ELEMENTS_VERTICES 0x80E8

Definition at line 84 of file glext.h.

#define GL_MAX_ELEMENTS_VERTICES_EXT 0x80E8

Definition at line 1338 of file glext.h.

#define GL_MAX_EXT 0x8008

Definition at line 1005 of file glext.h.

#define GL_MAX_FOG_FUNC_POINTS_SGIS 0x812C

Definition at line 1135 of file glext.h.

#define GL_MAX_FRAGMENT_LIGHTS_SGIX 0x8404

Definition at line 1309 of file glext.h.

#define GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868

Definition at line 2585 of file glext.h.

#define GL_MAX_FRAMEZOOM_FACTOR_SGIX 0x818D

Definition at line 1100 of file glext.h.

#define GL_MAX_GENERAL_COMBINERS_NV 0x854D

Definition at line 1706 of file glext.h.

#define GL_MAX_MAP_TESSELLATION_NV 0x86D6

Definition at line 1919 of file glext.h.

#define GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841

Definition at line 469 of file glext.h.

#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA

Definition at line 2362 of file glext.h.

#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CD

Definition at line 2365 of file glext.h.

#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CC

Definition at line 2364 of file glext.h.

#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE

Definition at line 2366 of file glext.h.

#define GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB

Definition at line 2363 of file glext.h.

#define GL_MAX_PALETTE_MATRICES_ARB 0x8842

Definition at line 470 of file glext.h.

#define GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8337

Definition at line 1426 of file glext.h.

#define GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1

Definition at line 2266 of file glext.h.

#define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1

Definition at line 579 of file glext.h.

#define GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B

Definition at line 628 of file glext.h.

#define GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD

Definition at line 575 of file glext.h.

#define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5

Definition at line 583 of file glext.h.

#define GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1

Definition at line 563 of file glext.h.

#define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4

Definition at line 582 of file glext.h.

#define GL_MAX_PROGRAM_MATRICES_ARB 0x862F

Definition at line 549 of file glext.h.

#define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E

Definition at line 548 of file glext.h.

#define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3

Definition at line 581 of file glext.h.

#define GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E

Definition at line 631 of file glext.h.

#define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF

Definition at line 577 of file glext.h.

#define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3

Definition at line 565 of file glext.h.

#define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB

Definition at line 573 of file glext.h.

#define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7

Definition at line 569 of file glext.h.

#define GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810

Definition at line 633 of file glext.h.

#define GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F

Definition at line 632 of file glext.h.

#define GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9

Definition at line 571 of file glext.h.

#define GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5

Definition at line 567 of file glext.h.

#define GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D

Definition at line 630 of file glext.h.

#define GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C

Definition at line 629 of file glext.h.

#define GL_MAX_RATIONAL_EVAL_ORDER_NV 0x86D7

Definition at line 1920 of file glext.h.

#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8

Definition at line 1939 of file glext.h.

#define GL_MAX_SHININESS_NV 0x8504

Definition at line 1653 of file glext.h.

#define GL_MAX_SPOT_EXPONENT_NV 0x8505

Definition at line 1654 of file glext.h.

#define GL_MAX_TEXTURE_COORDS_ARB 0x8871

Definition at line 634 of file glext.h.

#define GL_MAX_TEXTURE_COORDS_NV 0x8871

Definition at line 2587 of file glext.h.

#define GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872

Definition at line 635 of file glext.h.

#define GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872

Definition at line 2588 of file glext.h.

#define GL_MAX_TEXTURE_LOD_BIAS 0x84FD

Definition at line 310 of file glext.h.

#define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD

Definition at line 1626 of file glext.h.

#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF

Definition at line 1633 of file glext.h.

#define GL_MAX_TEXTURE_UNITS 0x84E2

Definition at line 215 of file glext.h.

#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2

Definition at line 357 of file glext.h.

#define GL_MAX_TRACK_MATRICES_NV 0x862F

Definition at line 2041 of file glext.h.

#define GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E

Definition at line 2040 of file glext.h.

#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520

Definition at line 1661 of file glext.h.

#define GL_MAX_VERTEX_ATTRIBS_ARB 0x8869

Definition at line 557 of file glext.h.

#define GL_MAX_VERTEX_HINT_PGI 0x1A22D

Definition at line 1182 of file glext.h.

#define GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5

Definition at line 2357 of file glext.h.

#define GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7

Definition at line 2359 of file glext.h.

#define GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8

Definition at line 2360 of file glext.h.

#define GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9

Definition at line 2361 of file glext.h.

#define GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6

Definition at line 2358 of file glext.h.

#define GL_MAX_VERTEX_STREAMS_ATI 0x876B

Definition at line 2401 of file glext.h.

#define GL_MAX_VERTEX_UNITS_ARB 0x86A4

Definition at line 423 of file glext.h.

#define GL_MESA_resize_buffers 1

Definition at line 4491 of file glext.h.

#define GL_MESA_window_pos 1

Definition at line 4499 of file glext.h.

#define GL_MIN 0x8007

Definition at line 109 of file glext.h.

#define GL_MIN_EXT 0x8007

Definition at line 1004 of file glext.h.

#define GL_MINMAX 0x802E

Definition at line 144 of file glext.h.

#define GL_MINMAX_EXT 0x802E

Definition at line 770 of file glext.h.

#define GL_MINMAX_FORMAT 0x802F

Definition at line 145 of file glext.h.

#define GL_MINMAX_FORMAT_EXT 0x802F

Definition at line 771 of file glext.h.

#define GL_MINMAX_SINK 0x8030

Definition at line 146 of file glext.h.

#define GL_MINMAX_SINK_EXT 0x8030

Definition at line 772 of file glext.h.

#define GL_MIRROR_CLAMP_ATI 0x8742

Definition at line 1882 of file glext.h.

#define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743

Definition at line 1883 of file glext.h.

#define GL_MIRRORED_REPEAT 0x8370

Definition at line 294 of file glext.h.

#define GL_MIRRORED_REPEAT_ARB 0x8370

Definition at line 514 of file glext.h.

#define GL_MIRRORED_REPEAT_IBM 0x8370

Definition at line 1893 of file glext.h.

#define GL_MODELVIEW0_ARB 0x1700

Definition at line 433 of file glext.h.

#define GL_MODELVIEW0_EXT GL_MODELVIEW

Definition at line 1642 of file glext.h.

#define GL_MODELVIEW0_MATRIX_EXT GL_MODELVIEW_MATRIX

Definition at line 1639 of file glext.h.

#define GL_MODELVIEW0_STACK_DEPTH_EXT GL_MODELVIEW_STACK_DEPTH

Definition at line 1637 of file glext.h.

#define GL_MODELVIEW10_ARB 0x872A

Definition at line 443 of file glext.h.

#define GL_MODELVIEW11_ARB 0x872B

Definition at line 444 of file glext.h.

#define GL_MODELVIEW12_ARB 0x872C

Definition at line 445 of file glext.h.

#define GL_MODELVIEW13_ARB 0x872D

Definition at line 446 of file glext.h.

#define GL_MODELVIEW14_ARB 0x872E

Definition at line 447 of file glext.h.

#define GL_MODELVIEW15_ARB 0x872F

Definition at line 448 of file glext.h.

#define GL_MODELVIEW16_ARB 0x8730

Definition at line 449 of file glext.h.

#define GL_MODELVIEW17_ARB 0x8731

Definition at line 450 of file glext.h.

#define GL_MODELVIEW18_ARB 0x8732

Definition at line 451 of file glext.h.

#define GL_MODELVIEW19_ARB 0x8733

Definition at line 452 of file glext.h.

#define GL_MODELVIEW1_ARB 0x850A

Definition at line 434 of file glext.h.

#define GL_MODELVIEW1_EXT 0x850A

Definition at line 1643 of file glext.h.

#define GL_MODELVIEW1_MATRIX_EXT 0x8506

Definition at line 1640 of file glext.h.

#define GL_MODELVIEW1_STACK_DEPTH_EXT 0x8502

Definition at line 1638 of file glext.h.

#define GL_MODELVIEW20_ARB 0x8734

Definition at line 453 of file glext.h.

#define GL_MODELVIEW21_ARB 0x8735

Definition at line 454 of file glext.h.

#define GL_MODELVIEW22_ARB 0x8736

Definition at line 455 of file glext.h.

#define GL_MODELVIEW23_ARB 0x8737

Definition at line 456 of file glext.h.

#define GL_MODELVIEW24_ARB 0x8738

Definition at line 457 of file glext.h.

#define GL_MODELVIEW25_ARB 0x8739

Definition at line 458 of file glext.h.

#define GL_MODELVIEW26_ARB 0x873A

Definition at line 459 of file glext.h.

#define GL_MODELVIEW27_ARB 0x873B

Definition at line 460 of file glext.h.

#define GL_MODELVIEW28_ARB 0x873C

Definition at line 461 of file glext.h.

#define GL_MODELVIEW29_ARB 0x873D

Definition at line 462 of file glext.h.

#define GL_MODELVIEW2_ARB 0x8722

Definition at line 435 of file glext.h.

#define GL_MODELVIEW30_ARB 0x873E

Definition at line 463 of file glext.h.

#define GL_MODELVIEW31_ARB 0x873F

Definition at line 464 of file glext.h.

#define GL_MODELVIEW3_ARB 0x8723

Definition at line 436 of file glext.h.

#define GL_MODELVIEW4_ARB 0x8724

Definition at line 437 of file glext.h.

#define GL_MODELVIEW5_ARB 0x8725

Definition at line 438 of file glext.h.

#define GL_MODELVIEW6_ARB 0x8726

Definition at line 439 of file glext.h.

#define GL_MODELVIEW7_ARB 0x8727

Definition at line 440 of file glext.h.

#define GL_MODELVIEW8_ARB 0x8728

Definition at line 441 of file glext.h.

#define GL_MODELVIEW9_ARB 0x8729

Definition at line 442 of file glext.h.

#define GL_MODELVIEW_PROJECTION_NV 0x8629

Definition at line 2035 of file glext.h.

#define GL_MODULATE_ADD_ATI 0x8744

Definition at line 2546 of file glext.h.

#define GL_MODULATE_SIGNED_ADD_ATI 0x8745

Definition at line 2547 of file glext.h.

#define GL_MODULATE_SUBTRACT_ATI 0x8746

Definition at line 2548 of file glext.h.

#define GL_MOV_ATI 0x8961

Definition at line 2223 of file glext.h.

#define GL_MUL_ATI 0x8964

Definition at line 2225 of file glext.h.

#define GL_MULTISAMPLE 0x809D

Definition at line 220 of file glext.h.

#define GL_MULTISAMPLE_3DFX 0x86B2

Definition at line 1815 of file glext.h.

#define GL_MULTISAMPLE_ARB 0x809D

Definition at line 368 of file glext.h.

Referenced by ControlEngine::Draw().

#define GL_MULTISAMPLE_BIT 0x20000000

Definition at line 228 of file glext.h.

#define GL_MULTISAMPLE_BIT_3DFX 0x20000000

Definition at line 1818 of file glext.h.

#define GL_MULTISAMPLE_BIT_ARB 0x20000000

Definition at line 376 of file glext.h.

#define GL_MULTISAMPLE_BIT_EXT 0x20000000

Definition at line 1841 of file glext.h.

#define GL_MULTISAMPLE_EXT 0x809D

Definition at line 1825 of file glext.h.

#define GL_MULTISAMPLE_FILTER_HINT_NV 0x8534

Definition at line 2429 of file glext.h.

#define GL_MULTISAMPLE_SGIS 0x809D

Definition at line 911 of file glext.h.

#define GL_MVP_MATRIX_EXT 0x87E3

Definition at line 2387 of file glext.h.

#define GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI 0x1A203

Definition at line 1208 of file glext.h.

#define GL_NATIVE_GRAPHICS_END_HINT_PGI 0x1A204

Definition at line 1209 of file glext.h.

#define GL_NATIVE_GRAPHICS_HANDLE_PGI 0x1A202

Definition at line 1207 of file glext.h.

#define GL_NEAREST_CLIPMAP_LINEAR_SGIX 0x844E

Definition at line 987 of file glext.h.

#define GL_NEAREST_CLIPMAP_NEAREST_SGIX 0x844D

Definition at line 986 of file glext.h.

#define GL_NEGATE_BIT_ATI 0x00000004

Definition at line 2260 of file glext.h.

#define GL_NEGATIVE_ONE_EXT 0x87DF

Definition at line 2383 of file glext.h.

#define GL_NEGATIVE_W_EXT 0x87DC

Definition at line 2380 of file glext.h.

#define GL_NEGATIVE_X_EXT 0x87D9

Definition at line 2377 of file glext.h.

#define GL_NEGATIVE_Y_EXT 0x87DA

Definition at line 2378 of file glext.h.

#define GL_NEGATIVE_Z_EXT 0x87DB

Definition at line 2379 of file glext.h.

#define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897

Definition at line 646 of file glext.h.

#define GL_NORMAL_ARRAY_COUNT_EXT 0x8080

Definition at line 946 of file glext.h.

#define GL_NORMAL_ARRAY_EXT 0x8075

Definition at line 935 of file glext.h.

#define GL_NORMAL_ARRAY_LIST_IBM 103071

Definition at line 1770 of file glext.h.

#define GL_NORMAL_ARRAY_LIST_STRIDE_IBM 103081

Definition at line 1778 of file glext.h.

#define GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL 0x83F6

Definition at line 1408 of file glext.h.

#define GL_NORMAL_ARRAY_POINTER_EXT 0x808F

Definition at line 961 of file glext.h.

#define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F

Definition at line 945 of file glext.h.

#define GL_NORMAL_ARRAY_TYPE_EXT 0x807E

Definition at line 944 of file glext.h.

#define GL_NORMAL_BIT_PGI 0x08000000

Definition at line 1194 of file glext.h.

#define GL_NORMAL_MAP 0x8511

Definition at line 229 of file glext.h.

#define GL_NORMAL_MAP_ARB 0x8511

Definition at line 383 of file glext.h.

#define GL_NORMAL_MAP_EXT 0x8511

Definition at line 1604 of file glext.h.

#define GL_NORMAL_MAP_NV 0x8511

Definition at line 1599 of file glext.h.

#define GL_NORMALIZED_RANGE_EXT 0x87E0

Definition at line 2384 of file glext.h.

#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2

Definition at line 250 of file glext.h.

#define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2

Definition at line 407 of file glext.h.

#define GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F

Definition at line 2236 of file glext.h.

#define GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E

Definition at line 2235 of file glext.h.

#define GL_NUM_GENERAL_COMBINERS_NV 0x854E

Definition at line 1707 of file glext.h.

#define GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973

Definition at line 2240 of file glext.h.

#define GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971

Definition at line 2238 of file glext.h.

#define GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972

Definition at line 2239 of file glext.h.

#define GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974

Definition at line 2241 of file glext.h.

#define GL_NUM_PASSES_ATI 0x8970

Definition at line 2237 of file glext.h.

#define GL_NV_blend_square 1

Definition at line 4483 of file glext.h.

#define GL_NV_copy_depth_to_color 1

Definition at line 4903 of file glext.h.

#define GL_NV_depth_clamp 1

Definition at line 5209 of file glext.h.

#define GL_NV_evaluators 1

Definition at line 4691 of file glext.h.

#define GL_NV_fence 1

Definition at line 4671 of file glext.h.

#define GL_NV_float_buffer 1

Definition at line 5359 of file glext.h.

#define GL_NV_fog_distance 1

Definition at line 4475 of file glext.h.

#define GL_NV_fragment_program 1

Definition at line 5363 of file glext.h.

#define GL_NV_half_float 1

Definition at line 5382 of file glext.h.

#define GL_NV_light_max_exponent 1

Definition at line 4429 of file glext.h.

#define GL_NV_multisample_filter_hint 1

Definition at line 5205 of file glext.h.

#define GL_NV_occlusion_query 1

Definition at line 5213 of file glext.h.

#define GL_NV_packed_depth_stencil 1

Definition at line 4715 of file glext.h.

#define GL_NV_pixel_data_range 1

Definition at line 5483 of file glext.h.

#define GL_NV_point_sprite 1

Definition at line 5233 of file glext.h.

#define GL_NV_primitive_restart 1

Definition at line 5493 of file glext.h.

#define GL_NV_register_combiners 1

Definition at line 4443 of file glext.h.

#define GL_NV_register_combiners2 1

Definition at line 4719 of file glext.h.

#define GL_NV_texgen_emboss 1

Definition at line 4479 of file glext.h.

#define GL_NV_texgen_reflection 1

Definition at line 4397 of file glext.h.

#define GL_NV_texture_compression_vtc 1

Definition at line 4729 of file glext.h.

#define GL_NV_texture_env_combine4 1

Definition at line 4487 of file glext.h.

#define GL_NV_texture_expand_normal 1

Definition at line 5503 of file glext.h.

#define GL_NV_texture_rectangle 1

Definition at line 4733 of file glext.h.

#define GL_NV_texture_shader 1

Definition at line 4737 of file glext.h.

#define GL_NV_texture_shader2 1

Definition at line 4741 of file glext.h.

#define GL_NV_texture_shader3 1

Definition at line 5243 of file glext.h.

#define GL_NV_vertex_array_range 1

Definition at line 4433 of file glext.h.

#define GL_NV_vertex_array_range2 1

Definition at line 4745 of file glext.h.

#define GL_NV_vertex_program 1

Definition at line 4749 of file glext.h.

#define GL_NV_vertex_program1_1 1

Definition at line 5247 of file glext.h.

#define GL_NV_vertex_program2 1

Definition at line 5507 of file glext.h.

#define GL_OBJECT_BUFFER_SIZE_ATI 0x8764

Definition at line 2281 of file glext.h.

#define GL_OBJECT_BUFFER_USAGE_ATI 0x8765

Definition at line 2282 of file glext.h.

#define GL_OBJECT_DISTANCE_TO_LINE_SGIS 0x81F3

Definition at line 1865 of file glext.h.

#define GL_OBJECT_DISTANCE_TO_POINT_SGIS 0x81F1

Definition at line 1863 of file glext.h.

#define GL_OBJECT_LINE_SGIS 0x81F7

Definition at line 1869 of file glext.h.

#define GL_OBJECT_POINT_SGIS 0x81F5

Definition at line 1867 of file glext.h.

#define GL_OCCLUSION_TEST_HP 0x8165

Definition at line 1414 of file glext.h.

#define GL_OCCLUSION_TEST_RESULT_HP 0x8166

Definition at line 1415 of file glext.h.

#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV 0x8856

Definition at line 2456 of file glext.h.

#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8857

Definition at line 2457 of file glext.h.

#define GL_OFFSET_HILO_TEXTURE_2D_NV 0x8854

Definition at line 2454 of file glext.h.

#define GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV 0x8855

Definition at line 2455 of file glext.h.

#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV 0x8850

Definition at line 2450 of file glext.h.

#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV 0x8851

Definition at line 2451 of file glext.h.

#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8852

Definition at line 2452 of file glext.h.

#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV 0x8853

Definition at line 2453 of file glext.h.

#define GL_OFFSET_TEXTURE_2D_BIAS_NV GL_OFFSET_TEXTURE_BIAS_NV

Definition at line 1959 of file glext.h.

#define GL_OFFSET_TEXTURE_2D_MATRIX_NV GL_OFFSET_TEXTURE_MATRIX_NV

Definition at line 1957 of file glext.h.

#define GL_OFFSET_TEXTURE_2D_NV 0x86E8

Definition at line 1964 of file glext.h.

#define GL_OFFSET_TEXTURE_2D_SCALE_NV GL_OFFSET_TEXTURE_SCALE_NV

Definition at line 1958 of file glext.h.

#define GL_OFFSET_TEXTURE_BIAS_NV 0x86E3

Definition at line 1956 of file glext.h.

#define GL_OFFSET_TEXTURE_MATRIX_NV 0x86E1

Definition at line 1954 of file glext.h.

#define GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864C

Definition at line 1943 of file glext.h.

#define GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864D

Definition at line 1944 of file glext.h.

#define GL_OFFSET_TEXTURE_SCALE_NV 0x86E2

Definition at line 1955 of file glext.h.

#define GL_OML_interlace 1

Definition at line 4891 of file glext.h.

#define GL_OML_resample 1

Definition at line 4899 of file glext.h.

#define GL_OML_subsample 1

Definition at line 4895 of file glext.h.

#define GL_ONE_EXT 0x87DE

Definition at line 2382 of file glext.h.

#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004

Definition at line 106 of file glext.h.

#define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004

Definition at line 680 of file glext.h.

#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002

Definition at line 104 of file glext.h.

#define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002

Definition at line 678 of file glext.h.

#define GL_OP_ADD_EXT 0x8787

Definition at line 2295 of file glext.h.

#define GL_OP_CLAMP_EXT 0x878E

Definition at line 2302 of file glext.h.

#define GL_OP_CROSS_PRODUCT_EXT 0x8797

Definition at line 2311 of file glext.h.

#define GL_OP_DOT3_EXT 0x8784

Definition at line 2292 of file glext.h.

#define GL_OP_DOT4_EXT 0x8785

Definition at line 2293 of file glext.h.

#define GL_OP_EXP_BASE_2_EXT 0x8791

Definition at line 2305 of file glext.h.

#define GL_OP_FLOOR_EXT 0x878F

Definition at line 2303 of file glext.h.

#define GL_OP_FRAC_EXT 0x8789

Definition at line 2297 of file glext.h.

#define GL_OP_INDEX_EXT 0x8782

Definition at line 2290 of file glext.h.

#define GL_OP_LOG_BASE_2_EXT 0x8792

Definition at line 2306 of file glext.h.

#define GL_OP_MADD_EXT 0x8788

Definition at line 2296 of file glext.h.

#define GL_OP_MAX_EXT 0x878A

Definition at line 2298 of file glext.h.

#define GL_OP_MIN_EXT 0x878B

Definition at line 2299 of file glext.h.

#define GL_OP_MOV_EXT 0x8799

Definition at line 2313 of file glext.h.

#define GL_OP_MUL_EXT 0x8786

Definition at line 2294 of file glext.h.

#define GL_OP_MULTIPLY_MATRIX_EXT 0x8798

Definition at line 2312 of file glext.h.

#define GL_OP_NEGATE_EXT 0x8783

Definition at line 2291 of file glext.h.

#define GL_OP_POWER_EXT 0x8793

Definition at line 2307 of file glext.h.

#define GL_OP_RECIP_EXT 0x8794

Definition at line 2308 of file glext.h.

#define GL_OP_RECIP_SQRT_EXT 0x8795

Definition at line 2309 of file glext.h.

#define GL_OP_ROUND_EXT 0x8790

Definition at line 2304 of file glext.h.

#define GL_OP_SET_GE_EXT 0x878C

Definition at line 2300 of file glext.h.

#define GL_OP_SET_LT_EXT 0x878D

Definition at line 2301 of file glext.h.

#define GL_OP_SUB_EXT 0x8796

Definition at line 2310 of file glext.h.

#define GL_OPERAND0_ALPHA 0x8598

Definition at line 266 of file glext.h.

#define GL_OPERAND0_ALPHA_ARB 0x8598

Definition at line 493 of file glext.h.

#define GL_OPERAND0_ALPHA_EXT 0x8598

Definition at line 1513 of file glext.h.

#define GL_OPERAND0_RGB 0x8590

Definition at line 263 of file glext.h.

#define GL_OPERAND0_RGB_ARB 0x8590

Definition at line 490 of file glext.h.

#define GL_OPERAND0_RGB_EXT 0x8590

Definition at line 1510 of file glext.h.

#define GL_OPERAND1_ALPHA 0x8599

Definition at line 267 of file glext.h.

#define GL_OPERAND1_ALPHA_ARB 0x8599

Definition at line 494 of file glext.h.

#define GL_OPERAND1_ALPHA_EXT 0x8599

Definition at line 1514 of file glext.h.

#define GL_OPERAND1_RGB 0x8591

Definition at line 264 of file glext.h.

#define GL_OPERAND1_RGB_ARB 0x8591

Definition at line 491 of file glext.h.

#define GL_OPERAND1_RGB_EXT 0x8591

Definition at line 1511 of file glext.h.

#define GL_OPERAND2_ALPHA 0x859A

Definition at line 268 of file glext.h.

#define GL_OPERAND2_ALPHA_ARB 0x859A

Definition at line 495 of file glext.h.

#define GL_OPERAND2_ALPHA_EXT 0x859A

Definition at line 1515 of file glext.h.

#define GL_OPERAND2_RGB 0x8592

Definition at line 265 of file glext.h.

#define GL_OPERAND2_RGB_ARB 0x8592

Definition at line 492 of file glext.h.

#define GL_OPERAND2_RGB_EXT 0x8592

Definition at line 1512 of file glext.h.

#define GL_OPERAND3_ALPHA_NV 0x859B

Definition at line 1745 of file glext.h.

#define GL_OPERAND3_RGB_NV 0x8593

Definition at line 1744 of file glext.h.

#define GL_OUTPUT_COLOR0_EXT 0x879B

Definition at line 2315 of file glext.h.

#define GL_OUTPUT_COLOR1_EXT 0x879C

Definition at line 2316 of file glext.h.

#define GL_OUTPUT_FOG_EXT 0x87BD

Definition at line 2349 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D

Definition at line 2317 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7

Definition at line 2327 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8

Definition at line 2328 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9

Definition at line 2329 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA

Definition at line 2330 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB

Definition at line 2331 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC

Definition at line 2332 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD

Definition at line 2333 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE

Definition at line 2334 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF

Definition at line 2335 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0

Definition at line 2336 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E

Definition at line 2318 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1

Definition at line 2337 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2

Definition at line 2338 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3

Definition at line 2339 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4

Definition at line 2340 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5

Definition at line 2341 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6

Definition at line 2342 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7

Definition at line 2343 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8

Definition at line 2344 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9

Definition at line 2345 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA

Definition at line 2346 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F

Definition at line 2319 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB

Definition at line 2347 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC

Definition at line 2348 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0

Definition at line 2320 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1

Definition at line 2321 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2

Definition at line 2322 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3

Definition at line 2323 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4

Definition at line 2324 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5

Definition at line 2325 of file glext.h.

#define GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6

Definition at line 2326 of file glext.h.

#define GL_OUTPUT_VERTEX_EXT 0x879A

Definition at line 2314 of file glext.h.

#define GL_PACK_CMYK_HINT_EXT 0x800E

Definition at line 865 of file glext.h.

#define GL_PACK_IMAGE_DEPTH_SGIS 0x8131

Definition at line 846 of file glext.h.

#define GL_PACK_IMAGE_HEIGHT 0x806C

Definition at line 67 of file glext.h.

#define GL_PACK_IMAGE_HEIGHT_EXT 0x806C

Definition at line 738 of file glext.h.

#define GL_PACK_RESAMPLE_OML 0x8984

Definition at line 2133 of file glext.h.

#define GL_PACK_RESAMPLE_SGIX 0x842C

Definition at line 1854 of file glext.h.

#define GL_PACK_SKIP_IMAGES 0x806B

Definition at line 66 of file glext.h.

#define GL_PACK_SKIP_IMAGES_EXT 0x806B

Definition at line 737 of file glext.h.

#define GL_PACK_SKIP_VOLUMES_SGIS 0x8130

Definition at line 845 of file glext.h.

#define GL_PACK_SUBSAMPLE_RATE_SGIX 0x85A0

Definition at line 1788 of file glext.h.

#define GL_PARALLEL_ARRAYS_INTEL 0x83F4

Definition at line 1406 of file glext.h.

#define GL_PASS_THROUGH_NV 0x86E6

Definition at line 1962 of file glext.h.

#define GL_PER_STAGE_CONSTANTS_NV 0x8535

Definition at line 1929 of file glext.h.

#define GL_PERTURB_EXT 0x85AE

Definition at line 1454 of file glext.h.

#define GL_PGI_misc_hints 1

Definition at line 3821 of file glext.h.

#define GL_PGI_vertex_hints 1

Definition at line 3817 of file glext.h.

#define GL_PHONG_HINT_WIN 0x80EB

Definition at line 1344 of file glext.h.

#define GL_PHONG_WIN 0x80EA

Definition at line 1343 of file glext.h.

#define GL_PIXEL_COUNT_AVAILABLE_NV 0x8867

Definition at line 2440 of file glext.h.

#define GL_PIXEL_COUNT_NV 0x8866

Definition at line 2439 of file glext.h.

#define GL_PIXEL_COUNTER_BITS_NV 0x8864

Definition at line 2437 of file glext.h.

#define GL_PIXEL_CUBIC_WEIGHT_EXT 0x8333

Definition at line 1422 of file glext.h.

#define GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS 0x8355

Definition at line 835 of file glext.h.

#define GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS 0x8354

Definition at line 834 of file glext.h.

#define GL_PIXEL_GROUP_COLOR_SGIS 0x8356

Definition at line 836 of file glext.h.

#define GL_PIXEL_MAG_FILTER_EXT 0x8331

Definition at line 1420 of file glext.h.

#define GL_PIXEL_MIN_FILTER_EXT 0x8332

Definition at line 1421 of file glext.h.

#define GL_PIXEL_SUBSAMPLE_2424_SGIX 0x85A3

Definition at line 1791 of file glext.h.

#define GL_PIXEL_SUBSAMPLE_4242_SGIX 0x85A4

Definition at line 1792 of file glext.h.

#define GL_PIXEL_SUBSAMPLE_4444_SGIX 0x85A2

Definition at line 1790 of file glext.h.

#define GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX 0x8189

Definition at line 1375 of file glext.h.

#define GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX 0x818A

Definition at line 1376 of file glext.h.

#define GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX 0x8188

Definition at line 1374 of file glext.h.

#define GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX 0x8187

Definition at line 1373 of file glext.h.

#define GL_PIXEL_TEX_GEN_MODE_SGIX 0x832B

Definition at line 841 of file glext.h.

#define GL_PIXEL_TEX_GEN_Q_CEILING_SGIX 0x8184

Definition at line 1370 of file glext.h.

#define GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX 0x8186

Definition at line 1372 of file glext.h.

#define GL_PIXEL_TEX_GEN_Q_ROUND_SGIX 0x8185

Definition at line 1371 of file glext.h.

#define GL_PIXEL_TEX_GEN_SGIX 0x8139

Definition at line 840 of file glext.h.

#define GL_PIXEL_TEXTURE_SGIS 0x8353

Definition at line 833 of file glext.h.

#define GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX 0x813E

Definition at line 1022 of file glext.h.

#define GL_PIXEL_TILE_CACHE_INCREMENT_SGIX 0x813F

Definition at line 1023 of file glext.h.

#define GL_PIXEL_TILE_CACHE_SIZE_SGIX 0x8145

Definition at line 1029 of file glext.h.

#define GL_PIXEL_TILE_GRID_DEPTH_SGIX 0x8144

Definition at line 1028 of file glext.h.

#define GL_PIXEL_TILE_GRID_HEIGHT_SGIX 0x8143

Definition at line 1027 of file glext.h.

#define GL_PIXEL_TILE_GRID_WIDTH_SGIX 0x8142

Definition at line 1026 of file glext.h.

#define GL_PIXEL_TILE_HEIGHT_SGIX 0x8141

Definition at line 1025 of file glext.h.

#define GL_PIXEL_TILE_WIDTH_SGIX 0x8140

Definition at line 1024 of file glext.h.

#define GL_PIXEL_TRANSFORM_2D_EXT 0x8330

Definition at line 1419 of file glext.h.

#define GL_PIXEL_TRANSFORM_2D_MATRIX_EXT 0x8338

Definition at line 1427 of file glext.h.

#define GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8336

Definition at line 1425 of file glext.h.

#define GL_PN_TRIANGLES_ATI 0x87F0

Definition at line 2265 of file glext.h.

#define GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3

Definition at line 2268 of file glext.h.

#define GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7

Definition at line 2272 of file glext.h.

#define GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8

Definition at line 2273 of file glext.h.

#define GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2

Definition at line 2267 of file glext.h.

#define GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6

Definition at line 2271 of file glext.h.

#define GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5

Definition at line 2270 of file glext.h.

#define GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4

Definition at line 2269 of file glext.h.

#define GL_POINT_DISTANCE_ATTENUATION 0x8129

Definition at line 288 of file glext.h.

#define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129

Definition at line 419 of file glext.h.

#define GL_POINT_FADE_THRESHOLD_SIZE 0x8128

Definition at line 287 of file glext.h.

#define GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128

Definition at line 418 of file glext.h.

#define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128

Definition at line 1074 of file glext.h.

#define GL_POINT_FADE_THRESHOLD_SIZE_SGIS 0x8128

Definition at line 1081 of file glext.h.

#define GL_POINT_SIZE_MAX 0x8127

Definition at line 286 of file glext.h.

#define GL_POINT_SIZE_MAX_ARB 0x8127

Definition at line 417 of file glext.h.

#define GL_POINT_SIZE_MAX_EXT 0x8127

Definition at line 1073 of file glext.h.

#define GL_POINT_SIZE_MAX_SGIS 0x8127

Definition at line 1080 of file glext.h.

#define GL_POINT_SIZE_MIN 0x8126

Definition at line 285 of file glext.h.

#define GL_POINT_SIZE_MIN_ARB 0x8126

Definition at line 416 of file glext.h.

#define GL_POINT_SIZE_MIN_EXT 0x8126

Definition at line 1072 of file glext.h.

#define GL_POINT_SIZE_MIN_SGIS 0x8126

Definition at line 1079 of file glext.h.

#define GL_POINT_SPRITE_NV 0x8861

Definition at line 2444 of file glext.h.

#define GL_POINT_SPRITE_R_MODE_NV 0x8863

Definition at line 2446 of file glext.h.

#define GL_POLYGON_OFFSET_BIAS_EXT 0x8039

Definition at line 687 of file glext.h.

#define GL_POLYGON_OFFSET_EXT 0x8037

Definition at line 685 of file glext.h.

#define GL_POLYGON_OFFSET_FACTOR_EXT 0x8038

Definition at line 686 of file glext.h.

#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB

Definition at line 158 of file glext.h.

#define GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI 0x80BB

Definition at line 810 of file glext.h.

#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7

Definition at line 154 of file glext.h.

#define GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI 0x80B7

Definition at line 806 of file glext.h.

#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA

Definition at line 157 of file glext.h.

#define GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI 0x80BA

Definition at line 809 of file glext.h.

#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6

Definition at line 153 of file glext.h.

#define GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI 0x80B6

Definition at line 805 of file glext.h.

#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2

Definition at line 161 of file glext.h.

#define GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D2

Definition at line 816 of file glext.h.

#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9

Definition at line 156 of file glext.h.

#define GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI 0x80B9

Definition at line 808 of file glext.h.

#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5

Definition at line 152 of file glext.h.

#define GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI 0x80B5

Definition at line 804 of file glext.h.

#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8

Definition at line 155 of file glext.h.

#define GL_POST_COLOR_MATRIX_RED_BIAS_SGI 0x80B8

Definition at line 807 of file glext.h.

#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4

Definition at line 151 of file glext.h.

#define GL_POST_COLOR_MATRIX_RED_SCALE_SGI 0x80B4

Definition at line 803 of file glext.h.

#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023

Definition at line 133 of file glext.h.

#define GL_POST_CONVOLUTION_ALPHA_BIAS_EXT 0x8023

Definition at line 796 of file glext.h.

#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F

Definition at line 129 of file glext.h.

#define GL_POST_CONVOLUTION_ALPHA_SCALE_EXT 0x801F

Definition at line 792 of file glext.h.

#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022

Definition at line 132 of file glext.h.

#define GL_POST_CONVOLUTION_BLUE_BIAS_EXT 0x8022

Definition at line 795 of file glext.h.

#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E

Definition at line 128 of file glext.h.

#define GL_POST_CONVOLUTION_BLUE_SCALE_EXT 0x801E

Definition at line 791 of file glext.h.

#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1

Definition at line 160 of file glext.h.

#define GL_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D1

Definition at line 815 of file glext.h.

#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021

Definition at line 131 of file glext.h.

#define GL_POST_CONVOLUTION_GREEN_BIAS_EXT 0x8021

Definition at line 794 of file glext.h.

#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D

Definition at line 127 of file glext.h.

#define GL_POST_CONVOLUTION_GREEN_SCALE_EXT 0x801D

Definition at line 790 of file glext.h.

#define GL_POST_CONVOLUTION_RED_BIAS 0x8020

Definition at line 130 of file glext.h.

#define GL_POST_CONVOLUTION_RED_BIAS_EXT 0x8020

Definition at line 793 of file glext.h.

#define GL_POST_CONVOLUTION_RED_SCALE 0x801C

Definition at line 126 of file glext.h.

#define GL_POST_CONVOLUTION_RED_SCALE_EXT 0x801C

Definition at line 789 of file glext.h.

#define GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP 0x8162

Definition at line 1157 of file glext.h.

#define GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX 0x817B

Definition at line 1093 of file glext.h.

#define GL_POST_TEXTURE_FILTER_BIAS_SGIX 0x8179

Definition at line 1091 of file glext.h.

#define GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX 0x817C

Definition at line 1094 of file glext.h.

#define GL_POST_TEXTURE_FILTER_SCALE_SGIX 0x817A

Definition at line 1092 of file glext.h.

#define GL_PREFER_DOUBLEBUFFER_HINT_PGI 0x1A1F8

Definition at line 1204 of file glext.h.

#define GL_PRESERVE_ATI 0x8762

Definition at line 2279 of file glext.h.

#define GL_PREVIOUS 0x8578

Definition at line 275 of file glext.h.

#define GL_PREVIOUS_ARB 0x8578

Definition at line 502 of file glext.h.

#define GL_PREVIOUS_EXT 0x8578

Definition at line 1503 of file glext.h.

#define GL_PREVIOUS_TEXTURE_INPUT_NV 0x86E4

Definition at line 1960 of file glext.h.

#define GL_PRIMARY_COLOR 0x8577

Definition at line 274 of file glext.h.

#define GL_PRIMARY_COLOR_ARB 0x8577

Definition at line 501 of file glext.h.

#define GL_PRIMARY_COLOR_EXT 0x8577

Definition at line 1502 of file glext.h.

#define GL_PRIMARY_COLOR_NV 0x852C

Definition at line 1676 of file glext.h.

#define GL_PRIMITIVE_RESTART_INDEX_NV 0x8559

Definition at line 2608 of file glext.h.

#define GL_PRIMITIVE_RESTART_NV 0x8558

Definition at line 2607 of file glext.h.

#define GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0

Definition at line 578 of file glext.h.

#define GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805

Definition at line 622 of file glext.h.

#define GL_PROGRAM_ATTRIBS_ARB 0x88AC

Definition at line 574 of file glext.h.

#define GL_PROGRAM_BINDING_ARB 0x8677

Definition at line 556 of file glext.h.

#define GL_PROGRAM_ERROR_POSITION_ARB 0x864B

Definition at line 555 of file glext.h.

#define GL_PROGRAM_ERROR_POSITION_NV 0x864B

Definition at line 2061 of file glext.h.

#define GL_PROGRAM_ERROR_STRING_ARB 0x8874

Definition at line 559 of file glext.h.

#define GL_PROGRAM_ERROR_STRING_NV 0x8874

Definition at line 2590 of file glext.h.

#define GL_PROGRAM_FORMAT_ARB 0x8876

Definition at line 561 of file glext.h.

#define GL_PROGRAM_FORMAT_ASCII_ARB 0x8875

Definition at line 560 of file glext.h.

#define GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0

Definition at line 562 of file glext.h.

#define GL_PROGRAM_LENGTH_ARB 0x8627

Definition at line 546 of file glext.h.

#define GL_PROGRAM_LENGTH_NV 0x8627

Definition at line 2033 of file glext.h.

#define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2

Definition at line 580 of file glext.h.

#define GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808

Definition at line 625 of file glext.h.

#define GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE

Definition at line 576 of file glext.h.

#define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2

Definition at line 564 of file glext.h.

#define GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA

Definition at line 572 of file glext.h.

#define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6

Definition at line 568 of file glext.h.

#define GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A

Definition at line 627 of file glext.h.

#define GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809

Definition at line 626 of file glext.h.

#define GL_PROGRAM_PARAMETER_NV 0x8644

Definition at line 2054 of file glext.h.

#define GL_PROGRAM_PARAMETERS_ARB 0x88A8

Definition at line 570 of file glext.h.

#define GL_PROGRAM_RESIDENT_NV 0x8647

Definition at line 2057 of file glext.h.

#define GL_PROGRAM_STRING_ARB 0x8628

Definition at line 547 of file glext.h.

#define GL_PROGRAM_STRING_NV 0x8628

Definition at line 2034 of file glext.h.

#define GL_PROGRAM_TARGET_NV 0x8646

Definition at line 2056 of file glext.h.

#define GL_PROGRAM_TEMPORARIES_ARB 0x88A4

Definition at line 566 of file glext.h.

#define GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807

Definition at line 624 of file glext.h.

#define GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806

Definition at line 623 of file glext.h.

#define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6

Definition at line 584 of file glext.h.

#define GL_PROXY_COLOR_TABLE 0x80D3

Definition at line 162 of file glext.h.

#define GL_PROXY_COLOR_TABLE_SGI 0x80D3

Definition at line 817 of file glext.h.

#define GL_PROXY_HISTOGRAM 0x8025

Definition at line 135 of file glext.h.

#define GL_PROXY_HISTOGRAM_EXT 0x8025

Definition at line 761 of file glext.h.

#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5

Definition at line 164 of file glext.h.

#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D5

Definition at line 819 of file glext.h.

#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4

Definition at line 163 of file glext.h.

#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D4

Definition at line 818 of file glext.h.

#define GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP 0x8163

Definition at line 1158 of file glext.h.

#define GL_PROXY_TEXTURE_1D_EXT 0x8063

Definition at line 731 of file glext.h.

#define GL_PROXY_TEXTURE_2D_EXT 0x8064

Definition at line 732 of file glext.h.

#define GL_PROXY_TEXTURE_3D 0x8070

Definition at line 71 of file glext.h.

#define GL_PROXY_TEXTURE_3D_EXT 0x8070

Definition at line 742 of file glext.h.

#define GL_PROXY_TEXTURE_4D_SGIS 0x8135

Definition at line 850 of file glext.h.

#define GL_PROXY_TEXTURE_COLOR_TABLE_SGI 0x80BD

Definition at line 859 of file glext.h.

#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B

Definition at line 239 of file glext.h.

#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B

Definition at line 393 of file glext.h.

#define GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B

Definition at line 1614 of file glext.h.

#define GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7

Definition at line 1938 of file glext.h.

#define GL_QUAD_ALPHA4_SGIS 0x811E

Definition at line 1047 of file glext.h.

#define GL_QUAD_ALPHA8_SGIS 0x811F

Definition at line 1048 of file glext.h.

#define GL_QUAD_INTENSITY4_SGIS 0x8122

Definition at line 1051 of file glext.h.

#define GL_QUAD_INTENSITY8_SGIS 0x8123

Definition at line 1052 of file glext.h.

#define GL_QUAD_LUMINANCE4_SGIS 0x8120

Definition at line 1049 of file glext.h.

#define GL_QUAD_LUMINANCE8_SGIS 0x8121

Definition at line 1050 of file glext.h.

#define GL_QUAD_MESH_SUN 0x8614

Definition at line 2420 of file glext.h.

#define GL_QUAD_TEXTURE_SELECT_SGIS 0x8125

Definition at line 1054 of file glext.h.

#define GL_QUARTER_BIT_ATI 0x00000010

Definition at line 2256 of file glext.h.

#define GL_R1UI_C3F_V3F_SUN 0x85C6

Definition at line 1553 of file glext.h.

#define GL_R1UI_C4F_N3F_V3F_SUN 0x85C8

Definition at line 1555 of file glext.h.

#define GL_R1UI_C4UB_V3F_SUN 0x85C5

Definition at line 1552 of file glext.h.

#define GL_R1UI_N3F_V3F_SUN 0x85C7

Definition at line 1554 of file glext.h.

#define GL_R1UI_T2F_C4F_N3F_V3F_SUN 0x85CB

Definition at line 1558 of file glext.h.

#define GL_R1UI_T2F_N3F_V3F_SUN 0x85CA

Definition at line 1557 of file glext.h.

#define GL_R1UI_T2F_V3F_SUN 0x85C9

Definition at line 1556 of file glext.h.

#define GL_R1UI_V3F_SUN 0x85C4

Definition at line 1551 of file glext.h.

#define GL_RASTER_POSITION_UNCLIPPED_IBM 0x19262

Definition at line 1328 of file glext.h.

#define GL_READ_ONLY_ARB 0x88B8

Definition at line 655 of file glext.h.

#define GL_READ_PIXEL_DATA_RANGE_LENGTH_NV 0x887B

Definition at line 2601 of file glext.h.

#define GL_READ_PIXEL_DATA_RANGE_NV 0x8879

Definition at line 2599 of file glext.h.

#define GL_READ_PIXEL_DATA_RANGE_POINTER_NV 0x887D

Definition at line 2603 of file glext.h.

#define GL_READ_WRITE_ARB 0x88BA

Definition at line 657 of file glext.h.

#define GL_RECLAIM_MEMORY_HINT_PGI 0x1A1FE

Definition at line 1206 of file glext.h.

#define GL_RED_BIT_ATI 0x00000001

Definition at line 2249 of file glext.h.

#define GL_RED_MAX_CLAMP_INGR 0x8564

Definition at line 1576 of file glext.h.

#define GL_RED_MIN_CLAMP_INGR 0x8560

Definition at line 1572 of file glext.h.

#define GL_REDUCE 0x8016

Definition at line 120 of file glext.h.

#define GL_REDUCE_EXT 0x8016

Definition at line 783 of file glext.h.

#define GL_REFERENCE_PLANE_EQUATION_SGIX 0x817E

Definition at line 1120 of file glext.h.

#define GL_REFERENCE_PLANE_SGIX 0x817D

Definition at line 1119 of file glext.h.

#define GL_REFLECTION_MAP 0x8512

Definition at line 230 of file glext.h.

#define GL_REFLECTION_MAP_ARB 0x8512

Definition at line 384 of file glext.h.

#define GL_REFLECTION_MAP_EXT 0x8512

Definition at line 1605 of file glext.h.

#define GL_REFLECTION_MAP_NV 0x8512

Definition at line 1600 of file glext.h.

#define GL_REG_0_ATI 0x8921

Definition at line 2159 of file glext.h.

#define GL_REG_10_ATI 0x892B

Definition at line 2169 of file glext.h.

#define GL_REG_11_ATI 0x892C

Definition at line 2170 of file glext.h.

#define GL_REG_12_ATI 0x892D

Definition at line 2171 of file glext.h.

#define GL_REG_13_ATI 0x892E

Definition at line 2172 of file glext.h.

#define GL_REG_14_ATI 0x892F

Definition at line 2173 of file glext.h.

#define GL_REG_15_ATI 0x8930

Definition at line 2174 of file glext.h.

#define GL_REG_16_ATI 0x8931

Definition at line 2175 of file glext.h.

#define GL_REG_17_ATI 0x8932

Definition at line 2176 of file glext.h.

#define GL_REG_18_ATI 0x8933

Definition at line 2177 of file glext.h.

#define GL_REG_19_ATI 0x8934

Definition at line 2178 of file glext.h.

#define GL_REG_1_ATI 0x8922

Definition at line 2160 of file glext.h.

#define GL_REG_20_ATI 0x8935

Definition at line 2179 of file glext.h.

#define GL_REG_21_ATI 0x8936

Definition at line 2180 of file glext.h.

#define GL_REG_22_ATI 0x8937

Definition at line 2181 of file glext.h.

#define GL_REG_23_ATI 0x8938

Definition at line 2182 of file glext.h.

#define GL_REG_24_ATI 0x8939

Definition at line 2183 of file glext.h.

#define GL_REG_25_ATI 0x893A

Definition at line 2184 of file glext.h.

#define GL_REG_26_ATI 0x893B

Definition at line 2185 of file glext.h.

#define GL_REG_27_ATI 0x893C

Definition at line 2186 of file glext.h.

#define GL_REG_28_ATI 0x893D

Definition at line 2187 of file glext.h.

#define GL_REG_29_ATI 0x893E

Definition at line 2188 of file glext.h.

#define GL_REG_2_ATI 0x8923

Definition at line 2161 of file glext.h.

#define GL_REG_30_ATI 0x893F

Definition at line 2189 of file glext.h.

#define GL_REG_31_ATI 0x8940

Definition at line 2190 of file glext.h.

#define GL_REG_3_ATI 0x8924

Definition at line 2162 of file glext.h.

#define GL_REG_4_ATI 0x8925

Definition at line 2163 of file glext.h.

#define GL_REG_5_ATI 0x8926

Definition at line 2164 of file glext.h.

#define GL_REG_6_ATI 0x8927

Definition at line 2165 of file glext.h.

#define GL_REG_7_ATI 0x8928

Definition at line 2166 of file glext.h.

#define GL_REG_8_ATI 0x8929

Definition at line 2167 of file glext.h.

#define GL_REG_9_ATI 0x892A

Definition at line 2168 of file glext.h.

#define GL_REGISTER_COMBINERS_NV 0x8522

Definition at line 1666 of file glext.h.

#define GL_REND_screen_coordinates 1

Definition at line 4159 of file glext.h.

#define GL_REPLACE_EXT 0x8062

Definition at line 730 of file glext.h.

#define GL_REPLACE_MIDDLE_SUN 0x0002

Definition at line 1543 of file glext.h.

#define GL_REPLACE_OLDEST_SUN 0x0003

Definition at line 1544 of file glext.h.

#define GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN 0x85C3

Definition at line 1550 of file glext.h.

#define GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN 0x85C2

Definition at line 1549 of file glext.h.

#define GL_REPLACEMENT_CODE_ARRAY_SUN 0x85C0

Definition at line 1547 of file glext.h.

#define GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN 0x85C1

Definition at line 1548 of file glext.h.

#define GL_REPLACEMENT_CODE_SUN 0x81D8

Definition at line 1546 of file glext.h.

#define GL_REPLICATE_BORDER 0x8153

Definition at line 176 of file glext.h.

#define GL_REPLICATE_BORDER_HP 0x8153

Definition at line 1164 of file glext.h.

#define GL_RESAMPLE_AVERAGE_OML 0x8988

Definition at line 2137 of file glext.h.

#define GL_RESAMPLE_DECIMATE_OML 0x8989

Definition at line 2138 of file glext.h.

#define GL_RESAMPLE_DECIMATE_SGIX 0x8430

Definition at line 1858 of file glext.h.

#define GL_RESAMPLE_REPLICATE_OML 0x8986

Definition at line 2135 of file glext.h.

#define GL_RESAMPLE_REPLICATE_SGIX 0x842E

Definition at line 1856 of file glext.h.

#define GL_RESAMPLE_ZERO_FILL_OML 0x8987

Definition at line 2136 of file glext.h.

#define GL_RESAMPLE_ZERO_FILL_SGIX 0x842F

Definition at line 1857 of file glext.h.

#define GL_RESCALE_NORMAL 0x803A

Definition at line 64 of file glext.h.

#define GL_RESCALE_NORMAL_EXT 0x803A

Definition at line 930 of file glext.h.

#define GL_RESTART_SUN 0x0001

Definition at line 1542 of file glext.h.

#define GL_RGB10_A2_EXT 0x8059

Definition at line 721 of file glext.h.

#define GL_RGB10_EXT 0x8052

Definition at line 714 of file glext.h.

#define GL_RGB12_EXT 0x8053

Definition at line 715 of file glext.h.

#define GL_RGB16_EXT 0x8054

Definition at line 716 of file glext.h.

#define GL_RGB2_EXT 0x804E

Definition at line 710 of file glext.h.

#define GL_RGB4_EXT 0x804F

Definition at line 711 of file glext.h.

#define GL_RGB4_S3TC 0x83A1

Definition at line 2520 of file glext.h.

#define GL_RGB5_A1_EXT 0x8057

Definition at line 719 of file glext.h.

#define GL_RGB5_EXT 0x8050

Definition at line 712 of file glext.h.

#define GL_RGB8_EXT 0x8051

Definition at line 713 of file glext.h.

#define GL_RGB_FLOAT16_ATI 0x881B

Definition at line 2559 of file glext.h.

#define GL_RGB_FLOAT32_ATI 0x8815

Definition at line 2553 of file glext.h.

#define GL_RGB_S3TC 0x83A0

Definition at line 2519 of file glext.h.

#define GL_RGB_SCALE 0x8573

Definition at line 269 of file glext.h.

#define GL_RGB_SCALE_ARB 0x8573

Definition at line 496 of file glext.h.

#define GL_RGB_SCALE_EXT 0x8573

Definition at line 1498 of file glext.h.

#define GL_RGBA12_EXT 0x805A

Definition at line 722 of file glext.h.

#define GL_RGBA16_EXT 0x805B

Definition at line 723 of file glext.h.

#define GL_RGBA2_EXT 0x8055

Definition at line 717 of file glext.h.

#define GL_RGBA4_EXT 0x8056

Definition at line 718 of file glext.h.

#define GL_RGBA4_S3TC 0x83A3

Definition at line 2522 of file glext.h.

#define GL_RGBA8_EXT 0x8058

Definition at line 720 of file glext.h.

#define GL_RGBA_FLOAT16_ATI 0x881A

Definition at line 2558 of file glext.h.

#define GL_RGBA_FLOAT32_ATI 0x8814

Definition at line 2552 of file glext.h.

#define GL_RGBA_S3TC 0x83A2

Definition at line 2521 of file glext.h.

#define GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86D9

Definition at line 1946 of file glext.h.

#define GL_S3_s3tc 1

Definition at line 5339 of file glext.h.

#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E

Definition at line 221 of file glext.h.

#define GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809E

Definition at line 369 of file glext.h.

#define GL_SAMPLE_ALPHA_TO_MASK_EXT 0x809E

Definition at line 1826 of file glext.h.

#define GL_SAMPLE_ALPHA_TO_MASK_SGIS 0x809E

Definition at line 912 of file glext.h.

#define GL_SAMPLE_ALPHA_TO_ONE 0x809F

Definition at line 222 of file glext.h.

#define GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809F

Definition at line 370 of file glext.h.

#define GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F

Definition at line 1827 of file glext.h.

#define GL_SAMPLE_ALPHA_TO_ONE_SGIS 0x809F

Definition at line 913 of file glext.h.

#define GL_SAMPLE_BUFFERS 0x80A8

Definition at line 224 of file glext.h.

#define GL_SAMPLE_BUFFERS_3DFX 0x86B3

Definition at line 1816 of file glext.h.

#define GL_SAMPLE_BUFFERS_ARB 0x80A8

Definition at line 372 of file glext.h.

#define GL_SAMPLE_BUFFERS_EXT 0x80A8

Definition at line 1836 of file glext.h.

#define GL_SAMPLE_BUFFERS_SGIS 0x80A8

Definition at line 922 of file glext.h.

#define GL_SAMPLE_COVERAGE 0x80A0

Definition at line 223 of file glext.h.

#define GL_SAMPLE_COVERAGE_ARB 0x80A0

Definition at line 371 of file glext.h.

#define GL_SAMPLE_COVERAGE_INVERT 0x80AB

Definition at line 227 of file glext.h.

#define GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB

Definition at line 375 of file glext.h.

#define GL_SAMPLE_COVERAGE_VALUE 0x80AA

Definition at line 226 of file glext.h.

#define GL_SAMPLE_COVERAGE_VALUE_ARB 0x80AA

Definition at line 374 of file glext.h.

#define GL_SAMPLE_MASK_EXT 0x80A0

Definition at line 1828 of file glext.h.

#define GL_SAMPLE_MASK_INVERT_EXT 0x80AB

Definition at line 1839 of file glext.h.

#define GL_SAMPLE_MASK_INVERT_SGIS 0x80AB

Definition at line 925 of file glext.h.

#define GL_SAMPLE_MASK_SGIS 0x80A0

Definition at line 914 of file glext.h.

#define GL_SAMPLE_MASK_VALUE_EXT 0x80AA

Definition at line 1838 of file glext.h.

#define GL_SAMPLE_MASK_VALUE_SGIS 0x80AA

Definition at line 924 of file glext.h.

#define GL_SAMPLE_PATTERN_EXT 0x80AC

Definition at line 1840 of file glext.h.

#define GL_SAMPLE_PATTERN_SGIS 0x80AC

Definition at line 926 of file glext.h.

#define GL_SAMPLES 0x80A9

Definition at line 225 of file glext.h.

#define GL_SAMPLES_3DFX 0x86B4

Definition at line 1817 of file glext.h.

#define GL_SAMPLES_ARB 0x80A9

Definition at line 373 of file glext.h.

#define GL_SAMPLES_EXT 0x80A9

Definition at line 1837 of file glext.h.

#define GL_SAMPLES_SGIS 0x80A9

Definition at line 923 of file glext.h.

#define GL_SATURATE_BIT_ATI 0x00000040

Definition at line 2258 of file glext.h.

#define GL_SCALAR_EXT 0x87BE

Definition at line 2350 of file glext.h.

#define GL_SCALE_BY_FOUR_NV 0x853F

Definition at line 1692 of file glext.h.

#define GL_SCALE_BY_ONE_HALF_NV 0x8540

Definition at line 1693 of file glext.h.

#define GL_SCALE_BY_TWO_NV 0x853E

Definition at line 1691 of file glext.h.

#define GL_SCALEBIAS_HINT_SGIX 0x8322

Definition at line 2119 of file glext.h.

#define GL_SCREEN_COORDINATES_REND 0x8490

Definition at line 1473 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY 0x845E

Definition at line 309 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C

Definition at line 651 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_EXT 0x845E

Definition at line 1450 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_LIST_IBM 103077

Definition at line 1776 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM 103087

Definition at line 1784 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D

Definition at line 308 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D

Definition at line 1449 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A

Definition at line 305 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A

Definition at line 1446 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C

Definition at line 307 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C

Definition at line 1448 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B

Definition at line 306 of file glext.h.

#define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B

Definition at line 1447 of file glext.h.

#define GL_SECONDARY_COLOR_NV 0x852D

Definition at line 1677 of file glext.h.

#define GL_SECONDARY_INTERPOLATOR_ATI 0x896D

Definition at line 2234 of file glext.h.

#define GL_SEPARABLE_2D 0x8012

Definition at line 116 of file glext.h.

#define GL_SEPARABLE_2D_EXT 0x8012

Definition at line 779 of file glext.h.

#define GL_SEPARATE_SPECULAR_COLOR 0x81FA

Definition at line 93 of file glext.h.

#define GL_SEPARATE_SPECULAR_COLOR_EXT 0x81FA

Definition at line 1440 of file glext.h.

#define GL_SGI_color_table 1

Definition at line 3457 of file glext.h.

#define GL_SGI_texture_color_table 1

Definition at line 3513 of file glext.h.

#define GL_SGIS_detail_texture 1

Definition at line 3539 of file glext.h.

#define GL_SGIS_fog_function 1

Definition at line 3767 of file glext.h.

#define GL_SGIS_generate_mipmap 1

Definition at line 3609 of file glext.h.

#define GL_SGIS_multisample 1

Definition at line 3567 of file glext.h.

#define GL_SGIS_pixel_texture 1

Definition at line 3485 of file glext.h.

#define GL_SGIS_point_line_texgen 1

Definition at line 4643 of file glext.h.

#define GL_SGIS_point_parameters 1

Definition at line 3685 of file glext.h.

#define GL_SGIS_sharpen_texture 1

Definition at line 3549 of file glext.h.

#define GL_SGIS_texture4D 1

Definition at line 3503 of file glext.h.

#define GL_SGIS_texture_border_clamp 1

Definition at line 3625 of file glext.h.

#define GL_SGIS_texture_color_mask 1

Definition at line 4647 of file glext.h.

#define GL_SGIS_texture_edge_clamp 1

Definition at line 3621 of file glext.h.

#define GL_SGIS_texture_filter4 1

Definition at line 3359 of file glext.h.

#define GL_SGIS_texture_lod 1

Definition at line 3563 of file glext.h.

#define GL_SGIX_async 1

Definition at line 4015 of file glext.h.

#define GL_SGIX_async_histogram 1

Definition at line 4037 of file glext.h.

#define GL_SGIX_async_pixel 1

Definition at line 4033 of file glext.h.

#define GL_SGIX_blend_alpha_minmax 1

Definition at line 4007 of file glext.h.

#define GL_SGIX_calligraphic_fragment 1

Definition at line 3869 of file glext.h.

#define GL_SGIX_clipmap 1

Definition at line 3613 of file glext.h.

#define GL_SGIX_convolution_accuracy 1

Definition at line 4635 of file glext.h.

#define GL_SGIX_depth_pass_instrument 1

Definition at line 4601 of file glext.h.

#define GL_SGIX_depth_texture 1

Definition at line 3763 of file glext.h.

#define GL_SGIX_flush_raster 1

Definition at line 3755 of file glext.h.

#define GL_SGIX_fog_offset 1

Definition at line 3777 of file glext.h.

#define GL_SGIX_fog_scale 1

Definition at line 4225 of file glext.h.

#define GL_SGIX_fragment_lighting 1

Definition at line 3929 of file glext.h.

#define GL_SGIX_framezoom 1

Definition at line 3717 of file glext.h.

#define GL_SGIX_igloo_interface 1

Definition at line 4655 of file glext.h.

#define GL_SGIX_instruments 1

Definition at line 3695 of file glext.h.

#define GL_SGIX_interlace 1

Definition at line 3645 of file glext.h.

#define GL_SGIX_ir_instrument1 1

Definition at line 3865 of file glext.h.

#define GL_SGIX_list_priority 1

Definition at line 3847 of file glext.h.

#define GL_SGIX_pixel_texture 1

Definition at line 3477 of file glext.h.

#define GL_SGIX_pixel_tiles 1

Definition at line 3649 of file glext.h.

#define GL_SGIX_polynomial_ffd 1

Definition at line 3733 of file glext.h.

#define GL_SGIX_reference_plane 1

Definition at line 3747 of file glext.h.

#define GL_SGIX_resample 1

Definition at line 4639 of file glext.h.

#define GL_SGIX_scalebias_hint 1

Definition at line 4887 of file glext.h.

#define GL_SGIX_shadow 1

Definition at line 3617 of file glext.h.

#define GL_SGIX_shadow_ambient 1

Definition at line 3877 of file glext.h.

#define GL_SGIX_sprite 1

Definition at line 3657 of file glext.h.

#define GL_SGIX_subsample 1

Definition at line 4589 of file glext.h.

#define GL_SGIX_tag_sample_buffer 1

Definition at line 3725 of file glext.h.

#define GL_SGIX_texture_add_env 1

Definition at line 3803 of file glext.h.

#define GL_SGIX_texture_coordinate_clamp 1

Definition at line 4883 of file glext.h.

#define GL_SGIX_texture_lod_bias 1

Definition at line 3873 of file glext.h.

#define GL_SGIX_texture_multi_buffer 1

Definition at line 3671 of file glext.h.

#define GL_SGIX_texture_scale_bias 1

Definition at line 3713 of file glext.h.

#define GL_SGIX_texture_select 1

Definition at line 3653 of file glext.h.

#define GL_SGIX_vertex_preclip 1

Definition at line 4631 of file glext.h.

#define GL_SGIX_ycrcb 1

Definition at line 3925 of file glext.h.

#define GL_SGIX_ycrcb_subsample 1

Definition at line 4597 of file glext.h.

#define GL_SGIX_ycrcba 1

Definition at line 4593 of file glext.h.

#define GL_SHADER_CONSISTENT_NV 0x86DD

Definition at line 1950 of file glext.h.

#define GL_SHADER_OPERATION_NV 0x86DF

Definition at line 1952 of file glext.h.

#define GL_SHADOW_AMBIENT_SGIX 0x80BF

Definition at line 1259 of file glext.h.

#define GL_SHADOW_ATTENUATION_EXT 0x834E

Definition at line 1356 of file glext.h.

#define GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB

Definition at line 1434 of file glext.h.

#define GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS 0x80B0

Definition at line 892 of file glext.h.

#define GL_SIGNED_ALPHA8_NV 0x8706

Definition at line 1990 of file glext.h.

#define GL_SIGNED_ALPHA_NV 0x8705

Definition at line 1989 of file glext.h.

#define GL_SIGNED_HILO16_NV 0x86FA

Definition at line 1980 of file glext.h.

#define GL_SIGNED_HILO8_NV 0x885F

Definition at line 2465 of file glext.h.

#define GL_SIGNED_HILO_NV 0x86F9

Definition at line 1979 of file glext.h.

#define GL_SIGNED_IDENTITY_NV 0x853C

Definition at line 1689 of file glext.h.

#define GL_SIGNED_INTENSITY8_NV 0x8708

Definition at line 1992 of file glext.h.

#define GL_SIGNED_INTENSITY_NV 0x8707

Definition at line 1991 of file glext.h.

#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704

Definition at line 1988 of file glext.h.

#define GL_SIGNED_LUMINANCE8_NV 0x8702

Definition at line 1986 of file glext.h.

#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703

Definition at line 1987 of file glext.h.

#define GL_SIGNED_LUMINANCE_NV 0x8701

Definition at line 1985 of file glext.h.

#define GL_SIGNED_NEGATE_NV 0x853D

Definition at line 1690 of file glext.h.

#define GL_SIGNED_RGB8_NV 0x86FF

Definition at line 1984 of file glext.h.

#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D

Definition at line 1997 of file glext.h.

#define GL_SIGNED_RGB_NV 0x86FE

Definition at line 1983 of file glext.h.

#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C

Definition at line 1996 of file glext.h.

#define GL_SIGNED_RGBA8_NV 0x86FC

Definition at line 1982 of file glext.h.

#define GL_SIGNED_RGBA_NV 0x86FB

Definition at line 1981 of file glext.h.

#define GL_SINGLE_COLOR 0x81F9

Definition at line 92 of file glext.h.

#define GL_SINGLE_COLOR_EXT 0x81F9

Definition at line 1439 of file glext.h.

#define GL_SLICE_ACCUM_SUN 0x85CC

Definition at line 2425 of file glext.h.

#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23

Definition at line 97 of file glext.h.

#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22

Definition at line 96 of file glext.h.

#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13

Definition at line 95 of file glext.h.

#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12

Definition at line 94 of file glext.h.

#define GL_SOURCE0_ALPHA 0x8588

Definition at line 260 of file glext.h.

#define GL_SOURCE0_ALPHA_ARB 0x8588

Definition at line 487 of file glext.h.

#define GL_SOURCE0_ALPHA_EXT 0x8588

Definition at line 1507 of file glext.h.

#define GL_SOURCE0_RGB 0x8580

Definition at line 257 of file glext.h.

#define GL_SOURCE0_RGB_ARB 0x8580

Definition at line 484 of file glext.h.

#define GL_SOURCE0_RGB_EXT 0x8580

Definition at line 1504 of file glext.h.

#define GL_SOURCE1_ALPHA 0x8589

Definition at line 261 of file glext.h.

#define GL_SOURCE1_ALPHA_ARB 0x8589

Definition at line 488 of file glext.h.

#define GL_SOURCE1_ALPHA_EXT 0x8589

Definition at line 1508 of file glext.h.

#define GL_SOURCE1_RGB 0x8581

Definition at line 258 of file glext.h.

#define GL_SOURCE1_RGB_ARB 0x8581

Definition at line 485 of file glext.h.

#define GL_SOURCE1_RGB_EXT 0x8581

Definition at line 1505 of file glext.h.

#define GL_SOURCE2_ALPHA 0x858A

Definition at line 262 of file glext.h.

#define GL_SOURCE2_ALPHA_ARB 0x858A

Definition at line 489 of file glext.h.

#define GL_SOURCE2_ALPHA_EXT 0x858A

Definition at line 1509 of file glext.h.

#define GL_SOURCE2_RGB 0x8582

Definition at line 259 of file glext.h.

#define GL_SOURCE2_RGB_ARB 0x8582

Definition at line 486 of file glext.h.

#define GL_SOURCE2_RGB_EXT 0x8582

Definition at line 1506 of file glext.h.

#define GL_SOURCE3_ALPHA_NV 0x858B

Definition at line 1743 of file glext.h.

#define GL_SOURCE3_RGB_NV 0x8583

Definition at line 1742 of file glext.h.

#define GL_SPARE0_NV 0x852E

Definition at line 1678 of file glext.h.

#define GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532

Definition at line 1682 of file glext.h.

#define GL_SPARE1_NV 0x852F

Definition at line 1679 of file glext.h.

#define GL_SPRITE_AXIAL_SGIX 0x814C

Definition at line 1062 of file glext.h.

#define GL_SPRITE_AXIS_SGIX 0x814A

Definition at line 1060 of file glext.h.

#define GL_SPRITE_EYE_ALIGNED_SGIX 0x814E

Definition at line 1064 of file glext.h.

#define GL_SPRITE_MODE_SGIX 0x8149

Definition at line 1059 of file glext.h.

#define GL_SPRITE_OBJECT_ALIGNED_SGIX 0x814D

Definition at line 1063 of file glext.h.

#define GL_SPRITE_SGIX 0x8148

Definition at line 1058 of file glext.h.

#define GL_SPRITE_TRANSLATION_SGIX 0x814B

Definition at line 1061 of file glext.h.

#define GL_STATIC_ATI 0x8760

Definition at line 2277 of file glext.h.

#define GL_STATIC_COPY_ARB 0x88E6

Definition at line 666 of file glext.h.

#define GL_STATIC_DRAW_ARB 0x88E4

Definition at line 664 of file glext.h.

#define GL_STATIC_READ_ARB 0x88E5

Definition at line 665 of file glext.h.

#define GL_STENCIL_BACK_FAIL_ATI 0x8801

Definition at line 2623 of file glext.h.

#define GL_STENCIL_BACK_FUNC_ATI 0x8800

Definition at line 2622 of file glext.h.

#define GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802

Definition at line 2624 of file glext.h.

#define GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803

Definition at line 2625 of file glext.h.

#define GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910

Definition at line 2476 of file glext.h.

#define GL_STORAGE_CACHED_APPLE 0x85BE

Definition at line 2508 of file glext.h.

#define GL_STORAGE_SHARED_APPLE 0x85BF

Definition at line 2509 of file glext.h.

#define GL_STREAM_COPY_ARB 0x88E2

Definition at line 663 of file glext.h.

#define GL_STREAM_DRAW_ARB 0x88E0

Definition at line 661 of file glext.h.

#define GL_STREAM_READ_ARB 0x88E1

Definition at line 662 of file glext.h.

#define GL_STRICT_DEPTHFUNC_HINT_PGI 0x1A216

Definition at line 1216 of file glext.h.

#define GL_STRICT_LIGHTING_HINT_PGI 0x1A217

Definition at line 1217 of file glext.h.

#define GL_STRICT_SCISSOR_HINT_PGI 0x1A218

Definition at line 1218 of file glext.h.

#define GL_SUB_ATI 0x8965

Definition at line 2226 of file glext.h.

#define GL_SUBTRACT 0x84E7

Definition at line 272 of file glext.h.

#define GL_SUBTRACT_ARB 0x84E7

Definition at line 499 of file glext.h.

#define GL_SUN_convolution_border_modes 1

Definition at line 4401 of file glext.h.

#define GL_SUN_global_alpha 1

Definition at line 4237 of file glext.h.

#define GL_SUN_mesh_array 1

Definition at line 5193 of file glext.h.

#define GL_SUN_slice_accum 1

Definition at line 5201 of file glext.h.

#define GL_SUN_triangle_list 1

Definition at line 4259 of file glext.h.

#define GL_SUN_vertex 1

Definition at line 4279 of file glext.h.

#define GL_SUNX_constant_data 1

Definition at line 4229 of file glext.h.

#define GL_SWIZZLE_STQ_ATI 0x8977

Definition at line 2244 of file glext.h.

#define GL_SWIZZLE_STQ_DQ_ATI 0x8979

Definition at line 2246 of file glext.h.

#define GL_SWIZZLE_STR_ATI 0x8976

Definition at line 2243 of file glext.h.

#define GL_SWIZZLE_STR_DR_ATI 0x8978

Definition at line 2245 of file glext.h.

#define GL_SWIZZLE_STRQ_ATI 0x897A

Definition at line 2247 of file glext.h.

#define GL_SWIZZLE_STRQ_DQ_ATI 0x897B

Definition at line 2248 of file glext.h.

#define GL_T2F_IUI_N3F_V2F_EXT 0x81B3

Definition at line 1284 of file glext.h.

#define GL_T2F_IUI_N3F_V3F_EXT 0x81B4

Definition at line 1285 of file glext.h.

#define GL_T2F_IUI_V2F_EXT 0x81B1

Definition at line 1282 of file glext.h.

#define GL_T2F_IUI_V3F_EXT 0x81B2

Definition at line 1283 of file glext.h.

#define GL_TABLE_TOO_LARGE 0x8031

Definition at line 147 of file glext.h.

#define GL_TABLE_TOO_LARGE_EXT 0x8031

Definition at line 773 of file glext.h.

#define GL_TANGENT_ARRAY_EXT 0x8439

Definition at line 1478 of file glext.h.

#define GL_TANGENT_ARRAY_POINTER_EXT 0x8442

Definition at line 1486 of file glext.h.

#define GL_TANGENT_ARRAY_STRIDE_EXT 0x843F

Definition at line 1483 of file glext.h.

#define GL_TANGENT_ARRAY_TYPE_EXT 0x843E

Definition at line 1482 of file glext.h.

#define GL_TEXCOORD1_BIT_PGI 0x10000000

Definition at line 1195 of file glext.h.

#define GL_TEXCOORD2_BIT_PGI 0x20000000

Definition at line 1196 of file glext.h.

#define GL_TEXCOORD3_BIT_PGI 0x40000000

Definition at line 1197 of file glext.h.

#define GL_TEXCOORD4_BIT_PGI 0x80000000

Definition at line 1198 of file glext.h.

#define GL_TEXT_FRAGMENT_SHADER_ATI 0x8200

Definition at line 2481 of file glext.h.

#define GL_TEXTURE0 0x84C0

Definition at line 181 of file glext.h.

#define GL_TEXTURE0_ARB 0x84C0

Definition at line 323 of file glext.h.

#define GL_TEXTURE1 0x84C1

Definition at line 182 of file glext.h.

#define GL_TEXTURE10 0x84CA

Definition at line 191 of file glext.h.

#define GL_TEXTURE10_ARB 0x84CA

Definition at line 333 of file glext.h.

#define GL_TEXTURE11 0x84CB

Definition at line 192 of file glext.h.

#define GL_TEXTURE11_ARB 0x84CB

Definition at line 334 of file glext.h.

#define GL_TEXTURE12 0x84CC

Definition at line 193 of file glext.h.

#define GL_TEXTURE12_ARB 0x84CC

Definition at line 335 of file glext.h.

#define GL_TEXTURE13 0x84CD

Definition at line 194 of file glext.h.

#define GL_TEXTURE13_ARB 0x84CD

Definition at line 336 of file glext.h.

#define GL_TEXTURE14 0x84CE

Definition at line 195 of file glext.h.

#define GL_TEXTURE14_ARB 0x84CE

Definition at line 337 of file glext.h.

#define GL_TEXTURE15 0x84CF

Definition at line 196 of file glext.h.

#define GL_TEXTURE15_ARB 0x84CF

Definition at line 338 of file glext.h.

#define GL_TEXTURE16 0x84D0

Definition at line 197 of file glext.h.

#define GL_TEXTURE16_ARB 0x84D0

Definition at line 339 of file glext.h.

#define GL_TEXTURE17 0x84D1

Definition at line 198 of file glext.h.

#define GL_TEXTURE17_ARB 0x84D1

Definition at line 340 of file glext.h.

#define GL_TEXTURE18 0x84D2

Definition at line 199 of file glext.h.

#define GL_TEXTURE18_ARB 0x84D2

Definition at line 341 of file glext.h.

#define GL_TEXTURE19 0x84D3

Definition at line 200 of file glext.h.

#define GL_TEXTURE19_ARB 0x84D3

Definition at line 342 of file glext.h.

#define GL_TEXTURE1_ARB 0x84C1

Definition at line 324 of file glext.h.

#define GL_TEXTURE2 0x84C2

Definition at line 183 of file glext.h.

#define GL_TEXTURE20 0x84D4

Definition at line 201 of file glext.h.

#define GL_TEXTURE20_ARB 0x84D4

Definition at line 343 of file glext.h.

#define GL_TEXTURE21 0x84D5

Definition at line 202 of file glext.h.

#define GL_TEXTURE21_ARB 0x84D5

Definition at line 344 of file glext.h.

#define GL_TEXTURE22 0x84D6

Definition at line 203 of file glext.h.

#define GL_TEXTURE22_ARB 0x84D6

Definition at line 345 of file glext.h.

#define GL_TEXTURE23 0x84D7

Definition at line 204 of file glext.h.

#define GL_TEXTURE23_ARB 0x84D7

Definition at line 346 of file glext.h.

#define GL_TEXTURE24 0x84D8

Definition at line 205 of file glext.h.

#define GL_TEXTURE24_ARB 0x84D8

Definition at line 347 of file glext.h.

#define GL_TEXTURE25 0x84D9

Definition at line 206 of file glext.h.

#define GL_TEXTURE25_ARB 0x84D9

Definition at line 348 of file glext.h.

#define GL_TEXTURE26 0x84DA

Definition at line 207 of file glext.h.

#define GL_TEXTURE26_ARB 0x84DA

Definition at line 349 of file glext.h.

#define GL_TEXTURE27 0x84DB

Definition at line 208 of file glext.h.

#define GL_TEXTURE27_ARB 0x84DB

Definition at line 350 of file glext.h.

#define GL_TEXTURE28 0x84DC

Definition at line 209 of file glext.h.

#define GL_TEXTURE28_ARB 0x84DC

Definition at line 351 of file glext.h.

#define GL_TEXTURE29 0x84DD

Definition at line 210 of file glext.h.

#define GL_TEXTURE29_ARB 0x84DD

Definition at line 352 of file glext.h.

#define GL_TEXTURE2_ARB 0x84C2

Definition at line 325 of file glext.h.

#define GL_TEXTURE3 0x84C3

Definition at line 184 of file glext.h.

#define GL_TEXTURE30 0x84DE

Definition at line 211 of file glext.h.

#define GL_TEXTURE30_ARB 0x84DE

Definition at line 353 of file glext.h.

#define GL_TEXTURE31 0x84DF

Definition at line 212 of file glext.h.

#define GL_TEXTURE31_ARB 0x84DF

Definition at line 354 of file glext.h.

#define GL_TEXTURE3_ARB 0x84C3

Definition at line 326 of file glext.h.

#define GL_TEXTURE4 0x84C4

Definition at line 185 of file glext.h.

#define GL_TEXTURE4_ARB 0x84C4

Definition at line 327 of file glext.h.

#define GL_TEXTURE5 0x84C5

Definition at line 186 of file glext.h.

#define GL_TEXTURE5_ARB 0x84C5

Definition at line 328 of file glext.h.

#define GL_TEXTURE6 0x84C6

Definition at line 187 of file glext.h.

#define GL_TEXTURE6_ARB 0x84C6

Definition at line 329 of file glext.h.

#define GL_TEXTURE7 0x84C7

Definition at line 188 of file glext.h.

#define GL_TEXTURE7_ARB 0x84C7

Definition at line 330 of file glext.h.

#define GL_TEXTURE8 0x84C8

Definition at line 189 of file glext.h.

#define GL_TEXTURE8_ARB 0x84C8

Definition at line 331 of file glext.h.

#define GL_TEXTURE9 0x84C9

Definition at line 190 of file glext.h.

#define GL_TEXTURE9_ARB 0x84C9

Definition at line 332 of file glext.h.

#define GL_TEXTURE_1D_BINDING_EXT 0x8068

Definition at line 872 of file glext.h.

#define GL_TEXTURE_2D_BINDING_EXT 0x8069

Definition at line 873 of file glext.h.

#define GL_TEXTURE_3D 0x806F

Definition at line 70 of file glext.h.

#define GL_TEXTURE_3D_BINDING_EXT 0x806A

Definition at line 874 of file glext.h.

#define GL_TEXTURE_3D_EXT 0x806F

Definition at line 741 of file glext.h.

#define GL_TEXTURE_4D_BINDING_SGIS 0x814F

Definition at line 854 of file glext.h.

#define GL_TEXTURE_4D_SGIS 0x8134

Definition at line 849 of file glext.h.

#define GL_TEXTURE_4DSIZE_SGIS 0x8136

Definition at line 851 of file glext.h.

#define GL_TEXTURE_ALPHA_SIZE_EXT 0x805F

Definition at line 727 of file glext.h.

#define GL_TEXTURE_APPLICATION_MODE_EXT 0x834F

Definition at line 1357 of file glext.h.

#define GL_TEXTURE_BASE_LEVEL 0x813C

Definition at line 89 of file glext.h.

#define GL_TEXTURE_BASE_LEVEL_SGIS 0x813C

Definition at line 906 of file glext.h.

#define GL_TEXTURE_BINDING_3D 0x806A

Definition at line 65 of file glext.h.

#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514

Definition at line 232 of file glext.h.

#define GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514

Definition at line 386 of file glext.h.

#define GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514

Definition at line 1607 of file glext.h.

#define GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6

Definition at line 1937 of file glext.h.

#define GL_TEXTURE_BLUE_SIZE_EXT 0x805E

Definition at line 726 of file glext.h.

#define GL_TEXTURE_BORDER_VALUES_NV 0x871A

Definition at line 2010 of file glext.h.

#define GL_TEXTURE_CLIPMAP_CENTER_SGIX 0x8171

Definition at line 978 of file glext.h.

#define GL_TEXTURE_CLIPMAP_DEPTH_SGIX 0x8176

Definition at line 983 of file glext.h.

#define GL_TEXTURE_CLIPMAP_FRAME_SGIX 0x8172

Definition at line 979 of file glext.h.

#define GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX 0x8175

Definition at line 982 of file glext.h.

#define GL_TEXTURE_CLIPMAP_OFFSET_SGIX 0x8173

Definition at line 980 of file glext.h.

#define GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX 0x8174

Definition at line 981 of file glext.h.

#define GL_TEXTURE_COLOR_TABLE_SGI 0x80BC

Definition at line 858 of file glext.h.

#define GL_TEXTURE_COLOR_WRITEMASK_SGIS 0x81EF

Definition at line 1873 of file glext.h.

#define GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF

Definition at line 532 of file glext.h.

#define GL_TEXTURE_COMPARE_FUNC 0x884D

Definition at line 318 of file glext.h.

#define GL_TEXTURE_COMPARE_FUNC_ARB 0x884D

Definition at line 527 of file glext.h.

#define GL_TEXTURE_COMPARE_MODE 0x884C

Definition at line 317 of file glext.h.

#define GL_TEXTURE_COMPARE_MODE_ARB 0x884C

Definition at line 526 of file glext.h.

#define GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B

Definition at line 993 of file glext.h.

#define GL_TEXTURE_COMPARE_SGIX 0x819A

Definition at line 992 of file glext.h.

#define GL_TEXTURE_COMPRESSED 0x86A1

Definition at line 249 of file glext.h.

#define GL_TEXTURE_COMPRESSED_ARB 0x86A1

Definition at line 406 of file glext.h.

#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0

Definition at line 248 of file glext.h.

#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0

Definition at line 405 of file glext.h.

#define GL_TEXTURE_COMPRESSION_HINT 0x84EF

Definition at line 247 of file glext.h.

#define GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF

Definition at line 404 of file glext.h.

#define GL_TEXTURE_CONSTANT_DATA_SUNX 0x81D6

Definition at line 1533 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A

Definition at line 649 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B

Definition at line 957 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_EXT 0x8078

Definition at line 938 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_LIST_IBM 103074

Definition at line 1773 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM 103084

Definition at line 1781 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL 0x83F8

Definition at line 1410 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092

Definition at line 964 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088

Definition at line 954 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A

Definition at line 956 of file glext.h.

#define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089

Definition at line 955 of file glext.h.

#define GL_TEXTURE_CUBE_MAP 0x8513

Definition at line 231 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_ARB 0x8513

Definition at line 385 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_EXT 0x8513

Definition at line 1606 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516

Definition at line 234 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516

Definition at line 388 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516

Definition at line 1609 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518

Definition at line 236 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518

Definition at line 390 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518

Definition at line 1611 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A

Definition at line 238 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A

Definition at line 392 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A

Definition at line 1613 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515

Definition at line 233 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515

Definition at line 387 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515

Definition at line 1608 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517

Definition at line 235 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517

Definition at line 389 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517

Definition at line 1610 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519

Definition at line 237 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519

Definition at line 391 of file glext.h.

#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519

Definition at line 1612 of file glext.h.

#define GL_TEXTURE_DEFORMATION_BIT_SGIX 0x00000001

Definition at line 1107 of file glext.h.

#define GL_TEXTURE_DEFORMATION_SGIX 0x8195

Definition at line 1113 of file glext.h.

#define GL_TEXTURE_DEPTH 0x8071

Definition at line 72 of file glext.h.

#define GL_TEXTURE_DEPTH_EXT 0x8071

Definition at line 743 of file glext.h.

#define GL_TEXTURE_DEPTH_SIZE 0x884A

Definition at line 315 of file glext.h.

#define GL_TEXTURE_DEPTH_SIZE_ARB 0x884A

Definition at line 521 of file glext.h.

#define GL_TEXTURE_DS_SIZE_NV 0x871D

Definition at line 2013 of file glext.h.

#define GL_TEXTURE_DT_SIZE_NV 0x871E

Definition at line 2014 of file glext.h.

#define GL_TEXTURE_ENV_BIAS_SGIX 0x80BE

Definition at line 1172 of file glext.h.

#define GL_TEXTURE_FILTER4_SIZE_SGIS 0x8147

Definition at line 750 of file glext.h.

#define GL_TEXTURE_FILTER_CONTROL 0x8500

Definition at line 311 of file glext.h.

#define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500

Definition at line 1627 of file glext.h.

#define GL_TEXTURE_FLOAT_COMPONENTS_NV 0x888C

Definition at line 2579 of file glext.h.

#define GL_TEXTURE_GEQUAL_R_SGIX 0x819D

Definition at line 995 of file glext.h.

#define GL_TEXTURE_GREEN_SIZE_EXT 0x805D

Definition at line 725 of file glext.h.

#define GL_TEXTURE_HI_SIZE_NV 0x871B

Definition at line 2011 of file glext.h.

#define GL_TEXTURE_INDEX_SIZE_EXT 0x80ED

Definition at line 1233 of file glext.h.

#define GL_TEXTURE_INTENSITY_SIZE_EXT 0x8061

Definition at line 729 of file glext.h.

#define GL_TEXTURE_LEQUAL_R_SGIX 0x819C

Definition at line 994 of file glext.h.

#define GL_TEXTURE_LIGHT_EXT 0x8350

Definition at line 1358 of file glext.h.

#define GL_TEXTURE_LIGHTING_MODE_HP 0x8167

Definition at line 1332 of file glext.h.

#define GL_TEXTURE_LO_SIZE_NV 0x871C

Definition at line 2012 of file glext.h.

#define GL_TEXTURE_LOD_BIAS 0x8501

Definition at line 312 of file glext.h.

#define GL_TEXTURE_LOD_BIAS_EXT 0x8501

Definition at line 1628 of file glext.h.

#define GL_TEXTURE_LOD_BIAS_R_SGIX 0x8190

Definition at line 1255 of file glext.h.

#define GL_TEXTURE_LOD_BIAS_S_SGIX 0x818E

Definition at line 1253 of file glext.h.

#define GL_TEXTURE_LOD_BIAS_T_SGIX 0x818F

Definition at line 1254 of file glext.h.

#define GL_TEXTURE_LUMINANCE_SIZE_EXT 0x8060

Definition at line 728 of file glext.h.

#define GL_TEXTURE_MAG_SIZE_NV 0x871F

Definition at line 2015 of file glext.h.

#define GL_TEXTURE_MATERIAL_FACE_EXT 0x8351

Definition at line 1359 of file glext.h.

#define GL_TEXTURE_MATERIAL_PARAMETER_EXT 0x8352

Definition at line 1360 of file glext.h.

#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE

Definition at line 1632 of file glext.h.

#define GL_TEXTURE_MAX_CLAMP_R_SGIX 0x836B

Definition at line 2115 of file glext.h.

#define GL_TEXTURE_MAX_CLAMP_S_SGIX 0x8369

Definition at line 2113 of file glext.h.

#define GL_TEXTURE_MAX_CLAMP_T_SGIX 0x836A

Definition at line 2114 of file glext.h.

#define GL_TEXTURE_MAX_LEVEL 0x813D

Definition at line 90 of file glext.h.

#define GL_TEXTURE_MAX_LEVEL_SGIS 0x813D

Definition at line 907 of file glext.h.

#define GL_TEXTURE_MAX_LOD 0x813B

Definition at line 88 of file glext.h.

#define GL_TEXTURE_MAX_LOD_SGIS 0x813B

Definition at line 905 of file glext.h.

#define GL_TEXTURE_MIN_LOD 0x813A

Definition at line 87 of file glext.h.

#define GL_TEXTURE_MIN_LOD_SGIS 0x813A

Definition at line 904 of file glext.h.

#define GL_TEXTURE_MULTI_BUFFER_HINT_SGIX 0x812E

Definition at line 1068 of file glext.h.

#define GL_TEXTURE_NORMAL_EXT 0x85AF

Definition at line 1455 of file glext.h.

#define GL_TEXTURE_POST_SPECULAR_HP 0x8168

Definition at line 1333 of file glext.h.

#define GL_TEXTURE_PRE_SPECULAR_HP 0x8169

Definition at line 1334 of file glext.h.

#define GL_TEXTURE_PRIORITY_EXT 0x8066

Definition at line 870 of file glext.h.

#define GL_TEXTURE_RECTANGLE_NV 0x84F5

Definition at line 1936 of file glext.h.

#define GL_TEXTURE_RED_SIZE_EXT 0x805C

Definition at line 724 of file glext.h.

#define GL_TEXTURE_RESIDENT_EXT 0x8067

Definition at line 871 of file glext.h.

#define GL_TEXTURE_SHADER_NV 0x86DE

Definition at line 1951 of file glext.h.

#define GL_TEXTURE_TOO_LARGE_EXT 0x8065

Definition at line 733 of file glext.h.

#define GL_TEXTURE_UNSIGNED_REMAP_MODE_NV 0x888F

Definition at line 2612 of file glext.h.

#define GL_TEXTURE_WRAP_Q_SGIS 0x8137

Definition at line 852 of file glext.h.

#define GL_TEXTURE_WRAP_R 0x8072

Definition at line 73 of file glext.h.

#define GL_TEXTURE_WRAP_R_EXT 0x8072

Definition at line 744 of file glext.h.

#define GL_TRACK_MATRIX_NV 0x8648

Definition at line 2058 of file glext.h.

#define GL_TRACK_MATRIX_TRANSFORM_NV 0x8649

Definition at line 2059 of file glext.h.

#define GL_TRANSFORM_HINT_APPLE 0x85B1

Definition at line 1523 of file glext.h.

#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6

Definition at line 219 of file glext.h.

#define GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6

Definition at line 364 of file glext.h.

#define GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7

Definition at line 585 of file glext.h.

#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3

Definition at line 216 of file glext.h.

#define GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3

Definition at line 361 of file glext.h.

#define GL_TRANSPOSE_NV 0x862C

Definition at line 2038 of file glext.h.

#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4

Definition at line 217 of file glext.h.

#define GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4

Definition at line 362 of file glext.h.

#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5

Definition at line 218 of file glext.h.

#define GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5

Definition at line 363 of file glext.h.

#define GL_TRIANGLE_LIST_SUN 0x81D7

Definition at line 1545 of file glext.h.

#define GL_TRIANGLE_MESH_SUN 0x8615

Definition at line 2421 of file glext.h.

#define GL_UNPACK_CLIENT_STORAGE_APPLE 0x85B2

Definition at line 2485 of file glext.h.

#define GL_UNPACK_CMYK_HINT_EXT 0x800F

Definition at line 866 of file glext.h.

#define GL_UNPACK_CONSTANT_DATA_SUNX 0x81D5

Definition at line 1532 of file glext.h.

#define GL_UNPACK_IMAGE_DEPTH_SGIS 0x8133

Definition at line 848 of file glext.h.

#define GL_UNPACK_IMAGE_HEIGHT 0x806E

Definition at line 69 of file glext.h.

#define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E

Definition at line 740 of file glext.h.

#define GL_UNPACK_RESAMPLE_OML 0x8985

Definition at line 2134 of file glext.h.

#define GL_UNPACK_RESAMPLE_SGIX 0x842D

Definition at line 1855 of file glext.h.

#define GL_UNPACK_SKIP_IMAGES 0x806D

Definition at line 68 of file glext.h.

#define GL_UNPACK_SKIP_IMAGES_EXT 0x806D

Definition at line 739 of file glext.h.

#define GL_UNPACK_SKIP_VOLUMES_SGIS 0x8132

Definition at line 847 of file glext.h.

#define GL_UNPACK_SUBSAMPLE_RATE_SGIX 0x85A1

Definition at line 1789 of file glext.h.

#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362

Definition at line 75 of file glext.h.

#define GL_UNSIGNED_BYTE_3_3_2 0x8032

Definition at line 59 of file glext.h.

#define GL_UNSIGNED_BYTE_3_3_2_EXT 0x8032

Definition at line 896 of file glext.h.

#define GL_UNSIGNED_IDENTITY_NV 0x8536

Definition at line 1683 of file glext.h.

#define GL_UNSIGNED_INT_10_10_10_2 0x8036

Definition at line 63 of file glext.h.

#define GL_UNSIGNED_INT_10_10_10_2_EXT 0x8036

Definition at line 900 of file glext.h.

#define GL_UNSIGNED_INT_24_8_NV 0x84FA

Definition at line 1925 of file glext.h.

#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368

Definition at line 81 of file glext.h.

#define GL_UNSIGNED_INT_8_8_8_8 0x8035

Definition at line 62 of file glext.h.

#define GL_UNSIGNED_INT_8_8_8_8_EXT 0x8035

Definition at line 899 of file glext.h.

#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367

Definition at line 80 of file glext.h.

#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB

Definition at line 1948 of file glext.h.

#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA

Definition at line 1947 of file glext.h.

#define GL_UNSIGNED_INVERT_NV 0x8537

Definition at line 1684 of file glext.h.

#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366

Definition at line 79 of file glext.h.

#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033

Definition at line 60 of file glext.h.

#define GL_UNSIGNED_SHORT_4_4_4_4_EXT 0x8033

Definition at line 897 of file glext.h.

#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365

Definition at line 78 of file glext.h.

#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034

Definition at line 61 of file glext.h.

#define GL_UNSIGNED_SHORT_5_5_5_1_EXT 0x8034

Definition at line 898 of file glext.h.

#define GL_UNSIGNED_SHORT_5_6_5 0x8363

Definition at line 76 of file glext.h.

#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364

Definition at line 77 of file glext.h.

#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA

Definition at line 2514 of file glext.h.

#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB

Definition at line 2515 of file glext.h.

#define GL_VARIABLE_A_NV 0x8523

Definition at line 1667 of file glext.h.

#define GL_VARIABLE_B_NV 0x8524

Definition at line 1668 of file glext.h.

#define GL_VARIABLE_C_NV 0x8525

Definition at line 1669 of file glext.h.

#define GL_VARIABLE_D_NV 0x8526

Definition at line 1670 of file glext.h.

#define GL_VARIABLE_E_NV 0x8527

Definition at line 1671 of file glext.h.

#define GL_VARIABLE_F_NV 0x8528

Definition at line 1672 of file glext.h.

#define GL_VARIABLE_G_NV 0x8529

Definition at line 1673 of file glext.h.

#define GL_VARIANT_ARRAY_EXT 0x87E8

Definition at line 2392 of file glext.h.

#define GL_VARIANT_ARRAY_POINTER_EXT 0x87E9

Definition at line 2393 of file glext.h.

#define GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6

Definition at line 2390 of file glext.h.

#define GL_VARIANT_ARRAY_TYPE_EXT 0x87E7

Definition at line 2391 of file glext.h.

#define GL_VARIANT_DATATYPE_EXT 0x87E5

Definition at line 2389 of file glext.h.

#define GL_VARIANT_EXT 0x87C1

Definition at line 2353 of file glext.h.

#define GL_VARIANT_VALUE_EXT 0x87E4

Definition at line 2388 of file glext.h.

#define GL_VECTOR_EXT 0x87BF

Definition at line 2351 of file glext.h.

#define GL_VERSION_1_2 1

Definition at line 2635 of file glext.h.

#define GL_VERSION_1_3 1

Definition at line 2717 of file glext.h.

#define GL_VERSION_1_4 1

Definition at line 2815 of file glext.h.

#define GL_VERTEX23_BIT_PGI 0x00000004

Definition at line 1199 of file glext.h.

#define GL_VERTEX4_BIT_PGI 0x00000008

Definition at line 1200 of file glext.h.

#define GL_VERTEX_ARRAY_BINDING_APPLE 0x85B5

Definition at line 2500 of file glext.h.

#define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896

Definition at line 645 of file glext.h.

#define GL_VERTEX_ARRAY_COUNT_EXT 0x807D

Definition at line 943 of file glext.h.

#define GL_VERTEX_ARRAY_EXT 0x8074

Definition at line 934 of file glext.h.

#define GL_VERTEX_ARRAY_LIST_IBM 103070

Definition at line 1769 of file glext.h.

#define GL_VERTEX_ARRAY_LIST_STRIDE_IBM 103080

Definition at line 1777 of file glext.h.

#define GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL 0x83F5

Definition at line 1407 of file glext.h.

#define GL_VERTEX_ARRAY_POINTER_EXT 0x808E

Definition at line 960 of file glext.h.

#define GL_VERTEX_ARRAY_RANGE_APPLE 0x851D

Definition at line 2504 of file glext.h.

#define GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE 0x851E

Definition at line 2505 of file glext.h.

#define GL_VERTEX_ARRAY_RANGE_LENGTH_NV 0x851E

Definition at line 1659 of file glext.h.

#define GL_VERTEX_ARRAY_RANGE_NV 0x851D

Definition at line 1658 of file glext.h.

#define GL_VERTEX_ARRAY_RANGE_POINTER_APPLE 0x8521

Definition at line 2507 of file glext.h.

#define GL_VERTEX_ARRAY_RANGE_POINTER_NV 0x8521

Definition at line 1662 of file glext.h.

#define GL_VERTEX_ARRAY_RANGE_VALID_NV 0x851F

Definition at line 1660 of file glext.h.

#define GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533

Definition at line 2023 of file glext.h.

#define GL_VERTEX_ARRAY_SIZE_EXT 0x807A

Definition at line 940 of file glext.h.

#define GL_VERTEX_ARRAY_STORAGE_HINT_APPLE 0x851F

Definition at line 2506 of file glext.h.

#define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C

Definition at line 942 of file glext.h.

#define GL_VERTEX_ARRAY_TYPE_EXT 0x807B

Definition at line 941 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650

Definition at line 2062 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A

Definition at line 2072 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B

Definition at line 2073 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C

Definition at line 2074 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D

Definition at line 2075 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E

Definition at line 2076 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F

Definition at line 2077 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651

Definition at line 2063 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652

Definition at line 2064 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653

Definition at line 2065 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654

Definition at line 2066 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655

Definition at line 2067 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656

Definition at line 2068 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657

Definition at line 2069 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658

Definition at line 2070 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659

Definition at line 2071 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F

Definition at line 654 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622

Definition at line 541 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A

Definition at line 558 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645

Definition at line 554 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623

Definition at line 542 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624

Definition at line 543 of file glext.h.

#define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625

Definition at line 544 of file glext.h.

#define GL_VERTEX_BLEND_ARB 0x86A7

Definition at line 426 of file glext.h.

#define GL_VERTEX_CONSISTENT_HINT_PGI 0x1A22B

Definition at line 1180 of file glext.h.

#define GL_VERTEX_DATA_HINT_PGI 0x1A22A

Definition at line 1179 of file glext.h.

#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF

Definition at line 1846 of file glext.h.

#define GL_VERTEX_PRECLIP_SGIX 0x83EE

Definition at line 1845 of file glext.h.

#define GL_VERTEX_PROGRAM_ARB 0x8620

Definition at line 540 of file glext.h.

#define GL_VERTEX_PROGRAM_BINDING_NV 0x864A

Definition at line 2060 of file glext.h.

#define GL_VERTEX_PROGRAM_NV 0x8620

Definition at line 2027 of file glext.h.

#define GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642

Definition at line 552 of file glext.h.

#define GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642

Definition at line 2052 of file glext.h.

#define GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643

Definition at line 553 of file glext.h.

#define GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643

Definition at line 2053 of file glext.h.

#define GL_VERTEX_SHADER_BINDING_EXT 0x8781

Definition at line 2289 of file glext.h.

#define GL_VERTEX_SHADER_EXT 0x8780

Definition at line 2288 of file glext.h.

#define GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF

Definition at line 2367 of file glext.h.

#define GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1

Definition at line 2369 of file glext.h.

#define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2

Definition at line 2370 of file glext.h.

#define GL_VERTEX_SHADER_LOCALS_EXT 0x87D3

Definition at line 2371 of file glext.h.

#define GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4

Definition at line 2372 of file glext.h.

#define GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0

Definition at line 2368 of file glext.h.

#define GL_VERTEX_SOURCE_ATI 0x8774

Definition at line 2410 of file glext.h.

#define GL_VERTEX_STATE_PROGRAM_NV 0x8621

Definition at line 2028 of file glext.h.

#define GL_VERTEX_STREAM0_ATI 0x876C

Definition at line 2402 of file glext.h.

#define GL_VERTEX_STREAM1_ATI 0x876D

Definition at line 2403 of file glext.h.

#define GL_VERTEX_STREAM2_ATI 0x876E

Definition at line 2404 of file glext.h.

#define GL_VERTEX_STREAM3_ATI 0x876F

Definition at line 2405 of file glext.h.

#define GL_VERTEX_STREAM4_ATI 0x8770

Definition at line 2406 of file glext.h.

#define GL_VERTEX_STREAM5_ATI 0x8771

Definition at line 2407 of file glext.h.

#define GL_VERTEX_STREAM6_ATI 0x8772

Definition at line 2408 of file glext.h.

#define GL_VERTEX_STREAM7_ATI 0x8773

Definition at line 2409 of file glext.h.

#define GL_VERTEX_WEIGHT_ARRAY_EXT 0x850C

Definition at line 1645 of file glext.h.

#define GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510

Definition at line 1649 of file glext.h.

#define GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT 0x850D

Definition at line 1646 of file glext.h.

#define GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F

Definition at line 1648 of file glext.h.

#define GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT 0x850E

Definition at line 1647 of file glext.h.

#define GL_VERTEX_WEIGHTING_EXT 0x8509

Definition at line 1641 of file glext.h.

#define GL_VIBRANCE_BIAS_NV 0x8719

Definition at line 2009 of file glext.h.

#define GL_VIBRANCE_SCALE_NV 0x8713

Definition at line 2003 of file glext.h.

#define GL_W_EXT 0x87D8

Definition at line 2376 of file glext.h.

#define GL_WEIGHT_ARRAY_ARB 0x86AD

Definition at line 432 of file glext.h.

#define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E

Definition at line 653 of file glext.h.

#define GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC

Definition at line 431 of file glext.h.

#define GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB

Definition at line 430 of file glext.h.

#define GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA

Definition at line 429 of file glext.h.

#define GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9

Definition at line 428 of file glext.h.

#define GL_WEIGHT_SUM_UNITY_ARB 0x86A6

Definition at line 425 of file glext.h.

#define GL_WIDE_LINE_HINT_PGI 0x1A222

Definition at line 1222 of file glext.h.

#define GL_WIN_phong_shading 1

Definition at line 3987 of file glext.h.

#define GL_WIN_specular_fog 1

Definition at line 3991 of file glext.h.

#define GL_WRAP_BORDER_SUN 0x81D4

Definition at line 1619 of file glext.h.

#define GL_WRITE_ONLY_ARB 0x88B9

Definition at line 656 of file glext.h.

#define GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV 0x887A

Definition at line 2600 of file glext.h.

#define GL_WRITE_PIXEL_DATA_RANGE_NV 0x8878

Definition at line 2598 of file glext.h.

#define GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV 0x887C

Definition at line 2602 of file glext.h.

#define GL_X_EXT 0x87D5

Definition at line 2373 of file glext.h.

#define GL_Y_EXT 0x87D6

Definition at line 2374 of file glext.h.

#define GL_YCBCR_422_APPLE 0x85B9

Definition at line 2513 of file glext.h.

#define GL_YCRCB_422_SGIX 0x81BB

Definition at line 1300 of file glext.h.

#define GL_YCRCB_444_SGIX 0x81BC

Definition at line 1301 of file glext.h.

#define GL_YCRCB_SGIX 0x8318

Definition at line 1799 of file glext.h.

#define GL_YCRCBA_SGIX 0x8319

Definition at line 1800 of file glext.h.

#define GL_Z_EXT 0x87D7

Definition at line 2375 of file glext.h.

#define GL_ZERO_EXT 0x87DD

Definition at line 2381 of file glext.h.

#define GLAPI extern

Definition at line 48 of file glext.h.

Typedef Documentation

typedef GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat a

Definition at line 4322 of file glext.h.

typedef GLenum GLenum GLenum GLenum GLenum GLenum GLboolean abDotProduct

Definition at line 4464 of file glext.h.

typedef GLenum GLenum abOutput

Definition at line 4464 of file glext.h.

typedef GLenum GLuint const GLvoid * addr

Definition at line 5053 of file glext.h.

typedef GLuint address

Definition at line 4825 of file glext.h.

typedef GLhalfNV GLhalfNV GLhalfNV alpha

Definition at line 2676 of file glext.h.

Referenced by ControlEngine::ComputeRealZ(), Config(), Point2D< T >::GetRelativePtOn2Lines(), Point2D< T >::IsOnLine(), Point2D< T >::IsOnSegment(), Point1D< T >::LinearInterpolation(), Material::SetAlpha(), and Control::SetAlphaBlending().

typedef GLuint GLuint arg1

Definition at line 4945 of file glext.h.

typedef GLuint GLuint GLuint GLuint GLuint arg1Mod

Definition at line 4945 of file glext.h.

typedef GLuint GLuint GLuint GLuint arg1Rep

Definition at line 4945 of file glext.h.

typedef GLuint GLuint GLuint arg2

Definition at line 4946 of file glext.h.

typedef GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint arg2Mod

Definition at line 4946 of file glext.h.

typedef GLuint GLuint GLuint GLuint GLuint GLuint GLuint arg2Rep

Definition at line 4946 of file glext.h.

typedef GLuint GLuint GLuint GLuint arg3

Definition at line 4947 of file glext.h.

typedef GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint arg3Mod

Definition at line 4947 of file glext.h.

typedef GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint arg3Rep

Definition at line 4947 of file glext.h.

typedef const GLuint * arrays

Definition at line 5317 of file glext.h.

typedef GLfloat GLfloat GLfloat GLfloat GLfloat b

Definition at line 4322 of file glext.h.

Referenced by Point2D< T >::IsOnRectangle().

typedef GLenum backfunc

Definition at line 5527 of file glext.h.

typedef GLenum GLenum GLenum GLenum GLenum GLenum bias

Definition at line 3341 of file glext.h.

typedef GLhalfNV GLhalfNV blue

Definition at line 2676 of file glext.h.

typedef GLint GLenum GLsizei GLsizei GLsizei GLsizei GLint border

Definition at line 2711 of file glext.h.

Referenced by Texture::Config(), Texture::operator=(), and Texture::Zero().

typedef GLint GLenum GLboolean GLsizei GLuint buffer

Definition at line 3311 of file glext.h.

Referenced by MyString::AddFormat(), ErrorMessage(), MyString::Format(), MyDebug::SendEvent(), and MyDebug::SendLine().

typedef GLuint * buffers

Definition at line 3312 of file glext.h.

typedef const GLenum* bufs

Definition at line 5347 of file glext.h.

typedef GLshort by

Definition at line 4198 of file glext.h.

typedef GLshort GLshort bz

Definition at line 4198 of file glext.h.

typedef const GLfloat const GLfloat * c

Definition at line 4337 of file glext.h.

Referenced by Primitive::GetLocalPos(), Point2D< T >::GetRelativePtOn2Lines(), Point2D< T >::GetRelativePtOnQuadrilatere(), Point2D< T >::IsOnQuadrilatere(), Point2D< T >::IsOnRectangle(), Point3D< T >::IsOnTriangle(), Point2D< T >::IsOnTriangle(), and LinearEqu2D< T >::Zero().

typedef GLenum cap

Definition at line 5071 of file glext.h.

typedef GLenum GLenum GLenum GLenum GLenum GLenum GLboolean GLboolean cdDotProduct

Definition at line 4464 of file glext.h.

typedef GLenum GLenum GLenum cdOutput

Definition at line 4464 of file glext.h.

typedef GLenum GLsizei GLsizei GLenum GLenum const GLvoid const GLvoid * column

Definition at line 2699 of file glext.h.

Referenced by TextBox::SetCursor().

typedef GLenum GLenum GLuint components

Definition at line 5052 of file glext.h.

typedef GLenum GLenum GLenum componentUsage

Definition at line 4463 of file glext.h.

typedef GLenum condition

Definition at line 4687 of file glext.h.

typedef GLenum coord

Definition at line 4943 of file glext.h.

typedef const GLdouble * coords

Definition at line 5134 of file glext.h.

typedef const LPVOID UINT count

Definition at line 2678 of file glext.h.

Referenced by ControlEngine::DrawLight().

typedef GLenum GLfloat * data

Definition at line 2686 of file glext.h.

Referenced by TreeView::Draw(), TreeView::FindOnData(), Texture::FromFile(), TreeDirectory::Loading(), and TreeDirectory::Reset().

typedef GLint GLint GLint GLint GLint GLsizei GLsizei GLsizei depth

Definition at line 2711 of file glext.h.

Referenced by ControlEngine::ControlEngine(), ControlEngine::Draw(), ControlEngine::DrawLight(), ControlEngine::InitLights(), and ControlEngine::Setup().

typedef GLenum GLenum GLenum dfactorAlpha

Definition at line 2863 of file glext.h.

typedef GLenum dfactorRGB

Definition at line 2863 of file glext.h.

typedef GLenum GLenum dpfail

Definition at line 5526 of file glext.h.

typedef GLenum GLenum GLenum dppass

Definition at line 5526 of file glext.h.

typedef GLuint dst

Definition at line 4945 of file glext.h.

typedef GLuint GLuint dstMask

Definition at line 4945 of file glext.h.

typedef GLuint GLuint dstMod

Definition at line 4945 of file glext.h.

typedef GLuint GLuint end

Definition at line 2678 of file glext.h.

Referenced by Fog::Fog(), and Fog::Use().

typedef const GLuint * fences

Definition at line 4681 of file glext.h.

typedef GLenum filter

Definition at line 3364 of file glext.h.

Referenced by TreeDirectory::Config(), and TreeDirectory::TreeDirectory().

typedef GLuint GLuint const GLint * first

Definition at line 2869 of file glext.h.

Referenced by MyList< ParsingWord >::Zero().

typedef GLenum format

Definition at line 2679 of file glext.h.

Referenced by MyString::AddFormat(), Texture::AddText(), and MyString::Format().

typedef GLint fsize

Definition at line 4840 of file glext.h.

typedef GLfloat GLfloat GLfloat GLfloat g

Definition at line 4322 of file glext.h.

typedef unsigned short GLhalfNV

Definition at line 5385 of file glext.h.

typedef ptrdiff_t GLintptrARB

Definition at line 3296 of file glext.h.

typedef ptrdiff_t GLsizeiptrARB

Definition at line 3297 of file glext.h.

typedef GLhalfNV green

Definition at line 2676 of file glext.h.

typedef int int int int height

Definition at line 2689 of file glext.h.

typedef GLuint id

Definition at line 4817 of file glext.h.

typedef const GLuint * ids

Definition at line 5223 of file glext.h.

typedef GLenum GLenum GLvoid * image

Definition at line 2688 of file glext.h.

typedef GLint GLint GLsizei GLenum GLsizei imageSize

Definition at line 2805 of file glext.h.

typedef GLint GLvoid * img

Definition at line 2811 of file glext.h.

typedef GLuint in

Definition at line 5048 of file glext.h.

Referenced by EventOver::GetNbLinks().

typedef GLuint index

Definition at line 3265 of file glext.h.

Referenced by MyString::CopyTo(), MyListIterator< ParsingWord >::GetElem(), MyListIterator< ParsingWord >::GetElemPtr(), MyString::GetValue(), MyListIterator< ParsingWord >::operator=(), MyString::operator[](), Fog::SetIndexMode(), and MyListIterator< ParsingWord >::SuprIndex().

typedef const GLsizei GLenum const GLvoid ** indices

Definition at line 2678 of file glext.h.

typedef GLenum input

Definition at line 4463 of file glext.h.

typedef GLenum internalFormat

Definition at line 3836 of file glext.h.

typedef GLint GLenum internalformat

Definition at line 2679 of file glext.h.

typedef GLuint interp

Definition at line 4944 of file glext.h.

typedef GLboolean invert

Definition at line 2804 of file glext.h.

typedef GLsizei len

Definition at line 3261 of file glext.h.

Referenced by MyString::AddFormat(), DrawTextOnFirstPlan(), and MyString::Format().

typedef GLsizei length

Definition at line 5488 of file glext.h.

typedef GLint level

Definition at line 2711 of file glext.h.

Referenced by Tutorial::LayoutDemo::CreateTreeButton(), Screen::MsgInfoType(), TreeView_ExpandAll_Level(), and Primitive::ViewDebug().

typedef GLenum GLenum mapping

Definition at line 4463 of file glext.h.

typedef GLenum GLint GLuint mask

Definition at line 5527 of file glext.h.

typedef GLuint GLenum matrix

Definition at line 4839 of file glext.h.

typedef GLenum mode

Definition at line 3825 of file glext.h.

Referenced by Fog::Fog(), Fog::GetIndexMode(), Fog::GetStringMode(), Fog::SetIndexMode(), and Fog::Use().

typedef const GLsizei GLenum const GLvoid GLsizei GLint modestride

Definition at line 4562 of file glext.h.

typedef GLenum GLenum GLenum GLenum GLenum GLenum GLboolean GLboolean GLboolean muxSum

Definition at line 4464 of file glext.h.

typedef GLsizei n

Definition at line 3365 of file glext.h.

typedef GLsizei const GLubyte * name

Definition at line 5304 of file glext.h.

Referenced by Control::Control(), Control::operator=(), and Control::ToString().

typedef GLint GLenum GLboolean normalized

Definition at line 3258 of file glext.h.

typedef GLuint GLuint num

Definition at line 5050 of file glext.h.

Referenced by ApplyParamObj(), Material::As(), ConfigProc(), Tutorial::LayoutDemo::ConfigTreeButton(), DebugStructProc(), MyTreeNode< Face >::Elems(), Tutorial::FaceDemo::FaceDemo(), GetNearExp2(), ValueEditor< T >::MAJ_Specials(), ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), ValueEditors::MakeTexturesStruct(), Calculator::OnNum(), Tutorial::FaceDemo::OnTimer(), MyListIterator< ParsingWord >::operator()(), MyTreeNode< Face >::operator[](), MyListIterator< ParsingWord >::operator[](), TaskWindow::Restore(), Array< T >::Set(), and ValueEditorProc().

typedef GLdouble nx

Definition at line 4330 of file glext.h.

typedef GLhalfNV ny

Definition at line 4328 of file glext.h.

typedef GLhalfNV GLhalfNV nz

Definition at line 4328 of file glext.h.

typedef GLint GLenum GLboolean GLsizei GLuint GLuint offset

Definition at line 3316 of file glext.h.

typedef GLuint GLenum GLenum GLenum GLenum outW

Definition at line 5048 of file glext.h.

typedef GLuint GLenum outX

Definition at line 5048 of file glext.h.

typedef GLuint GLenum GLenum outY

Definition at line 5048 of file glext.h.

typedef GLuint GLenum GLenum GLenum outZ

Definition at line 5048 of file glext.h.

typedef GLfloat GLfloat p

Definition at line 4334 of file glext.h.

Referenced by Primitive::GetLocalPos(), OpenGL_ExtensionSupported(), and WGLisExtensionSupported().

typedef GLuint GLenum GLsizei GLsizei GLboolean packed

Definition at line 4703 of file glext.h.

typedef GLint param

Definition at line 2871 of file glext.h.

Referenced by DebugStructProc(), MyRegistry::DeleteValue(), MyRegistry::GetValue(), MyRegistry::GetValueExpand(), MyRegistry::GetValueMulti(), MyRegistry::GetValueSize(), MyRegistry::GetValueType(), MyException::Init(), MyException::MyException(), Object::Object(), Object::operator=(), MyRegistry::TestValue(), and ValueEditorProc().

typedef GLenum GLint * params

Definition at line 2680 of file glext.h.

typedef GLvoid* APIENTRY* PFNGLMAPBUFFERARBPROC(GLenum target, GLenum access)

Definition at line 3318 of file glext.h.

typedef GLvoid* APIENTRY* PFNGLMAPOBJECTBUFFERATIPROC(GLuint buffer)

Definition at line 5516 of file glext.h.

typedef GLint GLint GLint GLint GLint GLsizei GLsizei GLsizei GLsizei GLenum GLenum const GLvoid * pixels

Definition at line 2711 of file glext.h.

typedef GLenum pname

Definition at line 2680 of file glext.h.

typedef GLsizei GLvoid * pointer

Definition at line 2868 of file glext.h.

typedef GLuint GLenum GLsizei GLsizei GLboolean GLvoid * points

Definition at line 3544 of file glext.h.

Referenced by Region::AddElem(), Primitive::GetCorners(), Control::GetCorners(), Region::Reset(), and Region::Use().

typedef GLenum portion

Definition at line 4463 of file glext.h.

typedef GLuint GLsizei const GLvoid GLenum preserve

Definition at line 4982 of file glext.h.

typedef GLuint GLuint const GLint const GLsizei GLsizei primcount

Definition at line 2869 of file glext.h.

typedef const GLuint const GLclampf* priorities

Definition at line 3535 of file glext.h.

typedef GLuint GLsizei const GLubyte * program

Definition at line 3262 of file glext.h.

typedef const GLuint * programs

Definition at line 3263 of file glext.h.

typedef GLenum GLint const GLvoid GLint ptrstride

Definition at line 4578 of file glext.h.

typedef GLhalfNV GLhalfNV GLhalfNV GLhalfNV q

Definition at line 2792 of file glext.h.

Referenced by MyOpenBrowser().

typedef GLhalfNV GLhalfNV GLhalfNV r

Definition at line 2784 of file glext.h.

typedef GLenum GLenum range

Definition at line 4028 of file glext.h.

typedef GLenum GLint ref

Definition at line 3897 of file glext.h.

typedef GLuint res

Definition at line 5045 of file glext.h.

Referenced by Texture::AddText(), MyRegistry::GetValue(), MyRegistry::GetValueExpand(), MyRegistry::GetValueMulti(), Point2D< T >::IsOnQuadrilatere(), Control::OnLButtonUp(), Control::OnMButtonUp(), Control::OnRButtonUp(), MyString::ToDouble(), MyString::ToFloat(), and MyString::ToInteger().

typedef GLboolean reset

Definition at line 2701 of file glext.h.

Referenced by Timer::GetDeltaTime().

typedef const GLuint GLboolean * residences

Definition at line 3530 of file glext.h.

typedef GLenum GLsizei GLsizei GLenum GLenum const GLvoid * row

Definition at line 2699 of file glext.h.

typedef GLhalfNV s

Definition at line 2768 of file glext.h.

typedef GLenum GLenum GLenum GLenum GLenum scale

Definition at line 4464 of file glext.h.

Referenced by Face::ComputeLayout(), Face::operator=(), and Face::Zero().

typedef GLenum GLenum sfactorAlpha

Definition at line 2863 of file glext.h.

typedef GLenum sfail

Definition at line 5526 of file glext.h.

typedef GLenum GLboolean sink

Definition at line 2707 of file glext.h.

typedef GLint size

Definition at line 3258 of file glext.h.

Referenced by Array< T >::Delete(), Array< T >::Init(), Array< T >::New(), Array< T >::operator=(), and Array< T >::Set().

typedef GLint GLint GLint GLint GLint GLsizei GLsizei GLsizei GLsizei size4d

Definition at line 3508 of file glext.h.

typedef GLenum GLenum GLvoid GLvoid GLvoid * span

Definition at line 2699 of file glext.h.

typedef GLuint src

Definition at line 5050 of file glext.h.

Referenced by Point2D< LayoutDouble >::operator!=(), Coordonate< GLfloat >::operator!=(), Point2D< T >::operator+(), Point3D< T >::operator+=(), Point2D< LayoutDouble >::operator+=(), Point2D< T >::operator-(), Point3D< T >::operator=(), Point2D< T >::operator=(), Point2D< LayoutDouble >::operator=(), Point1D< T >::operator=(), Texture::operator=(), Text3D::operator=(), ParsingWord::operator=(), ParsingElem::operator=(), ParsingLine::operator=(), BasicText3D::operator=(), Recorder::operator=(), Picking::operator=(), MyListIterator< ParsingWord >::operator=(), StateKey::operator=(), StateMouse::operator=(), ElemStack::operator=(), EventInertia::operator=(), Face::operator=(), Coordonate< GLfloat >::operator=(), Control::operator=(), Opperation::operator=(), Array< T >::operator=(), Angles::operator=(), Point3D< LayoutDouble >::operator==(), Point2D< LayoutDouble >::operator==(), Point1D< T >::operator==(), Coordonate< GLfloat >::operator==(), and PolygonMode::ToString().

typedef GLuint start

Definition at line 2678 of file glext.h.

Referenced by Fog::Fog(), and Fog::Use().

typedef GLenum storagetype

Definition at line 5052 of file glext.h.

typedef GLint GLenum GLboolean GLsizei stride

Definition at line 2868 of file glext.h.

typedef GLenum GLvoid * string

Definition at line 3261 of file glext.h.

Referenced by MyString::Add(), MyString::MyString(), MyString::operator!=(), operator+(), MyString::operator+=(), operator<<(), MyString::operator=(), and MyString::operator==().

typedef GLenum GLenum GLenum GLenum sumOutput

Definition at line 4464 of file glext.h.

typedef GLuint GLenum swizzle

Definition at line 4943 of file glext.h.

typedef GLhalfNV GLhalfNV t

Definition at line 2776 of file glext.h.

Referenced by Point1D< T >::operator+(), Point1D< T >::operator-(), Text3D::Setup(), and BasicText3D::Setup().

typedef GLenum GLsizei GLenum GLenum const GLvoid * table

Definition at line 2679 of file glext.h.

typedef const GLfloat * tc

Definition at line 4357 of file glext.h.

typedef GLuint texture

Definition at line 3531 of file glext.h.

Referenced by ControlEngine::DrawBackGround(), and ControlEngine::InitTextures().

typedef const GLuint * textures

Definition at line 3530 of file glext.h.

typedef GLuint GLenum GLenum transform

Definition at line 4839 of file glext.h.

typedef GLshort ty

Definition at line 4188 of file glext.h.

typedef GLint GLenum type

Definition at line 2678 of file glext.h.

Referenced by ApplyParamObj(), Cursor::ApplyType(), BasicText3D::BasicText3D(), BasicText3D::Draw(), ErrorMessage(), Cursor::GetHotSpot(), MyOpenBrowser(), Object::Object(), BasicText3D::operator=(), Object::operator=(), Cursor::Rotate(), ControlEngine::ScreenShot(), Text3D::Setup(), and BasicText3D::Setup().

typedef GLshort GLshort tz

Definition at line 4188 of file glext.h.

typedef GLfloat u1

Definition at line 3740 of file glext.h.

typedef GLfloat GLfloat u2

Definition at line 3740 of file glext.h.

typedef GLuint GLenum GLsizei GLsizei GLint uorder

Definition at line 3740 of file glext.h.

typedef const GLvoid GLenum usage

Definition at line 3315 of file glext.h.

typedef GLuint GLenum GLsizei ustride

Definition at line 3740 of file glext.h.

typedef GLsizei const GLhalfNV * v

Definition at line 2769 of file glext.h.

typedef GLfloat GLfloat GLint GLint GLfloat v1

Definition at line 3740 of file glext.h.

typedef GLfloat GLfloat GLint GLint GLfloat GLfloat v2

Definition at line 3740 of file glext.h.

typedef GLenum value

Definition at line 4951 of file glext.h.

Referenced by Color::operator float *().

typedef GLboolean GLenum GLenum GLvoid * values

Definition at line 2701 of file glext.h.

Referenced by Array< T >::Delete(), Array< T >::Init(), Array< T >::New(), Array< T >::operator=(), and Array< T >::Set().

typedef GLenum GLenum variable

Definition at line 4463 of file glext.h.

Referenced by ValueEditor< T >::operator=(), ValueEditor< T >::Set(), and ValueEditor< T >::Zero().

typedef GLuint GLenum GLsizei GLsizei GLint GLint vorder

Definition at line 3740 of file glext.h.

typedef GLuint GLenum GLsizei GLsizei vstride

Definition at line 3740 of file glext.h.

typedef GLhalfNV GLhalfNV GLhalfNV GLhalfNV w

Definition at line 3243 of file glext.h.

typedef GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint GLfloat w1

Definition at line 3740 of file glext.h.

typedef GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint GLfloat GLfloat w2

Definition at line 3740 of file glext.h.

typedef GLenum GLsizei const GLfloat * weights

Definition at line 3062 of file glext.h.

typedef int int int width

Definition at line 2679 of file glext.h.

Referenced by Dock::Dock(), and Dock::Set().

typedef GLint GLint GLint GLint GLint woffset

Definition at line 3509 of file glext.h.

typedef GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint worder

Definition at line 3740 of file glext.h.

typedef GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint GLfloat GLfloat GLint wstride

Definition at line 3740 of file glext.h.

typedef int x

Definition at line 2682 of file glext.h.

typedef GLint GLint xoffset

Definition at line 2712 of file glext.h.

typedef int int y

Definition at line 2682 of file glext.h.

typedef GLint GLint GLint yoffset

Definition at line 2712 of file glext.h.

typedef GLhalfNV GLhalfNV GLhalfNV z

Definition at line 2900 of file glext.h.

typedef GLint GLint GLint GLint zoffset

Definition at line 2712 of file glext.h.

Function Documentation

typedef GLboolean ( APIENTRY * PFNGLISPROGRAMARBPROC )

typedef GLint ( APIENTRY * PFNGLGETINSTRUMENTSSGIXPROC )

Referenced by accFrustum(), FTLibraryInit(), ControlEngine::ScreenShot(), and ValueEditorProc().

typedef GLuint ( APIENTRY * PFNGLGENASYNCMARKERSSGIXPROC )

Referenced by Picking::Test(), Texture::VerifyId(), and Texture::~Texture().

typedef void ( APIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC )

Referenced by BaseObj< T, V >::BaseObj().

Generated on Fri Aug 20 19:20:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: glext.h Source File

glext.h

Go to the documentation of this file.
00001 // Download From: http://www.opengl.org/developers/faqs/technical/extensions.htm
00002
00003 #ifndef __glext_h_
00004 #define __glext_h_
00005
00006 #ifdef __cplusplus
00007 extern "C" {
00008 #endif
00009
00010         /*
00011         ** License Applicability. Except to the extent portions of this file are
00012         ** made subject to an alternative license as permitted in the SGI Free
00013         ** Software License B, Version 1.1 (the "License"), the contents of this
00014         ** file are subject only to the provisions of the License. You may not use
00015         ** this file except in compliance with the License. You may obtain a copy
00016         ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
00017         ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
00018         **
00019         ** http://oss.sgi.com/projects/FreeB
00020         **
00021         ** Note that, as provided in the License, the Software is distributed on an
00022         ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
00023         ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
00024         ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
00025         ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
00026         **
00027         ** Original Code. The Original Code is: OpenGL Sample Implementation,
00028         ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
00029         ** Inc. The Original Code is Copyright (c) 1991-2002 Silicon Graphics, Inc.
00030         ** Copyright in any portions created by third parties is as indicated
00031         ** elsewhere herein. All Rights Reserved.
00032         **
00033         ** Additional Notice Provisions: This software was created using the
00034         ** OpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has
00035         ** not been independently verified as being compliant with the OpenGL(R)
00036         ** version 1.2.1 Specification.
00037         */
00038
00039 #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__)
00040 #define WIN32_LEAN_AND_MEAN 1
00041 #include <windows.h>
00042 #endif
00043
00044 #ifndef APIENTRY
00045 #define APIENTRY
00046 #endif
00047 #ifndef GLAPI
00048 #define GLAPI extern
00049 #endif
00050
00051         /*************************************************************/
00052
00053         /* Header file version number, required by OpenGL ABI for Linux */
00054         /* glext.h last updated 2003/5/9 */
00055         /* Current version at http://oss.sgi.com/projects/ogl-sample/registry/ */
00056 #define GL_GLEXT_VERSION 18
00057
00058 #ifndef GL_VERSION_1_2
00059 #define GL_UNSIGNED_BYTE_3_3_2            0x8032
00060 #define GL_UNSIGNED_SHORT_4_4_4_4         0x8033
00061 #define GL_UNSIGNED_SHORT_5_5_5_1         0x8034
00062 #define GL_UNSIGNED_INT_8_8_8_8           0x8035
00063 #define GL_UNSIGNED_INT_10_10_10_2        0x8036
00064 #define GL_RESCALE_NORMAL                 0x803A
00065 #define GL_TEXTURE_BINDING_3D             0x806A
00066 #define GL_PACK_SKIP_IMAGES               0x806B
00067 #define GL_PACK_IMAGE_HEIGHT              0x806C
00068 #define GL_UNPACK_SKIP_IMAGES             0x806D
00069 #define GL_UNPACK_IMAGE_HEIGHT            0x806E
00070 #define GL_TEXTURE_3D                     0x806F
00071 #define GL_PROXY_TEXTURE_3D               0x8070
00072 #define GL_TEXTURE_DEPTH                  0x8071
00073 #define GL_TEXTURE_WRAP_R                 0x8072
00074 #define GL_MAX_3D_TEXTURE_SIZE            0x8073
00075 #define GL_UNSIGNED_BYTE_2_3_3_REV        0x8362
00076 #define GL_UNSIGNED_SHORT_5_6_5           0x8363
00077 #define GL_UNSIGNED_SHORT_5_6_5_REV       0x8364
00078 #define GL_UNSIGNED_SHORT_4_4_4_4_REV     0x8365
00079 #define GL_UNSIGNED_SHORT_1_5_5_5_REV     0x8366
00080 #define GL_UNSIGNED_INT_8_8_8_8_REV       0x8367
00081 #define GL_UNSIGNED_INT_2_10_10_10_REV    0x8368
00082 #define GL_BGR                            0x80E0
00083 #define GL_BGRA                           0x80E1
00084 #define GL_MAX_ELEMENTS_VERTICES          0x80E8
00085 #define GL_MAX_ELEMENTS_INDICES           0x80E9
00086 #define GL_CLAMP_TO_EDGE                  0x812F
00087 #define GL_TEXTURE_MIN_LOD                0x813A
00088 #define GL_TEXTURE_MAX_LOD                0x813B
00089 #define GL_TEXTURE_BASE_LEVEL             0x813C
00090 #define GL_TEXTURE_MAX_LEVEL              0x813D
00091 #define GL_LIGHT_MODEL_COLOR_CONTROL      0x81F8
00092 #define GL_SINGLE_COLOR                   0x81F9
00093 #define GL_SEPARATE_SPECULAR_COLOR        0x81FA
00094 #define GL_SMOOTH_POINT_SIZE_RANGE        0x0B12
00095 #define GL_SMOOTH_POINT_SIZE_GRANULARITY  0x0B13
00096 #define GL_SMOOTH_LINE_WIDTH_RANGE        0x0B22
00097 #define GL_SMOOTH_LINE_WIDTH_GRANULARITY  0x0B23
00098 #define GL_ALIASED_POINT_SIZE_RANGE       0x846D
00099 #define GL_ALIASED_LINE_WIDTH_RANGE       0x846E
00100 #endif
00101
00102 #ifndef GL_ARB_imaging
00103 #define GL_CONSTANT_COLOR                 0x8001
00104 #define GL_ONE_MINUS_CONSTANT_COLOR       0x8002
00105 #define GL_CONSTANT_ALPHA                 0x8003
00106 #define GL_ONE_MINUS_CONSTANT_ALPHA       0x8004
00107 #define GL_BLEND_COLOR                    0x8005
00108 #define GL_FUNC_ADD                       0x8006
00109 #define GL_MIN                            0x8007
00110 #define GL_MAX                            0x8008
00111 #define GL_BLEND_EQUATION                 0x8009
00112 #define GL_FUNC_SUBTRACT                  0x800A
00113 #define GL_FUNC_REVERSE_SUBTRACT          0x800B
00114 #define GL_CONVOLUTION_1D                 0x8010
00115 #define GL_CONVOLUTION_2D                 0x8011
00116 #define GL_SEPARABLE_2D                   0x8012
00117 #define GL_CONVOLUTION_BORDER_MODE        0x8013
00118 #define GL_CONVOLUTION_FILTER_SCALE       0x8014
00119 #define GL_CONVOLUTION_FILTER_BIAS        0x8015
00120 #define GL_REDUCE                         0x8016
00121 #define GL_CONVOLUTION_FORMAT             0x8017
00122 #define GL_CONVOLUTION_WIDTH              0x8018
00123 #define GL_CONVOLUTION_HEIGHT             0x8019
00124 #define GL_MAX_CONVOLUTION_WIDTH          0x801A
00125 #define GL_MAX_CONVOLUTION_HEIGHT         0x801B
00126 #define GL_POST_CONVOLUTION_RED_SCALE     0x801C
00127 #define GL_POST_CONVOLUTION_GREEN_SCALE   0x801D
00128 #define GL_POST_CONVOLUTION_BLUE_SCALE    0x801E
00129 #define GL_POST_CONVOLUTION_ALPHA_SCALE   0x801F
00130 #define GL_POST_CONVOLUTION_RED_BIAS      0x8020
00131 #define GL_POST_CONVOLUTION_GREEN_BIAS    0x8021
00132 #define GL_POST_CONVOLUTION_BLUE_BIAS     0x8022
00133 #define GL_POST_CONVOLUTION_ALPHA_BIAS    0x8023
00134 #define GL_HISTOGRAM                      0x8024
00135 #define GL_PROXY_HISTOGRAM                0x8025
00136 #define GL_HISTOGRAM_WIDTH                0x8026
00137 #define GL_HISTOGRAM_FORMAT               0x8027
00138 #define GL_HISTOGRAM_RED_SIZE             0x8028
00139 #define GL_HISTOGRAM_GREEN_SIZE           0x8029
00140 #define GL_HISTOGRAM_BLUE_SIZE            0x802A
00141 #define GL_HISTOGRAM_ALPHA_SIZE           0x802B
00142 #define GL_HISTOGRAM_LUMINANCE_SIZE       0x802C
00143 #define GL_HISTOGRAM_SINK                 0x802D
00144 #define GL_MINMAX                         0x802E
00145 #define GL_MINMAX_FORMAT                  0x802F
00146 #define GL_MINMAX_SINK                    0x8030
00147 #define GL_TABLE_TOO_LARGE                0x8031
00148 #define GL_COLOR_MATRIX                   0x80B1
00149 #define GL_COLOR_MATRIX_STACK_DEPTH       0x80B2
00150 #define GL_MAX_COLOR_MATRIX_STACK_DEPTH   0x80B3
00151 #define GL_POST_COLOR_MATRIX_RED_SCALE    0x80B4
00152 #define GL_POST_COLOR_MATRIX_GREEN_SCALE  0x80B5
00153 #define GL_POST_COLOR_MATRIX_BLUE_SCALE   0x80B6
00154 #define GL_POST_COLOR_MATRIX_ALPHA_SCALE  0x80B7
00155 #define GL_POST_COLOR_MATRIX_RED_BIAS     0x80B8
00156 #define GL_POST_COLOR_MATRIX_GREEN_BIAS   0x80B9
00157 #define GL_POST_COLOR_MATRIX_BLUE_BIAS    0x80BA
00158 #define GL_POST_COLOR_MATRIX_ALPHA_BIAS   0x80BB
00159 #define GL_COLOR_TABLE                    0x80D0
00160 #define GL_POST_CONVOLUTION_COLOR_TABLE   0x80D1
00161 #define GL_POST_COLOR_MATRIX_COLOR_TABLE  0x80D2
00162 #define GL_PROXY_COLOR_TABLE              0x80D3
00163 #define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
00164 #define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
00165 #define GL_COLOR_TABLE_SCALE              0x80D6
00166 #define GL_COLOR_TABLE_BIAS               0x80D7
00167 #define GL_COLOR_TABLE_FORMAT             0x80D8
00168 #define GL_COLOR_TABLE_WIDTH              0x80D9
00169 #define GL_COLOR_TABLE_RED_SIZE           0x80DA
00170 #define GL_COLOR_TABLE_GREEN_SIZE         0x80DB
00171 #define GL_COLOR_TABLE_BLUE_SIZE          0x80DC
00172 #define GL_COLOR_TABLE_ALPHA_SIZE         0x80DD
00173 #define GL_COLOR_TABLE_LUMINANCE_SIZE     0x80DE
00174 #define GL_COLOR_TABLE_INTENSITY_SIZE     0x80DF
00175 #define GL_CONSTANT_BORDER                0x8151
00176 #define GL_REPLICATE_BORDER               0x8153
00177 #define GL_CONVOLUTION_BORDER_COLOR       0x8154
00178 #endif
00179
00180 #ifndef GL_VERSION_1_3
00181 #define GL_TEXTURE0                       0x84C0
00182 #define GL_TEXTURE1                       0x84C1
00183 #define GL_TEXTURE2                       0x84C2
00184 #define GL_TEXTURE3                       0x84C3
00185 #define GL_TEXTURE4                       0x84C4
00186 #define GL_TEXTURE5                       0x84C5
00187 #define GL_TEXTURE6                       0x84C6
00188 #define GL_TEXTURE7                       0x84C7
00189 #define GL_TEXTURE8                       0x84C8
00190 #define GL_TEXTURE9                       0x84C9
00191 #define GL_TEXTURE10                      0x84CA
00192 #define GL_TEXTURE11                      0x84CB
00193 #define GL_TEXTURE12                      0x84CC
00194 #define GL_TEXTURE13                      0x84CD
00195 #define GL_TEXTURE14                      0x84CE
00196 #define GL_TEXTURE15                      0x84CF
00197 #define GL_TEXTURE16                      0x84D0
00198 #define GL_TEXTURE17                      0x84D1
00199 #define GL_TEXTURE18                      0x84D2
00200 #define GL_TEXTURE19                      0x84D3
00201 #define GL_TEXTURE20                      0x84D4
00202 #define GL_TEXTURE21                      0x84D5
00203 #define GL_TEXTURE22                      0x84D6
00204 #define GL_TEXTURE23                      0x84D7
00205 #define GL_TEXTURE24                      0x84D8
00206 #define GL_TEXTURE25                      0x84D9
00207 #define GL_TEXTURE26                      0x84DA
00208 #define GL_TEXTURE27                      0x84DB
00209 #define GL_TEXTURE28                      0x84DC
00210 #define GL_TEXTURE29                      0x84DD
00211 #define GL_TEXTURE30                      0x84DE
00212 #define GL_TEXTURE31                      0x84DF
00213 #define GL_ACTIVE_TEXTURE                 0x84E0
00214 #define GL_CLIENT_ACTIVE_TEXTURE          0x84E1
00215 #define GL_MAX_TEXTURE_UNITS              0x84E2
00216 #define GL_TRANSPOSE_MODELVIEW_MATRIX     0x84E3
00217 #define GL_TRANSPOSE_PROJECTION_MATRIX    0x84E4
00218 #define GL_TRANSPOSE_TEXTURE_MATRIX       0x84E5
00219 #define GL_TRANSPOSE_COLOR_MATRIX         0x84E6
00220 #define GL_MULTISAMPLE                    0x809D
00221 #define GL_SAMPLE_ALPHA_TO_COVERAGE       0x809E
00222 #define GL_SAMPLE_ALPHA_TO_ONE            0x809F
00223 #define GL_SAMPLE_COVERAGE                0x80A0
00224 #define GL_SAMPLE_BUFFERS                 0x80A8
00225 #define GL_SAMPLES                        0x80A9
00226 #define GL_SAMPLE_COVERAGE_VALUE          0x80AA
00227 #define GL_SAMPLE_COVERAGE_INVERT         0x80AB
00228 #define GL_MULTISAMPLE_BIT                0x20000000
00229 #define GL_NORMAL_MAP                     0x8511
00230 #define GL_REFLECTION_MAP                 0x8512
00231 #define GL_TEXTURE_CUBE_MAP               0x8513
00232 #define GL_TEXTURE_BINDING_CUBE_MAP       0x8514
00233 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X    0x8515
00234 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X    0x8516
00235 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y    0x8517
00236 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y    0x8518
00237 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z    0x8519
00238 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z    0x851A
00239 #define GL_PROXY_TEXTURE_CUBE_MAP         0x851B
00240 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE      0x851C
00241 #define GL_COMPRESSED_ALPHA               0x84E9
00242 #define GL_COMPRESSED_LUMINANCE           0x84EA
00243 #define GL_COMPRESSED_LUMINANCE_ALPHA     0x84EB
00244 #define GL_COMPRESSED_INTENSITY           0x84EC
00245 #define GL_COMPRESSED_RGB                 0x84ED
00246 #define GL_COMPRESSED_RGBA                0x84EE
00247 #define GL_TEXTURE_COMPRESSION_HINT       0x84EF
00248 #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE  0x86A0
00249 #define GL_TEXTURE_COMPRESSED             0x86A1
00250 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
00251 #define GL_COMPRESSED_TEXTURE_FORMATS     0x86A3
00252 #define GL_CLAMP_TO_BORDER                0x812D
00253 #define GL_CLAMP_TO_BORDER_SGIS           0x812D
00254 #define GL_COMBINE                        0x8570
00255 #define GL_COMBINE_RGB                    0x8571
00256 #define GL_COMBINE_ALPHA                  0x8572
00257 #define GL_SOURCE0_RGB                    0x8580
00258 #define GL_SOURCE1_RGB                    0x8581
00259 #define GL_SOURCE2_RGB                    0x8582
00260 #define GL_SOURCE0_ALPHA                  0x8588
00261 #define GL_SOURCE1_ALPHA                  0x8589
00262 #define GL_SOURCE2_ALPHA                  0x858A
00263 #define GL_OPERAND0_RGB                   0x8590
00264 #define GL_OPERAND1_RGB                   0x8591
00265 #define GL_OPERAND2_RGB                   0x8592
00266 #define GL_OPERAND0_ALPHA                 0x8598
00267 #define GL_OPERAND1_ALPHA                 0x8599
00268 #define GL_OPERAND2_ALPHA                 0x859A
00269 #define GL_RGB_SCALE                      0x8573
00270 #define GL_ADD_SIGNED                     0x8574
00271 #define GL_INTERPOLATE                    0x8575
00272 #define GL_SUBTRACT                       0x84E7
00273 #define GL_CONSTANT                       0x8576
00274 #define GL_PRIMARY_COLOR                  0x8577
00275 #define GL_PREVIOUS                       0x8578
00276 #define GL_DOT3_RGB                       0x86AE
00277 #define GL_DOT3_RGBA                      0x86AF
00278 #endif
00279
00280 #ifndef GL_VERSION_1_4
00281 #define GL_BLEND_DST_RGB                  0x80C8
00282 #define GL_BLEND_SRC_RGB                  0x80C9
00283 #define GL_BLEND_DST_ALPHA                0x80CA
00284 #define GL_BLEND_SRC_ALPHA                0x80CB
00285 #define GL_POINT_SIZE_MIN                 0x8126
00286 #define GL_POINT_SIZE_MAX                 0x8127
00287 #define GL_POINT_FADE_THRESHOLD_SIZE      0x8128
00288 #define GL_POINT_DISTANCE_ATTENUATION     0x8129
00289 #define GL_GENERATE_MIPMAP                0x8191
00290 #define GL_GENERATE_MIPMAP_HINT           0x8192
00291 #define GL_DEPTH_COMPONENT16              0x81A5
00292 #define GL_DEPTH_COMPONENT24              0x81A6
00293 #define GL_DEPTH_COMPONENT32              0x81A7
00294 #define GL_MIRRORED_REPEAT                0x8370
00295 #define GL_FOG_COORDINATE_SOURCE          0x8450
00296 #define GL_FOG_COORDINATE                 0x8451
00297 #define GL_FRAGMENT_DEPTH                 0x8452
00298 #define GL_CURRENT_FOG_COORDINATE         0x8453
00299 #define GL_FOG_COORDINATE_ARRAY_TYPE      0x8454
00300 #define GL_FOG_COORDINATE_ARRAY_STRIDE    0x8455
00301 #define GL_FOG_COORDINATE_ARRAY_POINTER   0x8456
00302 #define GL_FOG_COORDINATE_ARRAY           0x8457
00303 #define GL_COLOR_SUM                      0x8458
00304 #define GL_CURRENT_SECONDARY_COLOR        0x8459
00305 #define GL_SECONDARY_COLOR_ARRAY_SIZE     0x845A
00306 #define GL_SECONDARY_COLOR_ARRAY_TYPE     0x845B
00307 #define GL_SECONDARY_COLOR_ARRAY_STRIDE   0x845C
00308 #define GL_SECONDARY_COLOR_ARRAY_POINTER  0x845D
00309 #define GL_SECONDARY_COLOR_ARRAY          0x845E
00310 #define GL_MAX_TEXTURE_LOD_BIAS           0x84FD
00311 #define GL_TEXTURE_FILTER_CONTROL         0x8500
00312 #define GL_TEXTURE_LOD_BIAS               0x8501
00313 #define GL_INCR_WRAP                      0x8507
00314 #define GL_DECR_WRAP                      0x8508
00315 #define GL_TEXTURE_DEPTH_SIZE             0x884A
00316 #define GL_DEPTH_TEXTURE_MODE             0x884B
00317 #define GL_TEXTURE_COMPARE_MODE           0x884C
00318 #define GL_TEXTURE_COMPARE_FUNC           0x884D
00319 #define GL_COMPARE_R_TO_TEXTURE           0x884E
00320 #endif
00321
00322 #ifndef GL_ARB_multitexture
00323 #define GL_TEXTURE0_ARB                   0x84C0
00324 #define GL_TEXTURE1_ARB                   0x84C1
00325 #define GL_TEXTURE2_ARB                   0x84C2
00326 #define GL_TEXTURE3_ARB                   0x84C3
00327 #define GL_TEXTURE4_ARB                   0x84C4
00328 #define GL_TEXTURE5_ARB                   0x84C5
00329 #define GL_TEXTURE6_ARB                   0x84C6
00330 #define GL_TEXTURE7_ARB                   0x84C7
00331 #define GL_TEXTURE8_ARB                   0x84C8
00332 #define GL_TEXTURE9_ARB                   0x84C9
00333 #define GL_TEXTURE10_ARB                  0x84CA
00334 #define GL_TEXTURE11_ARB                  0x84CB
00335 #define GL_TEXTURE12_ARB                  0x84CC
00336 #define GL_TEXTURE13_ARB                  0x84CD
00337 #define GL_TEXTURE14_ARB                  0x84CE
00338 #define GL_TEXTURE15_ARB                  0x84CF
00339 #define GL_TEXTURE16_ARB                  0x84D0
00340 #define GL_TEXTURE17_ARB                  0x84D1
00341 #define GL_TEXTURE18_ARB                  0x84D2
00342 #define GL_TEXTURE19_ARB                  0x84D3
00343 #define GL_TEXTURE20_ARB                  0x84D4
00344 #define GL_TEXTURE21_ARB                  0x84D5
00345 #define GL_TEXTURE22_ARB                  0x84D6
00346 #define GL_TEXTURE23_ARB                  0x84D7
00347 #define GL_TEXTURE24_ARB                  0x84D8
00348 #define GL_TEXTURE25_ARB                  0x84D9
00349 #define GL_TEXTURE26_ARB                  0x84DA
00350 #define GL_TEXTURE27_ARB                  0x84DB
00351 #define GL_TEXTURE28_ARB                  0x84DC
00352 #define GL_TEXTURE29_ARB                  0x84DD
00353 #define GL_TEXTURE30_ARB                  0x84DE
00354 #define GL_TEXTURE31_ARB                  0x84DF
00355 #define GL_ACTIVE_TEXTURE_ARB             0x84E0
00356 #define GL_CLIENT_ACTIVE_TEXTURE_ARB      0x84E1
00357 #define GL_MAX_TEXTURE_UNITS_ARB          0x84E2
00358 #endif
00359
00360 #ifndef GL_ARB_transpose_matrix
00361 #define GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3
00362 #define GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4
00363 #define GL_TRANSPOSE_TEXTURE_MATRIX_ARB   0x84E5
00364 #define GL_TRANSPOSE_COLOR_MATRIX_ARB     0x84E6
00365 #endif
00366
00367 #ifndef GL_ARB_multisample
00368 #define GL_MULTISAMPLE_ARB                0x809D
00369 #define GL_SAMPLE_ALPHA_TO_COVERAGE_ARB   0x809E
00370 #define GL_SAMPLE_ALPHA_TO_ONE_ARB        0x809F
00371 #define GL_SAMPLE_COVERAGE_ARB            0x80A0
00372 #define GL_SAMPLE_BUFFERS_ARB             0x80A8
00373 #define GL_SAMPLES_ARB                    0x80A9
00374 #define GL_SAMPLE_COVERAGE_VALUE_ARB      0x80AA
00375 #define GL_SAMPLE_COVERAGE_INVERT_ARB     0x80AB
00376 #define GL_MULTISAMPLE_BIT_ARB            0x20000000
00377 #endif
00378
00379 #ifndef GL_ARB_texture_env_add
00380 #endif
00381
00382 #ifndef GL_ARB_texture_cube_map
00383 #define GL_NORMAL_MAP_ARB                 0x8511
00384 #define GL_REFLECTION_MAP_ARB             0x8512
00385 #define GL_TEXTURE_CUBE_MAP_ARB           0x8513
00386 #define GL_TEXTURE_BINDING_CUBE_MAP_ARB   0x8514
00387 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515
00388 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516
00389 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517
00390 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518
00391 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519
00392 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A
00393 #define GL_PROXY_TEXTURE_CUBE_MAP_ARB     0x851B
00394 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB  0x851C
00395 #endif
00396
00397 #ifndef GL_ARB_texture_compression
00398 #define GL_COMPRESSED_ALPHA_ARB           0x84E9
00399 #define GL_COMPRESSED_LUMINANCE_ARB       0x84EA
00400 #define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB
00401 #define GL_COMPRESSED_INTENSITY_ARB       0x84EC
00402 #define GL_COMPRESSED_RGB_ARB             0x84ED
00403 #define GL_COMPRESSED_RGBA_ARB            0x84EE
00404 #define GL_TEXTURE_COMPRESSION_HINT_ARB   0x84EF
00405 #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0
00406 #define GL_TEXTURE_COMPRESSED_ARB         0x86A1
00407 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2
00408 #define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3
00409 #endif
00410
00411 #ifndef GL_ARB_texture_border_clamp
00412 #define GL_CLAMP_TO_BORDER_ARB            0x812D
00413 #endif
00414
00415 #ifndef GL_ARB_point_parameters
00416 #define GL_POINT_SIZE_MIN_ARB             0x8126
00417 #define GL_POINT_SIZE_MAX_ARB             0x8127
00418 #define GL_POINT_FADE_THRESHOLD_SIZE_ARB  0x8128
00419 #define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129
00420 #endif
00421
00422 #ifndef GL_ARB_vertex_blend
00423 #define GL_MAX_VERTEX_UNITS_ARB           0x86A4
00424 #define GL_ACTIVE_VERTEX_UNITS_ARB        0x86A5
00425 #define GL_WEIGHT_SUM_UNITY_ARB           0x86A6
00426 #define GL_VERTEX_BLEND_ARB               0x86A7
00427 #define GL_CURRENT_WEIGHT_ARB             0x86A8
00428 #define GL_WEIGHT_ARRAY_TYPE_ARB          0x86A9
00429 #define GL_WEIGHT_ARRAY_STRIDE_ARB        0x86AA
00430 #define GL_WEIGHT_ARRAY_SIZE_ARB          0x86AB
00431 #define GL_WEIGHT_ARRAY_POINTER_ARB       0x86AC
00432 #define GL_WEIGHT_ARRAY_ARB               0x86AD
00433 #define GL_MODELVIEW0_ARB                 0x1700
00434 #define GL_MODELVIEW1_ARB                 0x850A
00435 #define GL_MODELVIEW2_ARB                 0x8722
00436 #define GL_MODELVIEW3_ARB                 0x8723
00437 #define GL_MODELVIEW4_ARB                 0x8724
00438 #define GL_MODELVIEW5_ARB                 0x8725
00439 #define GL_MODELVIEW6_ARB                 0x8726
00440 #define GL_MODELVIEW7_ARB                 0x8727
00441 #define GL_MODELVIEW8_ARB                 0x8728
00442 #define GL_MODELVIEW9_ARB                 0x8729
00443 #define GL_MODELVIEW10_ARB                0x872A
00444 #define GL_MODELVIEW11_ARB                0x872B
00445 #define GL_MODELVIEW12_ARB                0x872C
00446 #define GL_MODELVIEW13_ARB                0x872D
00447 #define GL_MODELVIEW14_ARB                0x872E
00448 #define GL_MODELVIEW15_ARB                0x872F
00449 #define GL_MODELVIEW16_ARB                0x8730
00450 #define GL_MODELVIEW17_ARB                0x8731
00451 #define GL_MODELVIEW18_ARB                0x8732
00452 #define GL_MODELVIEW19_ARB                0x8733
00453 #define GL_MODELVIEW20_ARB                0x8734
00454 #define GL_MODELVIEW21_ARB                0x8735
00455 #define GL_MODELVIEW22_ARB                0x8736
00456 #define GL_MODELVIEW23_ARB                0x8737
00457 #define GL_MODELVIEW24_ARB                0x8738
00458 #define GL_MODELVIEW25_ARB                0x8739
00459 #define GL_MODELVIEW26_ARB                0x873A
00460 #define GL_MODELVIEW27_ARB                0x873B
00461 #define GL_MODELVIEW28_ARB                0x873C
00462 #define GL_MODELVIEW29_ARB                0x873D
00463 #define GL_MODELVIEW30_ARB                0x873E
00464 #define GL_MODELVIEW31_ARB                0x873F
00465 #endif
00466
00467 #ifndef GL_ARB_matrix_palette
00468 #define GL_MATRIX_PALETTE_ARB             0x8840
00469 #define GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841
00470 #define GL_MAX_PALETTE_MATRICES_ARB       0x8842
00471 #define GL_CURRENT_PALETTE_MATRIX_ARB     0x8843
00472 #define GL_MATRIX_INDEX_ARRAY_ARB         0x8844
00473 #define GL_CURRENT_MATRIX_INDEX_ARB       0x8845
00474 #define GL_MATRIX_INDEX_ARRAY_SIZE_ARB    0x8846
00475 #define GL_MATRIX_INDEX_ARRAY_TYPE_ARB    0x8847
00476 #define GL_MATRIX_INDEX_ARRAY_STRIDE_ARB  0x8848
00477 #define GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849
00478 #endif
00479
00480 #ifndef GL_ARB_texture_env_combine
00481 #define GL_COMBINE_ARB                    0x8570
00482 #define GL_COMBINE_RGB_ARB                0x8571
00483 #define GL_COMBINE_ALPHA_ARB              0x8572
00484 #define GL_SOURCE0_RGB_ARB                0x8580
00485 #define GL_SOURCE1_RGB_ARB                0x8581
00486 #define GL_SOURCE2_RGB_ARB                0x8582
00487 #define GL_SOURCE0_ALPHA_ARB              0x8588
00488 #define GL_SOURCE1_ALPHA_ARB              0x8589
00489 #define GL_SOURCE2_ALPHA_ARB              0x858A
00490 #define GL_OPERAND0_RGB_ARB               0x8590
00491 #define GL_OPERAND1_RGB_ARB               0x8591
00492 #define GL_OPERAND2_RGB_ARB               0x8592
00493 #define GL_OPERAND0_ALPHA_ARB             0x8598
00494 #define GL_OPERAND1_ALPHA_ARB             0x8599
00495 #define GL_OPERAND2_ALPHA_ARB             0x859A
00496 #define GL_RGB_SCALE_ARB                  0x8573
00497 #define GL_ADD_SIGNED_ARB                 0x8574
00498 #define GL_INTERPOLATE_ARB                0x8575
00499 #define GL_SUBTRACT_ARB                   0x84E7
00500 #define GL_CONSTANT_ARB                   0x8576
00501 #define GL_PRIMARY_COLOR_ARB              0x8577
00502 #define GL_PREVIOUS_ARB                   0x8578
00503 #endif
00504
00505 #ifndef GL_ARB_texture_env_crossbar
00506 #endif
00507
00508 #ifndef GL_ARB_texture_env_dot3
00509 #define GL_DOT3_RGB_ARB                   0x86AE
00510 #define GL_DOT3_RGBA_ARB                  0x86AF
00511 #endif
00512
00513 #ifndef GL_ARB_texture_mirrored_repeat
00514 #define GL_MIRRORED_REPEAT_ARB            0x8370
00515 #endif
00516
00517 #ifndef GL_ARB_depth_texture
00518 #define GL_DEPTH_COMPONENT16_ARB          0x81A5
00519 #define GL_DEPTH_COMPONENT24_ARB          0x81A6
00520 #define GL_DEPTH_COMPONENT32_ARB          0x81A7
00521 #define GL_TEXTURE_DEPTH_SIZE_ARB         0x884A
00522 #define GL_DEPTH_TEXTURE_MODE_ARB         0x884B
00523 #endif
00524
00525 #ifndef GL_ARB_shadow
00526 #define GL_TEXTURE_COMPARE_MODE_ARB       0x884C
00527 #define GL_TEXTURE_COMPARE_FUNC_ARB       0x884D
00528 #define GL_COMPARE_R_TO_TEXTURE_ARB       0x884E
00529 #endif
00530
00531 #ifndef GL_ARB_shadow_ambient
00532 #define GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF
00533 #endif
00534
00535 #ifndef GL_ARB_window_pos
00536 #endif
00537
00538 #ifndef GL_ARB_vertex_program
00539 #define GL_COLOR_SUM_ARB                  0x8458
00540 #define GL_VERTEX_PROGRAM_ARB             0x8620
00541 #define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622
00542 #define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB   0x8623
00543 #define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624
00544 #define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB   0x8625
00545 #define GL_CURRENT_VERTEX_ATTRIB_ARB      0x8626
00546 #define GL_PROGRAM_LENGTH_ARB             0x8627
00547 #define GL_PROGRAM_STRING_ARB             0x8628
00548 #define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E
00549 #define GL_MAX_PROGRAM_MATRICES_ARB       0x862F
00550 #define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640
00551 #define GL_CURRENT_MATRIX_ARB             0x8641
00552 #define GL_VERTEX_PROGRAM_POINT_SIZE_ARB  0x8642
00553 #define GL_VERTEX_PROGRAM_TWO_SIDE_ARB    0x8643
00554 #define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645
00555 #define GL_PROGRAM_ERROR_POSITION_ARB     0x864B
00556 #define GL_PROGRAM_BINDING_ARB            0x8677
00557 #define GL_MAX_VERTEX_ATTRIBS_ARB         0x8869
00558 #define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A
00559 #define GL_PROGRAM_ERROR_STRING_ARB       0x8874
00560 #define GL_PROGRAM_FORMAT_ASCII_ARB       0x8875
00561 #define GL_PROGRAM_FORMAT_ARB             0x8876
00562 #define GL_PROGRAM_INSTRUCTIONS_ARB       0x88A0
00563 #define GL_MAX_PROGRAM_INSTRUCTIONS_ARB   0x88A1
00564 #define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2
00565 #define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3
00566 #define GL_PROGRAM_TEMPORARIES_ARB        0x88A4
00567 #define GL_MAX_PROGRAM_TEMPORARIES_ARB    0x88A5
00568 #define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6
00569 #define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7
00570 #define GL_PROGRAM_PARAMETERS_ARB         0x88A8
00571 #define GL_MAX_PROGRAM_PARAMETERS_ARB     0x88A9
00572 #define GL_PROGRAM_NATIVE_PARAMETERS_ARB  0x88AA
00573 #define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB
00574 #define GL_PROGRAM_ATTRIBS_ARB            0x88AC
00575 #define GL_MAX_PROGRAM_ATTRIBS_ARB        0x88AD
00576 #define GL_PROGRAM_NATIVE_ATTRIBS_ARB     0x88AE
00577 #define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF
00578 #define GL_PROGRAM_ADDRESS_REGISTERS_ARB  0x88B0
00579 #define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1
00580 #define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2
00581 #define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3
00582 #define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4
00583 #define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5
00584 #define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6
00585 #define GL_TRANSPOSE_CURRENT_MATRIX_ARB   0x88B7
00586 #define GL_MATRIX0_ARB                    0x88C0
00587 #define GL_MATRIX1_ARB                    0x88C1
00588 #define GL_MATRIX2_ARB                    0x88C2
00589 #define GL_MATRIX3_ARB                    0x88C3
00590 #define GL_MATRIX4_ARB                    0x88C4
00591 #define GL_MATRIX5_ARB                    0x88C5
00592 #define GL_MATRIX6_ARB                    0x88C6
00593 #define GL_MATRIX7_ARB                    0x88C7
00594 #define GL_MATRIX8_ARB                    0x88C8
00595 #define GL_MATRIX9_ARB                    0x88C9
00596 #define GL_MATRIX10_ARB                   0x88CA
00597 #define GL_MATRIX11_ARB                   0x88CB
00598 #define GL_MATRIX12_ARB                   0x88CC
00599 #define GL_MATRIX13_ARB                   0x88CD
00600 #define GL_MATRIX14_ARB                   0x88CE
00601 #define GL_MATRIX15_ARB                   0x88CF
00602 #define GL_MATRIX16_ARB                   0x88D0
00603 #define GL_MATRIX17_ARB                   0x88D1
00604 #define GL_MATRIX18_ARB                   0x88D2
00605 #define GL_MATRIX19_ARB                   0x88D3
00606 #define GL_MATRIX20_ARB                   0x88D4
00607 #define GL_MATRIX21_ARB                   0x88D5
00608 #define GL_MATRIX22_ARB                   0x88D6
00609 #define GL_MATRIX23_ARB                   0x88D7
00610 #define GL_MATRIX24_ARB                   0x88D8
00611 #define GL_MATRIX25_ARB                   0x88D9
00612 #define GL_MATRIX26_ARB                   0x88DA
00613 #define GL_MATRIX27_ARB                   0x88DB
00614 #define GL_MATRIX28_ARB                   0x88DC
00615 #define GL_MATRIX29_ARB                   0x88DD
00616 #define GL_MATRIX30_ARB                   0x88DE
00617 #define GL_MATRIX31_ARB                   0x88DF
00618 #endif
00619
00620 #ifndef GL_ARB_fragment_program
00621 #define GL_FRAGMENT_PROGRAM_ARB           0x8804
00622 #define GL_PROGRAM_ALU_INSTRUCTIONS_ARB   0x8805
00623 #define GL_PROGRAM_TEX_INSTRUCTIONS_ARB   0x8806
00624 #define GL_PROGRAM_TEX_INDIRECTIONS_ARB   0x8807
00625 #define GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808
00626 #define GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809
00627 #define GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A
00628 #define GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B
00629 #define GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C
00630 #define GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D
00631 #define GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E
00632 #define GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F
00633 #define GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810
00634 #define GL_MAX_TEXTURE_COORDS_ARB         0x8871
00635 #define GL_MAX_TEXTURE_IMAGE_UNITS_ARB    0x8872
00636 #endif
00637
00638 #ifndef GL_ARB_vertex_buffer_object
00639 #define GL_BUFFER_SIZE_ARB                0x8764
00640 #define GL_BUFFER_USAGE_ARB               0x8765
00641 #define GL_ARRAY_BUFFER_ARB               0x8892
00642 #define GL_ELEMENT_ARRAY_BUFFER_ARB       0x8893
00643 #define GL_ARRAY_BUFFER_BINDING_ARB       0x8894
00644 #define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895
00645 #define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896
00646 #define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897
00647 #define GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898
00648 #define GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899
00649 #define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A
00650 #define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B
00651 #define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C
00652 #define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D
00653 #define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E
00654 #define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F
00655 #define GL_READ_ONLY_ARB                  0x88B8
00656 #define GL_WRITE_ONLY_ARB                 0x88B9
00657 #define GL_READ_WRITE_ARB                 0x88BA
00658 #define GL_BUFFER_ACCESS_ARB              0x88BB
00659 #define GL_BUFFER_MAPPED_ARB              0x88BC
00660 #define GL_BUFFER_MAP_POINTER_ARB         0x88BD
00661 #define GL_STREAM_DRAW_ARB                0x88E0
00662 #define GL_STREAM_READ_ARB                0x88E1
00663 #define GL_STREAM_COPY_ARB                0x88E2
00664 #define GL_STATIC_DRAW_ARB                0x88E4
00665 #define GL_STATIC_READ_ARB                0x88E5
00666 #define GL_STATIC_COPY_ARB                0x88E6
00667 #define GL_DYNAMIC_DRAW_ARB               0x88E8
00668 #define GL_DYNAMIC_READ_ARB               0x88E9
00669 #define GL_DYNAMIC_COPY_ARB               0x88EA
00670 #endif
00671
00672 #ifndef GL_EXT_abgr
00673 #define GL_ABGR_EXT                       0x8000
00674 #endif
00675
00676 #ifndef GL_EXT_blend_color
00677 #define GL_CONSTANT_COLOR_EXT             0x8001
00678 #define GL_ONE_MINUS_CONSTANT_COLOR_EXT   0x8002
00679 #define GL_CONSTANT_ALPHA_EXT             0x8003
00680 #define GL_ONE_MINUS_CONSTANT_ALPHA_EXT   0x8004
00681 #define GL_BLEND_COLOR_EXT                0x8005
00682 #endif
00683
00684 #ifndef GL_EXT_polygon_offset
00685 #define GL_POLYGON_OFFSET_EXT             0x8037
00686 #define GL_POLYGON_OFFSET_FACTOR_EXT      0x8038
00687 #define GL_POLYGON_OFFSET_BIAS_EXT        0x8039
00688 #endif
00689
00690 #ifndef GL_EXT_texture
00691 #define GL_ALPHA4_EXT                     0x803B
00692 #define GL_ALPHA8_EXT                     0x803C
00693 #define GL_ALPHA12_EXT                    0x803D
00694 #define GL_ALPHA16_EXT                    0x803E
00695 #define GL_LUMINANCE4_EXT                 0x803F
00696 #define GL_LUMINANCE8_EXT                 0x8040
00697 #define GL_LUMINANCE12_EXT                0x8041
00698 #define GL_LUMINANCE16_EXT                0x8042
00699 #define GL_LUMINANCE4_ALPHA4_EXT          0x8043
00700 #define GL_LUMINANCE6_ALPHA2_EXT          0x8044
00701 #define GL_LUMINANCE8_ALPHA8_EXT          0x8045
00702 #define GL_LUMINANCE12_ALPHA4_EXT         0x8046
00703 #define GL_LUMINANCE12_ALPHA12_EXT        0x8047
00704 #define GL_LUMINANCE16_ALPHA16_EXT        0x8048
00705 #define GL_INTENSITY_EXT                  0x8049
00706 #define GL_INTENSITY4_EXT                 0x804A
00707 #define GL_INTENSITY8_EXT                 0x804B
00708 #define GL_INTENSITY12_EXT                0x804C
00709 #define GL_INTENSITY16_EXT                0x804D
00710 #define GL_RGB2_EXT                       0x804E
00711 #define GL_RGB4_EXT                       0x804F
00712 #define GL_RGB5_EXT                       0x8050
00713 #define GL_RGB8_EXT                       0x8051
00714 #define GL_RGB10_EXT                      0x8052
00715 #define GL_RGB12_EXT                      0x8053
00716 #define GL_RGB16_EXT                      0x8054
00717 #define GL_RGBA2_EXT                      0x8055
00718 #define GL_RGBA4_EXT                      0x8056
00719 #define GL_RGB5_A1_EXT                    0x8057
00720 #define GL_RGBA8_EXT                      0x8058
00721 #define GL_RGB10_A2_EXT                   0x8059
00722 #define GL_RGBA12_EXT                     0x805A
00723 #define GL_RGBA16_EXT                     0x805B
00724 #define GL_TEXTURE_RED_SIZE_EXT           0x805C
00725 #define GL_TEXTURE_GREEN_SIZE_EXT         0x805D
00726 #define GL_TEXTURE_BLUE_SIZE_EXT          0x805E
00727 #define GL_TEXTURE_ALPHA_SIZE_EXT         0x805F
00728 #define GL_TEXTURE_LUMINANCE_SIZE_EXT     0x8060
00729 #define GL_TEXTURE_INTENSITY_SIZE_EXT     0x8061
00730 #define GL_REPLACE_EXT                    0x8062
00731 #define GL_PROXY_TEXTURE_1D_EXT           0x8063
00732 #define GL_PROXY_TEXTURE_2D_EXT           0x8064
00733 #define GL_TEXTURE_TOO_LARGE_EXT          0x8065
00734 #endif
00735
00736 #ifndef GL_EXT_texture3D
00737 #define GL_PACK_SKIP_IMAGES_EXT           0x806B
00738 #define GL_PACK_IMAGE_HEIGHT_EXT          0x806C
00739 #define GL_UNPACK_SKIP_IMAGES_EXT         0x806D
00740 #define GL_UNPACK_IMAGE_HEIGHT_EXT        0x806E
00741 #define GL_TEXTURE_3D_EXT                 0x806F
00742 #define GL_PROXY_TEXTURE_3D_EXT           0x8070
00743 #define GL_TEXTURE_DEPTH_EXT              0x8071
00744 #define GL_TEXTURE_WRAP_R_EXT             0x8072
00745 #define GL_MAX_3D_TEXTURE_SIZE_EXT        0x8073
00746 #endif
00747
00748 #ifndef GL_SGIS_texture_filter4
00749 #define GL_FILTER4_SGIS                   0x8146
00750 #define GL_TEXTURE_FILTER4_SIZE_SGIS      0x8147
00751 #endif
00752
00753 #ifndef GL_EXT_subtexture
00754 #endif
00755
00756 #ifndef GL_EXT_copy_texture
00757 #endif
00758
00759 #ifndef GL_EXT_histogram
00760 #define GL_HISTOGRAM_EXT                  0x8024
00761 #define GL_PROXY_HISTOGRAM_EXT            0x8025
00762 #define GL_HISTOGRAM_WIDTH_EXT            0x8026
00763 #define GL_HISTOGRAM_FORMAT_EXT           0x8027
00764 #define GL_HISTOGRAM_RED_SIZE_EXT         0x8028
00765 #define GL_HISTOGRAM_GREEN_SIZE_EXT       0x8029
00766 #define GL_HISTOGRAM_BLUE_SIZE_EXT        0x802A
00767 #define GL_HISTOGRAM_ALPHA_SIZE_EXT       0x802B
00768 #define GL_HISTOGRAM_LUMINANCE_SIZE_EXT   0x802C
00769 #define GL_HISTOGRAM_SINK_EXT             0x802D
00770 #define GL_MINMAX_EXT                     0x802E
00771 #define GL_MINMAX_FORMAT_EXT              0x802F
00772 #define GL_MINMAX_SINK_EXT                0x8030
00773 #define GL_TABLE_TOO_LARGE_EXT            0x8031
00774 #endif
00775
00776 #ifndef GL_EXT_convolution
00777 #define GL_CONVOLUTION_1D_EXT             0x8010
00778 #define GL_CONVOLUTION_2D_EXT             0x8011
00779 #define GL_SEPARABLE_2D_EXT               0x8012
00780 #define GL_CONVOLUTION_BORDER_MODE_EXT    0x8013
00781 #define GL_CONVOLUTION_FILTER_SCALE_EXT   0x8014
00782 #define GL_CONVOLUTION_FILTER_BIAS_EXT    0x8015
00783 #define GL_REDUCE_EXT                     0x8016
00784 #define GL_CONVOLUTION_FORMAT_EXT         0x8017
00785 #define GL_CONVOLUTION_WIDTH_EXT          0x8018
00786 #define GL_CONVOLUTION_HEIGHT_EXT         0x8019
00787 #define GL_MAX_CONVOLUTION_WIDTH_EXT      0x801A
00788 #define GL_MAX_CONVOLUTION_HEIGHT_EXT     0x801B
00789 #define GL_POST_CONVOLUTION_RED_SCALE_EXT 0x801C
00790 #define GL_POST_CONVOLUTION_GREEN_SCALE_EXT 0x801D
00791 #define GL_POST_CONVOLUTION_BLUE_SCALE_EXT 0x801E
00792 #define GL_POST_CONVOLUTION_ALPHA_SCALE_EXT 0x801F
00793 #define GL_POST_CONVOLUTION_RED_BIAS_EXT  0x8020
00794 #define GL_POST_CONVOLUTION_GREEN_BIAS_EXT 0x8021
00795 #define GL_POST_CONVOLUTION_BLUE_BIAS_EXT 0x8022
00796 #define GL_POST_CONVOLUTION_ALPHA_BIAS_EXT 0x8023
00797 #endif
00798
00799 #ifndef GL_SGI_color_matrix
00800 #define GL_COLOR_MATRIX_SGI               0x80B1
00801 #define GL_COLOR_MATRIX_STACK_DEPTH_SGI   0x80B2
00802 #define GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B3
00803 #define GL_POST_COLOR_MATRIX_RED_SCALE_SGI 0x80B4
00804 #define GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI 0x80B5
00805 #define GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI 0x80B6
00806 #define GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI 0x80B7
00807 #define GL_POST_COLOR_MATRIX_RED_BIAS_SGI 0x80B8
00808 #define GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI 0x80B9
00809 #define GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI 0x80BA
00810 #define GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI 0x80BB
00811 #endif
00812
00813 #ifndef GL_SGI_color_table
00814 #define GL_COLOR_TABLE_SGI                0x80D0
00815 #define GL_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D1
00816 #define GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D2
00817 #define GL_PROXY_COLOR_TABLE_SGI          0x80D3
00818 #define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D4
00819 #define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D5
00820 #define GL_COLOR_TABLE_SCALE_SGI          0x80D6
00821 #define GL_COLOR_TABLE_BIAS_SGI           0x80D7
00822 #define GL_COLOR_TABLE_FORMAT_SGI         0x80D8
00823 #define GL_COLOR_TABLE_WIDTH_SGI          0x80D9
00824 #define GL_COLOR_TABLE_RED_SIZE_SGI       0x80DA
00825 #define GL_COLOR_TABLE_GREEN_SIZE_SGI     0x80DB
00826 #define GL_COLOR_TABLE_BLUE_SIZE_SGI      0x80DC
00827 #define GL_COLOR_TABLE_ALPHA_SIZE_SGI     0x80DD
00828 #define GL_COLOR_TABLE_LUMINANCE_SIZE_SGI 0x80DE
00829 #define GL_COLOR_TABLE_INTENSITY_SIZE_SGI 0x80DF
00830 #endif
00831
00832 #ifndef GL_SGIS_pixel_texture
00833 #define GL_PIXEL_TEXTURE_SGIS             0x8353
00834 #define GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS 0x8354
00835 #define GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS 0x8355
00836 #define GL_PIXEL_GROUP_COLOR_SGIS         0x8356
00837 #endif
00838
00839 #ifndef GL_SGIX_pixel_texture
00840 #define GL_PIXEL_TEX_GEN_SGIX             0x8139
00841 #define GL_PIXEL_TEX_GEN_MODE_SGIX        0x832B
00842 #endif
00843
00844 #ifndef GL_SGIS_texture4D
00845 #define GL_PACK_SKIP_VOLUMES_SGIS         0x8130
00846 #define GL_PACK_IMAGE_DEPTH_SGIS          0x8131
00847 #define GL_UNPACK_SKIP_VOLUMES_SGIS       0x8132
00848 #define GL_UNPACK_IMAGE_DEPTH_SGIS        0x8133
00849 #define GL_TEXTURE_4D_SGIS                0x8134
00850 #define GL_PROXY_TEXTURE_4D_SGIS          0x8135
00851 #define GL_TEXTURE_4DSIZE_SGIS            0x8136
00852 #define GL_TEXTURE_WRAP_Q_SGIS            0x8137
00853 #define GL_MAX_4D_TEXTURE_SIZE_SGIS       0x8138
00854 #define GL_TEXTURE_4D_BINDING_SGIS        0x814F
00855 #endif
00856
00857 #ifndef GL_SGI_texture_color_table
00858 #define GL_TEXTURE_COLOR_TABLE_SGI        0x80BC
00859 #define GL_PROXY_TEXTURE_COLOR_TABLE_SGI  0x80BD
00860 #endif
00861
00862 #ifndef GL_EXT_cmyka
00863 #define GL_CMYK_EXT                       0x800C
00864 #define GL_CMYKA_EXT                      0x800D
00865 #define GL_PACK_CMYK_HINT_EXT             0x800E
00866 #define GL_UNPACK_CMYK_HINT_EXT           0x800F
00867 #endif
00868
00869 #ifndef GL_EXT_texture_object
00870 #define GL_TEXTURE_PRIORITY_EXT           0x8066
00871 #define GL_TEXTURE_RESIDENT_EXT           0x8067
00872 #define GL_TEXTURE_1D_BINDING_EXT         0x8068
00873 #define GL_TEXTURE_2D_BINDING_EXT         0x8069
00874 #define GL_TEXTURE_3D_BINDING_EXT         0x806A
00875 #endif
00876
00877 #ifndef GL_SGIS_detail_texture
00878 #define GL_DETAIL_TEXTURE_2D_SGIS         0x8095
00879 #define GL_DETAIL_TEXTURE_2D_BINDING_SGIS 0x8096
00880 #define GL_LINEAR_DETAIL_SGIS             0x8097
00881 #define GL_LINEAR_DETAIL_ALPHA_SGIS       0x8098
00882 #define GL_LINEAR_DETAIL_COLOR_SGIS       0x8099
00883 #define GL_DETAIL_TEXTURE_LEVEL_SGIS      0x809A
00884 #define GL_DETAIL_TEXTURE_MODE_SGIS       0x809B
00885 #define GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS 0x809C
00886 #endif
00887
00888 #ifndef GL_SGIS_sharpen_texture
00889 #define GL_LINEAR_SHARPEN_SGIS            0x80AD
00890 #define GL_LINEAR_SHARPEN_ALPHA_SGIS      0x80AE
00891 #define GL_LINEAR_SHARPEN_COLOR_SGIS      0x80AF
00892 #define GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS 0x80B0
00893 #endif
00894
00895 #ifndef GL_EXT_packed_pixels
00896 #define GL_UNSIGNED_BYTE_3_3_2_EXT        0x8032
00897 #define GL_UNSIGNED_SHORT_4_4_4_4_EXT     0x8033
00898 #define GL_UNSIGNED_SHORT_5_5_5_1_EXT     0x8034
00899 #define GL_UNSIGNED_INT_8_8_8_8_EXT       0x8035
00900 #define GL_UNSIGNED_INT_10_10_10_2_EXT    0x8036
00901 #endif
00902
00903 #ifndef GL_SGIS_texture_lod
00904 #define GL_TEXTURE_MIN_LOD_SGIS           0x813A
00905 #define GL_TEXTURE_MAX_LOD_SGIS           0x813B
00906 #define GL_TEXTURE_BASE_LEVEL_SGIS        0x813C
00907 #define GL_TEXTURE_MAX_LEVEL_SGIS         0x813D
00908 #endif
00909
00910 #ifndef GL_SGIS_multisample
00911 #define GL_MULTISAMPLE_SGIS               0x809D
00912 #define GL_SAMPLE_ALPHA_TO_MASK_SGIS      0x809E
00913 #define GL_SAMPLE_ALPHA_TO_ONE_SGIS       0x809F
00914 #define GL_SAMPLE_MASK_SGIS               0x80A0
00915 #define GL_1PASS_SGIS                     0x80A1
00916 #define GL_2PASS_0_SGIS                   0x80A2
00917 #define GL_2PASS_1_SGIS                   0x80A3
00918 #define GL_4PASS_0_SGIS                   0x80A4
00919 #define GL_4PASS_1_SGIS                   0x80A5
00920 #define GL_4PASS_2_SGIS                   0x80A6
00921 #define GL_4PASS_3_SGIS                   0x80A7
00922 #define GL_SAMPLE_BUFFERS_SGIS            0x80A8
00923 #define GL_SAMPLES_SGIS                   0x80A9
00924 #define GL_SAMPLE_MASK_VALUE_SGIS         0x80AA
00925 #define GL_SAMPLE_MASK_INVERT_SGIS        0x80AB
00926 #define GL_SAMPLE_PATTERN_SGIS            0x80AC
00927 #endif
00928
00929 #ifndef GL_EXT_rescale_normal
00930 #define GL_RESCALE_NORMAL_EXT             0x803A
00931 #endif
00932
00933 #ifndef GL_EXT_vertex_array
00934 #define GL_VERTEX_ARRAY_EXT               0x8074
00935 #define GL_NORMAL_ARRAY_EXT               0x8075
00936 #define GL_COLOR_ARRAY_EXT                0x8076
00937 #define GL_INDEX_ARRAY_EXT                0x8077
00938 #define GL_TEXTURE_COORD_ARRAY_EXT        0x8078
00939 #define GL_EDGE_FLAG_ARRAY_EXT            0x8079
00940 #define GL_VERTEX_ARRAY_SIZE_EXT          0x807A
00941 #define GL_VERTEX_ARRAY_TYPE_EXT          0x807B
00942 #define GL_VERTEX_ARRAY_STRIDE_EXT        0x807C
00943 #define GL_VERTEX_ARRAY_COUNT_EXT         0x807D
00944 #define GL_NORMAL_ARRAY_TYPE_EXT          0x807E
00945 #define GL_NORMAL_ARRAY_STRIDE_EXT        0x807F
00946 #define GL_NORMAL_ARRAY_COUNT_EXT         0x8080
00947 #define GL_COLOR_ARRAY_SIZE_EXT           0x8081
00948 #define GL_COLOR_ARRAY_TYPE_EXT           0x8082
00949 #define GL_COLOR_ARRAY_STRIDE_EXT         0x8083
00950 #define GL_COLOR_ARRAY_COUNT_EXT          0x8084
00951 #define GL_INDEX_ARRAY_TYPE_EXT           0x8085
00952 #define GL_INDEX_ARRAY_STRIDE_EXT         0x8086
00953 #define GL_INDEX_ARRAY_COUNT_EXT          0x8087
00954 #define GL_TEXTURE_COORD_ARRAY_SIZE_EXT   0x8088
00955 #define GL_TEXTURE_COORD_ARRAY_TYPE_EXT   0x8089
00956 #define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A
00957 #define GL_TEXTURE_COORD_ARRAY_COUNT_EXT  0x808B
00958 #define GL_EDGE_FLAG_ARRAY_STRIDE_EXT     0x808C
00959 #define GL_EDGE_FLAG_ARRAY_COUNT_EXT      0x808D
00960 #define GL_VERTEX_ARRAY_POINTER_EXT       0x808E
00961 #define GL_NORMAL_ARRAY_POINTER_EXT       0x808F
00962 #define GL_COLOR_ARRAY_POINTER_EXT        0x8090
00963 #define GL_INDEX_ARRAY_POINTER_EXT        0x8091
00964 #define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092
00965 #define GL_EDGE_FLAG_ARRAY_POINTER_EXT    0x8093
00966 #endif
00967
00968 #ifndef GL_EXT_misc_attribute
00969 #endif
00970
00971 #ifndef GL_SGIS_generate_mipmap
00972 #define GL_GENERATE_MIPMAP_SGIS           0x8191
00973 #define GL_GENERATE_MIPMAP_HINT_SGIS      0x8192
00974 #endif
00975
00976 #ifndef GL_SGIX_clipmap
00977 #define GL_LINEAR_CLIPMAP_LINEAR_SGIX     0x8170
00978 #define GL_TEXTURE_CLIPMAP_CENTER_SGIX    0x8171
00979 #define GL_TEXTURE_CLIPMAP_FRAME_SGIX     0x8172
00980 #define GL_TEXTURE_CLIPMAP_OFFSET_SGIX    0x8173
00981 #define GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX 0x8174
00982 #define GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX 0x8175
00983 #define GL_TEXTURE_CLIPMAP_DEPTH_SGIX     0x8176
00984 #define GL_MAX_CLIPMAP_DEPTH_SGIX         0x8177
00985 #define GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX 0x8178
00986 #define GL_NEAREST_CLIPMAP_NEAREST_SGIX   0x844D
00987 #define GL_NEAREST_CLIPMAP_LINEAR_SGIX    0x844E
00988 #define GL_LINEAR_CLIPMAP_NEAREST_SGIX    0x844F
00989 #endif
00990
00991 #ifndef GL_SGIX_shadow
00992 #define GL_TEXTURE_COMPARE_SGIX           0x819A
00993 #define GL_TEXTURE_COMPARE_OPERATOR_SGIX  0x819B
00994 #define GL_TEXTURE_LEQUAL_R_SGIX          0x819C
00995 #define GL_TEXTURE_GEQUAL_R_SGIX          0x819D
00996 #endif
00997
00998 #ifndef GL_SGIS_texture_edge_clamp
00999 #define GL_CLAMP_TO_EDGE_SGIS             0x812F
01000 #endif
01001
01002 #ifndef GL_EXT_blend_minmax
01003 #define GL_FUNC_ADD_EXT                   0x8006
01004 #define GL_MIN_EXT                        0x8007
01005 #define GL_MAX_EXT                        0x8008
01006 #define GL_BLEND_EQUATION_EXT             0x8009
01007 #endif
01008
01009 #ifndef GL_EXT_blend_subtract
01010 #define GL_FUNC_SUBTRACT_EXT              0x800A
01011 #define GL_FUNC_REVERSE_SUBTRACT_EXT      0x800B
01012 #endif
01013
01014 #ifndef GL_EXT_blend_logic_op
01015 #endif
01016
01017 #ifndef GL_SGIX_interlace
01018 #define GL_INTERLACE_SGIX                 0x8094
01019 #endif
01020
01021 #ifndef GL_SGIX_pixel_tiles
01022 #define GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX 0x813E
01023 #define GL_PIXEL_TILE_CACHE_INCREMENT_SGIX 0x813F
01024 #define GL_PIXEL_TILE_WIDTH_SGIX          0x8140
01025 #define GL_PIXEL_TILE_HEIGHT_SGIX         0x8141
01026 #define GL_PIXEL_TILE_GRID_WIDTH_SGIX     0x8142
01027 #define GL_PIXEL_TILE_GRID_HEIGHT_SGIX    0x8143
01028 #define GL_PIXEL_TILE_GRID_DEPTH_SGIX     0x8144
01029 #define GL_PIXEL_TILE_CACHE_SIZE_SGIX     0x8145
01030 #endif
01031
01032 #ifndef GL_SGIS_texture_select
01033 #define GL_DUAL_ALPHA4_SGIS               0x8110
01034 #define GL_DUAL_ALPHA8_SGIS               0x8111
01035 #define GL_DUAL_ALPHA12_SGIS              0x8112
01036 #define GL_DUAL_ALPHA16_SGIS              0x8113
01037 #define GL_DUAL_LUMINANCE4_SGIS           0x8114
01038 #define GL_DUAL_LUMINANCE8_SGIS           0x8115
01039 #define GL_DUAL_LUMINANCE12_SGIS          0x8116
01040 #define GL_DUAL_LUMINANCE16_SGIS          0x8117
01041 #define GL_DUAL_INTENSITY4_SGIS           0x8118
01042 #define GL_DUAL_INTENSITY8_SGIS           0x8119
01043 #define GL_DUAL_INTENSITY12_SGIS          0x811A
01044 #define GL_DUAL_INTENSITY16_SGIS          0x811B
01045 #define GL_DUAL_LUMINANCE_ALPHA4_SGIS     0x811C
01046 #define GL_DUAL_LUMINANCE_ALPHA8_SGIS     0x811D
01047 #define GL_QUAD_ALPHA4_SGIS               0x811E
01048 #define GL_QUAD_ALPHA8_SGIS               0x811F
01049 #define GL_QUAD_LUMINANCE4_SGIS           0x8120
01050 #define GL_QUAD_LUMINANCE8_SGIS           0x8121
01051 #define GL_QUAD_INTENSITY4_SGIS           0x8122
01052 #define GL_QUAD_INTENSITY8_SGIS           0x8123
01053 #define GL_DUAL_TEXTURE_SELECT_SGIS       0x8124
01054 #define GL_QUAD_TEXTURE_SELECT_SGIS       0x8125
01055 #endif
01056
01057 #ifndef GL_SGIX_sprite
01058 #define GL_SPRITE_SGIX                    0x8148
01059 #define GL_SPRITE_MODE_SGIX               0x8149
01060 #define GL_SPRITE_AXIS_SGIX               0x814A
01061 #define GL_SPRITE_TRANSLATION_SGIX        0x814B
01062 #define GL_SPRITE_AXIAL_SGIX              0x814C
01063 #define GL_SPRITE_OBJECT_ALIGNED_SGIX     0x814D
01064 #define GL_SPRITE_EYE_ALIGNED_SGIX        0x814E
01065 #endif
01066
01067 #ifndef GL_SGIX_texture_multi_buffer
01068 #define GL_TEXTURE_MULTI_BUFFER_HINT_SGIX 0x812E
01069 #endif
01070
01071 #ifndef GL_EXT_point_parameters
01072 #define GL_POINT_SIZE_MIN_EXT             0x8126
01073 #define GL_POINT_SIZE_MAX_EXT             0x8127
01074 #define GL_POINT_FADE_THRESHOLD_SIZE_EXT  0x8128
01075 #define GL_DISTANCE_ATTENUATION_EXT       0x8129
01076 #endif
01077
01078 #ifndef GL_SGIS_point_parameters
01079 #define GL_POINT_SIZE_MIN_SGIS            0x8126
01080 #define GL_POINT_SIZE_MAX_SGIS            0x8127
01081 #define GL_POINT_FADE_THRESHOLD_SIZE_SGIS 0x8128
01082 #define GL_DISTANCE_ATTENUATION_SGIS      0x8129
01083 #endif
01084
01085 #ifndef GL_SGIX_instruments
01086 #define GL_INSTRUMENT_BUFFER_POINTER_SGIX 0x8180
01087 #define GL_INSTRUMENT_MEASUREMENTS_SGIX   0x8181
01088 #endif
01089
01090 #ifndef GL_SGIX_texture_scale_bias
01091 #define GL_POST_TEXTURE_FILTER_BIAS_SGIX  0x8179
01092 #define GL_POST_TEXTURE_FILTER_SCALE_SGIX 0x817A
01093 #define GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX 0x817B
01094 #define GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX 0x817C
01095 #endif
01096
01097 #ifndef GL_SGIX_framezoom
01098 #define GL_FRAMEZOOM_SGIX                 0x818B
01099 #define GL_FRAMEZOOM_FACTOR_SGIX          0x818C
01100 #define GL_MAX_FRAMEZOOM_FACTOR_SGIX      0x818D
01101 #endif
01102
01103 #ifndef GL_SGIX_tag_sample_buffer
01104 #endif
01105
01106 #ifndef GL_FfdMaskSGIX
01107 #define GL_TEXTURE_DEFORMATION_BIT_SGIX   0x00000001
01108 #define GL_GEOMETRY_DEFORMATION_BIT_SGIX  0x00000002
01109 #endif
01110
01111 #ifndef GL_SGIX_polynomial_ffd
01112 #define GL_GEOMETRY_DEFORMATION_SGIX      0x8194
01113 #define GL_TEXTURE_DEFORMATION_SGIX       0x8195
01114 #define GL_DEFORMATIONS_MASK_SGIX         0x8196
01115 #define GL_MAX_DEFORMATION_ORDER_SGIX     0x8197
01116 #endif
01117
01118 #ifndef GL_SGIX_reference_plane
01119 #define GL_REFERENCE_PLANE_SGIX           0x817D
01120 #define GL_REFERENCE_PLANE_EQUATION_SGIX  0x817E
01121 #endif
01122
01123 #ifndef GL_SGIX_flush_raster
01124 #endif
01125
01126 #ifndef GL_SGIX_depth_texture
01127 #define GL_DEPTH_COMPONENT16_SGIX         0x81A5
01128 #define GL_DEPTH_COMPONENT24_SGIX         0x81A6
01129 #define GL_DEPTH_COMPONENT32_SGIX         0x81A7
01130 #endif
01131
01132 #ifndef GL_SGIS_fog_function
01133 #define GL_FOG_FUNC_SGIS                  0x812A
01134 #define GL_FOG_FUNC_POINTS_SGIS           0x812B
01135 #define GL_MAX_FOG_FUNC_POINTS_SGIS       0x812C
01136 #endif
01137
01138 #ifndef GL_SGIX_fog_offset
01139 #define GL_FOG_OFFSET_SGIX                0x8198
01140 #define GL_FOG_OFFSET_VALUE_SGIX          0x8199
01141 #endif
01142
01143 #ifndef GL_HP_image_transform
01144 #define GL_IMAGE_SCALE_X_HP               0x8155
01145 #define GL_IMAGE_SCALE_Y_HP               0x8156
01146 #define GL_IMAGE_TRANSLATE_X_HP           0x8157
01147 #define GL_IMAGE_TRANSLATE_Y_HP           0x8158
01148 #define GL_IMAGE_ROTATE_ANGLE_HP          0x8159
01149 #define GL_IMAGE_ROTATE_ORIGIN_X_HP       0x815A
01150 #define GL_IMAGE_ROTATE_ORIGIN_Y_HP       0x815B
01151 #define GL_IMAGE_MAG_FILTER_HP            0x815C
01152 #define GL_IMAGE_MIN_FILTER_HP            0x815D
01153 #define GL_IMAGE_CUBIC_WEIGHT_HP          0x815E
01154 #define GL_CUBIC_HP                       0x815F
01155 #define GL_AVERAGE_HP                     0x8160
01156 #define GL_IMAGE_TRANSFORM_2D_HP          0x8161
01157 #define GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP 0x8162
01158 #define GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP 0x8163
01159 #endif
01160
01161 #ifndef GL_HP_convolution_border_modes
01162 #define GL_IGNORE_BORDER_HP               0x8150
01163 #define GL_CONSTANT_BORDER_HP             0x8151
01164 #define GL_REPLICATE_BORDER_HP            0x8153
01165 #define GL_CONVOLUTION_BORDER_COLOR_HP    0x8154
01166 #endif
01167
01168 #ifndef GL_INGR_palette_buffer
01169 #endif
01170
01171 #ifndef GL_SGIX_texture_add_env
01172 #define GL_TEXTURE_ENV_BIAS_SGIX          0x80BE
01173 #endif
01174
01175 #ifndef GL_EXT_color_subtable
01176 #endif
01177
01178 #ifndef GL_PGI_vertex_hints
01179 #define GL_VERTEX_DATA_HINT_PGI           0x1A22A
01180 #define GL_VERTEX_CONSISTENT_HINT_PGI     0x1A22B
01181 #define GL_MATERIAL_SIDE_HINT_PGI         0x1A22C
01182 #define GL_MAX_VERTEX_HINT_PGI            0x1A22D
01183 #define GL_COLOR3_BIT_PGI                 0x00010000
01184 #define GL_COLOR4_BIT_PGI                 0x00020000
01185 #define GL_EDGEFLAG_BIT_PGI               0x00040000
01186 #define GL_INDEX_BIT_PGI                  0x00080000
01187 #define GL_MAT_AMBIENT_BIT_PGI            0x00100000
01188 #define GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI 0x00200000
01189 #define GL_MAT_DIFFUSE_BIT_PGI            0x00400000
01190 #define GL_MAT_EMISSION_BIT_PGI           0x00800000
01191 #define GL_MAT_COLOR_INDEXES_BIT_PGI      0x01000000
01192 #define GL_MAT_SHININESS_BIT_PGI          0x02000000
01193 #define GL_MAT_SPECULAR_BIT_PGI           0x04000000
01194 #define GL_NORMAL_BIT_PGI                 0x08000000
01195 #define GL_TEXCOORD1_BIT_PGI              0x10000000
01196 #define GL_TEXCOORD2_BIT_PGI              0x20000000
01197 #define GL_TEXCOORD3_BIT_PGI              0x40000000
01198 #define GL_TEXCOORD4_BIT_PGI              0x80000000
01199 #define GL_VERTEX23_BIT_PGI               0x00000004
01200 #define GL_VERTEX4_BIT_PGI                0x00000008
01201 #endif
01202
01203 #ifndef GL_PGI_misc_hints
01204 #define GL_PREFER_DOUBLEBUFFER_HINT_PGI   0x1A1F8
01205 #define GL_CONSERVE_MEMORY_HINT_PGI       0x1A1FD
01206 #define GL_RECLAIM_MEMORY_HINT_PGI        0x1A1FE
01207 #define GL_NATIVE_GRAPHICS_HANDLE_PGI     0x1A202
01208 #define GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI 0x1A203
01209 #define GL_NATIVE_GRAPHICS_END_HINT_PGI   0x1A204
01210 #define GL_ALWAYS_FAST_HINT_PGI           0x1A20C
01211 #define GL_ALWAYS_SOFT_HINT_PGI           0x1A20D
01212 #define GL_ALLOW_DRAW_OBJ_HINT_PGI        0x1A20E
01213 #define GL_ALLOW_DRAW_WIN_HINT_PGI        0x1A20F
01214 #define GL_ALLOW_DRAW_FRG_HINT_PGI        0x1A210
01215 #define GL_ALLOW_DRAW_MEM_HINT_PGI        0x1A211
01216 #define GL_STRICT_DEPTHFUNC_HINT_PGI      0x1A216
01217 #define GL_STRICT_LIGHTING_HINT_PGI       0x1A217
01218 #define GL_STRICT_SCISSOR_HINT_PGI        0x1A218
01219 #define GL_FULL_STIPPLE_HINT_PGI          0x1A219
01220 #define GL_CLIP_NEAR_HINT_PGI             0x1A220
01221 #define GL_CLIP_FAR_HINT_PGI              0x1A221
01222 #define GL_WIDE_LINE_HINT_PGI             0x1A222
01223 #define GL_BACK_NORMALS_HINT_PGI          0x1A223
01224 #endif
01225
01226 #ifndef GL_EXT_paletted_texture
01227 #define GL_COLOR_INDEX1_EXT               0x80E2
01228 #define GL_COLOR_INDEX2_EXT               0x80E3
01229 #define GL_COLOR_INDEX4_EXT               0x80E4
01230 #define GL_COLOR_INDEX8_EXT               0x80E5
01231 #define GL_COLOR_INDEX12_EXT              0x80E6
01232 #define GL_COLOR_INDEX16_EXT              0x80E7
01233 #define GL_TEXTURE_INDEX_SIZE_EXT         0x80ED
01234 #endif
01235
01236 #ifndef GL_EXT_clip_volume_hint
01237 #define GL_CLIP_VOLUME_CLIPPING_HINT_EXT  0x80F0
01238 #endif
01239
01240 #ifndef GL_SGIX_list_priority
01241 #define GL_LIST_PRIORITY_SGIX             0x8182
01242 #endif
01243
01244 #ifndef GL_SGIX_ir_instrument1
01245 #define GL_IR_INSTRUMENT1_SGIX            0x817F
01246 #endif
01247
01248 #ifndef GL_SGIX_calligraphic_fragment
01249 #define GL_CALLIGRAPHIC_FRAGMENT_SGIX     0x8183
01250 #endif
01251
01252 #ifndef GL_SGIX_texture_lod_bias
01253 #define GL_TEXTURE_LOD_BIAS_S_SGIX        0x818E
01254 #define GL_TEXTURE_LOD_BIAS_T_SGIX        0x818F
01255 #define GL_TEXTURE_LOD_BIAS_R_SGIX        0x8190
01256 #endif
01257
01258 #ifndef GL_SGIX_shadow_ambient
01259 #define GL_SHADOW_AMBIENT_SGIX            0x80BF
01260 #endif
01261
01262 #ifndef GL_EXT_index_texture
01263 #endif
01264
01265 #ifndef GL_EXT_index_material
01266 #define GL_INDEX_MATERIAL_EXT             0x81B8
01267 #define GL_INDEX_MATERIAL_PARAMETER_EXT   0x81B9
01268 #define GL_INDEX_MATERIAL_FACE_EXT        0x81BA
01269 #endif
01270
01271 #ifndef GL_EXT_index_func
01272 #define GL_INDEX_TEST_EXT                 0x81B5
01273 #define GL_INDEX_TEST_FUNC_EXT            0x81B6
01274 #define GL_INDEX_TEST_REF_EXT             0x81B7
01275 #endif
01276
01277 #ifndef GL_EXT_index_array_formats
01278 #define GL_IUI_V2F_EXT                    0x81AD
01279 #define GL_IUI_V3F_EXT                    0x81AE
01280 #define GL_IUI_N3F_V2F_EXT                0x81AF
01281 #define GL_IUI_N3F_V3F_EXT                0x81B0
01282 #define GL_T2F_IUI_V2F_EXT                0x81B1
01283 #define GL_T2F_IUI_V3F_EXT                0x81B2
01284 #define GL_T2F_IUI_N3F_V2F_EXT            0x81B3
01285 #define GL_T2F_IUI_N3F_V3F_EXT            0x81B4
01286 #endif
01287
01288 #ifndef GL_EXT_compiled_vertex_array
01289 #define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT   0x81A8
01290 #define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT   0x81A9
01291 #endif
01292
01293 #ifndef GL_EXT_cull_vertex
01294 #define GL_CULL_VERTEX_EXT                0x81AA
01295 #define GL_CULL_VERTEX_EYE_POSITION_EXT   0x81AB
01296 #define GL_CULL_VERTEX_OBJECT_POSITION_EXT 0x81AC
01297 #endif
01298
01299 #ifndef GL_SGIX_ycrcb
01300 #define GL_YCRCB_422_SGIX                 0x81BB
01301 #define GL_YCRCB_444_SGIX                 0x81BC
01302 #endif
01303
01304 #ifndef GL_SGIX_fragment_lighting
01305 #define GL_FRAGMENT_LIGHTING_SGIX         0x8400
01306 #define GL_FRAGMENT_COLOR_MATERIAL_SGIX   0x8401
01307 #define GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX 0x8402
01308 #define GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX 0x8403
01309 #define GL_MAX_FRAGMENT_LIGHTS_SGIX       0x8404
01310 #define GL_MAX_ACTIVE_LIGHTS_SGIX         0x8405
01311 #define GL_CURRENT_RASTER_NORMAL_SGIX     0x8406
01312 #define GL_LIGHT_ENV_MODE_SGIX            0x8407
01313 #define GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX 0x8408
01314 #define GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX 0x8409
01315 #define GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX 0x840A
01316 #define GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX 0x840B
01317 #define GL_FRAGMENT_LIGHT0_SGIX           0x840C
01318 #define GL_FRAGMENT_LIGHT1_SGIX           0x840D
01319 #define GL_FRAGMENT_LIGHT2_SGIX           0x840E
01320 #define GL_FRAGMENT_LIGHT3_SGIX           0x840F
01321 #define GL_FRAGMENT_LIGHT4_SGIX           0x8410
01322 #define GL_FRAGMENT_LIGHT5_SGIX           0x8411
01323 #define GL_FRAGMENT_LIGHT6_SGIX           0x8412
01324 #define GL_FRAGMENT_LIGHT7_SGIX           0x8413
01325 #endif
01326
01327 #ifndef GL_IBM_rasterpos_clip
01328 #define GL_RASTER_POSITION_UNCLIPPED_IBM  0x19262
01329 #endif
01330
01331 #ifndef GL_HP_texture_lighting
01332 #define GL_TEXTURE_LIGHTING_MODE_HP       0x8167
01333 #define GL_TEXTURE_POST_SPECULAR_HP       0x8168
01334 #define GL_TEXTURE_PRE_SPECULAR_HP        0x8169
01335 #endif
01336
01337 #ifndef GL_EXT_draw_range_elements
01338 #define GL_MAX_ELEMENTS_VERTICES_EXT      0x80E8
01339 #define GL_MAX_ELEMENTS_INDICES_EXT       0x80E9
01340 #endif
01341
01342 #ifndef GL_WIN_phong_shading
01343 #define GL_PHONG_WIN                      0x80EA
01344 #define GL_PHONG_HINT_WIN                 0x80EB
01345 #endif
01346
01347 #ifndef GL_WIN_specular_fog
01348 #define GL_FOG_SPECULAR_TEXTURE_WIN       0x80EC
01349 #endif
01350
01351 #ifndef GL_EXT_light_texture
01352 #define GL_FRAGMENT_MATERIAL_EXT          0x8349
01353 #define GL_FRAGMENT_NORMAL_EXT            0x834A
01354 #define GL_FRAGMENT_COLOR_EXT             0x834C
01355 #define GL_ATTENUATION_EXT                0x834D
01356 #define GL_SHADOW_ATTENUATION_EXT         0x834E
01357 #define GL_TEXTURE_APPLICATION_MODE_EXT   0x834F
01358 #define GL_TEXTURE_LIGHT_EXT              0x8350
01359 #define GL_TEXTURE_MATERIAL_FACE_EXT      0x8351
01360 #define GL_TEXTURE_MATERIAL_PARAMETER_EXT 0x8352
01361         /* reuse GL_FRAGMENT_DEPTH_EXT */
01362 #endif
01363
01364 #ifndef GL_SGIX_blend_alpha_minmax
01365 #define GL_ALPHA_MIN_SGIX                 0x8320
01366 #define GL_ALPHA_MAX_SGIX                 0x8321
01367 #endif
01368
01369 #ifndef GL_SGIX_impact_pixel_texture
01370 #define GL_PIXEL_TEX_GEN_Q_CEILING_SGIX   0x8184
01371 #define GL_PIXEL_TEX_GEN_Q_ROUND_SGIX     0x8185
01372 #define GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX     0x8186
01373 #define GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX 0x8187
01374 #define GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX 0x8188
01375 #define GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX    0x8189
01376 #define GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX    0x818A
01377 #endif
01378
01379 #ifndef GL_EXT_bgra
01380 #define GL_BGR_EXT                        0x80E0
01381 #define GL_BGRA_EXT                       0x80E1
01382 #endif
01383
01384 #ifndef GL_SGIX_async
01385 #define GL_ASYNC_MARKER_SGIX              0x8329
01386 #endif
01387
01388 #ifndef GL_SGIX_async_pixel
01389 #define GL_ASYNC_TEX_IMAGE_SGIX           0x835C
01390 #define GL_ASYNC_DRAW_PIXELS_SGIX         0x835D
01391 #define GL_ASYNC_READ_PIXELS_SGIX         0x835E
01392 #define GL_MAX_ASYNC_TEX_IMAGE_SGIX       0x835F
01393 #define GL_MAX_ASYNC_DRAW_PIXELS_SGIX     0x8360
01394 #define GL_MAX_ASYNC_READ_PIXELS_SGIX     0x8361
01395 #endif
01396
01397 #ifndef GL_SGIX_async_histogram
01398 #define GL_ASYNC_HISTOGRAM_SGIX           0x832C
01399 #define GL_MAX_ASYNC_HISTOGRAM_SGIX       0x832D
01400 #endif
01401
01402 #ifndef GL_INTEL_texture_scissor
01403 #endif
01404
01405 #ifndef GL_INTEL_parallel_arrays
01406 #define GL_PARALLEL_ARRAYS_INTEL          0x83F4
01407 #define GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL 0x83F5
01408 #define GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL 0x83F6
01409 #define GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL 0x83F7
01410 #define GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL 0x83F8
01411 #endif
01412
01413 #ifndef GL_HP_occlusion_test
01414 #define GL_OCCLUSION_TEST_HP              0x8165
01415 #define GL_OCCLUSION_TEST_RESULT_HP       0x8166
01416 #endif
01417
01418 #ifndef GL_EXT_pixel_transform
01419 #define GL_PIXEL_TRANSFORM_2D_EXT         0x8330
01420 #define GL_PIXEL_MAG_FILTER_EXT           0x8331
01421 #define GL_PIXEL_MIN_FILTER_EXT           0x8332
01422 #define GL_PIXEL_CUBIC_WEIGHT_EXT         0x8333
01423 #define GL_CUBIC_EXT                      0x8334
01424 #define GL_AVERAGE_EXT                    0x8335
01425 #define GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8336
01426 #define GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8337
01427 #define GL_PIXEL_TRANSFORM_2D_MATRIX_EXT  0x8338
01428 #endif
01429
01430 #ifndef GL_EXT_pixel_transform_color_table
01431 #endif
01432
01433 #ifndef GL_EXT_shared_texture_palette
01434 #define GL_SHARED_TEXTURE_PALETTE_EXT     0x81FB
01435 #endif
01436
01437 #ifndef GL_EXT_separate_specular_color
01438 #define GL_LIGHT_MODEL_COLOR_CONTROL_EXT  0x81F8
01439 #define GL_SINGLE_COLOR_EXT               0x81F9
01440 #define GL_SEPARATE_SPECULAR_COLOR_EXT    0x81FA
01441 #endif
01442
01443 #ifndef GL_EXT_secondary_color
01444 #define GL_COLOR_SUM_EXT                  0x8458
01445 #define GL_CURRENT_SECONDARY_COLOR_EXT    0x8459
01446 #define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A
01447 #define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B
01448 #define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C
01449 #define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D
01450 #define GL_SECONDARY_COLOR_ARRAY_EXT      0x845E
01451 #endif
01452
01453 #ifndef GL_EXT_texture_perturb_normal
01454 #define GL_PERTURB_EXT                    0x85AE
01455 #define GL_TEXTURE_NORMAL_EXT             0x85AF
01456 #endif
01457
01458 #ifndef GL_EXT_multi_draw_arrays
01459 #endif
01460
01461 #ifndef GL_EXT_fog_coord
01462 #define GL_FOG_COORDINATE_SOURCE_EXT      0x8450
01463 #define GL_FOG_COORDINATE_EXT             0x8451
01464 #define GL_FRAGMENT_DEPTH_EXT             0x8452
01465 #define GL_CURRENT_FOG_COORDINATE_EXT     0x8453
01466 #define GL_FOG_COORDINATE_ARRAY_TYPE_EXT  0x8454
01467 #define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455
01468 #define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456
01469 #define GL_FOG_COORDINATE_ARRAY_EXT       0x8457
01470 #endif
01471
01472 #ifndef GL_REND_screen_coordinates
01473 #define GL_SCREEN_COORDINATES_REND        0x8490
01474 #define GL_INVERTED_SCREEN_W_REND         0x8491
01475 #endif
01476
01477 #ifndef GL_EXT_coordinate_frame
01478 #define GL_TANGENT_ARRAY_EXT              0x8439
01479 #define GL_BINORMAL_ARRAY_EXT             0x843A
01480 #define GL_CURRENT_TANGENT_EXT            0x843B
01481 #define GL_CURRENT_BINORMAL_EXT           0x843C
01482 #define GL_TANGENT_ARRAY_TYPE_EXT         0x843E
01483 #define GL_TANGENT_ARRAY_STRIDE_EXT       0x843F
01484 #define GL_BINORMAL_ARRAY_TYPE_EXT        0x8440
01485 #define GL_BINORMAL_ARRAY_STRIDE_EXT      0x8441
01486 #define GL_TANGENT_ARRAY_POINTER_EXT      0x8442
01487 #define GL_BINORMAL_ARRAY_POINTER_EXT     0x8443
01488 #define GL_MAP1_TANGENT_EXT               0x8444
01489 #define GL_MAP2_TANGENT_EXT               0x8445
01490 #define GL_MAP1_BINORMAL_EXT              0x8446
01491 #define GL_MAP2_BINORMAL_EXT              0x8447
01492 #endif
01493
01494 #ifndef GL_EXT_texture_env_combine
01495 #define GL_COMBINE_EXT                    0x8570
01496 #define GL_COMBINE_RGB_EXT                0x8571
01497 #define GL_COMBINE_ALPHA_EXT              0x8572
01498 #define GL_RGB_SCALE_EXT                  0x8573
01499 #define GL_ADD_SIGNED_EXT                 0x8574
01500 #define GL_INTERPOLATE_EXT                0x8575
01501 #define GL_CONSTANT_EXT                   0x8576
01502 #define GL_PRIMARY_COLOR_EXT              0x8577
01503 #define GL_PREVIOUS_EXT                   0x8578
01504 #define GL_SOURCE0_RGB_EXT                0x8580
01505 #define GL_SOURCE1_RGB_EXT                0x8581
01506 #define GL_SOURCE2_RGB_EXT                0x8582
01507 #define GL_SOURCE0_ALPHA_EXT              0x8588
01508 #define GL_SOURCE1_ALPHA_EXT              0x8589
01509 #define GL_SOURCE2_ALPHA_EXT              0x858A
01510 #define GL_OPERAND0_RGB_EXT               0x8590
01511 #define GL_OPERAND1_RGB_EXT               0x8591
01512 #define GL_OPERAND2_RGB_EXT               0x8592
01513 #define GL_OPERAND0_ALPHA_EXT             0x8598
01514 #define GL_OPERAND1_ALPHA_EXT             0x8599
01515 #define GL_OPERAND2_ALPHA_EXT             0x859A
01516 #endif
01517
01518 #ifndef GL_APPLE_specular_vector
01519 #define GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE 0x85B0
01520 #endif
01521
01522 #ifndef GL_APPLE_transform_hint
01523 #define GL_TRANSFORM_HINT_APPLE           0x85B1
01524 #endif
01525
01526 #ifndef GL_SGIX_fog_scale
01527 #define GL_FOG_SCALE_SGIX                 0x81FC
01528 #define GL_FOG_SCALE_VALUE_SGIX           0x81FD
01529 #endif
01530
01531 #ifndef GL_SUNX_constant_data
01532 #define GL_UNPACK_CONSTANT_DATA_SUNX      0x81D5
01533 #define GL_TEXTURE_CONSTANT_DATA_SUNX     0x81D6
01534 #endif
01535
01536 #ifndef GL_SUN_global_alpha
01537 #define GL_GLOBAL_ALPHA_SUN               0x81D9
01538 #define GL_GLOBAL_ALPHA_FACTOR_SUN        0x81DA
01539 #endif
01540
01541 #ifndef GL_SUN_triangle_list
01542 #define GL_RESTART_SUN                    0x0001
01543 #define GL_REPLACE_MIDDLE_SUN             0x0002
01544 #define GL_REPLACE_OLDEST_SUN             0x0003
01545 #define GL_TRIANGLE_LIST_SUN              0x81D7
01546 #define GL_REPLACEMENT_CODE_SUN           0x81D8
01547 #define GL_REPLACEMENT_CODE_ARRAY_SUN     0x85C0
01548 #define GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN 0x85C1
01549 #define GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN 0x85C2
01550 #define GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN 0x85C3
01551 #define GL_R1UI_V3F_SUN                   0x85C4
01552 #define GL_R1UI_C4UB_V3F_SUN              0x85C5
01553 #define GL_R1UI_C3F_V3F_SUN               0x85C6
01554 #define GL_R1UI_N3F_V3F_SUN               0x85C7
01555 #define GL_R1UI_C4F_N3F_V3F_SUN           0x85C8
01556 #define GL_R1UI_T2F_V3F_SUN               0x85C9
01557 #define GL_R1UI_T2F_N3F_V3F_SUN           0x85CA
01558 #define GL_R1UI_T2F_C4F_N3F_V3F_SUN       0x85CB
01559 #endif
01560
01561 #ifndef GL_SUN_vertex
01562 #endif
01563
01564 #ifndef GL_EXT_blend_func_separate
01565 #define GL_BLEND_DST_RGB_EXT              0x80C8
01566 #define GL_BLEND_SRC_RGB_EXT              0x80C9
01567 #define GL_BLEND_DST_ALPHA_EXT            0x80CA
01568 #define GL_BLEND_SRC_ALPHA_EXT            0x80CB
01569 #endif
01570
01571 #ifndef GL_INGR_color_clamp
01572 #define GL_RED_MIN_CLAMP_INGR             0x8560
01573 #define GL_GREEN_MIN_CLAMP_INGR           0x8561
01574 #define GL_BLUE_MIN_CLAMP_INGR            0x8562
01575 #define GL_ALPHA_MIN_CLAMP_INGR           0x8563
01576 #define GL_RED_MAX_CLAMP_INGR             0x8564
01577 #define GL_GREEN_MAX_CLAMP_INGR           0x8565
01578 #define GL_BLUE_MAX_CLAMP_INGR            0x8566
01579 #define GL_ALPHA_MAX_CLAMP_INGR           0x8567
01580 #endif
01581
01582 #ifndef GL_INGR_interlace_read
01583 #define GL_INTERLACE_READ_INGR            0x8568
01584 #endif
01585
01586 #ifndef GL_EXT_stencil_wrap
01587 #define GL_INCR_WRAP_EXT                  0x8507
01588 #define GL_DECR_WRAP_EXT                  0x8508
01589 #endif
01590
01591 #ifndef GL_EXT_422_pixels
01592 #define GL_422_EXT                        0x80CC
01593 #define GL_422_REV_EXT                    0x80CD
01594 #define GL_422_AVERAGE_EXT                0x80CE
01595 #define GL_422_REV_AVERAGE_EXT            0x80CF
01596 #endif
01597
01598 #ifndef GL_NV_texgen_reflection
01599 #define GL_NORMAL_MAP_NV                  0x8511
01600 #define GL_REFLECTION_MAP_NV              0x8512
01601 #endif
01602
01603 #ifndef GL_EXT_texture_cube_map
01604 #define GL_NORMAL_MAP_EXT                 0x8511
01605 #define GL_REFLECTION_MAP_EXT             0x8512
01606 #define GL_TEXTURE_CUBE_MAP_EXT           0x8513
01607 #define GL_TEXTURE_BINDING_CUBE_MAP_EXT   0x8514
01608 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515
01609 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516
01610 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517
01611 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518
01612 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519
01613 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A
01614 #define GL_PROXY_TEXTURE_CUBE_MAP_EXT     0x851B
01615 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT  0x851C
01616 #endif
01617
01618 #ifndef GL_SUN_convolution_border_modes
01619 #define GL_WRAP_BORDER_SUN                0x81D4
01620 #endif
01621
01622 #ifndef GL_EXT_texture_env_add
01623 #endif
01624
01625 #ifndef GL_EXT_texture_lod_bias
01626 #define GL_MAX_TEXTURE_LOD_BIAS_EXT       0x84FD
01627 #define GL_TEXTURE_FILTER_CONTROL_EXT     0x8500
01628 #define GL_TEXTURE_LOD_BIAS_EXT           0x8501
01629 #endif
01630
01631 #ifndef GL_EXT_texture_filter_anisotropic
01632 #define GL_TEXTURE_MAX_ANISOTROPY_EXT     0x84FE
01633 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
01634 #endif
01635
01636 #ifndef GL_EXT_vertex_weighting
01637 #define GL_MODELVIEW0_STACK_DEPTH_EXT     GL_MODELVIEW_STACK_DEPTH
01638 #define GL_MODELVIEW1_STACK_DEPTH_EXT     0x8502
01639 #define GL_MODELVIEW0_MATRIX_EXT          GL_MODELVIEW_MATRIX
01640 #define GL_MODELVIEW1_MATRIX_EXT          0x8506
01641 #define GL_VERTEX_WEIGHTING_EXT           0x8509
01642 #define GL_MODELVIEW0_EXT                 GL_MODELVIEW
01643 #define GL_MODELVIEW1_EXT                 0x850A
01644 #define GL_CURRENT_VERTEX_WEIGHT_EXT      0x850B
01645 #define GL_VERTEX_WEIGHT_ARRAY_EXT        0x850C
01646 #define GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT   0x850D
01647 #define GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT   0x850E
01648 #define GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F
01649 #define GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510
01650 #endif
01651
01652 #ifndef GL_NV_light_max_exponent
01653 #define GL_MAX_SHININESS_NV               0x8504
01654 #define GL_MAX_SPOT_EXPONENT_NV           0x8505
01655 #endif
01656
01657 #ifndef GL_NV_vertex_array_range
01658 #define GL_VERTEX_ARRAY_RANGE_NV          0x851D
01659 #define GL_VERTEX_ARRAY_RANGE_LENGTH_NV   0x851E
01660 #define GL_VERTEX_ARRAY_RANGE_VALID_NV    0x851F
01661 #define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520
01662 #define GL_VERTEX_ARRAY_RANGE_POINTER_NV  0x8521
01663 #endif
01664
01665 #ifndef GL_NV_register_combiners
01666 #define GL_REGISTER_COMBINERS_NV          0x8522
01667 #define GL_VARIABLE_A_NV                  0x8523
01668 #define GL_VARIABLE_B_NV                  0x8524
01669 #define GL_VARIABLE_C_NV                  0x8525
01670 #define GL_VARIABLE_D_NV                  0x8526
01671 #define GL_VARIABLE_E_NV                  0x8527
01672 #define GL_VARIABLE_F_NV                  0x8528
01673 #define GL_VARIABLE_G_NV                  0x8529
01674 #define GL_CONSTANT_COLOR0_NV             0x852A
01675 #define GL_CONSTANT_COLOR1_NV             0x852B
01676 #define GL_PRIMARY_COLOR_NV               0x852C
01677 #define GL_SECONDARY_COLOR_NV             0x852D
01678 #define GL_SPARE0_NV                      0x852E
01679 #define GL_SPARE1_NV                      0x852F
01680 #define GL_DISCARD_NV                     0x8530
01681 #define GL_E_TIMES_F_NV                   0x8531
01682 #define GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532
01683 #define GL_UNSIGNED_IDENTITY_NV           0x8536
01684 #define GL_UNSIGNED_INVERT_NV             0x8537
01685 #define GL_EXPAND_NORMAL_NV               0x8538
01686 #define GL_EXPAND_NEGATE_NV               0x8539
01687 #define GL_HALF_BIAS_NORMAL_NV            0x853A
01688 #define GL_HALF_BIAS_NEGATE_NV            0x853B
01689 #define GL_SIGNED_IDENTITY_NV             0x853C
01690 #define GL_SIGNED_NEGATE_NV               0x853D
01691 #define GL_SCALE_BY_TWO_NV                0x853E
01692 #define GL_SCALE_BY_FOUR_NV               0x853F
01693 #define GL_SCALE_BY_ONE_HALF_NV           0x8540
01694 #define GL_BIAS_BY_NEGATIVE_ONE_HALF_NV   0x8541
01695 #define GL_COMBINER_INPUT_NV              0x8542
01696 #define GL_COMBINER_MAPPING_NV            0x8543
01697 #define GL_COMBINER_COMPONENT_USAGE_NV    0x8544
01698 #define GL_COMBINER_AB_DOT_PRODUCT_NV     0x8545
01699 #define GL_COMBINER_CD_DOT_PRODUCT_NV     0x8546
01700 #define GL_COMBINER_MUX_SUM_NV            0x8547
01701 #define GL_COMBINER_SCALE_NV              0x8548
01702 #define GL_COMBINER_BIAS_NV               0x8549
01703 #define GL_COMBINER_AB_OUTPUT_NV          0x854A
01704 #define GL_COMBINER_CD_OUTPUT_NV          0x854B
01705 #define GL_COMBINER_SUM_OUTPUT_NV         0x854C
01706 #define GL_MAX_GENERAL_COMBINERS_NV       0x854D
01707 #define GL_NUM_GENERAL_COMBINERS_NV       0x854E
01708 #define GL_COLOR_SUM_CLAMP_NV             0x854F
01709 #define GL_COMBINER0_NV                   0x8550
01710 #define GL_COMBINER1_NV                   0x8551
01711 #define GL_COMBINER2_NV                   0x8552
01712 #define GL_COMBINER3_NV                   0x8553
01713 #define GL_COMBINER4_NV                   0x8554
01714 #define GL_COMBINER5_NV                   0x8555
01715 #define GL_COMBINER6_NV                   0x8556
01716 #define GL_COMBINER7_NV                   0x8557
01717         /* reuse GL_TEXTURE0_ARB */
01718         /* reuse GL_TEXTURE1_ARB */
01719         /* reuse GL_ZERO */
01720         /* reuse GL_NONE */
01721         /* reuse GL_FOG */
01722 #endif
01723
01724 #ifndef GL_NV_fog_distance
01725 #define GL_FOG_DISTANCE_MODE_NV           0x855A
01726 #define GL_EYE_RADIAL_NV                  0x855B
01727 #define GL_EYE_PLANE_ABSOLUTE_NV          0x855C
01728         /* reuse GL_EYE_PLANE */
01729 #endif
01730
01731 #ifndef GL_NV_texgen_emboss
01732 #define GL_EMBOSS_LIGHT_NV                0x855D
01733 #define GL_EMBOSS_CONSTANT_NV             0x855E
01734 #define GL_EMBOSS_MAP_NV                  0x855F
01735 #endif
01736
01737 #ifndef GL_NV_blend_square
01738 #endif
01739
01740 #ifndef GL_NV_texture_env_combine4
01741 #define GL_COMBINE4_NV                    0x8503
01742 #define GL_SOURCE3_RGB_NV                 0x8583
01743 #define GL_SOURCE3_ALPHA_NV               0x858B
01744 #define GL_OPERAND3_RGB_NV                0x8593
01745 #define GL_OPERAND3_ALPHA_NV              0x859B
01746 #endif
01747
01748 #ifndef GL_MESA_resize_buffers
01749 #endif
01750
01751 #ifndef GL_MESA_window_pos
01752 #endif
01753
01754 #ifndef GL_EXT_texture_compression_s3tc
01755 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT   0x83F0
01756 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT  0x83F1
01757 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT  0x83F2
01758 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT  0x83F3
01759 #endif
01760
01761 #ifndef GL_IBM_cull_vertex
01762 #define GL_CULL_VERTEX_IBM                103050
01763 #endif
01764
01765 #ifndef GL_IBM_multimode_draw_arrays
01766 #endif
01767
01768 #ifndef GL_IBM_vertex_array_lists
01769 #define GL_VERTEX_ARRAY_LIST_IBM          103070
01770 #define GL_NORMAL_ARRAY_LIST_IBM          103071
01771 #define GL_COLOR_ARRAY_LIST_IBM           103072
01772 #define GL_INDEX_ARRAY_LIST_IBM           103073
01773 #define GL_TEXTURE_COORD_ARRAY_LIST_IBM   103074
01774 #define GL_EDGE_FLAG_ARRAY_LIST_IBM       103075
01775 #define GL_FOG_COORDINATE_ARRAY_LIST_IBM  103076
01776 #define GL_SECONDARY_COLOR_ARRAY_LIST_IBM 103077
01777 #define GL_VERTEX_ARRAY_LIST_STRIDE_IBM   103080
01778 #define GL_NORMAL_ARRAY_LIST_STRIDE_IBM   103081
01779 #define GL_COLOR_ARRAY_LIST_STRIDE_IBM    103082
01780 #define GL_INDEX_ARRAY_LIST_STRIDE_IBM    103083
01781 #define GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM 103084
01782 #define GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM 103085
01783 #define GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM 103086
01784 #define GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM 103087
01785 #endif
01786
01787 #ifndef GL_SGIX_subsample
01788 #define GL_PACK_SUBSAMPLE_RATE_SGIX       0x85A0
01789 #define GL_UNPACK_SUBSAMPLE_RATE_SGIX     0x85A1
01790 #define GL_PIXEL_SUBSAMPLE_4444_SGIX      0x85A2
01791 #define GL_PIXEL_SUBSAMPLE_2424_SGIX      0x85A3
01792 #define GL_PIXEL_SUBSAMPLE_4242_SGIX      0x85A4
01793 #endif
01794
01795 #ifndef GL_SGIX_ycrcb_subsample
01796 #endif
01797
01798 #ifndef GL_SGIX_ycrcba
01799 #define GL_YCRCB_SGIX                     0x8318
01800 #define GL_YCRCBA_SGIX                    0x8319
01801 #endif
01802
01803 #ifndef GL_SGI_depth_pass_instrument
01804 #define GL_DEPTH_PASS_INSTRUMENT_SGIX     0x8310
01805 #define GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX 0x8311
01806 #define GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX 0x8312
01807 #endif
01808
01809 #ifndef GL_3DFX_texture_compression_FXT1
01810 #define GL_COMPRESSED_RGB_FXT1_3DFX       0x86B0
01811 #define GL_COMPRESSED_RGBA_FXT1_3DFX      0x86B1
01812 #endif
01813
01814 #ifndef GL_3DFX_multisample
01815 #define GL_MULTISAMPLE_3DFX               0x86B2
01816 #define GL_SAMPLE_BUFFERS_3DFX            0x86B3
01817 #define GL_SAMPLES_3DFX                   0x86B4
01818 #define GL_MULTISAMPLE_BIT_3DFX           0x20000000
01819 #endif
01820
01821 #ifndef GL_3DFX_tbuffer
01822 #endif
01823
01824 #ifndef GL_EXT_multisample
01825 #define GL_MULTISAMPLE_EXT                0x809D
01826 #define GL_SAMPLE_ALPHA_TO_MASK_EXT       0x809E
01827 #define GL_SAMPLE_ALPHA_TO_ONE_EXT        0x809F
01828 #define GL_SAMPLE_MASK_EXT                0x80A0
01829 #define GL_1PASS_EXT                      0x80A1
01830 #define GL_2PASS_0_EXT                    0x80A2
01831 #define GL_2PASS_1_EXT                    0x80A3
01832 #define GL_4PASS_0_EXT                    0x80A4
01833 #define GL_4PASS_1_EXT                    0x80A5
01834 #define GL_4PASS_2_EXT                    0x80A6
01835 #define GL_4PASS_3_EXT                    0x80A7
01836 #define GL_SAMPLE_BUFFERS_EXT             0x80A8
01837 #define GL_SAMPLES_EXT                    0x80A9
01838 #define GL_SAMPLE_MASK_VALUE_EXT          0x80AA
01839 #define GL_SAMPLE_MASK_INVERT_EXT         0x80AB
01840 #define GL_SAMPLE_PATTERN_EXT             0x80AC
01841 #define GL_MULTISAMPLE_BIT_EXT            0x20000000
01842 #endif
01843
01844 #ifndef GL_SGIX_vertex_preclip
01845 #define GL_VERTEX_PRECLIP_SGIX            0x83EE
01846 #define GL_VERTEX_PRECLIP_HINT_SGIX       0x83EF
01847 #endif
01848
01849 #ifndef GL_SGIX_convolution_accuracy
01850 #define GL_CONVOLUTION_HINT_SGIX          0x8316
01851 #endif
01852
01853 #ifndef GL_SGIX_resample
01854 #define GL_PACK_RESAMPLE_SGIX             0x842C
01855 #define GL_UNPACK_RESAMPLE_SGIX           0x842D
01856 #define GL_RESAMPLE_REPLICATE_SGIX        0x842E
01857 #define GL_RESAMPLE_ZERO_FILL_SGIX        0x842F
01858 #define GL_RESAMPLE_DECIMATE_SGIX         0x8430
01859 #endif
01860
01861 #ifndef GL_SGIS_point_line_texgen
01862 #define GL_EYE_DISTANCE_TO_POINT_SGIS     0x81F0
01863 #define GL_OBJECT_DISTANCE_TO_POINT_SGIS  0x81F1
01864 #define GL_EYE_DISTANCE_TO_LINE_SGIS      0x81F2
01865 #define GL_OBJECT_DISTANCE_TO_LINE_SGIS   0x81F3
01866 #define GL_EYE_POINT_SGIS                 0x81F4
01867 #define GL_OBJECT_POINT_SGIS              0x81F5
01868 #define GL_EYE_LINE_SGIS                  0x81F6
01869 #define GL_OBJECT_LINE_SGIS               0x81F7
01870 #endif
01871
01872 #ifndef GL_SGIS_texture_color_mask
01873 #define GL_TEXTURE_COLOR_WRITEMASK_SGIS   0x81EF
01874 #endif
01875
01876 #ifndef GL_EXT_texture_env_dot3
01877 #define GL_DOT3_RGB_EXT                   0x8740
01878 #define GL_DOT3_RGBA_EXT                  0x8741
01879 #endif
01880
01881 #ifndef GL_ATI_texture_mirror_once
01882 #define GL_MIRROR_CLAMP_ATI               0x8742
01883 #define GL_MIRROR_CLAMP_TO_EDGE_ATI       0x8743
01884 #endif
01885
01886 #ifndef GL_NV_fence
01887 #define GL_ALL_COMPLETED_NV               0x84F2
01888 #define GL_FENCE_STATUS_NV                0x84F3
01889 #define GL_FENCE_CONDITION_NV             0x84F4
01890 #endif
01891
01892 #ifndef GL_IBM_texture_mirrored_repeat
01893 #define GL_MIRRORED_REPEAT_IBM            0x8370
01894 #endif
01895
01896 #ifndef GL_NV_evaluators
01897 #define GL_EVAL_2D_NV                     0x86C0
01898 #define GL_EVAL_TRIANGULAR_2D_NV          0x86C1
01899 #define GL_MAP_TESSELLATION_NV            0x86C2
01900 #define GL_MAP_ATTRIB_U_ORDER_NV          0x86C3
01901 #define GL_MAP_ATTRIB_V_ORDER_NV          0x86C4
01902 #define GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5
01903 #define GL_EVAL_VERTEX_ATTRIB0_NV         0x86C6
01904 #define GL_EVAL_VERTEX_ATTRIB1_NV         0x86C7
01905 #define GL_EVAL_VERTEX_ATTRIB2_NV         0x86C8
01906 #define GL_EVAL_VERTEX_ATTRIB3_NV         0x86C9
01907 #define GL_EVAL_VERTEX_ATTRIB4_NV         0x86CA
01908 #define GL_EVAL_VERTEX_ATTRIB5_NV         0x86CB
01909 #define GL_EVAL_VERTEX_ATTRIB6_NV         0x86CC
01910 #define GL_EVAL_VERTEX_ATTRIB7_NV         0x86CD
01911 #define GL_EVAL_VERTEX_ATTRIB8_NV         0x86CE
01912 #define GL_EVAL_VERTEX_ATTRIB9_NV         0x86CF
01913 #define GL_EVAL_VERTEX_ATTRIB10_NV        0x86D0
01914 #define GL_EVAL_VERTEX_ATTRIB11_NV        0x86D1
01915 #define GL_EVAL_VERTEX_ATTRIB12_NV        0x86D2
01916 #define GL_EVAL_VERTEX_ATTRIB13_NV        0x86D3
01917 #define GL_EVAL_VERTEX_ATTRIB14_NV        0x86D4
01918 #define GL_EVAL_VERTEX_ATTRIB15_NV        0x86D5
01919 #define GL_MAX_MAP_TESSELLATION_NV        0x86D6
01920 #define GL_MAX_RATIONAL_EVAL_ORDER_NV     0x86D7
01921 #endif
01922
01923 #ifndef GL_NV_packed_depth_stencil
01924 #define GL_DEPTH_STENCIL_NV               0x84F9
01925 #define GL_UNSIGNED_INT_24_8_NV           0x84FA
01926 #endif
01927
01928 #ifndef GL_NV_register_combiners2
01929 #define GL_PER_STAGE_CONSTANTS_NV         0x8535
01930 #endif
01931
01932 #ifndef GL_NV_texture_compression_vtc
01933 #endif
01934
01935 #ifndef GL_NV_texture_rectangle
01936 #define GL_TEXTURE_RECTANGLE_NV           0x84F5
01937 #define GL_TEXTURE_BINDING_RECTANGLE_NV   0x84F6
01938 #define GL_PROXY_TEXTURE_RECTANGLE_NV     0x84F7
01939 #define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV  0x84F8
01940 #endif
01941
01942 #ifndef GL_NV_texture_shader
01943 #define GL_OFFSET_TEXTURE_RECTANGLE_NV    0x864C
01944 #define GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864D
01945 #define GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864E
01946 #define GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86D9
01947 #define GL_UNSIGNED_INT_S8_S8_8_8_NV      0x86DA
01948 #define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV  0x86DB
01949 #define GL_DSDT_MAG_INTENSITY_NV          0x86DC
01950 #define GL_SHADER_CONSISTENT_NV           0x86DD
01951 #define GL_TEXTURE_SHADER_NV              0x86DE
01952 #define GL_SHADER_OPERATION_NV            0x86DF
01953 #define GL_CULL_MODES_NV                  0x86E0
01954 #define GL_OFFSET_TEXTURE_MATRIX_NV       0x86E1
01955 #define GL_OFFSET_TEXTURE_SCALE_NV        0x86E2
01956 #define GL_OFFSET_TEXTURE_BIAS_NV         0x86E3
01957 #define GL_OFFSET_TEXTURE_2D_MATRIX_NV    GL_OFFSET_TEXTURE_MATRIX_NV
01958 #define GL_OFFSET_TEXTURE_2D_SCALE_NV     GL_OFFSET_TEXTURE_SCALE_NV
01959 #define GL_OFFSET_TEXTURE_2D_BIAS_NV      GL_OFFSET_TEXTURE_BIAS_NV
01960 #define GL_PREVIOUS_TEXTURE_INPUT_NV      0x86E4
01961 #define GL_CONST_EYE_NV                   0x86E5
01962 #define GL_PASS_THROUGH_NV                0x86E6
01963 #define GL_CULL_FRAGMENT_NV               0x86E7
01964 #define GL_OFFSET_TEXTURE_2D_NV           0x86E8
01965 #define GL_DEPENDENT_AR_TEXTURE_2D_NV     0x86E9
01966 #define GL_DEPENDENT_GB_TEXTURE_2D_NV     0x86EA
01967 #define GL_DOT_PRODUCT_NV                 0x86EC
01968 #define GL_DOT_PRODUCT_DEPTH_REPLACE_NV   0x86ED
01969 #define GL_DOT_PRODUCT_TEXTURE_2D_NV      0x86EE
01970 #define GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86F0
01971 #define GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86F1
01972 #define GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86F2
01973 #define GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86F3
01974 #define GL_HILO_NV                        0x86F4
01975 #define GL_DSDT_NV                        0x86F5
01976 #define GL_DSDT_MAG_NV                    0x86F6
01977 #define GL_DSDT_MAG_VIB_NV                0x86F7
01978 #define GL_HILO16_NV                      0x86F8
01979 #define GL_SIGNED_HILO_NV                 0x86F9
01980 #define GL_SIGNED_HILO16_NV               0x86FA
01981 #define GL_SIGNED_RGBA_NV                 0x86FB
01982 #define GL_SIGNED_RGBA8_NV                0x86FC
01983 #define GL_SIGNED_RGB_NV                  0x86FE
01984 #define GL_SIGNED_RGB8_NV                 0x86FF
01985 #define GL_SIGNED_LUMINANCE_NV            0x8701
01986 #define GL_SIGNED_LUMINANCE8_NV           0x8702
01987 #define GL_SIGNED_LUMINANCE_ALPHA_NV      0x8703
01988 #define GL_SIGNED_LUMINANCE8_ALPHA8_NV    0x8704
01989 #define GL_SIGNED_ALPHA_NV                0x8705
01990 #define GL_SIGNED_ALPHA8_NV               0x8706
01991 #define GL_SIGNED_INTENSITY_NV            0x8707
01992 #define GL_SIGNED_INTENSITY8_NV           0x8708
01993 #define GL_DSDT8_NV                       0x8709
01994 #define GL_DSDT8_MAG8_NV                  0x870A
01995 #define GL_DSDT8_MAG8_INTENSITY8_NV       0x870B
01996 #define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV   0x870C
01997 #define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D
01998 #define GL_HI_SCALE_NV                    0x870E
01999 #define GL_LO_SCALE_NV                    0x870F
02000 #define GL_DS_SCALE_NV                    0x8710
02001 #define GL_DT_SCALE_NV                    0x8711
02002 #define GL_MAGNITUDE_SCALE_NV             0x8712
02003 #define GL_VIBRANCE_SCALE_NV              0x8713
02004 #define GL_HI_BIAS_NV                     0x8714
02005 #define GL_LO_BIAS_NV                     0x8715
02006 #define GL_DS_BIAS_NV                     0x8716
02007 #define GL_DT_BIAS_NV                     0x8717
02008 #define GL_MAGNITUDE_BIAS_NV              0x8718
02009 #define GL_VIBRANCE_BIAS_NV               0x8719
02010 #define GL_TEXTURE_BORDER_VALUES_NV       0x871A
02011 #define GL_TEXTURE_HI_SIZE_NV             0x871B
02012 #define GL_TEXTURE_LO_SIZE_NV             0x871C
02013 #define GL_TEXTURE_DS_SIZE_NV             0x871D
02014 #define GL_TEXTURE_DT_SIZE_NV             0x871E
02015 #define GL_TEXTURE_MAG_SIZE_NV            0x871F
02016 #endif
02017
02018 #ifndef GL_NV_texture_shader2
02019 #define GL_DOT_PRODUCT_TEXTURE_3D_NV      0x86EF
02020 #endif
02021
02022 #ifndef GL_NV_vertex_array_range2
02023 #define GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533
02024 #endif
02025
02026 #ifndef GL_NV_vertex_program
02027 #define GL_VERTEX_PROGRAM_NV              0x8620
02028 #define GL_VERTEX_STATE_PROGRAM_NV        0x8621
02029 #define GL_ATTRIB_ARRAY_SIZE_NV           0x8623
02030 #define GL_ATTRIB_ARRAY_STRIDE_NV         0x8624
02031 #define GL_ATTRIB_ARRAY_TYPE_NV           0x8625
02032 #define GL_CURRENT_ATTRIB_NV              0x8626
02033 #define GL_PROGRAM_LENGTH_NV              0x8627
02034 #define GL_PROGRAM_STRING_NV              0x8628
02035 #define GL_MODELVIEW_PROJECTION_NV        0x8629
02036 #define GL_IDENTITY_NV                    0x862A
02037 #define GL_INVERSE_NV                     0x862B
02038 #define GL_TRANSPOSE_NV                   0x862C
02039 #define GL_INVERSE_TRANSPOSE_NV           0x862D
02040 #define GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E
02041 #define GL_MAX_TRACK_MATRICES_NV          0x862F
02042 #define GL_MATRIX0_NV                     0x8630
02043 #define GL_MATRIX1_NV                     0x8631
02044 #define GL_MATRIX2_NV                     0x8632
02045 #define GL_MATRIX3_NV                     0x8633
02046 #define GL_MATRIX4_NV                     0x8634
02047 #define GL_MATRIX5_NV                     0x8635
02048 #define GL_MATRIX6_NV                     0x8636
02049 #define GL_MATRIX7_NV                     0x8637
02050 #define GL_CURRENT_MATRIX_STACK_DEPTH_NV  0x8640
02051 #define GL_CURRENT_MATRIX_NV              0x8641
02052 #define GL_VERTEX_PROGRAM_POINT_SIZE_NV   0x8642
02053 #define GL_VERTEX_PROGRAM_TWO_SIDE_NV     0x8643
02054 #define GL_PROGRAM_PARAMETER_NV           0x8644
02055 #define GL_ATTRIB_ARRAY_POINTER_NV        0x8645
02056 #define GL_PROGRAM_TARGET_NV              0x8646
02057 #define GL_PROGRAM_RESIDENT_NV            0x8647
02058 #define GL_TRACK_MATRIX_NV                0x8648
02059 #define GL_TRACK_MATRIX_TRANSFORM_NV      0x8649
02060 #define GL_VERTEX_PROGRAM_BINDING_NV      0x864A
02061 #define GL_PROGRAM_ERROR_POSITION_NV      0x864B
02062 #define GL_VERTEX_ATTRIB_ARRAY0_NV        0x8650
02063 #define GL_VERTEX_ATTRIB_ARRAY1_NV        0x8651
02064 #define GL_VERTEX_ATTRIB_ARRAY2_NV        0x8652
02065 #define GL_VERTEX_ATTRIB_ARRAY3_NV        0x8653
02066 #define GL_VERTEX_ATTRIB_ARRAY4_NV        0x8654
02067 #define GL_VERTEX_ATTRIB_ARRAY5_NV        0x8655
02068 #define GL_VERTEX_ATTRIB_ARRAY6_NV        0x8656
02069 #define GL_VERTEX_ATTRIB_ARRAY7_NV        0x8657
02070 #define GL_VERTEX_ATTRIB_ARRAY8_NV        0x8658
02071 #define GL_VERTEX_ATTRIB_ARRAY9_NV        0x8659
02072 #define GL_VERTEX_ATTRIB_ARRAY10_NV       0x865A
02073 #define GL_VERTEX_ATTRIB_ARRAY11_NV       0x865B
02074 #define GL_VERTEX_ATTRIB_ARRAY12_NV       0x865C
02075 #define GL_VERTEX_ATTRIB_ARRAY13_NV       0x865D
02076 #define GL_VERTEX_ATTRIB_ARRAY14_NV       0x865E
02077 #define GL_VERTEX_ATTRIB_ARRAY15_NV       0x865F
02078 #define GL_MAP1_VERTEX_ATTRIB0_4_NV       0x8660
02079 #define GL_MAP1_VERTEX_ATTRIB1_4_NV       0x8661
02080 #define GL_MAP1_VERTEX_ATTRIB2_4_NV       0x8662
02081 #define GL_MAP1_VERTEX_ATTRIB3_4_NV       0x8663
02082 #define GL_MAP1_VERTEX_ATTRIB4_4_NV       0x8664
02083 #define GL_MAP1_VERTEX_ATTRIB5_4_NV       0x8665
02084 #define GL_MAP1_VERTEX_ATTRIB6_4_NV       0x8666
02085 #define GL_MAP1_VERTEX_ATTRIB7_4_NV       0x8667
02086 #define GL_MAP1_VERTEX_ATTRIB8_4_NV       0x8668
02087 #define GL_MAP1_VERTEX_ATTRIB9_4_NV       0x8669
02088 #define GL_MAP1_VERTEX_ATTRIB10_4_NV      0x866A
02089 #define GL_MAP1_VERTEX_ATTRIB11_4_NV      0x866B
02090 #define GL_MAP1_VERTEX_ATTRIB12_4_NV      0x866C
02091 #define GL_MAP1_VERTEX_ATTRIB13_4_NV      0x866D
02092 #define GL_MAP1_VERTEX_ATTRIB14_4_NV      0x866E
02093 #define GL_MAP1_VERTEX_ATTRIB15_4_NV      0x866F
02094 #define GL_MAP2_VERTEX_ATTRIB0_4_NV       0x8670
02095 #define GL_MAP2_VERTEX_ATTRIB1_4_NV       0x8671
02096 #define GL_MAP2_VERTEX_ATTRIB2_4_NV       0x8672
02097 #define GL_MAP2_VERTEX_ATTRIB3_4_NV       0x8673
02098 #define GL_MAP2_VERTEX_ATTRIB4_4_NV       0x8674
02099 #define GL_MAP2_VERTEX_ATTRIB5_4_NV       0x8675
02100 #define GL_MAP2_VERTEX_ATTRIB6_4_NV       0x8676
02101 #define GL_MAP2_VERTEX_ATTRIB7_4_NV       0x8677
02102 #define GL_MAP2_VERTEX_ATTRIB8_4_NV       0x8678
02103 #define GL_MAP2_VERTEX_ATTRIB9_4_NV       0x8679
02104 #define GL_MAP2_VERTEX_ATTRIB10_4_NV      0x867A
02105 #define GL_MAP2_VERTEX_ATTRIB11_4_NV      0x867B
02106 #define GL_MAP2_VERTEX_ATTRIB12_4_NV      0x867C
02107 #define GL_MAP2_VERTEX_ATTRIB13_4_NV      0x867D
02108 #define GL_MAP2_VERTEX_ATTRIB14_4_NV      0x867E
02109 #define GL_MAP2_VERTEX_ATTRIB15_4_NV      0x867F
02110 #endif
02111
02112 #ifndef GL_SGIX_texture_coordinate_clamp
02113 #define GL_TEXTURE_MAX_CLAMP_S_SGIX       0x8369
02114 #define GL_TEXTURE_MAX_CLAMP_T_SGIX       0x836A
02115 #define GL_TEXTURE_MAX_CLAMP_R_SGIX       0x836B
02116 #endif
02117
02118 #ifndef GL_SGIX_scalebias_hint
02119 #define GL_SCALEBIAS_HINT_SGIX            0x8322
02120 #endif
02121
02122 #ifndef GL_OML_interlace
02123 #define GL_INTERLACE_OML                  0x8980
02124 #define GL_INTERLACE_READ_OML             0x8981
02125 #endif
02126
02127 #ifndef GL_OML_subsample
02128 #define GL_FORMAT_SUBSAMPLE_24_24_OML     0x8982
02129 #define GL_FORMAT_SUBSAMPLE_244_244_OML   0x8983
02130 #endif
02131
02132 #ifndef GL_OML_resample
02133 #define GL_PACK_RESAMPLE_OML              0x8984
02134 #define GL_UNPACK_RESAMPLE_OML            0x8985
02135 #define GL_RESAMPLE_REPLICATE_OML         0x8986
02136 #define GL_RESAMPLE_ZERO_FILL_OML         0x8987
02137 #define GL_RESAMPLE_AVERAGE_OML           0x8988
02138 #define GL_RESAMPLE_DECIMATE_OML          0x8989
02139 #endif
02140
02141 #ifndef GL_NV_copy_depth_to_color
02142 #define GL_DEPTH_STENCIL_TO_RGBA_NV       0x886E
02143 #define GL_DEPTH_STENCIL_TO_BGRA_NV       0x886F
02144 #endif
02145
02146 #ifndef GL_ATI_envmap_bumpmap
02147 #define GL_BUMP_ROT_MATRIX_ATI            0x8775
02148 #define GL_BUMP_ROT_MATRIX_SIZE_ATI       0x8776
02149 #define GL_BUMP_NUM_TEX_UNITS_ATI         0x8777
02150 #define GL_BUMP_TEX_UNITS_ATI             0x8778
02151 #define GL_DUDV_ATI                       0x8779
02152 #define GL_DU8DV8_ATI                     0x877A
02153 #define GL_BUMP_ENVMAP_ATI                0x877B
02154 #define GL_BUMP_TARGET_ATI                0x877C
02155 #endif
02156
02157 #ifndef GL_ATI_fragment_shader
02158 #define GL_FRAGMENT_SHADER_ATI            0x8920
02159 #define GL_REG_0_ATI                      0x8921
02160 #define GL_REG_1_ATI                      0x8922
02161 #define GL_REG_2_ATI                      0x8923
02162 #define GL_REG_3_ATI                      0x8924
02163 #define GL_REG_4_ATI                      0x8925
02164 #define GL_REG_5_ATI                      0x8926
02165 #define GL_REG_6_ATI                      0x8927
02166 #define GL_REG_7_ATI                      0x8928
02167 #define GL_REG_8_ATI                      0x8929
02168 #define GL_REG_9_ATI                      0x892A
02169 #define GL_REG_10_ATI                     0x892B
02170 #define GL_REG_11_ATI                     0x892C
02171 #define GL_REG_12_ATI                     0x892D
02172 #define GL_REG_13_ATI                     0x892E
02173 #define GL_REG_14_ATI                     0x892F
02174 #define GL_REG_15_ATI                     0x8930
02175 #define GL_REG_16_ATI                     0x8931
02176 #define GL_REG_17_ATI                     0x8932
02177 #define GL_REG_18_ATI                     0x8933
02178 #define GL_REG_19_ATI                     0x8934
02179 #define GL_REG_20_ATI                     0x8935
02180 #define GL_REG_21_ATI                     0x8936
02181 #define GL_REG_22_ATI                     0x8937
02182 #define GL_REG_23_ATI                     0x8938
02183 #define GL_REG_24_ATI                     0x8939
02184 #define GL_REG_25_ATI                     0x893A
02185 #define GL_REG_26_ATI                     0x893B
02186 #define GL_REG_27_ATI                     0x893C
02187 #define GL_REG_28_ATI                     0x893D
02188 #define GL_REG_29_ATI                     0x893E
02189 #define GL_REG_30_ATI                     0x893F
02190 #define GL_REG_31_ATI                     0x8940
02191 #define GL_CON_0_ATI                      0x8941
02192 #define GL_CON_1_ATI                      0x8942
02193 #define GL_CON_2_ATI                      0x8943
02194 #define GL_CON_3_ATI                      0x8944
02195 #define GL_CON_4_ATI                      0x8945
02196 #define GL_CON_5_ATI                      0x8946
02197 #define GL_CON_6_ATI                      0x8947
02198 #define GL_CON_7_ATI                      0x8948
02199 #define GL_CON_8_ATI                      0x8949
02200 #define GL_CON_9_ATI                      0x894A
02201 #define GL_CON_10_ATI                     0x894B
02202 #define GL_CON_11_ATI                     0x894C
02203 #define GL_CON_12_ATI                     0x894D
02204 #define GL_CON_13_ATI                     0x894E
02205 #define GL_CON_14_ATI                     0x894F
02206 #define GL_CON_15_ATI                     0x8950
02207 #define GL_CON_16_ATI                     0x8951
02208 #define GL_CON_17_ATI                     0x8952
02209 #define GL_CON_18_ATI                     0x8953
02210 #define GL_CON_19_ATI                     0x8954
02211 #define GL_CON_20_ATI                     0x8955
02212 #define GL_CON_21_ATI                     0x8956
02213 #define GL_CON_22_ATI                     0x8957
02214 #define GL_CON_23_ATI                     0x8958
02215 #define GL_CON_24_ATI                     0x8959
02216 #define GL_CON_25_ATI                     0x895A
02217 #define GL_CON_26_ATI                     0x895B
02218 #define GL_CON_27_ATI                     0x895C
02219 #define GL_CON_28_ATI                     0x895D
02220 #define GL_CON_29_ATI                     0x895E
02221 #define GL_CON_30_ATI                     0x895F
02222 #define GL_CON_31_ATI                     0x8960
02223 #define GL_MOV_ATI                        0x8961
02224 #define GL_ADD_ATI                        0x8963
02225 #define GL_MUL_ATI                        0x8964
02226 #define GL_SUB_ATI                        0x8965
02227 #define GL_DOT3_ATI                       0x8966
02228 #define GL_DOT4_ATI                       0x8967
02229 #define GL_MAD_ATI                        0x8968
02230 #define GL_LERP_ATI                       0x8969
02231 #define GL_CND_ATI                        0x896A
02232 #define GL_CND0_ATI                       0x896B
02233 #define GL_DOT2_ADD_ATI                   0x896C
02234 #define GL_SECONDARY_INTERPOLATOR_ATI     0x896D
02235 #define GL_NUM_FRAGMENT_REGISTERS_ATI     0x896E
02236 #define GL_NUM_FRAGMENT_CONSTANTS_ATI     0x896F
02237 #define GL_NUM_PASSES_ATI                 0x8970
02238 #define GL_NUM_INSTRUCTIONS_PER_PASS_ATI  0x8971
02239 #define GL_NUM_INSTRUCTIONS_TOTAL_ATI     0x8972
02240 #define GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973
02241 #define GL_NUM_LOOPBACK_COMPONENTS_ATI    0x8974
02242 #define GL_COLOR_ALPHA_PAIRING_ATI        0x8975
02243 #define GL_SWIZZLE_STR_ATI                0x8976
02244 #define GL_SWIZZLE_STQ_ATI                0x8977
02245 #define GL_SWIZZLE_STR_DR_ATI             0x8978
02246 #define GL_SWIZZLE_STQ_DQ_ATI             0x8979
02247 #define GL_SWIZZLE_STRQ_ATI               0x897A
02248 #define GL_SWIZZLE_STRQ_DQ_ATI            0x897B
02249 #define GL_RED_BIT_ATI                    0x00000001
02250 #define GL_GREEN_BIT_ATI                  0x00000002
02251 #define GL_BLUE_BIT_ATI                   0x00000004
02252 #define GL_2X_BIT_ATI                     0x00000001
02253 #define GL_4X_BIT_ATI                     0x00000002
02254 #define GL_8X_BIT_ATI                     0x00000004
02255 #define GL_HALF_BIT_ATI                   0x00000008
02256 #define GL_QUARTER_BIT_ATI                0x00000010
02257 #define GL_EIGHTH_BIT_ATI                 0x00000020
02258 #define GL_SATURATE_BIT_ATI               0x00000040
02259 #define GL_COMP_BIT_ATI                   0x00000002
02260 #define GL_NEGATE_BIT_ATI                 0x00000004
02261 #define GL_BIAS_BIT_ATI                   0x00000008
02262 #endif
02263
02264 #ifndef GL_ATI_pn_triangles
02265 #define GL_PN_TRIANGLES_ATI               0x87F0
02266 #define GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1
02267 #define GL_PN_TRIANGLES_POINT_MODE_ATI    0x87F2
02268 #define GL_PN_TRIANGLES_NORMAL_MODE_ATI   0x87F3
02269 #define GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4
02270 #define GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5
02271 #define GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6
02272 #define GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7
02273 #define GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8
02274 #endif
02275
02276 #ifndef GL_ATI_vertex_array_object
02277 #define GL_STATIC_ATI                     0x8760
02278 #define GL_DYNAMIC_ATI                    0x8761
02279 #define GL_PRESERVE_ATI                   0x8762
02280 #define GL_DISCARD_ATI                    0x8763
02281 #define GL_OBJECT_BUFFER_SIZE_ATI         0x8764
02282 #define GL_OBJECT_BUFFER_USAGE_ATI        0x8765
02283 #define GL_ARRAY_OBJECT_BUFFER_ATI        0x8766
02284 #define GL_ARRAY_OBJECT_OFFSET_ATI        0x8767
02285 #endif
02286
02287 #ifndef GL_EXT_vertex_shader
02288 #define GL_VERTEX_SHADER_EXT              0x8780
02289 #define GL_VERTEX_SHADER_BINDING_EXT      0x8781
02290 #define GL_OP_INDEX_EXT                   0x8782
02291 #define GL_OP_NEGATE_EXT                  0x8783
02292 #define GL_OP_DOT3_EXT                    0x8784
02293 #define GL_OP_DOT4_EXT                    0x8785
02294 #define GL_OP_MUL_EXT                     0x8786
02295 #define GL_OP_ADD_EXT                     0x8787
02296 #define GL_OP_MADD_EXT                    0x8788
02297 #define GL_OP_FRAC_EXT                    0x8789
02298 #define GL_OP_MAX_EXT                     0x878A
02299 #define GL_OP_MIN_EXT                     0x878B
02300 #define GL_OP_SET_GE_EXT                  0x878C
02301 #define GL_OP_SET_LT_EXT                  0x878D
02302 #define GL_OP_CLAMP_EXT                   0x878E
02303 #define GL_OP_FLOOR_EXT                   0x878F
02304 #define GL_OP_ROUND_EXT                   0x8790
02305 #define GL_OP_EXP_BASE_2_EXT              0x8791
02306 #define GL_OP_LOG_BASE_2_EXT              0x8792
02307 #define GL_OP_POWER_EXT                   0x8793
02308 #define GL_OP_RECIP_EXT                   0x8794
02309 #define GL_OP_RECIP_SQRT_EXT              0x8795
02310 #define GL_OP_SUB_EXT                     0x8796
02311 #define GL_OP_CROSS_PRODUCT_EXT           0x8797
02312 #define GL_OP_MULTIPLY_MATRIX_EXT         0x8798
02313 #define GL_OP_MOV_EXT                     0x8799
02314 #define GL_OUTPUT_VERTEX_EXT              0x879A
02315 #define GL_OUTPUT_COLOR0_EXT              0x879B
02316 #define GL_OUTPUT_COLOR1_EXT              0x879C
02317 #define GL_OUTPUT_TEXTURE_COORD0_EXT      0x879D
02318 #define GL_OUTPUT_TEXTURE_COORD1_EXT      0x879E
02319 #define GL_OUTPUT_TEXTURE_COORD2_EXT      0x879F
02320 #define GL_OUTPUT_TEXTURE_COORD3_EXT      0x87A0
02321 #define GL_OUTPUT_TEXTURE_COORD4_EXT      0x87A1
02322 #define GL_OUTPUT_TEXTURE_COORD5_EXT      0x87A2
02323 #define GL_OUTPUT_TEXTURE_COORD6_EXT      0x87A3
02324 #define GL_OUTPUT_TEXTURE_COORD7_EXT      0x87A4
02325 #define GL_OUTPUT_TEXTURE_COORD8_EXT      0x87A5
02326 #define GL_OUTPUT_TEXTURE_COORD9_EXT      0x87A6
02327 #define GL_OUTPUT_TEXTURE_COORD10_EXT     0x87A7
02328 #define GL_OUTPUT_TEXTURE_COORD11_EXT     0x87A8
02329 #define GL_OUTPUT_TEXTURE_COORD12_EXT     0x87A9
02330 #define GL_OUTPUT_TEXTURE_COORD13_EXT     0x87AA
02331 #define GL_OUTPUT_TEXTURE_COORD14_EXT     0x87AB
02332 #define GL_OUTPUT_TEXTURE_COORD15_EXT     0x87AC
02333 #define GL_OUTPUT_TEXTURE_COORD16_EXT     0x87AD
02334 #define GL_OUTPUT_TEXTURE_COORD17_EXT     0x87AE
02335 #define GL_OUTPUT_TEXTURE_COORD18_EXT     0x87AF
02336 #define GL_OUTPUT_TEXTURE_COORD19_EXT     0x87B0
02337 #define GL_OUTPUT_TEXTURE_COORD20_EXT     0x87B1
02338 #define GL_OUTPUT_TEXTURE_COORD21_EXT     0x87B2
02339 #define GL_OUTPUT_TEXTURE_COORD22_EXT     0x87B3
02340 #define GL_OUTPUT_TEXTURE_COORD23_EXT     0x87B4
02341 #define GL_OUTPUT_TEXTURE_COORD24_EXT     0x87B5
02342 #define GL_OUTPUT_TEXTURE_COORD25_EXT     0x87B6
02343 #define GL_OUTPUT_TEXTURE_COORD26_EXT     0x87B7
02344 #define GL_OUTPUT_TEXTURE_COORD27_EXT     0x87B8
02345 #define GL_OUTPUT_TEXTURE_COORD28_EXT     0x87B9
02346 #define GL_OUTPUT_TEXTURE_COORD29_EXT     0x87BA
02347 #define GL_OUTPUT_TEXTURE_COORD30_EXT     0x87BB
02348 #define GL_OUTPUT_TEXTURE_COORD31_EXT     0x87BC
02349 #define GL_OUTPUT_FOG_EXT                 0x87BD
02350 #define GL_SCALAR_EXT                     0x87BE
02351 #define GL_VECTOR_EXT                     0x87BF
02352 #define GL_MATRIX_EXT                     0x87C0
02353 #define GL_VARIANT_EXT                    0x87C1
02354 #define GL_INVARIANT_EXT                  0x87C2
02355 #define GL_LOCAL_CONSTANT_EXT             0x87C3
02356 #define GL_LOCAL_EXT                      0x87C4
02357 #define GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5
02358 #define GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6
02359 #define GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7
02360 #define GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8
02361 #define GL_MAX_VERTEX_SHADER_LOCALS_EXT   0x87C9
02362 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA
02363 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB
02364 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CC
02365 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CD
02366 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE
02367 #define GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF
02368 #define GL_VERTEX_SHADER_VARIANTS_EXT     0x87D0
02369 #define GL_VERTEX_SHADER_INVARIANTS_EXT   0x87D1
02370 #define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2
02371 #define GL_VERTEX_SHADER_LOCALS_EXT       0x87D3
02372 #define GL_VERTEX_SHADER_OPTIMIZED_EXT    0x87D4
02373 #define GL_X_EXT                          0x87D5
02374 #define GL_Y_EXT                          0x87D6
02375 #define GL_Z_EXT                          0x87D7
02376 #define GL_W_EXT                          0x87D8
02377 #define GL_NEGATIVE_X_EXT                 0x87D9
02378 #define GL_NEGATIVE_Y_EXT                 0x87DA
02379 #define GL_NEGATIVE_Z_EXT                 0x87DB
02380 #define GL_NEGATIVE_W_EXT                 0x87DC
02381 #define GL_ZERO_EXT                       0x87DD
02382 #define GL_ONE_EXT                        0x87DE
02383 #define GL_NEGATIVE_ONE_EXT               0x87DF
02384 #define GL_NORMALIZED_RANGE_EXT           0x87E0
02385 #define GL_FULL_RANGE_EXT                 0x87E1
02386 #define GL_CURRENT_VERTEX_EXT             0x87E2
02387 #define GL_MVP_MATRIX_EXT                 0x87E3
02388 #define GL_VARIANT_VALUE_EXT              0x87E4
02389 #define GL_VARIANT_DATATYPE_EXT           0x87E5
02390 #define GL_VARIANT_ARRAY_STRIDE_EXT       0x87E6
02391 #define GL_VARIANT_ARRAY_TYPE_EXT         0x87E7
02392 #define GL_VARIANT_ARRAY_EXT              0x87E8
02393 #define GL_VARIANT_ARRAY_POINTER_EXT      0x87E9
02394 #define GL_INVARIANT_VALUE_EXT            0x87EA
02395 #define GL_INVARIANT_DATATYPE_EXT         0x87EB
02396 #define GL_LOCAL_CONSTANT_VALUE_EXT       0x87EC
02397 #define GL_LOCAL_CONSTANT_DATATYPE_EXT    0x87ED
02398 #endif
02399
02400 #ifndef GL_ATI_vertex_streams
02401 #define GL_MAX_VERTEX_STREAMS_ATI         0x876B
02402 #define GL_VERTEX_STREAM0_ATI             0x876C
02403 #define GL_VERTEX_STREAM1_ATI             0x876D
02404 #define GL_VERTEX_STREAM2_ATI             0x876E
02405 #define GL_VERTEX_STREAM3_ATI             0x876F
02406 #define GL_VERTEX_STREAM4_ATI             0x8770
02407 #define GL_VERTEX_STREAM5_ATI             0x8771
02408 #define GL_VERTEX_STREAM6_ATI             0x8772
02409 #define GL_VERTEX_STREAM7_ATI             0x8773
02410 #define GL_VERTEX_SOURCE_ATI              0x8774
02411 #endif
02412
02413 #ifndef GL_ATI_element_array
02414 #define GL_ELEMENT_ARRAY_ATI              0x8768
02415 #define GL_ELEMENT_ARRAY_TYPE_ATI         0x8769
02416 #define GL_ELEMENT_ARRAY_POINTER_ATI      0x876A
02417 #endif
02418
02419 #ifndef GL_SUN_mesh_array
02420 #define GL_QUAD_MESH_SUN                  0x8614
02421 #define GL_TRIANGLE_MESH_SUN              0x8615
02422 #endif
02423
02424 #ifndef GL_SUN_slice_accum
02425 #define GL_SLICE_ACCUM_SUN                0x85CC
02426 #endif
02427
02428 #ifndef GL_NV_multisample_filter_hint
02429 #define GL_MULTISAMPLE_FILTER_HINT_NV     0x8534
02430 #endif
02431
02432 #ifndef GL_NV_depth_clamp
02433 #define GL_DEPTH_CLAMP_NV                 0x864F
02434 #endif
02435
02436 #ifndef GL_NV_occlusion_query
02437 #define GL_PIXEL_COUNTER_BITS_NV          0x8864
02438 #define GL_CURRENT_OCCLUSION_QUERY_ID_NV  0x8865
02439 #define GL_PIXEL_COUNT_NV                 0x8866
02440 #define GL_PIXEL_COUNT_AVAILABLE_NV       0x8867
02441 #endif
02442
02443 #ifndef GL_NV_point_sprite
02444 #define GL_POINT_SPRITE_NV                0x8861
02445 #define GL_COORD_REPLACE_NV               0x8862
02446 #define GL_POINT_SPRITE_R_MODE_NV         0x8863
02447 #endif
02448
02449 #ifndef GL_NV_texture_shader3
02450 #define GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV 0x8850
02451 #define GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV 0x8851
02452 #define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8852
02453 #define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV 0x8853
02454 #define GL_OFFSET_HILO_TEXTURE_2D_NV      0x8854
02455 #define GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV 0x8855
02456 #define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV 0x8856
02457 #define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8857
02458 #define GL_DEPENDENT_HILO_TEXTURE_2D_NV   0x8858
02459 #define GL_DEPENDENT_RGB_TEXTURE_3D_NV    0x8859
02460 #define GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV 0x885A
02461 #define GL_DOT_PRODUCT_PASS_THROUGH_NV    0x885B
02462 #define GL_DOT_PRODUCT_TEXTURE_1D_NV      0x885C
02463 #define GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV 0x885D
02464 #define GL_HILO8_NV                       0x885E
02465 #define GL_SIGNED_HILO8_NV                0x885F
02466 #define GL_FORCE_BLUE_TO_ONE_NV           0x8860
02467 #endif
02468
02469 #ifndef GL_NV_vertex_program1_1
02470 #endif
02471
02472 #ifndef GL_EXT_shadow_funcs
02473 #endif
02474
02475 #ifndef GL_EXT_stencil_two_side
02476 #define GL_STENCIL_TEST_TWO_SIDE_EXT      0x8910
02477 #define GL_ACTIVE_STENCIL_FACE_EXT        0x8911
02478 #endif
02479
02480 #ifndef GL_ATI_text_fragment_shader
02481 #define GL_TEXT_FRAGMENT_SHADER_ATI       0x8200
02482 #endif
02483
02484 #ifndef GL_APPLE_client_storage
02485 #define GL_UNPACK_CLIENT_STORAGE_APPLE    0x85B2
02486 #endif
02487
02488 #ifndef GL_APPLE_element_array
02489 #define GL_ELEMENT_ARRAY_APPLE            0x8768
02490 #define GL_ELEMENT_ARRAY_TYPE_APPLE       0x8769
02491 #define GL_ELEMENT_ARRAY_POINTER_APPLE    0x876A
02492 #endif
02493
02494 #ifndef GL_APPLE_fence
02495 #define GL_DRAW_PIXELS_APPLE              0x8A0A
02496 #define GL_FENCE_APPLE                    0x8A0B
02497 #endif
02498
02499 #ifndef GL_APPLE_vertex_array_object
02500 #define GL_VERTEX_ARRAY_BINDING_APPLE     0x85B5
02501 #endif
02502
02503 #ifndef GL_APPLE_vertex_array_range
02504 #define GL_VERTEX_ARRAY_RANGE_APPLE       0x851D
02505 #define GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE 0x851E
02506 #define GL_VERTEX_ARRAY_STORAGE_HINT_APPLE 0x851F
02507 #define GL_VERTEX_ARRAY_RANGE_POINTER_APPLE 0x8521
02508 #define GL_STORAGE_CACHED_APPLE           0x85BE
02509 #define GL_STORAGE_SHARED_APPLE           0x85BF
02510 #endif
02511
02512 #ifndef GL_APPLE_ycbcr_422
02513 #define GL_YCBCR_422_APPLE                0x85B9
02514 #define GL_UNSIGNED_SHORT_8_8_APPLE       0x85BA
02515 #define GL_UNSIGNED_SHORT_8_8_REV_APPLE   0x85BB
02516 #endif
02517
02518 #ifndef GL_S3_s3tc
02519 #define GL_RGB_S3TC                       0x83A0
02520 #define GL_RGB4_S3TC                      0x83A1
02521 #define GL_RGBA_S3TC                      0x83A2
02522 #define GL_RGBA4_S3TC                     0x83A3
02523 #endif
02524
02525 #ifndef GL_ATI_draw_buffers
02526 #define GL_MAX_DRAW_BUFFERS_ATI           0x8824
02527 #define GL_DRAW_BUFFER0_ATI               0x8825
02528 #define GL_DRAW_BUFFER1_ATI               0x8826
02529 #define GL_DRAW_BUFFER2_ATI               0x8827
02530 #define GL_DRAW_BUFFER3_ATI               0x8828
02531 #define GL_DRAW_BUFFER4_ATI               0x8829
02532 #define GL_DRAW_BUFFER5_ATI               0x882A
02533 #define GL_DRAW_BUFFER6_ATI               0x882B
02534 #define GL_DRAW_BUFFER7_ATI               0x882C
02535 #define GL_DRAW_BUFFER8_ATI               0x882D
02536 #define GL_DRAW_BUFFER9_ATI               0x882E
02537 #define GL_DRAW_BUFFER10_ATI              0x882F
02538 #define GL_DRAW_BUFFER11_ATI              0x8830
02539 #define GL_DRAW_BUFFER12_ATI              0x8831
02540 #define GL_DRAW_BUFFER13_ATI              0x8832
02541 #define GL_DRAW_BUFFER14_ATI              0x8833
02542 #define GL_DRAW_BUFFER15_ATI              0x8834
02543 #endif
02544
02545 #ifndef GL_ATI_texture_env_combine3
02546 #define GL_MODULATE_ADD_ATI               0x8744
02547 #define GL_MODULATE_SIGNED_ADD_ATI        0x8745
02548 #define GL_MODULATE_SUBTRACT_ATI          0x8746
02549 #endif
02550
02551 #ifndef GL_ATI_texture_float
02552 #define GL_RGBA_FLOAT32_ATI               0x8814
02553 #define GL_RGB_FLOAT32_ATI                0x8815
02554 #define GL_ALPHA_FLOAT32_ATI              0x8816
02555 #define GL_INTENSITY_FLOAT32_ATI          0x8817
02556 #define GL_LUMINANCE_FLOAT32_ATI          0x8818
02557 #define GL_LUMINANCE_ALPHA_FLOAT32_ATI    0x8819
02558 #define GL_RGBA_FLOAT16_ATI               0x881A
02559 #define GL_RGB_FLOAT16_ATI                0x881B
02560 #define GL_ALPHA_FLOAT16_ATI              0x881C
02561 #define GL_INTENSITY_FLOAT16_ATI          0x881D
02562 #define GL_LUMINANCE_FLOAT16_ATI          0x881E
02563 #define GL_LUMINANCE_ALPHA_FLOAT16_ATI    0x881F
02564 #endif
02565
02566 #ifndef GL_NV_float_buffer
02567 #define GL_FLOAT_R_NV                     0x8880
02568 #define GL_FLOAT_RG_NV                    0x8881
02569 #define GL_FLOAT_RGB_NV                   0x8882
02570 #define GL_FLOAT_RGBA_NV                  0x8883
02571 #define GL_FLOAT_R16_NV                   0x8884
02572 #define GL_FLOAT_R32_NV                   0x8885
02573 #define GL_FLOAT_RG16_NV                  0x8886
02574 #define GL_FLOAT_RG32_NV                  0x8887
02575 #define GL_FLOAT_RGB16_NV                 0x8888
02576 #define GL_FLOAT_RGB32_NV                 0x8889
02577 #define GL_FLOAT_RGBA16_NV                0x888A
02578 #define GL_FLOAT_RGBA32_NV                0x888B
02579 #define GL_TEXTURE_FLOAT_COMPONENTS_NV    0x888C
02580 #define GL_FLOAT_CLEAR_COLOR_VALUE_NV     0x888D
02581 #define GL_FLOAT_RGBA_MODE_NV             0x888E
02582 #endif
02583
02584 #ifndef GL_NV_fragment_program
02585 #define GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868
02586 #define GL_FRAGMENT_PROGRAM_NV            0x8870
02587 #define GL_MAX_TEXTURE_COORDS_NV          0x8871
02588 #define GL_MAX_TEXTURE_IMAGE_UNITS_NV     0x8872
02589 #define GL_FRAGMENT_PROGRAM_BINDING_NV    0x8873
02590 #define GL_PROGRAM_ERROR_STRING_NV        0x8874
02591 #endif
02592
02593 #ifndef GL_NV_half_float
02594 #define GL_HALF_FLOAT_NV                  0x140B
02595 #endif
02596
02597 #ifndef GL_NV_pixel_data_range
02598 #define GL_WRITE_PIXEL_DATA_RANGE_NV      0x8878
02599 #define GL_READ_PIXEL_DATA_RANGE_NV       0x8879
02600 #define GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV 0x887A
02601 #define GL_READ_PIXEL_DATA_RANGE_LENGTH_NV 0x887B
02602 #define GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV 0x887C
02603 #define GL_READ_PIXEL_DATA_RANGE_POINTER_NV 0x887D
02604 #endif
02605
02606 #ifndef GL_NV_primitive_restart
02607 #define GL_PRIMITIVE_RESTART_NV           0x8558
02608 #define GL_PRIMITIVE_RESTART_INDEX_NV     0x8559
02609 #endif
02610
02611 #ifndef GL_NV_texture_expand_normal
02612 #define GL_TEXTURE_UNSIGNED_REMAP_MODE_NV 0x888F
02613 #endif
02614
02615 #ifndef GL_NV_vertex_program2
02616 #endif
02617
02618 #ifndef GL_ATI_map_object_buffer
02619 #endif
02620
02621 #ifndef GL_ATI_separate_stencil
02622 #define GL_STENCIL_BACK_FUNC_ATI          0x8800
02623 #define GL_STENCIL_BACK_FAIL_ATI          0x8801
02624 #define GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802
02625 #define GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803
02626 #endif
02627
02628 #ifndef GL_ATI_vertex_attrib_array_object
02629 #endif
02630
02631
02632         /*************************************************************/
02633
02634 #ifndef GL_VERSION_1_2
02635 #define GL_VERSION_1_2 1
02636 #ifdef GL_GLEXT_PROTOTYPES
02637         GLAPI void APIENTRY glBlendColor (GLclampf, GLclampf, GLclampf, GLclampf);
02638         GLAPI void APIENTRY glBlendEquation (GLenum);
02639         GLAPI void APIENTRY glDrawRangeElements (GLenum, GLuint, GLuint, GLsizei, GLenum, const GLvoid *);
02640         GLAPI void APIENTRY glColorTable (GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *);
02641         GLAPI void APIENTRY glColorTableParameterfv (GLenum, GLenum, const GLfloat *);
02642         GLAPI void APIENTRY glColorTableParameteriv (GLenum, GLenum, const GLint *);
02643         GLAPI void APIENTRY glCopyColorTable (GLenum, GLenum, GLint, GLint, GLsizei);
02644         GLAPI void APIENTRY glGetColorTable (GLenum, GLenum, GLenum, GLvoid *);
02645         GLAPI void APIENTRY glGetColorTableParameterfv (GLenum, GLenum, GLfloat *);
02646         GLAPI void APIENTRY glGetColorTableParameteriv (GLenum, GLenum, GLint *);
02647         GLAPI void APIENTRY glColorSubTable (GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
02648         GLAPI void APIENTRY glCopyColorSubTable (GLenum, GLsizei, GLint, GLint, GLsizei);
02649         GLAPI void APIENTRY glConvolutionFilter1D (GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *);
02650         GLAPI void APIENTRY glConvolutionFilter2D (GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
02651         GLAPI void APIENTRY glConvolutionParameterf (GLenum, GLenum, GLfloat);
02652         GLAPI void APIENTRY glConvolutionParameterfv (GLenum, GLenum, const GLfloat *);
02653         GLAPI void APIENTRY glConvolutionParameteri (GLenum, GLenum, GLint);
02654         GLAPI void APIENTRY glConvolutionParameteriv (GLenum, GLenum, const GLint *);
02655         GLAPI void APIENTRY glCopyConvolutionFilter1D (GLenum, GLenum, GLint, GLint, GLsizei);
02656         GLAPI void APIENTRY glCopyConvolutionFilter2D (GLenum, GLenum, GLint, GLint, GLsizei, GLsizei);
02657         GLAPI void APIENTRY glGetConvolutionFilter (GLenum, GLenum, GLenum, GLvoid *);
02658         GLAPI void APIENTRY glGetConvolutionParameterfv (GLenum, GLenum, GLfloat *);
02659         GLAPI void APIENTRY glGetConvolutionParameteriv (GLenum, GLenum, GLint *);
02660         GLAPI void APIENTRY glGetSeparableFilter (GLenum, GLenum, GLenum, GLvoid *, GLvoid *, GLvoid *);
02661         GLAPI void APIENTRY glSeparableFilter2D (GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *, const GLvoid *);
02662         GLAPI void APIENTRY glGetHistogram (GLenum, GLboolean, GLenum, GLenum, GLvoid *);
02663         GLAPI void APIENTRY glGetHistogramParameterfv (GLenum, GLenum, GLfloat *);
02664         GLAPI void APIENTRY glGetHistogramParameteriv (GLenum, GLenum, GLint *);
02665         GLAPI void APIENTRY glGetMinmax (GLenum, GLboolean, GLenum, GLenum, GLvoid *);
02666         GLAPI void APIENTRY glGetMinmaxParameterfv (GLenum, GLenum, GLfloat *);
02667         GLAPI void APIENTRY glGetMinmaxParameteriv (GLenum, GLenum, GLint *);
02668         GLAPI void APIENTRY glHistogram (GLenum, GLsizei, GLenum, GLboolean);
02669         GLAPI void APIENTRY glMinmax (GLenum, GLenum, GLboolean);
02670         GLAPI void APIENTRY glResetHistogram (GLenum);
02671         GLAPI void APIENTRY glResetMinmax (GLenum);
02672         GLAPI void APIENTRY glTexImage3D (GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
02673         GLAPI void APIENTRY glTexSubImage3D (GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
02674         GLAPI void APIENTRY glCopyTexSubImage3D (GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
02675 #endif /* GL_GLEXT_PROTOTYPES */
02676         typedef void (APIENTRY * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
02677         typedef void (APIENTRY * PFNGLBLENDEQUATIONPROC) (GLenum mode);
02678         typedef void (APIENTRY * PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
02679         typedef void (APIENTRY * PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
02680         typedef void (APIENTRY * PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
02681         typedef void (APIENTRY * PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
02682         typedef void (APIENTRY * PFNGLCOPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
02683         typedef void (APIENTRY * PFNGLGETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, GLvoid *table);
02684         typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
02685         typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
02686         typedef void (APIENTRY * PFNGLCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
02687         typedef void (APIENTRY * PFNGLCOPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
02688         typedef void (APIENTRY * PFNGLCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
02689         typedef void (APIENTRY * PFNGLCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
02690         typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params);
02691         typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
02692         typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params);
02693         typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
02694         typedef void (APIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
02695         typedef void (APIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
02696         typedef void (APIENTRY * PFNGLGETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image);
02697         typedef void (APIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
02698         typedef void (APIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
02699         typedef void (APIENTRY * PFNGLGETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
02700         typedef void (APIENTRY * PFNGLSEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
02701         typedef void (APIENTRY * PFNGLGETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
02702         typedef void (APIENTRY * PFNGLGETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
02703         typedef void (APIENTRY * PFNGLGETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
02704         typedef void (APIENTRY * PFNGLGETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
02705         typedef void (APIENTRY * PFNGLGETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
02706         typedef void (APIENTRY * PFNGLGETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
02707         typedef void (APIENTRY * PFNGLHISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
02708         typedef void (APIENTRY * PFNGLMINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink);
02709         typedef void (APIENTRY * PFNGLRESETHISTOGRAMPROC) (GLenum target);
02710         typedef void (APIENTRY * PFNGLRESETMINMAXPROC) (GLenum target);
02711         typedef void (APIENTRY * PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
02712         typedef void (APIENTRY * PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
02713         typedef void (APIENTRY * PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
02714 #endif
02715
02716 #ifndef GL_VERSION_1_3
02717 #define GL_VERSION_1_3 1
02718 #ifdef GL_GLEXT_PROTOTYPES
02719         GLAPI void APIENTRY glActiveTexture (GLenum);
02720         GLAPI void APIENTRY glClientActiveTexture (GLenum);
02721         GLAPI void APIENTRY glMultiTexCoord1d (GLenum, GLdouble);
02722         GLAPI void APIENTRY glMultiTexCoord1dv (GLenum, const GLdouble *);
02723         GLAPI void APIENTRY glMultiTexCoord1f (GLenum, GLfloat);
02724         GLAPI void APIENTRY glMultiTexCoord1fv (GLenum, const GLfloat *);
02725         GLAPI void APIENTRY glMultiTexCoord1i (GLenum, GLint);
02726         GLAPI void APIENTRY glMultiTexCoord1iv (GLenum, const GLint *);
02727         GLAPI void APIENTRY glMultiTexCoord1s (GLenum, GLshort);
02728         GLAPI void APIENTRY glMultiTexCoord1sv (GLenum, const GLshort *);
02729         GLAPI void APIENTRY glMultiTexCoord2d (GLenum, GLdouble, GLdouble);
02730         GLAPI void APIENTRY glMultiTexCoord2dv (GLenum, const GLdouble *);
02731         GLAPI void APIENTRY glMultiTexCoord2f (GLenum, GLfloat, GLfloat);
02732         GLAPI void APIENTRY glMultiTexCoord2fv (GLenum, const GLfloat *);
02733         GLAPI void APIENTRY glMultiTexCoord2i (GLenum, GLint, GLint);
02734         GLAPI void APIENTRY glMultiTexCoord2iv (GLenum, const GLint *);
02735         GLAPI void APIENTRY glMultiTexCoord2s (GLenum, GLshort, GLshort);
02736         GLAPI void APIENTRY glMultiTexCoord2sv (GLenum, const GLshort *);
02737         GLAPI void APIENTRY glMultiTexCoord3d (GLenum, GLdouble, GLdouble, GLdouble);
02738         GLAPI void APIENTRY glMultiTexCoord3dv (GLenum, const GLdouble *);
02739         GLAPI void APIENTRY glMultiTexCoord3f (GLenum, GLfloat, GLfloat, GLfloat);
02740         GLAPI void APIENTRY glMultiTexCoord3fv (GLenum, const GLfloat *);
02741         GLAPI void APIENTRY glMultiTexCoord3i (GLenum, GLint, GLint, GLint);
02742         GLAPI void APIENTRY glMultiTexCoord3iv (GLenum, const GLint *);
02743         GLAPI void APIENTRY glMultiTexCoord3s (GLenum, GLshort, GLshort, GLshort);
02744         GLAPI void APIENTRY glMultiTexCoord3sv (GLenum, const GLshort *);
02745         GLAPI void APIENTRY glMultiTexCoord4d (GLenum, GLdouble, GLdouble, GLdouble, GLdouble);
02746         GLAPI void APIENTRY glMultiTexCoord4dv (GLenum, const GLdouble *);
02747         GLAPI void APIENTRY glMultiTexCoord4f (GLenum, GLfloat, GLfloat, GLfloat, GLfloat);
02748         GLAPI void APIENTRY glMultiTexCoord4fv (GLenum, const GLfloat *);
02749         GLAPI void APIENTRY glMultiTexCoord4i (GLenum, GLint, GLint, GLint, GLint);
02750         GLAPI void APIENTRY glMultiTexCoord4iv (GLenum, const GLint *);
02751         GLAPI void APIENTRY glMultiTexCoord4s (GLenum, GLshort, GLshort, GLshort, GLshort);
02752         GLAPI void APIENTRY glMultiTexCoord4sv (GLenum, const GLshort *);
02753         GLAPI void APIENTRY glLoadTransposeMatrixf (const GLfloat *);
02754         GLAPI void APIENTRY glLoadTransposeMatrixd (const GLdouble *);
02755         GLAPI void APIENTRY glMultTransposeMatrixf (const GLfloat *);
02756         GLAPI void APIENTRY glMultTransposeMatrixd (const GLdouble *);
02757         GLAPI void APIENTRY glSampleCoverage (GLclampf, GLboolean);
02758         GLAPI void APIENTRY glCompressedTexImage3D (GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *);
02759         GLAPI void APIENTRY glCompressedTexImage2D (GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *);
02760         GLAPI void APIENTRY glCompressedTexImage1D (GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *);
02761         GLAPI void APIENTRY glCompressedTexSubImage3D (GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *);
02762         GLAPI void APIENTRY glCompressedTexSubImage2D (GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *);
02763         GLAPI void APIENTRY glCompressedTexSubImage1D (GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *);
02764         GLAPI void APIENTRY glGetCompressedTexImage (GLenum, GLint, GLvoid *);
02765 #endif /* GL_GLEXT_PROTOTYPES */
02766         typedef void (APIENTRY * PFNGLACTIVETEXTUREPROC) (GLenum texture);
02767         typedef void (APIENTRY * PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture);
02768         typedef void (APIENTRY * PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s);
02769         typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v);
02770         typedef void (APIENTRY * PFNGLMULTITEXCOORD1FPROC) (GLenum target, GLfloat s);
02771         typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v);
02772         typedef void (APIENTRY * PFNGLMULTITEXCOORD1IPROC) (GLenum target, GLint s);
02773         typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVPROC) (GLenum target, const GLint *v);
02774         typedef void (APIENTRY * PFNGLMULTITEXCOORD1SPROC) (GLenum target, GLshort s);
02775         typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v);
02776         typedef void (APIENTRY * PFNGLMULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t);
02777         typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v);
02778         typedef void (APIENTRY * PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
02779         typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v);
02780         typedef void (APIENTRY * PFNGLMULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t);
02781         typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVPROC) (GLenum target, const GLint *v);
02782         typedef void (APIENTRY * PFNGLMULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t);
02783         typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v);
02784         typedef void (APIENTRY * PFNGLMULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
02785         typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v);
02786         typedef void (APIENTRY * PFNGLMULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
02787         typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v);
02788         typedef void (APIENTRY * PFNGLMULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r);
02789         typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVPROC) (GLenum target, const GLint *v);
02790         typedef void (APIENTRY * PFNGLMULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
02791         typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v);
02792         typedef void (APIENTRY * PFNGLMULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
02793         typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v);
02794         typedef void (APIENTRY * PFNGLMULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
02795         typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v);
02796         typedef void (APIENTRY * PFNGLMULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
02797         typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVPROC) (GLenum target, const GLint *v);
02798         typedef void (APIENTRY * PFNGLMULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
02799         typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v);
02800         typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXFPROC) (const GLfloat *m);
02801         typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXDPROC) (const GLdouble *m);
02802         typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXFPROC) (const GLfloat *m);
02803         typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble *m);
02804         typedef void (APIENTRY * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert);
02805         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
02806         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
02807         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
02808         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
02809         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
02810         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
02811         typedef void (APIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img);
02812 #endif
02813
02814 #ifndef GL_VERSION_1_4
02815 #define GL_VERSION_1_4 1
02816 #ifdef GL_GLEXT_PROTOTYPES
02817         GLAPI void APIENTRY glBlendFuncSeparate (GLenum, GLenum, GLenum, GLenum);
02818         GLAPI void APIENTRY glFogCoordf (GLfloat);
02819         GLAPI void APIENTRY glFogCoordfv (const GLfloat *);
02820         GLAPI void APIENTRY glFogCoordd (GLdouble);
02821         GLAPI void APIENTRY glFogCoorddv (const GLdouble *);
02822         GLAPI void APIENTRY glFogCoordPointer (GLenum, GLsizei, const GLvoid *);
02823         GLAPI void APIENTRY glMultiDrawArrays (GLenum, GLint *, GLsizei *, GLsizei);
02824         GLAPI void APIENTRY glMultiDrawElements (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
02825         GLAPI void APIENTRY glPointParameterf (GLenum, GLfloat);
02826         GLAPI void APIENTRY glPointParameterfv (GLenum, const GLfloat *);
02827         GLAPI void APIENTRY glPointParameteri (GLenum, GLint);
02828         GLAPI void APIENTRY glPointParameteriv (GLenum, const GLint *);
02829         GLAPI void APIENTRY glSecondaryColor3b (GLbyte, GLbyte, GLbyte);
02830         GLAPI void APIENTRY glSecondaryColor3bv (const GLbyte *);
02831         GLAPI void APIENTRY glSecondaryColor3d (GLdouble, GLdouble, GLdouble);
02832         GLAPI void APIENTRY glSecondaryColor3dv (const GLdouble *);
02833         GLAPI void APIENTRY glSecondaryColor3f (GLfloat, GLfloat, GLfloat);
02834         GLAPI void APIENTRY glSecondaryColor3fv (const GLfloat *);
02835         GLAPI void APIENTRY glSecondaryColor3i (GLint, GLint, GLint);
02836         GLAPI void APIENTRY glSecondaryColor3iv (const GLint *);
02837         GLAPI void APIENTRY glSecondaryColor3s (GLshort, GLshort, GLshort);
02838         GLAPI void APIENTRY glSecondaryColor3sv (const GLshort *);
02839         GLAPI void APIENTRY glSecondaryColor3ub (GLubyte, GLubyte, GLubyte);
02840         GLAPI void APIENTRY glSecondaryColor3ubv (const GLubyte *);
02841         GLAPI void APIENTRY glSecondaryColor3ui (GLuint, GLuint, GLuint);
02842         GLAPI void APIENTRY glSecondaryColor3uiv (const GLuint *);
02843         GLAPI void APIENTRY glSecondaryColor3us (GLushort, GLushort, GLushort);
02844         GLAPI void APIENTRY glSecondaryColor3usv (const GLushort *);
02845         GLAPI void APIENTRY glSecondaryColorPointer (GLint, GLenum, GLsizei, const GLvoid *);
02846         GLAPI void APIENTRY glWindowPos2d (GLdouble, GLdouble);
02847         GLAPI void APIENTRY glWindowPos2dv (const GLdouble *);
02848         GLAPI void APIENTRY glWindowPos2f (GLfloat, GLfloat);
02849         GLAPI void APIENTRY glWindowPos2fv (const GLfloat *);
02850         GLAPI void APIENTRY glWindowPos2i (GLint, GLint);
02851         GLAPI void APIENTRY glWindowPos2iv (const GLint *);
02852         GLAPI void APIENTRY glWindowPos2s (GLshort, GLshort);
02853         GLAPI void APIENTRY glWindowPos2sv (const GLshort *);
02854         GLAPI void APIENTRY glWindowPos3d (GLdouble, GLdouble, GLdouble);
02855         GLAPI void APIENTRY glWindowPos3dv (const GLdouble *);
02856         GLAPI void APIENTRY glWindowPos3f (GLfloat, GLfloat, GLfloat);
02857         GLAPI void APIENTRY glWindowPos3fv (const GLfloat *);
02858         GLAPI void APIENTRY glWindowPos3i (GLint, GLint, GLint);
02859         GLAPI void APIENTRY glWindowPos3iv (const GLint *);
02860         GLAPI void APIENTRY glWindowPos3s (GLshort, GLshort, GLshort);
02861         GLAPI void APIENTRY glWindowPos3sv (const GLshort *);
02862 #endif /* GL_GLEXT_PROTOTYPES */
02863         typedef void (APIENTRY * PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
02864         typedef void (APIENTRY * PFNGLFOGCOORDFPROC) (GLfloat coord);
02865         typedef void (APIENTRY * PFNGLFOGCOORDFVPROC) (const GLfloat *coord);
02866         typedef void (APIENTRY * PFNGLFOGCOORDDPROC) (GLdouble coord);
02867         typedef void (APIENTRY * PFNGLFOGCOORDDVPROC) (const GLdouble *coord);
02868         typedef void (APIENTRY * PFNGLFOGCOORDPOINTERPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
02869         typedef void (APIENTRY * PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
02870         typedef void (APIENTRY * PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
02871         typedef void (APIENTRY * PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param);
02872         typedef void (APIENTRY * PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params);
02873         typedef void (APIENTRY * PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param);
02874         typedef void (APIENTRY * PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint *params);
02875         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3BPROC) (GLbyte red, GLbyte green, GLbyte blue);
02876         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3BVPROC) (const GLbyte *v);
02877         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3DPROC) (GLdouble red, GLdouble green, GLdouble blue);
02878         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3DVPROC) (const GLdouble *v);
02879         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3FPROC) (GLfloat red, GLfloat green, GLfloat blue);
02880         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3FVPROC) (const GLfloat *v);
02881         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3IPROC) (GLint red, GLint green, GLint blue);
02882         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3IVPROC) (const GLint *v);
02883         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3SPROC) (GLshort red, GLshort green, GLshort blue);
02884         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3SVPROC) (const GLshort *v);
02885         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UBPROC) (GLubyte red, GLubyte green, GLubyte blue);
02886         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UBVPROC) (const GLubyte *v);
02887         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UIPROC) (GLuint red, GLuint green, GLuint blue);
02888         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UIVPROC) (const GLuint *v);
02889         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3USPROC) (GLushort red, GLushort green, GLushort blue);
02890         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3USVPROC) (const GLushort *v);
02891         typedef void (APIENTRY * PFNGLSECONDARYCOLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
02892         typedef void (APIENTRY * PFNGLWINDOWPOS2DPROC) (GLdouble x, GLdouble y);
02893         typedef void (APIENTRY * PFNGLWINDOWPOS2DVPROC) (const GLdouble *v);
02894         typedef void (APIENTRY * PFNGLWINDOWPOS2FPROC) (GLfloat x, GLfloat y);
02895         typedef void (APIENTRY * PFNGLWINDOWPOS2FVPROC) (const GLfloat *v);
02896         typedef void (APIENTRY * PFNGLWINDOWPOS2IPROC) (GLint x, GLint y);
02897         typedef void (APIENTRY * PFNGLWINDOWPOS2IVPROC) (const GLint *v);
02898         typedef void (APIENTRY * PFNGLWINDOWPOS2SPROC) (GLshort x, GLshort y);
02899         typedef void (APIENTRY * PFNGLWINDOWPOS2SVPROC) (const GLshort *v);
02900         typedef void (APIENTRY * PFNGLWINDOWPOS3DPROC) (GLdouble x, GLdouble y, GLdouble z);
02901         typedef void (APIENTRY * PFNGLWINDOWPOS3DVPROC) (const GLdouble *v);
02902         typedef void (APIENTRY * PFNGLWINDOWPOS3FPROC) (GLfloat x, GLfloat y, GLfloat z);
02903         typedef void (APIENTRY * PFNGLWINDOWPOS3FVPROC) (const GLfloat *v);
02904         typedef void (APIENTRY * PFNGLWINDOWPOS3IPROC) (GLint x, GLint y, GLint z);
02905         typedef void (APIENTRY * PFNGLWINDOWPOS3IVPROC) (const GLint *v);
02906         typedef void (APIENTRY * PFNGLWINDOWPOS3SPROC) (GLshort x, GLshort y, GLshort z);
02907         typedef void (APIENTRY * PFNGLWINDOWPOS3SVPROC) (const GLshort *v);
02908 #endif
02909
02910 #ifndef GL_ARB_multitexture
02911 #define GL_ARB_multitexture 1
02912 #ifdef GL_GLEXT_PROTOTYPES
02913         GLAPI void APIENTRY glActiveTextureARB (GLenum);
02914         GLAPI void APIENTRY glClientActiveTextureARB (GLenum);
02915         GLAPI void APIENTRY glMultiTexCoord1dARB (GLenum, GLdouble);
02916         GLAPI void APIENTRY glMultiTexCoord1dvARB (GLenum, const GLdouble *);
02917         GLAPI void APIENTRY glMultiTexCoord1fARB (GLenum, GLfloat);
02918         GLAPI void APIENTRY glMultiTexCoord1fvARB (GLenum, const GLfloat *);
02919         GLAPI void APIENTRY glMultiTexCoord1iARB (GLenum, GLint);
02920         GLAPI void APIENTRY glMultiTexCoord1ivARB (GLenum, const GLint *);
02921         GLAPI void APIENTRY glMultiTexCoord1sARB (GLenum, GLshort);
02922         GLAPI void APIENTRY glMultiTexCoord1svARB (GLenum, const GLshort *);
02923         GLAPI void APIENTRY glMultiTexCoord2dARB (GLenum, GLdouble, GLdouble);
02924         GLAPI void APIENTRY glMultiTexCoord2dvARB (GLenum, const GLdouble *);
02925         GLAPI void APIENTRY glMultiTexCoord2fARB (GLenum, GLfloat, GLfloat);
02926         GLAPI void APIENTRY glMultiTexCoord2fvARB (GLenum, const GLfloat *);
02927         GLAPI void APIENTRY glMultiTexCoord2iARB (GLenum, GLint, GLint);
02928         GLAPI void APIENTRY glMultiTexCoord2ivARB (GLenum, const GLint *);
02929         GLAPI void APIENTRY glMultiTexCoord2sARB (GLenum, GLshort, GLshort);
02930         GLAPI void APIENTRY glMultiTexCoord2svARB (GLenum, const GLshort *);
02931         GLAPI void APIENTRY glMultiTexCoord3dARB (GLenum, GLdouble, GLdouble, GLdouble);
02932         GLAPI void APIENTRY glMultiTexCoord3dvARB (GLenum, const GLdouble *);
02933         GLAPI void APIENTRY glMultiTexCoord3fARB (GLenum, GLfloat, GLfloat, GLfloat);
02934         GLAPI void APIENTRY glMultiTexCoord3fvARB (GLenum, const GLfloat *);
02935         GLAPI void APIENTRY glMultiTexCoord3iARB (GLenum, GLint, GLint, GLint);
02936         GLAPI void APIENTRY glMultiTexCoord3ivARB (GLenum, const GLint *);
02937         GLAPI void APIENTRY glMultiTexCoord3sARB (GLenum, GLshort, GLshort, GLshort);
02938         GLAPI void APIENTRY glMultiTexCoord3svARB (GLenum, const GLshort *);
02939         GLAPI void APIENTRY glMultiTexCoord4dARB (GLenum, GLdouble, GLdouble, GLdouble, GLdouble);
02940         GLAPI void APIENTRY glMultiTexCoord4dvARB (GLenum, const GLdouble *);
02941         GLAPI void APIENTRY glMultiTexCoord4fARB (GLenum, GLfloat, GLfloat, GLfloat, GLfloat);
02942         GLAPI void APIENTRY glMultiTexCoord4fvARB (GLenum, const GLfloat *);
02943         GLAPI void APIENTRY glMultiTexCoord4iARB (GLenum, GLint, GLint, GLint, GLint);
02944         GLAPI void APIENTRY glMultiTexCoord4ivARB (GLenum, const GLint *);
02945         GLAPI void APIENTRY glMultiTexCoord4sARB (GLenum, GLshort, GLshort, GLshort, GLshort);
02946         GLAPI void APIENTRY glMultiTexCoord4svARB (GLenum, const GLshort *);
02947 #endif /* GL_GLEXT_PROTOTYPES */
02948         typedef void (APIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum texture);
02949         typedef void (APIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture);
02950         typedef void (APIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);
02951         typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);
02952         typedef void (APIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);
02953         typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);
02954         typedef void (APIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);
02955         typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);
02956         typedef void (APIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);
02957         typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);
02958         typedef void (APIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);
02959         typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);
02960         typedef void (APIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);
02961         typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);
02962         typedef void (APIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);
02963         typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);
02964         typedef void (APIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);
02965         typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);
02966         typedef void (APIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
02967         typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);
02968         typedef void (APIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
02969         typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);
02970         typedef void (APIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);
02971         typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);
02972         typedef void (APIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
02973         typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);
02974         typedef void (APIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
02975         typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);
02976         typedef void (APIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
02977         typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);
02978         typedef void (APIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
02979         typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);
02980         typedef void (APIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
02981         typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);
02982 #endif
02983
02984 #ifndef GL_ARB_transpose_matrix
02985 #define GL_ARB_transpose_matrix 1
02986 #ifdef GL_GLEXT_PROTOTYPES
02987         GLAPI void APIENTRY glLoadTransposeMatrixfARB (const GLfloat *);
02988         GLAPI void APIENTRY glLoadTransposeMatrixdARB (const GLdouble *);
02989         GLAPI void APIENTRY glMultTransposeMatrixfARB (const GLfloat *);
02990         GLAPI void APIENTRY glMultTransposeMatrixdARB (const GLdouble *);
02991 #endif /* GL_GLEXT_PROTOTYPES */
02992         typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXFARBPROC) (const GLfloat *m);
02993         typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXDARBPROC) (const GLdouble *m);
02994         typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXFARBPROC) (const GLfloat *m);
02995         typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXDARBPROC) (const GLdouble *m);
02996 #endif
02997
02998 #ifndef GL_ARB_multisample
02999 #define GL_ARB_multisample 1
03000 #ifdef GL_GLEXT_PROTOTYPES
03001         GLAPI void APIENTRY glSampleCoverageARB (GLclampf, GLboolean);
03002 #endif /* GL_GLEXT_PROTOTYPES */
03003         typedef void (APIENTRY * PFNGLSAMPLECOVERAGEARBPROC) (GLclampf value, GLboolean invert);
03004 #endif
03005
03006 #ifndef GL_ARB_texture_env_add
03007 #define GL_ARB_texture_env_add 1
03008 #endif
03009
03010 #ifndef GL_ARB_texture_cube_map
03011 #define GL_ARB_texture_cube_map 1
03012 #endif
03013
03014 #ifndef GL_ARB_texture_compression
03015 #define GL_ARB_texture_compression 1
03016 #ifdef GL_GLEXT_PROTOTYPES
03017         GLAPI void APIENTRY glCompressedTexImage3DARB (GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *);
03018         GLAPI void APIENTRY glCompressedTexImage2DARB (GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *);
03019         GLAPI void APIENTRY glCompressedTexImage1DARB (GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *);
03020         GLAPI void APIENTRY glCompressedTexSubImage3DARB (GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *);
03021         GLAPI void APIENTRY glCompressedTexSubImage2DARB (GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *);
03022         GLAPI void APIENTRY glCompressedTexSubImage1DARB (GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *);
03023         GLAPI void APIENTRY glGetCompressedTexImageARB (GLenum, GLint, GLvoid *);
03024 #endif /* GL_GLEXT_PROTOTYPES */
03025         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
03026         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
03027         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
03028         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
03029         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
03030         typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
03031         typedef void (APIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint level, GLvoid *img);
03032 #endif
03033
03034 #ifndef GL_ARB_texture_border_clamp
03035 #define GL_ARB_texture_border_clamp 1
03036 #endif
03037
03038 #ifndef GL_ARB_point_parameters
03039 #define GL_ARB_point_parameters 1
03040 #ifdef GL_GLEXT_PROTOTYPES
03041         GLAPI void APIENTRY glPointParameterfARB (GLenum, GLfloat);
03042         GLAPI void APIENTRY glPointParameterfvARB (GLenum, const GLfloat *);
03043 #endif /* GL_GLEXT_PROTOTYPES */
03044         typedef void (APIENTRY * PFNGLPOINTPARAMETERFARBPROC) (GLenum pname, GLfloat param);
03045         typedef void (APIENTRY * PFNGLPOINTPARAMETERFVARBPROC) (GLenum pname, const GLfloat *params);
03046 #endif
03047
03048 #ifndef GL_ARB_vertex_blend
03049 #define GL_ARB_vertex_blend 1
03050 #ifdef GL_GLEXT_PROTOTYPES
03051         GLAPI void APIENTRY glWeightbvARB (GLint, const GLbyte *);
03052         GLAPI void APIENTRY glWeightsvARB (GLint, const GLshort *);
03053         GLAPI void APIENTRY glWeightivARB (GLint, const GLint *);
03054         GLAPI void APIENTRY glWeightfvARB (GLint, const GLfloat *);
03055         GLAPI void APIENTRY glWeightdvARB (GLint, const GLdouble *);
03056         GLAPI void APIENTRY glWeightubvARB (GLint, const GLubyte *);
03057         GLAPI void APIENTRY glWeightusvARB (GLint, const GLushort *);
03058         GLAPI void APIENTRY glWeightuivARB (GLint, const GLuint *);
03059         GLAPI void APIENTRY glWeightPointerARB (GLint, GLenum, GLsizei, const GLvoid *);
03060         GLAPI void APIENTRY glVertexBlendARB (GLint);
03061 #endif /* GL_GLEXT_PROTOTYPES */
03062         typedef void (APIENTRY * PFNGLWEIGHTBVARBPROC) (GLint size, const GLbyte *weights);
03063         typedef void (APIENTRY * PFNGLWEIGHTSVARBPROC) (GLint size, const GLshort *weights);
03064         typedef void (APIENTRY * PFNGLWEIGHTIVARBPROC) (GLint size, const GLint *weights);
03065         typedef void (APIENTRY * PFNGLWEIGHTFVARBPROC) (GLint size, const GLfloat *weights);
03066         typedef void (APIENTRY * PFNGLWEIGHTDVARBPROC) (GLint size, const GLdouble *weights);
03067         typedef void (APIENTRY * PFNGLWEIGHTUBVARBPROC) (GLint size, const GLubyte *weights);
03068         typedef void (APIENTRY * PFNGLWEIGHTUSVARBPROC) (GLint size, const GLushort *weights);
03069         typedef void (APIENTRY * PFNGLWEIGHTUIVARBPROC) (GLint size, const GLuint *weights);
03070         typedef void (APIENTRY * PFNGLWEIGHTPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
03071         typedef void (APIENTRY * PFNGLVERTEXBLENDARBPROC) (GLint count);
03072 #endif
03073
03074 #ifndef GL_ARB_matrix_palette
03075 #define GL_ARB_matrix_palette 1
03076 #ifdef GL_GLEXT_PROTOTYPES
03077         GLAPI void APIENTRY glCurrentPaletteMatrixARB (GLint);
03078         GLAPI void APIENTRY glMatrixIndexubvARB (GLint, const GLubyte *);
03079         GLAPI void APIENTRY glMatrixIndexusvARB (GLint, const GLushort *);
03080         GLAPI void APIENTRY glMatrixIndexuivARB (GLint, const GLuint *);
03081         GLAPI void APIENTRY glMatrixIndexPointerARB (GLint, GLenum, GLsizei, const GLvoid *);
03082 #endif /* GL_GLEXT_PROTOTYPES */
03083         typedef void (APIENTRY * PFNGLCURRENTPALETTEMATRIXARBPROC) (GLint index);
03084         typedef void (APIENTRY * PFNGLMATRIXINDEXUBVARBPROC) (GLint size, const GLubyte *indices);
03085         typedef void (APIENTRY * PFNGLMATRIXINDEXUSVARBPROC) (GLint size, const GLushort *indices);
03086         typedef void (APIENTRY * PFNGLMATRIXINDEXUIVARBPROC) (GLint size, const GLuint *indices);
03087         typedef void (APIENTRY * PFNGLMATRIXINDEXPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
03088 #endif
03089
03090 #ifndef GL_ARB_texture_env_combine
03091 #define GL_ARB_texture_env_combine 1
03092 #endif
03093
03094 #ifndef GL_ARB_texture_env_crossbar
03095 #define GL_ARB_texture_env_crossbar 1
03096 #endif
03097
03098 #ifndef GL_ARB_texture_env_dot3
03099 #define GL_ARB_texture_env_dot3 1
03100 #endif
03101
03102 #ifndef GL_ARB_texture_mirror_repeat
03103 #define GL_ARB_texture_mirror_repeat 1
03104 #endif
03105
03106 #ifndef GL_ARB_depth_texture
03107 #define GL_ARB_depth_texture 1
03108 #endif
03109
03110 #ifndef GL_ARB_shadow
03111 #define GL_ARB_shadow 1
03112 #endif
03113
03114 #ifndef GL_ARB_shadow_ambient
03115 #define GL_ARB_shadow_ambient 1
03116 #endif
03117
03118 #ifndef GL_ARB_window_pos
03119 #define GL_ARB_window_pos 1
03120 #ifdef GL_GLEXT_PROTOTYPES
03121         GLAPI void APIENTRY glWindowPos2dARB (GLdouble, GLdouble);
03122         GLAPI void APIENTRY glWindowPos2dvARB (const GLdouble *);
03123         GLAPI void APIENTRY glWindowPos2fARB (GLfloat, GLfloat);
03124         GLAPI void APIENTRY glWindowPos2fvARB (const GLfloat *);
03125         GLAPI void APIENTRY glWindowPos2iARB (GLint, GLint);
03126         GLAPI void APIENTRY glWindowPos2ivARB (const GLint *);
03127         GLAPI void APIENTRY glWindowPos2sARB (GLshort, GLshort);
03128         GLAPI void APIENTRY glWindowPos2svARB (const GLshort *);
03129         GLAPI void APIENTRY glWindowPos3dARB (GLdouble, GLdouble, GLdouble);
03130         GLAPI void APIENTRY glWindowPos3dvARB (const GLdouble *);
03131         GLAPI void APIENTRY glWindowPos3fARB (GLfloat, GLfloat, GLfloat);
03132         GLAPI void APIENTRY glWindowPos3fvARB (const GLfloat *);
03133         GLAPI void APIENTRY glWindowPos3iARB (GLint, GLint, GLint);
03134         GLAPI void APIENTRY glWindowPos3ivARB (const GLint *);
03135         GLAPI void APIENTRY glWindowPos3sARB (GLshort, GLshort, GLshort);
03136         GLAPI void APIENTRY glWindowPos3svARB (const GLshort *);
03137 #endif /* GL_GLEXT_PROTOTYPES */
03138         typedef void (APIENTRY * PFNGLWINDOWPOS2DARBPROC) (GLdouble x, GLdouble y);
03139         typedef void (APIENTRY * PFNGLWINDOWPOS2DVARBPROC) (const GLdouble *v);
03140         typedef void (APIENTRY * PFNGLWINDOWPOS2FARBPROC) (GLfloat x, GLfloat y);
03141         typedef void (APIENTRY * PFNGLWINDOWPOS2FVARBPROC) (const GLfloat *v);
03142         typedef void (APIENTRY * PFNGLWINDOWPOS2IARBPROC) (GLint x, GLint y);
03143         typedef void (APIENTRY * PFNGLWINDOWPOS2IVARBPROC) (const GLint *v);
03144         typedef void (APIENTRY * PFNGLWINDOWPOS2SARBPROC) (GLshort x, GLshort y);
03145         typedef void (APIENTRY * PFNGLWINDOWPOS2SVARBPROC) (const GLshort *v);
03146         typedef void (APIENTRY * PFNGLWINDOWPOS3DARBPROC) (GLdouble x, GLdouble y, GLdouble z);
03147         typedef void (APIENTRY * PFNGLWINDOWPOS3DVARBPROC) (const GLdouble *v);
03148         typedef void (APIENTRY * PFNGLWINDOWPOS3FARBPROC) (GLfloat x, GLfloat y, GLfloat z);
03149         typedef void (APIENTRY * PFNGLWINDOWPOS3FVARBPROC) (const GLfloat *v);
03150         typedef void (APIENTRY * PFNGLWINDOWPOS3IARBPROC) (GLint x, GLint y, GLint z);
03151         typedef void (APIENTRY * PFNGLWINDOWPOS3IVARBPROC) (const GLint *v);
03152         typedef void (APIENTRY * PFNGLWINDOWPOS3SARBPROC) (GLshort x, GLshort y, GLshort z);
03153         typedef void (APIENTRY * PFNGLWINDOWPOS3SVARBPROC) (const GLshort *v);
03154 #endif
03155
03156 #ifndef GL_ARB_vertex_program
03157 #define GL_ARB_vertex_program 1
03158 #ifdef GL_GLEXT_PROTOTYPES
03159         GLAPI void APIENTRY glVertexAttrib1dARB (GLuint, GLdouble);
03160         GLAPI void APIENTRY glVertexAttrib1dvARB (GLuint, const GLdouble *);
03161         GLAPI void APIENTRY glVertexAttrib1fARB (GLuint, GLfloat);
03162         GLAPI void APIENTRY glVertexAttrib1fvARB (GLuint, const GLfloat *);
03163         GLAPI void APIENTRY glVertexAttrib1sARB (GLuint, GLshort);
03164         GLAPI void APIENTRY glVertexAttrib1svARB (GLuint, const GLshort *);
03165         GLAPI void APIENTRY glVertexAttrib2dARB (GLuint, GLdouble, GLdouble);
03166         GLAPI void APIENTRY glVertexAttrib2dvARB (GLuint, const GLdouble *);
03167         GLAPI void APIENTRY glVertexAttrib2fARB (GLuint, GLfloat, GLfloat);
03168         GLAPI void APIENTRY glVertexAttrib2fvARB (GLuint, const GLfloat *);
03169         GLAPI void APIENTRY glVertexAttrib2sARB (GLuint, GLshort, GLshort);
03170         GLAPI void APIENTRY glVertexAttrib2svARB (GLuint, const GLshort *);
03171         GLAPI void APIENTRY glVertexAttrib3dARB (GLuint, GLdouble, GLdouble, GLdouble);
03172         GLAPI void APIENTRY glVertexAttrib3dvARB (GLuint, const GLdouble *);
03173         GLAPI void APIENTRY glVertexAttrib3fARB (GLuint, GLfloat, GLfloat, GLfloat);
03174         GLAPI void APIENTRY glVertexAttrib3fvARB (GLuint, const GLfloat *);
03175         GLAPI void APIENTRY glVertexAttrib3sARB (GLuint, GLshort, GLshort, GLshort);
03176         GLAPI void APIENTRY glVertexAttrib3svARB (GLuint, const GLshort *);
03177         GLAPI void APIENTRY glVertexAttrib4NbvARB (GLuint, const GLbyte *);
03178         GLAPI void APIENTRY glVertexAttrib4NivARB (GLuint, const GLint *);
03179         GLAPI void APIENTRY glVertexAttrib4NsvARB (GLuint, const GLshort *);
03180         GLAPI void APIENTRY glVertexAttrib4NubARB (GLuint, GLubyte, GLubyte, GLubyte, GLubyte);
03181         GLAPI void APIENTRY glVertexAttrib4NubvARB (GLuint, const GLubyte *);
03182         GLAPI void APIENTRY glVertexAttrib4NuivARB (GLuint, const GLuint *);
03183         GLAPI void APIENTRY glVertexAttrib4NusvARB (GLuint, const GLushort *);
03184         GLAPI void APIENTRY glVertexAttrib4bvARB (GLuint, const GLbyte *);
03185         GLAPI void APIENTRY glVertexAttrib4dARB (GLuint, GLdouble, GLdouble, GLdouble, GLdouble);
03186         GLAPI void APIENTRY glVertexAttrib4dvARB (GLuint, const GLdouble *);
03187         GLAPI void APIENTRY glVertexAttrib4fARB (GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
03188         GLAPI void APIENTRY glVertexAttrib4fvARB (GLuint, const GLfloat *);
03189         GLAPI void APIENTRY glVertexAttrib4ivARB (GLuint, const GLint *);
03190         GLAPI void APIENTRY glVertexAttrib4sARB (GLuint, GLshort, GLshort, GLshort, GLshort);
03191         GLAPI void APIENTRY glVertexAttrib4svARB (GLuint, const GLshort *);
03192         GLAPI void APIENTRY glVertexAttrib4ubvARB (GLuint, const GLubyte *);
03193         GLAPI void APIENTRY glVertexAttrib4uivARB (GLuint, const GLuint *);
03194         GLAPI void APIENTRY glVertexAttrib4usvARB (GLuint, const GLushort *);
03195         GLAPI void APIENTRY glVertexAttribPointerARB (GLuint, GLint, GLenum, GLboolean, GLsizei, const GLvoid *);
03196         GLAPI void APIENTRY glEnableVertexAttribArrayARB (GLuint);
03197         GLAPI void APIENTRY glDisableVertexAttribArrayARB (GLuint);
03198         GLAPI void APIENTRY glProgramStringARB (GLenum, GLenum, GLsizei, const GLvoid *);
03199         GLAPI void APIENTRY glBindProgramARB (GLenum, GLuint);
03200         GLAPI void APIENTRY glDeleteProgramsARB (GLsizei, const GLuint *);
03201         GLAPI void APIENTRY glGenProgramsARB (GLsizei, GLuint *);
03202         GLAPI void APIENTRY glProgramEnvParameter4dARB (GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble);
03203         GLAPI void APIENTRY glProgramEnvParameter4dvARB (GLenum, GLuint, const GLdouble *);
03204         GLAPI void APIENTRY glProgramEnvParameter4fARB (GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
03205         GLAPI void APIENTRY glProgramEnvParameter4fvARB (GLenum, GLuint, const GLfloat *);
03206         GLAPI void APIENTRY glProgramLocalParameter4dARB (GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble);
03207         GLAPI void APIENTRY glProgramLocalParameter4dvARB (GLenum, GLuint, const GLdouble *);
03208         GLAPI void APIENTRY glProgramLocalParameter4fARB (GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
03209         GLAPI void APIENTRY glProgramLocalParameter4fvARB (GLenum, GLuint, const GLfloat *);
03210         GLAPI void APIENTRY glGetProgramEnvParameterdvARB (GLenum, GLuint, GLdouble *);
03211         GLAPI void APIENTRY glGetProgramEnvParameterfvARB (GLenum, GLuint, GLfloat *);
03212         GLAPI void APIENTRY glGetProgramLocalParameterdvARB (GLenum, GLuint, GLdouble *);
03213         GLAPI void APIENTRY glGetProgramLocalParameterfvARB (GLenum, GLuint, GLfloat *);
03214         GLAPI void APIENTRY glGetProgramivARB (GLenum, GLenum, GLint *);
03215         GLAPI void APIENTRY glGetProgramStringARB (GLenum, GLenum, GLvoid *);
03216         GLAPI void APIENTRY glGetVertexAttribdvARB (GLuint, GLenum, GLdouble *);
03217         GLAPI void APIENTRY glGetVertexAttribfvARB (GLuint, GLenum, GLfloat *);
03218         GLAPI void APIENTRY glGetVertexAttribivARB (GLuint, GLenum, GLint *);
03219         GLAPI void APIENTRY glGetVertexAttribPointervARB (GLuint, GLenum, GLvoid* *);
03220         GLAPI GLboolean APIENTRY glIsProgramARB (GLuint);
03221 #endif /* GL_GLEXT_PROTOTYPES */
03222         typedef void (APIENTRY * PFNGLVERTEXATTRIB1DARBPROC) (GLuint index, GLdouble x);
03223         typedef void (APIENTRY * PFNGLVERTEXATTRIB1DVARBPROC) (GLuint index, const GLdouble *v);
03224         typedef void (APIENTRY * PFNGLVERTEXATTRIB1FARBPROC) (GLuint index, GLfloat x);
03225         typedef void (APIENTRY * PFNGLVERTEXATTRIB1FVARBPROC) (GLuint index, const GLfloat *v);
03226         typedef void (APIENTRY * PFNGLVERTEXATTRIB1SARBPROC) (GLuint index, GLshort x);
03227         typedef void (APIENTRY * PFNGLVERTEXATTRIB1SVARBPROC) (GLuint index, const GLshort *v);
03228         typedef void (APIENTRY * PFNGLVERTEXATTRIB2DARBPROC) (GLuint index, GLdouble x, GLdouble y);
03229         typedef void (APIENTRY * PFNGLVERTEXATTRIB2DVARBPROC) (GLuint index, const GLdouble *v);
03230         typedef void (APIENTRY * PFNGLVERTEXATTRIB2FARBPROC) (GLuint index, GLfloat x, GLfloat y);
03231         typedef void (APIENTRY * PFNGLVERTEXATTRIB2FVARBPROC) (GLuint index, const GLfloat *v);
03232         typedef void (APIENTRY * PFNGLVERTEXATTRIB2SARBPROC) (GLuint index, GLshort x, GLshort y);
03233         typedef void (APIENTRY * PFNGLVERTEXATTRIB2SVARBPROC) (GLuint index, const GLshort *v);
03234         typedef void (APIENTRY * PFNGLVERTEXATTRIB3DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
03235         typedef void (APIENTRY * PFNGLVERTEXATTRIB3DVARBPROC) (GLuint index, const GLdouble *v);
03236         typedef void (APIENTRY * PFNGLVERTEXATTRIB3FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
03237         typedef void (APIENTRY * PFNGLVERTEXATTRIB3FVARBPROC) (GLuint index, const GLfloat *v);
03238         typedef void (APIENTRY * PFNGLVERTEXATTRIB3SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
03239         typedef void (APIENTRY * PFNGLVERTEXATTRIB3SVARBPROC) (GLuint index, const GLshort *v);
03240         typedef void (APIENTRY * PFNGLVERTEXATTRIB4NBVARBPROC) (GLuint index, const GLbyte *v);
03241         typedef void (APIENTRY * PFNGLVERTEXATTRIB4NIVARBPROC) (GLuint index, const GLint *v);
03242         typedef void (APIENTRY * PFNGLVERTEXATTRIB4NSVARBPROC) (GLuint index, const GLshort *v);
03243         typedef void (APIENTRY * PFNGLVERTEXATTRIB4NUBARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
03244         typedef void (APIENTRY * PFNGLVERTEXATTRIB4NUBVARBPROC) (GLuint index, const GLubyte *v);
03245         typedef void (APIENTRY * PFNGLVERTEXATTRIB4NUIVARBPROC) (GLuint index, const GLuint *v);
03246         typedef void (APIENTRY * PFNGLVERTEXATTRIB4NUSVARBPROC) (GLuint index, const GLushort *v);
03247         typedef void (APIENTRY * PFNGLVERTEXATTRIB4BVARBPROC) (GLuint index, const GLbyte *v);
03248         typedef void (APIENTRY * PFNGLVERTEXATTRIB4DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
03249         typedef void (APIENTRY * PFNGLVERTEXATTRIB4DVARBPROC) (GLuint index, const GLdouble *v);
03250         typedef void (APIENTRY * PFNGLVERTEXATTRIB4FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
03251         typedef void (APIENTRY * PFNGLVERTEXATTRIB4FVARBPROC) (GLuint index, const GLfloat *v);
03252         typedef void (APIENTRY * PFNGLVERTEXATTRIB4IVARBPROC) (GLuint index, const GLint *v);
03253         typedef void (APIENTRY * PFNGLVERTEXATTRIB4SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
03254         typedef void (APIENTRY * PFNGLVERTEXATTRIB4SVARBPROC) (GLuint index, const GLshort *v);
03255         typedef void (APIENTRY * PFNGLVERTEXATTRIB4UBVARBPROC) (GLuint index, const GLubyte *v);
03256         typedef void (APIENTRY * PFNGLVERTEXATTRIB4UIVARBPROC) (GLuint index, const GLuint *v);
03257         typedef void (APIENTRY * PFNGLVERTEXATTRIB4USVARBPROC) (GLuint index, const GLushort *v);
03258         typedef void (APIENTRY * PFNGLVERTEXATTRIBPOINTERARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
03259         typedef void (APIENTRY * PFNGLENABLEVERTEXATTRIBARRAYARBPROC) (GLuint index);
03260         typedef void (APIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYARBPROC) (GLuint index);
03261         typedef void (APIENTRY * PFNGLPROGRAMSTRINGARBPROC) (GLenum target, GLenum format, GLsizei len, const GLvoid *string);
03262         typedef void (APIENTRY * PFNGLBINDPROGRAMARBPROC) (GLenum target, GLuint program);
03263         typedef void (APIENTRY * PFNGLDELETEPROGRAMSARBPROC) (GLsizei n, const GLuint *programs);
03264         typedef void (APIENTRY * PFNGLGENPROGRAMSARBPROC) (GLsizei n, GLuint *programs);
03265         typedef void (APIENTRY * PFNGLPROGRAMENVPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
03266         typedef void (APIENTRY * PFNGLPROGRAMENVPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble *params);
03267         typedef void (APIENTRY * PFNGLPROGRAMENVPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
03268         typedef void (APIENTRY * PFNGLPROGRAMENVPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat *params);
03269         typedef void (APIENTRY * PFNGLPROGRAMLOCALPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
03270         typedef void (APIENTRY * PFNGLPROGRAMLOCALPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble *params);
03271         typedef void (APIENTRY * PFNGLPROGRAMLOCALPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
03272         typedef void (APIENTRY * PFNGLPROGRAMLOCALPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat *params);
03273         typedef void (APIENTRY * PFNGLGETPROGRAMENVPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble *params);
03274         typedef void (APIENTRY * PFNGLGETPROGRAMENVPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat *params);
03275         typedef void (APIENTRY * PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble *params);
03276         typedef void (APIENTRY * PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat *params);
03277         typedef void (APIENTRY * PFNGLGETPROGRAMIVARBPROC) (GLenum target, GLenum pname, GLint *params);
03278         typedef void (APIENTRY * PFNGLGETPROGRAMSTRINGARBPROC) (GLenum target, GLenum pname, GLvoid *string);
03279         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBDVARBPROC) (GLuint index, GLenum pname, GLdouble *params);
03280         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBFVARBPROC) (GLuint index, GLenum pname, GLfloat *params);
03281         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBIVARBPROC) (GLuint index, GLenum pname, GLint *params);
03282         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBPOINTERVARBPROC) (GLuint index, GLenum pname, GLvoid* *pointer);
03283         typedef GLboolean (APIENTRY * PFNGLISPROGRAMARBPROC) (GLuint program);
03284 #endif
03285
03286 #ifndef GL_ARB_fragment_program
03287 #define GL_ARB_fragment_program 1
03288         /* All ARB_fragment_program entry points are shared with ARB_vertex_program. */
03289 #endif
03290
03291 #ifndef GL_ARB_vertex_buffer_object
03292 #define GL_ARB_vertex_buffer_object 1
03293         /* GL types for handling large vertex buffer objects */
03294         /* Only used by this extension for now; later needs to be moved earlier in glext.h */
03295 #include <stddef.h>
03296         typedef ptrdiff_t GLintptrARB;
03297         typedef ptrdiff_t GLsizeiptrARB;
03298 #ifdef GL_GLEXT_PROTOTYPES
03299         GLAPI void APIENTRY glBindBufferARB (GLenum, GLuint);
03300         GLAPI void APIENTRY glDeleteBuffersARB (GLsizei, const GLuint *);
03301         GLAPI void APIENTRY glGenBuffersARB (GLsizei, GLuint *);
03302         GLAPI GLboolean APIENTRY glIsBufferARB (GLuint);
03303         GLAPI void APIENTRY glBufferDataARB (GLenum, GLsizeiptrARB, const GLvoid *, GLenum);
03304         GLAPI void APIENTRY glBufferSubDataARB (GLenum, GLintptrARB, GLsizeiptrARB, const GLvoid *);
03305         GLAPI void APIENTRY glGetBufferSubDataARB (GLenum, GLintptrARB, GLsizeiptrARB, GLvoid *);
03306         GLAPI GLvoid* APIENTRY glMapBufferARB (GLenum, GLenum);
03307         GLAPI GLboolean APIENTRY glUnmapBufferARB (GLenum);
03308         GLAPI void APIENTRY glGetBufferParameterivARB (GLenum, GLenum, GLint *);
03309         GLAPI void APIENTRY glGetBufferPointervARB (GLenum, GLenum, GLvoid* *);
03310 #endif /* GL_GLEXT_PROTOTYPES */
03311         typedef void (APIENTRY * PFNGLBINDBUFFERARBPROC) (GLenum target, GLuint buffer);
03312         typedef void (APIENTRY * PFNGLDELETEBUFFERSARBPROC) (GLsizei n, const GLuint *buffers);
03313         typedef void (APIENTRY * PFNGLGENBUFFERSARBPROC) (GLsizei n, GLuint *buffers);
03314         typedef GLboolean (APIENTRY * PFNGLISBUFFERARBPROC) (GLuint buffer);
03315         typedef void (APIENTRY * PFNGLBUFFERDATAARBPROC) (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage);
03316         typedef void (APIENTRY * PFNGLBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data);
03317         typedef void (APIENTRY * PFNGLGETBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data);
03318         typedef GLvoid* (APIENTRY * PFNGLMAPBUFFERARBPROC) (GLenum target, GLenum access);
03319         typedef GLboolean (APIENTRY * PFNGLUNMAPBUFFERARBPROC) (GLenum target);
03320         typedef void (APIENTRY * PFNGLGETBUFFERPARAMETERIVARBPROC) (GLenum target, GLenum pname, GLint *params);
03321         typedef void (APIENTRY * PFNGLGETBUFFERPOINTERVARBPROC) (GLenum target, GLenum pname, GLvoid* *params);
03322 #endif
03323
03324 #ifndef GL_EXT_abgr
03325 #define GL_EXT_abgr 1
03326 #endif
03327
03328 #ifndef GL_EXT_blend_color
03329 #define GL_EXT_blend_color 1
03330 #ifdef GL_GLEXT_PROTOTYPES
03331         GLAPI void APIENTRY glBlendColorEXT (GLclampf, GLclampf, GLclampf, GLclampf);
03332 #endif /* GL_GLEXT_PROTOTYPES */
03333         typedef void (APIENTRY * PFNGLBLENDCOLOREXTPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
03334 #endif
03335
03336 #ifndef GL_EXT_polygon_offset
03337 #define GL_EXT_polygon_offset 1
03338 #ifdef GL_GLEXT_PROTOTYPES
03339         GLAPI void APIENTRY glPolygonOffsetEXT (GLfloat, GLfloat);
03340 #endif /* GL_GLEXT_PROTOTYPES */
03341         typedef void (APIENTRY * PFNGLPOLYGONOFFSETEXTPROC) (GLfloat factor, GLfloat bias);
03342 #endif
03343
03344 #ifndef GL_EXT_texture
03345 #define GL_EXT_texture 1
03346 #endif
03347
03348 #ifndef GL_EXT_texture3D
03349 #define GL_EXT_texture3D 1
03350 #ifdef GL_GLEXT_PROTOTYPES
03351         GLAPI void APIENTRY glTexImage3DEXT (GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
03352         GLAPI void APIENTRY glTexSubImage3DEXT (GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
03353 #endif /* GL_GLEXT_PROTOTYPES */
03354         typedef void (APIENTRY * PFNGLTEXIMAGE3DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
03355         typedef void (APIENTRY * PFNGLTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
03356 #endif
03357
03358 #ifndef GL_SGIS_texture_filter4
03359 #define GL_SGIS_texture_filter4 1
03360 #ifdef GL_GLEXT_PROTOTYPES
03361         GLAPI void APIENTRY glGetTexFilterFuncSGIS (GLenum, GLenum, GLfloat *);
03362         GLAPI void APIENTRY glTexFilterFuncSGIS (GLenum, GLenum, GLsizei, const GLfloat *);
03363 #endif /* GL_GLEXT_PROTOTYPES */
03364         typedef void (APIENTRY * PFNGLGETTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLfloat *weights);
03365         typedef void (APIENTRY * PFNGLTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLsizei n, const GLfloat *weights);
03366 #endif
03367
03368 #ifndef GL_EXT_subtexture
03369 #define GL_EXT_subtexture 1
03370 #ifdef GL_GLEXT_PROTOTYPES
03371         GLAPI void APIENTRY glTexSubImage1DEXT (GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const GLvoid *);
03372         GLAPI void APIENTRY glTexSubImage2DEXT (GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
03373 #endif /* GL_GLEXT_PROTOTYPES */
03374         typedef void (APIENTRY * PFNGLTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
03375         typedef void (APIENTRY * PFNGLTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
03376 #endif
03377
03378 #ifndef GL_EXT_copy_texture
03379 #define GL_EXT_copy_texture 1
03380 #ifdef GL_GLEXT_PROTOTYPES
03381         GLAPI void APIENTRY glCopyTexImage1DEXT (GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint);
03382         GLAPI void APIENTRY glCopyTexImage2DEXT (GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint);
03383         GLAPI void APIENTRY glCopyTexSubImage1DEXT (GLenum, GLint, GLint, GLint, GLint, GLsizei);
03384         GLAPI void APIENTRY glCopyTexSubImage2DEXT (GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
03385         GLAPI void APIENTRY glCopyTexSubImage3DEXT (GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
03386 #endif /* GL_GLEXT_PROTOTYPES */
03387         typedef void (APIENTRY * PFNGLCOPYTEXIMAGE1DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
03388         typedef void (APIENTRY * PFNGLCOPYTEXIMAGE2DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
03389         typedef void (APIENTRY * PFNGLCOPYTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
03390         typedef void (APIENTRY * PFNGLCOPYTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
03391         typedef void (APIENTRY * PFNGLCOPYTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
03392 #endif
03393
03394 #ifndef GL_EXT_histogram
03395 #define GL_EXT_histogram 1
03396 #ifdef GL_GLEXT_PROTOTYPES
03397         GLAPI void APIENTRY glGetHistogramEXT (GLenum, GLboolean, GLenum, GLenum, GLvoid *);
03398         GLAPI void APIENTRY glGetHistogramParameterfvEXT (GLenum, GLenum, GLfloat *);
03399         GLAPI void APIENTRY glGetHistogramParameterivEXT (GLenum, GLenum, GLint *);
03400         GLAPI void APIENTRY glGetMinmaxEXT (GLenum, GLboolean, GLenum, GLenum, GLvoid *);
03401         GLAPI void APIENTRY glGetMinmaxParameterfvEXT (GLenum, GLenum, GLfloat *);
03402         GLAPI void APIENTRY glGetMinmaxParameterivEXT (GLenum, GLenum, GLint *);
03403         GLAPI void APIENTRY glHistogramEXT (GLenum, GLsizei, GLenum, GLboolean);
03404         GLAPI void APIENTRY glMinmaxEXT (GLenum, GLenum, GLboolean);
03405         GLAPI void APIENTRY glResetHistogramEXT (GLenum);
03406         GLAPI void APIENTRY glResetMinmaxEXT (GLenum);
03407 #endif /* GL_GLEXT_PROTOTYPES */
03408         typedef void (APIENTRY * PFNGLGETHISTOGRAMEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
03409         typedef void (APIENTRY * PFNGLGETHISTOGRAMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
03410         typedef void (APIENTRY * PFNGLGETHISTOGRAMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
03411         typedef void (APIENTRY * PFNGLGETMINMAXEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
03412         typedef void (APIENTRY * PFNGLGETMINMAXPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
03413         typedef void (APIENTRY * PFNGLGETMINMAXPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
03414         typedef void (APIENTRY * PFNGLHISTOGRAMEXTPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
03415         typedef void (APIENTRY * PFNGLMINMAXEXTPROC) (GLenum target, GLenum internalformat, GLboolean sink);
03416         typedef void (APIENTRY * PFNGLRESETHISTOGRAMEXTPROC) (GLenum target);
03417         typedef void (APIENTRY * PFNGLRESETMINMAXEXTPROC) (GLenum target);
03418 #endif
03419
03420 #ifndef GL_EXT_convolution
03421 #define GL_EXT_convolution 1
03422 #ifdef GL_GLEXT_PROTOTYPES
03423         GLAPI void APIENTRY glConvolutionFilter1DEXT (GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *);
03424         GLAPI void APIENTRY glConvolutionFilter2DEXT (GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
03425         GLAPI void APIENTRY glConvolutionParameterfEXT (GLenum, GLenum, GLfloat);
03426         GLAPI void APIENTRY glConvolutionParameterfvEXT (GLenum, GLenum, const GLfloat *);
03427         GLAPI void APIENTRY glConvolutionParameteriEXT (GLenum, GLenum, GLint);
03428         GLAPI void APIENTRY glConvolutionParameterivEXT (GLenum, GLenum, const GLint *);
03429         GLAPI void APIENTRY glCopyConvolutionFilter1DEXT (GLenum, GLenum, GLint, GLint, GLsizei);
03430         GLAPI void APIENTRY glCopyConvolutionFilter2DEXT (GLenum, GLenum, GLint, GLint, GLsizei, GLsizei);
03431         GLAPI void APIENTRY glGetConvolutionFilterEXT (GLenum, GLenum, GLenum, GLvoid *);
03432         GLAPI void APIENTRY glGetConvolutionParameterfvEXT (GLenum, GLenum, GLfloat *);
03433         GLAPI void APIENTRY glGetConvolutionParameterivEXT (GLenum, GLenum, GLint *);
03434         GLAPI void APIENTRY glGetSeparableFilterEXT (GLenum, GLenum, GLenum, GLvoid *, GLvoid *, GLvoid *);
03435         GLAPI void APIENTRY glSeparableFilter2DEXT (GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *, const GLvoid *);
03436 #endif /* GL_GLEXT_PROTOTYPES */
03437         typedef void (APIENTRY * PFNGLCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
03438         typedef void (APIENTRY * PFNGLCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
03439         typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat params);
03440         typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat *params);
03441         typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint params);
03442         typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint *params);
03443         typedef void (APIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
03444         typedef void (APIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
03445         typedef void (APIENTRY * PFNGLGETCONVOLUTIONFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image);
03446         typedef void (APIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
03447         typedef void (APIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
03448         typedef void (APIENTRY * PFNGLGETSEPARABLEFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
03449         typedef void (APIENTRY * PFNGLSEPARABLEFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
03450 #endif
03451
03452 #ifndef GL_EXT_color_matrix
03453 #define GL_EXT_color_matrix 1
03454 #endif
03455
03456 #ifndef GL_SGI_color_table
03457 #define GL_SGI_color_table 1
03458 #ifdef GL_GLEXT_PROTOTYPES
03459         GLAPI void APIENTRY glColorTableSGI (GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *);
03460         GLAPI void APIENTRY glColorTableParameterfvSGI (GLenum, GLenum, const GLfloat *);
03461         GLAPI void APIENTRY glColorTableParameterivSGI (GLenum, GLenum, const GLint *);
03462         GLAPI void APIENTRY glCopyColorTableSGI (GLenum, GLenum, GLint, GLint, GLsizei);
03463         GLAPI void APIENTRY glGetColorTableSGI (GLenum, GLenum, GLenum, GLvoid *);
03464         GLAPI void APIENTRY glGetColorTableParameterfvSGI (GLenum, GLenum, GLfloat *);
03465         GLAPI void APIENTRY glGetColorTableParameterivSGI (GLenum, GLenum, GLint *);
03466 #endif /* GL_GLEXT_PROTOTYPES */
03467         typedef void (APIENTRY * PFNGLCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
03468         typedef void (APIENTRY * PFNGLCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat *params);
03469         typedef void (APIENTRY * PFNGLCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint *params);
03470         typedef void (APIENTRY * PFNGLCOPYCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
03471         typedef void (APIENTRY * PFNGLGETCOLORTABLESGIPROC) (GLenum target, GLenum format, GLenum type, GLvoid *table);
03472         typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat *params);
03473         typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint *params);
03474 #endif
03475
03476 #ifndef GL_SGIX_pixel_texture
03477 #define GL_SGIX_pixel_texture 1
03478 #ifdef GL_GLEXT_PROTOTYPES
03479         GLAPI void APIENTRY glPixelTexGenSGIX (GLenum);
03480 #endif /* GL_GLEXT_PROTOTYPES */
03481         typedef void (APIENTRY * PFNGLPIXELTEXGENSGIXPROC) (GLenum mode);
03482 #endif
03483
03484 #ifndef GL_SGIS_pixel_texture
03485 #define GL_SGIS_pixel_texture 1
03486 #ifdef GL_GLEXT_PROTOTYPES
03487         GLAPI void APIENTRY glPixelTexGenParameteriSGIS (GLenum, GLint);
03488         GLAPI void APIENTRY glPixelTexGenParameterivSGIS (GLenum, const GLint *);
03489         GLAPI void APIENTRY glPixelTexGenParameterfSGIS (GLenum, GLfloat);
03490         GLAPI void APIENTRY glPixelTexGenParameterfvSGIS (GLenum, const GLfloat *);
03491         GLAPI void APIENTRY glGetPixelTexGenParameterivSGIS (GLenum, GLint *);
03492         GLAPI void APIENTRY glGetPixelTexGenParameterfvSGIS (GLenum, GLfloat *);
03493 #endif /* GL_GLEXT_PROTOTYPES */
03494         typedef void (APIENTRY * PFNGLPIXELTEXGENPARAMETERISGISPROC) (GLenum pname, GLint param);
03495         typedef void (APIENTRY * PFNGLPIXELTEXGENPARAMETERIVSGISPROC) (GLenum pname, const GLint *params);
03496         typedef void (APIENTRY * PFNGLPIXELTEXGENPARAMETERFSGISPROC) (GLenum pname, GLfloat param);
03497         typedef void (APIENTRY * PFNGLPIXELTEXGENPARAMETERFVSGISPROC) (GLenum pname, const GLfloat *params);
03498         typedef void (APIENTRY * PFNGLGETPIXELTEXGENPARAMETERIVSGISPROC) (GLenum pname, GLint *params);
03499         typedef void (APIENTRY * PFNGLGETPIXELTEXGENPARAMETERFVSGISPROC) (GLenum pname, GLfloat *params);
03500 #endif
03501
03502 #ifndef GL_SGIS_texture4D
03503 #define GL_SGIS_texture4D 1
03504 #ifdef GL_GLEXT_PROTOTYPES
03505         GLAPI void APIENTRY glTexImage4DSGIS (GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
03506         GLAPI void APIENTRY glTexSubImage4DSGIS (GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
03507 #endif /* GL_GLEXT_PROTOTYPES */
03508         typedef void (APIENTRY * PFNGLTEXIMAGE4DSGISPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
03509         typedef void (APIENTRY * PFNGLTEXSUBIMAGE4DSGISPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLenum format, GLenum type, const GLvoid *pixels);
03510 #endif
03511
03512 #ifndef GL_SGI_texture_color_table
03513 #define GL_SGI_texture_color_table 1
03514 #endif
03515
03516 #ifndef GL_EXT_cmyka
03517 #define GL_EXT_cmyka 1
03518 #endif
03519
03520 #ifndef GL_EXT_texture_object
03521 #define GL_EXT_texture_object 1
03522 #ifdef GL_GLEXT_PROTOTYPES
03523         GLAPI GLboolean APIENTRY glAreTexturesResidentEXT (GLsizei, const GLuint *, GLboolean *);
03524         GLAPI void APIENTRY glBindTextureEXT (GLenum, GLuint);
03525         GLAPI void APIENTRY glDeleteTexturesEXT (GLsizei, const GLuint *);
03526         GLAPI void APIENTRY glGenTexturesEXT (GLsizei, GLuint *);
03527         GLAPI GLboolean APIENTRY glIsTextureEXT (GLuint);
03528         GLAPI void APIENTRY glPrioritizeTexturesEXT (GLsizei, const GLuint *, const GLclampf *);
03529 #endif /* GL_GLEXT_PROTOTYPES */
03530         typedef GLboolean (APIENTRY * PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n, const GLuint *textures, GLboolean *residences);
03531         typedef void (APIENTRY * PFNGLBINDTEXTUREEXTPROC) (GLenum target, GLuint texture);
03532         typedef void (APIENTRY * PFNGLDELETETEXTURESEXTPROC) (GLsizei n, const GLuint *textures);
03533         typedef void (APIENTRY * PFNGLGENTEXTURESEXTPROC) (GLsizei n, GLuint *textures);
03534         typedef GLboolean (APIENTRY * PFNGLISTEXTUREEXTPROC) (GLuint texture);
03535         typedef void (APIENTRY * PFNGLPRIORITIZETEXTURESEXTPROC) (GLsizei n, const GLuint *textures, const GLclampf *priorities);
03536 #endif
03537
03538 #ifndef GL_SGIS_detail_texture
03539 #define GL_SGIS_detail_texture 1
03540 #ifdef GL_GLEXT_PROTOTYPES
03541         GLAPI void APIENTRY glDetailTexFuncSGIS (GLenum, GLsizei, const GLfloat *);
03542         GLAPI void APIENTRY glGetDetailTexFuncSGIS (GLenum, GLfloat *);
03543 #endif /* GL_GLEXT_PROTOTYPES */
03544         typedef void (APIENTRY * PFNGLDETAILTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat *points);
03545         typedef void (APIENTRY * PFNGLGETDETAILTEXFUNCSGISPROC) (GLenum target, GLfloat *points);
03546 #endif
03547
03548 #ifndef GL_SGIS_sharpen_texture
03549 #define GL_SGIS_sharpen_texture 1
03550 #ifdef GL_GLEXT_PROTOTYPES
03551         GLAPI void APIENTRY glSharpenTexFuncSGIS (GLenum, GLsizei, const GLfloat *);
03552         GLAPI void APIENTRY glGetSharpenTexFuncSGIS (GLenum, GLfloat *);
03553 #endif /* GL_GLEXT_PROTOTYPES */
03554         typedef void (APIENTRY * PFNGLSHARPENTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat *points);
03555         typedef void (APIENTRY * PFNGLGETSHARPENTEXFUNCSGISPROC) (GLenum target, GLfloat *points);
03556 #endif
03557
03558 #ifndef GL_EXT_packed_pixels
03559 #define GL_EXT_packed_pixels 1
03560 #endif
03561
03562 #ifndef GL_SGIS_texture_lod
03563 #define GL_SGIS_texture_lod 1
03564 #endif
03565
03566 #ifndef GL_SGIS_multisample
03567 #define GL_SGIS_multisample 1
03568 #ifdef GL_GLEXT_PROTOTYPES
03569         GLAPI void APIENTRY glSampleMaskSGIS (GLclampf, GLboolean);
03570         GLAPI void APIENTRY glSamplePatternSGIS (GLenum);
03571 #endif /* GL_GLEXT_PROTOTYPES */
03572         typedef void (APIENTRY * PFNGLSAMPLEMASKSGISPROC) (GLclampf value, GLboolean invert);
03573         typedef void (APIENTRY * PFNGLSAMPLEPATTERNSGISPROC) (GLenum pattern);
03574 #endif
03575
03576 #ifndef GL_EXT_rescale_normal
03577 #define GL_EXT_rescale_normal 1
03578 #endif
03579
03580 #ifndef GL_EXT_vertex_array
03581 #define GL_EXT_vertex_array 1
03582 #ifdef GL_GLEXT_PROTOTYPES
03583         GLAPI void APIENTRY glArrayElementEXT (GLint);
03584         GLAPI void APIENTRY glColorPointerEXT (GLint, GLenum, GLsizei, GLsizei, const GLvoid *);
03585         GLAPI void APIENTRY glDrawArraysEXT (GLenum, GLint, GLsizei);
03586         GLAPI void APIENTRY glEdgeFlagPointerEXT (GLsizei, GLsizei, const GLboolean *);
03587         GLAPI void APIENTRY glGetPointervEXT (GLenum, GLvoid* *);
03588         GLAPI void APIENTRY glIndexPointerEXT (GLenum, GLsizei, GLsizei, const GLvoid *);
03589         GLAPI void APIENTRY glNormalPointerEXT (GLenum, GLsizei, GLsizei, const GLvoid *);
03590         GLAPI void APIENTRY glTexCoordPointerEXT (GLint, GLenum, GLsizei, GLsizei, const GLvoid *);
03591         GLAPI void APIENTRY glVertexPointerEXT (GLint, GLenum, GLsizei, GLsizei, const GLvoid *);
03592 #endif /* GL_GLEXT_PROTOTYPES */
03593         typedef void (APIENTRY * PFNGLARRAYELEMENTEXTPROC) (GLint i);
03594         typedef void (APIENTRY * PFNGLCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
03595         typedef void (APIENTRY * PFNGLDRAWARRAYSEXTPROC) (GLenum mode, GLint first, GLsizei count);
03596         typedef void (APIENTRY * PFNGLEDGEFLAGPOINTEREXTPROC) (GLsizei stride, GLsizei count, const GLboolean *pointer);
03597         typedef void (APIENTRY * PFNGLGETPOINTERVEXTPROC) (GLenum pname, GLvoid* *params);
03598         typedef void (APIENTRY * PFNGLINDEXPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
03599         typedef void (APIENTRY * PFNGLNORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
03600         typedef void (APIENTRY * PFNGLTEXCOORDPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
03601         typedef void (APIENTRY * PFNGLVERTEXPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
03602 #endif
03603
03604 #ifndef GL_EXT_misc_attribute
03605 #define GL_EXT_misc_attribute 1
03606 #endif
03607
03608 #ifndef GL_SGIS_generate_mipmap
03609 #define GL_SGIS_generate_mipmap 1
03610 #endif
03611
03612 #ifndef GL_SGIX_clipmap
03613 #define GL_SGIX_clipmap 1
03614 #endif
03615
03616 #ifndef GL_SGIX_shadow
03617 #define GL_SGIX_shadow 1
03618 #endif
03619
03620 #ifndef GL_SGIS_texture_edge_clamp
03621 #define GL_SGIS_texture_edge_clamp 1
03622 #endif
03623
03624 #ifndef GL_SGIS_texture_border_clamp
03625 #define GL_SGIS_texture_border_clamp 1
03626 #endif
03627
03628 #ifndef GL_EXT_blend_minmax
03629 #define GL_EXT_blend_minmax 1
03630 #ifdef GL_GLEXT_PROTOTYPES
03631         GLAPI void APIENTRY glBlendEquationEXT (GLenum);
03632 #endif /* GL_GLEXT_PROTOTYPES */
03633         typedef void (APIENTRY * PFNGLBLENDEQUATIONEXTPROC) (GLenum mode);
03634 #endif
03635
03636 #ifndef GL_EXT_blend_subtract
03637 #define GL_EXT_blend_subtract 1
03638 #endif
03639
03640 #ifndef GL_EXT_blend_logic_op
03641 #define GL_EXT_blend_logic_op 1
03642 #endif
03643
03644 #ifndef GL_SGIX_interlace
03645 #define GL_SGIX_interlace 1
03646 #endif
03647
03648 #ifndef GL_SGIX_pixel_tiles
03649 #define GL_SGIX_pixel_tiles 1
03650 #endif
03651
03652 #ifndef GL_SGIX_texture_select
03653 #define GL_SGIX_texture_select 1
03654 #endif
03655
03656 #ifndef GL_SGIX_sprite
03657 #define GL_SGIX_sprite 1
03658 #ifdef GL_GLEXT_PROTOTYPES
03659         GLAPI void APIENTRY glSpriteParameterfSGIX (GLenum, GLfloat);
03660         GLAPI void APIENTRY glSpriteParameterfvSGIX (GLenum, const GLfloat *);
03661         GLAPI void APIENTRY glSpriteParameteriSGIX (GLenum, GLint);
03662         GLAPI void APIENTRY glSpriteParameterivSGIX (GLenum, const GLint *);
03663 #endif /* GL_GLEXT_PROTOTYPES */
03664         typedef void (APIENTRY * PFNGLSPRITEPARAMETERFSGIXPROC) (GLenum pname, GLfloat param);
03665         typedef void (APIENTRY * PFNGLSPRITEPARAMETERFVSGIXPROC) (GLenum pname, const GLfloat *params);
03666         typedef void (APIENTRY * PFNGLSPRITEPARAMETERISGIXPROC) (GLenum pname, GLint param);
03667         typedef void (APIENTRY * PFNGLSPRITEPARAMETERIVSGIXPROC) (GLenum pname, const GLint *params);
03668 #endif
03669
03670 #ifndef GL_SGIX_texture_multi_buffer
03671 #define GL_SGIX_texture_multi_buffer 1
03672 #endif
03673
03674 #ifndef GL_EXT_point_parameters
03675 #define GL_EXT_point_parameters 1
03676 #ifdef GL_GLEXT_PROTOTYPES
03677         GLAPI void APIENTRY glPointParameterfEXT (GLenum, GLfloat);
03678         GLAPI void APIENTRY glPointParameterfvEXT (GLenum, const GLfloat *);
03679 #endif /* GL_GLEXT_PROTOTYPES */
03680         typedef void (APIENTRY * PFNGLPOINTPARAMETERFEXTPROC) (GLenum pname, GLfloat param);
03681         typedef void (APIENTRY * PFNGLPOINTPARAMETERFVEXTPROC) (GLenum pname, const GLfloat *params);
03682 #endif
03683
03684 #ifndef GL_SGIS_point_parameters
03685 #define GL_SGIS_point_parameters 1
03686 #ifdef GL_GLEXT_PROTOTYPES
03687         GLAPI void APIENTRY glPointParameterfSGIS (GLenum, GLfloat);
03688         GLAPI void APIENTRY glPointParameterfvSGIS (GLenum, const GLfloat *);
03689 #endif /* GL_GLEXT_PROTOTYPES */
03690         typedef void (APIENTRY * PFNGLPOINTPARAMETERFSGISPROC) (GLenum pname, GLfloat param);
03691         typedef void (APIENTRY * PFNGLPOINTPARAMETERFVSGISPROC) (GLenum pname, const GLfloat *params);
03692 #endif
03693
03694 #ifndef GL_SGIX_instruments
03695 #define GL_SGIX_instruments 1
03696 #ifdef GL_GLEXT_PROTOTYPES
03697         GLAPI GLint APIENTRY glGetInstrumentsSGIX (void);
03698         GLAPI void APIENTRY glInstrumentsBufferSGIX (GLsizei, GLint *);
03699         GLAPI GLint APIENTRY glPollInstrumentsSGIX (GLint *);
03700         GLAPI void APIENTRY glReadInstrumentsSGIX (GLint);
03701         GLAPI void APIENTRY glStartInstrumentsSGIX (void);
03702         GLAPI void APIENTRY glStopInstrumentsSGIX (GLint);
03703 #endif /* GL_GLEXT_PROTOTYPES */
03704         typedef GLint (APIENTRY * PFNGLGETINSTRUMENTSSGIXPROC) (void);
03705         typedef void (APIENTRY * PFNGLINSTRUMENTSBUFFERSGIXPROC) (GLsizei size, GLint *buffer);
03706         typedef GLint (APIENTRY * PFNGLPOLLINSTRUMENTSSGIXPROC) (GLint *marker_p);
03707         typedef void (APIENTRY * PFNGLREADINSTRUMENTSSGIXPROC) (GLint marker);
03708         typedef void (APIENTRY * PFNGLSTARTINSTRUMENTSSGIXPROC) (void);
03709         typedef void (APIENTRY * PFNGLSTOPINSTRUMENTSSGIXPROC) (GLint marker);
03710 #endif
03711
03712 #ifndef GL_SGIX_texture_scale_bias
03713 #define GL_SGIX_texture_scale_bias 1
03714 #endif
03715
03716 #ifndef GL_SGIX_framezoom
03717 #define GL_SGIX_framezoom 1
03718 #ifdef GL_GLEXT_PROTOTYPES
03719         GLAPI void APIENTRY glFrameZoomSGIX (GLint);
03720 #endif /* GL_GLEXT_PROTOTYPES */
03721         typedef void (APIENTRY * PFNGLFRAMEZOOMSGIXPROC) (GLint factor);
03722 #endif
03723
03724 #ifndef GL_SGIX_tag_sample_buffer
03725 #define GL_SGIX_tag_sample_buffer 1
03726 #ifdef GL_GLEXT_PROTOTYPES
03727         GLAPI void APIENTRY glTagSampleBufferSGIX (void);
03728 #endif /* GL_GLEXT_PROTOTYPES */
03729         typedef void (APIENTRY * PFNGLTAGSAMPLEBUFFERSGIXPROC) (void);
03730 #endif
03731
03732 #ifndef GL_SGIX_polynomial_ffd
03733 #define GL_SGIX_polynomial_ffd 1
03734 #ifdef GL_GLEXT_PROTOTYPES
03735         GLAPI void APIENTRY glDeformationMap3dSGIX (GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, const GLdouble *);
03736         GLAPI void APIENTRY glDeformationMap3fSGIX (GLenum, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, const GLfloat *);
03737         GLAPI void APIENTRY glDeformSGIX (GLbitfield);
03738         GLAPI void APIENTRY glLoadIdentityDeformationMapSGIX (GLbitfield);
03739 #endif /* GL_GLEXT_PROTOTYPES */
03740         typedef void (APIENTRY * PFNGLDEFORMATIONMAP3DSGIXPROC) (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, GLdouble w1, GLdouble w2, GLint wstride, GLint worder, const GLdouble *points);
03741         typedef void (APIENTRY * PFNGLDEFORMATIONMAP3FSGIXPROC) (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, GLfloat w1, GLfloat w2, GLint wstride, GLint worder, const GLfloat *points);
03742         typedef void (APIENTRY * PFNGLDEFORMSGIXPROC) (GLbitfield mask);
03743         typedef void (APIENTRY * PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC) (GLbitfield mask);
03744 #endif
03745
03746 #ifndef GL_SGIX_reference_plane
03747 #define GL_SGIX_reference_plane 1
03748 #ifdef GL_GLEXT_PROTOTYPES
03749         GLAPI void APIENTRY glReferencePlaneSGIX (const GLdouble *);
03750 #endif /* GL_GLEXT_PROTOTYPES */
03751         typedef void (APIENTRY * PFNGLREFERENCEPLANESGIXPROC) (const GLdouble *equation);
03752 #endif
03753
03754 #ifndef GL_SGIX_flush_raster
03755 #define GL_SGIX_flush_raster 1
03756 #ifdef GL_GLEXT_PROTOTYPES
03757         GLAPI void APIENTRY glFlushRasterSGIX (void);
03758 #endif /* GL_GLEXT_PROTOTYPES */
03759         typedef void (APIENTRY * PFNGLFLUSHRASTERSGIXPROC) (void);
03760 #endif
03761
03762 #ifndef GL_SGIX_depth_texture
03763 #define GL_SGIX_depth_texture 1
03764 #endif
03765
03766 #ifndef GL_SGIS_fog_function
03767 #define GL_SGIS_fog_function 1
03768 #ifdef GL_GLEXT_PROTOTYPES
03769         GLAPI void APIENTRY glFogFuncSGIS (GLsizei, const GLfloat *);
03770         GLAPI void APIENTRY glGetFogFuncSGIS (GLfloat *);
03771 #endif /* GL_GLEXT_PROTOTYPES */
03772         typedef void (APIENTRY * PFNGLFOGFUNCSGISPROC) (GLsizei n, const GLfloat *points);
03773         typedef void (APIENTRY * PFNGLGETFOGFUNCSGISPROC) (GLfloat *points);
03774 #endif
03775
03776 #ifndef GL_SGIX_fog_offset
03777 #define GL_SGIX_fog_offset 1
03778 #endif
03779
03780 #ifndef GL_HP_image_transform
03781 #define GL_HP_image_transform 1
03782 #ifdef GL_GLEXT_PROTOTYPES
03783         GLAPI void APIENTRY glImageTransformParameteriHP (GLenum, GLenum, GLint);
03784         GLAPI void APIENTRY glImageTransformParameterfHP (GLenum, GLenum, GLfloat);
03785         GLAPI void APIENTRY glImageTransformParameterivHP (GLenum, GLenum, const GLint *);
03786         GLAPI void APIENTRY glImageTransformParameterfvHP (GLenum, GLenum, const GLfloat *);
03787         GLAPI void APIENTRY glGetImageTransformParameterivHP (GLenum, GLenum, GLint *);
03788         GLAPI void APIENTRY glGetImageTransformParameterfvHP (GLenum, GLenum, GLfloat *);
03789 #endif /* GL_GLEXT_PROTOTYPES */
03790         typedef void (APIENTRY * PFNGLIMAGETRANSFORMPARAMETERIHPPROC) (GLenum target, GLenum pname, GLint param);
03791         typedef void (APIENTRY * PFNGLIMAGETRANSFORMPARAMETERFHPPROC) (GLenum target, GLenum pname, GLfloat param);
03792         typedef void (APIENTRY * PFNGLIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint *params);
03793         typedef void (APIENTRY * PFNGLIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat *params);
03794         typedef void (APIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, GLint *params);
03795         typedef void (APIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, GLfloat *params);
03796 #endif
03797
03798 #ifndef GL_HP_convolution_border_modes
03799 #define GL_HP_convolution_border_modes 1
03800 #endif
03801
03802 #ifndef GL_SGIX_texture_add_env
03803 #define GL_SGIX_texture_add_env 1
03804 #endif
03805
03806 #ifndef GL_EXT_color_subtable
03807 #define GL_EXT_color_subtable 1
03808 #ifdef GL_GLEXT_PROTOTYPES
03809         GLAPI void APIENTRY glColorSubTableEXT (GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
03810         GLAPI void APIENTRY glCopyColorSubTableEXT (GLenum, GLsizei, GLint, GLint, GLsizei);
03811 #endif /* GL_GLEXT_PROTOTYPES */
03812         typedef void (APIENTRY * PFNGLCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
03813         typedef void (APIENTRY * PFNGLCOPYCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
03814 #endif
03815
03816 #ifndef GL_PGI_vertex_hints
03817 #define GL_PGI_vertex_hints 1
03818 #endif
03819
03820 #ifndef GL_PGI_misc_hints
03821 #define GL_PGI_misc_hints 1
03822 #ifdef GL_GLEXT_PROTOTYPES
03823         GLAPI void APIENTRY glHintPGI (GLenum, GLint);
03824 #endif /* GL_GLEXT_PROTOTYPES */
03825         typedef void (APIENTRY * PFNGLHINTPGIPROC) (GLenum target, GLint mode);
03826 #endif
03827
03828 #ifndef GL_EXT_paletted_texture
03829 #define GL_EXT_paletted_texture 1
03830 #ifdef GL_GLEXT_PROTOTYPES
03831         GLAPI void APIENTRY glColorTableEXT (GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *);
03832         GLAPI void APIENTRY glGetColorTableEXT (GLenum, GLenum, GLenum, GLvoid *);
03833         GLAPI void APIENTRY glGetColorTableParameterivEXT (GLenum, GLenum, GLint *);
03834         GLAPI void APIENTRY glGetColorTableParameterfvEXT (GLenum, GLenum, GLfloat *);
03835 #endif /* GL_GLEXT_PROTOTYPES */
03836         typedef void (APIENTRY * PFNGLCOLORTABLEEXTPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
03837         typedef void (APIENTRY * PFNGLGETCOLORTABLEEXTPROC) (GLenum target, GLenum format, GLenum type, GLvoid *data);
03838         typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
03839         typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
03840 #endif
03841
03842 #ifndef GL_EXT_clip_volume_hint
03843 #define GL_EXT_clip_volume_hint 1
03844 #endif
03845
03846 #ifndef GL_SGIX_list_priority
03847 #define GL_SGIX_list_priority 1
03848 #ifdef GL_GLEXT_PROTOTYPES
03849         GLAPI void APIENTRY glGetListParameterfvSGIX (GLuint, GLenum, GLfloat *);
03850         GLAPI void APIENTRY glGetListParameterivSGIX (GLuint, GLenum, GLint *);
03851         GLAPI void APIENTRY glListParameterfSGIX (GLuint, GLenum, GLfloat);
03852         GLAPI void APIENTRY glListParameterfvSGIX (GLuint, GLenum, const GLfloat *);
03853         GLAPI void APIENTRY glListParameteriSGIX (GLuint, GLenum, GLint);
03854         GLAPI void APIENTRY glListParameterivSGIX (GLuint, GLenum, const GLint *);
03855 #endif /* GL_GLEXT_PROTOTYPES */
03856         typedef void (APIENTRY * PFNGLGETLISTPARAMETERFVSGIXPROC) (GLuint list, GLenum pname, GLfloat *params);
03857         typedef void (APIENTRY * PFNGLGETLISTPARAMETERIVSGIXPROC) (GLuint list, GLenum pname, GLint *params);
03858         typedef void (APIENTRY * PFNGLLISTPARAMETERFSGIXPROC) (GLuint list, GLenum pname, GLfloat param);
03859         typedef void (APIENTRY * PFNGLLISTPARAMETERFVSGIXPROC) (GLuint list, GLenum pname, const GLfloat *params);
03860         typedef void (APIENTRY * PFNGLLISTPARAMETERISGIXPROC) (GLuint list, GLenum pname, GLint param);
03861         typedef void (APIENTRY * PFNGLLISTPARAMETERIVSGIXPROC) (GLuint list, GLenum pname, const GLint *params);
03862 #endif
03863
03864 #ifndef GL_SGIX_ir_instrument1
03865 #define GL_SGIX_ir_instrument1 1
03866 #endif
03867
03868 #ifndef GL_SGIX_calligraphic_fragment
03869 #define GL_SGIX_calligraphic_fragment 1
03870 #endif
03871
03872 #ifndef GL_SGIX_texture_lod_bias
03873 #define GL_SGIX_texture_lod_bias 1
03874 #endif
03875
03876 #ifndef GL_SGIX_shadow_ambient
03877 #define GL_SGIX_shadow_ambient 1
03878 #endif
03879
03880 #ifndef GL_EXT_index_texture
03881 #define GL_EXT_index_texture 1
03882 #endif
03883
03884 #ifndef GL_EXT_index_material
03885 #define GL_EXT_index_material 1
03886 #ifdef GL_GLEXT_PROTOTYPES
03887         GLAPI void APIENTRY glIndexMaterialEXT (GLenum, GLenum);
03888 #endif /* GL_GLEXT_PROTOTYPES */
03889         typedef void (APIENTRY * PFNGLINDEXMATERIALEXTPROC) (GLenum face, GLenum mode);
03890 #endif
03891
03892 #ifndef GL_EXT_index_func
03893 #define GL_EXT_index_func 1
03894 #ifdef GL_GLEXT_PROTOTYPES
03895         GLAPI void APIENTRY glIndexFuncEXT (GLenum, GLclampf);
03896 #endif /* GL_GLEXT_PROTOTYPES */
03897         typedef void (APIENTRY * PFNGLINDEXFUNCEXTPROC) (GLenum func, GLclampf ref);
03898 #endif
03899
03900 #ifndef GL_EXT_index_array_formats
03901 #define GL_EXT_index_array_formats 1
03902 #endif
03903
03904 #ifndef GL_EXT_compiled_vertex_array
03905 #define GL_EXT_compiled_vertex_array 1
03906 #ifdef GL_GLEXT_PROTOTYPES
03907         GLAPI void APIENTRY glLockArraysEXT (GLint, GLsizei);
03908         GLAPI void APIENTRY glUnlockArraysEXT (void);
03909 #endif /* GL_GLEXT_PROTOTYPES */
03910         typedef void (APIENTRY * PFNGLLOCKARRAYSEXTPROC) (GLint first, GLsizei count);
03911         typedef void (APIENTRY * PFNGLUNLOCKARRAYSEXTPROC) (void);
03912 #endif
03913
03914 #ifndef GL_EXT_cull_vertex
03915 #define GL_EXT_cull_vertex 1
03916 #ifdef GL_GLEXT_PROTOTYPES
03917         GLAPI void APIENTRY glCullParameterdvEXT (GLenum, GLdouble *);
03918         GLAPI void APIENTRY glCullParameterfvEXT (GLenum, GLfloat *);
03919 #endif /* GL_GLEXT_PROTOTYPES */
03920         typedef void (APIENTRY * PFNGLCULLPARAMETERDVEXTPROC) (GLenum pname, GLdouble *params);
03921         typedef void (APIENTRY * PFNGLCULLPARAMETERFVEXTPROC) (GLenum pname, GLfloat *params);
03922 #endif
03923
03924 #ifndef GL_SGIX_ycrcb
03925 #define GL_SGIX_ycrcb 1
03926 #endif
03927
03928 #ifndef GL_SGIX_fragment_lighting
03929 #define GL_SGIX_fragment_lighting 1
03930 #ifdef GL_GLEXT_PROTOTYPES
03931         GLAPI void APIENTRY glFragmentColorMaterialSGIX (GLenum, GLenum);
03932         GLAPI void APIENTRY glFragmentLightfSGIX (GLenum, GLenum, GLfloat);
03933         GLAPI void APIENTRY glFragmentLightfvSGIX (GLenum, GLenum, const GLfloat *);
03934         GLAPI void APIENTRY glFragmentLightiSGIX (GLenum, GLenum, GLint);
03935         GLAPI void APIENTRY glFragmentLightivSGIX (GLenum, GLenum, const GLint *);
03936         GLAPI void APIENTRY glFragmentLightModelfSGIX (GLenum, GLfloat);
03937         GLAPI void APIENTRY glFragmentLightModelfvSGIX (GLenum, const GLfloat *);
03938         GLAPI void APIENTRY glFragmentLightModeliSGIX (GLenum, GLint);
03939         GLAPI void APIENTRY glFragmentLightModelivSGIX (GLenum, const GLint *);
03940         GLAPI void APIENTRY glFragmentMaterialfSGIX (GLenum, GLenum, GLfloat);
03941         GLAPI void APIENTRY glFragmentMaterialfvSGIX (GLenum, GLenum, const GLfloat *);
03942         GLAPI void APIENTRY glFragmentMaterialiSGIX (GLenum, GLenum, GLint);
03943         GLAPI void APIENTRY glFragmentMaterialivSGIX (GLenum, GLenum, const GLint *);
03944         GLAPI void APIENTRY glGetFragmentLightfvSGIX (GLenum, GLenum, GLfloat *);
03945         GLAPI void APIENTRY glGetFragmentLightivSGIX (GLenum, GLenum, GLint *);
03946         GLAPI void APIENTRY glGetFragmentMaterialfvSGIX (GLenum, GLenum, GLfloat *);
03947         GLAPI void APIENTRY glGetFragmentMaterialivSGIX (GLenum, GLenum, GLint *);
03948         GLAPI void APIENTRY glLightEnviSGIX (GLenum, GLint);
03949 #endif /* GL_GLEXT_PROTOTYPES */
03950         typedef void (APIENTRY * PFNGLFRAGMENTCOLORMATERIALSGIXPROC) (GLenum face, GLenum mode);
03951         typedef void (APIENTRY * PFNGLFRAGMENTLIGHTFSGIXPROC) (GLenum light, GLenum pname, GLfloat param);
03952         typedef void (APIENTRY * PFNGLFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum pname, const GLfloat *params);
03953         typedef void (APIENTRY * PFNGLFRAGMENTLIGHTISGIXPROC) (GLenum light, GLenum pname, GLint param);
03954         typedef void (APIENTRY * PFNGLFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum pname, const GLint *params);
03955         typedef void (APIENTRY * PFNGLFRAGMENTLIGHTMODELFSGIXPROC) (GLenum pname, GLfloat param);
03956         typedef void (APIENTRY * PFNGLFRAGMENTLIGHTMODELFVSGIXPROC) (GLenum pname, const GLfloat *params);
03957         typedef void (APIENTRY * PFNGLFRAGMENTLIGHTMODELISGIXPROC) (GLenum pname, GLint param);
03958         typedef void (APIENTRY * PFNGLFRAGMENTLIGHTMODELIVSGIXPROC) (GLenum pname, const GLint *params);
03959         typedef void (APIENTRY * PFNGLFRAGMENTMATERIALFSGIXPROC) (GLenum face, GLenum pname, GLfloat param);
03960         typedef void (APIENTRY * PFNGLFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, const GLfloat *params);
03961         typedef void (APIENTRY * PFNGLFRAGMENTMATERIALISGIXPROC) (GLenum face, GLenum pname, GLint param);
03962         typedef void (APIENTRY * PFNGLFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, const GLint *params);
03963         typedef void (APIENTRY * PFNGLGETFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLfloat *params);
03964         typedef void (APIENTRY * PFNGLGETFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum pname, GLint *params);
03965         typedef void (APIENTRY * PFNGLGETFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, GLfloat *params);
03966         typedef void (APIENTRY * PFNGLGETFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, GLint *params);
03967         typedef void (APIENTRY * PFNGLLIGHTENVISGIXPROC) (GLenum pname, GLint param);
03968 #endif
03969
03970 #ifndef GL_IBM_rasterpos_clip
03971 #define GL_IBM_rasterpos_clip 1
03972 #endif
03973
03974 #ifndef GL_HP_texture_lighting
03975 #define GL_HP_texture_lighting 1
03976 #endif
03977
03978 #ifndef GL_EXT_draw_range_elements
03979 #define GL_EXT_draw_range_elements 1
03980 #ifdef GL_GLEXT_PROTOTYPES
03981         GLAPI void APIENTRY glDrawRangeElementsEXT (GLenum, GLuint, GLuint, GLsizei, GLenum, const GLvoid *);
03982 #endif /* GL_GLEXT_PROTOTYPES */
03983         typedef void (APIENTRY * PFNGLDRAWRANGEELEMENTSEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
03984 #endif
03985
03986 #ifndef GL_WIN_phong_shading
03987 #define GL_WIN_phong_shading 1
03988 #endif
03989
03990 #ifndef GL_WIN_specular_fog
03991 #define GL_WIN_specular_fog 1
03992 #endif
03993
03994 #ifndef GL_EXT_light_texture
03995 #define GL_EXT_light_texture 1
03996 #ifdef GL_GLEXT_PROTOTYPES
03997         GLAPI void APIENTRY glApplyTextureEXT (GLenum);
03998         GLAPI void APIENTRY glTextureLightEXT (GLenum);
03999         GLAPI void APIENTRY glTextureMaterialEXT (GLenum, GLenum);
04000 #endif /* GL_GLEXT_PROTOTYPES */
04001         typedef void (APIENTRY * PFNGLAPPLYTEXTUREEXTPROC) (GLenum mode);
04002         typedef void (APIENTRY * PFNGLTEXTURELIGHTEXTPROC) (GLenum pname);
04003         typedef void (APIENTRY * PFNGLTEXTUREMATERIALEXTPROC) (GLenum face, GLenum mode);
04004 #endif
04005
04006 #ifndef GL_SGIX_blend_alpha_minmax
04007 #define GL_SGIX_blend_alpha_minmax 1
04008 #endif
04009
04010 #ifndef GL_EXT_bgra
04011 #define GL_EXT_bgra 1
04012 #endif
04013
04014 #ifndef GL_SGIX_async
04015 #define GL_SGIX_async 1
04016 #ifdef GL_GLEXT_PROTOTYPES
04017         GLAPI void APIENTRY glAsyncMarkerSGIX (GLuint);
04018         GLAPI GLint APIENTRY glFinishAsyncSGIX (GLuint *);
04019         GLAPI GLint APIENTRY glPollAsyncSGIX (GLuint *);
04020         GLAPI GLuint APIENTRY glGenAsyncMarkersSGIX (GLsizei);
04021         GLAPI void APIENTRY glDeleteAsyncMarkersSGIX (GLuint, GLsizei);
04022         GLAPI GLboolean APIENTRY glIsAsyncMarkerSGIX (GLuint);
04023 #endif /* GL_GLEXT_PROTOTYPES */
04024         typedef void (APIENTRY * PFNGLASYNCMARKERSGIXPROC) (GLuint marker);
04025         typedef GLint (APIENTRY * PFNGLFINISHASYNCSGIXPROC) (GLuint *markerp);
04026         typedef GLint (APIENTRY * PFNGLPOLLASYNCSGIXPROC) (GLuint *markerp);
04027         typedef GLuint (APIENTRY * PFNGLGENASYNCMARKERSSGIXPROC) (GLsizei range);
04028         typedef void (APIENTRY * PFNGLDELETEASYNCMARKERSSGIXPROC) (GLuint marker, GLsizei range);
04029         typedef GLboolean (APIENTRY * PFNGLISASYNCMARKERSGIXPROC) (GLuint marker);
04030 #endif
04031
04032 #ifndef GL_SGIX_async_pixel
04033 #define GL_SGIX_async_pixel 1
04034 #endif
04035
04036 #ifndef GL_SGIX_async_histogram
04037 #define GL_SGIX_async_histogram 1
04038 #endif
04039
04040 #ifndef GL_INTEL_parallel_arrays
04041 #define GL_INTEL_parallel_arrays 1
04042 #ifdef GL_GLEXT_PROTOTYPES
04043         GLAPI void APIENTRY glVertexPointervINTEL (GLint, GLenum, const GLvoid* *);
04044         GLAPI void APIENTRY glNormalPointervINTEL (GLenum, const GLvoid* *);
04045         GLAPI void APIENTRY glColorPointervINTEL (GLint, GLenum, const GLvoid* *);
04046         GLAPI void APIENTRY glTexCoordPointervINTEL (GLint, GLenum, const GLvoid* *);
04047 #endif /* GL_GLEXT_PROTOTYPES */
04048         typedef void (APIENTRY * PFNGLVERTEXPOINTERVINTELPROC) (GLint size, GLenum type, const GLvoid* *pointer);
04049         typedef void (APIENTRY * PFNGLNORMALPOINTERVINTELPROC) (GLenum type, const GLvoid* *pointer);
04050         typedef void (APIENTRY * PFNGLCOLORPOINTERVINTELPROC) (GLint size, GLenum type, const GLvoid* *pointer);
04051         typedef void (APIENTRY * PFNGLTEXCOORDPOINTERVINTELPROC) (GLint size, GLenum type, const GLvoid* *pointer);
04052 #endif
04053
04054 #ifndef GL_HP_occlusion_test
04055 #define GL_HP_occlusion_test 1
04056 #endif
04057
04058 #ifndef GL_EXT_pixel_transform
04059 #define GL_EXT_pixel_transform 1
04060 #ifdef GL_GLEXT_PROTOTYPES
04061         GLAPI void APIENTRY glPixelTransformParameteriEXT (GLenum, GLenum, GLint);
04062         GLAPI void APIENTRY glPixelTransformParameterfEXT (GLenum, GLenum, GLfloat);
04063         GLAPI void APIENTRY glPixelTransformParameterivEXT (GLenum, GLenum, const GLint *);
04064         GLAPI void APIENTRY glPixelTransformParameterfvEXT (GLenum, GLenum, const GLfloat *);
04065 #endif /* GL_GLEXT_PROTOTYPES */
04066         typedef void (APIENTRY * PFNGLPIXELTRANSFORMPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint param);
04067         typedef void (APIENTRY * PFNGLPIXELTRANSFORMPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat param);
04068         typedef void (APIENTRY * PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint *params);
04069         typedef void (APIENTRY * PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat *params);
04070 #endif
04071
04072 #ifndef GL_EXT_pixel_transform_color_table
04073 #define GL_EXT_pixel_transform_color_table 1
04074 #endif
04075
04076 #ifndef GL_EXT_shared_texture_palette
04077 #define GL_EXT_shared_texture_palette 1
04078 #endif
04079
04080 #ifndef GL_EXT_separate_specular_color
04081 #define GL_EXT_separate_specular_color 1
04082 #endif
04083
04084 #ifndef GL_EXT_secondary_color
04085 #define GL_EXT_secondary_color 1
04086 #ifdef GL_GLEXT_PROTOTYPES
04087         GLAPI void APIENTRY glSecondaryColor3bEXT (GLbyte, GLbyte, GLbyte);
04088         GLAPI void APIENTRY glSecondaryColor3bvEXT (const GLbyte *);
04089         GLAPI void APIENTRY glSecondaryColor3dEXT (GLdouble, GLdouble, GLdouble);
04090         GLAPI void APIENTRY glSecondaryColor3dvEXT (const GLdouble *);
04091         GLAPI void APIENTRY glSecondaryColor3fEXT (GLfloat, GLfloat, GLfloat);
04092         GLAPI void APIENTRY glSecondaryColor3fvEXT (const GLfloat *);
04093         GLAPI void APIENTRY glSecondaryColor3iEXT (GLint, GLint, GLint);
04094         GLAPI void APIENTRY glSecondaryColor3ivEXT (const GLint *);
04095         GLAPI void APIENTRY glSecondaryColor3sEXT (GLshort, GLshort, GLshort);
04096         GLAPI void APIENTRY glSecondaryColor3svEXT (const GLshort *);
04097         GLAPI void APIENTRY glSecondaryColor3ubEXT (GLubyte, GLubyte, GLubyte);
04098         GLAPI void APIENTRY glSecondaryColor3ubvEXT (const GLubyte *);
04099         GLAPI void APIENTRY glSecondaryColor3uiEXT (GLuint, GLuint, GLuint);
04100         GLAPI void APIENTRY glSecondaryColor3uivEXT (const GLuint *);
04101         GLAPI void APIENTRY glSecondaryColor3usEXT (GLushort, GLushort, GLushort);
04102         GLAPI void APIENTRY glSecondaryColor3usvEXT (const GLushort *);
04103         GLAPI void APIENTRY glSecondaryColorPointerEXT (GLint, GLenum, GLsizei, const GLvoid *);
04104 #endif /* GL_GLEXT_PROTOTYPES */
04105         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3BEXTPROC) (GLbyte red, GLbyte green, GLbyte blue);
04106         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3BVEXTPROC) (const GLbyte *v);
04107         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3DEXTPROC) (GLdouble red, GLdouble green, GLdouble blue);
04108         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3DVEXTPROC) (const GLdouble *v);
04109         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3FEXTPROC) (GLfloat red, GLfloat green, GLfloat blue);
04110         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3FVEXTPROC) (const GLfloat *v);
04111         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3IEXTPROC) (GLint red, GLint green, GLint blue);
04112         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3IVEXTPROC) (const GLint *v);
04113         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3SEXTPROC) (GLshort red, GLshort green, GLshort blue);
04114         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3SVEXTPROC) (const GLshort *v);
04115         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UBEXTPROC) (GLubyte red, GLubyte green, GLubyte blue);
04116         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UBVEXTPROC) (const GLubyte *v);
04117         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UIEXTPROC) (GLuint red, GLuint green, GLuint blue);
04118         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UIVEXTPROC) (const GLuint *v);
04119         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3USEXTPROC) (GLushort red, GLushort green, GLushort blue);
04120         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3USVEXTPROC) (const GLushort *v);
04121         typedef void (APIENTRY * PFNGLSECONDARYCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
04122 #endif
04123
04124 #ifndef GL_EXT_texture_perturb_normal
04125 #define GL_EXT_texture_perturb_normal 1
04126 #ifdef GL_GLEXT_PROTOTYPES
04127         GLAPI void APIENTRY glTextureNormalEXT (GLenum);
04128 #endif /* GL_GLEXT_PROTOTYPES */
04129         typedef void (APIENTRY * PFNGLTEXTURENORMALEXTPROC) (GLenum mode);
04130 #endif
04131
04132 #ifndef GL_EXT_multi_draw_arrays
04133 #define GL_EXT_multi_draw_arrays 1
04134 #ifdef GL_GLEXT_PROTOTYPES
04135         GLAPI void APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
04136         GLAPI void APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
04137 #endif /* GL_GLEXT_PROTOTYPES */
04138         typedef void (APIENTRY * PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
04139         typedef void (APIENTRY * PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
04140 #endif
04141
04142 #ifndef GL_EXT_fog_coord
04143 #define GL_EXT_fog_coord 1
04144 #ifdef GL_GLEXT_PROTOTYPES
04145         GLAPI void APIENTRY glFogCoordfEXT (GLfloat);
04146         GLAPI void APIENTRY glFogCoordfvEXT (const GLfloat *);
04147         GLAPI void APIENTRY glFogCoorddEXT (GLdouble);
04148         GLAPI void APIENTRY glFogCoorddvEXT (const GLdouble *);
04149         GLAPI void APIENTRY glFogCoordPointerEXT (GLenum, GLsizei, const GLvoid *);
04150 #endif /* GL_GLEXT_PROTOTYPES */
04151         typedef void (APIENTRY * PFNGLFOGCOORDFEXTPROC) (GLfloat coord);
04152         typedef void (APIENTRY * PFNGLFOGCOORDFVEXTPROC) (const GLfloat *coord);
04153         typedef void (APIENTRY * PFNGLFOGCOORDDEXTPROC) (GLdouble coord);
04154         typedef void (APIENTRY * PFNGLFOGCOORDDVEXTPROC) (const GLdouble *coord);
04155         typedef void (APIENTRY * PFNGLFOGCOORDPOINTEREXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
04156 #endif
04157
04158 #ifndef GL_REND_screen_coordinates
04159 #define GL_REND_screen_coordinates 1
04160 #endif
04161
04162 #ifndef GL_EXT_coordinate_frame
04163 #define GL_EXT_coordinate_frame 1
04164 #ifdef GL_GLEXT_PROTOTYPES
04165         GLAPI void APIENTRY glTangent3bEXT (GLbyte, GLbyte, GLbyte);
04166         GLAPI void APIENTRY glTangent3bvEXT (const GLbyte *);
04167         GLAPI void APIENTRY glTangent3dEXT (GLdouble, GLdouble, GLdouble);
04168         GLAPI void APIENTRY glTangent3dvEXT (const GLdouble *);
04169         GLAPI void APIENTRY glTangent3fEXT (GLfloat, GLfloat, GLfloat);
04170         GLAPI void APIENTRY glTangent3fvEXT (const GLfloat *);
04171         GLAPI void APIENTRY glTangent3iEXT (GLint, GLint, GLint);
04172         GLAPI void APIENTRY glTangent3ivEXT (const GLint *);
04173         GLAPI void APIENTRY glTangent3sEXT (GLshort, GLshort, GLshort);
04174         GLAPI void APIENTRY glTangent3svEXT (const GLshort *);
04175         GLAPI void APIENTRY glBinormal3bEXT (GLbyte, GLbyte, GLbyte);
04176         GLAPI void APIENTRY glBinormal3bvEXT (const GLbyte *);
04177         GLAPI void APIENTRY glBinormal3dEXT (GLdouble, GLdouble, GLdouble);
04178         GLAPI void APIENTRY glBinormal3dvEXT (const GLdouble *);
04179         GLAPI void APIENTRY glBinormal3fEXT (GLfloat, GLfloat, GLfloat);
04180         GLAPI void APIENTRY glBinormal3fvEXT (const GLfloat *);
04181         GLAPI void APIENTRY glBinormal3iEXT (GLint, GLint, GLint);
04182         GLAPI void APIENTRY glBinormal3ivEXT (const GLint *);
04183         GLAPI void APIENTRY glBinormal3sEXT (GLshort, GLshort, GLshort);
04184         GLAPI void APIENTRY glBinormal3svEXT (const GLshort *);
04185         GLAPI void APIENTRY glTangentPointerEXT (GLenum, GLsizei, const GLvoid *);
04186         GLAPI void APIENTRY glBinormalPointerEXT (GLenum, GLsizei, const GLvoid *);
04187 #endif /* GL_GLEXT_PROTOTYPES */
04188         typedef void (APIENTRY * PFNGLTANGENT3BEXTPROC) (GLbyte tx, GLbyte ty, GLbyte tz);
04189         typedef void (APIENTRY * PFNGLTANGENT3BVEXTPROC) (const GLbyte *v);
04190         typedef void (APIENTRY * PFNGLTANGENT3DEXTPROC) (GLdouble tx, GLdouble ty, GLdouble tz);
04191         typedef void (APIENTRY * PFNGLTANGENT3DVEXTPROC) (const GLdouble *v);
04192         typedef void (APIENTRY * PFNGLTANGENT3FEXTPROC) (GLfloat tx, GLfloat ty, GLfloat tz);
04193         typedef void (APIENTRY * PFNGLTANGENT3FVEXTPROC) (const GLfloat *v);
04194         typedef void (APIENTRY * PFNGLTANGENT3IEXTPROC) (GLint tx, GLint ty, GLint tz);
04195         typedef void (APIENTRY * PFNGLTANGENT3IVEXTPROC) (const GLint *v);
04196         typedef void (APIENTRY * PFNGLTANGENT3SEXTPROC) (GLshort tx, GLshort ty, GLshort tz);
04197         typedef void (APIENTRY * PFNGLTANGENT3SVEXTPROC) (const GLshort *v);
04198         typedef void (APIENTRY * PFNGLBINORMAL3BEXTPROC) (GLbyte bx, GLbyte by, GLbyte bz);
04199         typedef void (APIENTRY * PFNGLBINORMAL3BVEXTPROC) (const GLbyte *v);
04200         typedef void (APIENTRY * PFNGLBINORMAL3DEXTPROC) (GLdouble bx, GLdouble by, GLdouble bz);
04201         typedef void (APIENTRY * PFNGLBINORMAL3DVEXTPROC) (const GLdouble *v);
04202         typedef void (APIENTRY * PFNGLBINORMAL3FEXTPROC) (GLfloat bx, GLfloat by, GLfloat bz);
04203         typedef void (APIENTRY * PFNGLBINORMAL3FVEXTPROC) (const GLfloat *v);
04204         typedef void (APIENTRY * PFNGLBINORMAL3IEXTPROC) (GLint bx, GLint by, GLint bz);
04205         typedef void (APIENTRY * PFNGLBINORMAL3IVEXTPROC) (const GLint *v);
04206         typedef void (APIENTRY * PFNGLBINORMAL3SEXTPROC) (GLshort bx, GLshort by, GLshort bz);
04207         typedef void (APIENTRY * PFNGLBINORMAL3SVEXTPROC) (const GLshort *v);
04208         typedef void (APIENTRY * PFNGLTANGENTPOINTEREXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
04209         typedef void (APIENTRY * PFNGLBINORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
04210 #endif
04211
04212 #ifndef GL_EXT_texture_env_combine
04213 #define GL_EXT_texture_env_combine 1
04214 #endif
04215
04216 #ifndef GL_APPLE_specular_vector
04217 #define GL_APPLE_specular_vector 1
04218 #endif
04219
04220 #ifndef GL_APPLE_transform_hint
04221 #define GL_APPLE_transform_hint 1
04222 #endif
04223
04224 #ifndef GL_SGIX_fog_scale
04225 #define GL_SGIX_fog_scale 1
04226 #endif
04227
04228 #ifndef GL_SUNX_constant_data
04229 #define GL_SUNX_constant_data 1
04230 #ifdef GL_GLEXT_PROTOTYPES
04231         GLAPI void APIENTRY glFinishTextureSUNX (void);
04232 #endif /* GL_GLEXT_PROTOTYPES */
04233         typedef void (APIENTRY * PFNGLFINISHTEXTURESUNXPROC) (void);
04234 #endif
04235
04236 #ifndef GL_SUN_global_alpha
04237 #define GL_SUN_global_alpha 1
04238 #ifdef GL_GLEXT_PROTOTYPES
04239         GLAPI void APIENTRY glGlobalAlphaFactorbSUN (GLbyte);
04240         GLAPI void APIENTRY glGlobalAlphaFactorsSUN (GLshort);
04241         GLAPI void APIENTRY glGlobalAlphaFactoriSUN (GLint);
04242         GLAPI void APIENTRY glGlobalAlphaFactorfSUN (GLfloat);
04243         GLAPI void APIENTRY glGlobalAlphaFactordSUN (GLdouble);
04244         GLAPI void APIENTRY glGlobalAlphaFactorubSUN (GLubyte);
04245         GLAPI void APIENTRY glGlobalAlphaFactorusSUN (GLushort);
04246         GLAPI void APIENTRY glGlobalAlphaFactoruiSUN (GLuint);
04247 #endif /* GL_GLEXT_PROTOTYPES */
04248         typedef void (APIENTRY * PFNGLGLOBALALPHAFACTORBSUNPROC) (GLbyte factor);
04249         typedef void (APIENTRY * PFNGLGLOBALALPHAFACTORSSUNPROC) (GLshort factor);
04250         typedef void (APIENTRY * PFNGLGLOBALALPHAFACTORISUNPROC) (GLint factor);
04251         typedef void (APIENTRY * PFNGLGLOBALALPHAFACTORFSUNPROC) (GLfloat factor);
04252         typedef void (APIENTRY * PFNGLGLOBALALPHAFACTORDSUNPROC) (GLdouble factor);
04253         typedef void (APIENTRY * PFNGLGLOBALALPHAFACTORUBSUNPROC) (GLubyte factor);
04254         typedef void (APIENTRY * PFNGLGLOBALALPHAFACTORUSSUNPROC) (GLushort factor);
04255         typedef void (APIENTRY * PFNGLGLOBALALPHAFACTORUISUNPROC) (GLuint factor);
04256 #endif
04257
04258 #ifndef GL_SUN_triangle_list
04259 #define GL_SUN_triangle_list 1
04260 #ifdef GL_GLEXT_PROTOTYPES
04261         GLAPI void APIENTRY glReplacementCodeuiSUN (GLuint);
04262         GLAPI void APIENTRY glReplacementCodeusSUN (GLushort);
04263         GLAPI void APIENTRY glReplacementCodeubSUN (GLubyte);
04264         GLAPI void APIENTRY glReplacementCodeuivSUN (const GLuint *);
04265         GLAPI void APIENTRY glReplacementCodeusvSUN (const GLushort *);
04266         GLAPI void APIENTRY glReplacementCodeubvSUN (const GLubyte *);
04267         GLAPI void APIENTRY glReplacementCodePointerSUN (GLenum, GLsizei, const GLvoid* *);
04268 #endif /* GL_GLEXT_PROTOTYPES */
04269         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUISUNPROC) (GLuint code);
04270         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUSSUNPROC) (GLushort code);
04271         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUBSUNPROC) (GLubyte code);
04272         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUIVSUNPROC) (const GLuint *code);
04273         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUSVSUNPROC) (const GLushort *code);
04274         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUBVSUNPROC) (const GLubyte *code);
04275         typedef void (APIENTRY * PFNGLREPLACEMENTCODEPOINTERSUNPROC) (GLenum type, GLsizei stride, const GLvoid* *pointer);
04276 #endif
04277
04278 #ifndef GL_SUN_vertex
04279 #define GL_SUN_vertex 1
04280 #ifdef GL_GLEXT_PROTOTYPES
04281         GLAPI void APIENTRY glColor4ubVertex2fSUN (GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat);
04282         GLAPI void APIENTRY glColor4ubVertex2fvSUN (const GLubyte *, const GLfloat *);
04283         GLAPI void APIENTRY glColor4ubVertex3fSUN (GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat);
04284         GLAPI void APIENTRY glColor4ubVertex3fvSUN (const GLubyte *, const GLfloat *);
04285         GLAPI void APIENTRY glColor3fVertex3fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04286         GLAPI void APIENTRY glColor3fVertex3fvSUN (const GLfloat *, const GLfloat *);
04287         GLAPI void APIENTRY glNormal3fVertex3fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04288         GLAPI void APIENTRY glNormal3fVertex3fvSUN (const GLfloat *, const GLfloat *);
04289         GLAPI void APIENTRY glColor4fNormal3fVertex3fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04290         GLAPI void APIENTRY glColor4fNormal3fVertex3fvSUN (const GLfloat *, const GLfloat *, const GLfloat *);
04291         GLAPI void APIENTRY glTexCoord2fVertex3fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04292         GLAPI void APIENTRY glTexCoord2fVertex3fvSUN (const GLfloat *, const GLfloat *);
04293         GLAPI void APIENTRY glTexCoord4fVertex4fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04294         GLAPI void APIENTRY glTexCoord4fVertex4fvSUN (const GLfloat *, const GLfloat *);
04295         GLAPI void APIENTRY glTexCoord2fColor4ubVertex3fSUN (GLfloat, GLfloat, GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat);
04296         GLAPI void APIENTRY glTexCoord2fColor4ubVertex3fvSUN (const GLfloat *, const GLubyte *, const GLfloat *);
04297         GLAPI void APIENTRY glTexCoord2fColor3fVertex3fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04298         GLAPI void APIENTRY glTexCoord2fColor3fVertex3fvSUN (const GLfloat *, const GLfloat *, const GLfloat *);
04299         GLAPI void APIENTRY glTexCoord2fNormal3fVertex3fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04300         GLAPI void APIENTRY glTexCoord2fNormal3fVertex3fvSUN (const GLfloat *, const GLfloat *, const GLfloat *);
04301         GLAPI void APIENTRY glTexCoord2fColor4fNormal3fVertex3fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04302         GLAPI void APIENTRY glTexCoord2fColor4fNormal3fVertex3fvSUN (const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *);
04303         GLAPI void APIENTRY glTexCoord4fColor4fNormal3fVertex4fSUN (GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04304         GLAPI void APIENTRY glTexCoord4fColor4fNormal3fVertex4fvSUN (const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *);
04305         GLAPI void APIENTRY glReplacementCodeuiVertex3fSUN (GLuint, GLfloat, GLfloat, GLfloat);
04306         GLAPI void APIENTRY glReplacementCodeuiVertex3fvSUN (const GLuint *, const GLfloat *);
04307         GLAPI void APIENTRY glReplacementCodeuiColor4ubVertex3fSUN (GLuint, GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat);
04308         GLAPI void APIENTRY glReplacementCodeuiColor4ubVertex3fvSUN (const GLuint *, const GLubyte *, const GLfloat *);
04309         GLAPI void APIENTRY glReplacementCodeuiColor3fVertex3fSUN (GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04310         GLAPI void APIENTRY glReplacementCodeuiColor3fVertex3fvSUN (const GLuint *, const GLfloat *, const GLfloat *);
04311         GLAPI void APIENTRY glReplacementCodeuiNormal3fVertex3fSUN (GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04312         GLAPI void APIENTRY glReplacementCodeuiNormal3fVertex3fvSUN (const GLuint *, const GLfloat *, const GLfloat *);
04313         GLAPI void APIENTRY glReplacementCodeuiColor4fNormal3fVertex3fSUN (GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04314         GLAPI void APIENTRY glReplacementCodeuiColor4fNormal3fVertex3fvSUN (const GLuint *, const GLfloat *, const GLfloat *, const GLfloat *);
04315         GLAPI void APIENTRY glReplacementCodeuiTexCoord2fVertex3fSUN (GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04316         GLAPI void APIENTRY glReplacementCodeuiTexCoord2fVertex3fvSUN (const GLuint *, const GLfloat *, const GLfloat *);
04317         GLAPI void APIENTRY glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04318         GLAPI void APIENTRY glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (const GLuint *, const GLfloat *, const GLfloat *, const GLfloat *);
04319         GLAPI void APIENTRY glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat);
04320         GLAPI void APIENTRY glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (const GLuint *, const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *);
04321 #endif /* GL_GLEXT_PROTOTYPES */
04322         typedef void (APIENTRY * PFNGLCOLOR4UBVERTEX2FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y);
04323         typedef void (APIENTRY * PFNGLCOLOR4UBVERTEX2FVSUNPROC) (const GLubyte *c, const GLfloat *v);
04324         typedef void (APIENTRY * PFNGLCOLOR4UBVERTEX3FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
04325         typedef void (APIENTRY * PFNGLCOLOR4UBVERTEX3FVSUNPROC) (const GLubyte *c, const GLfloat *v);
04326         typedef void (APIENTRY * PFNGLCOLOR3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
04327         typedef void (APIENTRY * PFNGLCOLOR3FVERTEX3FVSUNPROC) (const GLfloat *c, const GLfloat *v);
04328         typedef void (APIENTRY * PFNGLNORMAL3FVERTEX3FSUNPROC) (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
04329         typedef void (APIENTRY * PFNGLNORMAL3FVERTEX3FVSUNPROC) (const GLfloat *n, const GLfloat *v);
04330         typedef void (APIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
04331         typedef void (APIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat *c, const GLfloat *n, const GLfloat *v);
04332         typedef void (APIENTRY * PFNGLTEXCOORD2FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
04333         typedef void (APIENTRY * PFNGLTEXCOORD2FVERTEX3FVSUNPROC) (const GLfloat *tc, const GLfloat *v);
04334         typedef void (APIENTRY * PFNGLTEXCOORD4FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
04335         typedef void (APIENTRY * PFNGLTEXCOORD4FVERTEX4FVSUNPROC) (const GLfloat *tc, const GLfloat *v);
04336         typedef void (APIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
04337         typedef void (APIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC) (const GLfloat *tc, const GLubyte *c, const GLfloat *v);
04338         typedef void (APIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
04339         typedef void (APIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC) (const GLfloat *tc, const GLfloat *c, const GLfloat *v);
04340         typedef void (APIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
04341         typedef void (APIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat *tc, const GLfloat *n, const GLfloat *v);
04342         typedef void (APIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
04343         typedef void (APIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
04344         typedef void (APIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
04345         typedef void (APIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC) (const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
04346         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC) (GLuint rc, GLfloat x, GLfloat y, GLfloat z);
04347         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *v);
04348         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC) (GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
04349         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC) (const GLuint *rc, const GLubyte *c, const GLfloat *v);
04350         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
04351         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *c, const GLfloat *v);
04352         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
04353         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *n, const GLfloat *v);
04354         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
04355         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
04356         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
04357         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *tc, const GLfloat *v);
04358         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
04359         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *tc, const GLfloat *n, const GLfloat *v);
04360         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
04361         typedef void (APIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
04362 #endif
04363
04364 #ifndef GL_EXT_blend_func_separate
04365 #define GL_EXT_blend_func_separate 1
04366 #ifdef GL_GLEXT_PROTOTYPES
04367         GLAPI void APIENTRY glBlendFuncSeparateEXT (GLenum, GLenum, GLenum, GLenum);
04368 #endif /* GL_GLEXT_PROTOTYPES */
04369         typedef void (APIENTRY * PFNGLBLENDFUNCSEPARATEEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
04370 #endif
04371
04372 #ifndef GL_INGR_blend_func_separate
04373 #define GL_INGR_blend_func_separate 1
04374 #ifdef GL_GLEXT_PROTOTYPES
04375         GLAPI void APIENTRY glBlendFuncSeparateINGR (GLenum, GLenum, GLenum, GLenum);
04376 #endif /* GL_GLEXT_PROTOTYPES */
04377         typedef void (APIENTRY * PFNGLBLENDFUNCSEPARATEINGRPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
04378 #endif
04379
04380 #ifndef GL_INGR_color_clamp
04381 #define GL_INGR_color_clamp 1
04382 #endif
04383
04384 #ifndef GL_INGR_interlace_read
04385 #define GL_INGR_interlace_read 1
04386 #endif
04387
04388 #ifndef GL_EXT_stencil_wrap
04389 #define GL_EXT_stencil_wrap 1
04390 #endif
04391
04392 #ifndef GL_EXT_422_pixels
04393 #define GL_EXT_422_pixels 1
04394 #endif
04395
04396 #ifndef GL_NV_texgen_reflection
04397 #define GL_NV_texgen_reflection 1
04398 #endif
04399
04400 #ifndef GL_SUN_convolution_border_modes
04401 #define GL_SUN_convolution_border_modes 1
04402 #endif
04403
04404 #ifndef GL_EXT_texture_env_add
04405 #define GL_EXT_texture_env_add 1
04406 #endif
04407
04408 #ifndef GL_EXT_texture_lod_bias
04409 #define GL_EXT_texture_lod_bias 1
04410 #endif
04411
04412 #ifndef GL_EXT_texture_filter_anisotropic
04413 #define GL_EXT_texture_filter_anisotropic 1
04414 #endif
04415
04416 #ifndef GL_EXT_vertex_weighting
04417 #define GL_EXT_vertex_weighting 1
04418 #ifdef GL_GLEXT_PROTOTYPES
04419         GLAPI void APIENTRY glVertexWeightfEXT (GLfloat);
04420         GLAPI void APIENTRY glVertexWeightfvEXT (const GLfloat *);
04421         GLAPI void APIENTRY glVertexWeightPointerEXT (GLsizei, GLenum, GLsizei, const GLvoid *);
04422 #endif /* GL_GLEXT_PROTOTYPES */
04423         typedef void (APIENTRY * PFNGLVERTEXWEIGHTFEXTPROC) (GLfloat weight);
04424         typedef void (APIENTRY * PFNGLVERTEXWEIGHTFVEXTPROC) (const GLfloat *weight);
04425         typedef void (APIENTRY * PFNGLVERTEXWEIGHTPOINTEREXTPROC) (GLsizei size, GLenum type, GLsizei stride, const GLvoid *pointer);
04426 #endif
04427
04428 #ifndef GL_NV_light_max_exponent
04429 #define GL_NV_light_max_exponent 1
04430 #endif
04431
04432 #ifndef GL_NV_vertex_array_range
04433 #define GL_NV_vertex_array_range 1
04434 #ifdef GL_GLEXT_PROTOTYPES
04435         GLAPI void APIENTRY glFlushVertexArrayRangeNV (void);
04436         GLAPI void APIENTRY glVertexArrayRangeNV (GLsizei, const GLvoid *);
04437 #endif /* GL_GLEXT_PROTOTYPES */
04438         typedef void (APIENTRY * PFNGLFLUSHVERTEXARRAYRANGENVPROC) (void);
04439         typedef void (APIENTRY * PFNGLVERTEXARRAYRANGENVPROC) (GLsizei length, const GLvoid *pointer);
04440 #endif
04441
04442 #ifndef GL_NV_register_combiners
04443 #define GL_NV_register_combiners 1
04444 #ifdef GL_GLEXT_PROTOTYPES
04445         GLAPI void APIENTRY glCombinerParameterfvNV (GLenum, const GLfloat *);
04446         GLAPI void APIENTRY glCombinerParameterfNV (GLenum, GLfloat);
04447         GLAPI void APIENTRY glCombinerParameterivNV (GLenum, const GLint *);
04448         GLAPI void APIENTRY glCombinerParameteriNV (GLenum, GLint);
04449         GLAPI void APIENTRY glCombinerInputNV (GLenum, GLenum, GLenum, GLenum, GLenum, GLenum);
04450         GLAPI void APIENTRY glCombinerOutputNV (GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLboolean, GLboolean, GLboolean);
04451         GLAPI void APIENTRY glFinalCombinerInputNV (GLenum, GLenum, GLenum, GLenum);
04452         GLAPI void APIENTRY glGetCombinerInputParameterfvNV (GLenum, GLenum, GLenum, GLenum, GLfloat *);
04453         GLAPI void APIENTRY glGetCombinerInputParameterivNV (GLenum, GLenum, GLenum, GLenum, GLint *);
04454         GLAPI void APIENTRY glGetCombinerOutputParameterfvNV (GLenum, GLenum, GLenum, GLfloat *);
04455         GLAPI void APIENTRY glGetCombinerOutputParameterivNV (GLenum, GLenum, GLenum, GLint *);
04456         GLAPI void APIENTRY glGetFinalCombinerInputParameterfvNV (GLenum, GLenum, GLfloat *);
04457         GLAPI void APIENTRY glGetFinalCombinerInputParameterivNV (GLenum, GLenum, GLint *);
04458 #endif /* GL_GLEXT_PROTOTYPES */
04459         typedef void (APIENTRY * PFNGLCOMBINERPARAMETERFVNVPROC) (GLenum pname, const GLfloat *params);
04460         typedef void (APIENTRY * PFNGLCOMBINERPARAMETERFNVPROC) (GLenum pname, GLfloat param);
04461         typedef void (APIENTRY * PFNGLCOMBINERPARAMETERIVNVPROC) (GLenum pname, const GLint *params);
04462         typedef void (APIENTRY * PFNGLCOMBINERPARAMETERINVPROC) (GLenum pname, GLint param);
04463         typedef void (APIENTRY * PFNGLCOMBINERINPUTNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
04464         typedef void (APIENTRY * PFNGLCOMBINEROUTPUTNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);
04465         typedef void (APIENTRY * PFNGLFINALCOMBINERINPUTNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
04466         typedef void (APIENTRY * PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params);
04467         typedef void (APIENTRY * PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params);
04468         typedef void (APIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat *params);
04469         typedef void (APIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint *params);
04470         typedef void (APIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC) (GLenum variable, GLenum pname, GLfloat *params);
04471         typedef void (APIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC) (GLenum variable, GLenum pname, GLint *params);
04472 #endif
04473
04474 #ifndef GL_NV_fog_distance
04475 #define GL_NV_fog_distance 1
04476 #endif
04477
04478 #ifndef GL_NV_texgen_emboss
04479 #define GL_NV_texgen_emboss 1
04480 #endif
04481
04482 #ifndef GL_NV_blend_square
04483 #define GL_NV_blend_square 1
04484 #endif
04485
04486 #ifndef GL_NV_texture_env_combine4
04487 #define GL_NV_texture_env_combine4 1
04488 #endif
04489
04490 #ifndef GL_MESA_resize_buffers
04491 #define GL_MESA_resize_buffers 1
04492 #ifdef GL_GLEXT_PROTOTYPES
04493         GLAPI void APIENTRY glResizeBuffersMESA (void);
04494 #endif /* GL_GLEXT_PROTOTYPES */
04495         typedef void (APIENTRY * PFNGLRESIZEBUFFERSMESAPROC) (void);
04496 #endif
04497
04498 #ifndef GL_MESA_window_pos
04499 #define GL_MESA_window_pos 1
04500 #ifdef GL_GLEXT_PROTOTYPES
04501         GLAPI void APIENTRY glWindowPos2dMESA (GLdouble, GLdouble);
04502         GLAPI void APIENTRY glWindowPos2dvMESA (const GLdouble *);
04503         GLAPI void APIENTRY glWindowPos2fMESA (GLfloat, GLfloat);
04504         GLAPI void APIENTRY glWindowPos2fvMESA (const GLfloat *);
04505         GLAPI void APIENTRY glWindowPos2iMESA (GLint, GLint);
04506         GLAPI void APIENTRY glWindowPos2ivMESA (const GLint *);
04507         GLAPI void APIENTRY glWindowPos2sMESA (GLshort, GLshort);
04508         GLAPI void APIENTRY glWindowPos2svMESA (const GLshort *);
04509         GLAPI void APIENTRY glWindowPos3dMESA (GLdouble, GLdouble, GLdouble);
04510         GLAPI void APIENTRY glWindowPos3dvMESA (const GLdouble *);
04511         GLAPI void APIENTRY glWindowPos3fMESA (GLfloat, GLfloat, GLfloat);
04512         GLAPI void APIENTRY glWindowPos3fvMESA (const GLfloat *);
04513         GLAPI void APIENTRY glWindowPos3iMESA (GLint, GLint, GLint);
04514         GLAPI void APIENTRY glWindowPos3ivMESA (const GLint *);
04515         GLAPI void APIENTRY glWindowPos3sMESA (GLshort, GLshort, GLshort);
04516         GLAPI void APIENTRY glWindowPos3svMESA (const GLshort *);
04517         GLAPI void APIENTRY glWindowPos4dMESA (GLdouble, GLdouble, GLdouble, GLdouble);
04518         GLAPI void APIENTRY glWindowPos4dvMESA (const GLdouble *);
04519         GLAPI void APIENTRY glWindowPos4fMESA (GLfloat, GLfloat, GLfloat, GLfloat);
04520         GLAPI void APIENTRY glWindowPos4fvMESA (const GLfloat *);
04521         GLAPI void APIENTRY glWindowPos4iMESA (GLint, GLint, GLint, GLint);
04522         GLAPI void APIENTRY glWindowPos4ivMESA (const GLint *);
04523         GLAPI void APIENTRY glWindowPos4sMESA (GLshort, GLshort, GLshort, GLshort);
04524         GLAPI void APIENTRY glWindowPos4svMESA (const GLshort *);
04525 #endif /* GL_GLEXT_PROTOTYPES */
04526         typedef void (APIENTRY * PFNGLWINDOWPOS2DMESAPROC) (GLdouble x, GLdouble y);
04527         typedef void (APIENTRY * PFNGLWINDOWPOS2DVMESAPROC) (const GLdouble *v);
04528         typedef void (APIENTRY * PFNGLWINDOWPOS2FMESAPROC) (GLfloat x, GLfloat y);
04529         typedef void (APIENTRY * PFNGLWINDOWPOS2FVMESAPROC) (const GLfloat *v);
04530         typedef void (APIENTRY * PFNGLWINDOWPOS2IMESAPROC) (GLint x, GLint y);
04531         typedef void (APIENTRY * PFNGLWINDOWPOS2IVMESAPROC) (const GLint *v);
04532         typedef void (APIENTRY * PFNGLWINDOWPOS2SMESAPROC) (GLshort x, GLshort y);
04533         typedef void (APIENTRY * PFNGLWINDOWPOS2SVMESAPROC) (const GLshort *v);
04534         typedef void (APIENTRY * PFNGLWINDOWPOS3DMESAPROC) (GLdouble x, GLdouble y, GLdouble z);
04535         typedef void (APIENTRY * PFNGLWINDOWPOS3DVMESAPROC) (const GLdouble *v);
04536         typedef void (APIENTRY * PFNGLWINDOWPOS3FMESAPROC) (GLfloat x, GLfloat y, GLfloat z);
04537         typedef void (APIENTRY * PFNGLWINDOWPOS3FVMESAPROC) (const GLfloat *v);
04538         typedef void (APIENTRY * PFNGLWINDOWPOS3IMESAPROC) (GLint x, GLint y, GLint z);
04539         typedef void (APIENTRY * PFNGLWINDOWPOS3IVMESAPROC) (const GLint *v);
04540         typedef void (APIENTRY * PFNGLWINDOWPOS3SMESAPROC) (GLshort x, GLshort y, GLshort z);
04541         typedef void (APIENTRY * PFNGLWINDOWPOS3SVMESAPROC) (const GLshort *v);
04542         typedef void (APIENTRY * PFNGLWINDOWPOS4DMESAPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
04543         typedef void (APIENTRY * PFNGLWINDOWPOS4DVMESAPROC) (const GLdouble *v);
04544         typedef void (APIENTRY * PFNGLWINDOWPOS4FMESAPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
04545         typedef void (APIENTRY * PFNGLWINDOWPOS4FVMESAPROC) (const GLfloat *v);
04546         typedef void (APIENTRY * PFNGLWINDOWPOS4IMESAPROC) (GLint x, GLint y, GLint z, GLint w);
04547         typedef void (APIENTRY * PFNGLWINDOWPOS4IVMESAPROC) (const GLint *v);
04548         typedef void (APIENTRY * PFNGLWINDOWPOS4SMESAPROC) (GLshort x, GLshort y, GLshort z, GLshort w);
04549         typedef void (APIENTRY * PFNGLWINDOWPOS4SVMESAPROC) (const GLshort *v);
04550 #endif
04551
04552 #ifndef GL_IBM_cull_vertex
04553 #define GL_IBM_cull_vertex 1
04554 #endif
04555
04556 #ifndef GL_IBM_multimode_draw_arrays
04557 #define GL_IBM_multimode_draw_arrays 1
04558 #ifdef GL_GLEXT_PROTOTYPES
04559         GLAPI void APIENTRY glMultiModeDrawArraysIBM (GLenum, const GLint *, const GLsizei *, GLsizei, GLint);
04560         GLAPI void APIENTRY glMultiModeDrawElementsIBM (const GLenum *, const GLsizei *, GLenum, const GLvoid* *, GLsizei, GLint);
04561 #endif /* GL_GLEXT_PROTOTYPES */
04562         typedef void (APIENTRY * PFNGLMULTIMODEDRAWARRAYSIBMPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);
04563         typedef void (APIENTRY * PFNGLMULTIMODEDRAWELEMENTSIBMPROC) (const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount, GLint modestride);
04564 #endif
04565
04566 #ifndef GL_IBM_vertex_array_lists
04567 #define GL_IBM_vertex_array_lists 1
04568 #ifdef GL_GLEXT_PROTOTYPES
04569         GLAPI void APIENTRY glColorPointerListIBM (GLint, GLenum, GLint, const GLvoid* *, GLint);
04570         GLAPI void APIENTRY glSecondaryColorPointerListIBM (GLint, GLenum, GLint, const GLvoid* *, GLint);
04571         GLAPI void APIENTRY glEdgeFlagPointerListIBM (GLint, const GLboolean* *, GLint);
04572         GLAPI void APIENTRY glFogCoordPointerListIBM (GLenum, GLint, const GLvoid* *, GLint);
04573         GLAPI void APIENTRY glIndexPointerListIBM (GLenum, GLint, const GLvoid* *, GLint);
04574         GLAPI void APIENTRY glNormalPointerListIBM (GLenum, GLint, const GLvoid* *, GLint);
04575         GLAPI void APIENTRY glTexCoordPointerListIBM (GLint, GLenum, GLint, const GLvoid* *, GLint);
04576         GLAPI void APIENTRY glVertexPointerListIBM (GLint, GLenum, GLint, const GLvoid* *, GLint);
04577 #endif /* GL_GLEXT_PROTOTYPES */
04578         typedef void (APIENTRY * PFNGLCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
04579         typedef void (APIENTRY * PFNGLSECONDARYCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
04580         typedef void (APIENTRY * PFNGLEDGEFLAGPOINTERLISTIBMPROC) (GLint stride, const GLboolean* *pointer, GLint ptrstride);
04581         typedef void (APIENTRY * PFNGLFOGCOORDPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
04582         typedef void (APIENTRY * PFNGLINDEXPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
04583         typedef void (APIENTRY * PFNGLNORMALPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
04584         typedef void (APIENTRY * PFNGLTEXCOORDPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
04585         typedef void (APIENTRY * PFNGLVERTEXPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
04586 #endif
04587
04588 #ifndef GL_SGIX_subsample
04589 #define GL_SGIX_subsample 1
04590 #endif
04591
04592 #ifndef GL_SGIX_ycrcba
04593 #define GL_SGIX_ycrcba 1
04594 #endif
04595
04596 #ifndef GL_SGIX_ycrcb_subsample
04597 #define GL_SGIX_ycrcb_subsample 1
04598 #endif
04599
04600 #ifndef GL_SGIX_depth_pass_instrument
04601 #define GL_SGIX_depth_pass_instrument 1
04602 #endif
04603
04604 #ifndef GL_3DFX_texture_compression_FXT1
04605 #define GL_3DFX_texture_compression_FXT1 1
04606 #endif
04607
04608 #ifndef GL_3DFX_multisample
04609 #define GL_3DFX_multisample 1
04610 #endif
04611
04612 #ifndef GL_3DFX_tbuffer
04613 #define GL_3DFX_tbuffer 1
04614 #ifdef GL_GLEXT_PROTOTYPES
04615         GLAPI void APIENTRY glTbufferMask3DFX (GLuint);
04616 #endif /* GL_GLEXT_PROTOTYPES */
04617         typedef void (APIENTRY * PFNGLTBUFFERMASK3DFXPROC) (GLuint mask);
04618 #endif
04619
04620 #ifndef GL_EXT_multisample
04621 #define GL_EXT_multisample 1
04622 #ifdef GL_GLEXT_PROTOTYPES
04623         GLAPI void APIENTRY glSampleMaskEXT (GLclampf, GLboolean);
04624         GLAPI void APIENTRY glSamplePatternEXT (GLenum);
04625 #endif /* GL_GLEXT_PROTOTYPES */
04626         typedef void (APIENTRY * PFNGLSAMPLEMASKEXTPROC) (GLclampf value, GLboolean invert);
04627         typedef void (APIENTRY * PFNGLSAMPLEPATTERNEXTPROC) (GLenum pattern);
04628 #endif
04629
04630 #ifndef GL_SGIX_vertex_preclip
04631 #define GL_SGIX_vertex_preclip 1
04632 #endif
04633
04634 #ifndef GL_SGIX_convolution_accuracy
04635 #define GL_SGIX_convolution_accuracy 1
04636 #endif
04637
04638 #ifndef GL_SGIX_resample
04639 #define GL_SGIX_resample 1
04640 #endif
04641
04642 #ifndef GL_SGIS_point_line_texgen
04643 #define GL_SGIS_point_line_texgen 1
04644 #endif
04645
04646 #ifndef GL_SGIS_texture_color_mask
04647 #define GL_SGIS_texture_color_mask 1
04648 #ifdef GL_GLEXT_PROTOTYPES
04649         GLAPI void APIENTRY glTextureColorMaskSGIS (GLboolean, GLboolean, GLboolean, GLboolean);
04650 #endif /* GL_GLEXT_PROTOTYPES */
04651         typedef void (APIENTRY * PFNGLTEXTURECOLORMASKSGISPROC) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
04652 #endif
04653
04654 #ifndef GL_SGIX_igloo_interface
04655 #define GL_SGIX_igloo_interface 1
04656 #ifdef GL_GLEXT_PROTOTYPES
04657         GLAPI void APIENTRY glIglooInterfaceSGIX (GLenum, const GLvoid *);
04658 #endif /* GL_GLEXT_PROTOTYPES */
04659         typedef void (APIENTRY * PFNGLIGLOOINTERFACESGIXPROC) (GLenum pname, const GLvoid *params);
04660 #endif
04661
04662 #ifndef GL_EXT_texture_env_dot3
04663 #define GL_EXT_texture_env_dot3 1
04664 #endif
04665
04666 #ifndef GL_ATI_texture_mirror_once
04667 #define GL_ATI_texture_mirror_once 1
04668 #endif
04669
04670 #ifndef GL_NV_fence
04671 #define GL_NV_fence 1
04672 #ifdef GL_GLEXT_PROTOTYPES
04673         GLAPI void APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
04674         GLAPI void APIENTRY glGenFencesNV (GLsizei, GLuint *);
04675         GLAPI GLboolean APIENTRY glIsFenceNV (GLuint);
04676         GLAPI GLboolean APIENTRY glTestFenceNV (GLuint);
04677         GLAPI void APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
04678         GLAPI void APIENTRY glFinishFenceNV (GLuint);
04679         GLAPI void APIENTRY glSetFenceNV (GLuint, GLenum);
04680 #endif /* GL_GLEXT_PROTOTYPES */
04681         typedef void (APIENTRY * PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
04682         typedef void (APIENTRY * PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
04683         typedef GLboolean (APIENTRY * PFNGLISFENCENVPROC) (GLuint fence);
04684         typedef GLboolean (APIENTRY * PFNGLTESTFENCENVPROC) (GLuint fence);
04685         typedef void (APIENTRY * PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
04686         typedef void (APIENTRY * PFNGLFINISHFENCENVPROC) (GLuint fence);
04687         typedef void (APIENTRY * PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
04688 #endif
04689
04690 #ifndef GL_NV_evaluators
04691 #define GL_NV_evaluators 1
04692 #ifdef GL_GLEXT_PROTOTYPES
04693         GLAPI void APIENTRY glMapControlPointsNV (GLenum, GLuint, GLenum, GLsizei, GLsizei, GLint, GLint, GLboolean, const GLvoid *);
04694         GLAPI void APIENTRY glMapParameterivNV (GLenum, GLenum, const GLint *);
04695         GLAPI void APIENTRY glMapParameterfvNV (GLenum, GLenum, const GLfloat *);
04696         GLAPI void APIENTRY glGetMapControlPointsNV (GLenum, GLuint, GLenum, GLsizei, GLsizei, GLboolean, GLvoid *);
04697         GLAPI void APIENTRY glGetMapParameterivNV (GLenum, GLenum, GLint *);
04698         GLAPI void APIENTRY glGetMapParameterfvNV (GLenum, GLenum, GLfloat *);
04699         GLAPI void APIENTRY glGetMapAttribParameterivNV (GLenum, GLuint, GLenum, GLint *);
04700         GLAPI void APIENTRY glGetMapAttribParameterfvNV (GLenum, GLuint, GLenum, GLfloat *);
04701         GLAPI void APIENTRY glEvalMapsNV (GLenum, GLenum);
04702 #endif /* GL_GLEXT_PROTOTYPES */
04703         typedef void (APIENTRY * PFNGLMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid *points);
04704         typedef void (APIENTRY * PFNGLMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, const GLint *params);
04705         typedef void (APIENTRY * PFNGLMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, const GLfloat *params);
04706         typedef void (APIENTRY * PFNGLGETMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid *points);
04707         typedef void (APIENTRY * PFNGLGETMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, GLint *params);
04708         typedef void (APIENTRY * PFNGLGETMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, GLfloat *params);
04709         typedef void (APIENTRY * PFNGLGETMAPATTRIBPARAMETERIVNVPROC) (GLenum target, GLuint index, GLenum pname, GLint *params);
04710         typedef void (APIENTRY * PFNGLGETMAPATTRIBPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params);
04711         typedef void (APIENTRY * PFNGLEVALMAPSNVPROC) (GLenum target, GLenum mode);
04712 #endif
04713
04714 #ifndef GL_NV_packed_depth_stencil
04715 #define GL_NV_packed_depth_stencil 1
04716 #endif
04717
04718 #ifndef GL_NV_register_combiners2
04719 #define GL_NV_register_combiners2 1
04720 #ifdef GL_GLEXT_PROTOTYPES
04721         GLAPI void APIENTRY glCombinerStageParameterfvNV (GLenum, GLenum, const GLfloat *);
04722         GLAPI void APIENTRY glGetCombinerStageParameterfvNV (GLenum, GLenum, GLfloat *);
04723 #endif /* GL_GLEXT_PROTOTYPES */
04724         typedef void (APIENTRY * PFNGLCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, const GLfloat *params);
04725         typedef void (APIENTRY * PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, GLfloat *params);
04726 #endif
04727
04728 #ifndef GL_NV_texture_compression_vtc
04729 #define GL_NV_texture_compression_vtc 1
04730 #endif
04731
04732 #ifndef GL_NV_texture_rectangle
04733 #define GL_NV_texture_rectangle 1
04734 #endif
04735
04736 #ifndef GL_NV_texture_shader
04737 #define GL_NV_texture_shader 1
04738 #endif
04739
04740 #ifndef GL_NV_texture_shader2
04741 #define GL_NV_texture_shader2 1
04742 #endif
04743
04744 #ifndef GL_NV_vertex_array_range2
04745 #define GL_NV_vertex_array_range2 1
04746 #endif
04747
04748 #ifndef GL_NV_vertex_program
04749 #define GL_NV_vertex_program 1
04750 #ifdef GL_GLEXT_PROTOTYPES
04751         GLAPI GLboolean APIENTRY glAreProgramsResidentNV (GLsizei, const GLuint *, GLboolean *);
04752         GLAPI void APIENTRY glBindProgramNV (GLenum, GLuint);
04753         GLAPI void APIENTRY glDeleteProgramsNV (GLsizei, const GLuint *);
04754         GLAPI void APIENTRY glExecuteProgramNV (GLenum, GLuint, const GLfloat *);
04755         GLAPI void APIENTRY glGenProgramsNV (GLsizei, GLuint *);
04756         GLAPI void APIENTRY glGetProgramParameterdvNV (GLenum, GLuint, GLenum, GLdouble *);
04757         GLAPI void APIENTRY glGetProgramParameterfvNV (GLenum, GLuint, GLenum, GLfloat *);
04758         GLAPI void APIENTRY glGetProgramivNV (GLuint, GLenum, GLint *);
04759         GLAPI void APIENTRY glGetProgramStringNV (GLuint, GLenum, GLubyte *);
04760         GLAPI void APIENTRY glGetTrackMatrixivNV (GLenum, GLuint, GLenum, GLint *);
04761         GLAPI void APIENTRY glGetVertexAttribdvNV (GLuint, GLenum, GLdouble *);
04762         GLAPI void APIENTRY glGetVertexAttribfvNV (GLuint, GLenum, GLfloat *);
04763         GLAPI void APIENTRY glGetVertexAttribivNV (GLuint, GLenum, GLint *);
04764         GLAPI void APIENTRY glGetVertexAttribPointervNV (GLuint, GLenum, GLvoid* *);
04765         GLAPI GLboolean APIENTRY glIsProgramNV (GLuint);
04766         GLAPI void APIENTRY glLoadProgramNV (GLenum, GLuint, GLsizei, const GLubyte *);
04767         GLAPI void APIENTRY glProgramParameter4dNV (GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble);
04768         GLAPI void APIENTRY glProgramParameter4dvNV (GLenum, GLuint, const GLdouble *);
04769         GLAPI void APIENTRY glProgramParameter4fNV (GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
04770         GLAPI void APIENTRY glProgramParameter4fvNV (GLenum, GLuint, const GLfloat *);
04771         GLAPI void APIENTRY glProgramParameters4dvNV (GLenum, GLuint, GLuint, const GLdouble *);
04772         GLAPI void APIENTRY glProgramParameters4fvNV (GLenum, GLuint, GLuint, const GLfloat *);
04773         GLAPI void APIENTRY glRequestResidentProgramsNV (GLsizei, const GLuint *);
04774         GLAPI void APIENTRY glTrackMatrixNV (GLenum, GLuint, GLenum, GLenum);
04775         GLAPI void APIENTRY glVertexAttribPointerNV (GLuint, GLint, GLenum, GLsizei, const GLvoid *);
04776         GLAPI void APIENTRY glVertexAttrib1dNV (GLuint, GLdouble);
04777         GLAPI void APIENTRY glVertexAttrib1dvNV (GLuint, const GLdouble *);
04778         GLAPI void APIENTRY glVertexAttrib1fNV (GLuint, GLfloat);
04779         GLAPI void APIENTRY glVertexAttrib1fvNV (GLuint, const GLfloat *);
04780         GLAPI void APIENTRY glVertexAttrib1sNV (GLuint, GLshort);
04781         GLAPI void APIENTRY glVertexAttrib1svNV (GLuint, const GLshort *);
04782         GLAPI void APIENTRY glVertexAttrib2dNV (GLuint, GLdouble, GLdouble);
04783         GLAPI void APIENTRY glVertexAttrib2dvNV (GLuint, const GLdouble *);
04784         GLAPI void APIENTRY glVertexAttrib2fNV (GLuint, GLfloat, GLfloat);
04785         GLAPI void APIENTRY glVertexAttrib2fvNV (GLuint, const GLfloat *);
04786         GLAPI void APIENTRY glVertexAttrib2sNV (GLuint, GLshort, GLshort);
04787         GLAPI void APIENTRY glVertexAttrib2svNV (GLuint, const GLshort *);
04788         GLAPI void APIENTRY glVertexAttrib3dNV (GLuint, GLdouble, GLdouble, GLdouble);
04789         GLAPI void APIENTRY glVertexAttrib3dvNV (GLuint, const GLdouble *);
04790         GLAPI void APIENTRY glVertexAttrib3fNV (GLuint, GLfloat, GLfloat, GLfloat);
04791         GLAPI void APIENTRY glVertexAttrib3fvNV (GLuint, const GLfloat *);
04792         GLAPI void APIENTRY glVertexAttrib3sNV (GLuint, GLshort, GLshort, GLshort);
04793         GLAPI void APIENTRY glVertexAttrib3svNV (GLuint, const GLshort *);
04794         GLAPI void APIENTRY glVertexAttrib4dNV (GLuint, GLdouble, GLdouble, GLdouble, GLdouble);
04795         GLAPI void APIENTRY glVertexAttrib4dvNV (GLuint, const GLdouble *);
04796         GLAPI void APIENTRY glVertexAttrib4fNV (GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
04797         GLAPI void APIENTRY glVertexAttrib4fvNV (GLuint, const GLfloat *);
04798         GLAPI void APIENTRY glVertexAttrib4sNV (GLuint, GLshort, GLshort, GLshort, GLshort);
04799         GLAPI void APIENTRY glVertexAttrib4svNV (GLuint, const GLshort *);
04800         GLAPI void APIENTRY glVertexAttrib4ubNV (GLuint, GLubyte, GLubyte, GLubyte, GLubyte);
04801         GLAPI void APIENTRY glVertexAttrib4ubvNV (GLuint, const GLubyte *);
04802         GLAPI void APIENTRY glVertexAttribs1dvNV (GLuint, GLsizei, const GLdouble *);
04803         GLAPI void APIENTRY glVertexAttribs1fvNV (GLuint, GLsizei, const GLfloat *);
04804         GLAPI void APIENTRY glVertexAttribs1svNV (GLuint, GLsizei, const GLshort *);
04805         GLAPI void APIENTRY glVertexAttribs2dvNV (GLuint, GLsizei, const GLdouble *);
04806         GLAPI void APIENTRY glVertexAttribs2fvNV (GLuint, GLsizei, const GLfloat *);
04807         GLAPI void APIENTRY glVertexAttribs2svNV (GLuint, GLsizei, const GLshort *);
04808         GLAPI void APIENTRY glVertexAttribs3dvNV (GLuint, GLsizei, const GLdouble *);
04809         GLAPI void APIENTRY glVertexAttribs3fvNV (GLuint, GLsizei, const GLfloat *);
04810         GLAPI void APIENTRY glVertexAttribs3svNV (GLuint, GLsizei, const GLshort *);
04811         GLAPI void APIENTRY glVertexAttribs4dvNV (GLuint, GLsizei, const GLdouble *);
04812         GLAPI void APIENTRY glVertexAttribs4fvNV (GLuint, GLsizei, const GLfloat *);
04813         GLAPI void APIENTRY glVertexAttribs4svNV (GLuint, GLsizei, const GLshort *);
04814         GLAPI void APIENTRY glVertexAttribs4ubvNV (GLuint, GLsizei, const GLubyte *);
04815 #endif /* GL_GLEXT_PROTOTYPES */
04816         typedef GLboolean (APIENTRY * PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n, const GLuint *programs, GLboolean *residences);
04817         typedef void (APIENTRY * PFNGLBINDPROGRAMNVPROC) (GLenum target, GLuint id);
04818         typedef void (APIENTRY * PFNGLDELETEPROGRAMSNVPROC) (GLsizei n, const GLuint *programs);
04819         typedef void (APIENTRY * PFNGLEXECUTEPROGRAMNVPROC) (GLenum target, GLuint id, const GLfloat *params);
04820         typedef void (APIENTRY * PFNGLGENPROGRAMSNVPROC) (GLsizei n, GLuint *programs);
04821         typedef void (APIENTRY * PFNGLGETPROGRAMPARAMETERDVNVPROC) (GLenum target, GLuint index, GLenum pname, GLdouble *params);
04822         typedef void (APIENTRY * PFNGLGETPROGRAMPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params);
04823         typedef void (APIENTRY * PFNGLGETPROGRAMIVNVPROC) (GLuint id, GLenum pname, GLint *params);
04824         typedef void (APIENTRY * PFNGLGETPROGRAMSTRINGNVPROC) (GLuint id, GLenum pname, GLubyte *program);
04825         typedef void (APIENTRY * PFNGLGETTRACKMATRIXIVNVPROC) (GLenum target, GLuint address, GLenum pname, GLint *params);
04826         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBDVNVPROC) (GLuint index, GLenum pname, GLdouble *params);
04827         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBFVNVPROC) (GLuint index, GLenum pname, GLfloat *params);
04828         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBIVNVPROC) (GLuint index, GLenum pname, GLint *params);
04829         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBPOINTERVNVPROC) (GLuint index, GLenum pname, GLvoid* *pointer);
04830         typedef GLboolean (APIENTRY * PFNGLISPROGRAMNVPROC) (GLuint id);
04831         typedef void (APIENTRY * PFNGLLOADPROGRAMNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte *program);
04832         typedef void (APIENTRY * PFNGLPROGRAMPARAMETER4DNVPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
04833         typedef void (APIENTRY * PFNGLPROGRAMPARAMETER4DVNVPROC) (GLenum target, GLuint index, const GLdouble *v);
04834         typedef void (APIENTRY * PFNGLPROGRAMPARAMETER4FNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
04835         typedef void (APIENTRY * PFNGLPROGRAMPARAMETER4FVNVPROC) (GLenum target, GLuint index, const GLfloat *v);
04836         typedef void (APIENTRY * PFNGLPROGRAMPARAMETERS4DVNVPROC) (GLenum target, GLuint index, GLuint count, const GLdouble *v);
04837         typedef void (APIENTRY * PFNGLPROGRAMPARAMETERS4FVNVPROC) (GLenum target, GLuint index, GLuint count, const GLfloat *v);
04838         typedef void (APIENTRY * PFNGLREQUESTRESIDENTPROGRAMSNVPROC) (GLsizei n, const GLuint *programs);
04839         typedef void (APIENTRY * PFNGLTRACKMATRIXNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform);
04840         typedef void (APIENTRY * PFNGLVERTEXATTRIBPOINTERNVPROC) (GLuint index, GLint fsize, GLenum type, GLsizei stride, const GLvoid *pointer);
04841         typedef void (APIENTRY * PFNGLVERTEXATTRIB1DNVPROC) (GLuint index, GLdouble x);
04842         typedef void (APIENTRY * PFNGLVERTEXATTRIB1DVNVPROC) (GLuint index, const GLdouble *v);
04843         typedef void (APIENTRY * PFNGLVERTEXATTRIB1FNVPROC) (GLuint index, GLfloat x);
04844         typedef void (APIENTRY * PFNGLVERTEXATTRIB1FVNVPROC) (GLuint index, const GLfloat *v);
04845         typedef void (APIENTRY * PFNGLVERTEXATTRIB1SNVPROC) (GLuint index, GLshort x);
04846         typedef void (APIENTRY * PFNGLVERTEXATTRIB1SVNVPROC) (GLuint index, const GLshort *v);
04847         typedef void (APIENTRY * PFNGLVERTEXATTRIB2DNVPROC) (GLuint index, GLdouble x, GLdouble y);
04848         typedef void (APIENTRY * PFNGLVERTEXATTRIB2DVNVPROC) (GLuint index, const GLdouble *v);
04849         typedef void (APIENTRY * PFNGLVERTEXATTRIB2FNVPROC) (GLuint index, GLfloat x, GLfloat y);
04850         typedef void (APIENTRY * PFNGLVERTEXATTRIB2FVNVPROC) (GLuint index, const GLfloat *v);
04851         typedef void (APIENTRY * PFNGLVERTEXATTRIB2SNVPROC) (GLuint index, GLshort x, GLshort y);
04852         typedef void (APIENTRY * PFNGLVERTEXATTRIB2SVNVPROC) (GLuint index, const GLshort *v);
04853         typedef void (APIENTRY * PFNGLVERTEXATTRIB3DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
04854         typedef void (APIENTRY * PFNGLVERTEXATTRIB3DVNVPROC) (GLuint index, const GLdouble *v);
04855         typedef void (APIENTRY * PFNGLVERTEXATTRIB3FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
04856         typedef void (APIENTRY * PFNGLVERTEXATTRIB3FVNVPROC) (GLuint index, const GLfloat *v);
04857         typedef void (APIENTRY * PFNGLVERTEXATTRIB3SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
04858         typedef void (APIENTRY * PFNGLVERTEXATTRIB3SVNVPROC) (GLuint index, const GLshort *v);
04859         typedef void (APIENTRY * PFNGLVERTEXATTRIB4DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
04860         typedef void (APIENTRY * PFNGLVERTEXATTRIB4DVNVPROC) (GLuint index, const GLdouble *v);
04861         typedef void (APIENTRY * PFNGLVERTEXATTRIB4FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
04862         typedef void (APIENTRY * PFNGLVERTEXATTRIB4FVNVPROC) (GLuint index, const GLfloat *v);
04863         typedef void (APIENTRY * PFNGLVERTEXATTRIB4SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
04864         typedef void (APIENTRY * PFNGLVERTEXATTRIB4SVNVPROC) (GLuint index, const GLshort *v);
04865         typedef void (APIENTRY * PFNGLVERTEXATTRIB4UBNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
04866         typedef void (APIENTRY * PFNGLVERTEXATTRIB4UBVNVPROC) (GLuint index, const GLubyte *v);
04867         typedef void (APIENTRY * PFNGLVERTEXATTRIBS1DVNVPROC) (GLuint index, GLsizei count, const GLdouble *v);
04868         typedef void (APIENTRY * PFNGLVERTEXATTRIBS1FVNVPROC) (GLuint index, GLsizei count, const GLfloat *v);
04869         typedef void (APIENTRY * PFNGLVERTEXATTRIBS1SVNVPROC) (GLuint index, GLsizei count, const GLshort *v);
04870         typedef void (APIENTRY * PFNGLVERTEXATTRIBS2DVNVPROC) (GLuint index, GLsizei count, const GLdouble *v);
04871         typedef void (APIENTRY * PFNGLVERTEXATTRIBS2FVNVPROC) (GLuint index, GLsizei count, const GLfloat *v);
04872         typedef void (APIENTRY * PFNGLVERTEXATTRIBS2SVNVPROC) (GLuint index, GLsizei count, const GLshort *v);
04873         typedef void (APIENTRY * PFNGLVERTEXATTRIBS3DVNVPROC) (GLuint index, GLsizei count, const GLdouble *v);
04874         typedef void (APIENTRY * PFNGLVERTEXATTRIBS3FVNVPROC) (GLuint index, GLsizei count, const GLfloat *v);
04875         typedef void (APIENTRY * PFNGLVERTEXATTRIBS3SVNVPROC) (GLuint index, GLsizei count, const GLshort *v);
04876         typedef void (APIENTRY * PFNGLVERTEXATTRIBS4DVNVPROC) (GLuint index, GLsizei count, const GLdouble *v);
04877         typedef void (APIENTRY * PFNGLVERTEXATTRIBS4FVNVPROC) (GLuint index, GLsizei count, const GLfloat *v);
04878         typedef void (APIENTRY * PFNGLVERTEXATTRIBS4SVNVPROC) (GLuint index, GLsizei count, const GLshort *v);
04879         typedef void (APIENTRY * PFNGLVERTEXATTRIBS4UBVNVPROC) (GLuint index, GLsizei count, const GLubyte *v);
04880 #endif
04881
04882 #ifndef GL_SGIX_texture_coordinate_clamp
04883 #define GL_SGIX_texture_coordinate_clamp 1
04884 #endif
04885
04886 #ifndef GL_SGIX_scalebias_hint
04887 #define GL_SGIX_scalebias_hint 1
04888 #endif
04889
04890 #ifndef GL_OML_interlace
04891 #define GL_OML_interlace 1
04892 #endif
04893
04894 #ifndef GL_OML_subsample
04895 #define GL_OML_subsample 1
04896 #endif
04897
04898 #ifndef GL_OML_resample
04899 #define GL_OML_resample 1
04900 #endif
04901
04902 #ifndef GL_NV_copy_depth_to_color
04903 #define GL_NV_copy_depth_to_color 1
04904 #endif
04905
04906 #ifndef GL_ATI_envmap_bumpmap
04907 #define GL_ATI_envmap_bumpmap 1
04908 #ifdef GL_GLEXT_PROTOTYPES
04909         GLAPI void APIENTRY glTexBumpParameterivATI (GLenum, const GLint *);
04910         GLAPI void APIENTRY glTexBumpParameterfvATI (GLenum, const GLfloat *);
04911         GLAPI void APIENTRY glGetTexBumpParameterivATI (GLenum, GLint *);
04912         GLAPI void APIENTRY glGetTexBumpParameterfvATI (GLenum, GLfloat *);
04913 #endif /* GL_GLEXT_PROTOTYPES */
04914         typedef void (APIENTRY * PFNGLTEXBUMPPARAMETERIVATIPROC) (GLenum pname, const GLint *param);
04915         typedef void (APIENTRY * PFNGLTEXBUMPPARAMETERFVATIPROC) (GLenum pname, const GLfloat *param);
04916         typedef void (APIENTRY * PFNGLGETTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param);
04917         typedef void (APIENTRY * PFNGLGETTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param);
04918 #endif
04919
04920 #ifndef GL_ATI_fragment_shader
04921 #define GL_ATI_fragment_shader 1
04922 #ifdef GL_GLEXT_PROTOTYPES
04923         GLAPI GLuint APIENTRY glGenFragmentShadersATI (GLuint);
04924         GLAPI void APIENTRY glBindFragmentShaderATI (GLuint);
04925         GLAPI void APIENTRY glDeleteFragmentShaderATI (GLuint);
04926         GLAPI void APIENTRY glBeginFragmentShaderATI (void);
04927         GLAPI void APIENTRY glEndFragmentShaderATI (void);
04928         GLAPI void APIENTRY glPassTexCoordATI (GLuint, GLuint, GLenum);
04929         GLAPI void APIENTRY glSampleMapATI (GLuint, GLuint, GLenum);
04930         GLAPI void APIENTRY glColorFragmentOp1ATI (GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint);
04931         GLAPI void APIENTRY glColorFragmentOp2ATI (GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint);
04932         GLAPI void APIENTRY glColorFragmentOp3ATI (GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint);
04933         GLAPI void APIENTRY glAlphaFragmentOp1ATI (GLenum, GLuint, GLuint, GLuint, GLuint, GLuint);
04934         GLAPI void APIENTRY glAlphaFragmentOp2ATI (GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint);
04935         GLAPI void APIENTRY glAlphaFragmentOp3ATI (GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint);
04936         GLAPI void APIENTRY glSetFragmentShaderConstantATI (GLuint, const GLfloat *);
04937 #endif /* GL_GLEXT_PROTOTYPES */
04938         typedef GLuint (APIENTRY * PFNGLGENFRAGMENTSHADERSATIPROC) (GLuint range);
04939         typedef void (APIENTRY * PFNGLBINDFRAGMENTSHADERATIPROC) (GLuint id);
04940         typedef void (APIENTRY * PFNGLDELETEFRAGMENTSHADERATIPROC) (GLuint id);
04941         typedef void (APIENTRY * PFNGLBEGINFRAGMENTSHADERATIPROC) (void);
04942         typedef void (APIENTRY * PFNGLENDFRAGMENTSHADERATIPROC) (void);
04943         typedef void (APIENTRY * PFNGLPASSTEXCOORDATIPROC) (GLuint dst, GLuint coord, GLenum swizzle);
04944         typedef void (APIENTRY * PFNGLSAMPLEMAPATIPROC) (GLuint dst, GLuint interp, GLenum swizzle);
04945         typedef void (APIENTRY * PFNGLCOLORFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
04946         typedef void (APIENTRY * PFNGLCOLORFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
04947         typedef void (APIENTRY * PFNGLCOLORFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
04948         typedef void (APIENTRY * PFNGLALPHAFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
04949         typedef void (APIENTRY * PFNGLALPHAFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
04950         typedef void (APIENTRY * PFNGLALPHAFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
04951         typedef void (APIENTRY * PFNGLSETFRAGMENTSHADERCONSTANTATIPROC) (GLuint dst, const GLfloat *value);
04952 #endif
04953
04954 #ifndef GL_ATI_pn_triangles
04955 #define GL_ATI_pn_triangles 1
04956 #ifdef GL_GLEXT_PROTOTYPES
04957         GLAPI void APIENTRY glPNTrianglesiATI (GLenum, GLint);
04958         GLAPI void APIENTRY glPNTrianglesfATI (GLenum, GLfloat);
04959 #endif /* GL_GLEXT_PROTOTYPES */
04960         typedef void (APIENTRY * PFNGLPNTRIANGLESIATIPROC) (GLenum pname, GLint param);
04961         typedef void (APIENTRY * PFNGLPNTRIANGLESFATIPROC) (GLenum pname, GLfloat param);
04962 #endif
04963
04964 #ifndef GL_ATI_vertex_array_object
04965 #define GL_ATI_vertex_array_object 1
04966 #ifdef GL_GLEXT_PROTOTYPES
04967         GLAPI GLuint APIENTRY glNewObjectBufferATI (GLsizei, const GLvoid *, GLenum);
04968         GLAPI GLboolean APIENTRY glIsObjectBufferATI (GLuint);
04969         GLAPI void APIENTRY glUpdateObjectBufferATI (GLuint, GLuint, GLsizei, const GLvoid *, GLenum);
04970         GLAPI void APIENTRY glGetObjectBufferfvATI (GLuint, GLenum, GLfloat *);
04971         GLAPI void APIENTRY glGetObjectBufferivATI (GLuint, GLenum, GLint *);
04972         GLAPI void APIENTRY glFreeObjectBufferATI (GLuint);
04973         GLAPI void APIENTRY glArrayObjectATI (GLenum, GLint, GLenum, GLsizei, GLuint, GLuint);
04974         GLAPI void APIENTRY glGetArrayObjectfvATI (GLenum, GLenum, GLfloat *);
04975         GLAPI void APIENTRY glGetArrayObjectivATI (GLenum, GLenum, GLint *);
04976         GLAPI void APIENTRY glVariantArrayObjectATI (GLuint, GLenum, GLsizei, GLuint, GLuint);
04977         GLAPI void APIENTRY glGetVariantArrayObjectfvATI (GLuint, GLenum, GLfloat *);
04978         GLAPI void APIENTRY glGetVariantArrayObjectivATI (GLuint, GLenum, GLint *);
04979 #endif /* GL_GLEXT_PROTOTYPES */
04980         typedef GLuint (APIENTRY * PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, const GLvoid *pointer, GLenum usage);
04981         typedef GLboolean (APIENTRY * PFNGLISOBJECTBUFFERATIPROC) (GLuint buffer);
04982         typedef void (APIENTRY * PFNGLUPDATEOBJECTBUFFERATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const GLvoid *pointer, GLenum preserve);
04983         typedef void (APIENTRY * PFNGLGETOBJECTBUFFERFVATIPROC) (GLuint buffer, GLenum pname, GLfloat *params);
04984         typedef void (APIENTRY * PFNGLGETOBJECTBUFFERIVATIPROC) (GLuint buffer, GLenum pname, GLint *params);
04985         typedef void (APIENTRY * PFNGLFREEOBJECTBUFFERATIPROC) (GLuint buffer);
04986         typedef void (APIENTRY * PFNGLARRAYOBJECTATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
04987         typedef void (APIENTRY * PFNGLGETARRAYOBJECTFVATIPROC) (GLenum array, GLenum pname, GLfloat *params);
04988         typedef void (APIENTRY * PFNGLGETARRAYOBJECTIVATIPROC) (GLenum array, GLenum pname, GLint *params);
04989         typedef void (APIENTRY * PFNGLVARIANTARRAYOBJECTATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
04990         typedef void (APIENTRY * PFNGLGETVARIANTARRAYOBJECTFVATIPROC) (GLuint id, GLenum pname, GLfloat *params);
04991         typedef void (APIENTRY * PFNGLGETVARIANTARRAYOBJECTIVATIPROC) (GLuint id, GLenum pname, GLint *params);
04992 #endif
04993
04994 #ifndef GL_EXT_vertex_shader
04995 #define GL_EXT_vertex_shader 1
04996 #ifdef GL_GLEXT_PROTOTYPES
04997         GLAPI void APIENTRY glBeginVertexShaderEXT (void);
04998         GLAPI void APIENTRY glEndVertexShaderEXT (void);
04999         GLAPI void APIENTRY glBindVertexShaderEXT (GLuint);
05000         GLAPI GLuint APIENTRY glGenVertexShadersEXT (GLuint);
05001         GLAPI void APIENTRY glDeleteVertexShaderEXT (GLuint);
05002         GLAPI void APIENTRY glShaderOp1EXT (GLenum, GLuint, GLuint);
05003         GLAPI void APIENTRY glShaderOp2EXT (GLenum, GLuint, GLuint, GLuint);
05004         GLAPI void APIENTRY glShaderOp3EXT (GLenum, GLuint, GLuint, GLuint, GLuint);
05005         GLAPI void APIENTRY glSwizzleEXT (GLuint, GLuint, GLenum, GLenum, GLenum, GLenum);
05006         GLAPI void APIENTRY glWriteMaskEXT (GLuint, GLuint, GLenum, GLenum, GLenum, GLenum);
05007         GLAPI void APIENTRY glInsertComponentEXT (GLuint, GLuint, GLuint);
05008         GLAPI void APIENTRY glExtractComponentEXT (GLuint, GLuint, GLuint);
05009         GLAPI GLuint APIENTRY glGenSymbolsEXT (GLenum, GLenum, GLenum, GLuint);
05010         GLAPI void APIENTRY glSetInvariantEXT (GLuint, GLenum, const GLvoid *);
05011         GLAPI void APIENTRY glSetLocalConstantEXT (GLuint, GLenum, const GLvoid *);
05012         GLAPI void APIENTRY glVariantbvEXT (GLuint, const GLbyte *);
05013         GLAPI void APIENTRY glVariantsvEXT (GLuint, const GLshort *);
05014         GLAPI void APIENTRY glVariantivEXT (GLuint, const GLint *);
05015         GLAPI void APIENTRY glVariantfvEXT (GLuint, const GLfloat *);
05016         GLAPI void APIENTRY glVariantdvEXT (GLuint, const GLdouble *);
05017         GLAPI void APIENTRY glVariantubvEXT (GLuint, const GLubyte *);
05018         GLAPI void APIENTRY glVariantusvEXT (GLuint, const GLushort *);
05019         GLAPI void APIENTRY glVariantuivEXT (GLuint, const GLuint *);
05020         GLAPI void APIENTRY glVariantPointerEXT (GLuint, GLenum, GLuint, const GLvoid *);
05021         GLAPI void APIENTRY glEnableVariantClientStateEXT (GLuint);
05022         GLAPI void APIENTRY glDisableVariantClientStateEXT (GLuint);
05023         GLAPI GLuint APIENTRY glBindLightParameterEXT (GLenum, GLenum);
05024         GLAPI GLuint APIENTRY glBindMaterialParameterEXT (GLenum, GLenum);
05025         GLAPI GLuint APIENTRY glBindTexGenParameterEXT (GLenum, GLenum, GLenum);
05026         GLAPI GLuint APIENTRY glBindTextureUnitParameterEXT (GLenum, GLenum);
05027         GLAPI GLuint APIENTRY glBindParameterEXT (GLenum);
05028         GLAPI GLboolean APIENTRY glIsVariantEnabledEXT (GLuint, GLenum);
05029         GLAPI void APIENTRY glGetVariantBooleanvEXT (GLuint, GLenum, GLboolean *);
05030         GLAPI void APIENTRY glGetVariantIntegervEXT (GLuint, GLenum, GLint *);
05031         GLAPI void APIENTRY glGetVariantFloatvEXT (GLuint, GLenum, GLfloat *);
05032         GLAPI void APIENTRY glGetVariantPointervEXT (GLuint, GLenum, GLvoid* *);
05033         GLAPI void APIENTRY glGetInvariantBooleanvEXT (GLuint, GLenum, GLboolean *);
05034         GLAPI void APIENTRY glGetInvariantIntegervEXT (GLuint, GLenum, GLint *);
05035         GLAPI void APIENTRY glGetInvariantFloatvEXT (GLuint, GLenum, GLfloat *);
05036         GLAPI void APIENTRY glGetLocalConstantBooleanvEXT (GLuint, GLenum, GLboolean *);
05037         GLAPI void APIENTRY glGetLocalConstantIntegervEXT (GLuint, GLenum, GLint *);
05038         GLAPI void APIENTRY glGetLocalConstantFloatvEXT (GLuint, GLenum, GLfloat *);
05039 #endif /* GL_GLEXT_PROTOTYPES */
05040         typedef void (APIENTRY * PFNGLBEGINVERTEXSHADEREXTPROC) (void);
05041         typedef void (APIENTRY * PFNGLENDVERTEXSHADEREXTPROC) (void);
05042         typedef void (APIENTRY * PFNGLBINDVERTEXSHADEREXTPROC) (GLuint id);
05043         typedef GLuint (APIENTRY * PFNGLGENVERTEXSHADERSEXTPROC) (GLuint range);
05044         typedef void (APIENTRY * PFNGLDELETEVERTEXSHADEREXTPROC) (GLuint id);
05045         typedef void (APIENTRY * PFNGLSHADEROP1EXTPROC) (GLenum op, GLuint res, GLuint arg1);
05046         typedef void (APIENTRY * PFNGLSHADEROP2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2);
05047         typedef void (APIENTRY * PFNGLSHADEROP3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3);
05048         typedef void (APIENTRY * PFNGLSWIZZLEEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
05049         typedef void (APIENTRY * PFNGLWRITEMASKEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
05050         typedef void (APIENTRY * PFNGLINSERTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num);
05051         typedef void (APIENTRY * PFNGLEXTRACTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num);
05052         typedef GLuint (APIENTRY * PFNGLGENSYMBOLSEXTPROC) (GLenum datatype, GLenum storagetype, GLenum range, GLuint components);
05053         typedef void (APIENTRY * PFNGLSETINVARIANTEXTPROC) (GLuint id, GLenum type, const GLvoid *addr);
05054         typedef void (APIENTRY * PFNGLSETLOCALCONSTANTEXTPROC) (GLuint id, GLenum type, const GLvoid *addr);
05055         typedef void (APIENTRY * PFNGLVARIANTBVEXTPROC) (GLuint id, const GLbyte *addr);
05056         typedef void (APIENTRY * PFNGLVARIANTSVEXTPROC) (GLuint id, const GLshort *addr);
05057         typedef void (APIENTRY * PFNGLVARIANTIVEXTPROC) (GLuint id, const GLint *addr);
05058         typedef void (APIENTRY * PFNGLVARIANTFVEXTPROC) (GLuint id, const GLfloat *addr);
05059         typedef void (APIENTRY * PFNGLVARIANTDVEXTPROC) (GLuint id, const GLdouble *addr);
05060         typedef void (APIENTRY * PFNGLVARIANTUBVEXTPROC) (GLuint id, const GLubyte *addr);
05061         typedef void (APIENTRY * PFNGLVARIANTUSVEXTPROC) (GLuint id, const GLushort *addr);
05062         typedef void (APIENTRY * PFNGLVARIANTUIVEXTPROC) (GLuint id, const GLuint *addr);
05063         typedef void (APIENTRY * PFNGLVARIANTPOINTEREXTPROC) (GLuint id, GLenum type, GLuint stride, const GLvoid *addr);
05064         typedef void (APIENTRY * PFNGLENABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id);
05065         typedef void (APIENTRY * PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id);
05066         typedef GLuint (APIENTRY * PFNGLBINDLIGHTPARAMETEREXTPROC) (GLenum light, GLenum value);
05067         typedef GLuint (APIENTRY * PFNGLBINDMATERIALPARAMETEREXTPROC) (GLenum face, GLenum value);
05068         typedef GLuint (APIENTRY * PFNGLBINDTEXGENPARAMETEREXTPROC) (GLenum unit, GLenum coord, GLenum value);
05069         typedef GLuint (APIENTRY * PFNGLBINDTEXTUREUNITPARAMETEREXTPROC) (GLenum unit, GLenum value);
05070         typedef GLuint (APIENTRY * PFNGLBINDPARAMETEREXTPROC) (GLenum value);
05071         typedef GLboolean (APIENTRY * PFNGLISVARIANTENABLEDEXTPROC) (GLuint id, GLenum cap);
05072         typedef void (APIENTRY * PFNGLGETVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
05073         typedef void (APIENTRY * PFNGLGETVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
05074         typedef void (APIENTRY * PFNGLGETVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
05075         typedef void (APIENTRY * PFNGLGETVARIANTPOINTERVEXTPROC) (GLuint id, GLenum value, GLvoid* *data);
05076         typedef void (APIENTRY * PFNGLGETINVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
05077         typedef void (APIENTRY * PFNGLGETINVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
05078         typedef void (APIENTRY * PFNGLGETINVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
05079         typedef void (APIENTRY * PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
05080         typedef void (APIENTRY * PFNGLGETLOCALCONSTANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
05081         typedef void (APIENTRY * PFNGLGETLOCALCONSTANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
05082 #endif
05083
05084 #ifndef GL_ATI_vertex_streams
05085 #define GL_ATI_vertex_streams 1
05086 #ifdef GL_GLEXT_PROTOTYPES
05087         GLAPI void APIENTRY glVertexStream1sATI (GLenum, GLshort);
05088         GLAPI void APIENTRY glVertexStream1svATI (GLenum, const GLshort *);
05089         GLAPI void APIENTRY glVertexStream1iATI (GLenum, GLint);
05090         GLAPI void APIENTRY glVertexStream1ivATI (GLenum, const GLint *);
05091         GLAPI void APIENTRY glVertexStream1fATI (GLenum, GLfloat);
05092         GLAPI void APIENTRY glVertexStream1fvATI (GLenum, const GLfloat *);
05093         GLAPI void APIENTRY glVertexStream1dATI (GLenum, GLdouble);
05094         GLAPI void APIENTRY glVertexStream1dvATI (GLenum, const GLdouble *);
05095         GLAPI void APIENTRY glVertexStream2sATI (GLenum, GLshort, GLshort);
05096         GLAPI void APIENTRY glVertexStream2svATI (GLenum, const GLshort *);
05097         GLAPI void APIENTRY glVertexStream2iATI (GLenum, GLint, GLint);
05098         GLAPI void APIENTRY glVertexStream2ivATI (GLenum, const GLint *);
05099         GLAPI void APIENTRY glVertexStream2fATI (GLenum, GLfloat, GLfloat);
05100         GLAPI void APIENTRY glVertexStream2fvATI (GLenum, const GLfloat *);
05101         GLAPI void APIENTRY glVertexStream2dATI (GLenum, GLdouble, GLdouble);
05102         GLAPI void APIENTRY glVertexStream2dvATI (GLenum, const GLdouble *);
05103         GLAPI void APIENTRY glVertexStream3sATI (GLenum, GLshort, GLshort, GLshort);
05104         GLAPI void APIENTRY glVertexStream3svATI (GLenum, const GLshort *);
05105         GLAPI void APIENTRY glVertexStream3iATI (GLenum, GLint, GLint, GLint);
05106         GLAPI void APIENTRY glVertexStream3ivATI (GLenum, const GLint *);
05107         GLAPI void APIENTRY glVertexStream3fATI (GLenum, GLfloat, GLfloat, GLfloat);
05108         GLAPI void APIENTRY glVertexStream3fvATI (GLenum, const GLfloat *);
05109         GLAPI void APIENTRY glVertexStream3dATI (GLenum, GLdouble, GLdouble, GLdouble);
05110         GLAPI void APIENTRY glVertexStream3dvATI (GLenum, const GLdouble *);
05111         GLAPI void APIENTRY glVertexStream4sATI (GLenum, GLshort, GLshort, GLshort, GLshort);
05112         GLAPI void APIENTRY glVertexStream4svATI (GLenum, const GLshort *);
05113         GLAPI void APIENTRY glVertexStream4iATI (GLenum, GLint, GLint, GLint, GLint);
05114         GLAPI void APIENTRY glVertexStream4ivATI (GLenum, const GLint *);
05115         GLAPI void APIENTRY glVertexStream4fATI (GLenum, GLfloat, GLfloat, GLfloat, GLfloat);
05116         GLAPI void APIENTRY glVertexStream4fvATI (GLenum, const GLfloat *);
05117         GLAPI void APIENTRY glVertexStream4dATI (GLenum, GLdouble, GLdouble, GLdouble, GLdouble);
05118         GLAPI void APIENTRY glVertexStream4dvATI (GLenum, const GLdouble *);
05119         GLAPI void APIENTRY glNormalStream3bATI (GLenum, GLbyte, GLbyte, GLbyte);
05120         GLAPI void APIENTRY glNormalStream3bvATI (GLenum, const GLbyte *);
05121         GLAPI void APIENTRY glNormalStream3sATI (GLenum, GLshort, GLshort, GLshort);
05122         GLAPI void APIENTRY glNormalStream3svATI (GLenum, const GLshort *);
05123         GLAPI void APIENTRY glNormalStream3iATI (GLenum, GLint, GLint, GLint);
05124         GLAPI void APIENTRY glNormalStream3ivATI (GLenum, const GLint *);
05125         GLAPI void APIENTRY glNormalStream3fATI (GLenum, GLfloat, GLfloat, GLfloat);
05126         GLAPI void APIENTRY glNormalStream3fvATI (GLenum, const GLfloat *);
05127         GLAPI void APIENTRY glNormalStream3dATI (GLenum, GLdouble, GLdouble, GLdouble);
05128         GLAPI void APIENTRY glNormalStream3dvATI (GLenum, const GLdouble *);
05129         GLAPI void APIENTRY glClientActiveVertexStreamATI (GLenum);
05130         GLAPI void APIENTRY glVertexBlendEnviATI (GLenum, GLint);
05131         GLAPI void APIENTRY glVertexBlendEnvfATI (GLenum, GLfloat);
05132 #endif /* GL_GLEXT_PROTOTYPES */
05133         typedef void (APIENTRY * PFNGLVERTEXSTREAM1SATIPROC) (GLenum stream, GLshort x);
05134         typedef void (APIENTRY * PFNGLVERTEXSTREAM1SVATIPROC) (GLenum stream, const GLshort *coords);
05135         typedef void (APIENTRY * PFNGLVERTEXSTREAM1IATIPROC) (GLenum stream, GLint x);
05136         typedef void (APIENTRY * PFNGLVERTEXSTREAM1IVATIPROC) (GLenum stream, const GLint *coords);
05137         typedef void (APIENTRY * PFNGLVERTEXSTREAM1FATIPROC) (GLenum stream, GLfloat x);
05138         typedef void (APIENTRY * PFNGLVERTEXSTREAM1FVATIPROC) (GLenum stream, const GLfloat *coords);
05139         typedef void (APIENTRY * PFNGLVERTEXSTREAM1DATIPROC) (GLenum stream, GLdouble x);
05140         typedef void (APIENTRY * PFNGLVERTEXSTREAM1DVATIPROC) (GLenum stream, const GLdouble *coords);
05141         typedef void (APIENTRY * PFNGLVERTEXSTREAM2SATIPROC) (GLenum stream, GLshort x, GLshort y);
05142         typedef void (APIENTRY * PFNGLVERTEXSTREAM2SVATIPROC) (GLenum stream, const GLshort *coords);
05143         typedef void (APIENTRY * PFNGLVERTEXSTREAM2IATIPROC) (GLenum stream, GLint x, GLint y);
05144         typedef void (APIENTRY * PFNGLVERTEXSTREAM2IVATIPROC) (GLenum stream, const GLint *coords);
05145         typedef void (APIENTRY * PFNGLVERTEXSTREAM2FATIPROC) (GLenum stream, GLfloat x, GLfloat y);
05146         typedef void (APIENTRY * PFNGLVERTEXSTREAM2FVATIPROC) (GLenum stream, const GLfloat *coords);
05147         typedef void (APIENTRY * PFNGLVERTEXSTREAM2DATIPROC) (GLenum stream, GLdouble x, GLdouble y);
05148         typedef void (APIENTRY * PFNGLVERTEXSTREAM2DVATIPROC) (GLenum stream, const GLdouble *coords);
05149         typedef void (APIENTRY * PFNGLVERTEXSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z);
05150         typedef void (APIENTRY * PFNGLVERTEXSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords);
05151         typedef void (APIENTRY * PFNGLVERTEXSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z);
05152         typedef void (APIENTRY * PFNGLVERTEXSTREAM3IVATIPROC) (GLenum stream, const GLint *coords);
05153         typedef void (APIENTRY * PFNGLVERTEXSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z);
05154         typedef void (APIENTRY * PFNGLVERTEXSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords);
05155         typedef void (APIENTRY * PFNGLVERTEXSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z);
05156         typedef void (APIENTRY * PFNGLVERTEXSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords);
05157         typedef void (APIENTRY * PFNGLVERTEXSTREAM4SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w);
05158         typedef void (APIENTRY * PFNGLVERTEXSTREAM4SVATIPROC) (GLenum stream, const GLshort *coords);
05159         typedef void (APIENTRY * PFNGLVERTEXSTREAM4IATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w);
05160         typedef void (APIENTRY * PFNGLVERTEXSTREAM4IVATIPROC) (GLenum stream, const GLint *coords);
05161         typedef void (APIENTRY * PFNGLVERTEXSTREAM4FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
05162         typedef void (APIENTRY * PFNGLVERTEXSTREAM4FVATIPROC) (GLenum stream, const GLfloat *coords);
05163         typedef void (APIENTRY * PFNGLVERTEXSTREAM4DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
05164         typedef void (APIENTRY * PFNGLVERTEXSTREAM4DVATIPROC) (GLenum stream, const GLdouble *coords);
05165         typedef void (APIENTRY * PFNGLNORMALSTREAM3BATIPROC) (GLenum stream, GLbyte nx, GLbyte ny, GLbyte nz);
05166         typedef void (APIENTRY * PFNGLNORMALSTREAM3BVATIPROC) (GLenum stream, const GLbyte *coords);
05167         typedef void (APIENTRY * PFNGLNORMALSTREAM3SATIPROC) (GLenum stream, GLshort nx, GLshort ny, GLshort nz);
05168         typedef void (APIENTRY * PFNGLNORMALSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords);
05169         typedef void (APIENTRY * PFNGLNORMALSTREAM3IATIPROC) (GLenum stream, GLint nx, GLint ny, GLint nz);
05170         typedef void (APIENTRY * PFNGLNORMALSTREAM3IVATIPROC) (GLenum stream, const GLint *coords);
05171         typedef void (APIENTRY * PFNGLNORMALSTREAM3FATIPROC) (GLenum stream, GLfloat nx, GLfloat ny, GLfloat nz);
05172         typedef void (APIENTRY * PFNGLNORMALSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords);
05173         typedef void (APIENTRY * PFNGLNORMALSTREAM3DATIPROC) (GLenum stream, GLdouble nx, GLdouble ny, GLdouble nz);
05174         typedef void (APIENTRY * PFNGLNORMALSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords);
05175         typedef void (APIENTRY * PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC) (GLenum stream);
05176         typedef void (APIENTRY * PFNGLVERTEXBLENDENVIATIPROC) (GLenum pname, GLint param);
05177         typedef void (APIENTRY * PFNGLVERTEXBLENDENVFATIPROC) (GLenum pname, GLfloat param);
05178 #endif
05179
05180 #ifndef GL_ATI_element_array
05181 #define GL_ATI_element_array 1
05182 #ifdef GL_GLEXT_PROTOTYPES
05183         GLAPI void APIENTRY glElementPointerATI (GLenum, const GLvoid *);
05184         GLAPI void APIENTRY glDrawElementArrayATI (GLenum, GLsizei);
05185         GLAPI void APIENTRY glDrawRangeElementArrayATI (GLenum, GLuint, GLuint, GLsizei);
05186 #endif /* GL_GLEXT_PROTOTYPES */
05187         typedef void (APIENTRY * PFNGLELEMENTPOINTERATIPROC) (GLenum type, const GLvoid *pointer);
05188         typedef void (APIENTRY * PFNGLDRAWELEMENTARRAYATIPROC) (GLenum mode, GLsizei count);
05189         typedef void (APIENTRY * PFNGLDRAWRANGEELEMENTARRAYATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count);
05190 #endif
05191
05192 #ifndef GL_SUN_mesh_array
05193 #define GL_SUN_mesh_array 1
05194 #ifdef GL_GLEXT_PROTOTYPES
05195         GLAPI void APIENTRY glDrawMeshArraysSUN (GLenum, GLint, GLsizei, GLsizei);
05196 #endif /* GL_GLEXT_PROTOTYPES */
05197         typedef void (APIENTRY * PFNGLDRAWMESHARRAYSSUNPROC) (GLenum mode, GLint first, GLsizei count, GLsizei width);
05198 #endif
05199
05200 #ifndef GL_SUN_slice_accum
05201 #define GL_SUN_slice_accum 1
05202 #endif
05203
05204 #ifndef GL_NV_multisample_filter_hint
05205 #define GL_NV_multisample_filter_hint 1
05206 #endif
05207
05208 #ifndef GL_NV_depth_clamp
05209 #define GL_NV_depth_clamp 1
05210 #endif
05211
05212 #ifndef GL_NV_occlusion_query
05213 #define GL_NV_occlusion_query 1
05214 #ifdef GL_GLEXT_PROTOTYPES
05215         GLAPI void APIENTRY glGenOcclusionQueriesNV (GLsizei, GLuint *);
05216         GLAPI void APIENTRY glDeleteOcclusionQueriesNV (GLsizei, const GLuint *);
05217         GLAPI GLboolean APIENTRY glIsOcclusionQueryNV (GLuint);
05218         GLAPI void APIENTRY glBeginOcclusionQueryNV (GLuint);
05219         GLAPI void APIENTRY glEndOcclusionQueryNV (void);
05220         GLAPI void APIENTRY glGetOcclusionQueryivNV (GLuint, GLenum, GLint *);
05221         GLAPI void APIENTRY glGetOcclusionQueryuivNV (GLuint, GLenum, GLuint *);
05222 #endif /* GL_GLEXT_PROTOTYPES */
05223         typedef void (APIENTRY * PFNGLGENOCCLUSIONQUERIESNVPROC) (GLsizei n, GLuint *ids);
05224         typedef void (APIENTRY * PFNGLDELETEOCCLUSIONQUERIESNVPROC) (GLsizei n, const GLuint *ids);
05225         typedef GLboolean (APIENTRY * PFNGLISOCCLUSIONQUERYNVPROC) (GLuint id);
05226         typedef void (APIENTRY * PFNGLBEGINOCCLUSIONQUERYNVPROC) (GLuint id);
05227         typedef void (APIENTRY * PFNGLENDOCCLUSIONQUERYNVPROC) (void);
05228         typedef void (APIENTRY * PFNGLGETOCCLUSIONQUERYIVNVPROC) (GLuint id, GLenum pname, GLint *params);
05229         typedef void (APIENTRY * PFNGLGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pname, GLuint *params);
05230 #endif
05231
05232 #ifndef GL_NV_point_sprite
05233 #define GL_NV_point_sprite 1
05234 #ifdef GL_GLEXT_PROTOTYPES
05235         GLAPI void APIENTRY glPointParameteriNV (GLenum, GLint);
05236         GLAPI void APIENTRY glPointParameterivNV (GLenum, const GLint *);
05237 #endif /* GL_GLEXT_PROTOTYPES */
05238         typedef void (APIENTRY * PFNGLPOINTPARAMETERINVPROC) (GLenum pname, GLint param);
05239         typedef void (APIENTRY * PFNGLPOINTPARAMETERIVNVPROC) (GLenum pname, const GLint *params);
05240 #endif
05241
05242 #ifndef GL_NV_texture_shader3
05243 #define GL_NV_texture_shader3 1
05244 #endif
05245
05246 #ifndef GL_NV_vertex_program1_1
05247 #define GL_NV_vertex_program1_1 1
05248 #endif
05249
05250 #ifndef GL_EXT_shadow_funcs
05251 #define GL_EXT_shadow_funcs 1
05252 #endif
05253
05254 #ifndef GL_EXT_stencil_two_side
05255 #define GL_EXT_stencil_two_side 1
05256 #ifdef GL_GLEXT_PROTOTYPES
05257         GLAPI void APIENTRY glActiveStencilFaceEXT (GLenum);
05258 #endif /* GL_GLEXT_PROTOTYPES */
05259         typedef void (APIENTRY * PFNGLACTIVESTENCILFACEEXTPROC) (GLenum face);
05260 #endif
05261
05262 #ifndef GL_ATI_text_fragment_shader
05263 #define GL_ATI_text_fragment_shader 1
05264 #endif
05265
05266 #ifndef GL_APPLE_client_storage
05267 #define GL_APPLE_client_storage 1
05268 #endif
05269
05270 #ifndef GL_APPLE_element_array
05271 #define GL_APPLE_element_array 1
05272 #ifdef GL_GLEXT_PROTOTYPES
05273         GLAPI void APIENTRY glElementPointerAPPLE (GLenum, const GLvoid *);
05274         GLAPI void APIENTRY glDrawElementArrayAPPLE (GLenum, GLint, GLsizei);
05275         GLAPI void APIENTRY glDrawRangeElementArrayAPPLE (GLenum, GLuint, GLuint, GLint, GLsizei);
05276         GLAPI void APIENTRY glMultiDrawElementArrayAPPLE (GLenum, const GLint *, const GLsizei *, GLsizei);
05277         GLAPI void APIENTRY glMultiDrawRangeElementArrayAPPLE (GLenum, GLuint, GLuint, const GLint *, const GLsizei *, GLsizei);
05278 #endif /* GL_GLEXT_PROTOTYPES */
05279         typedef void (APIENTRY * PFNGLELEMENTPOINTERAPPLEPROC) (GLenum type, const GLvoid *pointer);
05280         typedef void (APIENTRY * PFNGLDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, GLint first, GLsizei count);
05281         typedef void (APIENTRY * PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count);
05282         typedef void (APIENTRY * PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
05283         typedef void (APIENTRY * PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, const GLint *first, const GLsizei *count, GLsizei primcount);
05284 #endif
05285
05286 #ifndef GL_APPLE_fence
05287 #define GL_APPLE_fence 1
05288 #ifdef GL_GLEXT_PROTOTYPES
05289         GLAPI void APIENTRY glGenFencesAPPLE (GLsizei, GLuint *);
05290         GLAPI void APIENTRY glDeleteFencesAPPLE (GLsizei, const GLuint *);
05291         GLAPI void APIENTRY glSetFenceAPPLE (GLuint);
05292         GLAPI GLboolean APIENTRY glIsFenceAPPLE (GLuint);
05293         GLAPI GLboolean APIENTRY glTestFenceAPPLE (GLuint);
05294         GLAPI void APIENTRY glFinishFenceAPPLE (GLuint);
05295         GLAPI GLboolean APIENTRY glTestObjectAPPLE (GLenum, GLuint);
05296         GLAPI void APIENTRY glFinishObjectAPPLE (GLenum, GLint);
05297 #endif /* GL_GLEXT_PROTOTYPES */
05298         typedef void (APIENTRY * PFNGLGENFENCESAPPLEPROC) (GLsizei n, GLuint *fences);
05299         typedef void (APIENTRY * PFNGLDELETEFENCESAPPLEPROC) (GLsizei n, const GLuint *fences);
05300         typedef void (APIENTRY * PFNGLSETFENCEAPPLEPROC) (GLuint fence);
05301         typedef GLboolean (APIENTRY * PFNGLISFENCEAPPLEPROC) (GLuint fence);
05302         typedef GLboolean (APIENTRY * PFNGLTESTFENCEAPPLEPROC) (GLuint fence);
05303         typedef void (APIENTRY * PFNGLFINISHFENCEAPPLEPROC) (GLuint fence);
05304         typedef GLboolean (APIENTRY * PFNGLTESTOBJECTAPPLEPROC) (GLenum object, GLuint name);
05305         typedef void (APIENTRY * PFNGLFINISHOBJECTAPPLEPROC) (GLenum object, GLint name);
05306 #endif
05307
05308 #ifndef GL_APPLE_vertex_array_object
05309 #define GL_APPLE_vertex_array_object 1
05310 #ifdef GL_GLEXT_PROTOTYPES
05311         GLAPI void APIENTRY glBindVertexArrayAPPLE (GLuint);
05312         GLAPI void APIENTRY glDeleteVertexArraysAPPLE (GLsizei, const GLuint *);
05313         GLAPI void APIENTRY glGenVertexArraysAPPLE (GLsizei, const GLuint *);
05314         GLAPI GLboolean APIENTRY glIsVertexArrayAPPLE (GLuint);
05315 #endif /* GL_GLEXT_PROTOTYPES */
05316         typedef void (APIENTRY * PFNGLBINDVERTEXARRAYAPPLEPROC) (GLuint array);
05317         typedef void (APIENTRY * PFNGLDELETEVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint *arrays);
05318         typedef void (APIENTRY * PFNGLGENVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint *arrays);
05319         typedef GLboolean (APIENTRY * PFNGLISVERTEXARRAYAPPLEPROC) (GLuint array);
05320 #endif
05321
05322 #ifndef GL_APPLE_vertex_array_range
05323 #define GL_APPLE_vertex_array_range 1
05324 #ifdef GL_GLEXT_PROTOTYPES
05325         GLAPI void APIENTRY glVertexArrayRangeAPPLE (GLsizei, GLvoid *);
05326         GLAPI void APIENTRY glFlushVertexArrayRangeAPPLE (GLsizei, GLvoid *);
05327         GLAPI void APIENTRY glVertexArrayParameteriAPPLE (GLenum, GLint);
05328 #endif /* GL_GLEXT_PROTOTYPES */
05329         typedef void (APIENTRY * PFNGLVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, GLvoid *pointer);
05330         typedef void (APIENTRY * PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, GLvoid *pointer);
05331         typedef void (APIENTRY * PFNGLVERTEXARRAYPARAMETERIAPPLEPROC) (GLenum pname, GLint param);
05332 #endif
05333
05334 #ifndef GL_APPLE_ycbcr_422
05335 #define GL_APPLE_ycbcr_422 1
05336 #endif
05337
05338 #ifndef GL_S3_s3tc
05339 #define GL_S3_s3tc 1
05340 #endif
05341
05342 #ifndef GL_ATI_draw_buffers
05343 #define GL_ATI_draw_buffers 1
05344 #ifdef GL_GLEXT_PROTOTYPES
05345         GLAPI void APIENTRY glDrawBuffersATI (GLsizei, const GLenum *);
05346 #endif /* GL_GLEXT_PROTOTYPES */
05347         typedef void (APIENTRY * PFNGLDRAWBUFFERSATIPROC) (GLsizei n, const GLenum *bufs);
05348 #endif
05349
05350 #ifndef GL_ATI_texture_env_combine3
05351 #define GL_ATI_texture_env_combine3 1
05352 #endif
05353
05354 #ifndef GL_ATI_texture_float
05355 #define GL_ATI_texture_float 1
05356 #endif
05357
05358 #ifndef GL_NV_float_buffer
05359 #define GL_NV_float_buffer 1
05360 #endif
05361
05362 #ifndef GL_NV_fragment_program
05363 #define GL_NV_fragment_program 1
05364         /* Some NV_fragment_program entry points are shared with ARB_vertex_program. */
05365 #ifdef GL_GLEXT_PROTOTYPES
05366         GLAPI void APIENTRY glProgramNamedParameter4fNV (GLuint, GLsizei, const GLubyte *, GLfloat, GLfloat, GLfloat, GLfloat);
05367         GLAPI void APIENTRY glProgramNamedParameter4dNV (GLuint, GLsizei, const GLubyte *, GLdouble, GLdouble, GLdouble, GLdouble);
05368         GLAPI void APIENTRY glProgramNamedParameter4fvNV (GLuint, GLsizei, const GLubyte *, const GLfloat *);
05369         GLAPI void APIENTRY glProgramNamedParameter4dvNV (GLuint, GLsizei, const GLubyte *, const GLdouble *);
05370         GLAPI void APIENTRY glGetProgramNamedParameterfvNV (GLuint, GLsizei, const GLubyte *, GLfloat *);
05371         GLAPI void APIENTRY glGetProgramNamedParameterdvNV (GLuint, GLsizei, const GLubyte *, GLdouble *);
05372 #endif /* GL_GLEXT_PROTOTYPES */
05373         typedef void (APIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
05374         typedef void (APIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
05375         typedef void (APIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
05376         typedef void (APIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
05377         typedef void (APIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
05378         typedef void (APIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
05379 #endif
05380
05381 #ifndef GL_NV_half_float
05382 #define GL_NV_half_float 1
05383         /* GL type for representing NVIDIA "half" floating point type in host memory */
05384         /* Only used by this extension for now; later needs to be moved earlier in glext.h */
05385         typedef unsigned short GLhalfNV;
05386 #ifdef GL_GLEXT_PROTOTYPES
05387         GLAPI void APIENTRY glVertex2hNV (GLhalfNV, GLhalfNV);
05388         GLAPI void APIENTRY glVertex2hvNV (const GLhalfNV *);
05389         GLAPI void APIENTRY glVertex3hNV (GLhalfNV, GLhalfNV, GLhalfNV);
05390         GLAPI void APIENTRY glVertex3hvNV (const GLhalfNV *);
05391         GLAPI void APIENTRY glVertex4hNV (GLhalfNV, GLhalfNV, GLhalfNV, GLhalfNV);
05392         GLAPI void APIENTRY glVertex4hvNV (const GLhalfNV *);
05393         GLAPI void APIENTRY glNormal3hNV (GLhalfNV, GLhalfNV, GLhalfNV);
05394         GLAPI void APIENTRY glNormal3hvNV (const GLhalfNV *);
05395         GLAPI void APIENTRY glColor3hNV (GLhalfNV, GLhalfNV, GLhalfNV);
05396         GLAPI void APIENTRY glColor3hvNV (const GLhalfNV *);
05397         GLAPI void APIENTRY glColor4hNV (GLhalfNV, GLhalfNV, GLhalfNV, GLhalfNV);
05398         GLAPI void APIENTRY glColor4hvNV (const GLhalfNV *);
05399         GLAPI void APIENTRY glTexCoord1hNV (GLhalfNV);
05400         GLAPI void APIENTRY glTexCoord1hvNV (const GLhalfNV *);
05401         GLAPI void APIENTRY glTexCoord2hNV (GLhalfNV, GLhalfNV);
05402         GLAPI void APIENTRY glTexCoord2hvNV (const GLhalfNV *);
05403         GLAPI void APIENTRY glTexCoord3hNV (GLhalfNV, GLhalfNV, GLhalfNV);
05404         GLAPI void APIENTRY glTexCoord3hvNV (const GLhalfNV *);
05405         GLAPI void APIENTRY glTexCoord4hNV (GLhalfNV, GLhalfNV, GLhalfNV, GLhalfNV);
05406         GLAPI void APIENTRY glTexCoord4hvNV (const GLhalfNV *);
05407         GLAPI void APIENTRY glMultiTexCoord1hNV (GLenum, GLhalfNV);
05408         GLAPI void APIENTRY glMultiTexCoord1hvNV (GLenum, const GLhalfNV *);
05409         GLAPI void APIENTRY glMultiTexCoord2hNV (GLenum, GLhalfNV, GLhalfNV);
05410         GLAPI void APIENTRY glMultiTexCoord2hvNV (GLenum, const GLhalfNV *);
05411         GLAPI void APIENTRY glMultiTexCoord3hNV (GLenum, GLhalfNV, GLhalfNV, GLhalfNV);
05412         GLAPI void APIENTRY glMultiTexCoord3hvNV (GLenum, const GLhalfNV *);
05413         GLAPI void APIENTRY glMultiTexCoord4hNV (GLenum, GLhalfNV, GLhalfNV, GLhalfNV, GLhalfNV);
05414         GLAPI void APIENTRY glMultiTexCoord4hvNV (GLenum, const GLhalfNV *);
05415         GLAPI void APIENTRY glFogCoordhNV (GLhalfNV);
05416         GLAPI void APIENTRY glFogCoordhvNV (const GLhalfNV *);
05417         GLAPI void APIENTRY glSecondaryColor3hNV (GLhalfNV, GLhalfNV, GLhalfNV);
05418         GLAPI void APIENTRY glSecondaryColor3hvNV (const GLhalfNV *);
05419         GLAPI void APIENTRY glVertexWeighthNV (GLhalfNV);
05420         GLAPI void APIENTRY glVertexWeighthvNV (const GLhalfNV *);
05421         GLAPI void APIENTRY glVertexAttrib1hNV (GLuint, GLhalfNV);
05422         GLAPI void APIENTRY glVertexAttrib1hvNV (GLuint, const GLhalfNV *);
05423         GLAPI void APIENTRY glVertexAttrib2hNV (GLuint, GLhalfNV, GLhalfNV);
05424         GLAPI void APIENTRY glVertexAttrib2hvNV (GLuint, const GLhalfNV *);
05425         GLAPI void APIENTRY glVertexAttrib3hNV (GLuint, GLhalfNV, GLhalfNV, GLhalfNV);
05426         GLAPI void APIENTRY glVertexAttrib3hvNV (GLuint, const GLhalfNV *);
05427         GLAPI void APIENTRY glVertexAttrib4hNV (GLuint, GLhalfNV, GLhalfNV, GLhalfNV, GLhalfNV);
05428         GLAPI void APIENTRY glVertexAttrib4hvNV (GLuint, const GLhalfNV *);
05429         GLAPI void APIENTRY glVertexAttribs1hvNV (GLuint, GLsizei, const GLhalfNV *);
05430         GLAPI void APIENTRY glVertexAttribs2hvNV (GLuint, GLsizei, const GLhalfNV *);
05431         GLAPI void APIENTRY glVertexAttribs3hvNV (GLuint, GLsizei, const GLhalfNV *);
05432         GLAPI void APIENTRY glVertexAttribs4hvNV (GLuint, GLsizei, const GLhalfNV *);
05433 #endif /* GL_GLEXT_PROTOTYPES */
05434         typedef void (APIENTRY * PFNGLVERTEX2HNVPROC) (GLhalfNV x, GLhalfNV y);
05435         typedef void (APIENTRY * PFNGLVERTEX2HVNVPROC) (const GLhalfNV *v);
05436         typedef void (APIENTRY * PFNGLVERTEX3HNVPROC) (GLhalfNV x, GLhalfNV y, GLhalfNV z);
05437         typedef void (APIENTRY * PFNGLVERTEX3HVNVPROC) (const GLhalfNV *v);
05438         typedef void (APIENTRY * PFNGLVERTEX4HNVPROC) (GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
05439         typedef void (APIENTRY * PFNGLVERTEX4HVNVPROC) (const GLhalfNV *v);
05440         typedef void (APIENTRY * PFNGLNORMAL3HNVPROC) (GLhalfNV nx, GLhalfNV ny, GLhalfNV nz);
05441         typedef void (APIENTRY * PFNGLNORMAL3HVNVPROC) (const GLhalfNV *v);
05442         typedef void (APIENTRY * PFNGLCOLOR3HNVPROC) (GLhalfNV red, GLhalfNV green, GLhalfNV blue);
05443         typedef void (APIENTRY * PFNGLCOLOR3HVNVPROC) (const GLhalfNV *v);
05444         typedef void (APIENTRY * PFNGLCOLOR4HNVPROC) (GLhalfNV red, GLhalfNV green, GLhalfNV blue, GLhalfNV alpha);
05445         typedef void (APIENTRY * PFNGLCOLOR4HVNVPROC) (const GLhalfNV *v);
05446         typedef void (APIENTRY * PFNGLTEXCOORD1HNVPROC) (GLhalfNV s);
05447         typedef void (APIENTRY * PFNGLTEXCOORD1HVNVPROC) (const GLhalfNV *v);
05448         typedef void (APIENTRY * PFNGLTEXCOORD2HNVPROC) (GLhalfNV s, GLhalfNV t);
05449         typedef void (APIENTRY * PFNGLTEXCOORD2HVNVPROC) (const GLhalfNV *v);
05450         typedef void (APIENTRY * PFNGLTEXCOORD3HNVPROC) (GLhalfNV s, GLhalfNV t, GLhalfNV r);
05451         typedef void (APIENTRY * PFNGLTEXCOORD3HVNVPROC) (const GLhalfNV *v);
05452         typedef void (APIENTRY * PFNGLTEXCOORD4HNVPROC) (GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
05453         typedef void (APIENTRY * PFNGLTEXCOORD4HVNVPROC) (const GLhalfNV *v);
05454         typedef void (APIENTRY * PFNGLMULTITEXCOORD1HNVPROC) (GLenum target, GLhalfNV s);
05455         typedef void (APIENTRY * PFNGLMULTITEXCOORD1HVNVPROC) (GLenum target, const GLhalfNV *v);
05456         typedef void (APIENTRY * PFNGLMULTITEXCOORD2HNVPROC) (GLenum target, GLhalfNV s, GLhalfNV t);
05457         typedef void (APIENTRY * PFNGLMULTITEXCOORD2HVNVPROC) (GLenum target, const GLhalfNV *v);
05458         typedef void (APIENTRY * PFNGLMULTITEXCOORD3HNVPROC) (GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r);
05459         typedef void (APIENTRY * PFNGLMULTITEXCOORD3HVNVPROC) (GLenum target, const GLhalfNV *v);
05460         typedef void (APIENTRY * PFNGLMULTITEXCOORD4HNVPROC) (GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
05461         typedef void (APIENTRY * PFNGLMULTITEXCOORD4HVNVPROC) (GLenum target, const GLhalfNV *v);
05462         typedef void (APIENTRY * PFNGLFOGCOORDHNVPROC) (GLhalfNV fog);
05463         typedef void (APIENTRY * PFNGLFOGCOORDHVNVPROC) (const GLhalfNV *fog);
05464         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3HNVPROC) (GLhalfNV red, GLhalfNV green, GLhalfNV blue);
05465         typedef void (APIENTRY * PFNGLSECONDARYCOLOR3HVNVPROC) (const GLhalfNV *v);
05466         typedef void (APIENTRY * PFNGLVERTEXWEIGHTHNVPROC) (GLhalfNV weight);
05467         typedef void (APIENTRY * PFNGLVERTEXWEIGHTHVNVPROC) (const GLhalfNV *weight);
05468         typedef void (APIENTRY * PFNGLVERTEXATTRIB1HNVPROC) (GLuint index, GLhalfNV x);
05469         typedef void (APIENTRY * PFNGLVERTEXATTRIB1HVNVPROC) (GLuint index, const GLhalfNV *v);
05470         typedef void (APIENTRY * PFNGLVERTEXATTRIB2HNVPROC) (GLuint index, GLhalfNV x, GLhalfNV y);
05471         typedef void (APIENTRY * PFNGLVERTEXATTRIB2HVNVPROC) (GLuint index, const GLhalfNV *v);
05472         typedef void (APIENTRY * PFNGLVERTEXATTRIB3HNVPROC) (GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z);
05473         typedef void (APIENTRY * PFNGLVERTEXATTRIB3HVNVPROC) (GLuint index, const GLhalfNV *v);
05474         typedef void (APIENTRY * PFNGLVERTEXATTRIB4HNVPROC) (GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
05475         typedef void (APIENTRY * PFNGLVERTEXATTRIB4HVNVPROC) (GLuint index, const GLhalfNV *v);
05476         typedef void (APIENTRY * PFNGLVERTEXATTRIBS1HVNVPROC) (GLuint index, GLsizei n, const GLhalfNV *v);
05477         typedef void (APIENTRY * PFNGLVERTEXATTRIBS2HVNVPROC) (GLuint index, GLsizei n, const GLhalfNV *v);
05478         typedef void (APIENTRY * PFNGLVERTEXATTRIBS3HVNVPROC) (GLuint index, GLsizei n, const GLhalfNV *v);
05479         typedef void (APIENTRY * PFNGLVERTEXATTRIBS4HVNVPROC) (GLuint index, GLsizei n, const GLhalfNV *v);
05480 #endif
05481
05482 #ifndef GL_NV_pixel_data_range
05483 #define GL_NV_pixel_data_range 1
05484 #ifdef GL_GLEXT_PROTOTYPES
05485         GLAPI void APIENTRY glPixelDataRangeNV (GLenum, GLsizei, GLvoid *);
05486         GLAPI void APIENTRY glFlushPixelDataRangeNV (GLenum);
05487 #endif /* GL_GLEXT_PROTOTYPES */
05488         typedef void (APIENTRY * PFNGLPIXELDATARANGENVPROC) (GLenum target, GLsizei length, GLvoid *pointer);
05489         typedef void (APIENTRY * PFNGLFLUSHPIXELDATARANGENVPROC) (GLenum target);
05490 #endif
05491
05492 #ifndef GL_NV_primitive_restart
05493 #define GL_NV_primitive_restart 1
05494 #ifdef GL_GLEXT_PROTOTYPES
05495         GLAPI void APIENTRY glPrimitiveRestartNV (void);
05496         GLAPI void APIENTRY glPrimitiveRestartIndexNV (GLuint);
05497 #endif /* GL_GLEXT_PROTOTYPES */
05498         typedef void (APIENTRY * PFNGLPRIMITIVERESTARTNVPROC) (void);
05499         typedef void (APIENTRY * PFNGLPRIMITIVERESTARTINDEXNVPROC) (GLuint index);
05500 #endif
05501
05502 #ifndef GL_NV_texture_expand_normal
05503 #define GL_NV_texture_expand_normal 1
05504 #endif
05505
05506 #ifndef GL_NV_vertex_program2
05507 #define GL_NV_vertex_program2 1
05508 #endif
05509
05510 #ifndef GL_ATI_map_object_buffer
05511 #define GL_ATI_map_object_buffer 1
05512 #ifdef GL_GLEXT_PROTOTYPES
05513         GLAPI GLvoid* APIENTRY glMapObjectBufferATI (GLuint);
05514         GLAPI void APIENTRY glUnmapObjectBufferATI (GLuint);
05515 #endif /* GL_GLEXT_PROTOTYPES */
05516         typedef GLvoid* (APIENTRY * PFNGLMAPOBJECTBUFFERATIPROC) (GLuint buffer);
05517         typedef void (APIENTRY * PFNGLUNMAPOBJECTBUFFERATIPROC) (GLuint buffer);
05518 #endif
05519
05520 #ifndef GL_ATI_separate_stencil
05521 #define GL_ATI_separate_stencil 1
05522 #ifdef GL_GLEXT_PROTOTYPES
05523         GLAPI void APIENTRY glStencilOpSeparateATI (GLenum, GLenum, GLenum, GLenum);
05524         GLAPI void APIENTRY glStencilFuncSeparateATI (GLenum, GLenum, GLint, GLuint);
05525 #endif /* GL_GLEXT_PROTOTYPES */
05526         typedef void (APIENTRY * PFNGLSTENCILOPSEPARATEATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
05527         typedef void (APIENTRY * PFNGLSTENCILFUNCSEPARATEATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
05528 #endif
05529
05530 #ifndef GL_ATI_vertex_attrib_array_object
05531 #define GL_ATI_vertex_attrib_array_object 1
05532 #ifdef GL_GLEXT_PROTOTYPES
05533         GLAPI void APIENTRY glVertexAttribArrayObjectATI (GLuint, GLint, GLenum, GLboolean, GLsizei, GLuint, GLuint);
05534         GLAPI void APIENTRY glGetVertexAttribArrayObjectfvATI (GLuint, GLenum, GLfloat *);
05535         GLAPI void APIENTRY glGetVertexAttribArrayObjectivATI (GLuint, GLenum, GLint *);
05536 #endif /* GL_GLEXT_PROTOTYPES */
05537         typedef void (APIENTRY * PFNGLVERTEXATTRIBARRAYOBJECTATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset);
05538         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC) (GLuint index, GLenum pname, GLfloat *params);
05539         typedef void (APIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC) (GLuint index, GLenum pname, GLint *params);
05540 #endif
05541
05542
05543 #ifdef __cplusplus
05544 }
05545 #endif
05546
05547 #endif
05548
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Inertia.cpp File Reference

Inertia.cpp File Reference

#include "inertia.h"
#include "control.h"
#include "controlEngine.h"

Go to the source code of this file.

Defines

#define TIME_MOVE_ON_INERTIA 2.0

Variables

ControlEngine ce

Define Documentation

#define TIME_MOVE_ON_INERTIA 2.0

Definition at line 144 of file Inertia.cpp.

Referenced by EventInertia::OnInertia().

Variable Documentation

ControlEngine ce

Definition at line 23 of file Inertia.cpp.

Generated on Fri Aug 20 19:20:27 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Inertia.cpp Source File

Inertia.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 #include "inertia.h"
00020 #include "control.h"
00021 #include "controlEngine.h"
00022
00023 extern ControlEngine ce;
00024
00025 Inertia::Inertia()
00026 {
00027         viewTime = 0;
00028         inertiaTime = 0;
00029 }
00030
00031 void Inertia::Start(double _viewTime,double _inertiaTime)
00032 {
00033         viewTime = _viewTime;
00034         inertiaTime = _inertiaTime;
00035         timer.GetDeltaTime(TRUE);
00036 }
00037
00038 void Inertia::Add(Point2D<int> element)
00039 {
00040         ElemStack elemStack;
00041         elemStack.elem=element;
00042         elemStack.timing = timer.GetDeltaTime(FALSE);
00043         stack.Push(elemStack);
00044 }
00045
00046 Point2D<double> Inertia::GetMoyValue()
00047 {
00048         double timing = timer.GetDeltaTime(FALSE);
00049         Point2D<double> power;
00050         ElemStack elemStack;
00051         double timeInside=-1;
00052
00053         // on elimine tout les elements dont le timing est depasée
00054         while (1)
00055         {
00056                 if (!stack.GetNbElem()) return power;
00057                 elemStack = stack.FrontPeek();
00058                 timeInside = elemStack.timing+inertiaTime-timing+viewTime;
00059                 if (timeInside>0) break;
00060                 stack.FrontPop();
00061         };
00062
00063         power.x = (double)elemStack.elem.x*timeInside;
00064         power.y = (double)elemStack.elem.y*timeInside;
00065
00066         // on ajout tout le rest
00067         double lastTime=0; // gestion des coupures entre elements
00068         double deltaTime;
00069         for (stack.i=0;stack.i.More();stack.i++)
00070         {
00071                 elemStack = stack.i.GetElem();
00072                 timeInside = timing-elemStack.timing;
00073                 deltaTime=timeInside-lastTime;
00074                 lastTime=timeInside;
00075                 if (timeInside>inertiaTime) timeInside = inertiaTime;
00076                 power.x += (double)elemStack.elem.x*deltaTime;
00077                 power.y += (double)elemStack.elem.y*deltaTime;
00078         }
00079
00080         // calcul de moyenne
00081         power/=viewTime; // T doit avoir "void operateur/=(double)"
00082         return power;
00083 }
00084
00085 EventInertia::EventInertia()
00086 {
00087         numButton= -1;
00088         face = -1;
00089         enable = FALSE;
00090 }
00091
00092 void EventInertia::Init(int _numButton)
00093 {
00094         numButton=_numButton;
00095 }
00096
00097 void EventInertia::operator=(EventInertia &src)
00098 {
00099         enable = src.enable;
00100         face = src.face;
00101         mousePos = src.mousePos;
00102         mouseState = src.mouseState;
00103         numButton = src.numButton;
00104         timer = src.timer;
00105         vectorInertia = src.vectorInertia;
00106 }
00107
00108 void EventInertia::Start(int _face,Point2D<double> _vectorInertia)
00109 {
00110         face = _face;
00111         vectorInertia = _vectorInertia;
00112         ce.pickingInertia=ce.pickingCursor;
00113         mouseState = &ce.pickingInertia.mouse;
00114         mousePos.x = mouseState->pos.x;
00115         mousePos.y = mouseState->pos.y;
00116         SwitchButton();
00117
00118         BindTimer(timer,OnInertia,40);
00119 }
00120
00121 void EventInertia::SwitchButton()
00122 {
00123         switch (numButton)
00124         {
00125                 case 0: mouseState->leftBtn=!mouseState->leftBtn; break;        // left
00126                 case 1: mouseState->midBtn=!mouseState->midBtn; break;          // mid
00127                 case 2: mouseState->rightBtn=!mouseState->rightBtn; break;      // right
00128         }
00129 }
00130
00131 void EventInertia::Stop()
00132 {
00133         timer.Stop();
00134         enable=FALSE;
00135         ce.usingInertia--;
00136         switch (numButton)
00137         {
00138                 case 0: ce.pickingInertia.OnLButtonUp(); break;
00139                 case 1: ce.pickingInertia.OnMButtonUp(); break;
00140                 case 2: ce.pickingInertia.OnRButtonUp(); break;
00141         }
00142 }
00143
00144 #define TIME_MOVE_ON_INERTIA 2.0 // durée de l'inertie: 2 seconds
00145 int EventInertia::OnInertia(Timer *timerCur)
00146 {
00147         double delta = timer.GetDeltaTime();
00148         double coef = (TIME_MOVE_ON_INERTIA-delta)/TIME_MOVE_ON_INERTIA;
00149         if (coef<=0)
00150         {
00151                 Stop();
00152                 return 0;
00153         }
00154
00155         Point2D<double> vectorInertiaCur=vectorInertia*coef;
00156
00157         mousePos.x-=vectorInertiaCur.x;
00158         mousePos.y-=vectorInertiaCur.y;
00159
00160         ce.pickingInertia.OnMouseMove((int)mousePos.x,(int)mousePos.y);
00161         return 0;
00162 }
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Inertia.h File Reference

Inertia.h File Reference

Gestion du mode Inertia. More...

#include "windows.h"
#include "MyList.h"
#include "input.h"

Go to the source code of this file.

Classes

class | ElemStack
Element du stack d'inertia. More...

class | Inertia
Donne le vecteur correspondant a la moyenne de deplacement donnée par longeur de cycl donnée. More...

class | EventInertia
Evenement liée a inertia. More...

Detailed Description

Gestion du mode Inertia.

Definition in file Inertia.h.

Generated on Fri Aug 20 19:20:27 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Inertia.h Source File

Inertia.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_INERTIA_H
00024 #define INCLUDE_INERTIA_H
00025
00026 #include "windows.h"
00027 #include "MyList.h"
00028 #include "input.h"
00029
00034 class ElemStack
00035 {
00036 public:
00037         Point2D<int> elem;
00038         double timing;
00039
00040         void operator=(ElemStack &src)
00041         {
00042                 elem = src.elem;
00043                 timing = src.timing;
00044         }
00045 };
00046
00072 class Inertia: public has_slots<>
00073 {
00074 private:
00075         MyStack<ElemStack> stack;
00076         Timer timer;
00077         double viewTime;
00078         double inertiaTime;
00079
00080 public:
00081         Inertia();
00082         void Start(double _viewTime=0.5,double _inertiaTime=0.1);
00083         void Add(Point2D<int> element);
00084         Point2D<double> GetMoyValue();
00085 };
00086
00087 class Control;
00088
00092 class EventInertia : public has_slots<>
00093 {
00094 private:
00095         StateMouse *mouseState;
00096         Point2D<double> mousePos;
00097         int numButton;
00098         Timer timer;
00099         int face;
00100         Point2D<double> vectorInertia;
00101
00102 public:
00103         BOOL enable;
00104
00105         EventInertia();
00106         void operator=(EventInertia &src);
00107         void Init(int _numButton);
00108         void Start(int _face,Point2D<double> _vectorInertia);
00109         void Stop();
00110         void SwitchButton();
00111         int OnInertia(Timer *timer);
00112 };
00113
00114 #endif
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: input.cpp File Reference

input.cpp File Reference

#include "3d.h"
#include "input.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: input.cpp Source File

input.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021
00022 // StateMouse ********************************************************************************
00023
00024 StateMouse::StateMouse()
00025 {
00026         pos.Zero();
00027         leftBtn=FALSE;
00028         rightBtn=FALSE;
00029         midBtn=FALSE;
00030         wheelVal=0;
00031         wheelDelta=0;
00032 }
00033
00034 void StateMouse::operator= (StateMouse &src)
00035 {
00036         pos=src.pos;
00037         leftBtn=src.leftBtn;
00038         rightBtn=src.rightBtn;
00039         midBtn=src.midBtn;
00040         wheelVal=src.wheelVal;
00041         wheelDelta=src.wheelDelta;
00042 }
00043
00044 int StateMouse::GetNbButtonPush()
00045 {
00046         return leftBtn+midBtn+rightBtn;
00047 }
00048
00057 StateMouse * StateMouse::GetDelta(StateMouse *second) // delta = second-this
00058 {
00059         static StateMouse delta;
00060         delta.pos = second->pos-pos;
00061         delta.leftBtn = second->leftBtn-leftBtn;
00062         delta.midBtn = second->midBtn-midBtn;
00063         delta.rightBtn = second->rightBtn-rightBtn;
00064         delta.wheelVal = second->wheelVal-wheelVal;
00065         delta.wheelDelta = second->wheelDelta-wheelDelta;
00066         return &delta;
00067 }
00068
00069
00070 void StateMouse::ToString(MyString &str)
00071 {
00072         str.AddFormat("x:%d y:%d leftBtn:%d rightBtn:%d midBtn:%d wheelVal:%d wheelDelta:%d",pos.x,pos.y,leftBtn,rightBtn,midBtn,wheelVal,wheelDelta);
00073 }
00074
00075 // StateKey ********************************************************************************
00076
00077 StateKey::StateKey()
00078 {
00079         letter='\0';
00080         code=0;
00081         isPush=FALSE;
00082         SaveDelayAndRepeate();
00083 }
00084
00085 StateKey::~StateKey()
00086 {
00087         RestoreDelayAndRepeate();
00088 }
00089
00090 void StateKey::operator= (StateKey &src)
00091 {
00092         letter=src.letter;
00093         code=src.code;
00094         isPush=src.isPush;
00095 }
00096
00097 void StateKey::ToString(MyString &str)
00098 {
00099         str.AddFormat("letter: %c code:%d isPush:%d",letter,code,isPush);
00100 }
00101
00107 BOOL StateKey::GetState(int code)
00108 {
00109         // autre solution ou BOOL isUp = GetAsyncKeyState(code) & 0x8000
00110         SHORT result = GetKeyState(code);
00111         /*
00112         The return value specifies the status of the specified virtual key, as follows:
00113         If the high-order bit is 1, the key is down; otherwise, it is up.
00114         If the low-order bit is 1, the key is toggled.
00115         A key, such as the CAPS LOCK key, is toggled if it is turned on.
00116         The key is off and untoggled if the low-order bit is 0.
00117         A toggle key's indicator light (if any) on the keyboard will be on when the key is toggled, and off when the key is untoggled.
00118         */
00119         BOOL isUp=(result&0x0100)==0x0100;
00120         BOOL isToggled=(result&0x0001)==0x0001;
00121         return isUp;
00122 }
00123
00131 void StateKey::SetDelayAndRepeate(int delay,int repeate)
00132 {
00133         SystemParametersInfo(SPI_SETKEYBOARDDELAY,delay,NULL,0);
00134         SystemParametersInfo(SPI_SETKEYBOARDSPEED,repeate,NULL,0);
00135 }
00137 void StateKey::SaveDelayAndRepeate()
00138 {
00139         SystemParametersInfo(SPI_GETKEYBOARDDELAY,0,&oldDelay,0);
00140         SystemParametersInfo(SPI_GETKEYBOARDSPEED,0,&oldRepeate,0);
00141 }
00142
00144 void StateKey::RestoreDelayAndRepeate()
00145 {
00146         SetDelayAndRepeate(oldDelay,oldRepeate);
00147 }
00148
00149
00150 // EventMouse ********************************************************************************
00151
00152 /* // voir ci cela est necessaire
00153 void EventMouse::operator=(MouseEvent &src)
00154 {
00155         left=src.left;
00156         right=src.right;
00157         mid=src.mid;
00158 }
00159 */
00160
00161 BOOL Timer::Init(HWND _hWnd)
00162 {
00163         hWnd=_hWnd;
00164         return QueryPerformanceFrequency(&frecTimer);
00165 }
00166
00167 Timer::Timer()
00168 {
00169         insideList=FALSE;
00170         id=nextFreeId;
00171         nextFreeId++; // attention au bout d'un momenet les numeros d'id seron depasser, programmer un "garbage collector"
00172         isRuning = FALSE;
00173 }
00174
00175 Timer::~Timer()
00176 {
00177         Stop(id,FALSE); // suprime l'event de la list d'instanciation
00178 }
00179
00186 Timer * Timer::Find(int idToFind)
00187 {
00188         for (list.i=0;list.i.More();list.i++)
00189         {
00190                 Timer *event = list.i.GetElem();
00191                 if (event->id==idToFind) return event;
00192         }
00193         return NULL;
00194 }
00195
00199 BOOL Timer::Call(int idToFind)
00200 {
00201         Timer *timer;
00202         timer = Find(idToFind);
00203         if (timer)
00204         {
00205                 timer->onTimer(timer);
00206                 return TRUE;
00207         }
00208         return FALSE;
00209 }
00210
00211 BOOL Timer::Stop()
00212 {
00213         return Stop(id,FALSE);
00214 }
00215
00216 BOOL Timer::StopAndUnBind()
00217 {
00218         return Stop(id,TRUE);
00219 }
00220 BOOL Timer::Stop(int idToFind,BOOL unBind)
00221 {
00222         Timer *event = Find(idToFind);
00223         if (event)
00224         {
00225                 isRuning = FALSE;
00226                 if (!KillTimer(hWnd,idToFind)) return FALSE;
00227                 if (unBind) onTimer.disconnect_all();
00228                 event->insideList=FALSE;
00229                 list.i.Supr(); // car find place sur le current
00230                 return TRUE;
00231         }
00232         return FALSE;
00233 }
00234
00235 BOOL Timer::Start()
00236 {
00237         Start(1000);
00238         return Pause();
00239 }
00240
00241 BOOL Timer::Start(int freq)
00242 {
00243         frequency=freq;
00244         QueryPerformanceCounter(&beginTime);
00245         if (!insideList) { list.i+=this; insideList=TRUE; }
00246         if(!SetTimer(hWnd,id,frequency,NULL)) return NULL;
00247         isRuning = TRUE;
00248         return TRUE;
00249 }
00250
00251 BOOL Timer::Pause()
00252 {
00253         if (!isRuning) return FALSE;
00254         return SetTimer(hWnd,id,0x7fffffff,NULL)?TRUE:FALSE; // valeur max d'un timeout que donne 1 ?
00255 }
00256
00257 BOOL Timer::Resume()
00258 {
00259         if (!isRuning) return FALSE;
00260         return SetTimer(hWnd,id,frequency,NULL)?TRUE:FALSE;
00261 }
00262
00263 double Timer::GetDeltaTime(BOOL reset)
00264 {
00265         if (!insideList) isRuning = TRUE; // en mode simple cronos definis le runing
00266         return GetDeltaTime(reset,&beginTime);
00267 }
00268
00269 double Timer::GetDeltaTime(BOOL reset,LARGE_INTEGER *referenceTime)
00270 {
00271         if (!referenceTime) return -1;
00272         LARGE_INTEGER currentTime;
00273         QueryPerformanceCounter(&currentTime);
00274         double delta = ((double)((UINT)currentTime.LowPart  - (UINT)(*referenceTime).LowPart) / frecTimer.LowPart);
00275         if (reset) *referenceTime=currentTime;
00276         return delta;
00277 }
00278
00279 BOOL Timer::IsRuning()
00280 {
00281         return isRuning;
00282 }
00283
00284 // ********************************************************************************
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: input.h File Reference

input.h File Reference

#include "trigo.h"
#include "myString.h"
#include "mylist.h"
#include "sigslot.h"

Go to the source code of this file.

Classes

class | StateMouse
Etat de la souris. More...

class | StateKey
Parametres des touches en cours. More...

class | Timer

Defines

#define | DebugMouse(context, ptrMouse) { MyString message; message<<context<<" "; if (ptrMouse) (ptrMouse)->ToString(message); else message<<" (NULL)"; Debug0Param(message); }
#define | DebugMouse2(context, ptrMouse, face) { MyString message; message<<context<<" "; if (ptrMouse) (ptrMouse)->ToString(message); else message<<" (NULL)"; message<<" Face:"<<face; Debug0Param(message); }
#define | DebugKey(context, ptrKey) { MyString message; message<<context<<" "; if (ptrKey) (ptrKey)->ToString(message); else message<<" (NULL)"; Debug0Param(message); }
#define | DebugKey2(context, ptrKey, face) { MyString message; message<<context<<" "; if (ptrKey) (ptrKey)->ToString(message); else message<<" (NULL)"; message<<" Face:"<<face; Debug0Param(message); }
#define | BindTimer(theTimer, methode, frec)
Macro qui genere l'attachement a l'event du timer et la lance.

Define Documentation

#define BindTimer | ( | theTimer,
 |  | methode,
 |  | frec | )

Value:

{\
        using namespace sigslot; \
        theTimer.onTimer.connect(this,methode);\
        theTimer.Start(frec);\
}
Macro qui genere l'attachement a l'event du timer et la lance.

Definition at line 132 of file input.h.

Referenced by Tutorial::UniversDemo::ConfigSlide(), Demo::Demo(), Tutorial::FaceDemo::FaceDemo(), Slider::OnMinusLMouseDown(), Control::OnMouseMove(), Control::OnMouseWheel(), Slider::OnPlusLMouseDown(), Button::OnPushDown(), ControlEngine::SetTimerRefresh(), and EventInertia::Start().

#define DebugKey | ( | context,
 |  | ptrKey | ) | { MyString message; message<<context<<" "; if (ptrKey) (ptrKey)->ToString(message); else message<<" (NULL)"; Debug0Param(message); }

Definition at line 89 of file input.h.

#define DebugKey2 | ( | context,
 |  | ptrKey,
 |  | face | ) | { MyString message; message<<context<<" "; if (ptrKey) (ptrKey)->ToString(message); else message<<" (NULL)"; message<<" Face:"<<face; Debug0Param(message); }

Definition at line 90 of file input.h.

Referenced by Control::OnKeyDouble(), Univers::OnKeyDown(), Title::OnKeyDown(), Control::OnKeyDown(), Univers::OnKeyUp(), Title::OnKeyUp(), and Control::OnKeyUp().

#define DebugMouse | ( | context,
 |  | ptrMouse | ) | { MyString message; message<<context<<" "; if (ptrMouse) (ptrMouse)->ToString(message); else message<<" (NULL)"; Debug0Param(message); }

Definition at line 59 of file input.h.

#define DebugMouse2 | ( | context,
 |  | ptrMouse,
 |  | face | ) | { MyString message; message<<context<<" "; if (ptrMouse) (ptrMouse)->ToString(message); else message<<" (NULL)"; message<<" Face:"<<face; Debug0Param(message); }

Definition at line 60 of file input.h.

Referenced by Control::OnClick(), TrackButton::OnClickBottom(), TrackButton::OnClickLeft(), TrackButton::OnClickLeftBottom(), TrackButton::OnClickLeftTop(), TrackButton::OnClickRight(), TrackButton::OnClickRightBottom(), TrackButton::OnClickRightTop(), TrackButton::OnClickTop(), Control::OnLButtonDouble(), Univers::OnLButtonDown(), Title::OnLButtonDown(), TextBox::OnLButtonDown(), Control::OnLButtonDown(), Univers::OnLButtonUp(), TextBox::OnLButtonUp(), Control::OnLButtonUp(), Title::OnLMButtonUp(), Window::OnLMRButton(), Title::OnMaxOrOriginal(), Control::OnMButtonDouble(), Univers::OnMButtonDown(), Title::OnMButtonDown(), Control::OnMButtonDown(), Univers::OnMButtonUp(), Control::OnMButtonUp(), Univers::OnMouseWheel(), Title::OnMouseWheel(), Control::OnMouseWheel(), Button::OnPushDown(), Button::OnPushUp(), Control::OnRButtonDouble(), Control::OnRButtonDown(), and Control::OnRButtonUp().

Generated on Fri Aug 20 19:20:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: input.h Source File

input.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 **************************************************************************************
00018
00023 #ifndef INCLUDE_INPUT_H
00024 #define INCLUDE_INPUT_H
00025
00026 #include "trigo.h"
00027 #include "myString.h"
00028 #include "mylist.h"
00029 #include "sigslot.h"
00030
00041 class StateMouse
00042 {
00043 public:
00044         Point2D<int> pos;
00045         BOOL leftBtn;
00046         BOOL rightBtn;
00047         BOOL midBtn;
00048         int wheelVal;
00049         int wheelDelta;
00050
00051         StateMouse();
00052         void operator= (StateMouse &src);
00053         int GetNbButtonPush();
00054         StateMouse * GetDelta(StateMouse *second); // delta = second-this
00055
00056         void ToString(MyString &str);
00057 };
00058
00059 #define DebugMouse(context,ptrMouse) { MyString message; message<<context<<" "; if (ptrMouse) (ptrMouse)->ToString(message); else message<<" (NULL)"; Debug0Param(message); }
00060 #define DebugMouse2(context,ptrMouse,face) { MyString message; message<<context<<" "; if (ptrMouse) (ptrMouse)->ToString(message); else message<<" (NULL)"; message<<" Face:"<<face; Debug0Param(message); }
00061
00065 class StateKey
00066 {
00067 private:
00068         int oldDelay;           //! Encienne valeur de delay du clavier
00069         int oldRepeate;         //! Envienne valeur de repeate du clavier
00070
00071 public:
00072         char letter;
00073         short code;
00074         BOOL isPush;
00075
00076         StateKey();
00077         ~StateKey();
00078
00079         void operator= (StateKey &src);
00080         void ToString(MyString &str);
00081
00082         // tools
00083         static BOOL GetState(int code);
00084         static void SetDelayAndRepeate(int delay,int repeate);
00085         void SaveDelayAndRepeate();
00086         void RestoreDelayAndRepeate();
00087 };
00088
00089 #define DebugKey(context,ptrKey) { MyString message; message<<context<<" "; if (ptrKey) (ptrKey)->ToString(message); else message<<" (NULL)"; Debug0Param(message); }
00090 #define DebugKey2(context,ptrKey,face) { MyString message; message<<context<<" "; if (ptrKey) (ptrKey)->ToString(message); else message<<" (NULL)"; message<<" Face:"<<face; Debug0Param(message); }
00091
00092
00127 using namespace sigslot;  // pour signal (evit l'ecriture sigslot::signal?<...>)
00128
00132 #define BindTimer(theTimer,methode,frec)\
00133 {\
00134         using namespace sigslot; \
00135         theTimer.onTimer.connect(this,methode);\
00136         theTimer.Start(frec);\
00137 }
00138
00139 class Timer
00140 {
00141 public:
00142         // variable membre static
00143         static MyList<Timer *> list;    //!< list des instances de TimerEvent
00144         static int nextFreeId;                          //!< prochain numero de timer valide
00145         static HWND hWnd;                                       //!< hWnd qui collect les messages
00146         static LARGE_INTEGER frecTimer;         //!< frequence du timer
00147
00148 public:
00149         // variable membre
00150         signal1<Timer *> onTimer;                       //!< int Call(Timer *timer)
00151         int id;                                                         //!< id du WM_TIMER en cour
00152         BOOL insideList;                                        //!< cette element est il dans la liste ?
00153         int frequency;                                          //!< frequence de declenchement
00154         LARGE_INTEGER beginTime;
00155         BOOL isRuning;                                          //!< timer en cours
00156
00157         static BOOL Init(HWND _hWnd);           // initialise avec la callback gerant les timer
00158         static Timer *Find(int idToFind);       // recherche d'un instanciation
00159         static BOOL Call(int idToFind);         // A utiliser dans le message WM_TIMER de la callback de hWnd
00160
00161 public:
00162         Timer();
00163         ~Timer();
00164         BOOL Start();
00165         BOOL Start(int frequency);
00166         BOOL Pause();
00167         BOOL Resume();
00168         BOOL Stop();
00169         BOOL StopAndUnBind();
00170         BOOL Stop(int idToFind,BOOL unBind);
00171
00172         double GetDeltaTime(BOOL reset=FALSE);
00173         double GetDeltaTime(BOOL reset,LARGE_INTEGER *referenceTime);
00174
00175         BOOL IsRuning();
00176 };
00177
00178 #endif
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: input_instance.h File Reference

input_instance.h File Reference

Instanciation static de input. More...

#include "3d.h"
#include "input.h"

Go to the source code of this file.

Detailed Description

Instanciation static de input.

doit etre inclus a partir du fichier main sinon les constructeurs des class utilisés dans les variables static d'une variable global sera lancé apres utilsation dans la class (donc re-initialisation)

//>>> fichier A.h <<<
class A { public: int nb; A(){nb++;} };
//>>> fichier A.cpp <<<
A B::a = 0; // instanciation
//>>> fichier main.cpp <<<
class B { public: static A a; };
B b1; // A::nb=1
void main() { B b2; } // A::nb devrai =2 mais en fait =1 car instanciation fait apresEventde parametre et d'evenement d'une "Window"Control boutton

Definition in file input_instance.h.

Generated on Fri Aug 20 19:20:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: input_instance.h Source File

input_instance.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00037 #include "3d.h"
00038 #include "input.h"
00039
00040 // instanciation des variables static membre de TimerEvent
00041 MyList<Timer *> Timer::list;
00042 int Timer::nextFreeId=10; // 0 a 10 reservé pour l'application
00043 HWND Timer::hWnd;
00044 LARGE_INTEGER Timer::frecTimer;
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: layout.h File Reference

layout.h File Reference

Gestion de positionnement. More...

Go to the source code of this file.

Classes

class Layout
Gestion des positionnements des controls. More...

Detailed Description

Gestion de positionnement.

Definition in file layout.h.

Generated on Fri Aug 20 19:20:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: layout.h Source File

layout.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_LAYOUT_H
00024 #define INCLUDE_LAYOUT_H
00025
00040 template <class T> class Layout // T peut etre de preferance float ou double
00041 {
00042 public:
00043         T constValue;
00044         double percentValue;
00045         T *baseValue;
00046
00047 public:
00048         Layout()
00049         {
00050                 Zero();
00051         }
00052
00053         void Zero()
00054         {
00055                 constValue=0;
00056                 percentValue=0;
00057                 baseValue=NULL;
00058         }
00059
00067         void operator=(int value)
00068         {
00069                 constValue = value;
00070         }
00071
00072         void operator=(GLdouble value)
00073         {
00074                 constValue = value;
00075         }
00076
00077         void operator=(Layout &source)
00078         {
00079                 constValue = source.constValue;
00080                 percentValue = source.percentValue;
00081                 baseValue = source.baseValue;
00082         }
00083
00084         void Set(T _constValue,double _percentValue=0,T *_baseValue=NULL)
00085         {
00086                 constValue = _constValue;
00087                 SetPercent(_percentValue,_baseValue);
00088         }
00089
00090         void SetPercent(double _percentValue=0,T *_baseValue=NULL)
00091         {
00092                 percentValue = _percentValue;
00093                 baseValue = _baseValue;
00094         }
00095
00096         BOOL IsDynamic()
00097         {
00098                 return baseValue?TRUE:FALSE;
00099         }
00100
00117         T Compute()
00118         {
00119                 if (!percentValue || !baseValue) return constValue;
00120                 return constValue+*baseValue*percentValue;
00121         }
00122 };
00123
00124 #endif
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: light.cpp File Reference

light.cpp File Reference

#include "light.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: light.cpp Source File

light.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 #include "light.h"
00020
00021 BOOL Light::useLighting;
00022
00023 void Light::SetLighting(BOOL set)
00024 {
00025         useLighting = set;
00026         if (set) glEnable(GL_LIGHTING);
00027         else glDisable(GL_LIGHTING);
00028 }
00029
00030 BOOL Light::IsLighting()
00031 {
00032         return useLighting;
00033 }
00034
00035 Light::Light()
00036 {
00037         Zero();
00038         id = 0;
00039 }
00040
00041 Light::Light(int _id)
00042 {
00043         Zero();
00044         id = _id;
00045 }
00046
00047 void Light::Zero()
00048 {
00049         id = GL_LIGHT0;
00050         isEnable = TRUE;
00051         material.Zero();
00052         direction.Zero();
00053         position.Zero();
00054         cutoff.isEnable=FALSE;
00055         exponent.isEnable=FALSE;
00056         attenuationCst.isEnable=FALSE;
00057         attenuationLin.isEnable=FALSE;
00058         attenuationQuad.isEnable=FALSE;
00059 }
00060
00061 void Light::operator=(Light &source)
00062 {
00063         isEnable = source.isEnable;
00064         material = source.material;
00065
00066         direction = source.direction;
00067         position = source.position;
00068
00069         cutoff = source.cutoff;
00070         exponent = source.exponent;
00071
00072         attenuationCst = source.attenuationCst;
00073         attenuationLin = source.attenuationLin;
00074         attenuationQuad = source.attenuationQuad;
00075 }
00076
00077 void Light::Enable(BOOL active) // -1 affiche ou pas suivant le mode precedent , 0 desactive et 1 active
00078 {
00079         if (active!=-1) isEnable = active;
00080         if (isEnable) glEnable (id);
00081         else glDisable (id);
00082 }
00083
00084 BOOL Light::IsEnabled()
00085 {
00086         return isEnable;
00087 }
00088
00089 void Light::Toggle ()
00090 {
00091         Enable(!IsEnabled());
00092 }
00093
00094 void Light::Use()
00095 {
00096         Enable();
00097         if (!isEnable) return;
00098         if (material.ambient.isEnable)  glLightfv(id,GL_AMBIENT,material.ambient);
00099         if (material.diffuse.isEnable)  glLightfv(id,GL_DIFFUSE,material.diffuse);
00100         if (material.specular.isEnable) glLightfv(id,GL_SPECULAR,material.specular);
00101         if (cutoff.isEnable)                    glLightf(id,GL_SPOT_CUTOFF,cutoff.elem);
00102         if (exponent.isEnable)                  glLightf(id,GL_SPOT_EXPONENT,exponent.elem);
00103         if (attenuationCst.isEnable)    glLightf(id,GL_CONSTANT_ATTENUATION,attenuationCst.elem);
00104         if (attenuationLin.isEnable)    glLightf(id,GL_CONSTANT_ATTENUATION,attenuationLin.elem);
00105         if (attenuationQuad.isEnable)   glLightf(id,GL_CONSTANT_ATTENUATION,attenuationQuad.elem);
00106         if (direction.isEnable)                 glLightfv(id,GL_SPOT_DIRECTION,direction);
00107         if (position.isEnable)                  glLightfv(id,GL_POSITION,position);
00108 }
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: light.h File Reference

light.h File Reference

Gestion des lumieres. More...

#include "3d.h"
#include "variable.h"
#include "material.h"
#include "coordonate.h"

Go to the source code of this file.

Classes

class Light
Gestion d'une lumiere. More...

Detailed Description

Gestion des lumieres.

Definition in file light.h.

Generated on Fri Aug 20 19:20:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: light.h Source File

light.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016 http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_LIGHT_H
00024 #define INCLUDE_3D_LIGHT_H
00025
00026 #include "3d.h"
00027 #include "variable.h"
00028 #include "material.h"
00029 #include "coordonate.h"
00030
00041 class Light
00042 {
00043 public:
00044         static BOOL useLighting;
00045         int id;
00046         BOOL isEnable;
00047         Enabling<GLfloat> cutoff;
00048         Enabling<GLfloat> exponent;
00049         Enabling<GLfloat> attenuationCst;
00050         Enabling<GLfloat> attenuationLin;
00051         Enabling<GLfloat> attenuationQuad;
00052
00053 public:
00054         Material material;
00055         Coordonate<GLfloat> direction;
00056         Coordonate<GLfloat> position;
00057
00058         static void SetLighting(BOOL set);
00059         static BOOL IsLighting();
00060         Light();
00061         Light(int _id);
00062         void Zero();
00063         void operator=(Light &source);
00064         void Enable(BOOL active=-1);
00065         BOOL IsEnabled();
00066         void Toggle();
00067         void Use();
00068 };
00069
00070
00071 #endif
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: linedock.h File Reference

linedock.h File Reference

Control Dock en ligne. More...

#include "control.h"
#include "dock.h"

Go to the source code of this file.

Classes

class | LineDock
Dock en ligne. More...

Defines

#define | DEFAULT_WIDTH 0.1

Detailed Description

Control Dock en ligne.

Definition in file linedock.h.

Define Documentation

#define DEFAULT_WIDTH 0.1

Definition at line 29 of file linedock.h.

Generated on Fri Aug 20 19:20:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: linedock.h Source File

linedock.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_LINEDOCK_H
00024 #define INCLUDE_LINEDOCK_H
00025
00026 #include "control.h"
00027 #include "dock.h"
00028
00029 #define DEFAULT_WIDTH 0.1
00030
00037 class LineDock : public Control
00038 {
00039 public:
00040         double width;
00041         double xDeb,yDeb,zDeb;
00042         double xFin,yFin,zFin;
00043
00044         LineDock()
00045         {
00046                 width = DEFAULT_WIDTH;
00047         }
00048         ~LineDock()
00049         {
00050         }
00051
00052         void Set(double _xDeb,double _yDeb,double _zDeb,double _xFin,double _yFin,double _zFin,double width=-1)
00053         {
00054                 xDeb=_xDeb;
00055                 yDeb=_yDeb;
00056                 zDeb=_zDeb;
00057                 xFin=_xFin;
00058                 yFin=_yFin;
00059                 zFin=_zFin;
00060                 if (width==-1) width = DEFAULT_WIDTH;
00061         }
00062 };
00063
00064 #endif
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: masterContainer.cpp File Reference

masterContainer.cpp File Reference

#include "3d.h"
#include "mastercontainer.h"
#include "controlEngine.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 23 of file masterContainer.cpp.

Generated on Fri Aug 20 19:20:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: masterContainer.cpp Source File

masterContainer.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "mastercontainer.h"
00021 #include "controlEngine.h"
00022
00023 extern ControlEngine ce;
00024
00025 // ********************************************************************************
00026
00027 MasterContainer::MasterContainer()
00028 {
00029 }
00030
00031 MasterContainer::~MasterContainer()
00032 {
00033 }
00034
00035 // ********************************************************************************
00036
00037 void MasterContainer::Create()
00038 {       // creation graphics
00039         SetParent(); // ne sert a rien car il n'a pas de parent
00040         name="MasterContainer";
00041         faceNode = ce.primitive.AddFace("MasterContainer",id,-1,FALSE,0,0,0,0,0,0,1,0,1);
00042         faceNode->elem->size.x.SetPercent(1,&ce.dxWin);
00043         faceNode->elem->size.y.SetPercent(1,&ce.dyWin);
00044 }
00045
00046 void MasterContainer::ToString(MyString &str)
00047 {
00048         str.AddFormat("name: %s",name);
00049 }
Generated on Fri Aug 20 19:19:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: masterContainer.h File Reference

masterContainer.h File Reference

Control qui contien l'Univers. More...

#include "control.h"

Go to the source code of this file.

Classes

class MasterContainer
L'univers est le conteneur 3D general (le desktop en 3D). More...

Detailed Description

Control qui contien l'Univers.

Definition in file masterContainer.h.

Generated on Fri Aug 20 19:20:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: masterContainer.h Source File

masterContainer.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_MASTER_CONTAINER_H
00024 #define INCLUDE_MASTER_CONTAINER_H
00025
00026 #include "control.h"
00027
00031 class MasterContainer : public Control
00032 {
00033 public:
00034         MasterContainer();
00035         ~MasterContainer();
00036         void Create();
00037         void ToString(MyString &str);
00038 };
00039
00040 #endif
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: material.cpp File Reference

material.cpp File Reference

#include "material.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: material.cpp Source File

material.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 #include "material.h"
00020
00021 Material::Material()
00022 {
00023         Zero();
00024 }
00025
00026 void Material::Zero()
00027 {
00028         typeFace = GL_FRONT_AND_BACK;
00029         ambient.Zero();
00030         //ambient.opacity=&opacity;
00031         diffuse.Zero();
00032         //diffuse.opacity=&opacity;
00033         specular.Zero();
00034         //specular.opacity=&opacity;
00035         emission.Zero();
00036         //emission.opacity=&opacity;
00037         shiness.elem=0;
00038         //opacity=1; // gestion a faire
00039 }
00040
00041 void Material::operator=(Material &source)
00042 {
00043         typeFace = source.typeFace;
00044         ambient = source.ambient;
00045         diffuse = source.diffuse;
00046         specular = source.specular;
00047         emission = source.emission;
00048         shiness = source.shiness;
00049         opacity = source.opacity;
00050 }
00051
00052 void Material::SetDS (Color color)
00053 {
00054         ambient.SetNull();
00055         diffuse=color;
00056         specular=diffuse;
00057         emission.SetNull();
00058 }
00059
00060 void Material::SetDS (float *source)
00061 {
00062         SetDS(source[0],source[1],source[2],source[3]);
00063 }
00064
00065 void Material::SetAlpha(float alpha)
00066 {
00067         ambient.a = alpha;
00068         diffuse.a = alpha;
00069         specular.a = alpha;
00070         emission.a = alpha;
00071 }
00072
00074 void Material::SetDS (float r,float g,float b,float a)
00075 {
00076         ambient.SetNull();
00077         diffuse.Set(r,g,b,a);
00078         specular=diffuse;
00079         emission.SetNull();
00080 }
00081
00082 void Material::SetDS (float r,float g,float b)
00083 {
00084         ambient.SetNull();
00085         diffuse.Set(r,g,b);
00086         specular=diffuse;
00087         emission.SetNull();
00088 }
00089
00090 void Material::SetNull ()
00091 {
00092         ambient.SetNull();
00093         diffuse.SetNull();
00094         specular.SetNull();
00095         emission.SetNull();
00096 }
00097
00098 void Material::SetFull(BOOL includeEmission)
00099 {
00100         ambient.SetFull();
00101         diffuse.SetFull();
00102         specular.SetFull();
00103         if (includeEmission) emission.SetFull();
00104 }
00105 void Material::Use()
00106 {
00107         if (ambient.isEnable)   glMaterialfv(typeFace,GL_AMBIENT,ambient);
00108         if (diffuse.isEnable)   glMaterialfv(typeFace,GL_DIFFUSE,diffuse);
00109         if (specular.isEnable)  glMaterialfv(typeFace,GL_SPECULAR,specular);
00110         if (emission.isEnable)  glMaterialfv(typeFace,GL_EMISSION,emission);
00111         if (shiness.isEnable)   glMateriali (typeFace,GL_SHININESS,shiness.elem);
00112 }
00113
00114 void Material::Record()
00115 {
00116         recorder.BeginRecord(FALSE);
00117         Use();
00118         recorder.EndRecord();
00119 }
00120
00121 void Material::Play()
00122 {
00123         recorder.Play();
00124 }
00125
00130 void Material::As(TypeMaterial mat)
00131 {
00132         int num = mat%NB_MATERIAL;
00133         AsMaterial *material = &materials[num];
00134         ambient=material->ambient;
00135         diffuse=material->diffuse;
00136         specular=material->specular;
00137         //shiness=material->shininess; // sinon fait des trucs bizard
00138         shiness.Set(0);
00139 }
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: material.h File Reference

material.h File Reference

Gestion des materiaux (couleur,type etc ...). More...

#include "3d.h"
#include "color.h"
#include "variable.h"
#include "mystring.h"
#include "recorder.h"

Go to the source code of this file.

Classes

struct | AsMaterial
element de materials More...

class | Material
Gestion du materiel (notion OpenGL). More...

Defines

#define | NB_MATERIAL 24

Enumerations

enum TypeMaterial {
mat_brass = 0, mat_bronze, mat_polished_bronze, mat_chrome,
mat_copper, mat_polished_copper, mat_gold, mat_polished_gold,
mat_pewter, mat_silver, mat_polished_silver, mat_emerald,
mat_jade, mat_obsidian, mat_pearl, mat_ruby,
mat_turquoise, mat_black_plastic, mat_black_rubber, mat_cyan_rubber,
mat_green_rubber, mat_red_rubber, mat_white_rubber, mat_yellow_rubber
}
type de materials, pour la methode "As" More...

Detailed Description

Gestion des materiaux (couleur,type etc ...).

Definition in file material.h.

Define Documentation

#define NB_MATERIAL 24

Definition at line 43 of file material.h.

Referenced by Material::As(), and Tutorial::LayoutDemo::ConfigTreeButton().

Enumeration Type Documentation

enum TypeMaterial

type de materials, pour la methode "As"

Enumeration values:
mat_brass
mat_bronze
mat_polished_bronze
mat_chrome
mat_copper
mat_polished_copper
mat_gold
mat_polished_gold
mat_pewter
mat_silver
mat_polished_silver
mat_emerald
mat_jade
mat_obsidian
mat_pearl
mat_ruby
mat_turquoise
mat_black_plastic
mat_black_rubber
mat_cyan_rubber
mat_green_rubber
mat_red_rubber
mat_white_rubber
mat_yellow_rubber

Definition at line 45 of file material.h.

Referenced by Tutorial::LayoutDemo::ConfigTreeButton().

Generated on Fri Aug 20 19:20:30 2004 for 3d Controls by doxygen 1.3.6


3d Controls: material.h Source File

material.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_MATERIAL_H
00024 #define INCLUDE_3D_MATERIAL_H
00025
00026 #include "3d.h"
00027 #include "color.h"
00028 #include "variable.h"
00029 #include "mystring.h"
00030 #include "recorder.h"
00031
00032
00034 typedef struct
00035 {
00036         MyString name;
00037         float ambient[4];
00038         float diffuse[4];
00039         float specular[4];
00040         float shininess;
00041 } AsMaterial;
00042
00043 #define NB_MATERIAL 24
00044
00045 typedef enum
00046 {
00047         mat_brass = 0,
00048         mat_bronze,
00049         mat_polished_bronze,
00050         mat_chrome,
00051         mat_copper,
00052         mat_polished_copper,
00053         mat_gold,
00054         mat_polished_gold,
00055         mat_pewter,
00056         mat_silver,
00057         mat_polished_silver,
00058         mat_emerald,
00059         mat_jade,
00060         mat_obsidian,
00061         mat_pearl,
00062         mat_ruby,
00063         mat_turquoise,
00064         mat_black_plastic,
00065         mat_black_rubber,
00066         mat_cyan_rubber,
00067         mat_green_rubber,
00068         mat_red_rubber,
00069         mat_white_rubber,
00070         mat_yellow_rubber
00071 } TypeMaterial;
00072
00084 class Material
00085 {
00086 public:
00087         int typeFace;
00088         Color ambient;
00089         Color diffuse;
00090         Color specular;
00091         Color emission;
00092         Enabling<GLint> shiness;
00093         float opacity;
00094         Recorder recorder;
00095 public:
00096         Material();
00097         void Zero();
00098         void operator=(Material &source);
00099         void SetDS (Color color);
00100         void SetDS (float *source);
00101         void SetDS (float r,float g,float b);
00102         void SetDS (float r,float g,float b,float a);
00103         void SetAlpha(float alpha);
00104         void SetNull ();
00105         void SetFull(BOOL includeEmission=FALSE);
00106         void Use();
00107         void As(TypeMaterial mat);
00108         void Record();
00109         void Play();
00110 };
00111
00112 /* source http://www.cs.utk.edu/~kuck/materials_ogl.htm -et-
00113 http://devernay.free.fr/cours/opengl/materials.html */
00115 static AsMaterial materials[]=
00116 {
00117         {
00118                 "Brass", // laiton
00119                 {0.329412f,             0.223529f,      0.027451f,      1.0f},
00120                 {0.780392f,             0.568627f,      0.113725f,      1.0f},
00121                 {0.992157f,             0.941176f,      0.807843f,      1.0f},
00122                 27.8974f
00123         },{
00124                 "Bronze", // bronze
00125                 {0.2125f,       0.1275f,        0.054f,         1.0f},
00126                 {0.714f,        0.4284f,        0.18144f,       1.0f},
00127                 {0.393548f, 0.271906f,  0.166721f,      1.0f},
00128                 25.6f
00129         },{
00130                 "Polished Bronze", // bronze polie
00131                 {0.25f,         0.148f,         0.06475f,       1.0f},
00132                 {0.4f,          0.2368f,        0.1036f,        1.0f},
00133                 {0.774597f, 0.458561f,  0.200621f,      1.0f},
00134                 76.8f
00135         },{
00136                 "Chrome", // chrome
00137                 {0.25f,         0.25f,          0.25f,          1.0f},
00138                 {0.4f,          0.4f,           0.4f,           1.0f},
00139                 {0.774597f, 0.774597f,  0.774597f,      1.0f},
00140                 76.8f
00141         },{
00142                 "Copper", // cuivre
00143                 {0.19125f,      0.0735f,        0.0225f,        1.0f},
00144                 {0.7038f,       0.27048f,       0.0828f,        1.0f},
00145                 {0.256777f, 0.137622f,  0.086014f,      1.0f},
00146                 12.8f
00147         },{
00148                 "Polished Copper", // cuivre polie
00149                 {0.2295f,       0.08825f,       0.0275f,        1.0f},
00150                 {0.5508f,       0.2118f,        0.066f,         1.0f},
00151                 {0.580594f, 0.223257f,  0.0695701f, 1.0f},
00152                 51.2f
00153         },{
00154                 "Gold", // or
00155                 {0.24725f,      0.1995f,        0.0745f,        1.0f},
00156                 {0.75164f,      0.60648f,       0.22648f,       1.0f},
00157                 {0.628281f,     0.555802f,      0.366065f,      1.0f},
00158                 51.2f
00159         },{
00160                 "Polished Gold", // or polie
00161                 {0.24725f,      0.2245f,        0.0645f,        1.0f},
00162                 {0.34615f,      0.3143f,        0.0903f,        1.0f},
00163                 {0.797357f,     0.723991f,      0.208006f,      1.0f},
00164                 83.2f
00165         },{
00166                 "Pewter", // etain
00167                 {0.105882f,     0.058824f,      0.113725f,      1.0f},
00168                 {0.427451f, 0.470588f,  0.541176f,      1.0f},
00169                 {0.333333f, 0.333333f,  0.521569f,      1.0f},
00170                 9.84615f
00171         },{
00172                 "Silver", // argent
00173                 {0.19225f,      0.19225f,       0.19225f,       1.0f},
00174                 {0.50754f,      0.50754f,       0.50754f ,      1.0f},
00175                 {0.508273f,     0.508273f,      0.508273f,      1.0f},
00176                 51.2f
00177         },{
00178                 "Polished Silver", // argent polie
00179                 {0.23125f,      0.23125f,       0.23125f,       1.0f},
00180                 {0.2775f,       0.2775f,        0.2775f,        1.0f},
00181                 {0.773911f, 0.773911f,  0.773911f,      1.0f},
00182                 89.6f
00183         },{
00184                 "Emerald", // emeraude
00185                 {0.0215f,       0.1745f,        0.0215f,        0.55f},
00186                 {0.07568f,      0.61424f,       0.07568f,       0.55f},
00187                 {0.633f,        0.727811f,      0.633f,         0.55f},
00188                 76.8f
00189         },{
00190                 "Jade", // jade
00191                 {0.135f,        0.2225f,        0.1575f,        0.95f},
00192                 {0.54f,         0.89f,          0.63f,          0.95f},
00193                 {0.316228f, 0.316228f,  0.316228f,      0.95f},
00194                 12.8f
00195         },{
00196                 "Obsidian", // obsidien
00197                 {0.05375f,      0.05f,          0.06625f,       0.82f},
00198                 {0.18275f,      0.17f,          0.22525f,       0.82f},
00199                 {0.332741f, 0.328634f,  0.346435f,      0.82f},
00200                 38.4f
00201         },{
00202                 "Pearl", // perle
00203                 {0.25f,         0.20725f,       0.20725f,       0.922f},
00204                 {1.0f,          0.829f,         0.829f,         0.922f},
00205                 {0.296648f, 0.296648f,  0.296648f,      0.922f},
00206                 11.264f
00207         },{
00208                 "Ruby", // ruby
00209                 {0.1745f,       0.01175f,       0.01175f,       0.55f},
00210                 {0.61424f,      0.04136f,       0.04136f,       0.55f},
00211                 {0.727811f, 0.626959f,  0.626959f,      0.55f},
00212                 76.8f
00213         },{
00214                 "Turquoise", // turquoise
00215                 {0.1f,          0.18725f,       0.1745f,        0.8f},
00216                 {0.396f,        0.74151f,       0.69102f,       0.8f},
00217                 {0.297254f, 0.30829f,   0.306678f,      0.8f},
00218                 12.8f
00219         },{
00220                 "Black Plastic", // plasique noir
00221                 {0.0f,          0.0f,           0.0f,           1.0f},
00222                 {0.01f,         0.01f,          0.01f,          1.0f},
00223                 {0.50f,         0.50f,          0.50f,          1.0f},
00224                 32.0f
00225         },{
00226                 "Black Rubber", // caoutchouc noir
00227                 {0.02f,         0.02f,          0.02f,          1.0f},
00228                 {0.01f,         0.01f,          0.01f,          1.0f},
00229                 {0.4f,          0.4f,           0.4f,           1.0f},
00230                 10.0f
00231         },{
00232                 "cyan plastic", // plasitique cyan
00233                 {0.0f,                  0.1f,                   0.06f,                  1.0f},
00234                 {0.0f,                  0.50980392f,    0.50980392f,    1.0f},
00235                 {0.50196078f,   0.50196078f,    0.50196078f,    1.0f},
00236                 32.0f
00237         },{
00238                 "green plastic", // plastique vert
00239                 {0.0f,          0.0f,           0.0f,           1.0f},
00240                 {0.1f,          0.35f,          0.1f,           1.0f},
00241                 {0.45f,         0.55f,          0.45f,          1.0f},
00242                 32.0f
00243         },{
00244                 "red plastic",  // plastique rouge
00245                 {0.0f,          0.0f,           0.0f,           1.0f},
00246                 {0.5f,          0.0f,           0.0f,           1.0f},
00247                 {0.7f,          0.6f,           0.6f,           1.0f},
00248                 32.0f
00249         },{
00250                 "white plastic", // plastique blanc
00251                 {0.0f,          0.0f,           0.0f,           1.0f},
00252                 {0.55f,         0.55f,          0.55f,          1.0f},
00253                 {0.70f,         0.70f,          0.70f,          1.0f},
00254                 32.0f
00255         },{
00256                 "yellow plastic", // plastique jaune
00257                 {0.0f,          0.0f,           0.0f,           1.0f},
00258                 {0.5f,          0.5f,           0.0f,           1.0f},
00259                 {0.60f,         0.60f,          0.50f,          1.0f},
00260                 32.0f
00261         }, {
00262                 "cyan rubber", // caoutchouc cyan
00263                 {0.0f,          0.05f,          0.05f,          1.0f},
00264                 {0.4f,          0.5f,           0.5f,           1.0f},
00265                 {0.04f,         0.7f,           0.7f,           1.0f},
00266                 10.0f
00267         }, {
00268                 "green rubber", // caoutchouc vert
00269                 {0.0f,          0.05f,          0.0f,           1.0f},
00270                 {0.4f,          0.5f,           0.4f,           1.0f},
00271                 {0.04f,         0.7f,           0.04f,          1.0f},
00272                 10.0f
00273         }, {
00274                 "red rubber", // caoutchouc rouge
00275                 {0.05f,         0.0f,           0.0f,           1.0f},
00276                 {0.5f,          0.4f,           0.4f,           1.0f},
00277                 {0.7f,          0.04f,          0.04f,          1.0f},
00278                 10.0f
00279         }, {
00280                 "white rubber", // caoutchouc blanc
00281                 {0.05f,         0.05f,          0.05f,          1.0f},
00282                 {0.5f,          0.5f,           0.5f,           1.0f},
00283                 {0.7f,          0.7f,           0.7f,           1.0f},
00284                 10.0f
00285         }, {
00286                 "yellow rubber", // caoutchouc jaune
00287                 {0.05f,         0.05f,          0.0f,           1.0f},
00288                 {0.5f,          0.5f,           0.4f,           1.0f},
00289                 {0.7f,          0.7f,           0.04f,          1.0f},
00290                 10.0f
00291         }
00292 };
00293
00294 #endif
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: msgBox.cpp File Reference

msgBox.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "myList.h"
#include "texture.h"
#include "button.h"
#include "textBox.h"
#include "container.h"
#include "window.h"
#include "msgBox.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 31 of file msgBox.cpp.

Generated on Fri Aug 20 19:20:31 2004 for 3d Controls by doxygen 1.3.6


3d Controls: msgBox.cpp Source File

msgBox.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "myList.h"
00023 #include "texture.h"
00024 #include "button.h"
00025 #include "textBox.h"
00026 #include "container.h"
00027 #include "window.h"
00028 #include "msgBox.h"
00029
00030
00031 extern ControlEngine ce;
00032
00033 MsgBox::MsgBox()
00034 {
00035         useCancel=TRUE;
00036         name="MsgBox";
00037         title="Question";
00038         title.useMax = FALSE;
00039         title.useMin = FALSE;
00040
00041
00042         title.btnClose.onButton.click.connect(this,OnClose);
00043         btnOk="Ok";
00044         btnOk.name="btnOk";
00045         btnOk.onButton.click.connect(this,OnButtonOk);
00046
00047         btnCancel="Cancel";
00048         btnCancel.name="btnCancel";
00049         btnCancel.onButton.click.connect(this,OnClose);
00050
00051         txtInfo="Information";
00052         txtInfo.name="txtInfo";
00053         txtInfo.isReadOnly=TRUE;
00054
00055         txtHelp="Aide:\n\nUn MsgBox permet d'afficher des valeurs simples";
00056
00057         txtTranche="MsgBox";
00058 }
00059
00060 MsgBox::~MsgBox()
00061 {
00062 }
00063
00064 void MsgBox::Create()
00065 {
00066         Window::Create();
00067         FaceNode *nodeCur;
00068         ce.Push(&client);
00069         nodeCur = ce.primitive.GoTo(FACE_FRONT);
00070                 // bouton OK
00071                 btnOk.Create(); // create doit il passer en parametre un layout ?
00072                 btnOk.Size(50,20);
00073                 btnOk.faceNode->elem->center.Set(0,1);
00074                 btnOk.faceNode->elem->position.x.Set(0,useCancel?1/4.0:0,&nodeCur->elem->computeSize.x);
00075                 btnOk.faceNode->elem->position.y.Set(2,-0.5,&nodeCur->elem->computeSize.y);
00076
00077                 // bouton cancel
00078                 if (useCancel)
00079                 {
00080                         btnCancel.Create();
00081                         btnCancel.Size(50,20);
00082                         btnCancel.faceNode->elem->center.Set(0,1);
00083                         btnCancel.faceNode->elem->position.x.Set(0,-1/4.0,&nodeCur->elem->computeSize.x);
00084                         btnCancel.faceNode->elem->position.y.Set(2,-0.5,&nodeCur->elem->computeSize.y);
00085                 }
00086
00087                 // text d'information
00088                 txtInfo.Create();
00089                 txtInfo.XDockCenter(2,0);
00090                 txtInfo.YDockTop(2,0);
00091
00092                 txtInfo.faceNode->elem->size.y.Set(-26,1,&nodeCur->elem->computeSize.y);
00093         ce.Pop();
00094         ce.Push(this);
00095                 nodeCur = ce.primitive.GoTo(FACE_BACK);
00096                 // text aide
00097                 txtHelp.Create();
00098                 txtHelp.faceNode->elem->angle.z=180;
00099                 txtHelp.XDockCenter(2,2);
00100                 txtHelp.YDockCenter(2,2);
00101                 ce.primitive.GoToParent();
00102
00103                 nodeCur = ce.primitive.GoTo(FACE_LEFT);
00104                 // text sur la tranche
00105                 txtTranche.Create();
00106                 txtTranche.text.scale=0.5;
00107                 txtTranche.text.material.SetDS(0,0,1);
00108                 txtTranche.faceNode->elem->angle.z=90;
00109                 txtTranche.faceNode->elem->size.x.Set(0,1,&nodeCur->elem->computeSize.y);
00110                 txtTranche.faceNode->elem->size.y.Set(0,1,&nodeCur->elem->computeSize.x);
00111         ce.Pop();
00112 }
00113
00119 int MsgBox::OnButtonOk ()
00120 {
00121         Debug0Param("MsgBox::OnButtonOK");
00122         OnClose();
00123         return 0;
00124 }
00125
00126 // bouton Cancel de la zone client clicker
00127 int MsgBox::OnClose()
00128 {
00129         Debug0Param ("MsgBox::OnClose");
00130         MsgBox::Delete();
00131         Window::OnClose();
00132         return 0;
00133 }
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: msgBox.h File Reference

msgBox.h File Reference

Control MsgBox. More...

#include "control.h"

Go to the source code of this file.

Classes

class MsgBox
equivalent de l'API "MessageBox" de Windows More...

Detailed Description

Control MsgBox.

Definition in file msgBox.h.

Generated on Fri Aug 20 19:20:31 2004 for 3d Controls by doxygen 1.3.6


3d Controls: msgBox.h Source File

msgBox.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_MSG_BOX_H
00024 #define INCLUDE_MSG_BOX_H
00025
00026 #include "control.h"
00027
00033 class MsgBox: public Window
00034 {
00035 public:
00036         // dans la zone client
00037         Button btnOk;
00038         Button btnCancel;
00039         TextBox txtInfo;
00040         TextBox txtHelp;
00041         TextBox txtTranche;
00042
00043         BOOL useCancel;
00044
00045         MsgBox();
00046         ~MsgBox();
00047         virtual void Create();
00048         int OnClose(); // bouton close de la zone client clické
00049         int OnButtonOk (); // bouton ok de la zone client clické
00050 };
00051
00052 #endif
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyDebug.cpp File Reference

MyDebug.cpp File Reference

#include "MyDebug.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:31 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyDebug.cpp Source File

MyDebug.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "MyDebug.h"
00020 HWND MyDebug::hWndServer = NULL; // instansiation de la variable static de class (sinon pb au linkage)
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyDebug.h File Reference

MyDebug.h File Reference

Partie cliente du debugeur MyDebugServer. More...

#include <windows.h>
#include <stdio.h>
#include <stdarg.h>
#include "MyString.h"

Go to the source code of this file.

Classes

class MyDebug
MyDebug est la partie cliente (qui envoi) du debugeur (cf MyServerDebug). More...

Detailed Description

Partie cliente du debugeur MyDebugServer.

Definition in file MyDebug.h.

Generated on Fri Aug 20 19:20:31 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyDebug.h Source File

MyDebug.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016 http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_MY_DEBUG_H
00024 #define INCLUDE_MY_DEBUG_H
00025
00026 #include <windows.h>
00027 #include <stdio.h>
00028 #include <stdarg.h>
00029 #include "MyString.h"
00030
00043 class MyDebug
00044 {
00045         public:
00046         static HWND hWndServer;
00047
00048         static BOOL Send(char *message)
00049         {
00050                 COPYDATASTRUCT cpd;
00051                 cpd.dwData = 0;
00052                 cpd.cbData = (DWORD)strlen(message)+1;
00053                 cpd.lpData = (void *)message;
00054                 return (BOOL)SendMessage(MyDebug::hWndServer, WM_COPYDATA, NULL,(LPARAM)&cpd);
00055         }
00056
00057 public:
00058         MyDebug()
00059         {
00060                 Start();
00061         }
00062
00063         ~MyDebug()
00064         {
00065         }
00066
00067         static void Start()
00068         {
00069                 if (!hWndServer)
00070                 {
00071                         FindServer();
00072                 }
00073         }
00074
00075         static BOOL FindServer()
00076         {
00077                 hWndServer = FindWindow(NULL,"DebugServer");
00078                 return hWndServer?TRUE:FALSE;
00079         }
00080
00081         static BOOL SendEvent(char *tabName,char *message,...)
00082         {
00083                 MyString buffer;
00084
00085                 char temp[1024];
00086                 va_list args;
00087                 va_start(args,message);
00088                 vsprintf(temp,message,args);
00089
00090                 buffer<<"#event \""<<tabName<<"\" "<<temp<<"\n";
00091                 return Send(buffer);
00092         }
00093
00094         static BOOL SendLine(char *tabName,char *message,...)
00095         {
00096                 MyString buffer;
00097
00098                 char temp[1024];
00099                 va_list args;
00100                 va_start(args,message);
00101                 vsprintf(temp,message,args);
00102
00103                 buffer<<"#line \""<<tabName<<"\" "<<temp<<"\n";
00104                 return Send(buffer);
00105         }
00106 };
00107
00108 #endif
00109
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyException.h File Reference

MyException.h File Reference

#include "MyString.h"

Go to the source code of this file.

Classes

class | MyException
class | MyExceptionMemory
class | CMsgBox

Defines

#define | AFX_MYEXCEPTION_H__70AB5B86_0239_4F62_B3F5_61A033D526AF__INCLUDED_

Define Documentation

#define AFX_MYEXCEPTION_H__70AB5B86_0239_4F62_B3F5_61A033D526AF__INCLUDED_

Definition at line 2 of file MyException.h.

Generated on Fri Aug 20 19:20:31 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyException.h Source File

MyException.h

Go to the documentation of this file.
00001 #if !defined(AFX_MYEXCEPTION_H__70AB5B86_0239_4F62_B3F5_61A033D526AF__INCLUDED_)
00002 #define AFX_MYEXCEPTION_H__70AB5B86_0239_4F62_B3F5_61A033D526AF__INCLUDED_
00003
00004 #if _MSC_VER > 1000
00005 #pragma once
00006 #endif // _MSC_VER > 1000
00007
00008 #include "MyString.h"
00009
00010 class MyException
00011 {
00012         private:
00013                 MyString m_message;
00014                 MyString m_param;
00015                 MyString m_methodeName;
00016                 MyString m_className;
00017
00018         public:
00019                 MyException()
00020                 {
00021                 }
00022
00023                 MyException(char *className,char *methodeName,char *message,char *param=NULL)
00024                 {
00025                         Init(className,methodeName,message,param);
00026                 }
00027
00028                 void Init (char *className,char *methodeName,char *message,char *param=NULL)
00029                 {
00030                         m_message = message;
00031                         m_methodeName = methodeName;
00032                         m_className = className;
00033                         m_param = param;
00034                         MessageBox(); // for debug
00035                 }
00036
00037                 int MessageBox()
00038                 {
00039                         MyString temp;
00040                         temp<<"Context: "<<m_className<<m_methodeName<<"\nMessage: "<<m_message;
00041                         if (m_param != "") temp<<"\nValue: "<<m_param;
00042                         return ::MessageBox(NULL,temp,"Error Exception",0);
00043                 }
00044 };
00045
00046 class MyExceptionMemory : public MyException
00047 {
00048         public:
00049                 MyExceptionMemory(char *className,char *methodeName,long size)
00050                 {
00051                         MyString temp;
00052                         temp<<"no more memory for "<<size<<" bytes";
00053                         Init(className,methodeName,temp);
00054                 }
00055 };
00056
00057 class CMsgBox
00058 {
00059         public:
00060                 MyString m_message;
00061                 MyString m_title;
00062                 int               m_style;
00063
00064         public:
00065                 CMsgBox(char *message,char *title,int style=0)
00066                 {
00067                         m_message = message;
00068                         m_title = title;
00069                         m_style = style;
00070                 }
00071
00072                 int MessageBox()
00073                 {
00074                         return ::MessageBox(NULL,m_message,m_title,m_style);
00075                 }
00076 };
00077
00078 #endif // !defined(AFX_MYEXCEPTION_H__70AB5B86_0239_4F62_B3F5_61A033D526AF__INCLUDED_)
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyList.h File Reference

MyList.h File Reference

List generique. More...

#include <stdio.h>
#include <math.h>
#include "MyException.h"

Go to the source code of this file.

Classes

class | MyListItem
List generique. More...

class | MyListIterator
class | MyList
class | MyStack
Stack generique, les Push & Pop peuvent ce faire en test ou en queut ==> File. More...

Typedefs

typedef enum _ETypeStart | ETypeStart

Enumerations

enum _ETypeStart {
list_current = 1, list_first, list_last, list_before,
list_after
}

Functions

template<class T> int | DefaultFoncCompare (T elem1, T elem2)

Detailed Description

List generique.

Definition in file MyList.h.

Typedef Documentation

typedef enum _ETypeStart ETypeStart

Enumeration Type Documentation

enum _ETypeStart

Enumeration values:
list_current
list_first
list_last
list_before
list_after

Definition at line 36 of file MyList.h.

Function Documentation

template<class T>
int DefaultFoncCompare | ( | T | elem1,
 |  | T | elem2
 | ) |

Definition at line 959 of file MyList.h.

Generated on Fri Aug 20 19:20:32 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyList.h Source File

MyList.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_LISTE_GENERIQUE_H
00024 #define INCLUDE_LISTE_GENERIQUE_H
00025 /*
00026 #ifndef BOOL // gestion des cross-platform
00027         #define BOOL    short
00028         #define TRUE    1
00029         #define FALSE   0
00030 #endif
00031 */
00032
00033 #include <stdio.h>
00034 #include <math.h>
00035
00036 typedef enum _ETypeStart
00037 {
00038         list_current = 1,
00039         list_first,
00040         list_last,
00041         list_before,
00042         list_after
00043 } ETypeStart; // pour le param1 de GoIndex
00044
00045 #include "MyException.h"
00046
00081 template <class T> class MyListItem
00082 {
00083 public:
00084         T *elem;                                          // element de la liste
00085         MyListItem<T> *after,*before;   // sucesseur
00086         BOOL selfUnAlloc;                         // le ptr doit il etre des alouées a la fin
00087
00088         MyListItem()
00089         {
00090                 elem=NULL;
00091                 selfUnAlloc=FALSE;
00092                 ZeroLink();
00093         }
00094
00095         MyListItem(T *_elem,BOOL _selfAlloc,BOOL _selfUnAlloc)
00096         {
00097                 New(_elem,_selfAlloc,_selfUnAlloc);
00098         }
00099
00100         void ZeroLink()
00101         {
00102                 after=NULL;
00103                 before=NULL;
00104         }
00105
00106         MyListItem(T *_elem) { New (_elem,FALSE,FALSE); }
00107         MyListItem(T &_elem) { New (&_elem,TRUE,TRUE); }
00108
00109         ~MyListItem()
00110         {
00111                 Delete();
00112         }
00113
00117         void Delete()
00118         {
00119                 if (elem&&selfUnAlloc) delete elem;
00120         }
00121
00125         void New (T *_elem,BOOL _selfAlloc,BOOL _selfUnAlloc)
00126         {
00127                 selfUnAlloc = _selfUnAlloc;
00128                 if (_selfAlloc)
00129                 {
00130                         elem = new T;
00131                         *elem=*_elem; //operator=(T &source) de la class appelé, pourais etre aussi le contructeur de copie
00132                 }
00133                 else elem = _elem;
00134                 if (!elem) throw MyExceptionMemory("MyList","NewElem",sizeof(T));
00135                 after=NULL;
00136                 before=NULL;
00137         }
00138
00139         void New (T *elem) { New (elem,FALSE,FALSE); }
00140         void New (T &elem) { New (&elem,TRUE,TRUE); }
00141
00142
00143 };
00144
00145 /*
00146 MyList<int> list;
00147 MyListIterator<int> i(&list);
00148 i+=1;
00149 i+=2;
00150 for (i=0;i.More();i++)
00151 {
00152         printf("%d",i.GetElem());
00153 }
00154 */
00155
00156 template <class T> class MyList;
00157
00158 template <class T> class MyListIterator
00159 {
00160 private:
00161         MyListItem<T> *current;
00162         MyList<T> *list;
00163         int     numCurrent;
00164
00165 public:
00167         MyListIterator()
00168         {
00169                 Bind(NULL);
00170         }
00171         MyListIterator(MyList<T> *_list)
00172         {
00173                 Bind(_list);
00174         }
00175
00176         BOOL Bind(MyList<T> *_list)
00177         {
00178                 list = _list;
00179                 Zero();
00180                 if (!_list) return FALSE;
00181                 return TRUE;
00182         }
00183
00184         void operator=(MyListIterator &src)
00185         {
00186                 current =src.current;
00187                 list = src.list;
00188                 numCurrent = src.numCurrent;
00189         }
00190
00192         void Zero()
00193         {
00194                 current=NULL;
00195                 numCurrent=-1;
00196         }
00197
00198         MyListItem<T> * GetCurrent()
00199         {
00200                 return current;
00201         }
00202
00210         int GetIndex()
00211         {
00212                 return numCurrent;
00213         }
00214
00215         // Deplacement *********************************************************
00216
00217         BOOL MoveFirst()
00218         {
00219                 if (!current) return FALSE;
00220                 Supr(current,FALSE);
00221                 return AddFirst(current)?TRUE:FALSE;
00222         }
00223
00224         BOOL MoveLast()
00225         {
00226                 if (!current) return FALSE;
00227                 Supr(current,FALSE);
00228                 return AddLast(current)?TRUE:FALSE;;
00229         }
00230
00231 /*  a debuger
00232         BOOL MoveBefore()
00233         {
00234                 if (!current) return FALSE;
00235                 Supr(current,FALSE);
00236                 return AddBefore(current)?TRUE:FALSE;
00237         }
00238
00239         BOOL MoveAfter()
00240         {
00241                 if (!current) return FALSE;
00242                 Supr(current,FALSE);
00243                 return AddAfter(current)?TRUE:FALSE;
00244         }
00245 */
00246         // Ajout *************************************************************
00247
00248         MyListItem<T> * AddBefore (T *elem,BOOL selfAlloc,BOOL selfUnAlloc)
00249         {
00250                 MyListItem<T> * item = new MyListItem<T>(elem,selfAlloc,selfUnAlloc);
00251                 return AddBefore(item);
00252         }
00253
00254         MyListItem<T> * AddBefore(MyListItem<T> * item)
00255         {
00256                 if (!item) return NULL;
00257                 if (!current)
00258                 {
00259                         if (!list->first && !list->last)
00260                         {
00261                                 list->first=list->last=current=item;
00262                                 numCurrent=0;
00263                         }
00264                         else return NULL; // pb d'intergrité
00265                 }
00266                 else
00267                 {
00268                         if (current==list->first)
00269                         {
00270                                 list->first->before = item;
00271                                 item->after =list->first;
00272                                 list->first = current = item;
00273                         }
00274                         else
00275                         {
00276                                 item->before = current->before;
00277                                 current->before->after = item;
00278                                 current->before = item;
00279                                 item->after = current;
00280                                 current = item;
00281                         }
00282                 }
00283                 list->nbElem ++;
00284                 return current;
00285         }
00286
00287         MyListItem<T> * AddFirst (T *elem,BOOL selfAlloc,BOOL selfUnAlloc)
00288         {
00289                 MyListItem<T> * item = new MyListItem<T>(elem,selfAlloc,selfUnAlloc);
00290                 return AddFirst(item);
00291         }
00292
00293         MyListItem<T> * AddFirst (MyListItem<T> * item)
00294         {
00295                 if (!item) return NULL;
00296                 if (!list->first) list->first=list->last=current=item;
00297                 else
00298                 {
00299                         list->first->before = item;
00300                         item->after = list->first;
00301                         list->first = current = item;
00302                 }
00303                 numCurrent=0;
00304                 list->nbElem ++;
00305                 return item;
00306         }
00307
00308         MyListItem<T> * AddLast (T *elem,BOOL selfAlloc,BOOL selfUnAlloc)
00309         {
00310                 MyListItem<T> * item = new MyListItem<T>(elem,selfAlloc,selfUnAlloc);
00311                 return AddLast(item);
00312         }
00313
00314         MyListItem<T> * AddLast (MyListItem<T> * item)
00315         {
00316                 if (!item) return NULL;
00317                 if (!list->last) current = list->first = list->last = item;
00318                 else
00319                 {
00320                         list->last->after = item;
00321                         item->before = list->last;
00322                         list->last = current = item;
00323                 }
00324                 numCurrent=list->nbElem;
00325                 list->nbElem ++;
00326                 return item;
00327         }
00328
00329         MyListItem<T> * AddAfter (T *elem,BOOL selfAlloc,BOOL selfUnAlloc)
00330         {
00331                 MyListItem<T> * item = new MyListItem<T>(elem,selfAlloc,selfUnAlloc);
00332                 return AddAfter(item);
00333         }
00334
00335         MyListItem<T> * AddAfter (MyListItem<T> * item)
00336         {
00337                 if (!item) return FALSE;
00338                 if (!current)
00339                 {
00340                         if (!list->first && !list->last) list->first=list->last=current=item;
00341                         else return FALSE;
00342                 }
00343                 else
00344                 {
00345                         if (current==list->last)
00346                         {
00347                                 list->last->after = item;
00348                                 item->before  = list->last;
00349                                 list->last = current = item;
00350                         }
00351                         else
00352                         {
00353                                 item->after = current->after;
00354                                 current->after->before = current->after = item;
00355                                 item->before = current;
00356                                 current = item;
00357                         }
00358                 }
00359                 numCurrent++;
00360                 list->nbElem ++;
00361                 return item;
00362         }
00363
00365         MyListItem<T> * AddFirst (T *elem) { return AddFirst(elem,FALSE,FALSE); }
00366         MyListItem<T> * AddFirst (T &elem) { return AddFirst(&elem,TRUE,TRUE); }
00367         T * AddNewFirst()
00368         {
00369                 T *elem = new T;
00370                 AddFirst(elem,FALSE,TRUE);
00371                 return elem;
00372         }
00373
00375         MyListItem<T> * AddLast (T *elem) { return AddLast(elem,FALSE,FALSE); }
00376         MyListItem<T> * AddLast (T &elem) { return AddLast(&elem,TRUE,TRUE); }
00377         T * AddNewLast()
00378         {
00379                 T *elem = new T;
00380                 AddLast(elem,FALSE,TRUE);
00381                 return elem;
00382         }
00383
00385         MyListItem<T> * AddBefore (T *elem) { return AddBefore(elem,FALSE,FALSE); }
00386         MyListItem<T> * AddBefore (T &elem) { return AddBefore(&elem,TRUE,TRUE); }
00387         T * AddNewBefore()
00388         {
00389                 T *elem = new T;
00390                 AddBefore(elem,FALSE,TRUE);
00391                 return elem;
00392         }
00393
00395         MyListItem<T> * AddAfter (T *elem) { return AddAfter(elem,FALSE,FALSE); }
00396         MyListItem<T> * AddAfter (T &elem) { return AddAfter(&elem,TRUE,TRUE); }
00397         T * AddNewAfter()
00398         {
00399                 T *elem = new T;
00400                 AddAfter(elem,FALSE,TRUE);
00401                 return elem;
00402         }
00403
00404         // Supression ***********************************************************
00405
00407         BOOL SuprFirst (BOOL withItem=TRUE)
00408         {
00409                 if (!list->first) return FALSE;
00410                 MyListItem<T> * temp;
00411
00412                 temp = list->first->after;
00413                 if (withItem) delete list->first;
00414                 else list->first->ZeroLink();
00415
00416                 // la list a il un seul element ?
00417                 if (!temp)
00418                 {
00419                         list->first = list->last = NULL;
00420                         Zero();
00421                 }
00422                 else
00423                 {
00424                         if (current==list->first) current = temp;
00425                         else numCurrent--;
00426                         temp->before = NULL;
00427                         list->first = temp;
00428                 }
00429                 list->nbElem --;
00430                 return TRUE;
00431         }
00432
00434         BOOL SuprLast (BOOL withItem=TRUE)
00435         {
00436                 if (!list->last) return FALSE;
00437                 MyListItem<T> *temp;
00438                 temp = list->last->before;
00439                 if (withItem) delete list->last;
00440                 else list->last->ZeroLink();
00441
00442                 // y a t'il plus d'un element dans la list
00443                 if (!temp)
00444                 {
00445                         list->first = list->last = NULL;
00446                         Zero();
00447                 }
00448                 else
00449                 {
00450                         if (list->last==current)
00451                         {
00452                                 current = temp;
00453                                 numCurrent--;
00454                         }
00455                         temp->after = NULL;
00456                         list->last = temp;
00457                 }
00458                 list->nbElem --;
00459                 return TRUE;
00460         }
00461
00463         void SuprAll()
00464         {
00465                 GoFirst();
00466                 while (More()) list->i.Supr();
00467                 list->Zero();
00468                 Zero();
00469         }
00470
00472         BOOL Supr (MyListItem<T> *item,BOOL withItem=TRUE)
00473         {
00474                 if (!item) return FALSE;
00475
00476                 MyListIterator<T> j=*this;
00477                 for (j=0;j.More();j++)
00478                 {
00479                         if (j.GetCurrent()==item) return j.Supr(withItem);
00480                 }
00481                 return FALSE;
00482         }
00483
00485         BOOL Supr(BOOL withItem=TRUE)
00486         {
00487                 if (!current) return FALSE;
00488                 MyListItem<T> * lAfter,*lBefore,*lOld;
00489                 lAfter = current->after;
00490                 lBefore = current->before;
00491                 lOld = current;
00492
00493                 if (!lBefore && !lAfter)
00494                 {
00495                         list->first = list->last = NULL;
00496                         Zero();
00497                 }
00498                 else
00499                 {
00500                         if (lBefore)
00501                         {
00502                                 lBefore->after=lAfter;
00503                                 if (lAfter)
00504                                 {
00505                                         lAfter->before = lBefore;
00506                                         current = lAfter;
00507                                 }
00508                                 else
00509                                 {
00510                                         list->last = current = lBefore;
00511                                         numCurrent--;
00512                                 }
00513                         }
00514                         else
00515                         {
00516                                 current = list->first = lAfter;
00517                                 lAfter->before = NULL;
00518                                 numCurrent--;
00519                         }
00520                 }
00521                 if (withItem) delete lOld;
00522                 else lOld->ZeroLink();
00523                 list->nbElem --;
00524                 return TRUE;
00525         }
00526
00528         BOOL SuprIndex(int index,BOOL withItem=TRUE)
00529         {
00530                 if (!GoIndex(list->first,index)) return FALSE;
00531                 return Supr(withItem);
00532         }
00533
00534         // Deplacement *******************************************************
00535
00537         BOOL GoTo(MyListItem<T> *item)
00538         {
00539                 if (!item) return FALSE;
00540                 for (GoFirst();More();GoAfter())
00541                 {
00542                         if (GetCurrent()==item) return TRUE;
00543                 }
00544                 return FALSE;
00545         }
00546
00548         BOOL GoTo(T elem)
00549         {
00550                 for (GoFirst();More();GoAfter())
00551                 {
00552                         if (GetElem()==elem) return TRUE;
00553                 }
00554                 return FALSE;
00555         }
00556
00558         BOOL GoAfter()
00559         {
00560                 if (current) current = current->after;
00561                 if (current)
00562                 {
00563                         numCurrent = numCurrent == -1 ? -1 : numCurrent+1;
00564                         return TRUE ;
00565                 }
00566                 else
00567                 {
00568                         numCurrent = -1;
00569                         return FALSE;
00570                 }
00571         }
00572
00574         BOOL GoBefore ()
00575         {
00576                 if (current) current = current->before;
00577                 if (current)
00578                 {
00579                         numCurrent = numCurrent == -1 ? -1 : numCurrent-1;
00580                         return TRUE;
00581                 }
00582                 else
00583                 {
00584                         numCurrent = -1;
00585                         return FALSE;
00586                 }
00587         }
00588
00590         BOOL GoFirst ()
00591         {
00592                 current = list->first;
00593                 numCurrent = current? 0 : -1;
00594                 return current? TRUE : FALSE;
00595         }
00596
00598         BOOL GoIndex (ETypeStart start,int nb)
00599         {
00600                 BOOL isUp;
00601                 isUp = nb<0 ? FALSE : TRUE ;
00602                 nb = labs(nb);
00603                 switch (start)
00604                 {
00605                 case list_current: break;
00606                 case list_first:
00607                         if (numCurrent != -1)
00608                         {
00609                                 nb = numCurrent-nb;
00610                                 isUp = nb<=0;
00611                                 nb = labs(nb);
00612                         }
00613                         else
00614                         {
00615                                 isUp = TRUE;
00616                                 GoFirst();
00617                         }
00618                         break;
00619                 case list_last:
00620                         if (numCurrent != -1)
00621                         {
00622                                 nb = list->nbElem-numCurrent-nb;
00623                                 isUp = nb>=0;
00624                                 nb = labs(nb);
00625                         }
00626                         else
00627                         {
00628                                 isUp = FALSE;
00629                                 GoLast();
00630                         }
00631                         break;
00632                 case list_before: isUp = FALSE; break;
00633                 case list_after:  isUp = TRUE;  break;
00634                 default:
00635                         return FALSE;
00636                 }
00637                 for (int i=0;i<nb;i++)
00638                 {
00639                         if (More())
00640                         {
00641                                 if (isUp) GoAfter();
00642                                 else GoBefore();
00643                         } else return FALSE;
00644                 }
00645                 return TRUE;
00646         }
00647
00649         BOOL GoLast ()
00650         {
00651                 current = list->last;
00652                 numCurrent = current? list->nbElem -1 : -1;
00653                 return current? TRUE : FALSE;
00654         }
00655
00656         // ********************************************************************************
00657
00658         //inline operator T() const { return GetElem(); } marche pas
00659         //inline operator T *() const { return GetElemPtr(); }
00660
00672         T & GetElem (int index=-1)
00673         {
00674                 if (index!=-1) GoIndex(list_first,index);
00675                 if (!current) return *list->elemNull;
00676                 return *current->elem;
00677         }
00678
00679         T * GetElemPtr ()
00680         {
00681                 if (!current) return list->elemNull;
00682                 return current->elem;
00683         }
00684
00696         T * GetElemPtr (int index)
00697         {
00698                 if (!GoIndex(list_first,index)) return list->elemNull;
00699                 if (!current) return list->elemNull;
00700                 return current->elem;
00701         }
00702
00704         BOOL More ()
00705         {
00706                 return current ? TRUE : FALSE;
00707         }
00708
00710         BOOL IsOnLast()
00711         {
00712                 return (current==list->last)? TRUE : FALSE;
00713         }
00714
00716         BOOL IsOnFirst()
00717         {
00718                 return (current==list->first)? TRUE : FALSE;
00719         }
00720
00721         MyListItem<T> * operator += (T *elem)
00722         {
00723                 return AddLast(elem);
00724         }
00725
00726         MyListItem<T> * operator += (T elem)
00727         {
00728                 return AddLast(elem);
00729         }
00730
00731         BOOL operator = (int index)
00732         {
00733                 if (index>=0) return GoIndex(list_first,index);
00734                 else return GoIndex(list_last,-index+1);
00735         }
00736
00737         BOOL operator++ (int)
00738         {
00739                 return GoAfter();
00740         }
00741
00742         BOOL operator-- (int)
00743         {
00744                 return GoBefore();
00745         }
00746
00747         T * operator () (int num=-1)
00748         {
00749                 return GetElemPtr(num);
00750         }
00751
00752         T & operator [] (int num)
00753         {
00754                 if (num<0)
00755                 {
00756                         if (!GoIndex(list_last,-num)) return *list->elemNull;
00757                 }
00758                 else
00759                 {
00760                         if (!GoIndex(list_first,num)) return *list->elemNull;
00761                 }
00762                 return GetElem();
00763         }
00764 };
00765
00766 template <class T> class MyList
00767 {
00768         public:
00769                 MyListIterator<T> i;
00770                 T *     elemNull;
00771                 MyListItem<T> *first;
00772                 MyListItem<T> *last;
00773                 int     nbElem;
00774                 //              int             (* FoncCompare)(T elem1,T elem2);       // fonction de comparaison
00775
00777                 MyList ()
00778                 {
00779                         Zero();
00780                         i.Bind(this);
00781                         //FoncCompare = DefaultFoncCompare;
00782                 }
00783
00784 /*
00785                 MyList (int(*_FoncCompare)(T,T))        // fonction de comparaison
00786                 {
00787                         first = NULL;
00788                         current = NULL;
00789                         last = NULL;
00790                         nbElem = 0;
00791                         numCurrent = -1;
00792
00793                         FoncNew = _FoncNew ? _FoncNew : DefaultFoncNew;
00794                 }
00795 */
00797                 ~MyList ()
00798                 {
00799                         i.SuprAll();
00800                 }
00801
00803                 void Zero()
00804                 {
00805                         first = NULL;
00806                         last = NULL;
00807                         nbElem = 0;
00808                 }
00809
00811                 int GetNbElem()
00812                 {
00813                         return nbElem;
00814                 }
00815
00816                 MyList<T> & operator = (MyList<T> &source)
00817                 {
00818                         i.SuprAll();
00819                         *this+= source;
00820                         return *this;
00821                 }
00822
00823                 MyList<T> & operator += (MyList<T> &source)
00824                 {
00825                         for (source.i=0;source.i.More();source.i++) i+= source.i.GetElem();
00826                         return *this;
00827                 }
00828
00830                 BOOL Save (FILE *fich)
00831                 {
00832                         if (!fich) return FALSE;
00833
00834                         fprintf(fich,"%d",nbElem);
00835                         MyListIterator<T> i(this);
00836                         T *item;
00837
00838                         for (i=0;i.More();i++)
00839                         {
00840                                 item = i.GetElemPtr();
00841                                 if (item)
00842                                         if (!fwrite ((void *) item,sizeof(T),1,fich)) return FALSE;
00843                         }
00844                         return TRUE;
00845                 }
00846
00848                 BOOL Load (FILE *fich)
00849                 {
00850                         if (!fich) return FALSE;
00851
00852                         int nb;
00853                         fscanf(fich,"%d",&nb);
00854                         T elem;
00855                         MyListIterator<T> i(this);
00856                         for (int x=0;x<nb;x++)
00857                         {
00858                                 if (!fread ((void *) &elem,sizeof(T),1,fich))return FALSE;
00859                                 if (!i.AddAfter(elem)) return FALSE;
00860                         }
00861                         return TRUE;
00862                 }
00863
00869                 void SetCompareFunction (int (* fonction)(T * elem1,T * elem2))
00870                 {
00871                         FoncCompare = fonction;
00872                 }
00873 /*
00874                 void SetNewFunction (T * (* fonction)(T * elem))
00875                 {
00876                         FoncNew = fonction;
00877                 }
00878
00879                 void SetDeleteFunction (BOOL (* fonction)(T *elem))
00880                 {
00881                         FoncDelete = fonction;
00882                 }
00883 */
00884                 /* **********************************************************************************
00885                         list += elem;                   ==> AddLast
00886                         listDest = listSource;  ==> Copy d'une liste dans une autre
00887                         listDest += listSource; ==> Ajout d'une liste dans une autre
00888                         elem = list[12];                ==> Acced a l'elem 12 (13) vu que ca commance a 0
00889                         elem = list[-1];                ==> Acced au dernier elem
00890                         list = 0;                               ==> Se place a l'element indexé 0
00891                         list ++;                                ==> Se place a l'element suivant;
00892                         list --;                                ==> Se place a l'element d'avant;
00893                         lisr += 2;                              ==> Se place a 2 element plus loin
00894                         lisr -= 2;                              ==> Se place a 2 element avant
00895                 ********************************************************************************** */
00896 /*
00897                 void operator += (T &elem)
00898                 {
00899                         AddLast(elem);
00900                 }
00901 */
00902 };
00903
00907 template <class T> class MyStack : public MyList<T>
00908 {
00909 public:
00910         MyStack() : MyList<T>() {}
00911
00912         BOOL Push(T elem)
00913         {
00914                 return i.AddFirst(elem)?TRUE:FALSE;
00915         }
00916
00917         T Pop()
00918         {
00919                 if (i.GoFirst())
00920                 {
00921                         T elem = i.GetElem();
00922                         i.SuprFirst();
00923                         return elem;
00924                 }
00925                 return *elemNull;
00926         }
00927
00928         T Peek()
00929         {
00930                 if (i.GoFirst()) return i.GetElem();
00931                 return *elemNull;
00932         }
00933
00934         BOOL FrontPush(T elem)
00935         {
00936                 return i.AddLast(elem);
00937         }
00938
00939         T FrontPop()
00940         {
00941                 if (i.GoLast())
00942                 {
00943                         T elem = i.GetElem();
00944                         i.SuprLast();
00945                         return elem;
00946                 }
00947                 return *elemNull;
00948         }
00949
00950         T FrontPeek()
00951         {
00952                 if (i.GoLast()) return i.GetElem();
00953                 return *elemNull;
00954         }
00955 };
00956
00957 // definition des fonctions d'allocation et des alloc par Default
00958
00959 template <class T> int DefaultFoncCompare (T elem1,T elem2)
00960 {
00961         return memcmp((void *)elem1,(void *)elem2,sizeof(T));
00962 }
00963
00964 /*
00965 template <class T> T * DefaultFoncNew (T *elemSource)
00966 {
00967         //T * elemDest = elemSource? new T(elemSource) : new T;
00968         T * elemDest = new T;
00969         *elemDest = elemSource;
00970         return elemDest;
00971
00972         T * elemDest = new T;
00973         if (elemSource) memcpy((void *)elemDest,(void *)elemSource,sizeof(T));
00974         return elemDest;
00975 }
00976
00977 template <class T> BOOL DefaultFoncDelete (T * elem)
00978 {
00979         delete elem;
00980         return TRUE;
00981 }
00982
00983 // definition des fonctions d'allocation et des alloc dans les MyString
00984
00985 #include "myString.h"
00986
00987 MyString * MyString_FoncNew (MyString *elemSource);
00988 int MyString_FoncCompare (MyString * elem1,MyString * elem2);
00989 #define MyListString(name) MyList<MyString> name(MyString_FoncCompare,MyString_FoncNew,NULL);
00990 */
00991
00992 #endif
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyMenu.cpp File Reference

MyMenu.cpp File Reference

#include <windows.h>
#include "MyString.h"
#include "MyMenu.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:32 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyMenu.cpp Source File

MyMenu.cpp

Go to the documentation of this file.
00001 #include <windows.h>
00002
00003 #include "MyString.h"
00004 #include "MyMenu.h"
00005
00006 CMyMenu::CMyMenu()
00007 {
00008         m_hFont = CreatePopupMenuTitleFont();
00009         clLeft=GetSysColor(COLOR_ACTIVECAPTION);
00010         clRight=GetSysColor(27);  //COLOR_GRADIENTACTIVECAPTION
00011         clText=GetSysColor(COLOR_CAPTIONTEXT);
00012
00013         hinst_msimg32 = LoadLibrary( "msimg32.dll" );
00014         m_bCanDoGradientFill = FALSE;
00015
00016         if(hinst_msimg32)
00017         {
00018                 m_bCanDoGradientFill = TRUE;
00019                 dllfunc_GradientFill = ((LPFNDLLFUNC1) GetProcAddress( hinst_msimg32, "GradientFill" ));
00020         }
00021         bDrawEdge=false;
00022         flag_edge=BDR_SUNKENINNER;
00023 }
00024
00025 CMyMenu::~CMyMenu()
00026 {
00027         DeleteObject(m_hFont);
00028         FreeLibrary( hinst_msimg32 );
00029 }
00030
00032 // CTitleMenu message handlers
00033
00034
00035 HFONT CMyMenu::CreatePopupMenuTitleFont()
00036 {
00037         // start by getting the stock menu font
00038         HFONT hfont = (HFONT)GetStockObject(ANSI_VAR_FONT);
00039         if (hfont)
00040         {
00041             LOGFONT lf; //get the complete LOGFONT describing this font
00042             if (GetObject(hfont, sizeof(LOGFONT), &lf))
00043                 {
00044                         lf.lfWeight = FW_BOLD;  // set the weight to bold
00045                         // recreate this font with just the weight changed
00046                         return CreateFontIndirect(&lf);
00047                 }
00048         }
00049         return NULL;
00050 }
00051
00052
00053 //
00054 // This function adds a title entry to a popup menu
00055 //
00056 void CMyMenu::AddTitle(char *title)
00057 {
00058         // insert an empty owner-draw item at top to serve as the title
00059         // note: item is not selectable (disabled) but not grayed
00060         m_title=title;
00061         InsertMenu(m_hMenu,0, MF_BYPOSITION | MF_OWNERDRAW | MF_STRING | MF_DISABLED, 0,NULL);
00062 }
00063
00064
00065
00066 void CMyMenu::MeasureItem(LPMEASUREITEMSTRUCT mi)
00067 {
00068         // get the screen dc to use for retrieving size information
00069         HDC dc= GetDC(NULL);
00070         // select the title font
00071         HFONT hfontOld = (HFONT)SelectObject(dc,m_hFont);
00072         // compute the size of the title
00073         SIZE size;
00074         GetTextExtentPoint32(dc,m_title,m_title.GetSize(),&size);
00075         // deselect the title font
00076         SelectObject(dc, hfontOld);
00077         // add in the left margin for the menu item
00078         size.cx += GetSystemMetrics(SM_CXMENUCHECK)+8;
00079
00080
00081         //Return the width and height
00082         //+ include space for border
00083         const int nBorderSize = 2;
00084         mi->itemWidth = size.cx + nBorderSize;
00085         mi->itemHeight = size.cy + nBorderSize;
00086 }
00087
00088
00089 void CMyMenu::DrawItem(LPDRAWITEMSTRUCT di)
00090 {
00091         COLORREF crOldBk = SetBkColor(di->hDC, clLeft);
00092
00093         if(m_bCanDoGradientFill&&(clLeft!=clRight))
00094         {
00095                 TRIVERTEX rcVertex[2];
00096                 di->rcItem.right--; // exclude this point, like FillRect does
00097                 di->rcItem.bottom--;
00098                 rcVertex[0].x=di->rcItem.left;
00099                 rcVertex[0].y=di->rcItem.top;
00100                 rcVertex[0].Red=GetRValue(clLeft)<<8;   // color values from 0x0000 to 0xff00 !!!!
00101                 rcVertex[0].Green=GetGValue(clLeft)<<8;
00102                 rcVertex[0].Blue=GetBValue(clLeft)<<8;
00103                 rcVertex[0].Alpha=0x0000;
00104                 rcVertex[1].x=di->rcItem.right;
00105                 rcVertex[1].y=di->rcItem.bottom;
00106                 rcVertex[1].Red=GetRValue(clRight)<<8;
00107                 rcVertex[1].Green=GetGValue(clRight)<<8;
00108                 rcVertex[1].Blue=GetBValue(clRight)<<8;
00109                 rcVertex[1].Alpha=0;
00110                 GRADIENT_RECT rect;
00111                 rect.UpperLeft=0;
00112                 rect.LowerRight=1;
00113
00114                 // fill the area
00115                 GradientFill( di->hDC,rcVertex,2,&rect,1,GRADIENT_FILL_RECT_H);
00116         }
00117         else ExtTextOut(di->hDC, 0, 0, ETO_OPAQUE, &di->rcItem, NULL, 0, NULL);
00118         if(bDrawEdge) DrawEdge(di->hDC, &di->rcItem, flag_edge, BF_RECT);
00119
00120
00121         int modeOld = ::SetBkMode(di->hDC, TRANSPARENT);
00122         COLORREF crOld = ::SetTextColor(di->hDC, clText);
00123         // select font into the dc
00124         HFONT hfontOld = (HFONT)SelectObject(di->hDC, m_hFont);
00125
00126         // add the menu margin offset
00127         di->rcItem.left += GetSystemMetrics(SM_CXMENUCHECK)+8;
00128
00129         // draw the text left aligned and vertically centered
00130         DrawText(di->hDC, m_title, -1, &di->rcItem, DT_SINGLELINE|DT_VCENTER|DT_LEFT);
00131
00132         //Restore font and colors...
00133         SelectObject(di->hDC, hfontOld);
00134         ::SetBkMode(di->hDC, modeOld);
00135         ::SetBkColor(di->hDC, crOldBk);
00136         ::SetTextColor(di->hDC, crOld);
00137 }
00138
00139
00140 BOOL CMyMenu::GradientFill(HDC hdc, CONST PTRIVERTEX pVertex, DWORD dwNumVertex, PVOID pMesh, DWORD dwNumMesh, DWORD dwMode)
00141 {
00142         return dllfunc_GradientFill(hdc,pVertex,dwNumVertex,pMesh,dwNumMesh,dwMode);
00143 }
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyMenu.h File Reference

MyMenu.h File Reference

Custom menu des commun controls de windows. More...

#include "myString.h"
#include "windows.h"

Go to the source code of this file.

Classes

class | CMyMenu
Permet degere des menus dans l'element du haut fait titre. More...

Defines

#define | AFX_TITLEMENU_H__E69DD9C2_0FDA_11D6_9385_0060086FAC36__INCLUDED_

Detailed Description

Custom menu des commun controls de windows.

Definition in file MyMenu.h.

Define Documentation

#define AFX_TITLEMENU_H__E69DD9C2_0FDA_11D6_9385_0060086FAC36__INCLUDED_

Definition at line 2 of file MyMenu.h.

Generated on Fri Aug 20 19:20:32 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyMenu.h Source File

MyMenu.h

Go to the documentation of this file.
00001 #if !defined(AFX_TITLEMENU_H__E69DD9C2_0FDA_11D6_9385_0060086FAC36__INCLUDED_)
00002 #define AFX_TITLEMENU_H__E69DD9C2_0FDA_11D6_9385_0060086FAC36__INCLUDED_
00003
00004 #include "myString.h"
00005
00006 #if _MSC_VER > 1000
00007 #pragma once
00008 #endif // _MSC_VER > 1000
00009
00014 #include "windows.h"
00015
00046 class CMyMenu
00047 {
00048         typedef UINT (CALLBACK* LPFNDLLFUNC1)(HDC,CONST PTRIVERTEX,DWORD,CONST PVOID,DWORD,DWORD);
00049
00050         // Attributes
00051         protected:
00052                 HFONT m_hFont;
00053                 HMENU m_hMenu;
00054                 MyString m_title;
00055
00056                 LPFNDLLFUNC1 dllfunc_GradientFill;
00057                 HINSTANCE hinst_msimg32;
00058                 long clRight;
00059                 long clLeft;
00060                 long clText;
00061                 bool bDrawEdge;
00062                 UINT flag_edge;
00063
00064         protected:
00065                 bool m_bCanDoGradientFill;
00066                 HFONT CreatePopupMenuTitleFont();
00067                 BOOL GradientFill(      HDC hdc,
00068                                                         CONST PTRIVERTEX pVertex,
00069                                                         DWORD dwNumVertex,
00070                                                         CONST PVOID pMesh,
00071                                                         DWORD dwNumMesh,
00072                                                         DWORD dwMode);
00073
00074
00075
00076         // Implementation
00077         public:
00078                 CMyMenu();
00079
00080                 void AddTitle(char *title);
00081                 void operator= (HMENU hMenu) { m_hMenu = hMenu; };
00082
00083                 void SetColor(long cl) {clLeft=cl;};
00084                 void SetGradientColor(long cl) {clRight=cl;};
00085                 void SetTextColor(long cl) {clText=cl;};
00086                 // See ::DrawEdge for flag values
00087                 void SetEdge(bool shown,UINT remove=0,UINT add=0) {bDrawEdge=shown; (flag_edge^=remove)|=add;};
00088
00089                 long GetColor() {return clLeft;};
00090                 long GetGradientColor() {return clRight;};
00091                 long GetTextColor() {return clText;};
00092                 long GetEdge() {return flag_edge;};
00093
00094                 virtual ~CMyMenu();
00095                 virtual void MeasureItem(LPMEASUREITEMSTRUCT lpMIS);
00096                 virtual void DrawItem(LPDRAWITEMSTRUCT lpDIS);
00097
00098         private:
00099 };
00100
00102
00103 //{{AFX_INSERT_LOCATION}}
00104 // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
00105
00106 #endif // !defined(AFX_TITLEMENU_H__E69DD9C2_0FDA_11D6_9385_0060086FAC36__INCLUDED_)
00107
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyObject.h File Reference

MyObject.h File Reference

Element generique d'un list ou d'un arbre. More...

Go to the source code of this file.

Classes

class | Object
"Objet" generique, utilise pour faire des list ou arbre d'element de type different More...

class | BaseObj
Objet de base. More...

Defines

#define | CBASE_INDEX_INT 0
#define | CBASE_INDEX_FLOAT 1
#define | CBASE_INDEX_DOUBLE 2
#define | CBASE_INDEX_STRING 3
#define | CBASE_INDEX_CUSTOM 4
#define | CBase_int BaseObj<int,CBASE_INDEX_INT>
#define | CBase_float BaseObj<float,CBASE_INDEX_FLOAT>
#define | CBase_double BaseObj<double,CBASE_INDEX_DOUBLE>
#define | CBase_string BaseObj<MyString,CBASE_INDEX_STRING>

Typedefs

typedef void *(Object::* | Obj_CallBack )(void *)

Detailed Description

Element generique d'un list ou d'un arbre.

Definition in file MyObject.h.

Define Documentation

#define CBase_double BaseObj<double,CBASE_INDEX_DOUBLE>

Definition at line 156 of file MyObject.h.

#define CBase_float BaseObj<float,CBASE_INDEX_FLOAT>

Definition at line 155 of file MyObject.h.

#define CBASE_INDEX_CUSTOM 4

Definition at line 152 of file MyObject.h.

#define CBASE_INDEX_DOUBLE 2

Definition at line 150 of file MyObject.h.

Referenced by DebugStructProc(), and ValueEditorProc().

#define CBASE_INDEX_FLOAT 1

Definition at line 149 of file MyObject.h.

Referenced by DebugStructProc(), and ValueEditorProc().

#define CBASE_INDEX_INT 0

Definition at line 148 of file MyObject.h.

Referenced by DebugStructProc(), and ValueEditorProc().

#define CBASE_INDEX_STRING 3

Definition at line 151 of file MyObject.h.

#define CBase_int BaseObj<int,CBASE_INDEX_INT>

Definition at line 154 of file MyObject.h.

#define CBase_string BaseObj<MyString,CBASE_INDEX_STRING>

Definition at line 157 of file MyObject.h.

Typedef Documentation

typedef void*(Object::* Obj_CallBack)(void *)

Definition at line 27 of file MyObject.h.

Referenced by BaseObj< T, V >::BaseObj().

Generated on Fri Aug 20 19:20:33 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyObject.h Source File

MyObject.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_MY_OBJECT_H
00024 #define INCLUDE_MY_OBJECT_H
00025
00026 class Object;
00027 typedef void * (Object::*Obj_CallBack) (void *);
00028
00084 class Object
00085 {
00086 public:
00087         void *thisParent;
00088         int type;
00089         LONG param; // parametre suplementaire
00090         Obj_CallBack callBackAlloc;
00091
00092 public:
00093         Object()
00094         {
00095                 param = 0;
00096                 thisParent=NULL;
00097                 type=-1;
00098                 callBackAlloc=NULL;
00099         }
00100
00101         Object(int _type,void *_thisParent)
00102         {
00103                 type = _type;
00104                 thisParent = _thisParent;
00105         }
00106
00107         void operator= (Object &source)
00108         {
00109                 param = source.param;
00110                 type = source.type;
00111                 callBackAlloc = source.callBackAlloc;
00112                 thisParent = (*this.*callBackAlloc)(source.thisParent);
00113         }
00114 };
00115
00124 template <class T,int V> class BaseObj : public Object
00125 {
00126 public:
00127         T elem;
00128
00129         BaseObj() : Object(V,(void *)this)
00130         {
00131                 callBackAlloc = (Obj_CallBack) Duplicate;
00132         }
00133
00134         void * Duplicate (void *_in)
00135         {
00136                 BaseObj<T,V> *in = (BaseObj<T,V> *)_in;
00137                 BaseObj<T,V> *out = new BaseObj<T,V>;
00138                 *out = *in;
00139                 return (void *)out;
00140         }
00141
00142         void operator=(BaseObj<T,V> &source)
00143         {
00144                 elem = source.elem;
00145         }
00146 };
00147
00148 #define CBASE_INDEX_INT         0
00149 #define CBASE_INDEX_FLOAT       1
00150 #define CBASE_INDEX_DOUBLE      2
00151 #define CBASE_INDEX_STRING      3
00152 #define CBASE_INDEX_CUSTOM      4
00153
00154 #define CBase_int BaseObj<int,CBASE_INDEX_INT>
00155 #define CBase_float BaseObj<float,CBASE_INDEX_FLOAT>
00156 #define CBase_double BaseObj<double,CBASE_INDEX_DOUBLE>
00157 #define CBase_string BaseObj<MyString,CBASE_INDEX_STRING>
00158
00159 /* Visuel de class virtuel ******************************************************
00160  class A
00161  {
00162  public:
00163          int var_a;
00164
00165          virtual void meth_a()
00166          {
00167                  var_a=10;
00168          }
00169
00170          void meth_a2()
00171          {
00172                  meth_a();
00173          }
00174  };
00175
00176  class B: public A
00177  {
00178  public:
00179          int var_b;
00180
00181          void meth_a()
00182          {
00183                  var_b=20;
00184          }
00185  };
00186
00187  // test:
00188  A a;
00189  B b;
00190
00191  a.meth_a();
00192  a.meth_a2();
00193  b.meth_a();
00194  b.meth_a2();
00195  A *c = &b;
00196  c->meth_a2();
00197
00198  // classe de text pour les object
00199  class CTest
00200  {
00201  public:
00202  int i;
00203  MyString text;
00204
00205  CTest()
00206  {
00207  text="";
00208  i=0;
00209  }
00210  void operator=(CTest &source)
00211  {
00212  i = source.i;
00213  text = source.text;
00214  }
00215  };
00216 */
00217
00218 #endif
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyRegistry.CPP File Reference

MyRegistry.CPP File Reference

#include <stdio.h>
#include <windows.h>
#include "MyRegistry.h"
#include "MyException.h"
#include "mylist.h"
#include <shlwapi.h>

Go to the source code of this file.

Functions

BOOL NextSubKey (MyString &key, MyString &subKey, MyString &suite)
Donne la sousclef la plus a gauche et le reste.

Function Documentation

BOOL NextSubKey | ( | MyString & | key,
 |  | MyString & | subKey,
 |  | MyString & | suite
 | ) |

Donne la sousclef la plus a gauche et le reste.

ex.:

MyString subKeyName,suite;
MyRegistry key;
key.NextSubKey("HKEY_CURRENT_USER\Software\PlayListManager",subKeyName,suite);
==> suite = "Software\PlayListManager"
        subKeyName= "HKEY_CURRENT_USER"

ex.:
MyString keyName,subKeyName,suite;
MyRegistry key;
key="HKEY_CURRENT_USER\Software\PlayListManager";
char *suite;
while (NextSubKey(keyName,subKeyName,suite))
{
        printf("SubKey=%s, suite=%s\n");
        keyName=suite;
}
==> SubKeyHKEY_CURRENT_USER, suite=Software SubKey=Software, suite=PlayListManager SubKey=PlayListManager, suite=

Definition at line 68 of file MyRegistry.CPP.

References BOOL(), MyString::GetSize(), and MyString::GetValue().

Generated on Fri Aug 20 19:20:33 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyRegistry.CPP Source File

MyRegistry.CPP

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include <stdio.h>
00020 #include <windows.h>
00021 #include "MyRegistry.h"
00022 #include "MyException.h"
00023 #include "mylist.h"
00024
00032 void MyRegistry::SetAutoCreate(BOOL autoCreate)
00033 {
00034         m_isAutoCreate = autoCreate;
00035 }
00036
00037 BOOL MyRegistry::IsAutoCreate()
00038 {
00039         return m_isAutoCreate;
00040 }
00041
00068 BOOL NextSubKey(MyString &key,MyString &subKey,MyString &suite)
00069 {
00070         for (int i=0;i<key.GetSize();i++)
00071         {
00072                 if (key[i]=='\\')
00073                 {
00074                         key[i]='\0';
00075                         subKey = key;
00076                         key[i]='\\';
00077                         suite=key.GetValue()+i+1;
00078                         return TRUE;
00079                 }
00080         }
00081         subKey=key;
00082         return FALSE;
00083 }
00084
00088 void MyRegistry::HKeyToString (MyString &result)
00089 {
00090         switch ((ULONG_PTR)m_hKey)
00091         {
00092                 case HKEY_CLASSES_ROOT: result="HKEY_CLASSES_ROOT"; break;
00093                 case HKEY_CURRENT_CONFIG: result="HKEY_CURRENT_CONFIG";break;
00094                 case HKEY_CURRENT_USER: result="HKEY_CURRENT_USER"; break;
00095                 case HKEY_LOCAL_MACHINE: result="HKEY_LOCAL_MACHINE"; break;
00096                 case HKEY_USERS: result="HKEY_USERS";break;
00097                 case HKEY_PERFORMANCE_DATA: result="HKEY_PERFORMANCE_DATA";break;
00098                 case HKEY_DYN_DATA: result="HKEY_DYN_DATA"; break;
00099                 default: result="";
00100         }
00101 }
00102
00108 MyRegistry::MyRegistry(BOOL autoCreate)
00109 {
00110         m_isAutoCreate = autoCreate;
00111         m_lastError = ERROR_SUCCESS;
00112 }
00113
00126 BOOL MyRegistry::Open(char *nameKey)
00127 {
00128         SetKeyName(nameKey);
00129
00130         HKEY hKey;
00131         m_lastError = RegOpenKeyExA( m_hKey, m_postFixKey, 0 , KEY_READ, &hKey);
00132         if (m_lastError!=ERROR_SUCCESS)
00133         {
00134                 if (m_isAutoCreate) return Create(NULL);
00135                 return FALSE;
00136         }
00137         RegCloseKey (hKey) ;
00138         return TRUE;
00139 }
00140
00141 // ********************************************************************************
00142
00143 BOOL MyRegistry::SetKeyName(char *nameKey)
00144 {
00145         // gestion des insertions et deplacement "." et "\"
00146         char *letter = nameKey;
00147         BOOL modeRet=FALSE;
00148         BOOL modeAdd=TRUE;
00149
00150         if (*letter=='.' || *letter=='\\')
00151         {
00152                 while (*letter)
00153                 {
00154                         switch (*letter)
00155                         {
00156                         case '.':
00157                                 modeAdd=FALSE;
00158                                 if (modeRet)
00159                                 {
00160                                         m_postFixKey.Delete(-1,FALSE,1); // suprime le '\'
00161                                         if (!m_postFixKey.Delete(-1,FALSE,'\\')) m_postFixKey="";
00162                                         modeRet = FALSE;
00163                                 }
00164                                 else modeRet = TRUE;
00165                                 break;
00166
00167                         case '\\':
00168                                 if (modeAdd&&m_postFixKey[-1]!='\\'&&nameKey-letter)
00169                                         m_postFixKey<<'\\'; // ajout '\' si pas permiere lettre, ancienne lettre!='\' et si pas modeAdd
00170                                 break;
00171
00172                         default:
00173                                 if (!modeAdd&&m_postFixKey.GetSize()) m_postFixKey<<'\\';
00174                                 modeAdd=TRUE;
00175                                 m_postFixKey<<*letter;
00176                                 break;
00177                         }
00178                         letter++;
00179                 }
00180         }
00181         else if (!SetPrefixAndPostfix(nameKey)) return FALSE;
00182
00183         // quelque soit la clef elle doit se finir par '\'
00184         switch (m_postFixKey[-1])
00185         {
00186                 case '\\': break;
00187                 case '\0': break;
00188                 default: m_postFixKey<<'\\';
00189         }
00190         return TRUE;
00191 }
00192
00193 // ********************************************************************************
00194
00195 void MyRegistry::GetKeyName(MyString &result)
00196 {
00197         HKeyToString(result);
00198         result<<"\\"<<m_postFixKey;
00199 }
00200
00206 BOOL MyRegistry::SetPrefixAndPostfix (char *nameKey)
00207 {
00208         MyString fullNameKey = nameKey;
00209         MyString subKey,nextKey;
00210
00211         m_hKey = NULL;
00212         NextSubKey(fullNameKey,subKey,nextKey);
00213         if (subKey=="HKEY_CLASSES_ROOT" || subKey=="HKCR")
00214                 m_hKey=HKEY_CLASSES_ROOT;
00215         else if (subKey=="HKEY_CURRENT_CONFIG" || subKey=="HKCC")
00216                 m_hKey=HKEY_CURRENT_CONFIG;
00217         else if (subKey=="HKEY_CURRENT_USER" || subKey=="HKCU")
00218                 m_hKey=HKEY_CURRENT_USER;
00219         else if (subKey=="HKEY_LOCAL_MACHINE" || subKey=="HKLM")
00220                 m_hKey=HKEY_LOCAL_MACHINE;
00221         else if (subKey=="HKEY_USERS" || subKey=="HKU")
00222                 m_hKey=HKEY_USERS;
00223         else if (subKey=="HKEY_PERFORMANCE_DATA" || subKey=="HKPD")
00224                 m_hKey=HKEY_PERFORMANCE_DATA;
00225         else if (subKey=="HKEY_DYN_DATA" || subKey=="HKDD")
00226                 m_hKey=HKEY_DYN_DATA;
00227         else
00228         {
00229                 m_hKey = NULL;
00230                 return FALSE;
00231         }
00232         m_postFixKey = nextKey;
00233         return TRUE;
00234 }
00235
00245 BOOL MyRegistry::Create(char *nameKey)
00246 {
00247         if (nameKey) if (!SetKeyName(nameKey)) return FALSE;
00248
00249         HKEY hKey;
00250         m_lastError = RegCreateKeyA(m_hKey,m_postFixKey,&hKey);
00251         if (m_lastError!= ERROR_SUCCESS) return FALSE;
00252         RegCloseKey (hKey);
00253         return TRUE;
00254 }
00255
00256
00257 #include <shlwapi.h>
00258 #pragma comment(lib, "shlwapi.lib")
00259
00263 BOOL MyRegistry::DeleteKey(char *nameKey)
00264 {
00265         if (!nameKey) nameKey=m_postFixKey.GetValue();
00266         else if (!SetPrefixAndPostfix(nameKey)) return FALSE;
00267
00268         SHDeleteKey(m_hKey,nameKey);
00269         SetKeyName("..");
00270         TestKey();
00271         return TRUE;
00272 }
00273
00277 BOOL MyRegistry::DeleteValue(char *param)
00278 {
00279         HKEY hKey ;
00280         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_SET_VALUE,&hKey);
00281         if (m_lastError!= ERROR_SUCCESS) return FALSE;
00282         m_lastError = RegDeleteValueA (hKey,param);
00283         RegCloseKey (hKey) ;
00284         return m_lastError== ERROR_SUCCESS?TRUE:FALSE;
00285 }
00286
00290 BOOL MyRegistry::TestKey()
00291 {
00292         HKEY hKey;
00293         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_READ,&hKey);
00294         if (m_lastError==ERROR_SUCCESS)
00295         {
00296                 RegCloseKey (hKey);
00297                 return TRUE;
00298         }
00299         return FALSE;
00300 }
00301
00302 // ****************************************************************************
00303
00304 BOOL MyRegistry::TestValue(char *param)
00305 {
00306         HKEY hKey ;
00307         ULONG uType = REG_SZ ;
00308         DWORD dwSize=0;
00309
00310         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_QUERY_VALUE,&hKey);
00311         if (m_lastError!= ERROR_SUCCESS) return FALSE;
00312         m_lastError = RegQueryValueExA (hKey,param,NULL,NULL,NULL,NULL);
00313         RegCloseKey (hKey) ;
00314         return m_lastError==ERROR_SUCCESS;
00315 }
00316
00320 int MyRegistry::GetValueSize(char *param)
00321 {
00322         HKEY hKey ;
00323         DWORD dwSize;
00324
00325         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_QUERY_VALUE ,&hKey);
00326         if (m_lastError!= ERROR_SUCCESS) return FALSE;
00327         m_lastError = RegQueryValueExA (hKey,param,NULL,NULL,NULL,&dwSize);
00328         RegCloseKey (hKey) ;
00329
00330         return dwSize;
00331 }
00332
00333 int MyRegistry::GetValueType(char *param)
00334 {
00335         HKEY hKey ;
00336         ULONG uType;
00337
00338         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_QUERY_VALUE ,&hKey);
00339         if (m_lastError!= ERROR_SUCCESS) return FALSE;
00340         m_lastError = RegQueryValueExA (hKey,param,NULL,&uType,NULL,NULL);
00341         RegCloseKey (hKey) ;
00342
00343         return uType;
00344 }
00345
00349 LPBYTE MyRegistry::GetValue(char *param ,DWORD uTypeResult)
00350 {
00351         HKEY hKey ;
00352         DWORD dwSize;
00353         ULONG uType;
00354         LPBYTE result;
00355
00356         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_QUERY_VALUE,&hKey);
00357         if (m_lastError!=ERROR_SUCCESS) return FALSE;
00358         m_lastError = RegQueryValueExA (hKey,param,NULL,&uType,NULL,NULL);
00359         if (m_lastError!=ERROR_SUCCESS || uTypeResult!=uType) { RegCloseKey (hKey); return FALSE; }
00360         m_lastError = RegQueryValueExA (hKey,param,NULL,NULL,NULL,&dwSize);
00361         if (m_lastError!=ERROR_SUCCESS) { RegCloseKey (hKey); return FALSE; }
00362         result = new BYTE[dwSize];
00363         ZeroMemory(result,dwSize);
00364         m_lastError = RegQueryValueExA (hKey,param,NULL,&uType,result,&dwSize);
00365         RegCloseKey (hKey);
00366         return m_lastError==ERROR_SUCCESS?result:NULL;
00367 }
00368
00369 BOOL MyRegistry::GetValue(char *param , char *result , char *defValue)
00370 {
00371         if (result) result[0]='\0';
00372         else return FALSE;
00373         MyString temp;
00374         temp=result;
00375         if (GetValue(param,temp,defValue))
00376         {
00377                 strncpy(result,temp.GetValue(),temp.GetSize()+1);
00378                 return TRUE;
00379         }
00380         else return FALSE;
00381 }
00382
00383 BOOL MyRegistry::GetValue(char *param, MyString &result , char *defValue)
00384 {
00385         LPBYTE res=NULL;
00386         DWORD uType = GetValueType(param);
00387         result="";
00388
00389         switch (uType)
00390         {
00391                 case REG_SZ:
00392                 case REG_EXPAND_SZ:
00393                         res = GetValue(param,uType);
00394                         if (!res) break;
00395                         result=(char *)res;
00396                         delete res;
00397                         return TRUE;
00398
00399                 case REG_MULTI_SZ: // retire tout les \0 qui separe les lignes
00400                         res = GetValue(param,uType);
00401                         if (!res) break;
00402                         int size;
00403                         size = GetValueSize(param);
00404                         for (int i=0;i<size;i++)
00405                         {
00406                                 if (res[i]=='\0') result<<' ';
00407                                 else result+=(char)res[i];
00408                         }
00409                         result.Delete(-1,FALSE,1); // supression du dernier ' '
00410                         delete res;
00411                         return TRUE;
00412         }
00413         if (defValue) result = defValue;
00414         else result ="";
00415         return FALSE;
00416 }
00417
00418 BOOL MyRegistry::GetValueMulti(char *param, MyList<MyString> &result , char *defValue)
00419 {
00420         result.i.SuprAll();
00421         LPBYTE res = GetValue(param,REG_MULTI_SZ);
00422         if (!res)
00423         {
00424                 MyString temp;
00425                 if (!defValue)
00426                 {
00427                         temp = defValue;
00428                         result.i+=temp;
00429                 }
00430                 else result.i+=temp;
00431                 return FALSE;
00432         }
00433
00434         MyString current;
00435         int size = GetValueSize(param);
00436         current=(char *)res;
00437         if (size!=1)result.i+=current; // car ou c'est vide
00438         for (int i=0;i<size-1;i++)
00439         {
00440                 if (res[i]=='\0')
00441                 {
00442                         current=(char *)res+i+1;
00443                         result.i+=current;
00444                 }
00445         }
00446         delete res;
00447         return TRUE;
00448 }
00449
00450 BOOL MyRegistry::GetValueExpand(char *param, char *result , char *defValue)
00451 {
00452         MyString temp;
00453         BOOL r = GetValueExpand(param,temp,defValue);
00454         strcpy(result,temp);
00455         return r;
00456 }
00457
00458 BOOL MyRegistry::GetValueExpand(char *param, MyString &result , char *defValue)
00459 {
00460         LPBYTE res = GetValue(param,REG_EXPAND_SZ);
00461         if (!res)
00462         {
00463                 if (defValue) result = defValue;
00464                 else result = "";
00465                 return FALSE;
00466         }
00467         int newSize = ExpandEnvironmentStrings((LPCSTR)res,NULL,0);
00468         char *resExpand = new char[newSize];
00469         ExpandEnvironmentStrings((LPCSTR)res,resExpand,newSize);
00470         result=resExpand;
00471         delete resExpand;
00472         delete res;
00473         return TRUE;
00474 }
00475
00476 BOOL MyRegistry::GetValue(char *param,int *result,int defValue)
00477 {
00478         return GetValue(param,(DWORD *)result,defValue);
00479 }
00480
00481 BOOL MyRegistry::GetValue(char *param,DWORD *result,DWORD defValue)
00482 {
00483         DWORD uType = GetValueType(param);
00484         if (uType!=REG_DWORD && uType!=REG_DWORD_LITTLE_ENDIAN && uType!=REG_DWORD_BIG_ENDIAN)
00485         {
00486                 *result = defValue;
00487                 return FALSE;
00488         }
00489         LPBYTE res = GetValue(param,uType);
00490         if (res)
00491         {
00492                 *result=*(DWORD *)res;
00493                 delete res;
00494                 return TRUE;
00495         }
00496         *result = defValue;
00497         return FALSE;
00498 }
00499
00500 BOOL MyRegistry::GetValue(char *param,LONGLONG *result, LONGLONG defValue)
00501 {
00502         DWORD uType = GetValueType(param);
00503         if (uType!=REG_QWORD && uType!=REG_QWORD_LITTLE_ENDIAN) return FALSE;
00504         LPBYTE res = GetValue(param,uType);
00505         if (res)
00506         {
00507                 *result=*(LONGLONG *)res;
00508                 delete res;
00509                 return TRUE;
00510         }
00511         *result = defValue;
00512         return FALSE;
00513 }
00514
00515 BOOL MyRegistry::GetValue(char *param,float *result,float defValue)
00516 {
00517         MyString temp,defValueString;
00518         defValueString=defValue;
00519         BOOL res = GetValue(param,temp,defValueString);
00520         *result = temp.ToFloat();
00521         return res;
00522 }
00523
00524 BOOL MyRegistry::GetValue(char *param,double *result,double defValue)
00525 {
00526         MyString temp,defValueString;
00527         defValueString=defValue;
00528         BOOL res = GetValue(param,temp,defValueString);
00529         *result = temp.ToDouble();
00530         return res;
00531 }
00532
00545 LPBYTE MyRegistry::GetValue(char *param)
00546 {
00547         switch (GetValueType(param))
00548         {
00549                 case REG_BINARY: return GetValue(param,REG_BINARY);
00550                 case REG_NONE: return GetValue(param,(DWORD)REG_NONE)?(LPBYTE)TRUE:(LPBYTE)FALSE;
00551                 default:return FALSE;
00552         }
00553 }
00554
00558 BOOL MyRegistry::SetValue(char *param,LPBYTE source,ULONG uTypeSource,ULONG sizeSource)
00559 {
00560         HKEY hKey ;
00561
00562         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_SET_VALUE,&hKey);
00563         if (m_lastError!= ERROR_SUCCESS) return FALSE;
00564         m_lastError = RegSetValueExA (hKey, param, NULL, uTypeSource , source, sizeSource);
00565         RegCloseKey (hKey) ;
00566         return m_lastError== ERROR_SUCCESS?TRUE:FALSE;
00567 }
00568
00569 BOOL MyRegistry::SetValue(char *param)
00570 { return SetValue(param,NULL,REG_NONE,0); }
00571
00572 BOOL MyRegistry::SetValue(char *param,int value)
00573 { return SetValue(param,(DWORD)value); }
00574
00575 BOOL MyRegistry::SetValue(char *param,DWORD value)
00576 { return SetValue(param,(LPBYTE)&value,REG_DWORD,4); }
00577
00578 BOOL MyRegistry::SetValueLittleEndian(char *param,DWORD value)
00579 { return SetValue(param,(LPBYTE)&value,REG_DWORD_LITTLE_ENDIAN,4); }
00580
00581 BOOL MyRegistry::SetValueBigEndian(char *param,DWORD value)
00582 { return SetValue(param,(LPBYTE)&value,REG_DWORD_BIG_ENDIAN,4); }
00583
00584 BOOL MyRegistry::SetValue(char *param,LONGLONG value)
00585 { return SetValue(param,(LPBYTE)&value,REG_QWORD,8); }
00586
00587 BOOL MyRegistry::SetValueLittleEndian(char *param,LONGLONG value)
00588 { return SetValue(param,(LPBYTE)&value,REG_QWORD_LITTLE_ENDIAN,8); }
00589
00590 BOOL MyRegistry::SetValue(char *param,char *value)
00591 { return SetValue(param,(LPBYTE)value,REG_SZ,(int)strlen(value)+1); }
00592
00593 BOOL MyRegistry::SetValueExpand(char *param,char *value)
00594 { return SetValue(param,(LPBYTE)value,REG_EXPAND_SZ,(int)strlen(value)+1); }
00595
00596 BOOL MyRegistry::SetValueMulti(char *param,char *str)
00597 {
00598         BOOL isZero = FALSE;
00599         int size;
00600         for (size=0;;size++)
00601                 if (str[size]=='\0')
00602                         if (isZero) break;
00603                         else isZero=TRUE;
00604                 else isZero=FALSE;
00605
00606         return SetValue(param,(LPBYTE)str,REG_MULTI_SZ,size);
00607 }
00608
00609 BOOL MyRegistry::SetValueMulti(char *param,MyList<MyString> &lString)
00610 {
00611         MyString res;
00612         for (lString.i=0;lString.i.More();lString.i++)
00613                 res<<lString.i.GetElem()<<'\1';
00614         for (int i=0;i<res.GetSize();i++) if (res[i]=='\1') res[i]='\0';
00615         return SetValueMulti(param,res);
00616 }
00617
00618 BOOL MyRegistry::SetValue(char *param,float value)
00619 {
00620         MyString temp;
00621         temp = value;
00622         return SetValue(param,temp);
00623 }
00624
00625 BOOL MyRegistry::SetValue(char *param,double value)
00626 {
00627         MyString temp;
00628         temp = value;
00629         return SetValue(param,temp);
00630 }
00631
00632 BOOL MyRegistry::SetValue(char *param,LPBYTE data,int size)
00633 { return SetValue(param,data,REG_BINARY,size); }
00634
00635
00636 // *************************************************************************************
00637
00638 BOOL MyRegistry::NextEnumKey (char *result)
00639 {
00640         MyString str;
00641         BOOL res = NextEnumKey(str);
00642         strcpy(result,str.GetValue());
00643         return res;
00644 }
00645
00646 BOOL MyRegistry::NextEnumKey(MyString &result)
00647 {
00648         HKEY hKey ;
00649         char res[261]; // taille max d'un nom de valeur
00650         DWORD size=261;
00651         result="";
00652
00653         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_ENUMERATE_SUB_KEYS,&hKey);
00654         if (m_lastError!= ERROR_SUCCESS) return FALSE;
00655         m_lastError = RegEnumKeyA(hKey,m_numEnumKey++,res,261);
00656         RegCloseKey (hKey);
00657         if (m_lastError==ERROR_SUCCESS)
00658         {
00659                 result = res;
00660                 return TRUE;
00661         }
00662         else
00663         {
00664                 if (m_lastError==ERROR_NO_MORE_ITEMS) m_lastError = ERROR_SUCCESS;
00665                 result="";
00666                 return FALSE;
00667         }
00668 }
00669
00670 // *************************************************************************************
00671
00672 BOOL MyRegistry::NextEnumValue (char *result)
00673 {
00674         MyString str;
00675         BOOL res = NextEnumValue(str);
00676         strcpy(result,str.GetValue());
00677         return res;
00678 }
00679
00680 BOOL MyRegistry::NextEnumValue (MyString &result)
00681 {
00682         HKEY hKey ;
00683         char res[261]; // taille max d'un nom de valeur
00684         DWORD size=261;
00685         result="";
00686
00687         m_lastError = RegOpenKeyExA(m_hKey,m_postFixKey,0,KEY_QUERY_VALUE,&hKey);
00688         if (m_lastError!=ERROR_SUCCESS) return FALSE;
00689         m_lastError = RegEnumValueA(hKey,m_numEnumValue++,res,&size,NULL,NULL,NULL,NULL);
00690         RegCloseKey (hKey);
00691         if (m_lastError==ERROR_SUCCESS)
00692         {
00693                 result = res;
00694                 return TRUE;
00695         }
00696         else
00697         {
00698                 if (m_lastError==ERROR_NO_MORE_ITEMS) m_lastError = ERROR_SUCCESS;
00699                 result="";
00700                 return FALSE;
00701         }
00702 }
00703
00704 /* *************************************************************************************
00705         Ex.:
00706         MyRegistry reg("mySoftware");
00707         MyString string = reg("myParam1","getstring");
00708         reg("myParam2","setint")=12;
00709 ************************************************************************************* */
00710 /*
00711 MyString & MyRegistry::operator() (char *param,char *typeAction);
00712 {
00713         MyString temp = typeAction;
00714         int interger;
00715
00716         if (temp=="rint")
00717         {
00718                 GetValue(param,&integer);
00719                 m_result = interger;
00720                 return m_result;
00721         }
00722         else if (temp=="rstring")
00723         {
00724                 GetValue(param,m_result);
00725                 return m_result;
00726         }
00727
00728         else if (temp=="wint")
00729         {
00730                 SetValue(param,integer);
00731         }
00732 }
00733 */
Generated on Fri Aug 20 19:19:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyRegistry.H File Reference

MyRegistry.H File Reference

#include "MyString.h"
#include "MyList.h"

Go to the source code of this file.

Classes

class | MyRegistry
Lecture / Ecriture / Enumeration de clef et de valeur de registre. More...

Functions

BOOL | NextSubKey (MyString &key, MyString &subKey, MyString &suite)
Donne la sousclef la plus a gauche et le reste.

Function Documentation

BOOL NextSubKey | ( | MyString & | key,
 |  | MyString & | subKey,
 |  | MyString & | suite
 | ) |

Donne la sousclef la plus a gauche et le reste.

ex.:

MyString subKeyName,suite;
MyRegistry key;
key.NextSubKey("HKEY_CURRENT_USER\Software\PlayListManager",subKeyName,suite);
==> suite = "Software\PlayListManager"
        subKeyName= "HKEY_CURRENT_USER"

ex.:
MyString keyName,subKeyName,suite;
MyRegistry key;
key="HKEY_CURRENT_USER\Software\PlayListManager";
char *suite;
while (NextSubKey(keyName,subKeyName,suite))
{
        printf("SubKey=%s, suite=%s\n");
        keyName=suite;
}
==> SubKeyHKEY_CURRENT_USER, suite=Software SubKey=Software, suite=PlayListManager SubKey=PlayListManager, suite=

Definition at line 68 of file MyRegistry.CPP.

References BOOL(), MyString::GetSize(), and MyString::GetValue().

Generated on Fri Aug 20 19:20:34 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyRegistry.H Source File

MyRegistry.H

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_REGISTRY_H
00024 #define INCLUDE_REGISTRY_H
00025
00026 #include "MyString.h"
00027 #include "MyList.h"
00028 #pragma comment(lib, "advapi32.lib")
00029
00077 class MyRegistry
00078 {
00079         public:
00080                 MyRegistry (BOOL autoCreate=FALSE);
00081                 BOOL operator= (char *nameKey) { return Open(nameKey); }
00082                 BOOL Open(char *nameKey);
00083
00084                 void GetKeyName(MyString &result);
00085                 BOOL Create(char *nameKey);
00086
00087                 void SetAutoCreate(BOOL autoCreate);
00088                 BOOL IsAutoCreate();
00089
00090                 int GetValueType(char *param);
00091                 int GetValueSize(char *param);
00092
00093                 // SZ | EXPAND_SZ | MULTI_SZ
00094                 BOOL GetValue(char *param , char *result , char *defValue=NULL);
00095                 // SZ | EXPAND_SZ | MULTI_SZ
00096                 BOOL GetValue(char *param, MyString &result , char *defValue=NULL);
00097                 // MULTI_SZ
00098                 BOOL GetValueMulti(char *param, MyList<MyString> &result , char *defValue=NULL);
00099                 // EXPAND_SZ
00100                 BOOL GetValueExpand(char *param, char *result , char *defValue=NULL);
00101                 // EXPAND_SZ
00102                 BOOL GetValueExpand(char *param, MyString &result , char *defValue=NULL);
00103                 // DWORD | DWORD_GE | DWORD_LE
00104                 BOOL GetValue(char *param,int *result,int defValue=0);
00105                 // DWORD | DWORD_GE | DWORD_LE
00106                 BOOL GetValue(char *param,DWORD *result,DWORD defValue=0);
00107                 // QWORD | QWORD_LE
00108                 BOOL GetValue(char *param,LONGLONG *result,LONGLONG defValue=0);
00109                 // BINARY
00110                 LPBYTE GetValue(char *param);
00111                 // SZ
00112                 BOOL GetValue(char *param,float *result,float defValue=0);
00113                 BOOL GetValue(char *param,double *result,double defValue=0);
00114
00115                 BOOL SetValue(char *param);                                                                     //NONE
00116                 BOOL SetValue(char *param,int value);                                           //DWORD
00117                 BOOL SetValue(char *param,DWORD value);                                         //DWORD
00118                 BOOL SetValueLittleEndian(char *param,DWORD value);                     //DWORD_LE
00119                 BOOL SetValueBigEndian(char *param,DWORD value);                        //DWORD_BE
00120                 BOOL SetValue(char *param,LONGLONG value);                                      //QWORD
00121                 BOOL SetValueLittleEndian(char *param,LONGLONG value);          //QWORD_LE
00122                 BOOL SetValue(char *param,char *value);                                         //SZ
00123                 BOOL SetValueExpand(char *param,char *value);                           //EXPAND_SZ
00124                 BOOL SetValueMulti(char *param,MyList<MyString> &lString);//MULTI_SZ
00125                 BOOL SetValueMulti(char *param,char *value);                            //MULTI_SZ
00126                 BOOL SetValue(char *param,LPBYTE data,int size);                        //BINARY
00127                 BOOL SetValue(char *param,float result);                                        //SZ
00128                 BOOL SetValue(char *param,double result);                                       //SZ
00129
00130                 BOOL DeleteValue(char *param);
00131                 BOOL DeleteKey(char *nameKey=NULL);
00132
00133                 BOOL TestValue(char *param);
00134                 BOOL TestKey();
00135                 int GetLastError() { return m_lastError; }
00136
00137                 void BeginEnumKey() { m_numEnumKey = 0; }
00138                 BOOL NextEnumKey(char *result);
00139                 BOOL NextEnumKey(MyString &result);
00140
00141                 void BeginEnumValue() { m_numEnumValue = 0; }
00142                 BOOL NextEnumValue (char *result);
00143                 BOOL NextEnumValue (MyString &result);
00144
00145                 // MyString & operator() (char *param,char *type);// chargement /sauvegarde d'un parametre
00146
00147         private:
00148                 BOOL SetPrefixAndPostfix(char *nameKey);
00149                 BOOL SetKeyName(char *nameKey);
00150                 void HKeyToString (MyString &result);
00151                 LPBYTE GetValue(char *param ,DWORD uTypeResult);
00152                 BOOL SetValue(char *param,LPBYTE source,ULONG uTypeSource,ULONG sizeSource);
00153
00154
00155         private:
00156                 HKEY m_hKey;
00157                 MyString m_postFixKey;
00158                 BOOL m_lastError;
00159
00160                 int m_numEnumValue;
00161                 int m_numEnumKey;
00162
00163                 BOOL m_isAutoCreate;
00164 };
00165
00166 BOOL NextSubKey(MyString &key,MyString &subKey,MyString &suite);
00167
00168 #endif
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyString.cpp File Reference

MyString.cpp File Reference

#include <stdio.h>
#include <string.h>
#include <windows.h>
#include <stdlib.h>
#include <math.h>
#include "myString.h"
#include "myException.h"

Go to the source code of this file.

Functions

MyString | operator+ (MyString &string1, char *string2)
MyString | operator+ (char *string1, MyString &string2)
MyString | operator+ (MyString &string, char letter)
MyString | operator+ (char letter, MyString &string)
MyString | operator+ (MyString &string, int integer)
MyString | operator+ (int integer, MyString &string)
MyString | operator+ (MyString &string, long linteger)
MyString | operator+ (long linteger, MyString &string)
MyString | operator+ (MyString &string, float floating)
MyString | operator+ (float floating, MyString &string)
MyString | operator+ (MyString &string, double lfloating)
MyString | operator+ (double lfloating, MyString &string)
MyString | operator+ (MyString &string1, MyString &string2)
MyString & | operator<< (MyString &string, char letter)
MyString & | operator<< (MyString &string, int integer)
MyString & | operator<< (MyString &string, long linteger)
MyString & | operator<< (MyString &string, float floating)
MyString & | operator<< (MyString &string, double lfloating)
MyString & | operator<< (MyString &string1, char *string2)
MyString & | operator<< (MyString &string1, MyString &string2)
MyString & | operator<< (MyString &in,FncManipulateur fnc)
Lance un manipulateurs.

void | clear (MyString &in)
void | ret (MyString &in)

Function Documentation

void clear ( MyString & in )

Definition at line 921 of file MyString.cpp.

Referenced by Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), ValueEditors::MakeTexturesStruct(), and MyString::SplitPath().

MyString operator+ | ( | MyString & | string1,
 |  | MyString & | string2
 | ) |

Definition at line 364 of file MyString.cpp.

MyString operator+ | ( | double | lfloating,
 |  | MyString & | string
 | ) |

Definition at line 357 of file MyString.cpp.

References string.

MyString operator+ | ( | MyString & | string,
 |  | double | lfloating
 | ) |

Definition at line 350 of file MyString.cpp.

References string.

MyString operator+ | ( | float | floating,
 |  | MyString & | string
 | ) |

Definition at line 343 of file MyString.cpp.

References string.

MyString operator+ | ( | MyString & | string,
 |  | float | floating
 | ) |

Definition at line 336 of file MyString.cpp.

References string.

MyString operator+ | ( | long | linteger,
 |  | MyString & | string
 | ) |

Definition at line 329 of file MyString.cpp.

References string.

MyString operator+ | ( | MyString & | string,
 |  | long | linteger
 | ) |

Definition at line 322 of file MyString.cpp.

References string.

MyString operator+ | ( | int | integer,
 |  | MyString & | string
 | ) |

Definition at line 315 of file MyString.cpp.

References string.

MyString operator+ | ( | MyString & | string,
 |  | int | integer
 | ) |

Definition at line 308 of file MyString.cpp.

References string.

MyString operator+ | ( | char | letter,
 |  | MyString & | string
 | ) |

Definition at line 301 of file MyString.cpp.

References string.

MyString operator+ | ( | MyString & | string,
 |  | char | letter
 | ) |

Definition at line 294 of file MyString.cpp.

References string.

MyString operator+ | ( | char * | string1,
 |  | MyString & | string2
 | ) |

Definition at line 279 of file MyString.cpp.

MyString operator+ | ( | MyString & | string1,
 |  | char * | string2
 | ) |

Definition at line 269 of file MyString.cpp.

MyString& operator<< | ( | MyString & | in,
 |  | FncManipulateur | fnc
 | ) |

Lance un manipulateurs.

Liste:

  • clear ==> efface
  • ret ==> retour a la ligne

Definition at line 915 of file MyString.cpp.

References FncManipulateur.

MyString& operator<< | ( | MyString & | string1,
 |  | MyString & | string2
 | ) |

Definition at line 432 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string1,
 |  | char * | string2
 | ) |

Definition at line 426 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string,
 |  | double | lfloating
 | ) |

Definition at line 420 of file MyString.cpp.

References string.

MyString& operator<< | ( | MyString & | string,
 |  | float | floating
 | ) |

Definition at line 414 of file MyString.cpp.

References string.

MyString& operator<< | ( | MyString & | string,
 |  | long | linteger
 | ) |

Definition at line 408 of file MyString.cpp.

References string.

MyString& operator<< | ( | MyString & | string,
 |  | int | integer
 | ) |

Definition at line 402 of file MyString.cpp.

References string.

MyString& operator<< | ( | MyString & | string,
 |  | char | letter
 | ) |

Definition at line 396 of file MyString.cpp.

References string.

void ret ( MyString & in )

Definition at line 926 of file MyString.cpp.

Generated on Fri Aug 20 19:20:34 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyString.cpp Source File

MyString.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include <stdio.h>
00020 #include <string.h>
00021 #include <windows.h>
00022 #include <stdlib.h>
00023 #include <math.h>
00024
00025 #include "myString.h"
00026 #include "myException.h"
00027
00028 // *********************************************************************************
00029
00030 long MyString::GetSize()
00031 {
00032         return size;
00033 }
00034
00035 char *MyString::GetValue()
00036 {
00037         return value;
00038 }
00039
00040 MyString::MyString()
00041 {
00042         value = NULL;
00043         Zero();
00044 }
00045
00046 MyString::MyString(char letter)
00047 {
00048         value = NULL;
00049         *this=letter;
00050 }
00051
00052 MyString::MyString(int integer)
00053 {
00054         value = NULL;
00055         *this=integer;
00056 }
00057
00058 MyString::MyString(long linteger)
00059 {
00060         value = NULL;
00061         *this=linteger;
00062 }
00063
00064 MyString::MyString(float floating)
00065 {
00066         value = NULL;
00067         *this=floating;
00068 }
00069
00070 MyString::MyString(double lfloating)
00071 {
00072         value = NULL;
00073         *this=lfloating;
00074 }
00075
00076 MyString::MyString(char *string)
00077 {
00078         value = NULL;
00079         *this=string;
00080 }
00081
00082 MyString::MyString(MyString &string)
00083 {
00084         value = NULL;
00085         *this=string;
00086 }
00087
00088 // *********************************************************************************
00089
00090 void MyString::Delete()
00091 {
00092         if (value)
00093         {
00094                 try
00095                 {
00096                         delete []value;
00097                 }
00098                 catch(int num)
00099                 {
00100                 }
00101         }
00102         size = 0;
00103         allocSize = 0;
00104         value = NULL;
00105 }
00106
00107 // *********************************************************************************
00108
00109 MyString & MyString::operator=(char letter) // string.operator=(char letter);
00110 {
00111         Delete();
00112         size = 1;
00113         allocSize = 2;
00114         value = new char[allocSize];
00115         if (!value) throw MyExceptionMemory("MyString","operator=",allocSize);
00116         value[0]= letter;
00117         value[1]= '\0';
00118         return *this; // pour: s=t=u="coucou";
00119 }
00120
00121 MyString & MyString::operator=(int integer)
00122 {
00123         char temp[40];
00124         sprintf (temp,"%d",integer);
00125         *this = temp;
00126         return *this;
00127 }
00128
00129 MyString & MyString::operator=(long linteger)
00130 {
00131         char temp[80];
00132         sprintf (temp,"%d",linteger);
00133         *this = temp;
00134         return *this;
00135 }
00136
00137 MyString & MyString::operator=(float floating)
00138 {
00139         char temp[40];
00140         sprintf(temp,"%g",floating);
00141         *this = temp;
00142         return *this;
00143 }
00144
00145 MyString & MyString::operator=(double lfloating)
00146 {
00147         char temp[40];
00148         sprintf(temp,"%g",lfloating);
00149         *this = temp;
00150         return *this;
00151 }
00152
00153 MyString & MyString::operator=(char *string) // string.operator=(char *string);
00154 {
00155         Delete();
00156         if (!string) return *this;
00157         size= (long)strlen(string);
00158         allocSize = size +1;
00159         value = new char[allocSize];
00160         if (!value) throw MyExceptionMemory("MyString","operator=(char *)",allocSize);
00161         strcpy(value,string);
00162         return *this; // pour: s=t=u="coucou";
00163 }
00164
00165 MyString & MyString::operator=(MyString &string)
00166 {
00167         Delete();
00168         size = string.size;
00169         allocSize = size +1;
00170         value = new char[allocSize];
00171         if (!value) throw MyExceptionMemory("MyString","operator=(MyString &)",allocSize);
00172         strcpy (value,string.value);
00173         return *this;
00174 }
00175
00176 // *********************************************************************************
00177
00178 BOOL MyString::operator==(char letter)
00179 {
00180         MyString temp = letter;
00181         return !strcmp (value,temp.value);
00182 }
00183
00184 BOOL MyString::operator==(int integer)
00185 {
00186         MyString temp = integer;
00187         return !strcmp (value,temp.value);
00188 }
00189
00190 BOOL MyString::operator==(long linteger)
00191 {
00192         MyString temp = linteger;
00193         return !strcmp (value,temp.value);
00194 }
00195
00196 BOOL MyString::operator==(float floating)
00197 {
00198         MyString temp = floating;
00199         return !strcmp (value,temp.value);
00200 }
00201
00202 BOOL MyString::operator==(double lfloating)
00203 {
00204         MyString temp = lfloating;
00205         return !strcmp (value,temp.value);
00206 }
00207
00208 BOOL MyString::operator==(char *string)
00209 {
00210         if (!string) return FALSE;
00211         return !strcmp (value,string);
00212 }
00213
00214 BOOL MyString::operator==(MyString &string)
00215 {
00216         return !strcmp (value,string.value);
00217 }
00218
00219 // *********************************************************************************
00220
00221 void MyString::operator+=(char letter)
00222 {
00223         // Celle solution n'inserais pas les '\0'
00224         MyString temp = letter;
00225         *this += temp;
00226
00227         // Cette solution insert le '\0' mais les strcpy ne repsect plus alors le '\0'
00228         // Resize (size+1,TRUE);
00229         // value[size]=letter;
00230         // size+= 1;
00231 }
00232
00233 void MyString::operator+=(int integer)
00234 {
00235         MyString temp = integer;
00236         *this += temp;
00237 }
00238
00239 void MyString::operator+=(long linteger)
00240 {
00241         MyString temp = linteger;
00242         *this += temp;
00243 }
00244
00245 void MyString::operator+=(float floating)
00246 {
00247         MyString temp = floating;
00248         *this += temp;
00249 }
00250
00251 void MyString::operator+=(double lfloating)
00252 {
00253         MyString temp = lfloating;
00254         *this += temp;
00255 }
00256
00257 void MyString::operator+=(char *string)
00258 {
00259         if (!string) { *this; return; }
00260
00261         long addSize = (long)strlen(string);
00262         Resize (size+addSize,TRUE);
00263         strcat (value,string);
00264         size+= addSize;
00265 }
00266
00267 // *********************************************************************************
00268
00269 MyString operator+(MyString &string1,char *string2)
00270 {
00271         MyString temp = string1;
00272         if (!string2) return temp;
00273         temp += string2;
00274         return temp;
00275 }
00276
00277 // *********************************************************************************
00278
00279 MyString operator+(char *string1,MyString &string2)
00280 {
00281         MyString temp;
00282         if (!string1)
00283         {
00284                 temp = string2;
00285                 return temp;
00286         }
00287         temp = string1;
00288         temp += string2;
00289         return temp;
00290 }
00291
00292 // *********************************************************************************
00293
00294 MyString operator+(MyString &string,char letter)
00295 {
00296         MyString temp = string;
00297         temp += letter;
00298         return temp;
00299 }
00300
00301 MyString operator+(char letter,MyString &string)
00302 {
00303         MyString temp = letter;
00304         temp += string;
00305         return temp;
00306 }
00307
00308 MyString operator+(MyString &string,int integer)
00309 {
00310         MyString temp = string;
00311         temp += integer;
00312         return temp;
00313 }
00314
00315 MyString operator+(int integer,MyString &string)
00316 {
00317         MyString temp = integer;
00318         temp += string;
00319         return temp;
00320 }
00321
00322 MyString operator+(MyString &string,long linteger)
00323 {
00324         MyString temp = string;
00325         temp += linteger;
00326         return temp;
00327 }
00328
00329 MyString operator+(long linteger,MyString &string)
00330 {
00331         MyString temp = linteger;
00332         temp += string;
00333         return temp;
00334 }
00335
00336 MyString operator+(MyString &string,float floating)
00337 {
00338         MyString temp = string;
00339         temp += floating;
00340         return temp;
00341 }
00342
00343 MyString operator+(float floating,MyString &string)
00344 {
00345         MyString temp = floating;
00346         temp += string;
00347         return temp;
00348 }
00349
00350 MyString operator+(MyString &string,double lfloating)
00351 {
00352         MyString temp = string;
00353         temp += lfloating;
00354         return temp;
00355 }
00356
00357 MyString operator+(double lfloating,MyString &string)
00358 {
00359         MyString temp = lfloating;
00360         temp += string;
00361         return temp;
00362 }
00363
00364 MyString operator+(MyString &string1,MyString &string2)
00365 {
00366         MyString temp = string1;
00367         temp += string2;
00368         return temp;
00369 }
00370
00381 char &MyString::operator [] (int index)
00382 {
00383         static char error='\0';
00384         index = GetPositionFromLeft(index);
00385         if (index!=-1) return value[index];
00386         else return error;
00387 /*
00388         MyString temp;
00389         temp <<"out of bounds: index <> [-"<<size<<";"<<size<<"]";
00390         throw CMyException("MyString","operator[](int)",temp);
00391 */
00392 }
00393
00394 // *********************************************************************************
00395
00396 MyString & operator << (MyString& string , char letter)
00397 {
00398         string += letter;
00399         return string;
00400 }
00401
00402 MyString & operator << (MyString& string , int integer)
00403 {
00404         string += integer;
00405         return string;
00406 }
00407
00408 MyString & operator << (MyString& string , long linteger)
00409 {
00410         string += linteger;
00411         return string;
00412 }
00413
00414 MyString & operator << (MyString& string , float floating)
00415 {
00416         string += floating;
00417         return string;
00418 }
00419
00420 MyString & operator << (MyString& string , double lfloating)
00421 {
00422         string += lfloating;
00423         return string;
00424 }
00425
00426 MyString & operator << (MyString& string1 , char *string2)
00427 {
00428         string1 += string2;
00429         return string1;
00430 }
00431
00432 MyString & operator << (MyString& string1 , MyString &string2)
00433 {
00434         string1 += string2;
00435         return string1;
00436 }
00437
00438 // *********************************************************************************
00439
00440 BOOL MyString::Resize()
00441 {
00442         return Resize((int)strlen(value),TRUE);
00443 }
00444
00445 // *********************************************************************************
00446
00447 BOOL MyString::Resize(int newSize,BOOL recopy)
00448 {
00449         if (newSize<0) newSize=0;
00450         char *newValue = new char[newSize+1];
00451         if (!newValue) throw MyExceptionMemory("MyString","Resize",newSize+1);
00452         if (recopy && value)
00453         {
00454                 int curSize = min(newSize,allocSize-1);
00455                 strncpy(newValue,value,newSize);
00456                 newValue[curSize]='\0';
00457                 Delete();
00458                 size = curSize;
00459                 allocSize = newSize+1;
00460         }
00461         else
00462         {
00463                 Delete();
00464                 size = 0;
00465                 allocSize = newSize+1;
00466                 newValue[0]='\0';
00467         }
00468         value = newValue;
00469         return TRUE;
00470 }
00471
00483 BOOL MyString::SubStringBeforToken(int numSubString,MyString &result,char *lstToken)
00484 {
00485         int indexCur=0;
00486         int posIndex = size;
00487         int sizeLstToken = (int)strlen(lstToken);
00488         int signe = numSubString<0 ? -1 : 1;
00489         for (int i=numSubString<0;i<size;i++)
00490         {
00491                 for (int j=0;j<sizeLstToken;j++)
00492                 {
00493                         if (*this[i*size]==lstToken[j])
00494                         {
00495                                 indexCur += signe;
00496                                 if (indexCur==numSubString)
00497                                 {
00498                                         posIndex = i-signe;
00499                                         CopyTo(result,i+signe,labs(posIndex-i));
00500                                         return TRUE;
00501                                 }
00502                         }
00503                 }
00504         }
00505         return FALSE;
00506 }
00507
00508 // *********************************************************************************
00509
00510 char * MyString::GetValue(int index)
00511 {
00512         if (index>=0 && index<size) return value+index;
00513         if (index<0 && index>=-size) return value+size+index;
00514
00515         MyString temp;
00516         temp <<"out of bounds: index <> [-"<<size<<";"<<size<<"]";
00517         throw MyException("MyString","GetValue[](int)",temp);
00518
00519 }
00520
00526 BOOL MyString::CopyTo(MyString &result,int index,int sizeToCopy)
00527 {
00528         int signe = index<0 ? -1 : 1;
00529         int indexReal = index+sizeToCopy*signe;
00530         if (sizeToCopy==-1) sizeToCopy = size-index;
00531         char oldLetter = operator[](indexReal);
00532         operator[](indexReal)='\0';
00533         result.Resize(sizeToCopy);
00534         result=GetValue(index);
00535         operator[](indexReal) = oldLetter;
00536         return TRUE;
00537 }
00538
00539 // *********************************************************************************
00540
00541 void MyString::SplitPath(MyString *drive,MyString *dir,MyString *file,MyString *ext,MyString *driveDir,MyString *fileExt)
00542 {
00543    char _drive[_MAX_DRIVE];
00544    char _dir[_MAX_DIR];
00545    char _file[_MAX_FNAME];
00546    char _ext[_MAX_EXT];
00547
00548    _splitpath(value,(drive||driveDir)?_drive:NULL,(dir||driveDir)?_dir:NULL,(file||fileExt)?_file:NULL,(ext||fileExt)?_ext:NULL);
00549
00550    if (drive) *drive=_drive;
00551    if (dir) *dir=_dir;
00552    if (file) *file=_file;
00553    if (ext) *ext=_ext;
00554    if (fileExt) { *fileExt<<clear<<_file<<_ext; }
00555    if (driveDir) { *driveDir<<clear<<_drive<<_dir; }
00556 }
00557
00558 // *********************************************************************************
00559
00560 long MyString::ToInteger()
00561 {
00562         long res;
00563         sscanf(value,"%d",&res);
00564         return res;
00565 }
00566
00567 float MyString::ToFloat()
00568 {
00569         float res;
00570         sscanf(value,"%f",&res);
00571         return res;
00572 }
00573
00574 double MyString::ToDouble()
00575 {
00576         double res;
00577         sscanf(value,"%lf",&res);
00578         return res;
00579 }
00580
00581 // *********************************************************************************
00582
00583 BOOL MyString::FormatToNoCtrl()
00584 {
00585         BOOL isChanged = FALSE;
00586         MyString temp;
00587         for (int i=0;i<size;i++)
00588         {
00589                 if (value[i]>=32) temp+=value[i];
00590                 else isChanged = TRUE;
00591         }
00592         *this=temp;
00593         return isChanged;
00594 }
00595
00596 // *********************************************************************************
00597
00598 BOOL MyString::FormatToLower()
00599 {
00600         BOOL isChanged = FALSE;
00601         for (int i=0;i<size;i++)
00602                 if (!islower(value[i]))
00603                 {
00604                         value[i] = tolower(value[i]);
00605                         isChanged = TRUE;
00606                 }
00607         return isChanged;
00608 }
00609
00610 // *********************************************************************************
00611
00612 BOOL MyString::FormatToUpper()
00613 {
00614         BOOL isChanged = FALSE;
00615         for (int i=0;i<size;i++)
00616                 if (!isupper(value[i]))
00617                 {
00618                         value[i] = toupper(value[i]);
00619                         isChanged = TRUE;
00620                 }
00621         return isChanged;
00622 }
00623
00624 // *********************************************************************************
00625
00626 BOOL MyString::IsVisibleText()
00627 {
00628         for (int i=0;i<size;i++)
00629         {
00630                 if (value[i]>32 && value[i]!=255) return TRUE;
00631         }
00632         return FALSE;
00633 }
00634
00635 // *********************************************************************************
00636
00637 void MyString::AddRepetitiveFormat(char *matrise,int nbCopy)
00638 {
00639         for (int i=0;i<nbCopy;i++)
00640         {
00641                 operator+=(matrise);
00642         }
00643 }
00644
00659 int MyString::GetPositionFromLeft(int pos)
00660 {
00661         pos = pos>=0? pos: size+pos;
00662         return pos<size? pos : -1;
00663 }
00664
00665 int MyString::GetPositionFromRight(int pos)
00666 {
00667         if (pos>=0) return -size+pos;
00668         else return pos;
00669 }
00670
00681 BOOL MyString::Delete(int pos,BOOL after,char letterToFind)
00682 {
00683         int posLeft = GetPositionFromLeft(pos);
00684         int posLeft2 = FindLetter(posLeft,after,letterToFind);
00685         if (posLeft2==-1) return FALSE;
00686         return Delete(pos,after,abs(posLeft-posLeft2)+1);
00687 }
00688
00689 BOOL MyString::Delete(int pos,BOOL after,int nbLetter)
00690 {
00691         int posLeft = GetPositionFromLeft(pos);
00692         if (!after) posLeft-=nbLetter-1;
00693         strncpy(value+posLeft,value+posLeft+nbLetter,size-posLeft-nbLetter);
00694         return Resize(size-nbLetter,TRUE);
00695 }
00696
00708 BOOL MyString::Add(int pos,BOOL after,char letter)
00709 {
00710         MyString temp;
00711         int posLeft = GetPositionFromLeft(pos);
00712         CopyTo(temp,0,posLeft+!after);
00713         temp<<letter;
00714         temp<<value+posLeft+!after+1;
00715         operator=(temp);
00716         return TRUE;
00717 }
00718
00719 BOOL MyString::Add(int pos,BOOL after,int integer)
00720 {
00721         return TRUE;
00722 }
00723 BOOL MyString::Add(int pos,BOOL after,long linteger)
00724 {
00725         return TRUE;
00726 }
00727 BOOL MyString::Add(int pos,BOOL after,float floating)
00728 {
00729         return TRUE;
00730 }
00731 BOOL MyString::Add(int pos,BOOL after,double lfloating)
00732 {
00733         return TRUE;
00734 }
00735 BOOL MyString::Add(int pos,BOOL after,char *string)
00736 {
00737         return TRUE;
00738 }
00739 BOOL MyString::Add(int pos,BOOL after,MyString &string)
00740 {
00741         return TRUE;
00742 }
00743
00752 int MyString::FindLetter(int pos,BOOL after,char letter)
00753 {
00754         int posLeft = GetPositionFromLeft(pos);
00755
00756         if (after)
00757         {
00758                 for (int i=posLeft;i<size;i++)
00759                         if (value[i]==letter) return i;
00760         }
00761         else
00762         {
00763                 for (int i=posLeft;i>=0;i--)
00764                         if (value[i]==letter) return i;
00765         }
00766         return -1;
00767 }
00768
00776 int MyString::FindLetter(char letter)
00777 {
00778         return FindLetter(0,TRUE,letter);
00779 }
00780
00784 BOOL MyString::AddFormat(char *format,...)
00785 {
00786         va_list args;
00787         int len;
00788         char *buffer;
00789         va_start(args,format);
00790         len = _vscprintf( format, args )+ 1; // _vscprintf doesn't count terminating '\0'
00791         buffer = (char *)malloc(len * sizeof(char));
00792         if (!buffer) return FALSE;
00793         vsprintf(buffer,format,args);
00794         operator+=(buffer);
00795         free(buffer);
00796         return TRUE;
00797 }
00798
00802 MyString MyString::Mids(int beginPos,int sizeToCopy)
00803 {
00804         MyString result;
00805         if (beginPos+sizeToCopy>size) return result;
00806         char oldlLetter = value[beginPos+sizeToCopy];
00807         value[beginPos+sizeToCopy]='\0';
00808         result=value+beginPos;
00809         value[beginPos+sizeToCopy]=oldlLetter;
00810         return result;
00811 }
00812
00813 BOOL MyString::Format(char *format,...)
00814 {
00815         va_list args;
00816         int len;
00817         char *buffer;
00818         va_start(args,format);
00819         len = _vscprintf( format, args )+ 1; // _vscprintf doesn't count terminating '\0'
00820         buffer = (char *)malloc(len * sizeof(char));
00821         if (!buffer) return FALSE;
00822         vsprintf(buffer,format,args);
00823         operator=(buffer);
00824         free(buffer);
00825         return TRUE;
00826 }
00827
00832 BOOL MyString::IsBeginWith(char *model)
00833 {
00834         return !strncmp(value,model,strlen(model));
00835 }
00836
00843 char * MyString::TestSubString(char *text,BOOL caseSensitive)
00844 {
00845         if (!caseSensitive)
00846         {
00847                 MyString lowerThis(*this),lowerText(text);
00848                 lowerThis.FormatToLower();
00849                 lowerText.FormatToLower();
00850                 return strstr(lowerText,lowerThis);
00851         }
00852         return strstr(text,value);
00853 }
00857 void MyString::EnterHexaNumber(int value)
00858 {
00859         int reste;
00860         char letter;
00861         Zero();
00862         while (value)
00863         {
00864                 reste = value%16;
00865                 value/=16;
00866                 letter=reste>9?'A'+reste-10:'0'+reste;
00867                 operator+=(letter);
00868         }
00869         Reverse();
00870 }
00874 void MyString::EnterBinNumber(int value)
00875 {
00876         int reste;
00877         Zero();
00878         while (value)
00879         {
00880                 reste = value%2;
00881                 value/=2;
00882                 operator+=((char)(reste+'0'));
00883         }
00884         Reverse();
00885 }
00889 void MyString::Reverse()
00890 {
00891         if (size<2) return;
00892         char letter;
00893         char *begin,*end;
00894         begin=value;
00895         end=value+size-2;
00896
00897         for (int i=0;i<(size/2);i++)
00898         {
00899                 letter = *begin;
00900                 *begin=*end;
00901                 *end=letter;
00902                 begin++;
00903                 end--;
00904         }
00905 }
00906
00907
00915 MyString & operator << (MyString& in ,FncManipulateur fnc)
00916 {
00917         fnc(in);
00918         return in;
00919 }
00920
00921 void clear (MyString &in)
00922 {
00923         in.Zero();
00924 }
00925
00926 void ret (MyString &in)
00927 {
00928         in<<"\n";
00929 }
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyString.h File Reference

MyString.h File Reference

Chaine de caractere dynamique. More...

#include <windef.h>

Go to the source code of this file.

Classes

class | MyString
Gestion de chaine de caractere dynamique. More...

Typedefs

typedef void(* | FncManipulateur )(MyString &)

Functions

void | clear (MyString &in)

Detailed Description

Chaine de caractere dynamique.

Definition in file MyString.h.

Typedef Documentation

typedef void(* FncManipulateur)(MyString&)

Definition at line 30 of file MyString.h.

Referenced by operator<<().

Function Documentation

void clear ( MyString & in )

Definition at line 921 of file MyString.cpp.

Referenced by Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), ValueEditors::MakeTexturesStruct(), and MyString::SplitPath().

Generated on Fri Aug 20 19:20:35 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyString.h Source File

MyString.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_MYSTRING_H
00024 #define INCLUDE_MYSTRING_H
00025
00026 #include <windef.h>
00027
00028 // pour gestion de manipulateur
00029 class MyString;
00030 typedef void (*FncManipulateur) (MyString&);
00031
00046 class MyString
00047 {
00048         private:
00049                 void Delete();
00050                 BOOL Resize();
00051                 BOOL Resize(int newSize,BOOL recopy=FALSE);
00052
00053         public:
00054                 MyString();
00055                 virtual ~MyString() { Delete(); }
00056
00057                 BOOL IsEmpty() { return (size == 0)||(size==1&&value[0]=='\0'); } // \0 par default
00058
00059                 MyString(char letter);
00060                 MyString(int integer);
00061                 MyString(long linteger);
00062                 MyString(float floating);
00063                 MyString(double lfloating);
00064                 MyString(char *string);
00065                 MyString(MyString &string);
00066
00067                 void Zero() { *this='\0'; };
00068                 void operator+=(char letter);
00069                 void operator+=(int integer);
00070                 void operator+=(long linteger);
00071                 void operator+=(float floating);
00072                 void operator+=(double lfloating);
00073                 void operator+=(char *string);
00074                 void operator+=(MyString &string) { *this+=string.value; }
00075
00076                 MyString & operator=(char letter);
00077                 MyString & operator=(int integer);
00078                 MyString & operator=(long linteger);
00079                 MyString & operator=(float floating);
00080                 MyString & operator=(double lfloating);
00081                 MyString & operator=(char *string);
00082                 MyString & operator=(MyString &string);
00083
00084                 BOOL operator==(char letter);
00085                 BOOL operator==(int integer);
00086                 BOOL operator==(long linteger);
00087                 BOOL operator==(float floating);
00088                 BOOL operator==(double lfloating);
00089                 BOOL operator==(char *string);
00090                 BOOL operator==(MyString &string);
00091
00092                 BOOL operator!=(char letter) { return !operator==(letter); };
00093                 BOOL operator!=(int integer) { return !operator==(integer); };
00094                 BOOL operator!=(long linteger) { return !operator==(linteger); };
00095                 BOOL operator!=(float floating) { return !operator==(floating); };
00096                 BOOL operator!=(double lfloating) { return !operator==(lfloating); };
00097                 BOOL operator!=(char *string) { return !operator==(string); };
00098                 BOOL operator!=(MyString &string) { return !operator==(string); };
00099
00100                 BOOL AddFormat(char *format,...);
00101                 BOOL Format(char *format,...);
00102
00103                 long    ToInteger();
00104                 float   ToFloat();
00105                 double  ToDouble();
00106
00107                 friend MyString operator+(MyString &string,char letter);
00108                 friend MyString operator+(char letter,MyString &string);
00109
00110                 friend MyString operator+(MyString &string,int integer);
00111                 friend MyString operator+(int integer,MyString &string);
00112
00113                 friend MyString operator+(MyString &string,long linteger);
00114                 friend MyString operator+(long linteger,MyString &string);
00115
00116                 friend MyString operator+(MyString &string,float floating);
00117                 friend MyString operator+(float floating,MyString &string);
00118
00119                 friend MyString operator+(MyString &string,double lfloating);
00120                 friend MyString operator+(double lfloating,MyString &string);
00121
00122                 friend MyString operator+(MyString &string1,char *string2);
00123                 friend MyString operator+(char *string1,MyString &string2);
00124
00125                 friend MyString operator+(MyString &string1,MyString &string2);
00126
00127                 char & operator [] (int num);
00128                 operator char *() const { return value; }
00129
00130                 friend MyString & operator << (MyString& string , char letter);
00131                 friend MyString & operator << (MyString& string , int integer);
00132                 friend MyString & operator << (MyString& string , long linteger);
00133                 friend MyString & operator << (MyString& string , float floating);
00134                 friend MyString & operator << (MyString& string , double lfloating);
00135                 friend MyString & operator << (MyString& string1 , char *string2);
00136                 friend MyString & operator << (MyString& string1 , MyString &string2);
00137                 friend MyString & operator << (MyString& in ,FncManipulateur fnc);
00138
00139                 void SplitPath(MyString *drive,MyString *dir,MyString *file,MyString *ext,MyString *driveDir,MyString *fileExt);
00140                 BOOL SubStringBeforToken(int numSubString,MyString &result,char *lstToken);
00141
00142                 char * GetValue(int index);
00143                 BOOL CopyTo(MyString &result,int index,int size);
00144
00145                 BOOL FormatToNoCtrl();
00146                 BOOL FormatToLower();
00147                 BOOL FormatToUpper();
00148
00149                 void AddRepetitiveFormat(char *matrise,int nbCopy);
00150
00151                 BOOL IsVisibleText();
00152
00153                 int GetPositionFromLeft(int pos);
00154                 int GetPositionFromRight(int pos);
00155
00156                 BOOL Delete(int pos,BOOL after,char letterToFind);
00157                 BOOL Delete(int pos,BOOL after,int nbLetter);
00158
00159                 BOOL Add(int pos,BOOL after,char letter);
00160                 BOOL Add(int pos,BOOL after,int integer);
00161                 BOOL Add(int pos,BOOL after,long linteger);
00162                 BOOL Add(int pos,BOOL after,float floating);
00163                 BOOL Add(int pos,BOOL after,double lfloating);
00164                 BOOL Add(int pos,BOOL after,char *string);
00165                 BOOL Add(int pos,BOOL after,MyString &string);
00166
00167                 int FindLetter(int pos,BOOL after,char letter);
00168                 int FindLetter(char letter);
00169                 MyString Mids(int beginPos,int sizeToCopy);
00170                 BOOL IsBeginWith(char *model);
00171                 char * TestSubString(char *text,BOOL caseSensitive=TRUE);
00172
00173                 void EnterHexaNumber(int value);
00174                 void EnterBinNumber(int value);
00175                 void Reverse();
00176
00177                 long GetSize();
00178                 char *GetValue();
00179
00180         private:
00181                 char *value;
00182                 long size;
00183                 long allocSize;
00184 };
00185
00186 // liste des manipulateurs
00187 void clear (MyString &in); // permet l'ecriture: myString<<clear<<"coucou";
00188
00189 #endif
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyTree.h File Reference

MyTree.h File Reference

Arbre generique. More...

#include "MyList.h"

Go to the source code of this file.

Classes

class | MyTreeNode
Gestion des Noeud d'un arbre MyTree. More...

class | MyTree
Arbre generique. More...

Detailed Description

Arbre generique.

Definition in file MyTree.h.

Generated on Fri Aug 20 19:20:35 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyTree.h Source File

MyTree.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_MY_TREE_INCLUDE
00024 #define INCLUDE_MY_TREE_INCLUDE
00025
00026 #include "MyList.h"
00027
00028
00037 template <class T>
00038 class MyTreeNode
00039 {
00040 public:
00041         T *elem;                                                        // element de la liste
00042         MyTreeNode *parent;
00043         MyList<MyTreeNode *> childs;      // enfants
00044
00045 private:
00046         void Init()
00047         {
00048                 elem = NULL;
00049                 parent=NULL;
00050         }
00051
00052 public:
00053         typedef MyTreeNode<T> MyTreeNodeItem;
00054
00055         MyTreeNode() { Init(); }
00056
00057         MyTreeNode(T &_elem)
00058         {
00059                 Init();
00060                 elem = new T;
00061                 if (!elem) throw MyExceptionMemory("MyTreeNode","constructor",sizeof(T));
00062                 *elem=_elem; //operator=(T &source) de la class appelé
00063         }
00064
00066         MyTreeNode(T *_elem)
00067         {
00068                 Init();
00069                 elem=_elem;
00070         }
00071
00072         ~MyTreeNode()
00073         {
00074                 if (elem) delete elem;
00075         }
00076
00077         BOOL SuprChilds(BOOL recursif=FALSE)
00078         {
00079                 MyTreeNodeItem *node;
00080                 MyListItem<MyTreeNodeItem *> *item;
00081                 item = childs.first;
00082                 while (item)
00083                 {
00084                         node = *item->elem;
00085                         item = item->after;
00086                         if (recursif) node->SuprChilds(TRUE);
00087                         node->SuprOnParent();
00088                         delete node;
00089                 }
00090                 return TRUE;
00091         }
00092
00093         BOOL SuprOnParent()
00094         {
00095                 if (!parent) return FALSE;
00096                 if (!parent->childs.i.GoTo(this)) return FALSE;
00097                 parent->childs.i.Supr();
00098                 return TRUE;
00099         }
00100
00101         MyTreeNode<T> * operator [] (int num)
00102         {
00103                 return childs[num];
00104         }
00105
00109         BOOL MoveTo(MyTreeNode<T> *dest)
00110         {
00111                 if (!dest) return FALSE; // erreur si pas de destinataire
00112
00113                 // supression des lien dans la source: recherche du lien du fils dans le pere
00114                 BOOL find=FALSE;
00115                 for (parent->childs.i=0;parent->childs.i.More();parent->childs.i++)
00116                 {
00117                         if (this==parent->childs.i.GetElem())
00118                         {
00119                                 parent->childs.i.Supr();
00120                                 find=TRUE;
00121                                 break;
00122                         }
00123                 }
00124                 if (!find) return FALSE; // pas trouvé dans la liste des fils du pere (normalement impossible)
00125
00126                 // nouvelle emplacement dans la destination
00127                 parent=dest;
00128                 dest->childs.i+=this;
00129                 return TRUE;
00130         }
00131
00132         BOOL FindOnParent(MyListIterator<MyTreeNodeItem *> &it)
00133         {
00134                 if (!parent) return FALSE;
00135                 it.Bind(&parent->childs);
00136                 for (it=0;it.More();it++)
00137                 {
00138                         if (this==it.GetElem()) return TRUE;
00139                 }
00140                 return FALSE;
00141         }
00142
00143         void MoveToFirstChild()
00144         {
00145                 MyListIterator<MyTreeNodeItem *> it;
00146                 if (FindOnParent(it))
00147                 {
00148                         it.MoveFirst();
00149                 }
00150         }
00151         void MoveToLastChild()
00152         {
00153                 MoveTo(parent);
00154         }
00155
00156         T * Elems(int num)
00157         {
00158                 return childs.i[num]->elem;
00159         }
00160
00161         void operator=(MyTreeNode &source)
00162         {
00163                 if (source.elem)
00164                 {
00165                         elem = new T;
00166                         if (!elem) throw CMyExceptionMemory("MyTreeNode","operator=",sizeof(T));
00167                         *elem=*source.elem;
00168                 }
00169                 else elem=NULL;
00170                 parent=source.parent;
00171                 childs=source.childs;
00172         }
00173 };
00174
00223 template <class T>
00224 class MyTree
00225 {
00226 private:
00227         MyTreeNode<T> *root;
00228         MyTreeNode<T> *current;
00229
00230 private:
00231         void Init()
00232         {
00233                 root = NULL;
00234                 current = NULL;
00235         }
00236
00237 public:
00238         MyTreeNode<T> * GetRoot() { return root; }
00239         MyTreeNode<T> * GetCurrent() { return current; }
00240
00241         MyTree()
00242         {
00243                 Init();
00244         }
00245
00246         ~MyTree()
00247         {
00248                 SuprAll();
00249         }
00250
00251         BOOL SuprNode(MyTreeNode<T> *node,BOOL recursif=TRUE)
00252         {
00253                 if (!node) return FALSE;
00254                 if (recursif) node->SuprChilds(TRUE);
00255                 node->SuprOnParent();
00256                 delete node;
00257                 return TRUE;
00258         }
00259
00260         void SuprAll()
00261         {
00262                 SuprNode(root);
00263                 Init();
00264         }
00265
00266         void operator=(MyTreeNode<T> *node)
00267         {
00268                 SuprAll();
00269                 operator+=(node);
00270         }
00271
00272         void operator+=(MyTreeNode<T> *node)
00273         {
00274                 Clone (node,NULL);
00275         }
00276
00277         void Clone(MyTreeNode<T> *nodeSource,MyTreeNode<T> *nodeParentClone)
00278         {
00279                 if (!nodeSource) return;
00280                 nodeParentClone = Add(*nodeSource->elem,nodeParentClone);
00281                 for (nodeSource->childs.i=0;nodeSource->childs.i.More();nodeSource->childs.i++)
00282                 {
00283                         Clone(nodeSource->childs.i.GetElem(),nodeParentClone);
00284                 }
00285         }
00286
00287         void operator=(MyTree<T> *otherTree)
00288         {
00289                 SuprAll();
00290                 operator+=(otherTree->GetRoot());
00291         }
00292
00293         void operator+=(MyTree<T> *otherTree)
00294         {
00295                 operator+=(otherTree->GetRoot());
00296         }
00297
00298         MyTreeNode<T> *GoToChild(int numChild,MyTreeNode<T> *parent=NULL)
00299         {
00300                 MyTreeNode<T> *xcurrent = GetChild(numChild,parent);
00301                 if (xcurrent) current=xcurrent;
00302                 return xcurrent;
00303         }
00304
00305         MyTreeNode<T> * GoTo(MyTreeNode<T> *node)
00306         {
00307                 MyTreeNode<T> * oldCurrent;
00308                 oldCurrent = current;
00309                 current=node;
00310                 return oldCurrent;
00311         }
00312
00313         MyTreeNode<T> *GetChild(int numChild,MyTreeNode<T> *parent=NULL)
00314         {
00315                 if (!parent)
00316                 {
00317                         parent = current;
00318                         if (!parent) return NULL;
00319                 }
00320                 return parent->childs.i[numChild];
00321         }
00322
00323         MyTreeNode<T> *GoToParent(MyTreeNode<T> *parent=NULL)
00324         {
00325                 MyTreeNode<T> *xcurrent = GetParent(parent);
00326                 if (current) current=xcurrent;
00327                 return xcurrent;
00328         }
00329
00330         MyTreeNode<T> *GetParent(MyTreeNode<T> *parent=NULL)
00331         {
00332                 if (!parent)
00333                 {
00334                         parent = current;
00335                         if (!parent) return NULL;
00336                 }
00337                 return parent->parent;
00338         }
00339
00340         MyTreeNode<T> * Add(T& elem,MyTreeNode<T> *parent=NULL)
00341         {
00342                 MyTreeNode<T> *node = new MyTreeNode<T>(elem); // Creation d'un nouveau noeud
00343                 if (!parent) parent = current;    // Attacher ce noeud a son parent
00344                 if (parent)                      // si premier alors devient root
00345                 {
00346                         node->parent = parent;
00347                         parent->childs.i+=node;
00348                 }
00349                 else { current = root = node; }
00350                 return node;
00351         }
00352
00353         MyTreeNode<T> * Add(T* elem,MyTreeNode<T> *parent=NULL)
00354         {
00355                 MyTreeNode<T> *node = new MyTreeNode<T>(elem); // Creation d'un nouveau noeud
00356                 if (!parent) parent = current;    // Attacher ce noeuf a son parent
00357                 if (parent)                      // si premier alors devient root
00358                 {
00359                         node->parent = parent;
00360                         parent->childs.i+=node;
00361                 }
00362                 else { current = root = node; }
00363                 return node;
00364         }
00365 };
00366
00367 #endif
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Object3D.cpp File Reference

Object3D.cpp File Reference

#include "3d.h"
#include "material.h"
#include "object3d.h"
#include "controlEngine.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 24 of file Object3D.cpp.

Generated on Fri Aug 20 19:20:35 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Object3D.cpp Source File

Object3D.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "material.h"
00021 #include "object3d.h"
00022
00023 #include "controlEngine.h"
00024 extern ControlEngine ce;
00025
00026 /* ****************************************************************************
00027 **************************************************************************** */
00028
00029 BOOL Object3D::DrawVectorMinMax(double x,double y,double minIntensity,double maxIntensity)
00030 {
00031         double intensity = sqrt(x*x+y*y);
00032         //MyDebug::SendEvent("draw vector","x:%lf y:%lf i:%lf",x,y,intensity);
00033
00034         if (intensity<minIntensity) return FALSE;
00035         if (intensity>maxIntensity)
00036         {
00037                 double angle=atan2(y,-x);
00038                 x=cos(angle)*maxIntensity;
00039                 y=sin(angle)*maxIntensity;
00040         }
00041         DrawVector(x,y);
00042         return TRUE;
00043 }
00044
00049 void Object3D::DrawVector(double x,double y)
00050 {
00051         glDisable(GL_TEXTURE_2D);
00052         //glEnable(GL_BLEND);
00053         //glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
00054         double angle=atan2(y,-x)*(180.0/PI);
00055         double intensity = sqrt(x*x+y*y)/25.0;
00056
00057         Point3D<double> rotate(0,0,angle);
00058
00059         Material material;
00060         material.SetNull();
00061         //material.SetDS(0,0,1,0.5);
00062         material.emission.Set(0,0,1);
00063         material.Use();
00064
00065         glPushMatrix();
00066         rotate.glRotated();
00067         glBegin(GL_POLYGON);
00068         glVertex2d(0,0);
00069         glVertex2d(intensity,0);
00070         glVertex2d(intensity-0.05,-0.05);
00071         glVertex2d(intensity-0.05,0.05);
00072         glVertex2d(intensity,0);
00073         glEnd();
00074         glPopMatrix();
00075         //glDisable(GL_BLEND);
00076 }
00077
00078 void Object3D::DrawArrow(Color color)
00079 {
00080         glDisable(GL_BLEND);
00081         glDisable(GL_TEXTURE_2D);
00082         Material material;
00083
00084         material.SetNull();
00085         material.emission = color;
00086         material.Use();
00087
00088         // tracement des regions
00089         glBegin(GL_POLYGON);
00090         glVertex2d(0,0);
00091         glVertex2d(0,-0.2);
00092         glVertex2d(0.05,-0.15);
00093         glVertex2d(0.12,-0.3);
00094         glVertex2d(0.20,-0.22);
00095         glVertex2d(0.10,-0.10);
00096         glVertex2d(0.15,-0.06);
00097         glVertex2d(0,0);
00098         glEnd();
00099
00100         // les contours
00101         material.emission.SetNull();
00102         material.Use();
00103         glBegin(GL_LINE_LOOP);
00104         glVertex2d(0,0);
00105         glVertex2d(0,-0.2);
00106         glVertex2d(0.05,-0.15);
00107         glVertex2d(0.12,-0.3);
00108         glVertex2d(0.2,-0.22);
00109         glVertex2d(0.10,-0.10);
00110         glVertex2d(0.15,-0.06);
00111         glEnd();
00112 }
00113
00114 // ********************************************************************************
00115
00116 void Object3D::DrawRepere()
00117 {
00118         glDisable(GL_BLEND);
00119         glDisable(GL_TEXTURE_2D);
00120
00121         Material material;
00122         material.SetNull();
00123
00124         GLUquadric *newQuadric = gluNewQuadric();
00125         gluQuadricNormals(newQuadric,GLU_NONE); // sinon influ de maniere misterieuse les autre normales
00126         double size=0.03;
00127         double baseSize=0.8;
00128         double arrowSize=0.3;
00129         double baseArrowSize=0.15;
00130
00131         glPushMatrix(); // les Z
00132                 material.emission.Set(1,0,0);
00133                 material.Use();
00134                 gluCylinder(newQuadric,size,size,baseSize,3,3);
00135                 glTranslated(0,0,baseSize);
00136                 gluCylinder(newQuadric,baseArrowSize,0,arrowSize,3,3);
00137                 //glTranslated(0,0,0.5);
00138                 //DrawText("Z");
00139         glPopMatrix();
00140
00141         glPushMatrix(); // les Y
00142                 material.emission.Set(0,1,0);
00143                 material.Use();
00144                 glRotated(-90,1,0,0);
00145                 gluCylinder(newQuadric,size,size,baseSize,3,3);
00146                 glTranslated(0,0,baseSize);
00147                 gluCylinder(newQuadric,baseArrowSize,0,arrowSize,3,3);
00148                 //glTranslated(0,0,0.5);
00149                 //DrawText("Y");
00150         glPopMatrix();
00151
00152         glPushMatrix(); // les X
00153                 material.emission.Set(0,0,1);
00154                 material.Use();
00155                 glRotated(90,0,1,0);
00156                 gluCylinder(newQuadric,size,size,baseSize,3,3);
00157                 glTranslated(0,0,baseSize);
00158                 gluCylinder(newQuadric,baseArrowSize,0,arrowSize,3,3);
00159                 //glTranslated(0,0,0.5);
00160                 //DrawText("X");
00161         glPopMatrix();
00162
00163         gluDeleteQuadric(newQuadric);
00164
00165         material.emission.SetNull();
00166         material.Use();
00167 }
00168
00169 // ********************************************************************************
00170
00171 void Object3D::DrawText(char *text)
00172 {
00173         //ce.fontTexture->Render(text);
00174
00175         wglUseFontBitmaps (hDC, 0, 256, 1000);
00176         glListBase (1000);
00177         glRasterPos3d(0,0,0);
00178         glCallLists ((int)strlen(text),GL_BYTE,text);
00179         glDeleteLists(1000,1);
00180 }
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Object3D.h File Reference

Object3D.h File Reference

Affiche des object 3D de base. More...

#include "color.h"

Go to the source code of this file.

Classes

class Object3D
Object 3D. More...

Detailed Description

Affiche des object 3D de base.

Definition in file Object3D.h.

Generated on Fri Aug 20 19:20:35 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Object3D.h Source File

Object3D.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_OBJECT_3D_H
00024 #define INCLUDE_OBJECT_3D_H
00025
00026 #include "color.h"
00027
00037 class Object3D
00038 {
00039 public:
00040         static HDC hDC;
00041         static void DrawArrow(Color color);
00042         static void DrawRepere();
00043         static void DrawText(char *text);
00044         static void DrawVector(double x,double y);
00045         static BOOL DrawVectorMinMax(double x,double y,double minIntensity,double maxIntensity);
00046 };
00047
00048 #endif
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Object3D_instance.h File Reference

Object3D_instance.h File Reference

Instancisation des statics de object3D. More...

#include "object3d.h"

Go to the source code of this file.

Detailed Description

Instancisation des statics de object3D.

Definition in file Object3D_instance.h.

Generated on Fri Aug 20 19:20:35 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Object3D_instance.h Source File

Object3D_instance.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #include "object3d.h"
00024
00025 HDC Object3D::hDC = NULL;
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: openGL_tools.cpp File Reference

openGL_tools.cpp File Reference

#include <windows.h>
#include <gl\gl.h>
#include <gl\glu.h>
#include <gl\glaux.h>
#include "MyString.h"
#include "openGL_tools.h"
#include "MyDebug.h"
#include <math.h>
#include "wglext.h"
#include "glext.h"

Go to the source code of this file.

Defines

#define | WGL_SAMPLE_BUFFERS_ARB 0x2041
#define | WGL_SAMPLES_ARB 0x2042
#define | PI_ 3.14159265358979323846

Functions

BOOL | OpenGL_TestError (BOOL resultOnMessageBox, BOOL resultOnMyDebug, HWND hWnd)
Test s'il y a une erreur openGL.

void | OpenGL_ViewVersionExtansions (char *extensions, MyString &result)
void | OpenGL_ViewVersion ()
BOOL | OpenGL_ExtensionSupported (const char *extension)
int | OpenGL_InitMultisample (HWND hWnd)
void | accFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble znear, GLdouble zfar, GLdouble pixdx, GLdouble pixdy, GLdouble eyedx, GLdouble eyedy, GLdouble focus)
void | accPerspective (GLdouble fovy, GLdouble aspect, GLdouble znear, GLdouble zfar, GLdouble pixdx, GLdouble pixdy, GLdouble eyedx, GLdouble eyedy, GLdouble focus)

Define Documentation

#define PI_ 3.14159265358979323846

Definition at line 226 of file openGL_tools.cpp.

Referenced by accPerspective().

#define WGL_SAMPLE_BUFFERS_ARB 0x2041

Definition at line 130 of file openGL_tools.cpp.

#define WGL_SAMPLES_ARB 0x2042

Definition at line 131 of file openGL_tools.cpp.

Function Documentation

void accFrustum | ( | GLdouble | left,
 |  | GLdouble | right,
 |  | GLdouble | bottom,
 |  | GLdouble | top,
 |  | GLdouble | znear,
 |  | GLdouble | zfar,
 |  | GLdouble | pixdx,
 |  | GLdouble | pixdy,
 |  | GLdouble | eyedx,
 |  | GLdouble | eyedy,
 |  | GLdouble | focus
 | ) |

Definition at line 243 of file openGL_tools.cpp.

References bottom, GLint(), and top.

Referenced by accPerspective().

void accPerspective | ( | GLdouble | fovy,
 |  | GLdouble | aspect,
 |  | GLdouble | znear,
 |  | GLdouble | zfar,
 |  | GLdouble | pixdx,
 |  | GLdouble | pixdy,
 |  | GLdouble | eyedx,
 |  | GLdouble | eyedy,
 |  | GLdouble | focus
 | ) |

Definition at line 280 of file openGL_tools.cpp.

References accFrustum(), bottom, PI_, and top.

Referenced by ControlEngine::SetPerspective().

BOOL OpenGL_ExtensionSupported ( const char * extension )

Definition at line 133 of file openGL_tools.cpp.

References BOOL(), HDC(), and p.

Referenced by OpenGL_InitMultisample().

int OpenGL_InitMultisample ( HWND hWnd )

Definition at line 173 of file openGL_tools.cpp.

References HDC(), OpenGL_ExtensionSupported(), WGL_ACCELERATION_ARB, WGL_ALPHA_BITS_ARB, WGL_COLOR_BITS_ARB, WGL_DEPTH_BITS_ARB, WGL_DOUBLE_BUFFER_ARB, WGL_DRAW_TO_WINDOW_ARB, WGL_FULL_ACCELERATION_ARB, WGL_SAMPLE_BUFFERS_ARB, WGL_SAMPLES_ARB, WGL_STENCIL_BITS_ARB, and WGL_SUPPORT_OPENGL_ARB.

Referenced by Screen::BindOpenGL().

BOOL OpenGL_TestError | ( | BOOL | resultOnMessageBox,
 |  | BOOL | resultOnMyDebug,
 |  | HWND | hWnd
 | ) |

Test s'il y a une erreur openGL.

si hWnd specifié, arrete le timer si erreur

Todo:
pause du timer puis reprise apresfin du MessageBox plutot que simple destruction

Definition at line 35 of file openGL_tools.cpp.

References MyString::AddFormat(), BOOL(), MyString::Format(), and MyDebug::SendLine().

void OpenGL_ViewVersion ( )

Definition at line 111 of file openGL_tools.cpp.

References OpenGL_ViewVersionExtansions().

void OpenGL_ViewVersionExtansions | ( | char * | extensions,
 |  | MyString & | result
 | ) |

Definition at line 94 of file openGL_tools.cpp.

Referenced by OpenGL_ViewVersion().

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: openGL_tools.cpp Source File

openGL_tools.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include <windows.h>
00020 #include <gl\gl.h>                   // Header for OpenGL32 Lib
00021 #include <gl\glu.h>                  // GLu32 Lib
00022 #include <gl\glaux.h>                // GLaux Lib
00023
00024 #include "MyString.h"
00025 #include "openGL_tools.h"
00026 #include "MyDebug.h"
00027 #include <math.h>
00028
00035 BOOL OpenGL_TestError(BOOL resultOnMessageBox,BOOL resultOnMyDebug,HWND hWnd)
00036 {
00037         MyString fullText;
00038         MyString text;
00039         BOOL next = TRUE;
00040         int nbError=0;
00041         while(next)
00042         {
00043                 int error = glGetError();
00044                 //on peut aussi utiliser "gluErrorString", mais on pert le tittle
00045                 switch (error)
00046                 {
00047                 case GL_NO_ERROR: next=FALSE; break;
00048                 case GL_INVALID_ENUM:
00049                         text="GL_INVALID_ENUM - An unacceptable value is specified for an enumerated argument.";
00050                         break;
00051                 case GL_INVALID_VALUE:
00052                         text="GL_INVALID_VALUE - A numeric argument is out of range.";
00053                         break;
00054                 case GL_INVALID_OPERATION:
00055                         text="GL_INVALID_OPERATION - The specified operation is not allowed in the current state.";
00056                         break;
00057                 case GL_STACK_OVERFLOW:
00058                         text="GL_STACK_OVERFLOW - This function would cause a stack overflow.";
00059                         break;
00060                 case GL_STACK_UNDERFLOW:
00061                         text="GL_STACK_UNDERFLOW - This function would cause a stack underflow.";
00062                         break;
00063                 case GL_OUT_OF_MEMORY:
00064                         text="GL_OUT_OF_MEMORY - There is not enough memory left to execute the function.";
00065                         break;
00066                 }
00067                 if (error!=GL_NO_ERROR)
00068                 {
00069                         nbError++;
00070                         fullText.AddFormat("#%d - %s\n",nbError,(char *)text);
00071                 }
00072         }
00073         if (nbError)
00074         {
00075                 if (resultOnMessageBox)
00076                 {
00077                         MyString title;
00078                         //if (hWnd) KillTimer(hWnd,0);
00079                         title.Format("OpenGl - %d Errors",nbError);
00080                         MessageBox(NULL,fullText,title,0);
00081                         //SetTimer(hWnd,0,timer,NULL);
00082                 }
00083                 if (resultOnMyDebug)
00084                 {
00085                         if (nbError>1)
00086                         MyDebug::SendLine("glError","(%d error)\n%s",nbError,(char *)fullText);
00087                         else MyDebug::SendLine("glError",fullText);
00088                 }
00089                 return TRUE;
00090         }
00091         return FALSE;
00092 }
00093
00094 void OpenGL_ViewVersionExtansions(char *extensions,MyString &result)
00095 {
00096         MyString temp;
00097         result="";
00098         for (int i=0;i<(int)strlen(extensions);i++)
00099         {
00100                 char letter = extensions[i];
00101                 if (letter==' ')
00102                 {
00103                         result<<"\n* "<<temp;
00104                         temp="";
00105                 }
00106                 else temp<<letter;
00107         }
00108         if (temp!="") result<<"\n* "<<temp;
00109 }
00110
00111 void OpenGL_ViewVersion()
00112 {   // fonction dois etre appeler apres l'initialisation d'openGL sinon ne retourne rien
00113         char *extensions = (char *)glGetString(GL_EXTENSIONS);
00114         MyString temp,resultExt;
00115         temp<<"Vendor:\t\t"<<(char *)glGetString(GL_VENDOR)<<"\n";
00116         temp<<"Render:\t\t"<<(char *)glGetString(GL_RENDERER)<<"\n";
00117         temp<<"Version:\t\t"<<(char *)glGetString(GL_VERSION)<<"\n";
00118         temp<<"Version(GLU):\t"<<(char *)gluGetString(GLU_VERSION)<<"\n";
00119         extensions = (char *)glGetString(GL_EXTENSIONS);
00120         OpenGL_ViewVersionExtansions(extensions,resultExt);
00121         temp<<"Extensions:"<<resultExt;
00122         extensions = (char *)gluGetString(GLU_EXTENSIONS);
00123         OpenGL_ViewVersionExtansions(extensions,resultExt);
00124         temp<<"\nExtensions(GLU):"<<resultExt;
00125
00126         MessageBox(NULL,temp,"Info OpenGL",0);
00127 }
00128
00129 // pour la gestion des extanssion permetant la gestion de l'anti-aliasing
00130 #define WGL_SAMPLE_BUFFERS_ARB           0x2041
00131 #define WGL_SAMPLES_ARB                      0x2042
00132
00133 BOOL OpenGL_ExtensionSupported(const char *extension)
00134 {
00135         const size_t extlen = strlen(extension);
00136         const char *supported = NULL;
00137
00138         // Try To Use wglGetExtensionStringARB On Current DC, If Possible
00139         PROC wglGetExtString = wglGetProcAddress("wglGetExtensionsStringARB");
00140
00141         if (wglGetExtString) supported = ((char*(__stdcall*)(HDC))wglGetExtString)(wglGetCurrentDC());
00142
00143         // If That Failed, Try Standard Opengl Extensions String
00144         if (!supported) supported = (char*)glGetString(GL_EXTENSIONS);
00145
00146         // If That Failed Too, Must Be No Extensions Supported
00147         if (!supported ) return FALSE;
00148
00149         // Begin Examination At Start Of String, Increment By 1 On False Match
00150         for (const char* p = supported; ; p++)
00151         {
00152                 // Advance p Up To The Next Possible Match
00153                 p = strstr(p, extension);
00154                 if (!p) return false; // No Match
00155
00156                 // Make Sure That Match Is At The Start Of The String Or That
00157                 // The Previous Char Is A Space, Or Else We Could Accidentally
00158                 // Match "wglFunkywglExtension" With "wglExtension"
00159
00160                 // Also, Make Sure That The Following Character Is Space Or NULL
00161                 // Or Else "wglExtensionTwo" Might Match "wglExtension"
00162                 if ((p==supported || p[-1]==' ') && (p[extlen]=='\0' || p[extlen]==' ')) return true; // Match
00163         }
00164 }
00165
00166 /* InitMultisample: Used To Query The Multisample Frequencies ***********************
00167         retour pixelFormat -ou- 0 si impossible
00168
00169 ********************************************************************************** */
00170 #include "wglext.h"             //WGL extensions
00171 #include "glext.h"              //GL extensions
00172
00173 int OpenGL_InitMultisample(HWND hWnd)
00174 {
00175         // See If The String Exists In WGL!
00176         if (!OpenGL_ExtensionSupported("WGL_ARB_multisample")) return FALSE;
00177
00178         // Get Our Pixel Format
00179         PFNWGLCHOOSEPIXELFORMATARBPROC wglChoosePixelFormatARB = (PFNWGLCHOOSEPIXELFORMATARBPROC)wglGetProcAddress("wglChoosePixelFormatARB");
00180         if (!wglChoosePixelFormatARB) return 0;
00181
00182         // Get Our Current Device Context
00183         HDC hDC = GetDC(hWnd);
00184
00185         int             pixelFormat;
00186         int             valid;
00187         UINT    numFormats;
00188         float   fAttributes[] = {0,0};
00189
00190         // These Attributes Are The Bits We Want To Test For In Our Sample
00191         // Everything Is Pretty Standard, The Only One We Want To
00192         // Really Focus On Is The SAMPLE BUFFERS ARB And WGL SAMPLES
00193         // These Two Are Going To Do The Main Testing For Whether Or Not
00194         // We Support Multisampling On This Hardware.
00195         int iAttributes[] =
00196         {
00197                 WGL_DRAW_TO_WINDOW_ARB,GL_TRUE,
00198                 WGL_SUPPORT_OPENGL_ARB,GL_TRUE,
00199                 WGL_ACCELERATION_ARB,WGL_FULL_ACCELERATION_ARB,
00200                 WGL_COLOR_BITS_ARB,24,
00201                 WGL_ALPHA_BITS_ARB,8,
00202                 WGL_DEPTH_BITS_ARB,16,
00203                 WGL_STENCIL_BITS_ARB,0,
00204                 WGL_DOUBLE_BUFFER_ARB,GL_TRUE,
00205                 WGL_SAMPLE_BUFFERS_ARB,GL_TRUE,
00206                 WGL_SAMPLES_ARB,4,
00207                 0,0
00208         };
00209
00210         // First We Check To See If We Can Get A Pixel Format For 4 Samples
00211         valid = wglChoosePixelFormatARB(hDC,iAttributes,fAttributes,1,&pixelFormat,&numFormats);
00212
00213         // If We Returned True, And Our Format Count Is Greater Than 1
00214         if (valid && numFormats >= 1) return  pixelFormat;
00215
00216         // Our Pixel Format With 4 Samples Failed, Test For 2 Samples
00217         iAttributes[19] = 2;
00218         valid = wglChoosePixelFormatARB(hDC,iAttributes,fAttributes,1,&pixelFormat,&numFormats);
00219         if (valid && numFormats >= 1) return pixelFormat;
00220
00221         return  0; // Return The Valid Format
00222 }
00223
00224
00225 // from URL: http://www.opengl.org/resources/code/basics/redbook/index.html
00226 #define PI_ 3.14159265358979323846
00227
00228 /* accFrustum()
00229 * The first 6 arguments are identical to the glFrustum() call.
00230 *
00231 * pixdx and pixdy are anti-alias jitter in pixels.
00232 * Set both equal to 0.0 for no anti-alias jitter.
00233 * eyedx and eyedy are depth-of field jitter in pixels.
00234 * Set both equal to 0.0 for no depth of field effects.
00235 *
00236 * focus is distance from eye to plane in focus.
00237 * focus must be greater than, but not equal to 0.0.
00238 *
00239 * Note that accFrustum() calls glTranslatef().  You will
00240 * probably want to insure that your ModelView matrix has been
00241 * initialized to identity before calling accFrustum().
00242 */
00243 void accFrustum(GLdouble left, GLdouble right, GLdouble bottom,
00244                                 GLdouble top, GLdouble znear, GLdouble zfar, GLdouble pixdx,
00245                                 GLdouble pixdy, GLdouble eyedx, GLdouble eyedy, GLdouble focus)
00246 {
00247         GLdouble xwsize, ywsize;
00248         GLdouble dx, dy;
00249         GLint viewport[4];
00250
00251         glGetIntegerv (GL_VIEWPORT, viewport);
00252
00253         xwsize = right - left;
00254         ywsize = top - bottom;
00255
00256         dx = -(pixdx*xwsize/(GLdouble)viewport[2] + eyedx*znear/focus);
00257         dy = -(pixdy*ywsize/(GLdouble)viewport[3] + eyedy*znear/focus);
00258
00259         glMatrixMode(GL_PROJECTION);
00260         glLoadIdentity();
00261         glFrustum (left+dx, right+dx, bottom+dy, top+dy, znear, zfar);
00262         glMatrixMode(GL_MODELVIEW);
00263         glLoadIdentity();
00264         glTranslatef (-eyedx, -eyedy, 0.0);
00265 }
00266
00267 /* accPerspective()
00268 *
00269 * The first 4 arguments are identical to the gluPerspective() call.
00270 * pixdx and pixdy are anti-alias jitter in pixels.
00271 * Set both equal to 0.0 for no anti-alias jitter.
00272 * eyedx and eyedy are depth-of field jitter in pixels.
00273 * Set both equal to 0.0 for no depth of field effects.
00274 *
00275 * focus is distance from eye to plane in focus.
00276 * focus must be greater than, but not equal to 0.0.
00277 *
00278 * Note that accPerspective() calls accFrustum().
00279 */
00280 void accPerspective(GLdouble fovy, GLdouble aspect,
00281                                         GLdouble znear, GLdouble zfar, GLdouble pixdx, GLdouble pixdy,
00282                                         GLdouble eyedx, GLdouble eyedy, GLdouble focus)
00283 {
00284         GLdouble fov2,left,right,bottom,top;
00285
00286         fov2 = ((fovy*PI_) / 180.0) / 2.0;
00287
00288         top = znear / (cos(fov2) / sin(fov2));
00289         bottom = -top;
00290
00291         right = top * aspect;
00292         left = -right;
00293
00294         accFrustum (left, right, bottom, top, znear, zfar,
00295                 pixdx, pixdy, eyedx, eyedy, focus);
00296 }
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: openGL_tools.h File Reference

openGL_tools.h File Reference

Outils OpenGL. More...

Go to the source code of this file.

Functions

BOOL | OpenGL_TestError (BOOL resultOnMessageBox=TRUE, BOOL resultOnMyDebug=FALSE, HWND hWnd=NULL)
Test s'il y a une erreur openGL.

void | OpenGL_ViewVersionExtansions (char *extensions, MyString &result)
void | OpenGL_ViewVersion ()
int | OpenGL_InitMultisample (HWND hWnd)
BOOL | OpenGL_ExtensionSupported (const char *extension)
void | accFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble znear, GLdouble zfar, GLdouble pixdx, GLdouble pixdy, GLdouble eyedx, GLdouble eyedy, GLdouble focus)
void | accPerspective (GLdouble fovy, GLdouble aspect, GLdouble znear, GLdouble zfar, GLdouble pixdx, GLdouble pixdy, GLdouble eyedx, GLdouble eyedy, GLdouble focus)

Detailed Description

Outils OpenGL.

Definition in file openGL_tools.h.

Function Documentation

void accFrustum | ( | GLdouble | left,
 |  | GLdouble | right,
 |  | GLdouble | bottom,
 |  | GLdouble | top,
 |  | GLdouble | znear,
 |  | GLdouble | zfar,
 |  | GLdouble | pixdx,
 |  | GLdouble | pixdy,
 |  | GLdouble | eyedx,
 |  | GLdouble | eyedy,
 |  | GLdouble | focus
 | ) |

Definition at line 243 of file openGL_tools.cpp.

References bottom, GLint(), and top.

Referenced by accPerspective().

void accPerspective | ( | GLdouble | fovy,
 |  | GLdouble | aspect,
 |  | GLdouble | znear,
 |  | GLdouble | zfar,
 |  | GLdouble | pixdx,
 |  | GLdouble | pixdy,
 |  | GLdouble | eyedx,
 |  | GLdouble | eyedy,
 |  | GLdouble | focus
 | ) |

Definition at line 280 of file openGL_tools.cpp.

References accFrustum(), bottom, PI_, and top.

Referenced by ControlEngine::SetPerspective().

BOOL OpenGL_ExtensionSupported ( const char * extension )

Definition at line 133 of file openGL_tools.cpp.

References BOOL(), HDC(), and p.

Referenced by OpenGL_InitMultisample().

int OpenGL_InitMultisample ( HWND hWnd )

Definition at line 173 of file openGL_tools.cpp.

References HDC(), OpenGL_ExtensionSupported(), WGL_ACCELERATION_ARB, WGL_ALPHA_BITS_ARB, WGL_COLOR_BITS_ARB, WGL_DEPTH_BITS_ARB, WGL_DOUBLE_BUFFER_ARB, WGL_DRAW_TO_WINDOW_ARB, WGL_FULL_ACCELERATION_ARB, WGL_SAMPLE_BUFFERS_ARB, WGL_SAMPLES_ARB, WGL_STENCIL_BITS_ARB, and WGL_SUPPORT_OPENGL_ARB.

Referenced by Screen::BindOpenGL().

BOOL OpenGL_TestError | ( | BOOL | resultOnMessageBox,
 |  | BOOL | resultOnMyDebug,
 |  | HWND | hWnd
 | ) |

Test s'il y a une erreur openGL.

si hWnd specifié, arrete le timer si erreur

Todo:
pause du timer puis reprise apresfin du MessageBox plutot que simple destruction

Definition at line 35 of file openGL_tools.cpp.

References MyString::AddFormat(), BOOL(), MyString::Format(), and MyDebug::SendLine().

void OpenGL_ViewVersion ( )

Definition at line 111 of file openGL_tools.cpp.

References OpenGL_ViewVersionExtansions().

void OpenGL_ViewVersionExtansions | ( | char * | extensions,
 |  | MyString & | result
 | ) |

Definition at line 94 of file openGL_tools.cpp.

Referenced by OpenGL_ViewVersion().

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: openGL_tools.h Source File

openGL_tools.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_OPENGL_TOOLS_H
00024 #define INCLUDE_OPENGL_TOOLS_H
00025
00026 BOOL    OpenGL_TestError(BOOL resultOnMessageBox=TRUE,BOOL resultOnMyDebug=FALSE,HWND hWnd=NULL);
00027 void    OpenGL_ViewVersionExtansions(char *extensions,MyString &result);
00028 void    OpenGL_ViewVersion();
00029 int             OpenGL_InitMultisample(HWND hWnd);
00030 BOOL    OpenGL_ExtensionSupported(const char *extension);
00031
00032 void accFrustum(GLdouble left, GLdouble right, GLdouble bottom,
00033                                 GLdouble top, GLdouble znear, GLdouble zfar, GLdouble pixdx,
00034                                 GLdouble pixdy, GLdouble eyedx, GLdouble eyedy, GLdouble focus);
00035 void accPerspective(GLdouble fovy, GLdouble aspect,
00036                                         GLdouble znear, GLdouble zfar, GLdouble pixdx, GLdouble pixdy,
00037                                         GLdouble eyedx, GLdouble eyedy, GLdouble focus);
00038 #endif
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: perfMon.cpp File Reference

perfMon.cpp File Reference

#include "perfMon.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: perfMon.cpp Source File

perfMon.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 #include "perfMon.h"
00020
00021 BOOL PerfMonitor::Save()
00022 {
00023         FILE *fich = fopen(fileName,"wt");
00024         if (!fich) return FALSE;
00025
00026         for (points.i=0;points.i.More();points.i++)
00027         {
00028                 PerfMonitorPoint *point = points.i.GetElemPtr();
00029                 fprintf(fich,"%s \t",(char *)point->name);
00030         }
00031
00032         for (records.i=0;records.i.More();records.i++)
00033         {
00034                 fprintf(fich,"\n");
00035                 MyListOfDouble *recordCur = records.i.GetElemPtr();
00036                 for (recordCur->i=0;recordCur->i.More();recordCur->i++)
00037                         fprintf(fich,"%lf \t",recordCur->i.GetElem());
00038         }
00039         return TRUE;
00040 }
00041
00042 PerfMonitor::PerfMonitor()
00043 {
00044         enable=TRUE;
00045         fileName="perfMon.txt";
00046 }
00047
00048 PerfMonitor::~PerfMonitor()
00049 {
00050         if (enable) Save();
00051 }
00052
00053 PerfMonitorPoint * PerfMonitor::AddTitle(char *name)
00054 {
00055         PerfMonitorPoint *point = points.i.AddNewLast();
00056         point->Set(name,this);
00057         return point;
00058 }
00059
00060 void PerfMonitor::AddRecord()
00061 {
00062         if (! enable) return;
00063         MyListOfDouble *listValue = records.i.AddNewLast();
00064
00065         // ajout dans la list des records
00066         for (points.i=0;points.i.More();points.i++)
00067                 listValue->i.AddLast(points.i.GetElemPtr()->value);
00068 }
00069
00071
00072 void PerfMonitor::Reset()
00073 {
00074         for (points.i=0;points.i.More();points.i++)
00075                 points.i.GetElemPtr()->Reset();
00076 }
00077
00078 PerfMonitorPoint * PerfMonitor::Find(char *name,BOOL addIfNotExist)
00079 {
00080         PerfMonitorPoint *pt;
00081         for (points.i=0;points.i.More();points.i++)
00082         {
00083                 pt = points.i.GetElemPtr();
00084                 if (pt->name==name) return pt;
00085         }
00086
00087         if (addIfNotExist) return AddTitle(name);
00088         return NULL;
00089 }
00090
00091 void PerfMonitor::Reset(char *name)
00092 {
00093         if (!enable) return;
00094         PerfMonitorPoint * pt = Find(name,TRUE);
00095         pt->Reset();
00096 }
00097
00098 void PerfMonitor::Begin(char *name,BOOL reset)
00099 {
00100         if (!enable) return;
00101         PerfMonitorPoint * pt = Find(name,TRUE);
00102         pt->Begin(reset);
00103 }
00104
00105 void PerfMonitor::End(char *name)
00106 {
00107         if (!enable) return;
00108         PerfMonitorPoint * pt = Find(name,TRUE);
00109         pt->End();
00110 }
00111
00112 // **************************************************************************
00113
00114 PerfMonitorPoint::PerfMonitorPoint()
00115 {
00116         monitor=NULL;
00117         name="not used";
00118         Reset();
00119 }
00120 void PerfMonitorPoint::operator=(PerfMonitorPoint &src)
00121 {
00122         name=src.name;
00123         timer=src.timer;
00124         monitor=src.monitor;
00125         value=src.value;
00126         nbValue=src.nbValue;
00127 }
00128
00129 PerfMonitorPoint::PerfMonitorPoint(char *_name,PerfMonitor *_monitor)
00130 {
00131         Set(_name,_monitor);
00132 }
00133
00134 void PerfMonitorPoint::Set(char *_name,PerfMonitor *_monitor)
00135 {
00136         name=_name;
00137         monitor=_monitor;
00138 }
00139
00140 void PerfMonitorPoint::Reset()
00141 {
00142         value=0;
00143         nbValue=0;
00144 }
00145
00146 void PerfMonitorPoint::Begin(BOOL reset)
00147 {
00148         if (reset) Reset();
00149         timer.GetDeltaTime(TRUE);
00150 }
00151
00152 void PerfMonitorPoint::End()
00153 {
00154         value+=timer.GetDeltaTime();
00155         nbValue++;
00156 }
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: perfMon.h File Reference

perfMon.h File Reference

monteur de performance More...

#include "input.h"
#include "MyList.h"

Go to the source code of this file.

Detailed Description

monteur de performance

Definition in file perfMon.h.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: perfMon.h Source File

perfMon.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016 http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_PERFMON_H
00024 #define INCLUDE_PERFMON_H
00025
00026 #include "input.h"
00027 #include "MyList.h"
00028
00029
00066 class PerfMonitorPoint;
00067
00068 typedef MyList<double> MyListOfDouble;
00069 class PerfMonitor
00070 {
00071 private:
00072         MyList<MyListOfDouble> records;
00073         MyList<PerfMonitorPoint> points;
00074         BOOL Save();
00075
00076 public:
00077         BOOL enable;
00078         MyString fileName;
00079
00080         PerfMonitor();
00081         ~PerfMonitor();
00082
00083         PerfMonitorPoint * AddTitle(char *name);
00084         void AddRecord();
00085         void Reset();
00086
00087         PerfMonitorPoint * Find(char *name,BOOL addIfNotExist);
00088         void Reset(char *name);
00089         void Begin(char *name,BOOL reset=FALSE);
00090         void End(char *name);
00091 };
00092
00093 class PerfMonitorPoint
00094 {
00095 public:
00096         MyString name;
00097         Timer timer;
00098         PerfMonitor *monitor;
00099         double value;
00100         int nbValue;
00101
00102 public:
00103         PerfMonitorPoint();
00104         PerfMonitorPoint(char *_name,PerfMonitor *_monitor);
00105         void Set(char *_name,PerfMonitor *_monitor);
00106         void operator=(PerfMonitorPoint &src);
00107
00108         void Reset();
00109         void Begin(BOOL reset=FALSE);
00110         void End();
00111 };
00112
00113 #endif
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: picking.cpp File Reference

picking.cpp File Reference

#include "3d.h"
#include "control.h"
#include "face.h"
#include "controlEngine.h"
#include "picking.h"
#include "resource.h"

Go to the source code of this file.

Variables

ControlEngine ce
GLuint bufferSelect [MAX_BUFFER_SELECT]

Variable Documentation

GLuint bufferSelect[MAX_BUFFER_SELECT]

Definition at line 123 of file picking.cpp.

Referenced by Picking::Test().

ControlEngine ce

Definition at line 26 of file picking.cpp.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: picking.cpp Source File

picking.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "control.h"
00021 #include "face.h"
00022 #include "controlEngine.h"
00023 #include "picking.h"
00024 #include "resource.h"
00025
00026 extern ControlEngine ce;
00027
00028 Picking::Picking()
00029 {
00030         ResetLast();
00031         ResetCurrent();
00032         isMoving=FALSE;
00033         zDist=0;
00034 }
00035
00040 void Picking::ResetLast()
00041 {
00042         lastFaceHover=-1;
00043         lastFaceContainer=-1;
00044         lastControlHover=NULL;
00045         lastControlContainer=NULL;
00046 }
00047
00048 void Picking::ResetCurrent()
00049 {
00050         faceHover=-1;
00051         faceContainer=-1;
00052         controlHover=NULL;
00053         controlContainer=NULL;
00054 }
00055
00057 void Picking::UpdateLast()
00058 {
00059         lastFaceHover=faceHover;
00060         lastFaceContainer=faceContainer;
00061         lastControlHover=controlHover;
00062         lastControlContainer=controlContainer;
00063 }
00064
00065 void Picking::operator=(Picking &src)
00066 {
00067         mouse=src.mouse;
00068         oldMouse=src.oldMouse;
00069         controlHover=src.controlHover;
00070         controlContainer=src.controlContainer;
00071         faceHover=src.faceHover;
00072         faceContainer=src.faceContainer;
00073         zDist=src.zDist;
00074         isMoving=src.isMoving;
00075 }
00076
00077 void Picking::SetMousePos(int x,int y)
00078 {
00079         oldMouse = mouse;
00080         mouse.pos.Set(x,y);
00081         isMoving = oldMouse.pos!=mouse.pos;
00082 }
00083
00084 void Picking::SetDeltaWheel(int delta)
00085 {
00086         mouse.wheelDelta=delta;
00087         mouse.wheelVal+=delta;
00088 }
00089
00090
00091 void Picking::OnMouseMove(int x,int y)
00092 {
00093         SetMousePos(x,y);
00094         controlHover->OnMouseMove(&mouse,faceHover);
00096 }
00097
00098 void Picking::OnMouseWheel(int delta)
00099 {
00100         SetDeltaWheel(delta);
00101         controlHover->OnMouseWheel(&mouse,faceHover);
00102 }
00103
00104 void Picking::OnLButtonUp()
00105 {
00106         mouse.leftBtn=FALSE;
00107         controlHover->onControl.mouse.left.up(&mouse,faceHover);
00108 }
00109
00110 void Picking::OnMButtonUp()
00111 {
00112         mouse.midBtn=FALSE;
00113         controlHover->onControl.mouse.mid.up(&mouse,faceHover);
00114 }
00115
00116 void Picking::OnRButtonUp()
00117 {
00118         mouse.rightBtn=FALSE;
00119         controlHover->onControl.mouse.right.up(&mouse,faceHover);
00120 }
00121
00122
00123 GLuint bufferSelect[MAX_BUFFER_SELECT]; // buffer du picking
00124
00129 void Picking::TestOvers()
00130 {
00131         TestOver(lastControlHover,lastFaceHover,controlHover,faceHover);
00132         if (lastControlHover!=lastControlContainer)
00133                 TestOver(lastControlContainer,lastFaceContainer,controlContainer,faceContainer);
00134 }
00135
00137
00138 void Picking::TestOver(Control *lastControl,int lastFace,Control *control,int face)
00139 {
00140         if(!lastControl) lastControl=ce.univers;
00141         if (control!=lastControl)
00142         {
00143                 if (lastFace!=-1)
00144                 {
00145                         lastControl->OverOut(control,face);
00146                         lastControl->FaceOverOut(face);
00147                 }
00148                 control->OverIn(lastControl,lastFace);
00149                 control->FaceOverIn(lastFace);
00150         }
00151         else if (face!=lastFace)
00152         {
00153                 if (lastFace!=-1) lastControl->FaceOverOut(face);
00154                 control->FaceOverIn(lastFace);
00155         }
00156 }
00157
00158 BOOL Picking::Test()
00159 {
00160         ce.monitor.Begin("testPicking");
00161         // config du buffer de resultat du picking
00162         glSelectBuffer(MAX_BUFFER_SELECT,bufferSelect); // liste des noms en intersection
00163         glRenderMode(GL_SELECT);
00164
00165         // inint des noms
00166         glInitNames();
00167         glPushName(-1);
00168
00169         // on zoom sur la souris
00170         glMatrixMode(GL_PROJECTION);
00171         glPushMatrix();
00172         glLoadIdentity();
00173         gluPickMatrix(mouse.pos.x,(GLdouble)(ce.deltaYwin-mouse.pos.y),1,1,ce.viewPort);
00174         ce.SetPerspective(0,0);
00175
00176         // on dessine la scene virtuelement
00177         glMatrixMode(GL_MODELVIEW);
00178         ce.monitor.End("testPicking");
00179         ce.monitor.Begin("drawPicking");
00180         ce.DrawScene(TRUE);
00181         ce.monitor.End("drawPicking");
00182         ce.monitor.Begin("testPicking");
00183         // on ce replace comme avant le picking
00184         glMatrixMode(GL_PROJECTION);
00185         glPopMatrix();
00186
00187         int idControl;
00188         int nbElem = glRenderMode(GL_RENDER);
00189         MyString fullText;
00190         MyString selectedText;
00191         MyString selectedTextTitle;
00192         static MyString oldFullText;
00193         fullText.Format("Find(%d): ",nbElem);
00194         UpdateLast();
00195         if (nbElem>0)
00196         {
00197                 GLuint *ptr=bufferSelect;
00198                 float zMinMin;
00199                 for (int i=0;i<nbElem;i++)
00200                 {
00201                         int names = *ptr;
00202                         GLuint *ptr1= ++ptr;
00203                         GLuint *ptr2= ++ptr;
00204                         float zMin = (float)*ptr1/0x7fffffff;
00205                         float zMax = (float)*ptr2/0x7fffffff;
00206                         BOOL isMin;
00207
00208                         // le quel est le plus pres de l'observeur
00209                         if (i==0) isMin=TRUE;
00210                         else
00211                         {
00212                                 if (zMinMin>zMin) isMin = TRUE;
00213                                 else isMin = FALSE;
00214                         }
00215                         //temp.AddFormat("[%.1lf,%.1lf]",zMin,zMax);
00216                         ptr++;
00217                         fullText<<"{";
00218                         if (isMin) zMinMin=zMin;
00219                         for(int j=0;j<names;j++)
00220                         {
00221                                 if (isMin)
00222                                 {
00223                                         if (j==1) idControl = *ptr;
00224                                         if (j==2) faceHover = *ptr;
00225                                 }
00226                                 fullText.AddFormat("%d ",*ptr);
00227                                 ptr++;
00228                         }
00229                         fullText<<"} ";
00230                 }
00231                 controlHover = Control::Find(idControl);
00232                 if (!controlHover)
00233                 {
00234                         controlHover =ce.univers;
00235                         faceHover=-1;
00236                 }
00237                 else
00238                 {
00239                         Face *face;
00240                         if (controlHover->faceNode->childs.GetNbElem())
00241                                 face = controlHover->faceNode->childs.i[faceHover]->elem;
00242                         else
00243                                 face = controlHover->faceNode->elem; // pour le cas d'un Tip par example
00244                         GLfloat zMouse;
00245                         glReadPixels(mouse.pos.x,(int)ce.dyWin-mouse.pos.y,1,1,GL_DEPTH_COMPONENT,GL_FLOAT,&zMouse);
00246                         zDist=zMinMin;
00247
00248                         selectedTextTitle.Format("%s / %s",(char *)controlHover->name,(char *)face->name);
00249                         selectedText.Format("d1:%f d2:%f",zMinMin,zMouse);
00250                 }
00251         }
00252         else
00253         {
00254                 if (ce.enablePicking) selectedTextTitle="<Nothing>";
00255                 else selectedTextTitle="<Not tested>";
00256                 controlHover = ce.univers;
00257                 faceHover=-1;
00258         }
00259         if (oldFullText!=fullText)
00260         {
00261                 // partie a optimise, car fait chutter un peut les performances
00262                 MyDebug::SendEvent("Picking",selectedTextTitle);
00263                 oldFullText=fullText;
00264                 if (ce.screenConfig.hWnd)
00265                 {
00266                         Edit_SetText(GetDlgItem(ce.screenConfig.hWnd,IDC_STATIC_PICKING_FULL),fullText);
00267                         Edit_SetText(GetDlgItem(ce.screenConfig.hWnd,IDC_STATIC_PICKING_SELECTED),selectedText);
00268                         Edit_SetText(GetDlgItem(ce.screenConfig.hWnd,IDC_STATIC_PICKING_SELECTED_TITLE),selectedTextTitle);
00269                 }
00270         }
00271         FindContainer();
00272         TestOvers();
00273         ce.monitor.End("testPicking");
00274         return TRUE;
00275 }
00276
00283 BOOL Picking::FindContainer()
00284 {
00285         if (!controlHover) return FALSE;
00286
00287         FaceNode *faceNode;
00288         if (faceHover==-1) faceNode = controlHover->faceNode;
00289         else faceNode = controlHover->faceNode->childs.i[faceHover];
00290         FaceNode *faceNodeOld = faceNode;
00291         while
00292         (
00293                 (faceNode->parent!=ce.univers->faceNode)&&
00294                 (faceNode->parent!=ce.masterContainer->faceNode)
00295         )
00296         {
00297                 faceNodeOld=faceNode;
00298                 faceNode=faceNode->parent;
00299         }
00300         controlContainer=Control::Find(faceNodeOld->elem->idControl);
00301         faceContainer=faceNodeOld->elem->idFace;
00302
00303         /*
00304         Control *control = controlHover;
00305         while (control->parent!=ce.univers) control=control->parent;
00306         controlContainer=control;
00307         */
00308         return TRUE;
00309 }
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: picking.h File Reference

picking.h File Reference

Gestion du picking 3D. More...

#include "3d.h"
#include "input.h"

Go to the source code of this file.

Classes

class | Picking
Gestion du picking. More...

Defines

#define | MAX_BUFFER_SELECT 512

Detailed Description

Gestion du picking 3D.

Definition in file picking.h.

Define Documentation

#define MAX_BUFFER_SELECT 512

Definition at line 29 of file picking.h.

Referenced by Picking::Test().

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: picking.h Source File

picking.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_PICKING_H
00024 #define INCLUDE_PICKING_H
00025
00026 #include "3d.h"
00027 #include "input.h"
00028
00029 #define MAX_BUFFER_SELECT               512             // taille du buffer du picking
00030
00031 class Control;
00035 class Picking
00036 {
00037 private:
00038         void TestOvers();
00039         void TestOver(Control *lastControl,int lastFace,Control *control,int face);
00040
00041 public:
00042         Control *lastControlHover;
00043         Control *lastControlContainer;
00044         int lastFaceHover;
00045         int lastFaceContainer;
00046         StateMouse mouse,oldMouse;
00047         Control *controlHover;
00048         Control *controlContainer;
00049         int     faceHover;
00050         int     faceContainer;
00051         double zDist;
00052         BOOL isMoving;
00053
00054 public:
00055         Picking();
00056
00057         void operator=(Picking &scr);
00058         BOOL Test();
00059         BOOL FindContainer();
00060         void SetMousePos(int x,int y);
00061         void SetDeltaWheel(int delta);
00062
00063         void UpdateLast();
00064         void ResetLast();
00065         void ResetCurrent();
00066
00067         void OnMouseMove(int x,int y);
00068         void OnMouseWheel(int delta);
00069         void OnLButtonUp();
00070         void OnMButtonUp();
00071         void OnRButtonUp();
00072 };
00073
00074 #endif
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: polygonMode.h File Reference

polygonMode.h File Reference

Gestion du mode de rendu polygonale. More...

Go to the source code of this file.

Classes

class | PolygonMode
Gestion du mode d'affichage des polygons. More...

Enumerations

enum | PolygonModeType { fill = GL_FILL, line = GL_LINE, point = GL_POINT }

Detailed Description

Gestion du mode de rendu polygonale.

Definition in file polygonMode.h.

Enumeration Type Documentation

enum PolygonModeType

Enumeration values:
fill
line
point

Definition at line 26 of file polygonMode.h.

Referenced by Univers::OnKeyDown().

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: polygonMode.h Source File

polygonMode.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_POLYGON_MODE_H
00024 #define INCLUDE_POLYGON_MODE_H
00025
00026 typedef enum
00027 {
00028         fill = GL_FILL,
00029         line = GL_LINE,
00030         point = GL_POINT
00031 } PolygonModeType;
00032
00036 class PolygonMode
00037 {
00038 public:
00039         PolygonModeType front,back;
00040         PolygonMode()
00041         {
00042                 front = fill;
00043                 back = fill;
00044         }
00045
00046         void Use(PolygonModeType _front,PolygonModeType _back)
00047         {
00048                 front = _front;
00049                 back = _back;
00050                 Use();
00051         }
00052
00053         void Use()
00054         {
00055                 glPolygonMode(GL_FRONT, front);
00056                 glPolygonMode(GL_BACK, back);
00057         }
00058
00059         void ToString(MyString &src)
00060         {
00061                 MyString frontTxt,backTxt;
00062                 Traduce(front,frontTxt);
00063                 Traduce(back,backTxt);
00064                 src<<"front:"<<frontTxt<<" back:"<<backTxt;
00065         }
00066
00067         void Traduce(PolygonModeType mode,MyString &dest)
00068         {
00069                 switch(mode)
00070                 {
00071                 case fill: dest="fill"; break;
00072                 case line: dest="line"; break;
00073                 case point: dest="point"; break;
00074                 default: dest="<Unknown>";
00075                 }
00076         }
00077 };
00078
00079 #endif
Generated on Fri Aug 20 19:19:48 2004 for 3d Controls by doxygen 1.3.6


3d Controls: primitive.cpp File Reference

primitive.cpp File Reference

#include "3d.h"
#include "layout.h"
#include "face.h"
#include "primitive.h"
#include "controlEngine.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 25 of file primitive.cpp.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: primitive.cpp Source File

primitive.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 #include "3d.h"
00020 #include "layout.h"
00021 #include "face.h"
00022 #include "primitive.h"
00023 #include "controlEngine.h"
00024
00025 extern ControlEngine ce;
00026
00027 Primitive::Primitive()
00028 {
00029         //layout.SetFull();
00030 }
00031
00032 Primitive::~Primitive()
00033 {
00034         tree.SuprAll();
00035 }
00036
00037 void Primitive::Push()
00038 {
00039         stack.Push(tree.GetCurrent());
00040 }
00041
00042 void Primitive::Pop()
00043 {
00044         tree.GoTo(stack.Pop());
00045 }
00046
00047 FaceNode * Primitive::GoTo(int childNumber)
00048 {
00049         return tree.GoToChild(childNumber);
00050 }
00051
00052 FaceNode * Primitive::GoTo(FaceNode *node)
00053 {
00054         return tree.GoTo(node);
00055 }
00056
00057 FaceNode * Primitive::GoToParent()
00058 {
00059         return tree.GoToParent();
00060 }
00061
00062 FaceNode * Primitive::Peek()
00063 {
00064         if (!stack.GetNbElem()) return NULL;
00065         return stack.Peek();
00066 }
00067
00071 void Primitive::ViewDebug(FaceNode *node)
00072 {
00073         if (!node) node= tree.GetRoot();
00074         static MyString message;
00075         static int level=0;
00076         for (int i=0;i<level;i++) message+="| ";
00077         level++;
00078         message<<node->elem->name<<"\n";
00079         for (node->childs.i=0;node->childs.i.More();node->childs.i++)
00080                 ViewDebug(node->childs.i.GetElem());
00081         level--;
00082         if (!level)
00083         {
00084                 MessageBox(NULL,message,"Debug of primitive",0);
00085                 message="";
00086         }
00087 }
00088
00089 void Primitive::ComputeLayout(FaceNode *faceNode)
00090 {
00091         if (!faceNode) return;
00092         ComputeLayout(faceNode->parent);
00093         faceNode->elem->ComputeLayout();
00094 }
00095
00096 void Primitive::ReOrderForBlending()
00097 {
00098         ReOrderForBlending(tree.GetRoot());
00099 }
00100
00102 BOOL Primitive::ReOrderForBlending(FaceNode *faceNode)
00103 {
00104         if (!faceNode) return FALSE;
00105         FaceNode *curChild;
00106         MyListItem<FaceNode *> *item;
00107         item = faceNode->childs.first;
00108         BOOL contentBlending = FALSE;
00109         while (item)
00110         {
00111                 curChild = *item->elem;
00112                 item = item->after;
00113                 if (ReOrderForBlending(curChild)) contentBlending=TRUE;
00114         }
00115         if (faceNode->elem->blending||contentBlending)
00116         {
00117                 faceNode->MoveToLastChild();
00118                 return TRUE;
00119         }
00120         return FALSE;
00121
00122 }
00123
00124 void Primitive::GetCorners(FaceNode *faceNode,Point3D<double> *points)
00125 {
00126         glMatrixMode(GL_MODELVIEW);
00127         glPushMatrix();
00128         glLoadIdentity();
00129         gluLookAt(0,0,ce.depth,0,0,0,0,1,0);
00130         ce.ApplyScaleView();
00131         GetCornersRecursive(faceNode,TRUE,points);
00132         glPopMatrix();
00133 }
00134
00136 Point2D<double> Primitive::GetLocalPos(FaceNode *faceNode,Point2D<double> absolutePos)
00137 {
00138         Point3D<double> corners[4];
00139         GetCorners(faceNode,corners);
00140
00141         Point2D<double> a,b,c,d,p;
00142         a.Set(corners[0].x,corners[0].y);
00143         b.Set(corners[1].x,corners[1].y);
00144         c.Set(corners[2].x,corners[2].y);
00145         d.Set(corners[3].x,corners[3].y);
00146         double alphaX=0,alphaY=0;
00147         if (!absolutePos.GetRelativePtOnQuadrilatere(a,b,c,d,&alphaX,&alphaY)) return p; // erreur
00148         p.Set(faceNode->elem->computeSize.x*alphaX,faceNode->elem->computeSize.y*(1.0-alphaY));
00149         return p;
00150 }
00151
00152 void Primitive::GetCornersRecursive(FaceNode *faceNode,BOOL isObjective,Point3D<double> *points)
00153 {
00154         if (!faceNode) return ;
00155         GetCornersRecursive(faceNode->parent,FALSE,points);
00156         Face *face = faceNode->elem;
00157         face->MovingInside();
00158         if (face->scale.x!=1||face->scale.y!=1||face->scale.z) face->scale.glScale();
00159         if (isObjective) face->GetCorners(points);
00160 }
00161
00162 BOOL Primitive::Draw(BOOL isPicking)
00163 {
00164         if (isPicking) glLoadName(0);
00165         FaceNode *node = tree.GetRoot();
00166         if (!isPicking) node->elem->ComputeLayout();
00167         return Draw(node,isPicking);
00168 }
00169
00170 BOOL Primitive::Draw(FaceNode *faceNode,BOOL isPicking)
00171 {
00172         if (!faceNode) return FALSE;
00173         FaceNode *childNode;
00174         Face *child;
00175         Face *father = faceNode->elem;
00176         glPushMatrix();
00177         father->MovingInside();
00178         father->Draw(isPicking);
00179         if (faceNode->childs.GetNbElem()) // contenueur ?
00180         {   // gestion des fils
00181                 for (faceNode->childs.i=0;faceNode->childs.i.More();faceNode->childs.i++)
00182                 {
00183                         childNode = faceNode->childs.i.GetElem();
00184                         child = childNode->elem;
00185
00186                         if (!isPicking)
00187                         {       // calcul des dimentions et position suivant les layouts par rapport au pere
00188                                 child->ComputeLayout();
00189                                 child->ratioXY = father->ratioXY*(child->scale.x/child->scale.y); // donne le ratio entre X et Y
00190                         }
00191                         if (child->scale.x!=1||child->scale.y!=1) glScaled(child->scale.x,child->scale.y,1);
00192                         if (!Draw(childNode,isPicking)) return FALSE;
00193                 }
00194         }
00195         glPopMatrix();
00196         return TRUE;
00197 }
00198
00199 /*
00200
00201 BOOL Primitive::Draw(FaceNode *faceNode,BOOL isPicking)
00202 {
00203         if (!faceNode) return FALSE;
00204         FaceNode *childNode;
00205         Face *child;
00206         Face *father = faceNode->elem;
00207         glPushMatrix();
00208         father->Draw(isPicking);
00209         if (faceNode->childs.GetNbElem()) // contenueur ?
00210         {   // gestion des fils
00211                 for (faceNode->childs=0;faceNode->childs.More();faceNode->childs++)
00212                 {
00213                         childNode = faceNode->childs.GetElem();
00214                         child = childNode->elem;
00215
00216                         if (!isPicking)
00217                         {       // calcul des dimentions et position suivant les layouts par rapport au pere
00218                                 child->ComputeLayout();
00219                                 child->ratioXY = father->ratioXY*(child->scale.x/child->scale.y); // donne le ratio entre X et Y
00220                         }
00221                         if (child->scale.x!=1||child->scale.y!=1) glScaled(child->scale.x,child->scale.y,1);
00222                         if (!Draw(childNode,isPicking)) return FALSE;
00223                 }
00224         }
00225         glPopMatrix();
00226 #ifdef DEBUG_3D
00227         static BOOL isFirst = TRUE;
00228         if (!faceNode->parent&&isFirst) { isFirst = FALSE; ViewDebug();  }
00229 #endif
00230         return TRUE;
00231 }
00232 */
00233 FaceNode * Primitive::Find(int idControl,int idFace,FaceNode *node)
00234 {
00235         FaceNode *result;
00236         if (!node) node = tree.GetRoot();
00237         if (node->elem->idControl==idControl && node->elem->idFace==idFace) return node;
00238
00239         for (node->childs.i=0;node->childs.i.More();node->childs.i++)
00240         {
00241                 result = Find(idControl,idFace,node->childs.i.GetElem());
00242                 if (result) return result;
00243         }
00244         return NULL;
00245 }
00246
00247 FaceNode * Primitive::AddFace (char *name,int idControl,int idFace,BOOL view)
00248 {
00249         Face face;
00250         face.Set(name,idControl,idFace,view);
00251         return tree.Add(face);
00252 }
00253
00254 FaceNode * Primitive::AddFace (
00255         char *name,int idControl,int idFace,BOOL view,
00256         double xConstPosition,double xPercentPosition,
00257         double yConstPosition,double yPercentPosition,
00258         double zConstPosition,
00259         double xConstSize,double xPercentSize,
00260         double yConstSize,double yPercentSize)
00261 {
00262         FaceNode *nodeFace = AddFace(name,idControl,idFace,view);
00263         Face *face = nodeFace->elem;
00264         Face *father = nodeFace->parent?nodeFace->parent->elem:NULL;
00265         face->ConfigStaticLayout(xConstPosition,yConstPosition,zConstPosition,xConstSize,yConstSize);
00266         face->ConfigDynamicLayout(father,xPercentPosition,yPercentPosition,xPercentSize,yPercentSize);
00267         return nodeFace;
00268 }
00269
00270 void Primitive::BeginContainer(
00271         int idControl,
00272         double xConstPosition,double xPercentPosition,
00273         double yConstPosition,double yPercentPosition,
00274         double xConstSize,double xPercentSize,
00275         double yConstSize,double yPercentSize)
00276 {
00277         AddFace("container",idControl,0,FALSE,
00278                 xConstPosition,xPercentPosition,
00279                 yConstPosition,yPercentPosition,
00280                 0,
00281                 xConstSize,xPercentSize,
00282                 yConstSize,yPercentSize);
00283         Push();
00284         GoTo(0);
00285 }
00286
00287 void Primitive::EndContainer()
00288 {
00289         Pop();
00290 }
00291
00292
00305 FaceNode * Primitive::AddBox (char *name,int idControl,GLdouble depth,BOOL viewBack)
00306 {
00307         GLdouble depthTemp = depth;
00308         return AddBox(name,idControl,FALSE,&depthTemp,viewBack);
00309 }
00310
00311 FaceNode * Primitive::AddBox (char *name,int idControl,GLdouble *depth,BOOL viewBack)
00312 {
00313         return AddBox(name,idControl,TRUE,depth,viewBack);
00314 }
00315
00316 FaceNode * Primitive::AddBox (char *name,int idControl,BOOL isDynamic,GLdouble *depth,BOOL viewBack)
00317 {
00318         // une boite est contenu dans une face non visible afin de pouvoir faire des
00319         // rotation et translation libre
00320         FaceNode * nodeBase;
00321         nodeBase=AddFace(name,idControl,-1,FALSE); // creation de la face container (jamais visisble: pure conteneur)
00322         Face *child = nodeBase->elem;
00323
00324         Push();
00325         GoTo(nodeBase);
00326
00327         // ajout des 6 faces
00328         // pour des pb de blending, l'ordre d'insertion doit etre du cachant au caché, sinon certaine facette ne sont pas affiché
00329         MyString nameCur;
00330
00331         nameCur<<clear<<name<<" [back]";
00332         FaceNode *nodeFace;
00333         Face *childFace;
00334         nodeFace=AddFace(nameCur,idControl,FACE_BACK,viewBack);
00335         childFace=nodeFace->elem;
00336         childFace->angle.Set(180,0);
00337         childFace->size.x.Set(0,1,&child->computeSize.x);
00338         childFace->size.y.Set(0,1,&child->computeSize.y);
00339         childFace->view=viewBack;
00340
00341         nameCur<<clear<<name<<" [bottom]";
00342         nodeFace=AddFace(nameCur,idControl,FACE_BOTTOM,TRUE);
00343         childFace=nodeFace->elem;
00344         childFace->angle.Set(90,0);
00345         childFace->position.y.Set(0,-0.5,&child->computeSize.y);
00346         if (isDynamic)
00347         {
00348                 childFace->position.z.Set(0,0.5,depth);
00349                 childFace->size.y.Set(0,1,depth);
00350         }
00351         else
00352         {
00353                 childFace->position.z.Set(*depth/2.0);
00354                 childFace->size.y.Set(*depth);
00355         }
00356         childFace->size.x.Set(0,1,&child->computeSize.x);
00357
00358         nameCur<<clear<<name<<" [top]";
00359         nodeFace=AddFace(nameCur,idControl,FACE_TOP,TRUE);
00360         childFace=nodeFace->elem;
00361         childFace->angle.Set(-90,0);
00362         childFace->position.y.Set(0,0.5,&child->computeSize.y);
00363         if (isDynamic)
00364         {
00365                 childFace->position.z.Set(0,0.5,depth);
00366                 childFace->size.y.Set(0,1,depth);
00367         }
00368         else
00369         {
00370                 childFace->position.z.Set(*depth/2.0);
00371                 childFace->size.y.Set(*depth);
00372         }
00373         childFace->size.x.Set(0,1,&child->computeSize.x);
00374
00375         nameCur<<clear<<name<<" [left]";
00376         nodeFace=AddFace(nameCur,idControl,FACE_LEFT,TRUE);
00377         childFace=nodeFace->elem;
00378         childFace->angle.Set(0,-90);
00379         childFace->position.x.Set(0,-0.5,&child->computeSize.x);
00380         if (isDynamic)
00381         {
00382                 childFace->position.z.Set(0,0.5,depth);
00383                 childFace->size.x.Set(0,1,depth);
00384         }
00385         else
00386         {
00387                 childFace->position.z.Set(*depth/2.0);
00388                 childFace->size.x.Set(*depth);
00389         }
00390         childFace->size.y.Set(0,1,&child->computeSize.y);
00391
00392         nameCur<<clear<<name<<" [right]";
00393         nodeFace=AddFace(nameCur,idControl,FACE_RIGHT,TRUE);
00394         childFace=nodeFace->elem;
00395         childFace->angle.Set(0,90);
00396         childFace->position.x.Set(0,0.5,&child->computeSize.x);
00397         if (isDynamic)
00398         {
00399                 childFace->position.z.Set(0,0.5,depth);
00400                 childFace->size.x.Set(0,1,depth);
00401         }
00402         else
00403         {
00404                 childFace->position.z.Set(*depth/2.0);
00405                 childFace->size.x.Set(*depth);
00406         }
00407         childFace->size.y.Set(0,1,&child->computeSize.y);
00408
00409         nameCur<<clear<<name<<" [front]";
00410         nodeFace=AddFace(nameCur,idControl,FACE_FRONT,TRUE);
00411         childFace=nodeFace->elem;
00412         childFace->angle.Set(0,0);
00413         if (isDynamic) childFace->position.z.Set(0,1,depth);
00414         else childFace->position.z.Set(*depth);
00415         childFace->size.x.Set(0,1,&child->computeSize.x);
00416         childFace->size.y.Set(0,1,&child->computeSize.y);
00417
00418         Pop();
00419         return nodeBase;
00420 }
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: primitive.h File Reference

primitive.h File Reference

Effet de transition des controls. More...

#include "3d.h"
#include "layout.h"
#include "face.h"
#include "control.h"

Go to the source code of this file.

Classes

class Primitive
Gestion des Primitive graphics (ajout de face, de cube, etc ...). More...

Detailed Description

Effet de transition des controls.

Definition in file primitive.h.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: primitive.h Source File

primitive.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_PRIMITIVE_H
00024 #define INCLUDE_3D_PRIMITIVE_H
00025
00026 #include "3d.h"
00027 #include "layout.h"
00028 #include "face.h"
00029 #include "control.h"
00030
00035 class Primitive
00036 {
00037 private:
00038         MyStack<FaceNode *> stack;
00039         FaceNode * AddBox (char *name,int idControl,BOOL isDynamic,GLdouble *depth,BOOL viewBack);
00040         void GetCornersRecursive(FaceNode *faceNode,BOOL isObjective,Point3D<double> *points);
00041
00042 public:
00043         MyTree<Face> tree;
00044
00045         Primitive();
00046         ~Primitive();
00047         void Push();
00048         void Pop();
00049         FaceNode * Peek();
00050
00051         FaceNode * GoTo(int childNumber);
00052         FaceNode * GoTo(FaceNode *node);
00053         FaceNode * GoToParent();
00054
00055         void ViewDebug(FaceNode *node=NULL);
00056         BOOL Draw(BOOL isPicking);
00057         BOOL Draw(FaceNode *node,BOOL isPicking);
00058         FaceNode * Find(int idControl,int idFace,FaceNode *node=NULL);
00059         void BeginContainer(int idControl,double xConstCenter,double xPercentCenter,double yConstCenter,double yPercentCenter,double xConstSize,double xPercentSize,double yConstSize,double yPercentSize); // debut du conteneur
00060         void EndContainer(); // fin du conteneur
00061         FaceNode * AddFace (char *name,int idControl,int idFace,BOOL view);
00062         FaceNode * AddFace (char *name,int idControl,int idFace,BOOL view,double xConstCenter,double xPercentCenter,double yConstCenter,double yPercentCenter,double zConstCenter,double xConstSize,double xPercentSize,double yConstSize,double yPercentSize);
00063         FaceNode * AddBox (char *name,int idControl,GLdouble depth,BOOL viewBack);   // creation avec depth static
00064         FaceNode * AddBox (char *name,int idControl,GLdouble *depth,BOOL viewBack);  // creation avec depth dynamic
00065         Point2D<double> GetLocalPos(FaceNode *faceNode,Point2D<double> absolutePos);
00066         void GetCorners(FaceNode *faceNode,Point3D<double> *points);
00067         void ComputeLayout(FaceNode *faceNode);
00068         BOOL ReOrderForBlending(FaceNode *faceNode);
00069         void ReOrderForBlending();
00070
00071
00072 };
00073
00074 #endif
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: recorder.cpp File Reference

recorder.cpp File Reference

#include "3d.h"
#include "recorder.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: recorder.cpp Source File

recorder.cpp

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00019 #include "3d.h"
00020 #include "recorder.h"
00021
00022 Recorder::Recorder()
00023 {
00024         Zero();
00025 }
00026
00027 void Recorder::Zero()
00028 {
00029         id=0;
00030 }
00031
00032 Recorder::~Recorder()
00033 {
00034         Delete();
00035 }
00036
00037 void Recorder::operator=(Recorder &src)
00038 {
00039         id=src.id;
00040 }
00041
00042 BOOL Recorder::BeginRecord(BOOL andExecute)
00043 {
00044         Delete();
00045         id = glGenLists(1);
00046         if (!id) return FALSE;
00047         glNewList(id,andExecute?GL_COMPILE_AND_EXECUTE:GL_COMPILE);
00048         return TRUE;
00049 }
00050
00051 void Recorder::EndRecord()
00052 {
00053         glEndList();
00054 }
00055
00056 void Recorder::Play()
00057 {
00058         glCallList(id);
00059 }
00060
00061 BOOL Recorder::Delete()
00062 {
00063         if (!id) return FALSE;
00064         glDeleteLists(id,1);
00065         Zero();
00066         return TRUE;
00067 }
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: recorder.h File Reference

recorder.h File Reference

Gestion de suvegarde des liste openGL. More...

Go to the source code of this file.

Classes

class Recorder

Detailed Description

Gestion de suvegarde des liste openGL.

Definition in file recorder.h.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: recorder.h Source File

recorder.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_RECORDER_H
00024 #define INCLUDE_3D_RECORDER_H
00025
00026 class Recorder
00027 {
00028 private:
00029         int id;
00030
00031 public:
00032         Recorder();
00033         ~Recorder();
00034         void Zero();
00035         void operator=(Recorder &src);
00036         BOOL BeginRecord(BOOL andExecute);
00037         void EndRecord();
00038         void Play();
00039         BOOL Delete();
00040 };
00041
00042 #endif
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: region.cpp File Reference

region.cpp File Reference

#include "3d.h"
#include "region.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: region.cpp Source File

region.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "region.h"
00021
00022 Region::Region()
00023 {
00024         enable = FALSE;
00025         computeMinMax = FALSE;
00026         Reset();
00027 }
00028
00029 void Region::Reset(int deltaXwin,int deltaYwin)
00030 {
00031         points.i.SuprAll();
00032         xMin=deltaXwin;
00033         yMin=deltaYwin;
00034         zMin=10000;
00035         xMax=0;
00036         yMax=0;
00037         zMax=0;
00038         nbOr = 0;
00039         hRgnBase = NULL;
00040 }
00041
00042 BOOL Region::Use(HWND hWnd)
00043 {
00044         if (!enable) return FALSE;
00045
00046         // creation du tableau de points
00047         int nbPt = points.GetNbElem();
00048         int nbElem = nbPt/4;
00049         POINT *tabPoints = new POINT[nbPt+4]; // a voir: +4 sinon pb je sais pas pkoi!
00050         if (!tabPoints) return FALSE;
00051         POINT *ptrPoint = tabPoints;
00052         for (points.i=0;points.i.More();points.i++)
00053         {
00054                 Point3D<double> *pt = points.i();
00055                 ptrPoint->x=(LONG)pt->x;
00056                 ptrPoint->y=(LONG)pt->y;
00057                 ptrPoint++;
00058         }
00059         // creation de la liste de taille des polygones
00060         int     *tabPoly = new int[nbElem];
00061         if (!tabPoly)
00062         {
00063                 delete tabPoints;
00064                 return FALSE;
00065         }
00066         for (int i=0;i<nbElem;i++) tabPoly[i]=4;
00067
00068         // normalisation des points
00069         ptrPoint = tabPoints-4;
00070         for (int i=0;i<nbElem;i++) NormalizeSens(ptrPoint+=4,4);
00071
00072         // calcul des mins maxs
00073         if (computeMinMax)
00074         {
00075                 ptrPoint = tabPoints-4;
00076                 for (int i=0;i<nbElem;i++) SetMinMax(ptrPoint+=4,4);
00077         }
00078
00079         // creation de la region
00080         hRgnBase = CreatePolyPolygonRgn(tabPoints,tabPoly,nbElem,WINDING);
00081         //hRgnBase = CreateRectRgn(xMin,yMin,xMax,yMax);
00082         if (!hRgnBase)
00083         {
00084                 delete []tabPoints;
00085                 delete []tabPoly;
00086                 return FALSE;
00087         }
00088         SetWindowRgn(hWnd,hRgnBase,TRUE);
00089         delete []tabPoints;
00090         delete []tabPoly;
00091         DeleteObject(hRgnBase);
00092         return TRUE;
00093 }
00094
00095 void Region::NormalizeSens(POINT *tabPoints,int nbPt)
00096 {
00097         // determination du sens de rotation (3 points suffisent)
00098         BOOL sensTrigo = GetTrigoSens(tabPoints);
00099         // si sens non trigonometrique change les points de sens sinon CreatePolyPolygonRgn fait un NON OR
00100         if (!sensTrigo) ChangeTrigoSens(tabPoints,nbPt);
00101 }
00102
00103 void Region::SetMinMax(POINT *tabPoints,int nbPt)
00104 {
00105         for (int i=0;i<nbPt;i++)
00106         {
00107                 xMin = min(xMin,tabPoints->x);
00108                 xMax = max(xMax,tabPoints->x);
00109                 yMin = min(yMin,tabPoints->y);
00110                 yMax = max(yMax,tabPoints->y);
00111                 tabPoints++;
00112         }
00113 }
00114
00115 BOOL Region::AddElem(Point2D<GLdouble> pos,GLdouble *modelMatrix,GLdouble *projMatrix,GLint *viewPort)
00116 {
00117         Point3D<double> *pt = points.i.AddNewLast();
00118         return Compute(pos,modelMatrix,projMatrix,viewPort,pt);
00119         return TRUE;
00120 }
00121
00122 BOOL Region::Compute(Point2D<GLdouble> pos,GLdouble *modelMatrix,GLdouble *projMatrix,GLint *viewPort,Point3D<double> *pt)
00123 {
00124         gluProject(pos.x,pos.y,0,modelMatrix,projMatrix,viewPort,&pt->x,&pt->y,&pt->z);
00125         pt->y=viewPort[3]-pt->y;
00126         return TRUE;
00127 }
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: region.h File Reference

region.h File Reference

Gestion des region de Windows. More...

#include "trigo.h"
#include <gl/gl.h>
#include "myList.h"

Go to the source code of this file.

Classes

class | Region
Gestion des region windows. More...

Typedefs

typedef Point3D< double > | Pt_3D_Double

Detailed Description

Gestion des region de Windows.

Definition in file region.h.

Typedef Documentation

typedef Point3D<double> Pt_3D_Double

Definition at line 30 of file region.h.

Generated on Fri Aug 20 19:20:36 2004 for 3d Controls by doxygen 1.3.6


3d Controls: region.h Source File

region.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_REGION_H
00024 #define INCLUDE_REGION_H
00025
00026 #include "trigo.h"
00027 #include <gl/gl.h>                   // Header for OpenGL32 Lib
00028 #include "myList.h"
00029
00030 typedef Point3D<double> Pt_3D_Double;
00031
00038 class Region
00039 {
00040 public:
00041         BOOL    enable;
00042         BOOL    computeMinMax;
00043         MyList<Pt_3D_Double> points;
00044         int             xMin,xMax; // boite englogante 2d de l'univers 3d
00045         int             yMin,yMax;
00046         int             zMin,zMax;
00047         int             nbOr; // nb Or de region
00048         HRGN    hRgnBase;
00049
00050 public:
00051         Region();
00052         void Reset(int deltaXwin=0,int deltaYwin=0);
00053         BOOL Use(HWND hWnd);
00054         void NormalizeSens(POINT *tabPoints,int nbPt);
00055         void SetMinMax(POINT *tabPoints,int nbPt);
00056         BOOL AddElem(Point2D<GLdouble> pos,GLdouble *modelMatrix,GLdouble *projMatrix,GLint *viewPort);
00057         BOOL Compute(Point2D<GLdouble> pos,GLdouble *modelMatrix,GLdouble *projMatrix,GLint *viewPort,Point3D<double> *pt);
00058
00059 };
00060
00061 #endif
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: resource.h File Reference

resource.h File Reference

Go to the source code of this file.

Defines

#define | IDC_MYICON 2
#define | IDC_BUTTON_DEBASE 2
#define | IDC_BUTTON_DEFAULT 3
#define | IDC_BUTTON_LEFT 4
#define | IDC_BUTTON_RIGHT 5
#define | IDC_BUTTON_CENTER 6
#define | IDC_BUTTON_DOWN 7
#define | IDC_BUTTON_RLEFT 8
#define | IDC_BUTTON_RRIGHT 9
#define | IDC_BUTTON_ZOOM_OUT 10
#define | IDC_BUTTON_ZOOM_IN 11
#define | IDC_BUTTON_FOG_START_ADD 12
#define | IDC_BUTTON_FOG_START_SUB 13
#define | IDC_BUTTON_FOG_STOP_ADD 14
#define | IDC_BUTTON_FOG_STOP_SUB 15
#define | IDC_BUTTON_FOG_DENSITY_ADD 16
#define | IDC_BUTTON_FOG_DENSITY_SUB 17
#define | IDC_BUTTON_TEXTURE 18
#define | IDD_DCONTROLS_DIALOG 102
#define | IDS_APP_TITLE 103
#define | IDD_ABOUTBOX 103
#define | IDM_ABOUT 104
#define | IDD_PARAMETRE 104
#define | IDM_EXIT 105
#define | IDI_DCONTROLS 107
#define | IDC_DCONTROLS 109
#define | IDC_MENU 109
#define | IDR_MAINFRAME 128
#define | IDD_DEBUG_STRUCT 129
#define | IDD_VALUE_EDITOR 130
#define | IDD_ABOUT 133
#define | IDD_CONFIG 134
#define | IDI_ICON_SYSTRAY 135
#define | IDC_STATIC_INFO2 1000
#define | IDC_STATIC_INFO3 1001
#define | IDC_CHECK_LIGHT0 1002
#define | IDC_CHECK_LIGHT1 1003
#define | IDC_CHECK_LIGHT2 1004
#define | IDC_STATIC_INFO10 1005
#define | IDC_CHECK_LIGHT0_MOVE 1006
#define | IDC_CHECK_LIGHT1_MOVE 1007
#define | IDC_CHECK_LIGHT2_MOVE 1008
#define | IDC_STATIC_INFO11 1009
#define | IDC_STATIC_INFO12 1010
#define | IDC_STATIC_INFO13 1011
#define | IDC_STATIC_FOG_START 1012
#define | IDC_STATIC_FOG 1012
#define | IDC_STATIC_FOG_STOP 1013
#define | IDC_STATIC_FOG_DENSITY 1014
#define | IDC_CHECK_FOG 1015
#define | IDC_STATIC_INFO14 1016
#define | IDC_CHECK_BACKGROUND 1016
#define | IDC_CHECK_VIEW_BACKGROUND 1016
#define | IDC_CHECK_BLENDING 1017
#define | IDC_CHECK_FPS 1017
#define | IDC_CHECK_VIEW_FPS 1017
#define | IDC_CHECK_LIGHT 1018
#define | IDC_CHECK_REPERE 1019
#define | IDC_CHECK_LIGHT_VIEW 1020
#define | IDC_STATIC_INFO15 1021
#define | IDC_CHECK_PICKING 1022
#define | IDC_CHECK_FACE 1023
#define | IDC_CHECK_VIEW_INERTIA 1023
#define | IDC_STATIC_NAME 1024
#define | IDC_STATIC_INFO16 1024
#define | IDC_CHECK_DELTA 1025
#define | IDC_STATIC_INFO17 1025
#define | IDC_STATIC_INFO4 1026
#define | IDC_CHECK_TITLED 1026
#define | IDC_STATIC_INFO5 1027
#define | IDC_CHECK_REGION 1027
#define | IDC_CHECK_VIEW_REGION 1027
#define | IDC_TREE_ELEM 1028
#define | IDC_STATIC_INFO18 1028
#define | IDC_CHECK_A_R 1029
#define | IDC_TREE_STRUCT 1029
#define | IDC_STATIC_INFO19 1029
#define | IDC_CHECK_A_G 1030
#define | IDC_STATIC_STRUCTURE 1030
#define | IDC_CHECK_INERTIA 1030
#define | IDC_CHECK_A_B 1031
#define | IDC_EDIT_VALUE 1031
#define | IDC_CHECK_MONITOR 1031
#define | IDC_CHECK_A_A 1032
#define | IDC_STATIC_VARIABLE 1032
#define | IDC_CHECK_AMBIENT 1033
#define | IDC_STATIC_PAD 1033
#define | IDC_CHECK_DIFFUSE 1034
#define | IDC_BUTTON_MIN 1034
#define | IDC_CHECK_SPECULAR 1035
#define | IDC_STATIC2 1035
#define | IDC_CHECK_EMISSION 1036
#define | IDC_COMBO_SPECIALS 1036
#define | IDC_CHECK_D_R 1037
#define | IDC_BUTTON_MAX 1037
#define | IDC_CHECK_D_G 1038
#define | IDC_BUTTON_MIDS 1038
#define | IDC_CHECK_D_B 1039
#define | IDC_BUTTON_MOVE 1039
#define | IDC_CHECK_D_A 1040
#define | IDC_SLIDER1 1040
#define | IDC_SLIDER_PAD 1040
#define | IDC_CHECK_S_R 1041
#define | IDC_BUTTON_MAILME 1041
#define | IDC_CHECK_S_G 1042
#define | IDC_BUTTON_URL 1042
#define | IDC_CHECK_S_B 1043
#define | IDC_BUTTON_LICENCE 1043
#define | IDC_CHECK_S_A 1044
#define | IDC_BUTTON_FORUM 1044
#define | IDC_CHECK_E_R 1045
#define | IDC_COMBO_POLYGONE_FRONT 1045
#define | IDC_CHECK_E_G 1046
#define | IDC_COMBO_POLYGONE_BACK 1046
#define | IDC_CHECK_E_B 1047
#define | IDC_RICHEDIT_XWIN 1047
#define | IDC_RICHEDIT_XSIZE 1047
#define | IDC_CHECK_E_A 1048
#define | IDC_RICHEDIT_YWIN 1048
#define | IDC_RICHEDIT_YSIZE 1048
#define | IDC_RADIO_FULLSCREEN 1049
#define | IDC_RADIO_CUSTOMSCREEN 1050
#define | IDC_RICHEDIT_FOG_START 1051
#define | IDC_RICHEDIT_FOG_END 1052
#define | IDC_RADIO_CONTROLS_MODE 1052
#define | IDC_RICHEDIT_FOG_DENSITY 1053
#define | IDC_COMBO_FOG_MODE 1054
#define | IDC_STATIC_PICKING_FULL 1055
#define | IDC_STATIC_PICKING_SELECTED 1056
#define | IDC_SPIN_FOG_START 1057
#define | IDC_SPIN_FOG_END 1058
#define | IDC_SPIN_FOG_DENSITY 1059
#define | IDC_SPIN_XSIZE 1060
#define | IDC_SPIN_YSIZE 1061
#define | IDC_RICHEDIT_FRAMERATE 1062
#define | IDC_SPIN_FRAMERATE 1063
#define | IDC_RICHEDIT_CPU 1064
#define | IDC_SPIN_CPU 1065
#define | IDC_CHECK_VIEW_REPERE 1066
#define | IDC_CHECK_VIEW_LIGHT 1067
#define | IDC_STATIC_PICKING_SELECTED2 1068
#define | IDC_STATIC_PICKING_SELECTED_TITLE 1068
#define | IDC_STATIC_VERSION 1068
#define | IDC_RADIO_FACEMODE 1070
#define | IDC_RADIO_FACE_MODE 1070
#define | ID_POPUP_HELP 32778
#define | ID_POPUP_ABOUT 32779
#define | ID_POPUP_DEBUGER 32781
#define | ID_POPUP_EXIT 32782
#define | ID_POPUP_CONFIG 32784
#define | IDC_STATIC -1
#define | IDC_STATIC_INFO -1
#define | IDC_STATIC_INFO1 -1
#define | IDC_STATIC_VALUE -1
#define | IDC_STATIC1 -1

Define Documentation

#define ID_POPUP_ABOUT 32779

Definition at line 151 of file resource.h.

Referenced by SysTrayProc().

#define ID_POPUP_CONFIG 32784

Definition at line 154 of file resource.h.

Referenced by SysTrayProc().

#define ID_POPUP_DEBUGER 32781

Definition at line 152 of file resource.h.

Referenced by SysTrayProc().

#define ID_POPUP_EXIT 32782

Definition at line 153 of file resource.h.

Referenced by SysTrayProc().

#define ID_POPUP_HELP 32778

Definition at line 150 of file resource.h.

Referenced by SysTrayProc().

#define IDC_BUTTON_CENTER 6

Definition at line 10 of file resource.h.

#define IDC_BUTTON_DEBASE 2

Definition at line 6 of file resource.h.

#define IDC_BUTTON_DEFAULT 3

Definition at line 7 of file resource.h.

Referenced by ConfigProc().

#define IDC_BUTTON_DOWN 7

Definition at line 11 of file resource.h.

#define IDC_BUTTON_FOG_DENSITY_ADD 16

Definition at line 20 of file resource.h.

#define IDC_BUTTON_FOG_DENSITY_SUB 17

Definition at line 21 of file resource.h.

#define IDC_BUTTON_FOG_START_ADD 12

Definition at line 16 of file resource.h.

#define IDC_BUTTON_FOG_START_SUB 13

Definition at line 17 of file resource.h.

#define IDC_BUTTON_FOG_STOP_ADD 14

Definition at line 18 of file resource.h.

#define IDC_BUTTON_FOG_STOP_SUB 15

Definition at line 19 of file resource.h.

#define IDC_BUTTON_FORUM 1044

Definition at line 114 of file resource.h.

Referenced by AboutProc().

#define IDC_BUTTON_LEFT 4

Definition at line 8 of file resource.h.

#define IDC_BUTTON_LICENCE 1043

Definition at line 112 of file resource.h.

Referenced by AboutProc().

#define IDC_BUTTON_MAILME 1041

Definition at line 108 of file resource.h.

Referenced by AboutProc().

#define IDC_BUTTON_MAX 1037

Definition at line 99 of file resource.h.

Referenced by ValueEditor< T >::MAJ(), and ValueEditorProc().

#define IDC_BUTTON_MIDS 1038

Definition at line 101 of file resource.h.

Referenced by ValueEditor< T >::MAJ(), and ValueEditorProc().

#define IDC_BUTTON_MIN 1034

Definition at line 93 of file resource.h.

Referenced by ValueEditor< T >::MAJ(), and ValueEditorProc().

#define IDC_BUTTON_MOVE 1039

Definition at line 103 of file resource.h.

Referenced by ValueEditorProc().

#define IDC_BUTTON_RIGHT 5

Definition at line 9 of file resource.h.

#define IDC_BUTTON_RLEFT 8

Definition at line 12 of file resource.h.

#define IDC_BUTTON_RRIGHT 9

Definition at line 13 of file resource.h.

#define IDC_BUTTON_TEXTURE 18

Definition at line 22 of file resource.h.

#define IDC_BUTTON_URL 1042

Definition at line 110 of file resource.h.

Referenced by AboutProc().

#define IDC_BUTTON_ZOOM_IN 11

Definition at line 15 of file resource.h.

#define IDC_BUTTON_ZOOM_OUT 10

Definition at line 14 of file resource.h.

#define IDC_CHECK_A_A 1032

Definition at line 88 of file resource.h.

#define IDC_CHECK_A_B 1031

Definition at line 85 of file resource.h.

#define IDC_CHECK_A_G 1030

Definition at line 82 of file resource.h.

#define IDC_CHECK_A_R 1029

Definition at line 79 of file resource.h.

#define IDC_CHECK_AMBIENT 1033

Definition at line 90 of file resource.h.

#define IDC_CHECK_BACKGROUND 1016

Definition at line 56 of file resource.h.

#define IDC_CHECK_BLENDING 1017

Definition at line 58 of file resource.h.

#define IDC_CHECK_D_A 1040

Definition at line 104 of file resource.h.

#define IDC_CHECK_D_B 1039

Definition at line 102 of file resource.h.

#define IDC_CHECK_D_G 1038

Definition at line 100 of file resource.h.

#define IDC_CHECK_D_R 1037

Definition at line 98 of file resource.h.

#define IDC_CHECK_DELTA 1025

Definition at line 70 of file resource.h.

#define IDC_CHECK_DIFFUSE 1034

Definition at line 92 of file resource.h.

#define IDC_CHECK_E_A 1048

Definition at line 122 of file resource.h.

#define IDC_CHECK_E_B 1047

Definition at line 119 of file resource.h.

#define IDC_CHECK_E_G 1046

Definition at line 117 of file resource.h.

#define IDC_CHECK_E_R 1045

Definition at line 115 of file resource.h.

#define IDC_CHECK_EMISSION 1036

Definition at line 96 of file resource.h.

#define IDC_CHECK_FACE 1023

Definition at line 66 of file resource.h.

#define IDC_CHECK_FOG 1015

Definition at line 54 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_FPS 1017

Definition at line 59 of file resource.h.

#define IDC_CHECK_INERTIA 1030

Definition at line 84 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_LIGHT 1018

Definition at line 61 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_LIGHT0 1002

Definition at line 40 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_LIGHT0_MOVE 1006

Definition at line 44 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_LIGHT1 1003

Definition at line 41 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_LIGHT1_MOVE 1007

Definition at line 45 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_LIGHT2 1004

Definition at line 42 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_LIGHT2_MOVE 1008

Definition at line 46 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_LIGHT_VIEW 1020

Definition at line 63 of file resource.h.

#define IDC_CHECK_MONITOR 1031

Definition at line 87 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_PICKING 1022

Definition at line 65 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_REGION 1027

Definition at line 75 of file resource.h.

#define IDC_CHECK_REPERE 1019

Definition at line 62 of file resource.h.

#define IDC_CHECK_S_A 1044

Definition at line 113 of file resource.h.

#define IDC_CHECK_S_B 1043

Definition at line 111 of file resource.h.

#define IDC_CHECK_S_G 1042

Definition at line 109 of file resource.h.

#define IDC_CHECK_S_R 1041

Definition at line 107 of file resource.h.

#define IDC_CHECK_SPECULAR 1035

Definition at line 94 of file resource.h.

#define IDC_CHECK_TITLED 1026

Definition at line 73 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_VIEW_BACKGROUND 1016

Definition at line 57 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_VIEW_FPS 1017

Definition at line 60 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_VIEW_INERTIA 1023

Definition at line 67 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_VIEW_LIGHT 1067

Definition at line 144 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_VIEW_REGION 1027

Definition at line 76 of file resource.h.

Referenced by ConfigProc().

#define IDC_CHECK_VIEW_REPERE 1066

Definition at line 143 of file resource.h.

Referenced by ConfigProc().

#define IDC_COMBO_FOG_MODE 1054

Definition at line 131 of file resource.h.

Referenced by ConfigProc().

#define IDC_COMBO_POLYGONE_BACK 1046

Definition at line 118 of file resource.h.

Referenced by ConfigProc().

#define IDC_COMBO_POLYGONE_FRONT 1045

Definition at line 116 of file resource.h.

Referenced by ConfigProc().

#define IDC_COMBO_SPECIALS 1036

Definition at line 97 of file resource.h.

Referenced by ValueEditor< T >::MAJ_Specials(), and ValueEditorProc().

#define IDC_DCONTROLS 109

Definition at line 30 of file resource.h.

#define IDC_EDIT_VALUE 1031

Definition at line 86 of file resource.h.

Referenced by ValueEditor< T >::Get_Value(), ValueEditor< T >::MAJ(), ValueEditor< T >::MAJ_Value(), and ValueEditorProc().

#define IDC_MENU 109

Definition at line 31 of file resource.h.

Referenced by SysTrayProc().

#define IDC_MYICON 2

Definition at line 5 of file resource.h.

#define IDC_RADIO_CONTROLS_MODE 1052

Definition at line 129 of file resource.h.

Referenced by DebugStructProc().

#define IDC_RADIO_CUSTOMSCREEN 1050

Definition at line 126 of file resource.h.

Referenced by ConfigProc().

#define IDC_RADIO_FACE_MODE 1070

Definition at line 149 of file resource.h.

Referenced by DebugStructProc().

#define IDC_RADIO_FACEMODE 1070

Definition at line 148 of file resource.h.

Referenced by DebugStructProc().

#define IDC_RADIO_FULLSCREEN 1049

Definition at line 125 of file resource.h.

Referenced by ConfigProc().

#define IDC_RICHEDIT_CPU 1064

Definition at line 141 of file resource.h.

Referenced by ConfigProc().

#define IDC_RICHEDIT_FOG_DENSITY 1053

Definition at line 130 of file resource.h.

Referenced by ConfigProc().

#define IDC_RICHEDIT_FOG_END 1052

Definition at line 128 of file resource.h.

Referenced by ConfigProc().

#define IDC_RICHEDIT_FOG_START 1051

Definition at line 127 of file resource.h.

Referenced by ConfigProc().

#define IDC_RICHEDIT_FRAMERATE 1062

Definition at line 139 of file resource.h.

Referenced by ConfigProc().

#define IDC_RICHEDIT_XSIZE 1047

Definition at line 121 of file resource.h.

Referenced by ConfigProc().

#define IDC_RICHEDIT_XWIN 1047

Definition at line 120 of file resource.h.

#define IDC_RICHEDIT_YSIZE 1048

Definition at line 124 of file resource.h.

Referenced by ConfigProc().

#define IDC_RICHEDIT_YWIN 1048

Definition at line 123 of file resource.h.

#define IDC_SLIDER1 1040

Definition at line 105 of file resource.h.

#define IDC_SLIDER_PAD 1040

Definition at line 106 of file resource.h.

Referenced by ValueEditor< T >::MAJ_Slider(), and ValueEditorProc().

#define IDC_SPIN_CPU 1065

Definition at line 142 of file resource.h.

Referenced by ConfigProc().

#define IDC_SPIN_FOG_DENSITY 1059

Definition at line 136 of file resource.h.

Referenced by ConfigProc().

#define IDC_SPIN_FOG_END 1058

Definition at line 135 of file resource.h.

Referenced by ConfigProc().

#define IDC_SPIN_FOG_START 1057

Definition at line 134 of file resource.h.

Referenced by ConfigProc().

#define IDC_SPIN_FRAMERATE 1063

Definition at line 140 of file resource.h.

Referenced by ConfigProc().

#define IDC_SPIN_XSIZE 1060

Definition at line 137 of file resource.h.

Referenced by ConfigProc().

#define IDC_SPIN_YSIZE 1061

Definition at line 138 of file resource.h.

Referenced by ConfigProc().

#define IDC_STATIC -1

Definition at line 155 of file resource.h.

#define IDC_STATIC1 -1

Definition at line 159 of file resource.h.

Referenced by ValueEditor< T >::MAJ(), and ValueEditorProc().

#define IDC_STATIC2 1035

Definition at line 95 of file resource.h.

Referenced by ValueEditorProc().

#define IDC_STATIC_FOG 1012

Definition at line 51 of file resource.h.

#define IDC_STATIC_FOG_DENSITY 1014

Definition at line 53 of file resource.h.

#define IDC_STATIC_FOG_START 1012

Definition at line 50 of file resource.h.

#define IDC_STATIC_FOG_STOP 1013

Definition at line 52 of file resource.h.

#define IDC_STATIC_INFO -1

Definition at line 156 of file resource.h.

#define IDC_STATIC_INFO1 -1

Definition at line 157 of file resource.h.

#define IDC_STATIC_INFO10 1005

Definition at line 43 of file resource.h.

#define IDC_STATIC_INFO11 1009

Definition at line 47 of file resource.h.

#define IDC_STATIC_INFO12 1010

Definition at line 48 of file resource.h.

#define IDC_STATIC_INFO13 1011

Definition at line 49 of file resource.h.

#define IDC_STATIC_INFO14 1016

Definition at line 55 of file resource.h.

#define IDC_STATIC_INFO15 1021

Definition at line 64 of file resource.h.

#define IDC_STATIC_INFO16 1024

Definition at line 69 of file resource.h.

#define IDC_STATIC_INFO17 1025

Definition at line 71 of file resource.h.

#define IDC_STATIC_INFO18 1028

Definition at line 78 of file resource.h.

#define IDC_STATIC_INFO19 1029

Definition at line 81 of file resource.h.

#define IDC_STATIC_INFO2 1000

Definition at line 38 of file resource.h.

#define IDC_STATIC_INFO3 1001

Definition at line 39 of file resource.h.

#define IDC_STATIC_INFO4 1026

Definition at line 72 of file resource.h.

#define IDC_STATIC_INFO5 1027

Definition at line 74 of file resource.h.

#define IDC_STATIC_NAME 1024

Definition at line 68 of file resource.h.

#define IDC_STATIC_PAD 1033

Definition at line 91 of file resource.h.

#define IDC_STATIC_PICKING_FULL 1055

Definition at line 132 of file resource.h.

Referenced by Picking::Test().

#define IDC_STATIC_PICKING_SELECTED 1056

Definition at line 133 of file resource.h.

Referenced by Picking::Test().

#define IDC_STATIC_PICKING_SELECTED2 1068

Definition at line 145 of file resource.h.

#define IDC_STATIC_PICKING_SELECTED_TITLE 1068

Definition at line 146 of file resource.h.

Referenced by Picking::Test().

#define IDC_STATIC_STRUCTURE 1030

Definition at line 83 of file resource.h.

#define IDC_STATIC_VALUE -1

Definition at line 158 of file resource.h.

#define IDC_STATIC_VARIABLE 1032

Definition at line 89 of file resource.h.

Referenced by ValueEditor< T >::MAJ(), and ValueEditorProc().

#define IDC_STATIC_VERSION 1068

Definition at line 147 of file resource.h.

Referenced by AboutProc().

#define IDC_TREE_ELEM 1028

Definition at line 77 of file resource.h.

Referenced by DebugStructProc(), and ValueEditor< T >::MAJ_TreeItem().

#define IDC_TREE_STRUCT 1029

Definition at line 80 of file resource.h.

Referenced by DebugStructProc().

#define IDD_ABOUT 133

Definition at line 35 of file resource.h.

Referenced by SysTrayProc().

#define IDD_ABOUTBOX 103

Definition at line 25 of file resource.h.

#define IDD_CONFIG 134

Definition at line 36 of file resource.h.

Referenced by SysTrayProc().

#define IDD_DCONTROLS_DIALOG 102

Definition at line 23 of file resource.h.

#define IDD_DEBUG_STRUCT 129

Definition at line 33 of file resource.h.

Referenced by Univers::OnKeyDown(), and SysTrayProc().

#define IDD_PARAMETRE 104

Definition at line 27 of file resource.h.

#define IDD_VALUE_EDITOR 130

Definition at line 34 of file resource.h.

Referenced by DebugStructProc().

#define IDI_DCONTROLS 107

Definition at line 29 of file resource.h.

Referenced by ControlEngine::ScreenShot(), and ControlEngine::Start().

#define IDI_ICON_SYSTRAY 135

Definition at line 37 of file resource.h.

Referenced by ControlEngine::Start(), and SysTrayProc().

#define IDM_ABOUT 104

Definition at line 26 of file resource.h.

#define IDM_EXIT 105

Definition at line 28 of file resource.h.

#define IDR_MAINFRAME 128

Definition at line 32 of file resource.h.

#define IDS_APP_TITLE 103

Definition at line 24 of file resource.h.

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: resource.h Source File

resource.h

Go to the documentation of this file.
00001 //{{NO_DEPENDENCIES}}
00002 // Microsoft Visual C++ generated include file.
00003 // Used by 3dcontrols.rc
00004 //
00005 #define IDC_MYICON                      2
00006 #define IDC_BUTTON_DEBASE               2
00007 #define IDC_BUTTON_DEFAULT              3
00008 #define IDC_BUTTON_LEFT                 4
00009 #define IDC_BUTTON_RIGHT                5
00010 #define IDC_BUTTON_CENTER               6
00011 #define IDC_BUTTON_DOWN                 7
00012 #define IDC_BUTTON_RLEFT                8
00013 #define IDC_BUTTON_RRIGHT               9
00014 #define IDC_BUTTON_ZOOM_OUT             10
00015 #define IDC_BUTTON_ZOOM_IN              11
00016 #define IDC_BUTTON_FOG_START_ADD        12
00017 #define IDC_BUTTON_FOG_START_SUB        13
00018 #define IDC_BUTTON_FOG_STOP_ADD         14
00019 #define IDC_BUTTON_FOG_STOP_SUB         15
00020 #define IDC_BUTTON_FOG_DENSITY_ADD      16
00021 #define IDC_BUTTON_FOG_DENSITY_SUB      17
00022 #define IDC_BUTTON_TEXTURE              18
00023 #define IDD_DCONTROLS_DIALOG            102
00024 #define IDS_APP_TITLE                   103
00025 #define IDD_ABOUTBOX                    103
00026 #define IDM_ABOUT                       104
00027 #define IDD_PARAMETRE                   104
00028 #define IDM_EXIT                        105
00029 #define IDI_DCONTROLS                   107
00030 #define IDC_DCONTROLS                   109
00031 #define IDC_MENU                        109
00032 #define IDR_MAINFRAME                   128
00033 #define IDD_DEBUG_STRUCT                129
00034 #define IDD_VALUE_EDITOR                130
00035 #define IDD_ABOUT                       133
00036 #define IDD_CONFIG                      134
00037 #define IDI_ICON_SYSTRAY                135
00038 #define IDC_STATIC_INFO2                1000
00039 #define IDC_STATIC_INFO3                1001
00040 #define IDC_CHECK_LIGHT0                1002
00041 #define IDC_CHECK_LIGHT1                1003
00042 #define IDC_CHECK_LIGHT2                1004
00043 #define IDC_STATIC_INFO10               1005
00044 #define IDC_CHECK_LIGHT0_MOVE           1006
00045 #define IDC_CHECK_LIGHT1_MOVE           1007
00046 #define IDC_CHECK_LIGHT2_MOVE           1008
00047 #define IDC_STATIC_INFO11               1009
00048 #define IDC_STATIC_INFO12               1010
00049 #define IDC_STATIC_INFO13               1011
00050 #define IDC_STATIC_FOG_START            1012
00051 #define IDC_STATIC_FOG                  1012
00052 #define IDC_STATIC_FOG_STOP             1013
00053 #define IDC_STATIC_FOG_DENSITY          1014
00054 #define IDC_CHECK_FOG                   1015
00055 #define IDC_STATIC_INFO14               1016
00056 #define IDC_CHECK_BACKGROUND            1016
00057 #define IDC_CHECK_VIEW_BACKGROUND       1016
00058 #define IDC_CHECK_BLENDING              1017
00059 #define IDC_CHECK_FPS                   1017
00060 #define IDC_CHECK_VIEW_FPS              1017
00061 #define IDC_CHECK_LIGHT                 1018
00062 #define IDC_CHECK_REPERE                1019
00063 #define IDC_CHECK_LIGHT_VIEW            1020
00064 #define IDC_STATIC_INFO15               1021
00065 #define IDC_CHECK_PICKING               1022
00066 #define IDC_CHECK_FACE                  1023
00067 #define IDC_CHECK_VIEW_INERTIA          1023
00068 #define IDC_STATIC_NAME                 1024
00069 #define IDC_STATIC_INFO16               1024
00070 #define IDC_CHECK_DELTA                 1025
00071 #define IDC_STATIC_INFO17               1025
00072 #define IDC_STATIC_INFO4                1026
00073 #define IDC_CHECK_TITLED                1026
00074 #define IDC_STATIC_INFO5                1027
00075 #define IDC_CHECK_REGION                1027
00076 #define IDC_CHECK_VIEW_REGION           1027
00077 #define IDC_TREE_ELEM                   1028
00078 #define IDC_STATIC_INFO18               1028
00079 #define IDC_CHECK_A_R                   1029
00080 #define IDC_TREE_STRUCT                 1029
00081 #define IDC_STATIC_INFO19               1029
00082 #define IDC_CHECK_A_G                   1030
00083 #define IDC_STATIC_STRUCTURE            1030
00084 #define IDC_CHECK_INERTIA               1030
00085 #define IDC_CHECK_A_B                   1031
00086 #define IDC_EDIT_VALUE                  1031
00087 #define IDC_CHECK_MONITOR               1031
00088 #define IDC_CHECK_A_A                   1032
00089 #define IDC_STATIC_VARIABLE             1032
00090 #define IDC_CHECK_AMBIENT               1033
00091 #define IDC_STATIC_PAD                  1033
00092 #define IDC_CHECK_DIFFUSE               1034
00093 #define IDC_BUTTON_MIN                  1034
00094 #define IDC_CHECK_SPECULAR              1035
00095 #define IDC_STATIC2                     1035
00096 #define IDC_CHECK_EMISSION              1036
00097 #define IDC_COMBO_SPECIALS              1036
00098 #define IDC_CHECK_D_R                   1037
00099 #define IDC_BUTTON_MAX                  1037
00100 #define IDC_CHECK_D_G                   1038
00101 #define IDC_BUTTON_MIDS                 1038
00102 #define IDC_CHECK_D_B                   1039
00103 #define IDC_BUTTON_MOVE                 1039
00104 #define IDC_CHECK_D_A                   1040
00105 #define IDC_SLIDER1                     1040
00106 #define IDC_SLIDER_PAD                  1040
00107 #define IDC_CHECK_S_R                   1041
00108 #define IDC_BUTTON_MAILME               1041
00109 #define IDC_CHECK_S_G                   1042
00110 #define IDC_BUTTON_URL                  1042
00111 #define IDC_CHECK_S_B                   1043
00112 #define IDC_BUTTON_LICENCE              1043
00113 #define IDC_CHECK_S_A                   1044
00114 #define IDC_BUTTON_FORUM                1044
00115 #define IDC_CHECK_E_R                   1045
00116 #define IDC_COMBO_POLYGONE_FRONT        1045
00117 #define IDC_CHECK_E_G                   1046
00118 #define IDC_COMBO_POLYGONE_BACK         1046
00119 #define IDC_CHECK_E_B                   1047
00120 #define IDC_RICHEDIT_XWIN               1047
00121 #define IDC_RICHEDIT_XSIZE              1047
00122 #define IDC_CHECK_E_A                   1048
00123 #define IDC_RICHEDIT_YWIN               1048
00124 #define IDC_RICHEDIT_YSIZE              1048
00125 #define IDC_RADIO_FULLSCREEN            1049
00126 #define IDC_RADIO_CUSTOMSCREEN          1050
00127 #define IDC_RICHEDIT_FOG_START          1051
00128 #define IDC_RICHEDIT_FOG_END            1052
00129 #define IDC_RADIO_CONTROLS_MODE         1052
00130 #define IDC_RICHEDIT_FOG_DENSITY        1053
00131 #define IDC_COMBO_FOG_MODE              1054
00132 #define IDC_STATIC_PICKING_FULL         1055
00133 #define IDC_STATIC_PICKING_SELECTED     1056
00134 #define IDC_SPIN_FOG_START              1057
00135 #define IDC_SPIN_FOG_END                1058
00136 #define IDC_SPIN_FOG_DENSITY            1059
00137 #define IDC_SPIN_XSIZE                  1060
00138 #define IDC_SPIN_YSIZE                  1061
00139 #define IDC_RICHEDIT_FRAMERATE          1062
00140 #define IDC_SPIN_FRAMERATE              1063
00141 #define IDC_RICHEDIT_CPU                1064
00142 #define IDC_SPIN_CPU                    1065
00143 #define IDC_CHECK_VIEW_REPERE           1066
00144 #define IDC_CHECK_VIEW_LIGHT            1067
00145 #define IDC_STATIC_PICKING_SELECTED2    1068
00146 #define IDC_STATIC_PICKING_SELECTED_TITLE 1068
00147 #define IDC_STATIC_VERSION              1068
00148 #define IDC_RADIO_FACEMODE              1070
00149 #define IDC_RADIO_FACE_MODE             1070
00150 #define ID_POPUP_HELP                   32778
00151 #define ID_POPUP_ABOUT                  32779
00152 #define ID_POPUP_DEBUGER                32781
00153 #define ID_POPUP_EXIT                   32782
00154 #define ID_POPUP_CONFIG                 32784
00155 #define IDC_STATIC                      -1
00156 #define IDC_STATIC_INFO                 -1
00157 #define IDC_STATIC_INFO1                -1
00158 #define IDC_STATIC_VALUE                -1
00159 #define IDC_STATIC1                     -1
00160
00161 // Next default values for new objects
00162 //
00163 #ifdef APSTUDIO_INVOKED
00164 #ifndef APSTUDIO_READONLY_SYMBOLS
00165 #define _APS_NO_MFC                     1
00166 #define _APS_NEXT_RESOURCE_VALUE        136
00167 #define _APS_NEXT_COMMAND_VALUE         32785
00168 #define _APS_NEXT_CONTROL_VALUE         1071
00169 #define _APS_NEXT_SYMED_VALUE           110
00170 #endif
00171 #endif
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: screen.cpp File Reference

screen.cpp File Reference

#include "screen.h"
#include "MyDebug.h"
#include "openGL_tools.h"
#include <winuser.h>
#include "windowTools.h"

Go to the source code of this file.

Defines

#define | DEBUG_SCREEN(methode) MyDebug::SendEvent("screen",methode##"[t:%s,style:%d,styleEx:%d,dXNorm:%d,%d,dXCli:%d,%d]",(char *)title,dwStyle,dwExStyle,dxNormal,dyNormal,dxClient,dyClient)
#define | TEST(varType, msg) if ((dwStyle&varType)==varType) { for (int i=0;i<level;i++) message<<"| "; message<<msg<<"\n"; }
#define | TEST_EX(varType, msg) if ((dwExStyle&varType)==varType) { for (int i=0;i<level;i++) message<<"| "; message<<msg<<"\n"; }
#define | WS_EX_COMPOSITED 0x02000000L
#define | WS_EX_NOACTIVATE 0x08000000L
#define | WS_EX_LAYERED 0x00080000

Define Documentation

#define DEBUG_SCREEN ( methode ) MyDebug::SendEvent("screen",methode##"[t:%s,style:%d,styleEx:%d,dXNorm:%d,%d,dXCli:%d,%d]",(char *)title,dwStyle,dwExStyle,dxNormal,dyNormal,dxClient,dyClient)

Definition at line 23 of file screen.cpp.

Referenced by Screen::ApplySize(), Screen::Create(), Screen::Destroy(), Screen::Screen(), Screen::SetFullScreen(), Screen::SetSize(), Screen::Setup(), Screen::Show(), Screen::Update(), and Screen::~Screen().

#define TEST | ( | varType,
 |  | msg | ) | if ((dwStyle&varType)==varType) { for (int i=0;i<level;i++) message<<"| "; message<<msg<<"\n"; }

Definition at line 26 of file screen.cpp.

Referenced by Screen::MsgInfoType().

#define TEST_EX | ( | varType,
 |  | msg | ) | if ((dwExStyle&varType)==varType) { for (int i=0;i<level;i++) message<<"| "; message<<msg<<"\n"; }

Definition at line 27 of file screen.cpp.

Referenced by Screen::MsgInfoType().

#define WS_EX_COMPOSITED 0x02000000L

Definition at line 30 of file screen.cpp.

Referenced by Screen::MsgInfoType().

#define WS_EX_LAYERED 0x00080000

Definition at line 32 of file screen.cpp.

Referenced by Screen::MsgInfoType().

#define WS_EX_NOACTIVATE 0x08000000L

Definition at line 31 of file screen.cpp.

Referenced by Screen::MsgInfoType().

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: screen.cpp Source File

screen.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "screen.h"
00020 #include "MyDebug.h"
00021 #include "openGL_tools.h"
00022
00023 #define DEBUG_SCREEN(methode) MyDebug::SendEvent("screen",methode##"[t:%s,style:%d,styleEx:%d,dXNorm:%d,%d,dXCli:%d,%d]",(char *)title,dwStyle,dwExStyle,dxNormal,dyNormal,dxClient,dyClient)
00024 //#define DEBUG_SCREEN(methode) // si on ne veut pas gerer de debuger
00025
00026 #define TEST(varType,msg) if ((dwStyle&varType)==varType) { for (int i=0;i<level;i++) message<<"| "; message<<msg<<"\n"; }
00027 #define TEST_EX(varType,msg) if ((dwExStyle&varType)==varType) { for (int i=0;i<level;i++) message<<"| "; message<<msg<<"\n"; }
00028
00029 // pour eviter des subtilité de compilation (contenu dans windef.h)
00030 #define WS_EX_COMPOSITED        0x02000000L
00031 #define WS_EX_NOACTIVATE        0x08000000L
00032 #define WS_EX_LAYERED           0x00080000
00033
00034 void Screen::ComputeDeltaClientToWindow()
00035 {
00036         RECT rectClient,rectWindow;
00037         GetClientRect(hWnd,&rectClient);
00038         GetWindowRect(hWnd,&rectWindow);
00039
00040         dxWC=(rectWindow.right-rectWindow.left)-(rectClient.right-rectClient.left);
00041         dyWC=(rectWindow.bottom-rectWindow.top)-(rectClient.bottom-rectClient.top);
00042 }
00043
00044 #include <winuser.h>
00045 void Screen::MsgInfoType()
00046 {
00047         MyString message;
00048
00049         int level=0;
00050         message.Format("Type=%ld, Ex=%ld\n",dwStyle,dwExStyle);
00051         message<<"STYLE:\n"; level++;
00052         BOOL overlappedWindow = (dwStyle&WS_OVERLAPPEDWINDOW)==WS_OVERLAPPEDWINDOW;
00053         BOOL popupWind = (dwStyle&WS_POPUPWINDOW)==WS_POPUPWINDOW;
00054         BOOL caption = (dwStyle&WS_CAPTION)==WS_CAPTION;
00055         TEST(WS_OVERLAPPEDWINDOW,"overlappedWindow: Creates an overlapped window.");
00056         TEST(WS_POPUPWINDOW,"popupWindow: Creates a pop-up window.");
00057         if (popupWind||overlappedWindow) level++;
00058         TEST(WS_CAPTION,"caption: title bar.");
00059         if (caption) level++;
00060         TEST(WS_BORDER,"border: thin-line border.");
00061         if (caption) level--;
00062         TEST(WS_OVERLAPPED,"overlapped: window has a title bar and a border.");
00063         TEST(WS_POPUP,"popupWindow: simple window (cannot used with the WS_CHILD).");
00064         TEST(WS_SYSMENU,"sysmenu: add menu on its title bar. (use WS_CAPTION).");
00065         TEST(WS_THICKFRAME,"tickFrame: add a sizing border.");
00066         TEST(WS_MAXIMIZEBOX,"maximizeBox: add max button. (use WS_SYSMENU , cannot WS_EX_CONTEXTHELP)");
00067         TEST(WS_MINIMIZEBOX,"minimizeBox: add min button. (use WS_SYSMENU , cannot WS_EX_CONTEXTHELP)");
00068         if (popupWind||overlappedWindow) level--;
00069         TEST(WS_CHILD ,"child: A window with this style cannot have a menu bar. (cannot used WS_POPUP)");
00070         TEST(WS_CLIPCHILDREN,"clipChildren: used when creating the parent window");
00071         TEST(WS_CLIPSIBLINGS,"clipSiblings: clips child windows relative to each other)");
00072         TEST(WS_DISABLED,"disable: initially disabled. He cannot receive input from the user. (cf EnableWindow)");
00073         TEST(WS_VISIBLE,"visible: initially visible.");
00074         TEST(WS_DLGFRAME,"dlgFrame: window that has a border of a style typically used with dialog boxes. (cannot have a title bar)");
00075         TEST(WS_GROUP,"group: Specifies the first control of a group of controls. (cf WS_TABSTOP style)");
00076         TEST(WS_TABSTOP,"tabStop: can receive the keyboard focus when the user presses the TAB key. (cf WS_TABSTOP style)");
00077         TEST(WS_HSCROLL,"hScroll: add horizontal scroll bar.");
00078         TEST(WS_VSCROLL,"vScroll: add vertical scroll bar.");
00079         TEST(WS_MAXIMIZE,"maxmize: initially maximized.");
00080         TEST(WS_MINIMIZE,"minimize: initially minimized.");
00081
00082         message<<"STYLE_EX:\n";
00083
00084         TEST_EX(WS_EX_RIGHT,"right: the window has generic.");
00085         TEST_EX(WS_EX_LEFT,"left: left-aligned properties.");
00086
00087         DWORD paletteWindow = (dwStyle&WS_EX_PALETTEWINDOW)==WS_EX_PALETTEWINDOW;
00088         DWORD overlappedWindowEx = (dwStyle&WS_EX_PALETTEWINDOW)==WS_EX_PALETTEWINDOW;
00089         TEST_EX(WS_EX_PALETTEWINDOW,"paletteWindow: combines WS_EX_WINDOWEDGE, WS_EX_TOOLWINDOW, WS_EX_TOPMOST.");
00090         TEST_EX(WS_EX_OVERLAPPEDWINDOW,"overlappedWindow: combines WS_EX_CLIENTEDGE and WS_EX_WINDOWEDGE.");
00091         if (paletteWindow||overlappedWindowEx) level++;
00092         TEST_EX(WS_EX_WINDOWEDGE,"windowEdge: specifies that a window has a border with a raised edge.");
00093         TEST_EX(WS_EX_TOOLWINDOW,"toolWindow: creates a floating toolbar. (not appear in the taskbar.");
00094         TEST_EX(WS_EX_TOPMOST,"topMost: should be placed above all non-topmost windows and should stay above them.");
00095         TEST_EX(WS_EX_CLIENTEDGE,"clientEdge: border with a sunken edge.");
00096         if (paletteWindow||overlappedWindowEx) level--;
00097         TEST_EX(WS_EX_ACCEPTFILES,"acceptFiles: accepts drag-drop files.");
00098         TEST_EX(WS_EX_APPWINDOW,"appWindow: forces a top-level window onto the taskbar when the window is visible.");
00099         TEST_EX(WS_EX_COMPOSITED,"composited: paints all descendants of a window in bottom-to-top painting order using double-buffering. ");
00100         TEST_EX(WS_EX_CONTEXTHELP,"contextHelp: Add a question mark in the title bar ( cannot use WS_MAXIMIZEBOX or WS_MINIMIZEBOX)");
00101         TEST_EX(WS_EX_CONTROLPARENT,"controlParent: contains itself a child windows that should take part in dialog box navigation.");
00102         TEST_EX(WS_EX_DLGMODALFRAME,"dlgModalFrame: use double border.");
00103         TEST_EX(WS_EX_LAYERED,"layered: layered window. (cannot used with child)");
00104         TEST_EX(WS_EX_LAYOUTRTL,"layoutRTL: Arabic and Hebrew versions." );
00105         TEST_EX(WS_EX_LTRREADING,"ltrReading: text is displayed using left-to-right reading-order properties. This is the default.");
00106         TEST_EX(WS_EX_LEFTSCROLLBAR,"leftsScrollBar: use if the shell language is right-to-left reading order alignment.");
00107         TEST_EX(WS_EX_MDICHILD,"Creates a multiple-document interface (MDI) child window.");
00108         TEST_EX(WS_EX_NOACTIVATE,"noActivate: this top-level Window does not become the foreground window when the user clicks it. (does not appear on the taskbar cf.: WS_EX_APPWINDOW) [Windows 2000/XP]");
00109         TEST_EX(WS_EX_NOINHERITLAYOUT,"noInheritLayout: does not pass its window layout to its child windows. [Windows 2000/XP]");
00110         TEST_EX(WS_EX_NOPARENTNOTIFY,"noParentNotify: specifies that a child window does not send the WM_PARENTNOTIFY message to its parent window.");
00111         TEST_EX(WS_EX_RIGHTSCROLLBAR,"rightsScrollBar: vertical scroll bar (if present) is to the right of the client area.");
00112         TEST_EX(WS_EX_STATICEDGE,"staticEdge: three-dimensional border style intended to be used for items that do not accept user input.");
00113         TEST_EX(WS_EX_TRANSPARENT,"transparent: appears transparent because the bits of underlying sibling windows have already been painted.");
00114         MessageBox(NULL,message,"Info: style window",0);
00115 }
00116
00117 Screen::Screen()
00118 {
00119         DEBUG_SCREEN("Constructor");
00120         hWnd=NULL;
00121         hWndInsertAfter=NULL;
00122         hInst=NULL;
00123         dwStyle=WS_POPUP;//NULL;//WS_POPUP;// fenetre simple sans title
00124         dwExStyle=NULL;
00125         dxNormal = dyNormal = dxClient= dyClient = 0;
00126         dxFull = GetSystemMetrics(SM_CXSCREEN);
00127         dyFull = GetSystemMetrics(SM_CYSCREEN);
00128         xNormal=yNormal=0;
00129         enableTitle=FALSE;
00130         enableFullScreen=FALSE;
00131         enableFullScreenOld=-1; // oblige la remise a jour
00132         hDC = NULL;
00133         hGLRC = NULL;
00134 }
00135
00136 Screen::~Screen()
00137 {
00138         DEBUG_SCREEN("Destructor");
00139         Destroy();
00140 }
00141
00142 BOOL Screen::Setup(WNDCLASS *wc,char *_className,char *_title)
00143 {
00144         className=_className;
00145         title=_title;
00146         wc->lpszClassName = TEXT (className);
00147         if (!::RegisterClass(wc))
00148         {
00149                 MyString msg;
00150                 msg<<"Can't register window \""<<className<<"\"";
00151                 MessageBox (NULL,msg,"RegisterClass - Failed",MB_OK);
00152                 return FALSE;
00153         }
00154         DEBUG_SCREEN("Setup");
00155         return TRUE;
00156 }
00157
00159 BOOL Screen::SwapBuffers()
00160 {
00161         return ::SwapBuffers(hDC);
00162 }
00163
00165 BOOL Screen::Create(HINSTANCE hInstance)
00166 {
00167         hInst = hInstance;
00168         SetFullScreen();
00169         //MsgInfoType();
00170         hWnd = CreateWindowEx(dwExStyle,className,title, dwStyle,0,0,dxClient,dyClient,NULL, NULL, hInst,NULL);
00171         if (!hWnd)
00172         {
00173                 MyString msg;
00174                 msg<<"Can't create window \""<<title<<"\"";
00175                 MessageBox (NULL,msg,"CreateWindow - Failed",MB_OK);
00176                 return FALSE;
00177         }
00178         if (!enableFullScreen) ApplySize();
00179         SetTopMost();
00180         DEBUG_SCREEN("Create");
00181         return TRUE;
00182 }
00183
00184 void Screen::Destroy()
00185 {
00186         DEBUG_SCREEN("Destroy");
00187         SendMessage(hWnd,WM_QUIT,0,0);
00188         if (hWnd) UnregisterClass(className,hInst);
00189         hWnd=NULL;
00190         if (hGLRC)
00191         {
00192                 wglMakeCurrent(NULL, NULL);     // Makes current RC no longer current
00193                 wglDeleteContext(hGLRC);        // Deletes OpenGL rendering context
00194         }
00195         if (hDC) { ReleaseDC(hWnd, hDC); hDC = NULL; } // Releases a DC, freeing it for other apps
00196
00197 }
00198
00199 void Screen::Show(BOOL enable)
00200 {
00201         if (enable) ShowWindow(hWnd,SW_SHOW);
00202         else ShowWindow(hWnd,SW_HIDE);
00203         DEBUG_SCREEN("Show");
00204 }
00205
00206 void Screen::Update(BOOL applySize)
00207 {
00208         SetFullScreen();
00209         ApplyStyles();
00210         if (enableTitle) SetWindowText(hWnd,title);
00211         SetTopMost();
00212         if (applySize) ApplySize();
00213         DEBUG_SCREEN("Update");
00214 }
00215
00217 void Screen::ApplySize()
00218 {
00219         ComputeDeltaClientToWindow();
00220         int dx,dy;
00221         dx=dxClient+dxWC;
00222         dy=dyClient+dyWC;
00223         SetWindowPos(hWnd,NULL,0,0,dx,dy,SWP_NOZORDER|(enableFullScreen?0:SWP_NOMOVE));
00224         DEBUG_SCREEN("ApplySize");
00225 }
00226
00227 #include "windowTools.h"
00228
00236 void Screen::SetFullScreen()
00237 {
00238         BOOL result=FALSE;
00239
00240         if (enableFullScreenOld!=enableFullScreen)
00241         {
00242                 enableFullScreenOld=enableFullScreen;
00243                 if (enableFullScreen)
00244                 {
00245                         dxNormal=dxClient;
00246                         dyNormal=dyClient;
00247                         dxClient=dxFull;
00248                         dyClient=dyFull;
00249                         // sauve la position initial de la fenetre avant le fullscreen
00250                         GetWindowPos(hWnd,&xNormal,&yNormal);
00251                 }
00252                 else
00253                 {
00254                         dxClient=dxNormal;
00255                         dyClient=dyNormal;
00256                         // replacer la fenetre a sa position d'origine
00257                         SetWindowPos(hWnd,NULL,xNormal,yNormal,0,0,SWP_NOZORDER|SWP_NOSIZE);
00258                 }
00259         }
00260         if (enableFullScreen||!enableTitle) SetStyle(WS_POPUP);
00261         else SetStyle (WS_OVERLAPPEDWINDOW);
00262
00263         //ChangeStyle(TRUE,WS_BORDER|WS_CAPTION|WS_DLGFRAME|WS_SIZEBOX|WS_SYSMENU);
00264         DEBUG_SCREEN("SetFullScreen");
00265 }
00266
00267 void Screen::BindOpenGL(BOOL useAccumulation)
00268 {
00269         // Next define pixelformat...we use stuct PIXELFORMATDESCRIPTOR
00270         // This is straight out of NeHe’s framework
00271         static PIXELFORMATDESCRIPTOR pfd =       // static ensures data is stored between calls
00272         {
00273                 sizeof(PIXELFORMATDESCRIPTOR),
00274                         1,                     // nVersion should be set to 1
00275                         PFD_DRAW_TO_WINDOW |   // buffer can draw to window
00276                         PFD_SUPPORT_OPENGL |   // buffer supports OpenGL drawing
00277                         PFD_DOUBLEBUFFER,     // buffer is double buffered
00278                         PFD_TYPE_RGBA,         // rgba pixels
00279                         24,                    // 24-bit color depth
00280                         0, 0, 0, 0, 0, 0,      // look up rest at MSDN, color bits ignored
00281                         0,                     // no alpha buffer
00282                         0,                     // shift bit ignored
00283                         useAccumulation?24:0,  // accumulation buffer total size
00284                         useAccumulation?8:0,   // accumulation bits R
00285                         useAccumulation?8:0,   // accumulation bits G
00286                         useAccumulation?8:0,   // accumulation bits B
00287                         0,                                         // accumulation bits A
00288                         24,                    // 24 bit z buffer (16 do somme deformations)
00289                         0,                     // no stencil buffer
00290                         0,                     // no auxiliary buffer
00291                         PFD_MAIN_PLANE,        // main drawing layer
00292                         0,                     // reserved
00293                         0, 0, 0                // layer mask ignored
00294         };
00295
00296         hDC = GetDC(hWnd);  // Retrieves a handle to a
00297
00298         // display device context
00299         int pixelFormat = OpenGL_InitMultisample(hWnd); // supporté par nvidia uniquement sur gFoce3Fx minimum
00300         if (!pixelFormat) pixelFormat = ChoosePixelFormat(hDC, &pfd);  // Try and match a pixel format
00301
00302         SetPixelFormat(hDC, pixelFormat, &pfd); // supported by DC
00303         hGLRC = wglCreateContext(hDC);     // Create a new OpenGL rendering context
00304         wglMakeCurrent(hDC, hGLRC);        // Makes OpenGL hRC the calling threads current RC
00305 }
00306
00307 void Screen::SetTitle(char *_title)
00308 {
00309         title=_title;
00310 }
00311
00312 void Screen::SetTopMost()
00313 {
00314         hWndInsertAfter = enableFullScreen? HWND_TOPMOST : NULL;
00315         SetWindowPos(hWnd,hWndInsertAfter,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
00316 }
00317
00318 void Screen::SetSize(int dx,int dy,BOOL always)
00319 {
00320         if (!enableFullScreen||always)
00321         {
00322                 dxClient = dx;
00323                 dyClient = dy;
00324                 dxNormal = dx;
00325                 dyNormal = dy;
00326                 DEBUG_SCREEN("SetSize");
00327         }
00328 }
00329
00330 void Screen::ChangeStyle(int set,DWORD dwStyleChange)
00331 {
00332         dwStyle|=dwStyleChange;
00333         if (!set) dwStyle-=dwStyleChange;
00334 }
00335
00336 void Screen::ChangeStyleEx(int set,DWORD dwStyleChange)
00337 {
00338         dwExStyle|=dwStyleChange;
00339         if (!set) dwExStyle-=dwStyleChange;
00340 }
00341
00342 void Screen::ApplyStyles()
00343 {
00344         ApplyStyle();
00345         ApplyStyleEx();
00346         SetWindowPos(hWnd,NULL,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE|SWP_NOZORDER|SWP_FRAMECHANGED);
00347 }
00348
00349 void Screen::SetStyle(DWORD _dwStyle)
00350 {
00351         dwStyle=_dwStyle;
00352 }
00353
00354 void Screen::ApplyStyle()
00355 {
00356         SetWindowLong(hWnd,GWL_STYLE,dwStyle);
00357 }
00358
00359 void Screen::ApplyStyleEx()
00360 {
00361         SetWindowLong(hWnd,GWL_EXSTYLE,dwExStyle);
00362 }
00363
00364 void Screen::RegionReset()
00365 {
00366         region.Reset(dxClient,dyClient);
00367 }
00368
00369 void Screen::RegionUse()
00370 {
00371         region.Use(hWnd);
00372 }
00373
00374 // obsolete ****************************************************************
00375
00376 //Ajust la taille de la fenetre par rapport a la taille du client
00377 //Cette fontion ne marche visiblement pas dans tout les cas !
00378 /*
00379 void Screen::Adjust()
00380 {
00381         RECT rect;
00382         rect.left=0;
00383         rect.right=dxClient;
00384         rect.top=0;
00385         rect.bottom=dyClient;
00386         BOOL res= dwStyle&WS_OVERLAPPED;
00387         AdjustWindowRectEx(&rect,dwStyle,FALSE,dwExStyle);
00388         dxWindow = rect.right;
00389         dyWindow = rect.bottom;
00390 }
00391 */
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: screen.h File Reference

screen.h File Reference

Gestion du fenetrage du context OpenGL. More...

#include <windows.h>
#include "myString.h"
#include "region.h"

Go to the source code of this file.

Classes

class Screen

Detailed Description

Gestion du fenetrage du context OpenGL.

Definition in file screen.h.

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: screen.h Source File

screen.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_SCREEN_H
00024 #define INCLUDE_SCREEN_H
00025
00026 #include <windows.h>
00027 #include "myString.h"
00028 #include "region.h"
00029
00030 class Screen
00031 {
00032 private:
00033         HWND hWndInsertAfter;
00034         HINSTANCE hInst;
00035         MyString title;
00036         MyString className;
00037         BOOL enableFullScreenOld;
00038
00039         int xNormal;
00040         int yNormal;
00041         int dxClient;
00042         int dyClient;
00043         int dxFull;
00044         int dyFull;
00045         int dxWC;
00046         int dyWC;
00047
00048         DWORD dwExStyle;
00049         DWORD dwStyle;
00050
00051         void Adjust();
00052         void ComputeDeltaClientToWindow();
00053
00054 public:
00055         HDC       hDC;
00056         HGLRC hGLRC;
00057
00058         BOOL enableTitle;
00059         BOOL enableFullScreen;
00060
00061         int dxNormal;
00062         int dyNormal;
00063
00064         HWND hWnd;
00065         Region region;
00066
00067         // init
00068         Screen();
00069         ~Screen();
00070         BOOL Setup(WNDCLASS *wc,char *_className,char *_title);
00071         BOOL Create(HINSTANCE hInstance);
00072         void Destroy();
00073         void Show(BOOL enable);
00074         void Update(BOOL applySize);
00075         void SetSize(int dx,int dy,BOOL always);
00076
00077         void BindOpenGL(BOOL useAccumulation);
00078         BOOL SwapBuffers();
00079
00080         // modes
00081         void SetTopMost();
00082         void SetTitle(char *_title);
00083         void SetFullScreen();
00084
00085         // styles
00086         void ApplyStyles();
00087         void ApplyStyle();
00088         void ApplyStyleEx();
00089         void ChangeStyle(int set,DWORD dwStyleChange);
00090         void ChangeStyleEx(int set,DWORD dwStyleChange);
00091         void SetStyle(DWORD _dwStyle);
00092         void MsgInfoType();
00093         void ApplySize();
00094
00095         // region
00096         void RegionReset();
00097         void RegionUse();
00098 };
00099 #endif
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: slider.cpp File Reference

slider.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "slider.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 24 of file slider.cpp.

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: slider.cpp Source File

slider.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "slider.h"
00023
00024 extern ControlEngine ce;
00025
00026 Slider::Slider()
00027 {
00028         // init variable
00029         name="Slider";
00030         Init(0,100,30,70);
00031         Step(5);
00032         useButtons = TRUE;
00033
00034         body.onControl.mouse.move.connect(this,OnMouseMove);
00035         body.onControl.mouse.left.down.connect(this,OnLMouseDown);
00036         btnMinus.onControl.mouse.left.down.connect(this,OnMinusLMouseDown);
00037         btnPlus.onControl.mouse.left.down.connect(this,OnPlusLMouseDown);
00038         btnMinus.onControl.over.out.connect(this,OnButtonsOverOut);
00039         btnPlus.onControl.over.out.connect(this,OnButtonsOverOut);
00040         btnMinus.onControl.mouse.left.up.connect(this,OnButtonsLMouseUp);
00041         btnPlus.onControl.mouse.left.up.connect(this,OnButtonsLMouseUp);
00042 }
00043
00044 Slider::~Slider()
00045 {
00046 }
00047
00048 // ********************************************************************************
00049
00050 void Slider::Create(double depth)
00051 {
00052         SetParent();
00053
00054         // init general
00055         faceNode = ce.primitive.AddFace("Slider",id,-1,FALSE);
00056
00057         ce.Push(this);
00058                 // dessin du corps
00059                 body.faceNode = ce.primitive.AddBox("Body",body.id,depth,FALSE);
00060                 body.SetBlending(TRUE);
00061                 body.faceNode->elem->material.SetDS(0,0,1,0.25f);
00062
00063                 if (useButtons)
00064                 {
00065                         btnMinus.Create(depth);
00066                         btnMinus.XDockLeft(0,SIZE_BUTTON);
00067                         btnMinus.YDockCenter(0,0);
00068                         btnMinus.depth_min=btnMinus.depth_max; // ne peut pas etre appyé
00069                         ConfigFaces(&btnMinus,&ce.texture.arrow);
00070                         btnPlus.Create(depth);
00071                         btnPlus.XDockRight(0,SIZE_BUTTON,TRUE);
00072                         btnPlus.YDockCenter(0,0);
00073                         btnPlus.depth_min=btnPlus.depth_max; // ne peut pas etre appyé
00074                         btnPlus.Rotate(0,180,0);
00075                         btnPlus.Move(-SIZE_BUTTON/2.0,0,depth);
00076                         btnPlus.faceNode->Elems(FACE_BACK)->view=TRUE;
00077                         ConfigFaces(&btnPlus,&ce.texture.arrow);
00078                         body.XDockCenter(SIZE_BUTTON,SIZE_BUTTON);
00079                         body.YDockCenter(0,0);
00080                 }
00081                 else
00082                 {
00083                         body.XDockCenter(0,0);
00084                         body.YDockCenter(0,0);
00085                 }
00086
00087                 ce.Push(this);
00088                         cursor.faceNode = ce.primitive.AddBox("Cursor",cursor.id,depth-4,FALSE);
00089                         cursor.YDockCenter(2,2);
00090                         cursor.Move(0,0,2);
00091                         cursor.faceNode->elem->material.SetDS(1,1,1);
00092                         ConfigFaces(&cursor,&ce.texture.grip);
00093                         cursor.faceNode->MoveToFirstChild(); // pour que la transparence puisse s'applique au body qui est contien
00094                         Refresh();
00095                 ce.Pop();
00096         ce.Pop();
00097 }
00098
00099 int Slider::OnAutoMinus(Timer *)
00100 {
00101         Current(-stepButton);
00102         SendMoving();
00103         return 0;
00104 }
00105
00106 void Slider::SendMoving()
00107 {
00108         double deltaRang = maximum-minimum;
00109         double percentMin = (curMin-minimum)/deltaRang;
00110         double percentMax = (maximum-curMax)/deltaRang;
00111         double percent = percentMin/(percentMin+percentMax);
00112         onSlidder.moving(curMin,curMax,percent);
00113 }
00114
00115 int Slider::OnButtonsOverOut(Control *,int)
00116 {
00117         timerAutoButton.StopAndUnBind();
00118         return 0;
00119 }
00120
00121 int Slider::OnButtonsLMouseUp(StateMouse *,int)
00122 {
00123         timerAutoButton.StopAndUnBind();
00124         return 0;
00125 }
00126
00127 int Slider::OnMinusLMouseDown(StateMouse *,int)
00128 {
00129         BindTimer(timerAutoButton,OnAutoMinus,100);
00130         OnAutoMinus(NULL);
00131         return 0;
00132 }
00133
00134 int Slider::OnAutoPlus(Timer *)
00135 {
00136         Current(stepButton);
00137         SendMoving();
00138         return 0;
00139 }
00140
00141 int Slider::OnPlusLMouseDown(StateMouse *,int)
00142 {
00143         BindTimer(timerAutoButton,OnAutoPlus,100);
00144         OnAutoPlus(NULL);
00145         return 0;
00146 }
00147
00148 int Slider::OnLMouseDown(StateMouse *mouse,int face)
00149 {
00150         return OnMouseMove(mouse,0,0,face);
00151 }
00152
00153 void Slider::ConfigFaces(Control *control,Texture *texture)
00154 {
00155         for (control->faceNode->childs.i=0;control->faceNode->childs.i.More();control->faceNode->childs.i++)
00156         {
00157                 control->faceNode->childs.i.GetElem()->elem->texture = texture;
00158         }
00159 }
00160
00161 // ********************************************************************************
00162
00163 int Slider::OnMouseMove(StateMouse *mouse,int deltaX,int deltaY,int face)
00164 {
00165         if (mouse->leftBtn)
00166         {
00167                 Point2D<double> pos(mouse->pos.x,mouse->pos.y);
00168                 Point2D<double> result;
00169                 result = body.GetLocalPos(face,pos);
00170                 SetCurrentByPosition(result.x);
00171                 Refresh();
00172                 SendMoving();
00173         }
00174         return 0;
00175 }
00176
00177 BOOL Slider::Step(double step)
00178 {
00179         if (step<0) return FALSE;
00180         stepButton = step;
00181         return TRUE;
00182 }
00183
00184 void Slider::Setup(double min,double max,double curMin,double curMax)
00185 {
00186         Init(min,max,curMin,curMax);
00187         Refresh();
00188 }
00189
00190 void Slider::Init(double min,double max,double curMin,double curMax)
00191 {
00192         minimum=min;
00193         maximum=max;
00194         SetCurrent(curMin,curMax);
00195 }
00196
00197 BOOL Slider::Min(double value)
00198 {
00199         if (!SetMin(value)) return FALSE;
00200         Refresh();
00201         return TRUE;
00202 }
00203
00204 BOOL Slider::SetMin(double value)
00205 {
00206         if (value<=maximum) return FALSE;
00207         minimum=value;
00208         return TRUE;
00209 }
00210
00211 BOOL Slider::Max(double value)
00212 {
00213         if (!SetMax(value))return FALSE;
00214         Refresh();
00215         return TRUE;
00216 }
00217
00218 BOOL Slider::SetMax(double value)
00219 {
00220         if (value>=minimum) return FALSE;
00221         maximum=value;
00222         return TRUE;
00223 }
00224
00225 BOOL Slider::Current(double min,double max)
00226 {
00227         if (!SetCurrent(min,max))return FALSE;
00228         Refresh();
00229         return TRUE;
00230 }
00231
00232 BOOL Slider::Current(double delta)
00233 {
00234         SetCurrent(delta);
00235         Refresh();
00236         return TRUE;
00237 }
00238
00239 BOOL Slider::SetCurrent(double min,double max)
00240 {
00241         double tMin,tMax;
00242         tMin=min>maximum?maximum:min;
00243         tMin=min<minimum?minimum:min;
00244
00245         tMax=max>maximum?maximum:max;
00246         tMax=max<minimum?minimum:max;
00247
00248         if (tMin>=tMax) return FALSE;
00249         curMin=tMin;
00250         curMax=tMax;
00251         return TRUE;
00252 }
00253
00254 BOOL Slider::SetCurrent(double delta)
00255 {
00256         if ((curMin+delta)<minimum) delta=minimum-curMin;
00257         if ((curMax+delta)>maximum) delta=maximum-curMax;
00258         curMin+=delta;
00259         curMax+=delta;
00260         return TRUE;
00261 }
00262
00263 void Slider::SetCurrentByPosition(double x)
00264 {
00265         double percent;
00266         percent = x/body.faceNode->elem->computeSize.x;
00267         double curValue = percent*(maximum-minimum)+minimum;
00268         double delta = (curValue-(curMax-curMin)/2.0)-curMin;
00269         SetCurrent(delta);
00270 }
00271
00272 void Slider::Refresh()
00273 {
00274         double percent;
00275         double deltaCur = curMax-curMin;
00276         double deltaSlider= maximum-minimum;
00277         double deltaBody = body.faceNode->elem->computeSize.x;
00278         if (!deltaBody)
00279         {
00280                 ce.primitive.ComputeLayout(body.faceNode);
00281                 deltaBody = body.faceNode->elem->computeSize.x;
00282         }
00283         double deltaX = deltaCur/deltaSlider;
00284         if (deltaX>1) deltaX=1;
00285         if(deltaX*deltaBody<MIN_SIZE_CURSOR)
00286         {
00287                 deltaX=MIN_SIZE_CURSOR/deltaBody;
00288         }
00289         percent=((curMin-minimum)+deltaCur/2.0)/deltaSlider;
00290         cursor.XDockLeft(percent*deltaBody+SIZE_BUTTON,deltaX*deltaBody,TRUE);
00291 }
00292
00293 // ********************************************************************************
00294
00295 void Slider::ToString(MyString &str)
00296 {
00297         str.AddFormat("name: %s",name);
00298 }
00299
00300 // ********************************************************************************
00301 // ********************************************************************************
00302 // ********************************************************************************
00303 // ********************************************************************************
00304 // ********************************************************************************
00305 // ********************************************************************************
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: slider.h File Reference

slider.h File Reference

Control Slider. More...

#include "control.h"
#include "input.h"

Go to the source code of this file.

Classes

class | EventSlider
class | Slider
Class de parametre et d'evenement d'un "Slider". More...

Defines

#define | MIN_SIZE_CURSOR 10
#define | SIZE_BUTTON 12

Detailed Description

Control Slider.

Definition in file slider.h.

Define Documentation

#define MIN_SIZE_CURSOR 10

Definition at line 35 of file slider.h.

Referenced by Slider::Refresh().

#define SIZE_BUTTON 12

Definition at line 36 of file slider.h.

Referenced by Slider::Create(), and Slider::Refresh().

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: slider.h Source File

slider.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_SLIDER_H
00024 #define INCLUDE_SLIDER_H
00025
00026 #include "control.h"
00027 #include "input.h"
00028
00029 class EventSlider
00030 {
00031 public:
00032         signal3<double,double,double> moving;
00033 };
00034
00035 #define MIN_SIZE_CURSOR 10
00036 #define SIZE_BUTTON             12
00037
00043 class Slider : public Control
00044 {
00045 private:
00046         double maximum;
00047         double minimum;
00048         double curMax;
00049         double curMin;
00050         double stepButton;
00051         BOOL useButtons;
00052         void ConfigFaces(Control *control,Texture *texture);
00053         void ApplyCurrent();
00054         void Init(double min,double max,double curMin,double curMax);
00055         BOOL SetMin(double value);
00056         BOOL SetMax(double value);
00057         BOOL SetCurrent(double min,double max);
00058         BOOL SetCurrent(double delta);
00059         void SetCurrentByPosition(double x);
00060         void SendMoving();
00061
00062 public:
00063         // variable membre
00064         EventSlider onSlidder;
00065         Button btnPlus;
00066         Button btnMinus;
00067         Control cursor;
00068         Control body;
00069         Timer timerAutoButton;
00070
00071         Slider();
00072         ~Slider();
00073
00074         void Create(double depth);
00075
00076         BOOL Step(double step);
00077         void Setup(double min,double max,double current,double size);
00078         BOOL Min(double value);
00079         BOOL Max(double value);
00080         BOOL Current(double min,double max);
00081         BOOL Current(double delta);
00082         void Refresh();
00083
00084         int OnAutoMinus(Timer *);
00085         int OnAutoPlus(Timer *);
00086         int OnButtonsOverOut(Control *,int);
00087         int OnButtonsLMouseUp(StateMouse *,int);
00088         int OnMinusLMouseDown(StateMouse *,int);
00089         int OnPlusLMouseDown(StateMouse *,int);
00090         int OnLMouseDown(StateMouse *mouse,int face);
00091         int OnMouseMove(StateMouse *mouse,int deltaX,int deltaY,int face);
00092
00093         void ToString(MyString &str);
00094 };
00095
00096 #endif
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: systray.cpp File Reference

systray.cpp File Reference

#include <windows.h>
#include "MyMenu.h"
#include "resource.h"
#include "systray.h"
#include "valueEditor.h"
#include "controlEngine.h"
#include "communTools.h"

Go to the source code of this file.

Defines

#define | WM_REFRESH WM_USER+1973
#define | WM_REFRESH_EDIT WM_USER+1974
#define | WM_REFRESH_SPIN WM_USER+1975
#define | WM_READ_FROM_EDIT WM_USER+1976

Functions

LRESULT WINAPI | SysTrayProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
LRESULT WINAPI | AboutProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
BOOL | SetSpinPos (HWND hWnd, int id, int pos)
BOOL | SetSpinRange (HWND hWnd, int id, int minPos, int maxPos, int delta)
int | GetSpinPos (HWND hWnd)
LRESULT WINAPI | ConfigProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)

Variables

ControlEngine ce

Define Documentation

#define WM_READ_FROM_EDIT WM_USER+1976

Definition at line 176 of file systray.cpp.

Referenced by ConfigProc().

#define WM_REFRESH WM_USER+1973

Definition at line 173 of file systray.cpp.

Referenced by ConfigProc().

#define WM_REFRESH_EDIT WM_USER+1974

Definition at line 174 of file systray.cpp.

Referenced by ConfigProc().

#define WM_REFRESH_SPIN WM_USER+1975

Definition at line 175 of file systray.cpp.

Referenced by ConfigProc().

Function Documentation

LRESULT WINAPI AboutProc | ( | HWND | hWnd,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Definition at line 134 of file systray.cpp.

References MyString::Format(), IDC_BUTTON_FORUM, IDC_BUTTON_LICENCE, IDC_BUTTON_MAILME, IDC_BUTTON_URL, IDC_STATIC_VERSION, MAIL_ADRESS, MailTo(), MyOpenBrowser(), URL_3D_CONTROLS, URL_FORUM, URL_LICENCE, and VERSION.

Referenced by SysTrayProc().

LRESULT WINAPI ConfigProc | ( | HWND | hDlg,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Definition at line 193 of file systray.cpp.

References PolygonMode::back, ce, ControlEngine::cpuLimit, DEFAULT_ANTIALIASING, DEFAULT_CPU_LIMIT, DEFAULT_DELTA, DEFAULT_FOG_DENSITY, DEFAULT_FOG_ENABLE, DEFAULT_FOG_END, DEFAULT_FOG_MODE, DEFAULT_FOG_START, DEFAULT_FULLSCREEN, DEFAULT_INERTIA, DEFAULT_LIGHT_ENABLE0, DEFAULT_LIGHT_ENABLE1, DEFAULT_LIGHT_ENABLE2, DEFAULT_LIGHT_MOVE0, DEFAULT_LIGHT_MOVE1, DEFAULT_LIGHT_MOVE2, DEFAULT_MONITOR, DEFAULT_PICKING, DEFAULT_POLYGON_BACK, DEFAULT_POLYGON_FRONT, DEFAULT_TIMER_REFRESH, DEFAULT_TITLED, DEFAULT_VIEW_BACKGROUND, DEFAULT_VIEW_FPS, DEFAULT_VIEW_INERTIA, DEFAULT_VIEW_LIGHT, DEFAULT_VIEW_REGION, DEFAULT_VIEW_REPERE, DEFAULT_XSIZE, DEFAULT_YSIZE, Fog::density, ControlEngine::dxWin, ControlEngine::dyWin, Region::enable, Fog::Enable(), ControlEngine::enableAntiAliasing, ControlEngine::enableBackGround, ControlEngine::enableDelta, ControlEngine::enableFPS, Screen::enableFullScreen, ControlEngine::enableInertia, ControlEngine::enableLightView, ControlEngine::enablePicking, ControlEngine::enableRepere, Screen::enableTitle, ControlEngine::enableViewInertia, Fog::end, ControlEngine::fog, PolygonMode::front, Fog::GetIndexMode(), GetSpinPos(), Screen::hWnd, IDC_BUTTON_DEFAULT, IDC_CHECK_FOG, IDC_CHECK_INERTIA, IDC_CHECK_LIGHT, IDC_CHECK_LIGHT0, IDC_CHECK_LIGHT0_MOVE, IDC_CHECK_LIGHT1, IDC_CHECK_LIGHT1_MOVE, IDC_CHECK_LIGHT2, IDC_CHECK_LIGHT2_MOVE, IDC_CHECK_MONITOR, IDC_CHECK_PICKING, IDC_CHECK_TITLED, IDC_CHECK_VIEW_BACKGROUND, IDC_CHECK_VIEW_FPS, IDC_CHECK_VIEW_INERTIA, IDC_CHECK_VIEW_LIGHT, IDC_CHECK_VIEW_REGION, IDC_CHECK_VIEW_REPERE, IDC_COMBO_FOG_MODE, IDC_COMBO_POLYGONE_BACK, IDC_COMBO_POLYGONE_FRONT, IDC_RADIO_CUSTOMSCREEN, IDC_RADIO_FULLSCREEN, IDC_RICHEDIT_CPU, IDC_RICHEDIT_FOG_DENSITY, IDC_RICHEDIT_FOG_END, IDC_RICHEDIT_FOG_START, IDC_RICHEDIT_FRAMERATE, IDC_RICHEDIT_XSIZE, IDC_RICHEDIT_YSIZE, IDC_SPIN_CPU, IDC_SPIN_FOG_DENSITY, IDC_SPIN_FOG_END, IDC_SPIN_FOG_START, IDC_SPIN_FRAMERATE, IDC_SPIN_XSIZE, IDC_SPIN_YSIZE, Light::isEnable, Fog::isEnable, ControlEngine::lights, ControlEngine::lightsMove, Fog::mode, ControlEngine::monitor, num, ControlEngine::polygonMode, ControlEngine::refreshTime, Screen::region, ControlEngine::screenConfig, ControlEngine::screenMain, Light::SetLighting(), SetSpinPos(), SetSpinRange(), Fog::start, ControlEngine::timerRefresh, Screen::Update(), WM_READ_FROM_EDIT, WM_REFRESH, WM_REFRESH_EDIT, and WM_REFRESH_SPIN.

Referenced by SysTrayProc().

int GetSpinPos ( HWND hWnd )

Definition at line 188 of file systray.cpp.

References BOOL().

Referenced by ConfigProc().

BOOL SetSpinPos | ( | HWND | hWnd,
 |  | int | id,
 |  | int | pos
 | ) |

Definition at line 178 of file systray.cpp.

References BOOL().

Referenced by ConfigProc().

BOOL SetSpinRange | ( | HWND | hWnd,
 |  | int | id,
 |  | int | minPos,
 |  | int | maxPos,
 |  | int | delta
 | ) |

Todo:
delta de la fonction non implementé

Definition at line 183 of file systray.cpp.

References BOOL().

Referenced by ConfigProc().

LRESULT WINAPI SysTrayProc | ( | HWND | hWnd,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Definition at line 29 of file systray.cpp.

References AboutProc(), CMyMenu::AddTitle(), ce, ConfigProc(), DebugStructProc(), CMyMenu::DrawItem(), ErrorMessage(), ControlEngine::hInst, ID_POPUP_ABOUT, ID_POPUP_CONFIG, ID_POPUP_DEBUGER, ID_POPUP_EXIT, ID_POPUP_HELP, IDC_MENU, IDD_ABOUT, IDD_CONFIG, IDD_DEBUG_STRUCT, IDI_ICON_SYSTRAY, CMyMenu::MeasureItem(), MyOpenBrowser(), TITLE_NAME, and URL_3D_CONTROLS.

Referenced by ControlEngine::Start().

Variable Documentation

ControlEngine ce

Definition at line 27 of file systray.cpp.

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: systray.cpp Source File

systray.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include <windows.h>
00020 #include "MyMenu.h"
00021 #include "resource.h"
00022 #include "systray.h"
00023 #include "valueEditor.h"
00024 #include "controlEngine.h"
00025 #include "communTools.h"
00026
00027 extern ControlEngine ce;
00028
00029 LRESULT WINAPI SysTrayProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
00030 {
00031         static HICON hIcon;
00032         static NOTIFYICONDATA nid;
00033
00034         const UINT trayId = 1;
00035         const UINT WM_MYTRAY = WM_APP + 1;
00036
00037         HMENU hMenu;
00038         static CMyMenu menu;
00039         POINT pt;
00040
00041         switch(message)
00042         {
00043         case WM_MEASUREITEM: menu.MeasureItem((LPMEASUREITEMSTRUCT)lParam); return TRUE;
00044         case WM_DRAWITEM: menu.DrawItem((LPDRAWITEMSTRUCT)lParam); return TRUE;
00045         case WM_CREATE:
00046                 hIcon = (HICON)LoadImage(
00047                         ce.hInst,
00048                         MAKEINTRESOURCE(IDI_ICON_SYSTRAY),
00049                         IMAGE_ICON,
00050                         GetSystemMetrics(SM_CXSMICON),
00051                         GetSystemMetrics(SM_CYSMICON),
00052                         0);
00053
00054                 if (!hIcon) { ErrorMessage(TRUE, MB_ICONSTOP, NULL); return -1; }
00055
00056                 ZeroMemory(&nid, sizeof(NOTIFYICONDATA));
00057                 nid.cbSize = sizeof(NOTIFYICONDATA);
00058                 nid.hIcon = hIcon;
00059                 nid.hWnd = hWnd;
00060                 nid.uID = trayId;
00061                 nid.uCallbackMessage = WM_MYTRAY;
00062                 lstrcpy(nid.szTip, TEXT("3D Controls"));
00063                 nid.uFlags = NIF_MESSAGE | NIF_TIP | NIF_ICON;
00064                 Shell_NotifyIcon(NIM_ADD, &nid);
00065                 return 0;
00066
00067         case WM_QUIT:
00068         case WM_DESTROY:
00069                 Shell_NotifyIcon(NIM_DELETE, &nid);
00070                 PostQuitMessage(0);
00071                 return 0;
00072
00073         case WM_MYTRAY:
00074                 switch (lParam)
00075                 {
00076                 case WM_RBUTTONDOWN:
00077                         hMenu = LoadMenu(ce.hInst,MAKEINTRESOURCE(IDC_MENU));
00078
00079                         if(hMenu)
00080                         {
00081                                 hMenu = GetSubMenu(hMenu, 0);
00082                                 menu = hMenu;
00083                                 menu.AddTitle(TITLE_NAME);
00084                                 //InsertMenu(hMenu,0, MF_BYPOSITION | MF_OWNERDRAW | MF_STRING | MF_DISABLED, 0, "ShortCutKey");
00085                                 if(hMenu)
00086                                 {
00087                                         //CheckMenuItem(hMenu,IDM_START,MF_BYCOMMAND | isCheck ? MF_CHECKED : MF_UNCHECKED);
00088                                         GetCursorPos(&pt);
00089                                         SetForegroundWindow(hWnd);
00090                                         TrackPopupMenu(
00091                                                 hMenu,
00092                                                 TPM_RIGHTALIGN | TPM_VCENTERALIGN | TPM_RIGHTBUTTON,
00093                                                 pt.x,pt.y,0,
00094                                                 hWnd,NULL);
00095                                 }
00096                         }
00097                         else ErrorMessage(TRUE, MB_ICONEXCLAMATION, NULL);
00098                         break;
00099
00100                 case WM_LBUTTONDBLCLK:
00101                         ShowWindow(CreateDialogParam(ce.hInst,MAKEINTRESOURCE(IDD_DEBUG_STRUCT),NULL,(DLGPROC)DebugStructProc,NULL),SW_SHOW);
00102                         break;
00103                 }
00104                 return 0;
00105
00106         case WM_COMMAND:
00107                 switch(LOWORD(wParam))
00108                 {
00109                 case ID_POPUP_DEBUGER:
00110                         ShowWindow(CreateDialogParam(ce.hInst,MAKEINTRESOURCE(IDD_DEBUG_STRUCT),NULL,(DLGPROC)DebugStructProc,NULL),SW_SHOW);
00111                         return 0;
00112
00113                 case ID_POPUP_ABOUT:
00114                         DialogBox(ce.hInst,MAKEINTRESOURCE(IDD_ABOUT),NULL,(DLGPROC)AboutProc);
00115                         return 0;
00116
00117                 case ID_POPUP_HELP:
00118                         MyOpenBrowser(URL_3D_CONTROLS);
00119                         return 0;
00120
00121                 case ID_POPUP_CONFIG:
00122                         DialogBox(ce.hInst,MAKEINTRESOURCE(IDD_CONFIG),NULL,(DLGPROC)ConfigProc);
00123                         return 0;
00124
00125                 case ID_POPUP_EXIT:
00126                         PostMessage(hWnd, WM_CLOSE, 0, 0);
00127                         return 0;
00128                 }
00129                 break;
00130         }
00131         return DefWindowProc(hWnd, message, wParam, lParam);
00132 }
00133
00134 LRESULT WINAPI AboutProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
00135 {
00136         switch (message)
00137         {
00138         case WM_INITDIALOG:
00139                 {
00140                         MyString title;
00141                         title.Format("3D Controls v%s - Copyright 2003-2004",VERSION);
00142                         Static_SetText(GetDlgItem(hWnd,IDC_STATIC_VERSION),title);
00143                 }
00144                 return TRUE;
00145
00146         case WM_COMMAND:
00147                 switch (wParam)
00148                 {
00149                 case IDC_BUTTON_MAILME:
00150                         MailTo(MAIL_ADRESS);
00151                         return TRUE;
00152
00153                 case IDC_BUTTON_URL:
00154                         MyOpenBrowser(URL_3D_CONTROLS);
00155                         return TRUE;
00156
00157                 case IDC_BUTTON_FORUM:
00158                         MyOpenBrowser(URL_FORUM);
00159                         return TRUE;
00160
00161                 case IDC_BUTTON_LICENCE:
00162                         MyOpenBrowser(URL_LICENCE);
00163                         return TRUE;
00164
00165                 case IDOK:
00166                 case IDCANCEL: EndDialog(hWnd, LOWORD(wParam)); return TRUE;
00167                 }
00168         }
00169         return FALSE;
00170 }
00171
00172 // message custom
00173 #define WM_REFRESH                      WM_USER+1973
00174 #define WM_REFRESH_EDIT         WM_USER+1974
00175 #define WM_REFRESH_SPIN         WM_USER+1975
00176 #define WM_READ_FROM_EDIT       WM_USER+1976
00177
00178 BOOL SetSpinPos(HWND hWnd,int id,int pos)
00179 {
00180         return (BOOL)SendMessage(GetDlgItem(hWnd,id),UDM_SETPOS32,0,pos);
00181 }
00183 BOOL SetSpinRange(HWND hWnd,int id,int minPos,int maxPos,int delta)
00184 {
00185         return (BOOL)SendMessage(GetDlgItem (hWnd,id), UDM_SETRANGE32,minPos,maxPos);
00186 }
00187
00188 int GetSpinPos(HWND hWnd)
00189 {
00190         return (BOOL)SendMessage(hWnd,UDM_GETPOS32,0,0);
00191 }
00192
00193 LRESULT WINAPI ConfigProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
00194 {
00195         static char temp[1024];
00196         HWND hWndCtrl;
00197         /*
00198                 enableAntiAliasing",&enableAntiAliasing
00199         */
00200         switch (message)
00201         {
00202         case WM_REFRESH_SPIN:
00203                 SetSpinPos(hDlg,IDC_SPIN_FOG_START,(int)ce.fog.start);
00204                 SetSpinPos(hDlg,IDC_SPIN_FOG_END,(int)ce.fog.end);
00205                 SetSpinPos(hDlg,IDC_SPIN_FOG_DENSITY,(int)ce.fog.density);
00206                 SetSpinPos(hDlg,IDC_SPIN_XSIZE,(int)ce.dxWin);
00207                 SetSpinPos(hDlg,IDC_SPIN_YSIZE,(int)ce.dyWin);
00208                 SetSpinPos(hDlg,IDC_SPIN_FRAMERATE,ce.refreshTime);
00209                 SetSpinPos(hDlg,IDC_SPIN_CPU,ce.cpuLimit);
00210                 return TRUE;
00211
00212         case WM_READ_FROM_EDIT:
00213                 Edit_GetText(GetDlgItem(hDlg,IDC_RICHEDIT_FOG_START),temp,1024);
00214                 sscanf(temp,"%f",&ce.fog.start);
00215                 Edit_GetText(GetDlgItem(hDlg,IDC_RICHEDIT_FOG_END),temp,1024);
00216                 sscanf(temp,"%f",&ce.fog.end);
00217                 Edit_GetText(GetDlgItem(hDlg,IDC_RICHEDIT_FOG_DENSITY),temp,1024);
00218                 sscanf(temp,"%f",&ce.fog.density);
00219                 Edit_GetText(GetDlgItem(hDlg,IDC_RICHEDIT_FRAMERATE),temp,1024);
00220                 sscanf(temp,"%d",&ce.timerRefresh);
00221                 Edit_GetText(GetDlgItem(hDlg,IDC_RICHEDIT_CPU),temp,1024);
00222                 sscanf(temp,"%d",&ce.cpuLimit);
00223                 Edit_GetText(GetDlgItem(hDlg,IDC_RICHEDIT_XSIZE),temp,1024);
00224                 sscanf(temp,"%d",&ce.dxWin);
00225                 Edit_GetText(GetDlgItem(hDlg,IDC_RICHEDIT_YSIZE),temp,1024);
00226                 sscanf(temp,"%d",&ce.dyWin);
00227                 PostMessage(hDlg,WM_REFRESH_SPIN,NULL,NULL);
00228                 return TRUE;
00229
00230         case WM_REFRESH_EDIT:
00231                 sprintf(temp,"%.2f",ce.fog.start);
00232                 Edit_SetText(GetDlgItem(hDlg,IDC_RICHEDIT_FOG_START),temp);
00233                 sprintf(temp,"%.2f",ce.fog.end);
00234                 Edit_SetText(GetDlgItem(hDlg,IDC_RICHEDIT_FOG_END),temp);
00235                 sprintf(temp,"%.2f",ce.fog.density);
00236                 Edit_SetText(GetDlgItem(hDlg,IDC_RICHEDIT_FOG_DENSITY),temp);
00237                 sprintf(temp,"%d",ce.timerRefresh);
00238                 Edit_SetText(GetDlgItem(hDlg,IDC_RICHEDIT_FRAMERATE),temp);
00239                 sprintf(temp,"%d",ce.cpuLimit);
00240                 Edit_SetText(GetDlgItem(hDlg,IDC_RICHEDIT_CPU),temp);
00241                 sprintf(temp,"%d",ce.dxWin);
00242                 Edit_SetText(GetDlgItem(hDlg,IDC_RICHEDIT_XSIZE),temp);
00243                 sprintf(temp,"%d",ce.dyWin);
00244                 Edit_SetText(GetDlgItem(hDlg,IDC_RICHEDIT_YSIZE),temp);
00245                 return TRUE;
00246
00247         case WM_REFRESH:
00248                 ComboBox_SetCurSel(GetDlgItem(hDlg,IDC_COMBO_FOG_MODE),ce.fog.GetIndexMode());
00249                 ComboBox_SetCurSel(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_BACK),ce.polygonMode.back);
00250                 ComboBox_SetCurSel(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_FRONT),ce.polygonMode.front);
00251                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_LIGHT),Light::IsLighting());
00252                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_LIGHT0),ce.lights[0].isEnable);
00253                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_LIGHT1),ce.lights[1].isEnable);
00254                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_LIGHT2),ce.lights[2].isEnable);
00255                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_LIGHT0_MOVE),ce.lightsMove[0]);
00256                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_LIGHT1_MOVE),ce.lightsMove[1]);
00257                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_LIGHT2_MOVE),ce.lightsMove[2]);
00258                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_VIEW_BACKGROUND),ce.enableBackGround);
00259                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_VIEW_FPS),ce.enableFPS);
00260                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_VIEW_REPERE),ce.enableRepere);
00261                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_VIEW_INERTIA),ce.enableInertia);
00262                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_MONITOR),ce.monitor.enable);
00263                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_VIEW_LIGHT),ce.enableLightView);
00264                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_VIEW_REGION),ce.screenMain.region.enable);
00265                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_PICKING),ce.enablePicking);
00266                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_FOG),ce.fog.isEnable);
00267                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_TITLED),ce.screenMain.enableTitle);
00268                 Button_SetCheck(GetDlgItem(hDlg,IDC_CHECK_INERTIA),ce.enableViewInertia);
00269                 PostMessage(hDlg,WM_REFRESH_EDIT,NULL,NULL);
00270                 return TRUE;
00271
00272         case WM_INITDIALOG:
00273                 ce.screenConfig.hWnd=hDlg;
00274                 // config des SPIN
00275                 SetSpinRange(hDlg,IDC_SPIN_FOG_START,-10,10,1);
00276                 SetSpinRange(hDlg,IDC_SPIN_FOG_END,-10,10,1);
00277                 SetSpinRange(hDlg,IDC_SPIN_FOG_DENSITY,-10,10,1);
00278                 SetSpinRange(hDlg,IDC_SPIN_XSIZE,50,1280,50);
00279                 SetSpinRange(hDlg,IDC_SPIN_YSIZE,50,1280,50);
00280                 SetSpinRange(hDlg,IDC_SPIN_FRAMERATE,0,200,5);
00281                 SetSpinRange(hDlg,IDC_SPIN_CPU,10,100,10);
00282
00283                 // config des combo
00284                 ComboBox_ResetContent(GetDlgItem(hDlg,IDC_COMBO_FOG_MODE));
00285                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_FOG_MODE),"linear");
00286                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_FOG_MODE),"exp");
00287                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_FOG_MODE),"exp²");
00288
00289                 ComboBox_ResetContent(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_FRONT));
00290                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_FRONT),"fill");
00291                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_FRONT),"line");
00292                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_FRONT),"dot");
00293                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_FRONT),"nothing");
00294
00295                 ComboBox_ResetContent(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_BACK));
00296                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_BACK),"fill");
00297                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_BACK),"line");
00298                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_BACK),"dot");
00299                 ComboBox_AddString(GetDlgItem(hDlg,IDC_COMBO_POLYGONE_BACK),"nothing");
00300                 PostMessage(hDlg,WM_REFRESH,NULL,NULL);
00301                 PostMessage(hDlg,WM_REFRESH_SPIN,NULL,NULL);
00302
00303                 return TRUE;
00304
00305         case WM_VSCROLL: // spin vertical
00306         case WM_HSCROLL: // spin horizontal
00307                 if ((int)LOWORD(wParam) == SB_THUMBPOSITION)
00308                 {
00309                         int num = GetSpinPos((HWND)lParam);
00310                         switch (GetDlgCtrlID((HWND)lParam))
00311                         {
00312                         case IDC_SPIN_XSIZE: ce.dxWin = num; break;
00313                         case IDC_SPIN_YSIZE: ce.dyWin = num; break;
00314                         case IDC_SPIN_FRAMERATE: ce.refreshTime = num; break;
00315                         case IDC_SPIN_CPU: ce.cpuLimit= num; break;
00316                         case IDC_SPIN_FOG_START: ce.fog.start = (float)num; break;
00317                         case IDC_SPIN_FOG_END: ce.fog.end = (float)num; break;
00318                         case IDC_SPIN_FOG_DENSITY: ce.fog.density = (float)num; break;
00319                         default: return FALSE;
00320                         }
00321                         PostMessage(hDlg,WM_REFRESH_EDIT,NULL,NULL);
00322                         return TRUE;
00323                 }
00324                 break;
00325
00326         case WM_COMMAND:
00327                 int id;
00328                 id = LOWORD(wParam);
00329                 hWndCtrl = GetDlgItem(hDlg,id);
00330                 switch (id)
00331                 {
00332                         // LIGHT
00333                 case IDC_CHECK_LIGHT: Light::SetLighting(Button_GetCheck(hWndCtrl)); return TRUE;
00334                 case IDC_CHECK_LIGHT0: ce.lights[0].isEnable=Button_GetCheck(hWndCtrl); return TRUE;
00335                 case IDC_CHECK_LIGHT1: ce.lights[1].isEnable=Button_GetCheck(hWndCtrl); return TRUE;
00336                 case IDC_CHECK_LIGHT2: ce.lights[2].isEnable=Button_GetCheck(hWndCtrl); return TRUE;
00337                 case IDC_CHECK_LIGHT0_MOVE: ce.lightsMove[0]=Button_GetCheck(hWndCtrl); return TRUE;
00338                 case IDC_CHECK_LIGHT1_MOVE: ce.lightsMove[1]=Button_GetCheck(hWndCtrl); return TRUE;
00339                 case IDC_CHECK_LIGHT2_MOVE: ce.lightsMove[2]=Button_GetCheck(hWndCtrl); return TRUE;
00340                         // VIEW
00341                 case IDC_CHECK_VIEW_INERTIA: ce.enableViewInertia=Button_GetCheck(hWndCtrl); return TRUE;
00342                 case IDC_CHECK_VIEW_BACKGROUND: ce.enableBackGround=Button_GetCheck(hWndCtrl); return TRUE;
00343                 case IDC_CHECK_VIEW_FPS: ce.enableFPS=Button_GetCheck(hWndCtrl); return TRUE;
00344                 case IDC_CHECK_VIEW_REPERE: ce.enableRepere=Button_GetCheck(hWndCtrl); return TRUE;
00345                 case IDC_CHECK_VIEW_LIGHT: ce.enableLightView=Button_GetCheck(hWndCtrl); return TRUE;
00346                 case IDC_CHECK_VIEW_REGION: ce.screenMain.region.enable=Button_GetCheck(hWndCtrl); return TRUE;
00347                         // PICKING
00348                 case IDC_CHECK_PICKING:ce.enablePicking=Button_GetCheck(hWndCtrl); return TRUE;
00349                 //IDC_STATIC_PICKING_FULL:
00350                 //IDC_STATIC_PICKING_SELECTED:
00351                         // FOG
00352                 case IDC_CHECK_FOG: ce.fog.Enable(Button_GetCheck(hWndCtrl)); return TRUE;
00353                 case IDC_RICHEDIT_FOG_START:
00354                 case IDC_RICHEDIT_FOG_END:
00355                 case IDC_RICHEDIT_FOG_DENSITY:
00356                         PostMessage(hDlg,WM_READ_FROM_EDIT,NULL,NULL); return TRUE;
00357                 case IDC_COMBO_FOG_MODE: //Edit_GetText(hWndCtrl,temp,1024); ce.fog.mode=atof(temp); return TRUE;
00358                         return TRUE;
00359                         // RENDER
00360                 case IDC_COMBO_POLYGONE_FRONT:// ce.polygonMode.front
00361                 case IDC_COMBO_POLYGONE_BACK:// ce.polygonMode.back
00362                         return TRUE;
00363                 case IDC_CHECK_TITLED: ce.screenMain.enableTitle=Button_GetCheck(hWndCtrl); ce.screenMain.Update(TRUE); return TRUE;
00364                 case IDC_RADIO_FULLSCREEN: ce.screenMain.enableFullScreen=TRUE; ce.screenMain.Update(TRUE); return TRUE;
00365                 case IDC_RADIO_CUSTOMSCREEN: ce.screenMain.enableFullScreen=FALSE; ce.screenMain.Update(TRUE); return TRUE;
00366                 case IDC_RICHEDIT_XSIZE:
00367                 case IDC_RICHEDIT_YSIZE:
00368                 case IDC_RICHEDIT_FRAMERATE:
00369                 case IDC_RICHEDIT_CPU:
00370                         PostMessage(hDlg,WM_READ_FROM_EDIT,NULL,NULL); return TRUE;
00371                         return TRUE;
00372                         // TOOLS
00373                 case IDC_CHECK_INERTIA: ce.enableInertia=Button_GetCheck(hWndCtrl); return TRUE;
00374                 case IDC_CHECK_MONITOR: ce.monitor.enable=Button_GetCheck(hWndCtrl); return TRUE;
00375                         // GENERAL
00376                 case IDOK:
00377                 case IDCANCEL:
00378                         ce.screenConfig.hWnd=NULL;
00379                         EndDialog(hDlg, LOWORD(wParam));
00380                         return TRUE;
00381
00382                 case IDC_BUTTON_DEFAULT:
00383                         ce.lightsMove[0]=DEFAULT_LIGHT_MOVE0;
00384                         ce.lightsMove[1]=DEFAULT_LIGHT_MOVE1;
00385                         ce.lightsMove[2]=DEFAULT_LIGHT_MOVE2;
00386                         ce.lights[0].isEnable=DEFAULT_LIGHT_ENABLE0;
00387                         ce.lights[1].isEnable=DEFAULT_LIGHT_ENABLE1;
00388                         ce.lights[2].isEnable=DEFAULT_LIGHT_ENABLE2;
00389
00390                         ce.fog.isEnable=DEFAULT_FOG_ENABLE;
00391                         ce.fog.start=DEFAULT_FOG_START;
00392                         ce.fog.end=DEFAULT_FOG_END;
00393                         ce.fog.density=DEFAULT_FOG_DENSITY;
00394                         ce.fog.mode=DEFAULT_FOG_MODE;
00395
00396                         ce.enableAntiAliasing=DEFAULT_ANTIALIASING;
00397                         ce.enableRepere=DEFAULT_VIEW_REPERE;
00398                         ce.enableLightView=DEFAULT_VIEW_LIGHT;
00399                         ce.enablePicking=DEFAULT_PICKING;
00400                         ce.enableDelta=DEFAULT_DELTA;
00401                         ce.enableBackGround=DEFAULT_VIEW_BACKGROUND;
00402                         ce.enableFPS=DEFAULT_VIEW_FPS;
00403                         ce.enableInertia=DEFAULT_INERTIA;
00404                         ce.monitor.enable=DEFAULT_MONITOR;
00405                         ce.enableViewInertia=DEFAULT_VIEW_INERTIA;
00406
00407                         ce.screenMain.enableFullScreen=DEFAULT_FULLSCREEN;
00408                         ce.screenMain.enableTitle=DEFAULT_TITLED;
00409                         ce.screenMain.region.enable=DEFAULT_VIEW_REGION;
00410
00411                         ce.polygonMode.front=DEFAULT_POLYGON_FRONT;
00412                         ce.polygonMode.back=DEFAULT_POLYGON_BACK;
00413
00414                         ce.dxWin=DEFAULT_XSIZE;
00415                         ce.dyWin=DEFAULT_YSIZE;
00416
00417                         ce.refreshTime=DEFAULT_TIMER_REFRESH;
00418                         ce.cpuLimit=DEFAULT_CPU_LIMIT;
00419                         PostMessage(hDlg,WM_REFRESH,NULL,NULL);
00420                         PostMessage(hDlg,WM_REFRESH_SPIN,NULL,NULL);
00421                         return TRUE;
00422                 }
00423         }
00424         return FALSE;
00425 }
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: systray.h File Reference

systray.h File Reference

Affiche un systray avec un menu. More...

Go to the source code of this file.

Defines

#define | URL_3D_CONTROLS "http://mignonsoft.free.fr/logiciel/3d_controls"
#define | URL_FORUM "http://mignonsoft.free.fr/forum"
#define | URL_LICENCE "http://www.gnu.org/copyleft/gpl.html"
#define | MAIL_ADRESS "sebastien.bloc@free.fr"
#define | TITLE_NAME "3D Controls"

Functions

LRESULT WINAPI | AboutProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
LRESULT WINAPI | SysTrayProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
LRESULT WINAPI | ConfigProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)

Detailed Description

Affiche un systray avec un menu.

  • Debuger
  • Aide
  • Apropos
  • Fermer

Definition in file systray.h.

Define Documentation

#define MAIL_ADRESS "sebastien.bloc@free.fr"

Definition at line 36 of file systray.h.

Referenced by AboutProc().

#define TITLE_NAME "3D Controls"

Definition at line 37 of file systray.h.

Referenced by SysTrayProc().

#define URL_3D_CONTROLS "http://mignonsoft.free.fr/logiciel/3d_controls"

Definition at line 33 of file systray.h.

Referenced by AboutProc(), and SysTrayProc().

#define URL_FORUM "http://mignonsoft.free.fr/forum"

Definition at line 34 of file systray.h.

Referenced by AboutProc().

#define URL_LICENCE "http://www.gnu.org/copyleft/gpl.html"

Definition at line 35 of file systray.h.

Referenced by AboutProc().

Function Documentation

LRESULT WINAPI AboutProc | ( | HWND | hWnd,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Definition at line 134 of file systray.cpp.

References MyString::Format(), IDC_BUTTON_FORUM, IDC_BUTTON_LICENCE, IDC_BUTTON_MAILME, IDC_BUTTON_URL, IDC_STATIC_VERSION, MAIL_ADRESS, MailTo(), MyOpenBrowser(), URL_3D_CONTROLS, URL_FORUM, URL_LICENCE, and VERSION.

Referenced by SysTrayProc().

LRESULT WINAPI ConfigProc | ( | HWND | hWnd,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Definition at line 193 of file systray.cpp.

References PolygonMode::back, ce, ControlEngine::cpuLimit, DEFAULT_ANTIALIASING, DEFAULT_CPU_LIMIT, DEFAULT_DELTA, DEFAULT_FOG_DENSITY, DEFAULT_FOG_ENABLE, DEFAULT_FOG_END, DEFAULT_FOG_MODE, DEFAULT_FOG_START, DEFAULT_FULLSCREEN, DEFAULT_INERTIA, DEFAULT_LIGHT_ENABLE0, DEFAULT_LIGHT_ENABLE1, DEFAULT_LIGHT_ENABLE2, DEFAULT_LIGHT_MOVE0, DEFAULT_LIGHT_MOVE1, DEFAULT_LIGHT_MOVE2, DEFAULT_MONITOR, DEFAULT_PICKING, DEFAULT_POLYGON_BACK, DEFAULT_POLYGON_FRONT, DEFAULT_TIMER_REFRESH, DEFAULT_TITLED, DEFAULT_VIEW_BACKGROUND, DEFAULT_VIEW_FPS, DEFAULT_VIEW_INERTIA, DEFAULT_VIEW_LIGHT, DEFAULT_VIEW_REGION, DEFAULT_VIEW_REPERE, DEFAULT_XSIZE, DEFAULT_YSIZE, Fog::density, ControlEngine::dxWin, ControlEngine::dyWin, Fog::Enable(), Region::enable, ControlEngine::enableAntiAliasing, ControlEngine::enableBackGround, ControlEngine::enableDelta, ControlEngine::enableFPS, Screen::enableFullScreen, ControlEngine::enableInertia, ControlEngine::enableLightView, ControlEngine::enablePicking, ControlEngine::enableRepere, Screen::enableTitle, ControlEngine::enableViewInertia, Fog::end, ControlEngine::fog, PolygonMode::front, Fog::GetIndexMode(), GetSpinPos(), Screen::hWnd, IDC_BUTTON_DEFAULT, IDC_CHECK_FOG, IDC_CHECK_INERTIA, IDC_CHECK_LIGHT, IDC_CHECK_LIGHT0, IDC_CHECK_LIGHT0_MOVE, IDC_CHECK_LIGHT1, IDC_CHECK_LIGHT1_MOVE, IDC_CHECK_LIGHT2, IDC_CHECK_LIGHT2_MOVE, IDC_CHECK_MONITOR, IDC_CHECK_PICKING, IDC_CHECK_TITLED, IDC_CHECK_VIEW_BACKGROUND, IDC_CHECK_VIEW_FPS, IDC_CHECK_VIEW_INERTIA, IDC_CHECK_VIEW_LIGHT, IDC_CHECK_VIEW_REGION, IDC_CHECK_VIEW_REPERE, IDC_COMBO_FOG_MODE, IDC_COMBO_POLYGONE_BACK, IDC_COMBO_POLYGONE_FRONT, IDC_RADIO_CUSTOMSCREEN, IDC_RADIO_FULLSCREEN, IDC_RICHEDIT_CPU, IDC_RICHEDIT_FOG_DENSITY, IDC_RICHEDIT_FOG_END, IDC_RICHEDIT_FOG_START, IDC_RICHEDIT_FRAMERATE, IDC_RICHEDIT_XSIZE, IDC_RICHEDIT_YSIZE, IDC_SPIN_CPU, IDC_SPIN_FOG_DENSITY, IDC_SPIN_FOG_END, IDC_SPIN_FOG_START, IDC_SPIN_FRAMERATE, IDC_SPIN_XSIZE, IDC_SPIN_YSIZE, Fog::isEnable, Light::isEnable, ControlEngine::lights, ControlEngine::lightsMove, Fog::mode, ControlEngine::monitor, num, ControlEngine::polygonMode, ControlEngine::refreshTime, Screen::region, ControlEngine::screenConfig, ControlEngine::screenMain, Light::SetLighting(), SetSpinPos(), SetSpinRange(), Fog::start, ControlEngine::timerRefresh, Screen::Update(), WM_READ_FROM_EDIT, WM_REFRESH, WM_REFRESH_EDIT, and WM_REFRESH_SPIN.

Referenced by SysTrayProc().

LRESULT WINAPI SysTrayProc | ( | HWND | hWnd,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Definition at line 29 of file systray.cpp.

References AboutProc(), CMyMenu::AddTitle(), ce, ConfigProc(), DebugStructProc(), CMyMenu::DrawItem(), ErrorMessage(), ControlEngine::hInst, ID_POPUP_ABOUT, ID_POPUP_CONFIG, ID_POPUP_DEBUGER, ID_POPUP_EXIT, ID_POPUP_HELP, IDC_MENU, IDD_ABOUT, IDD_CONFIG, IDD_DEBUG_STRUCT, IDI_ICON_SYSTRAY, CMyMenu::MeasureItem(), MyOpenBrowser(), TITLE_NAME, and URL_3D_CONTROLS.

Referenced by ControlEngine::Start().

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: systray.h Source File

systray.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 **************************************************************************************
00018
00019 *********************************************************************************** */
00020
00030 #ifndef INCLUDE_SYSTRAY_3D_CONTROL
00031 #define INCLUDE_SYSTRAY_3D_CONTROL
00032
00033 #define URL_3D_CONTROLS         "http://mignonsoft.free.fr/logiciel/3d_controls"
00034 #define URL_FORUM                       "http://mignonsoft.free.fr/forum"
00035 #define URL_LICENCE                     "http://www.gnu.org/copyleft/gpl.html"
00036 #define MAIL_ADRESS                     "sebastien.bloc@free.fr"
00037 #define TITLE_NAME                      "3D Controls"
00038
00039 LRESULT WINAPI AboutProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
00040 LRESULT WINAPI SysTrayProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
00041 LRESULT WINAPI ConfigProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
00042
00043 #endif
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: taskWindow.cpp File Reference

taskWindow.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "myList.h"
#include "texture.h"
#include "button.h"
#include "textBox.h"
#include "container.h"
#include "window.h"
#include "taskWindow.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 31 of file taskWindow.cpp.

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: taskWindow.cpp Source File

taskWindow.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "myList.h"
00023 #include "texture.h"
00024 #include "button.h"
00025 #include "textBox.h"
00026 #include "container.h"
00027 #include "window.h"
00028 #include "taskWindow.h"
00029
00030
00031 extern ControlEngine ce;
00032
00033 TaskWindow::TaskWindow()
00034 {
00035         name="TaskWindow";
00036
00037         title.SetText("Task");
00038         title.useClose = FALSE;
00039         title.useMax = FALSE;
00040
00041         txtTranche="Task";
00042 }
00043
00044 TaskWindow::~TaskWindow()
00045 {
00046 }
00047
00048 void TaskWindow::Create()
00049 {
00050         Window::Create(20);
00051         Size(200,200);
00052         XDockLeft(0,200);
00053         YDockBottom(0,150);
00054         Move(0,0,-25);
00055         Rotate(0,45,0);
00056
00057         FaceNode *nodeCur;
00058         ce.Push(this);
00059         nodeCur = ce.primitive.GoTo(FACE_RIGHT);
00060                 // text sur la tranche
00061                 txtTranche.Create();
00062                 txtTranche.text.scale=0.5;
00063                 txtTranche.text.material.SetDS(0,0,1);
00064                 txtTranche.faceNode->elem->angle.z=90;
00065                 txtTranche.faceNode->elem->size.x.Set(0,1,&nodeCur->elem->computeSize.y);
00066                 txtTranche.faceNode->elem->size.y.Set(0,1,&nodeCur->elem->computeSize.x);
00067         ce.Pop();
00068 }
00069
00070 BOOL TaskWindow::Add(Title *title)
00071 {
00072         ce.Push(&client);
00073         FaceNode *node = ce.primitive.GoTo(FACE_FRONT);
00074         ElemTaskWindow *elem = tasks.i.AddNewLast();
00075         elem->title = title;
00076         elem->button.Create();
00077         elem->button.SetText(title->caption->GetText());
00078         elem->button.text.SetWrapping(FALSE,FALSE,TRUE);
00079         elem->button.onButton.click.connect(title,Title::OnOriginal);
00080         ce.Pop();
00081         Refresh();
00082         return TRUE;
00083 }
00084
00091 void TaskWindow::Refresh()
00092 {
00093         ElemTaskWindow *elem;
00094         double xSize=70,ySize=30;
00095         double xPos=2,yPos=2;
00096
00097         Face * face = client.faceNode->Elems(FACE_FRONT);
00098         double deltaX = face->computeSize.x;//200;
00099         double deltaY = face->computeSize.y;//200;
00100         for (tasks.i=0;tasks.i.More();tasks.i++)
00101         {
00102                 elem = tasks.i.GetElemPtr();
00103                 if ((xPos+xSize)>deltaX)
00104                 {
00105                         xPos=2;
00106                         yPos+=ySize+2;
00107                         //if (yPos>deltaY) return; // en dehors du conteneur
00108                 }
00109                 elem->button.XDockLeft(xPos,xSize);
00110                 elem->button.YDockTop(yPos,ySize);
00111                 xPos+=xSize+2;
00112         }
00113 }
00114
00115 int TaskWindow::Find(Title *title)
00116 {
00117         ElemTaskWindow *elem;
00118         for (tasks.i=0;tasks.i.More();tasks.i++)
00119         {
00120                 elem = tasks.i.GetElemPtr();
00121                 if (elem->title==title) return tasks.i.GetIndex();
00122         }
00123         return -1;
00124 }
00125
00128 BOOL TaskWindow::Restore(Title *title)
00129 {
00130         int num = Find(title);
00131         if (num==-1) return FALSE;
00132
00133         ce.timerRefresh.onTimer.connect(this,OnTimerSupr);
00134         return TRUE;
00135 }
00136
00137 int TaskWindow::OnTimerSupr(Timer *)
00138 {
00139         Debug0Param("TaskWindow::OnTimerSupr()");
00140         ce.timerRefresh.onTimer.disconnect(this);
00141         ce.pickingCursor.ResetCurrent();
00142         tasks.i.Supr();
00143         Refresh();
00144         return 0;
00145 }
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: taskWindow.h File Reference

taskWindow.h File Reference

#include "control.h"
#include "window.h"

Go to the source code of this file.

Classes

class | ElemTaskWindow
class | TaskWindow

Generated on Fri Aug 20 19:20:39 2004 for 3d Controls by doxygen 1.3.6


3d Controls: taskWindow.h Source File

taskWindow.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_TASK_WINDOW_H
00024 #define INCLUDE_TASK_WINDOW_H
00025
00026 #include "control.h"
00027 #include "window.h"
00028
00029 class ElemTaskWindow
00030 {
00031 public:
00032         Button button;
00033         Title *title;
00034 };
00035
00036 class TaskWindow: public Window
00037 {
00038 private:
00039         MyList<ElemTaskWindow> tasks;
00040         int Find(Title *title);
00041         Timer timerSupr;
00042         int OnTimerSupr(Timer *);
00043
00044 public:
00045         // dans la zone client
00046         TextBox txtTranche;
00047
00048         TaskWindow();
00049         ~TaskWindow();
00050         virtual void Create();
00051         BOOL Add(Title *title);
00052         BOOL Restore(Title *title);
00053         void Refresh();
00054
00055 };
00056
00057 #endif
Generated on Fri Aug 20 19:19:49 2004 for 3d Controls by doxygen 1.3.6


3d Controls: text3d.cpp File Reference

text3d.cpp File Reference

#include "3d.h"
#include "MyString.h"
#include "text3d.h"
#include "controlEngine.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 24 of file text3d.cpp.

Generated on Fri Aug 20 19:20:40 2004 for 3d Controls by doxygen 1.3.6


3d Controls: text3d.cpp Source File

text3d.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "MyString.h"
00021 #include "text3d.h"
00022 #include "controlEngine.h"
00023
00024 extern ControlEngine ce;
00025
00026 BasicText3D::BasicText3D()
00027 {
00028         xCenter=0;
00029         yCenter=0;
00030         usePicking=FALSE;
00031         font=NULL;
00032         type=ft_unknown;
00033         material.SetFull();
00034         depth=0.1f;
00035         scale=1;
00036         zCenter=1;
00037         SetRatioXY(1);
00038 }
00039
00040 void BasicText3D::SetRatioXY(GLdouble value)
00041 {
00042         ratioXY=value;
00043         ratioYX=1.0/value;
00044 }
00045
00046 void BasicText3D::Setup(FTFont *f,FontType t,int x,int y)
00047 {
00048         font=f;
00049         type=t;
00050         xCenter=x;
00051         yCenter=y;
00052 }
00053
00054 void BasicText3D::operator=(BasicText3D &src)
00055 {
00056         material=src.material;
00057         font=src.font;
00058         type=src.type;
00059         xCenter=src.xCenter;
00060         yCenter=src.yCenter;
00061         depth=src.depth;
00062         scale=src.scale;
00063         zCenter=src.zCenter;
00064         usePicking=src.usePicking;
00065 }
00066
00078 BOOL BasicText3D::DrawPicking(char *text)
00079 {
00080         //glPushName(idLetter);
00081         return usePicking?Draw(text):FALSE;
00082 }
00083
00084 BOOL BasicText3D::Draw(char letter)
00085 {
00086         char valueCur[2]={0,0};
00087         valueCur[0]=letter;
00088         return Draw(valueCur);
00089 }
00090
00091 BOOL BasicText3D::Draw(char *text)
00092 {
00093         if (!font) return FALSE;
00094         ce.monitor.End("draw");
00095         BOOL result = TRUE;
00096         material.Use();
00097         glPushMatrix();
00098         Point3D<float> decal;
00099         decal.z=(float)zCenter+(type==ft_extrude)?depth:0; // petit decalade dans les z pour eviter que le text soit caché par la face l'englobant
00100
00101         ce.monitor.Begin("textRenderCenter");
00102         switch (xCenter)
00103         {
00104         case -1: break;
00105         case 0: decal.x= -GetWidth(text)/2.0f; break;
00106         case 1: decal.x= -GetWidth(text); break;
00107         }
00108
00109         switch (yCenter)
00110         {
00111         case -1: decal.y= -GetAscender(); break;
00112         case 0: break;
00113         case 1: decal.y= -GetDescender(); break;
00114         }
00115
00116         if (ratioXY!=1) glScaled(1.0/ratioXY,1,1);
00117         decal.glTranslated();
00118         ce.monitor.End("textRenderCenter");
00119         ce.monitor.Begin("textRender");
00120         switch(type)
00121         {
00122         case ft_texture:
00123                 // le contour des lettres doivent etre transparente
00124                 glEnable(GL_TEXTURE_2D); // bug de la ftgl ?! ca devrais etre automatique d'apres moi
00125                 {
00126                         FTGLTextureFont *curFont = (FTGLTextureFont *)font;
00127                         curFont->Render(text);
00128                 }
00129                 glDisable(GL_BLEND);
00130                 //font->Render(text);
00131                 break;
00132         case ft_extrude:
00133                 font->Depth(depth); // profondeur de l'extrude
00134                 //glEnable(GL_DEPTH_TEST);
00135                 //glDisable(GL_BLEND);
00136                 //glNormal3f(0,0,1);
00137                 font->Render(text);
00138                 break;
00139         case ft_bitmap:
00140         case ft_pixmap:
00141                 glRasterPos2f(0,0);
00142                 font->Render(text);
00143                 break;
00144         case ft_outline:
00145         case ft_polygon:
00146                 glDisable(GL_BLEND);
00147                 font->Render(text);
00148                 break;
00149         case ft_unknown: result = FALSE;
00150         }
00151         ce.monitor.End("textRender");
00152         glPopMatrix();
00153         ce.monitor.Begin("draw");
00154         return result;
00155 }
00156
00157 Point3D<float> BasicText3D::GetBox(char *text)
00158 {
00159         Point3D<float> start,end,delta;
00160         if (!font) return delta; // erreur
00161         font->BBox(text, start.x,start.y,start.z, end.x,end.y,end.z);
00162         delta.Set(end.x-start.x,end.y-start.y,end.z-start.z);
00163         return end;
00164 }
00165
00166 float BasicText3D::GetAscender()
00167 {
00168         return font->Ascender();
00169 }
00170
00171 float BasicText3D::GetDescender()
00172 {
00173         return font->Descender();
00174 }
00175
00176 float BasicText3D::GetHeight()
00177 {
00178         return GetAscender()-GetDescender();
00179 }
00180
00181 float BasicText3D::GetWidth(char letter)
00182 {
00183         char valueCur[2]={0,0};
00184         valueCur[0]=letter;
00185         return GetWidth(valueCur);
00186 }
00187
00189 float BasicText3D::GetWidth(char *text)
00190 {
00191         return font->Advance(text);
00192 }
00193
00194 // ***************************************************************************
00195
00196 ParsingLine::ParsingLine() : ParsingElem()
00197 {
00198         nbChar=0;
00199         deltaY=0;
00200         align=align_begin;
00201 }
00202
00203 void ParsingLine::operator=(ParsingLine &src)
00204 {
00205         ParsingElem::operator=(src);
00206         nbChar=src.nbChar;
00207         deltaY=src.deltaY;
00208         align=src.align;
00209         words=src.words; // copie de la list des mots (a verrifié)
00210 }
00211
00212 // ***************************************************************************
00213
00214 ParsingElem::ParsingElem()
00215 {
00216         deltaX=0;
00217         isWord=FALSE;
00218 }
00219
00220 void ParsingElem::operator=(ParsingElem &src)
00221 {
00222         deltaX=src.deltaX;
00223         isWord=src.isWord;
00224 }
00225
00226 // ***************************************************************************
00227
00228 ParsingWord::ParsingWord() : ParsingElem()
00229 {
00230         deltaX=0;
00231 }
00232
00233 void ParsingWord::operator=(ParsingWord &src)
00234 {
00235         ParsingElem::operator=(src);
00236         text=src.text;
00237 }
00238
00239 // ***************************************************************************
00240
00241 Text3D::Text3D()
00242 {
00243         idCallList=0;
00244         xAlign=align_begin;
00245         yAlign=align_begin;
00246         SetJustifyLimit(10,10);
00247         enableClipping=FALSE;
00248         isChanged=FALSE;
00249         SetWrapping(FALSE,TRUE,TRUE);
00250 }
00251
00252 Text3D::~Text3D()
00253 {
00254         if (idCallList) glDeleteLists(idCallList,1);
00255 }
00256 void Text3D::operator=(Text3D &src)
00257 {
00258         BasicText3D::operator=(src);
00259         clipping=src.clipping;
00260         xAlign=src.xAlign;
00261         yAlign=src.yAlign;
00262         enableClipping=src.enableClipping;
00263         idCallList=0; // si recopie le callList dois etre differentié
00264         isChanged=TRUE;
00265         wordWrap=src.wordWrap;
00266         lineWrap=src.lineWrap;
00267         letterWrap=src.letterWrap;
00268         xJustifyLimit=src.xJustifyLimit;
00269 }
00270
00271 void Text3D::SetWrapping(BOOL line,BOOL word,BOOL letter)
00272 {
00273         wordWrap=word;
00274         lineWrap=line;
00275         letterWrap=letter;
00276 }
00277
00278 void Text3D::SetClipping(double xClipping,double yClipping)
00279 {
00280         isChanged=isChanged||clipping.x!=xClipping||clipping.y!=yClipping;
00281         enableClipping=TRUE;
00282         clipping.Set(xClipping,yClipping);
00283 }
00284
00285 void Text3D::SetClipping(Point2D<double> newClipping)
00286 {
00287         isChanged=isChanged||clipping.x!=newClipping.x||clipping.y!=newClipping.y;
00288         enableClipping=TRUE;
00289         clipping=newClipping;
00290 }
00291
00292 void Text3D::SetAlign(TextAlign x,TextAlign y)
00293 {
00294         isChanged=isChanged||xAlign!=x||yAlign!=y;
00295         xAlign=x;
00296         yAlign=y;
00297 }
00298
00299 void Text3D::Setup(FTFont *f,FontType t)
00300 {
00301         isChanged=isChanged||font!=f||type!=t;
00302         BasicText3D::Setup(f,t,-1,-1);
00303 }
00304
00305 void Text3D::ComputeSize(MyList<ParsingLine> *linesCur,BOOL isWordSizeCompute)
00306 {
00307         ParsingLine *line;
00308         for (linesCur->i=0;linesCur->i.More();linesCur->i++)
00309         {
00310                 line = linesCur->i.GetElemPtr();
00311                 ComputeLineSize(line,isWordSizeCompute);
00312         }
00313 }
00314
00315 void Text3D::ComputeLineSize(ParsingLine *line,BOOL isWordSizeCompute)
00316 {
00317         ParsingWord *word;
00318         line->nbChar=0;
00319         line->deltaX=0;
00320         line->deltaY=GetHeight();
00321         line->align=xAlign;
00322         for (line->words.i=0;line->words.i.More();line->words.i++)
00323         {
00324                 word = line->words.i.GetElem();
00325                 if (isWordSizeCompute) word->deltaX=GetWidth(word->text);
00326                 line->deltaX+=word->deltaX;
00327                 line->nbChar+=word->text.GetSize();
00328         }
00329 }
00330
00336 float Text3D::AddLine(ParsingLine *line)
00337 {
00338         ParsingLine **lineOutPtr = linesUses.i.AddNewLast();
00339         *lineOutPtr=line;
00340
00341         int nbObject;
00342         line->xPos=0;
00343         line->xJustify=0;
00344         switch(line->align)
00345         {
00346         case align_begin: break;
00347         case align_center:
00348                 line->xPos=(realClipping.x-line->deltaX)/2.0;
00349                 break;
00350         case align_end:
00351                 line->xPos=realClipping.x-line->deltaX;
00352                 break;
00353         case align_justify:
00354                 if (wordWrap) nbObject = (line->words.GetNbElem()+1)/2; //  0=>0 , 1=>1 , 2=>1 , 3=>2, etc ...
00355                 else nbObject = line->nbChar;
00356                 if (nbObject>1) line->xJustify=(realClipping.x-line->deltaX)/(GLdouble)(nbObject-1);
00357                 if (line->xJustify>xJustifyLimit) line->xJustify=0; // si la justification espace trop les mots alirs anule la justification
00358                 break;
00359         }
00360         return line->deltaY;
00361 }
00362
00363 void Text3D::ApplyRealClipping()
00364 {
00365         if (scale!=1)
00366         {
00367                 glScaled(scale,scale,1); // taille relative
00368                 realClipping=clipping/scale; // agrandi le clipping pour coller au scalling
00369         }
00370         else realClipping=clipping;
00371 }
00372
00383 BOOL Text3D::Draw()
00384 {
00385         //return TRUE;
00386         if (value.IsEmpty()) return TRUE;
00387         ce.monitor.Begin("text");
00388
00389         glPushMatrix();
00390         ApplyRealClipping();    // calcul le clipping reel suivant le scale
00391         ComputeSize(&lines,TRUE); // calcul la taille des mots et des lignes
00392         double ySize=ComputeLayout();// calcul de la mise en page
00393
00394         // alignement dans les Y
00395         yJustify = 0;
00396         switch(yAlign)
00397         {
00398         case align_begin: break;
00399         case align_center: glTranslated(0,-(realClipping.y-ySize)/2.0,0); break;
00400         case align_end: glTranslated(0,-(realClipping.y-ySize),0); break;
00401         case align_justify:
00402                 if (linesUses.GetNbElem()>1)
00403                 {
00404                         yJustify=(realClipping.y-ySize)/(double)(linesUses.GetNbElem()-1);
00405                         if (yJustify>yJustifyLimit) yJustify=0;
00406                 }
00407         }
00408
00409         // affichage proprement dit
00410         for (linesUses.i=0;linesUses.i.More();linesUses.i++)
00411                 DrawLine(linesUses.i.GetElem());
00412         glPopMatrix();
00413         ce.monitor.End("text");
00414         return TRUE;
00415 }
00416
00417
00418 void Text3D::SetText(char *text)
00419 {
00420         value=text;
00421         AnalyseGram();
00422 }
00423
00443 BOOL Text3D::AnalyseLex(int indBegin,int *indEnd,BOOL *isEnd,BOOL *isReturn)
00444 {
00445         char letter;
00446         BOOL isSeparator = FALSE;
00447         BOOL isWord = FALSE;
00448         *isReturn=FALSE;
00449         *isEnd=FALSE;
00450         int i;
00451         for (i=indBegin;i<value.GetSize();i++)
00452         {
00453                 letter=value[i];
00454                 switch (letter)
00455                 {
00456                 case '\n':
00457                         *indEnd=i;
00458                         *isReturn=TRUE;
00459                         return isWord;
00460                 case ' ':
00461                 case '\t':
00462                         if (isWord)
00463                         {
00464                                 *indEnd=i;
00465                                 return isWord;
00466                         }
00467                         isSeparator=TRUE;
00468                         break;
00469                 default:
00470                         if (isSeparator)
00471                         {
00472                                 *indEnd=i;
00473                                 return isWord;
00474                         }
00475                         isWord=TRUE;
00476                 }
00477         }
00478         *indEnd=i;
00479         *isEnd=TRUE;
00480         return isWord;
00481 }
00482
00488 void Text3D::AnalyseGram()
00489 {
00490         lines.i.SuprAll();
00491         words.i.SuprAll();
00492
00493         ParsingLine *line = NULL;
00494         ParsingWord *word = NULL;
00495
00496         BOOL isEnd;
00497         BOOL isReturn;
00498         BOOL isWord;
00499         int indBegin = 0;
00500         int indEnd;
00501         do
00502         {
00503                 isWord = AnalyseLex(indBegin,&indEnd,&isEnd,&isReturn);
00504                 if (isEnd&&(indBegin==indEnd)) break; // si c'est la fin sans mots ==> finir
00505                 if (!line) line = lines.i.AddNewLast();
00506                 if (isReturn&&(indBegin==indEnd))
00507                 {       // ligne suivante sans mots
00508                         line=NULL;
00509                         indBegin++;
00510                         continue;
00511                 }
00512                 word = words.i.AddNewLast();
00513                 word->text=value.Mids(indBegin,indEnd-indBegin);
00514                 indBegin=indEnd;
00515                 word->isWord=isWord;
00516                 line->words.i+=word;
00517                 if (isReturn) { indBegin++; line = NULL; }
00518         } while (!isEnd);
00519 }
00520
00521 float Text3D::ComputeLayout()
00522 {
00523         // mise a zero
00524         layoutLines.i.SuprAll();
00525         layoutWords.i.SuprAll();
00526         linesUses.i.SuprAll();
00527
00528         ParsingLine *line;
00529         ParsingWord *word;
00530         BOOL testDeltaX=FALSE;
00531
00532         GLfloat yPos=0;
00533         for (lines.i=0;lines.i.More();lines.i++)
00534         {       // iteration sur les lignes
00535                 line = lines.i.GetElemPtr();
00536                 if (enableClipping)
00537                 {       // test du clipping, peut on affiché la ligne ?
00538                         if ((line->deltaY+yPos)>realClipping.y) return yPos;
00539                         if (line->deltaX<=realClipping.x)
00540                         {
00541                                 yPos+=AddLine(line);
00542                                 continue;
00543                         }
00544                 }
00545                 else
00546                 {
00547                         yPos+=AddLine(line);
00548                         continue;
00549                 }
00550
00551                 // on est sortie du clipping => gestion des wrapping
00552                 ParsingLine *layoutLine = NULL;
00553                 ParsingWord *newWord,*wordCutting;
00554                 double xPos;
00555                 int offsetLetter=0;
00556                 BOOL goNext = TRUE;
00557
00558                 // remplie layoutLine du text affichable
00559                 // on arrive ici uniquement si la ligne deplace le clipping autorisé
00560                 for (line->words.i=0;line->words.i.More();line->words.i.GoIndex(list_current,goNext))
00561                 {       // iteration de tout les mots de la ligne
00562                         goNext=TRUE;
00563                         if (!layoutLine)
00564                         {
00565                                 if ((yPos+line->deltaY)>realClipping.y) return yPos;
00566                                 layoutLine = layoutLines.i.AddNewLast();
00567                                 layoutLine->deltaY=line->deltaY;
00568                                 xPos=0;
00569                         }
00570                         if (offsetLetter)
00571                         {
00572                                 wordCutting = layoutWords.i.AddNewLast();
00573                                 *wordCutting=*word;
00574                                 wordCutting->text=word->text.Mids(offsetLetter,word->text.GetSize()-offsetLetter);
00575                                 wordCutting->deltaX=GetWidth(wordCutting->text);
00576                                 word=wordCutting;
00577                                 offsetLetter=0;
00578                         }
00579                         else word = line->words.i.GetElem();
00580
00581                         xPos+=word->deltaX;
00582                         if (xPos>realClipping.x)
00583                         {       // sort t'on du clipping en X
00584                                 if (wordWrap)
00585                                 {       // affiche la ligne delimité et poursuis
00586                                         ComputeLineSize(layoutLine,FALSE);
00587                                         yPos+=AddLine(layoutLine);
00588                                         layoutLine=NULL;
00589                                         if (!lineWrap)
00590                                         {       // si retour a la ligne automatique active poursuivre
00591                                                 goNext=FALSE; // toujours sur le meme mots
00592                                                 continue;
00593                                         }
00594                                         else break;
00595                                 }
00596                                 else
00597                                 {       // si pas wordWrap cherché le caractere dans la ligne qui le delimite
00598                                         newWord = layoutWords.i.AddNewLast();
00599                                         *newWord = *word;
00600                                         double deltaLetter;
00601                                         double deltaNeed = xPos-realClipping.x;
00602                                         double sumDeltaLetter = 0;
00603                                         for (offsetLetter=word->text.GetSize()-1;offsetLetter>=0;offsetLetter--)
00604                                         {       // recherche du caracter qui fait sortir du clipping
00605                                                 deltaLetter = GetWidth(word->text[offsetLetter]);
00606                                                 sumDeltaLetter+=deltaLetter;
00607                                                 deltaNeed-=deltaLetter;
00608                                                 if (deltaNeed<=0) break;
00609                                         }
00610                                         // decoupage en 2 word pour le passage a la ligne
00611                                         newWord->deltaX=word->deltaX-(GLfloat)sumDeltaLetter;
00612                                         newWord->text= word->text.Mids(0,offsetLetter);
00613                                         layoutLine->words.i+=newWord;
00614                                         xPos=0;
00615                                         ComputeLineSize(layoutLine,FALSE);
00616                                         yPos+=AddLine(layoutLine);
00617                                         layoutLine=NULL;
00618                                         if (!lineWrap)
00619                                         {       // si retour a la ligne automatique active poursuivre
00620                                                 goNext=FALSE; // toujours sur le meme mots
00621                                                 continue;
00622                                         }
00623                                         else
00624                                         {
00625                                                 offsetLetter=0;
00626                                                 break;
00627                                         }
00628                                 }
00629                         }
00630                         else layoutLine->words.i+=word; // si pas de probleme de clipping ajout le mots
00631                 }
00632                 if (layoutLine)
00633                 {
00634                         ComputeLineSize(layoutLine,FALSE);
00635                         yPos+=AddLine(layoutLine);
00636                         layoutLine=NULL;
00637                 }
00638         }
00639         return yPos;
00640 }
00641
00642 char * Text3D::GetText()
00643 {
00644         return value.GetValue();
00645 }
00646
00647 void Text3D::DrawLine(ParsingLine *line)
00648 {
00649         GLdouble xMove = line->xPos;
00650         GLdouble xPos=0;
00651         ParsingWord *word;
00652         for (line->words.i=0;line->words.i.More();line->words.i++)
00653         {
00654                 word = line->words.i.GetElem();
00655                 if (word->isWord)
00656                 {
00657                         if (!wordWrap)
00658                         {
00659                                 if (!line->xJustify)
00660                                 {
00661                                         xPos+=xMove;
00662                                         glTranslated(xMove,0,0);
00663                                         BasicText3D::Draw(word->text); // si le mots n'a pas de séparation
00664                                         xMove = word->deltaX;
00665                                 }
00666                                 else
00667                                 {       // si le mots a des separations
00668                                         char letter;
00669                                         for (int i=0;i<word->text.GetSize();i++)
00670                                         {
00671                                                 letter=word->text[i];
00672                                                 xPos+=xMove;
00673                                                 glTranslated(xMove,0,0);
00674                                                 BasicText3D::Draw(letter);
00675                                                 xMove=GetWidth(letter)+line->xJustify;
00676                                         }
00677                                 }
00678                         }
00679                         else
00680                         {
00681                                 xPos+=xMove;
00682                                 glTranslated(xMove,0,0);
00683                                 BasicText3D::Draw(word->text);
00684                                 xMove = word->deltaX+line->xJustify;
00685                         }
00686                 }
00687                 else xMove+=word->deltaX;
00688         }
00689         glTranslated(-xPos,-line->deltaY-yJustify,0);   // passe a la ligne suivante
00690 }
00691
00692 BOOL Text3D::DrawPicking()
00693 {
00694         if (!usePicking) return FALSE;
00695         //glPushName(idLetter);
00696         //return Draw();
00697         return TRUE;
00698 }
00699
00701
00702 void Text3D::SetJustifyLimit(GLdouble x,GLdouble y)
00703 {
00704         xJustifyLimit = x;
00705         yJustifyLimit = y;
00706 }
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: text3d.h File Reference

text3d.h File Reference

#include "material.h"
#include <ftgl/ftfont.h>

Go to the source code of this file.

Classes

class | ParsingElem
Element de parsing. More...

class | ParsingWord
parsing de mots More...

class | ParsingLine
Sauvegard du parsing du text. More...

class | BasicText3D
Classe de gestion de text 3D (basée sur la FTGL). More...

class | Text3D
Classe de gestion d'alignement de text 3D (basée sur la FTGL). More...

Enumerations

enum | TextAlign { align_begin, align_center, align_end, align_justify }
enum FontType {
ft_texture, ft_extrude, ft_outline, ft_polygon,
ft_bitmap, ft_pixmap, ft_unknown
}

Enumeration Type Documentation

enum FontType

Enumeration values:
ft_texture
ft_extrude
ft_outline
ft_polygon
ft_bitmap
ft_pixmap
ft_unknown

Definition at line 86 of file text3d.h.

enum TextAlign

Enumeration values:
align_begin | alignement a gauche si dans les X, en haut si dans les Y
align_center | centrage
align_end | alignement a droite si dans les X, en bas si dans les Y
align_justify | mode d'extenssion maximum

Definition at line 32 of file text3d.h.

Referenced by Tutorial::FaceDemo::FaceDemo().

Generated on Fri Aug 20 19:20:40 2004 for 3d Controls by doxygen 1.3.6


3d Controls: text3d.h Source File

text3d.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_TEXT_3D_H
00024 #define INCLUDE_TEXT_3D_H
00025
00026 #pragma warning( disable : 4217 )
00027 #pragma warning( disable : 4099 )
00028
00029 #include "material.h"
00030 #include <ftgl/ftfont.h>
00031
00032 typedef enum
00033 {
00034         align_begin,
00035         align_center,
00036         align_end,
00037         align_justify
00038 } TextAlign;
00039
00041 class ParsingElem
00042 {
00043 public:
00044         GLfloat deltaX;
00045         BOOL isWord;
00046
00047         ParsingElem();
00048         void operator=(ParsingElem &src);
00049 };
00050
00052 class ParsingWord : public ParsingElem
00053 {
00054 public:
00055         MyString text;
00056
00057         ParsingWord();
00058         void operator=(ParsingWord &src);
00059 };
00060
00072 class ParsingLine : public ParsingElem
00073 {
00074 public:
00075         GLfloat deltaY;
00076         TextAlign align;
00077         MyList<ParsingWord *> words;
00078         double xJustify;
00079         double xPos;
00080         int nbChar;
00081
00082         ParsingLine();
00083         void operator=(ParsingLine &src);
00084 };
00085
00086 typedef enum
00087 {
00088         ft_texture,
00089         ft_extrude,
00090         ft_outline,
00091         ft_polygon,
00092         ft_bitmap,
00093         ft_pixmap,
00094         ft_unknown
00095 } FontType;
00096
00122 class BasicText3D
00123 {
00124 public:
00125         FontType type;
00126         FTFont *font;
00127         Material material;
00128         float depth;
00129         int xCenter;
00130         int yCenter;
00131         GLdouble zCenter;
00132         double scale;
00133         BOOL usePicking;
00134         double ratioXY;
00135         double ratioYX;
00136
00137 public:
00138         BasicText3D();
00139         void SetRatioXY(GLdouble value);
00140         void Setup(FTFont *f,FontType t,int x=0,int y=0);
00141         void operator=(BasicText3D &src);
00142         BOOL DrawPicking(char *text);
00143         BOOL Draw(char *text);
00144         BOOL Draw(char letter);
00145
00146         Point3D<float> GetBox(char *text);
00147         float GetAscender();
00148         float GetDescender();
00149         float GetHeight();
00150         float GetWidth(char *text);
00151         float GetWidth(char letter);
00152 };
00153
00192 class Text3D : public BasicText3D
00193 {
00194 private:
00195         BOOL enableClipping;
00196         Point2D<GLdouble> clipping;
00197         Point2D<GLdouble> realClipping;
00198         int idCallList;
00199         BOOL isChanged;
00200         GLdouble yJustify;
00201
00202         MyString value;
00203         MyList<ParsingLine> lines;
00204         MyList<ParsingWord> words;
00205         MyList<ParsingLine> layoutLines;
00206         MyList<ParsingWord> layoutWords;
00207         MyList<ParsingLine *> linesUses;
00208
00209         void DrawLine(ParsingLine *line);
00210         float AddLine(ParsingLine *line);
00211
00212 public:
00213         TextAlign xAlign;
00214         TextAlign yAlign;
00215         GLdouble xJustifyLimit;
00216         GLdouble yJustifyLimit;
00217         BOOL wordWrap;
00218         BOOL lineWrap;
00219         BOOL letterWrap;
00220
00221         Text3D();
00222         ~Text3D();
00223         void operator=(Text3D &src);
00224         void SetJustifyLimit(GLdouble x,GLdouble y);
00225         void SetWrapping(BOOL line,BOOL word,BOOL letter);
00226         void SetClipping(double x,double y);
00227         void SetClipping(Point2D<double> newClipping);
00228         void SetAlign(TextAlign x=align_center,TextAlign y=align_center);
00229         void Setup(FTFont *f,FontType t=ft_texture);
00230         BOOL Draw();
00231         BOOL DrawPicking();
00232         void ComputeSize(MyList<ParsingLine> *linesCur,BOOL isWordSizeCompute);
00233         void ComputeLineSize(ParsingLine *line,BOOL isWordSizeCompute);
00234
00235         float ComputeLayout();
00236         void ApplyRealClipping();
00237
00238         void SetText(char *text);
00239         char * GetText();
00240         BOOL AnalyseLex(int indBegin,int *indEnd,BOOL *isEnd,BOOL *isReturn);
00241         void AnalyseGram();
00242 };
00243
00244 #endif
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: textBox.cpp File Reference

textBox.cpp File Reference

#include "3d.h"
#include "MyString.h"
#include "control.h"
#include "input.h"
#include "controlEngine.h"
#include "mylist.h"
#include "text3d.h"
#include "textBox.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 28 of file textBox.cpp.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: textBox.cpp Source File

textBox.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "MyString.h"
00021 #include "control.h"
00022 #include "input.h"
00023 #include "controlEngine.h"
00024 #include "mylist.h"
00025 #include "text3d.h"
00026 #include "textBox.h"
00027
00028 extern ControlEngine ce;
00029
00030 // ********************************************************************************
00031
00032 TextBox::TextBox()
00033 {
00034         // intitialisation des variables
00035         name="TextBox";
00036         isReadOnly=FALSE;
00037
00038         // init du text<
00039         text.Setup(ce.fontTexture,ft_texture);
00040         text.SetAlign(align_center,align_center);
00041         text.material.SetDS(0,0,0);
00042
00043         // gestion des evenements
00044         onControl.mouse.left.up.connect(this,OnLButtonUp);
00045         onControl.mouse.left.down.connect(this,OnLButtonDown);
00046         onControl.over.in.connect(this,OnOverIn);
00047 }
00048
00049 TextBox::~TextBox()
00050 {
00051 }
00052
00053 // ********************************************************************************
00054
00055 void TextBox::Create(double depth)
00056 {
00057         SetParent();
00058         faceNode = ce.primitive.AddBox(name,id,depth,FALSE);
00059         faceNode->Elems(FACE_FRONT)->text=&text;
00060         if (isReadOnly) faceNode->Elems(FACE_BACK)->material.SetDS(.75,.75,.75);
00061         else faceNode->Elems(FACE_BACK)->material.SetDS(.5,.5,.5);
00062 }
00063
00073 void TextBox::operator=(char *newText)
00074 {
00075         text.SetText(newText);
00076 }
00077
00078 // ********************************************************************************
00079
00080 void TextBox::SetText(char *newText)
00081 {
00082         text.SetText(newText);
00083 }
00084
00090 int TextBox::OnLButtonDown(StateMouse *mouse,int face)
00091 {
00092         DebugMouse2("TextBox::OnLButtonDown",mouse,face);
00093         ce.cursor.ApplyTypes(cursorText,cursorArrow);
00094         if (!isReadOnly) SetCursor(mouse->pos.x,mouse->pos.y);
00095         return 0;
00096 }
00097
00098 int TextBox::OnLButtonUp(StateMouse *mouse,int face)
00099 {
00100         DebugMouse2("TextBox::OnLButtonUp",mouse,face);
00101         ce.cursor.ApplyTypes(cursorArrow,cursorText);
00102         return 0;
00103 }
00104
00105 int TextBox::OnOverIn(Control *oldControl,int face)
00106 {
00107         Debug2Param("TextBox::OnOverIn(oldCtlr:%s,face:%d",(char *)oldControl->name,face);
00108         ce.cursor.ApplyTypes(cursorArrow,cursorText,cursorNothing,cursorNothing);
00109         return 1;
00110 }
00111
00113 void TextBox::SetCursor(int column,int line)
00114 {
00115         Debug2Param("TextBox::OnSetCursor(col:%d,line:%d)",column,line);
00116         onTextBox.setCursor(column,line);
00117 }
00118
00119 void TextBox::ToString(MyString &str)
00120 {
00121         str.AddFormat("name: %s isReadOnly:%d",name,isReadOnly);
00122 }
00123
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: textBox.h File Reference

textBox.h File Reference

Control d'affichage de text'. More...

#include "TextTexture.h"

Go to the source code of this file.

Classes

class | EventTextBox
class | TextBox
Une "TextBox" est un control permetant l'affichage (isReadOnly=TRUE) et la saisie de text. More...

Detailed Description

Control d'affichage de text'.

Definition in file textBox.h.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: textBox.h Source File

textBox.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_TEXT_BOX_H
00024 #define INCLUDE_TEXT_BOX_H
00025
00026 #include "TextTexture.h"
00027
00028 class EventTextBox
00029 {
00030 public:
00031         signal2<int,int> setCursor;
00032         signal0<> change;
00033 };
00034
00038 class TextBox : public Control
00039 {
00040 public:
00041         BOOL isReadOnly;
00042         EventTextBox onTextBox;
00043         Text3D text;
00044
00045         TextBox();
00046         ~TextBox();
00047         virtual void Create() { Create(DEFAULT_DEPTH_TEXTBOX); } // Createur pour container
00048         virtual void Create(double depth);
00049         void ToString(MyString &str);
00050         void SetCursor(int column,int line); // le curseur a ete positionner
00051         void operator=(char *newText);
00052         void SetText(char *newText);
00053
00054         int OnLButtonDown(StateMouse *mouse,int face); // on a clicker sur le control ==> curseur a l'emplacement de la souris
00055         int OnLButtonUp(StateMouse *mouse,int face); // on a clicker sur le control ==> curseur a l'emplacement de la souris
00056         int OnOverIn(Control *oldControl,int face);
00057 };
00058
00059 #endif
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TextTexture.cpp File Reference

TextTexture.cpp File Reference

#include "3d.h"
#include "MyString.h"
#include "controlEngine.h"
#include "textTexture.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 24 of file TextTexture.cpp.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TextTexture.cpp Source File

TextTexture.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "MyString.h"
00021 #include "controlEngine.h"
00022 #include "textTexture.h"
00023
00024 extern ControlEngine ce;
00025
00026 TextTexture::TextTexture()
00027 {
00028         texture=NULL;
00029         faceText=NULL;
00030         background=RGB(128,128,128);
00031         color=RGB(0,0,0);
00032         xFormat=-1;
00033         yFormat=-1;
00034 }
00035
00036 void TextTexture::BindTexture(Face *face)
00037 {
00038         faceText=face;
00039 }
00040
00041 void TextTexture::operator=(char *newText)
00042 {
00043         SetText(newText);
00044 }
00045
00046 void TextTexture::SetText(char *newText)
00047 {
00048         text=newText;
00049         RefreshText();
00050 }
00051
00052 void TextTexture::RefreshText()
00053 {
00054         if (texture)
00055         {
00056                 texture->Delete();
00057                 delete texture;
00058                 texture=NULL;
00059         }
00060         texture = new Texture;
00061         texture->FromText("text",text,color,background,xFormat,yFormat);
00062         MajTexture();
00063 }
00064
00065 BOOL TextTexture::MajTexture()
00066 {
00067         if (!texture||!faceText) return FALSE;
00068         faceText->texture = texture;
00069         return TRUE;
00070 }
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TextTexture.h File Reference

TextTexture.h File Reference

#include "face.h"

Go to the source code of this file.

Classes

class TextTexture
Propriete d'un control a avoir une face avec du text. More...

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TextTexture.h Source File

TextTexture.h

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #ifndef INCLUDE_TEXT_TEXTURE_H
00020 #define INCLUDE_TEXT_TEXTURE_H
00021
00022 #include "face.h"
00023
00049 class TextTexture
00050 {
00051 public:
00052         MyString text;
00053         Texture *texture;
00054         COLORREF background;
00055         COLORREF color;
00056         int xFormat;
00057         int yFormat;
00058         Face *faceText; // graphics du conteneur
00059
00060 public:
00061         TextTexture();
00062         void operator=(char *newText);
00063         void SetText(char *newText);
00064         void SetXYFormat(int x,int y){xFormat=x; yFormat=y;}
00065         void RefreshText();
00066         void BindTexture(Face *face);
00067         BOOL MajTexture();
00068 };
00069
00070 #endif
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: texture.cpp File Reference

texture.cpp File Reference

#include "3d.h"
#include "texture.h"
#include "FreeImage.h"

Go to the source code of this file.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: texture.cpp Source File

texture.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "texture.h"
00021 #include "FreeImage.h"
00022
00023 void Texture::VerifyId()
00024 {
00025         if (!id)
00026         {
00027                 GLuint idCur;
00028                 glGenTextures(1,&idCur);
00029                 id = idCur;
00030                 list.i+=this; // nouvelle arrivant dans la liste generale
00031                 Config();
00032         }
00033         glBindTexture(target,id);
00034 }
00035
00036 void Texture::Config()
00037 {
00038         VerifyId();
00039         glTexParameteri(target, GL_TEXTURE_MAG_FILTER, magFilter);
00040         glTexParameteri(target, GL_TEXTURE_MIN_FILTER, minFilter);
00041         glTexParameteri(target, GL_TEXTURE_WRAP_T , wrapT);
00042         glTexParameteri(target, GL_TEXTURE_WRAP_S , wrapS);
00043         if (border.isEnable) glTexParameterfv(target, GL_TEXTURE_BORDER_COLOR , border);
00044         glTexEnvi(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,envMode);
00045         if (envColor.isEnable) glTexEnvfv(GL_TEXTURE_ENV,GL_TEXTURE_ENV_COLOR ,envColor);
00046 }
00047
00051 BOOL Texture::Delete()
00052 {
00053         return Texture::Delete(this);
00054 }
00055
00056 BOOL Texture::Delete(Texture *texture)
00057 {
00058         for (list.i=0;list.i.More();list.i++)
00059         {
00060                 if (texture==list.i.GetElem())
00061                 {
00062                         list.i.Supr();
00063                         return TRUE;
00064                 }
00065         }
00066         return FALSE;
00067 }
00068
00069 void Texture::ConfigPixelStore()
00070 {
00071         // sinon pb defois
00072         glPixelStorei( GL_UNPACK_ALIGNMENT,   1);
00073         glPixelStorei( GL_UNPACK_ROW_LENGTH,  0);
00074         glPixelStorei( GL_UNPACK_SKIP_ROWS,   0);
00075         glPixelStorei( GL_UNPACK_SKIP_PIXELS, 0);
00076 }
00077
00078 GLubyte * Texture::ConfigSize (int _xSize,int _ySize,BOOL allocate,BOOL resizeIt)
00079 {
00080         VerifyId();
00081
00082         xSize = GetNearExp2(_xSize);
00083         ySize = GetNearExp2(_ySize);
00084
00085         if (resizeIt)
00086         {
00087                 xScale = 1;
00088                 yScale = 1;
00089         }
00090         else
00091         {
00092                 xScale = _xSize/(double)xSize;
00093                 yScale = _ySize/(double)ySize;
00094                 if ( (xSize!=_xSize) || (ySize!=_ySize) ) useResizing = TRUE;
00095         }
00096
00097         ConfigPixelStore();
00098
00099         if (allocate)
00100         {
00101                 int size = xSize*ySize*3;
00102                 GLubyte *dataOut= new GLubyte[size];
00103                 ZeroMemory(dataOut,size);
00104                 return dataOut;
00105         }
00106         else return NULL;
00107 }
00108
00109 double Texture::GetXCoord(double x)
00110 {
00111         if (useResizing) return x*xScale;
00112         else return x;
00113 }
00114
00115 double Texture::GetYCoord(double y)
00116 {
00117         if (useResizing) return y*yScale;
00118         else return y;
00119 }
00120
00121 void Texture::SetCoord(double x,double y)
00122 {
00123         if (useResizing) glTexCoord2d(x*xScale,y*yScale);
00124         else glTexCoord2d(x,y);
00125 }
00126
00127
00128 Texture::Texture()
00129 {
00130         Zero();
00131 }
00132
00133 Texture::~Texture()
00134 {
00135         GLuint idRes;
00136         glDeleteTextures(1,&idRes);
00137         id=idRes;
00138 }
00139
00140 void Texture::Zero()
00141 {
00142         target = texture2D;
00143         magFilter=linear;
00144         minFilter=linear;
00145         wrapS = repeat;
00146         wrapT = repeat;
00147         envMode = modulate;
00148         envColor.Zero();
00149         border.Zero();
00150         name="";
00151         id=0;
00152         xScale=0;
00153         yScale=0;
00154         useResizing = FALSE;
00155         dataOut=NULL;
00156         //VerifId() //ne marche toujour au constructeur car la fenetre openGl n'est peut etre pas encors initialisé
00157 }
00158
00159 void Texture::operator =(Texture &src)
00160 {
00161         target = src.target;
00162         id = src.id;
00163         xScale = src.xScale;
00164         yScale = src.yScale;
00165         name = src.name;
00166         source = src.source;
00167         useResizing = src.useResizing;
00168         xSize = src.xSize;
00169         ySize = src.ySize;
00170         wrapS = src.wrapS;
00171         wrapT = src.wrapT;
00172         magFilter = src.magFilter;
00173         minFilter = src.minFilter;
00174         border = src.border;
00175         envMode = src.envMode;
00176         envColor = src.envColor;
00177 }
00178
00179 BOOL Texture::FromNull()
00180 {
00181         Begin("Null",1,1);
00182         SetPixel(0,0,255,255,255);
00183         End();
00184         return TRUE;
00185 }
00186
00187
00188 BOOL Texture::FromFile(char *_name,char *fileName,BOOL resizeIt)
00189 {
00190         source = fileName;
00191         FREE_IMAGE_FORMAT fif = FreeImage_GetFIFFromFilename(source);
00192         if (fif == FIF_UNKNOWN) return FALSE;
00193         FreeImage_Initialise();
00194
00195         FIBITMAP *bitmap = FreeImage_Load(fif,fileName);
00196         if (!bitmap) return FALSE;
00197         BYTE *data = FreeImage_GetBits(bitmap);
00198         if (!data)
00199         {
00200                 FreeImage_Unload(bitmap);
00201                 return FALSE;
00202         }
00203
00204         // get the size of our image
00205         int bpp = FreeImage_GetBPP(bitmap)/8; // convert from bits to bytes, convert width from bytes in row, to just number of pixels in row
00206
00207         int xImage = FreeImage_GetPitch(bitmap)/bpp;
00208         int yImage = FreeImage_GetHeight(bitmap);
00209         name = _name;
00210         ConfigSize(xImage,yImage,FALSE,FALSE);
00211
00212         // Create our texture data
00213         unsigned char *texData = new unsigned char[xSize*ySize*4];
00214
00215         FreeImage_ConvertToRawBits(texData, bitmap, xSize*4, 32, FI_RGBA_RED_MASK, FI_RGBA_GREEN_MASK, FI_RGBA_BLUE_MASK,TRUE);
00216
00218         // texData now contains our image.  However we need to
00219         // swap the red and blue color channels and flip the scanlines
00220         // in the vertical direction
00221         // This is because of the difference between how OpenGL and FreeImage
00222         // store image data internally.
00224
00225         int linesize = xSize*4;
00226
00227         // flip color components
00228         for(int y=0; y < ySize; y++)
00229         {
00230                 int pos = y*linesize;
00231                 for(int x=0; x < xSize; x++)
00232                 {
00233                         int xpos = y*linesize + x*4;
00234                         unsigned char temp = texData[xpos];
00235                         texData[xpos] = texData[xpos+2];
00236                         texData[xpos+2] = temp;
00237                 }
00238         }
00239
00240         if (resizeIt)
00241         {
00242                 gluScaleImage(GL_RGBA,xImage,yImage,GL_UNSIGNED_BYTE,texData,xSize,ySize,GL_UNSIGNED_BYTE,texData);
00243                 glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,xSize,ySize,FALSE,GL_RGBA,GL_UNSIGNED_BYTE,texData);
00244                 xScale=1;
00245                 yScale=1;
00246                 useResizing=FALSE;
00247         }
00248         else glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,xSize,ySize,0,GL_RGBA, GL_UNSIGNED_BYTE,texData);
00249         delete [] texData; // release files
00250
00251         FreeImage_Unload(bitmap);
00252         FreeImage_DeInitialise();
00253         return TRUE;
00254 }
00255
00259 Texture * Texture::Find(char *name)
00260 {
00261         Texture *finding;
00262         for (list.i=0;list.i.More();list.i++)
00263         {
00264                 finding = list.i.GetElem();
00265                 if (finding->name==name) return finding;
00266         }
00267         return NULL;
00268 }
00269
00270 BOOL Texture::Begin(char *_name,int deltaX,int deltaY)
00271 {
00272         name = _name;
00273         dataOut = ConfigSize(deltaX,deltaY,TRUE,FALSE);
00274         return dataOut?TRUE:FALSE;
00275 }
00276
00277 BOOL Texture::End()
00278 {
00279         if (!dataOut) return FALSE; // erreur de semantique donc (il dois y avoir un Begin() avant
00280         glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,xSize,ySize,FALSE,GL_RGB,GL_UNSIGNED_BYTE,dataOut);
00281         delete dataOut;
00282         dataOut=NULL;
00283         return TRUE;
00284 }
00285
00289 BOOL Texture::SetPixel(int x,int y,byte r,byte g,byte b)
00290 {
00291         // test d'integrité
00292         if (!dataOut) return FALSE;
00293         if (x>=xSize||y>=ySize||x<0||y<0) return FALSE; // le point est il a une coordonnée correct
00294         int pos = (xSize*y+x)*3;
00295         dataOut[pos]=r;
00296         dataOut[pos+1]=g;
00297         dataOut[pos+2]=b;
00298         return TRUE;
00299 }
00300
00304 BOOL Texture::GetPixel(int x,int y,byte &r,byte &g,byte &b)
00305 {
00306         // test d'integrité
00307         if (!dataOut) return FALSE;
00308         if (x>=xSize||y>=ySize||x<0||y<0) return FALSE; // le point est il a une coordonnée correct
00309         int pos = (xSize*y+x)*3;
00310         r=dataOut[pos];
00311         g=dataOut[pos+1];
00312         b=dataOut[pos+2];
00313         return TRUE;
00314 }
00320 BOOL Texture::AddText(char *text,COLORREF color,COLORREF background,int xFormat,int yFormat)
00321 {
00322         if (!dataOut) return FALSE;
00323
00324         HBITMAP hBitmap = CreateBitmap(xSize, ySize, 16, 2, NULL);
00325         if (!hBitmap) return FALSE;
00326         BITMAP bitmap;
00327         GetObject(hBitmap,sizeof(bitmap),&bitmap);
00328         HDC mainDC = GetDC (NULL) ;
00329         HDC dc = CreateCompatibleDC (mainDC) ;
00330         SelectObject ( dc, hBitmap);
00331         RECT r = { 0,0,xSize,ySize};
00332
00333         // fond unie
00334         HPEN hPen = CreatePen(PS_SOLID,0,background);
00335         HPEN hPenOld = (HPEN) SelectObject(dc,hPen);
00336         HBRUSH hBrush = CreateSolidBrush(background);
00337         HBRUSH hBrushOld = (HBRUSH) SelectObject(dc,hBrush);
00338         Rectangle(dc,0,0,xSize,ySize);
00339         DeleteObject(hBrush);
00340         DeleteObject(hPen);
00341         SelectObject(dc,hBrushOld);
00342         SelectObject(dc,hPenOld);
00343
00344         SetBkMode(dc,TRANSPARENT);
00345         SetTextColor(dc,color);
00346
00347         // parse le type de format
00348         UINT format = 0;
00349         format |= DT_WORDBREAK;
00350         switch (xFormat)
00351         {
00352         case -1: format |= DT_LEFT; break;
00353         case 0: format |= DT_CENTER; break;
00354         case 1: format |= DT_RIGHT; break;
00355         }
00356         switch (yFormat)
00357         {
00358         //case -1: format |= DT_TOP|DT_SINGLELINE; break;
00359         case 0: format |= DT_VCENTER|DT_SINGLELINE; break;
00360         case 1: format |= DT_BOTTOM|DT_SINGLELINE; break;
00361         }
00362         DrawText(dc, text, (int)strlen(text), &r, format );
00363
00364
00365         BITMAPINFOHEADER bi;
00366         ZeroMemory(&bi,sizeof(BITMAPINFOHEADER));
00367         bi.biSize               = sizeof(BITMAPINFOHEADER);
00368         bi.biWidth              = bitmap.bmWidth;
00369         bi.biHeight             = bitmap.bmHeight;
00370         bi.biPlanes             = bitmap.bmPlanes; //1;
00371         bi.biBitCount           = 24;
00372
00373         int res = GetDIBits (dc,hBitmap,0,bitmap.bmHeight,dataOut,(LPBITMAPINFO)&bi,DIB_RGB_COLORS);
00374         ReleaseDC (NULL,mainDC) ;
00375         DeleteDC (dc) ;
00376         return TRUE;
00377 }
00378
00379 BOOL Texture::FromText(char *_name,char *text,COLORREF color,COLORREF background,int xFormat,int yFormat)
00380 {
00381         Begin(_name,64,64);
00382         source = text;
00383         AddText(text,color,background,xFormat,yFormat);
00384         End();
00385         return TRUE;
00386 }
00387
00389 BOOL Texture::FromBitmap(char *_name,char *fileName,BOOL resizeIt)
00390 {
00391         AUX_RGBImageRec *pImage = auxDIBImageLoad(fileName);
00392         if (!pImage) return FALSE;
00393
00394         Begin(_name,pImage->sizeX,pImage->sizeY);
00395         source = fileName;
00396
00397         if (resizeIt)
00398         {
00399                 BOOL result = gluScaleImage(GL_RGB,pImage->sizeX,pImage->sizeY,GL_UNSIGNED_BYTE,pImage->data,xSize,ySize,GL_UNSIGNED_BYTE,dataOut);
00400                 if (result) glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,xSize,ySize,FALSE,GL_RGB,GL_UNSIGNED_BYTE,dataOut);
00401                 End();
00402                 delete pImage;
00403                 return result;
00404         }
00405
00406         // effectue le scaling
00407         int xSizeScale = pImage->sizeX*3;
00408         int ySizeScale = pImage->sizeY;
00409         int xDeltaScale = (xSize-pImage->sizeX)*3;
00410
00411         GLubyte *ptrBufferIn = (GLubyte *)pImage->data;
00412         GLubyte *ptrBufferOut = dataOut;
00413
00414         for (int y=0;y<ySizeScale;y++)
00415         {
00416                 for (int x=0;x<xSizeScale;x++) *ptrBufferOut++=*ptrBufferIn++;
00417                 ptrBufferOut+=xDeltaScale;
00418         }
00419
00420         End();
00421         delete pImage;
00422         return TRUE;
00423 }
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: texture.h File Reference

texture.h File Reference

Gestion des textures 3D. More...

#include "3d.h"
#include "color.h"

Go to the source code of this file.

Classes

class | Texture
Gestion des textures pour la 3D. More...

Enumerations

enum | TextureTarget { texture1D = GL_TEXTURE_1D, texture2D = GL_TEXTURE_2D, texture3D = GL_TEXTURE_3D }
enum | TextureWrap { clamp = GL_CLAMP, repeat = GL_REPEAT }
enum | TextureFilter { nearest = GL_NEAREST, linear = GL_LINEAR }
enum | TextureEnvMode { modulate = GL_MODULATE, decal = GL_DECAL, blend = GL_BLEND, replace = GL_REPLACE }

Detailed Description

Gestion des textures 3D.

Definition in file texture.h.

Enumeration Type Documentation

enum TextureEnvMode

Enumeration values:
modulate
decal
blend
replace

Definition at line 48 of file texture.h.

enum TextureFilter

Enumeration values:
nearest
linear

Definition at line 42 of file texture.h.

enum TextureTarget

Enumeration values:
texture1D
texture2D
texture3D

Definition at line 29 of file texture.h.

enum TextureWrap

Enumeration values:
clamp
repeat

Definition at line 36 of file texture.h.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: texture.h Source File

texture.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_3D_TEXTURE_H
00024 #define INCLUDE_3D_TEXTURE_H
00025
00026 #include "3d.h"
00027 #include "color.h"
00028
00029 typedef enum
00030 {
00031         texture1D = GL_TEXTURE_1D ,
00032         texture2D = GL_TEXTURE_2D,
00033         texture3D = GL_TEXTURE_3D
00034 } TextureTarget; // a caster en GLint pour switch
00035
00036 typedef enum
00037 {
00038         clamp = GL_CLAMP,
00039         repeat = GL_REPEAT
00040 } TextureWrap; // a caster en GLint pour switch
00041
00042 typedef enum
00043 {
00044         nearest = GL_NEAREST,
00045         linear = GL_LINEAR
00046 } TextureFilter; // a caster en GLint pour switch
00047
00048 typedef enum
00049 {
00050         modulate = GL_MODULATE,
00051         decal = GL_DECAL,
00052         blend = GL_BLEND,
00053         replace = GL_REPLACE,
00054 } TextureEnvMode; // a caster en GLint pour switch
00055
00063 class Texture
00064 {
00065 private:
00066         GLubyte *dataOut;       // utilisé dans CreateCurstomBegin / End
00067
00068 public:
00069         static MyList<Texture *> list;
00070         GLint id;
00071         MyString name;
00072         MyString source;
00073         BOOL useResizing;
00074         GLdouble xScale,yScale;
00075         int xSize,ySize;
00076         TextureTarget target;
00077         TextureWrap wrapT,wrapS;
00078         TextureFilter magFilter,minFilter;
00079         TextureEnvMode envMode;
00080         Color envColor;
00081         Color border;
00082
00083 public: // membre static
00084         static Texture * Find(char *name);
00085         static BOOL Delete(Texture *texture);
00086
00087 public:
00088         void VerifyId();
00089         void Config();
00090         void ConfigPixelStore();
00091         GLubyte * ConfigSize (int _xSize,int _ySize,BOOL allocate,BOOL resizeIt);
00092         void SetCoord(double x,double y);
00093         double GetXCoord(double x);
00094         double GetYCoord(double y);
00095         BOOL Delete();
00096
00097 public:
00098         Texture();
00099         ~Texture();
00100         void Zero();
00101         void operator =(Texture &src);
00102         operator GLuint () const { return id; }
00103
00104         BOOL FromNull();
00105         BOOL FromFile(char *_name,char *fileName,BOOL resizeIt=FALSE);
00106         BOOL FromBitmap(char *_name,char *fileName,BOOL resizeIt=FALSE);
00107         BOOL FromText(char *_name,char *text,COLORREF color,COLORREF background,int xFormat=0,int yFormat=0);
00108
00109         BOOL Begin(char *_name,int deltaX,int deltaY);
00110         BOOL SetPixel(int x,int y,byte r,byte g,byte b);
00111         BOOL GetPixel(int x,int y,byte &r,byte &g,byte &b);
00112         BOOL AddText(char *text,COLORREF color,COLORREF background,int xFormat=0,int yFormat=0);
00113         BOOL End();
00114 };
00115
00116 #endif
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: texture_instance.h File Reference

texture_instance.h File Reference

Instancisation des statics de la list globale des textures. More...

#include "texture.h"

Go to the source code of this file.

Detailed Description

Instancisation des statics de la list globale des textures.

Definition in file texture_instance.h.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: texture_instance.h Source File

texture_instance.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #include "texture.h"
00024
00025 MyList<Texture *> Texture::list;
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: tip.cpp File Reference

tip.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "tip.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 24 of file tip.cpp.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: tip.cpp Source File

tip.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "tip.h"
00023
00024 extern ControlEngine ce;
00025
00026 Tip::Tip()
00027 {
00028         // init variable
00029         name="Tip";
00030         text.Setup(ce.fontTexture,ft_texture);
00031         text.SetAlign(align_center,align_center);
00032         text.SetWrapping(FALSE,TRUE,TRUE);
00033         text.material.SetDS(1,1,1,1);
00034 }
00035
00036 Tip::~Tip()
00037 {
00038 }
00039
00040 // ********************************************************************************
00041
00042 void Tip::Create()
00043 {
00044         SetParent();
00045
00046         // init general
00047         faceNode = ce.primitive.AddFace(name,id,-1,TRUE);
00048         Face *face = faceNode->elem;
00049         face->text=&text; // attache le text
00050         face->material.SetDS(1,1,0,0.3f);
00051         face->blending=TRUE;
00052 }
00053
00054 // ********************************************************************************
00055
00056 void Tip::operator=(char *newCaption)
00057 {
00058         text.SetText(newCaption);
00059 }
00060
00061 void Tip::SetText(char *newCaption)
00062 {
00063         text.SetText(newCaption);
00064 }
00065
00066 // ********************************************************************************
00067
00068 void Tip::ToString(MyString &str)
00069 {
00070         str.AddFormat("name: %s",name);
00071 }
00072
00073 // ********************************************************************************
00074 // ********************************************************************************
00075 // ********************************************************************************
00076 // ********************************************************************************
00077 // ********************************************************************************
00078 // ********************************************************************************
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: tip.h File Reference

tip.h File Reference

#include "control.h"

Go to the source code of this file.

Classes

class Tip
Class de parametre et d'evenement d'un "ToolsTip". More...

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: tip.h Source File

tip.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_TOOLSTIP_H
00024 #define INCLUDE_TOOLSTIP_H
00025
00026 #include "control.h"
00027
00033 class Tip : public Control
00034 {
00035 public:
00036         // varaible membre
00037         Text3D text;
00038
00039         Tip();
00040         ~Tip();
00041
00042         void Create();
00043         void operator=(char *newCaption);
00044         void SetText(char *newCaption);
00045         void ToString(MyString &str);
00046 };
00047
00048 #endif
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: title.cpp File Reference

title.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "title.h"
#include "mylist.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 25 of file title.cpp.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: title.cpp Source File

title.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "title.h"
00023 #include "mylist.h"
00024
00025 extern ControlEngine ce;
00026
00027 // ********************************************************************************
00028
00029 Title::Title()
00030 {
00031         // init variable
00032         name="Title";
00033         focused=FALSE;
00034         state=original;
00035         container=NULL;
00036
00037         SetUses(TRUE,TRUE,TRUE,TRUE);
00038
00039         btnMax.name="btnMax";
00040         btnMin.name="btnMin";
00041         btnClose.name="btnClose";
00042         btnIcon.name="btnIcon";
00043
00044         // config du caption text
00045         caption = &tipCaption.text;
00046         caption->Setup(ce.fontTexture,ft_texture);
00047         caption->SetAlign(align_center,align_center);
00048         caption->material.SetDS(1,1,1);
00049         caption->SetWrapping(FALSE,FALSE,FALSE);
00050
00051         // gestion des evenements
00052         btnMin.onButton.click.connect(this,OnMin);
00053         btnMax.onButton.click.connect(this,OnMaxOrOriginal);
00054         btnClose.onButton.click.connect(this,OnClose);
00055         onControl.mouse.move.connect(this,OnMouseMove);
00056         onControl.mouse.left.down.connect(this,OnLButtonDown);
00057         onControl.mouse.mid.down.connect(this,OnMButtonDown);
00058         onControl.mouse.left.up.connect(this,OnLMButtonUp);
00059         onControl.mouse.mid.up.connect(this,OnLMButtonUp);
00060
00061         onControl.key.up.connect(this,OnKeyUp);
00062         onControl.key.down.connect(this,OnKeyDown);
00063         onControl.mouse.left.doubleClick.connect(this,OnMaxOrOriginal);
00064         onControl.mouse.wheel.connect(this,OnMouseWheel);
00065
00066         onControl.over.in.connect(this,OnOverIn);
00067         onControl.over.out.connect(this,OnOverOut);
00068 }
00069
00070 // ********************************************************************************
00071
00072 void Title::Create(Control *_container,double depth)
00073 {
00074         SetParent();
00075         container= _container;
00076         faceNode = ce.primitive.AddBox(name,id,depth,FALSE);
00077
00078         int xLeft=2;
00079         ce.Push(this);
00080         ce.primitive.GoTo(FACE_FRONT);
00081         if (useIcon)
00082         {
00083                 btnIcon.Create();
00084                 btnIcon.faceNode->Elems(FACE_FRONT)->texture=&ce.texture.iconBase;
00085                 btnIcon.XDockLeft(2,16);
00086                 btnIcon.YDockCenter(2,2);
00087                 xLeft+=16;
00088         }
00089         int xRight=2;
00090         if (useClose)
00091         {
00092                 btnClose.Create();
00093                 btnClose.faceNode->Elems(FACE_FRONT)->texture=&ce.texture.close;
00094                 btnClose.XDockRight(xRight,16);
00095                 btnClose.YDockCenter(2,2);
00096                 xRight+=18;
00097         }
00098         if (useMax)
00099         {
00100                 btnMax.Create();
00101                 btnMax.faceNode->Elems(FACE_FRONT)->texture=&ce.texture.max;
00102                 btnMax.XDockRight(xRight,16);
00103                 btnMax.YDockCenter(2,2);
00104                 xRight+=18;
00105         }
00106         if (useMin)
00107         {
00108                 btnMin.Create();
00109                 btnMin.faceNode->Elems(FACE_FRONT)->texture=&ce.texture.min;
00110                 btnMin.XDockRight(xRight,16);
00111                 btnMin.YDockCenter(2,2);
00112                 xRight+=18;
00113         }
00114         tipCaption.Create();
00115         tipCaption.XDockCenter(xLeft+2,xRight+2);
00116         tipCaption.YDockCenter(0,0);
00117         tipCaption.SetAlphaBlending(0);
00118         tipCaption.faceNode->elem->noPicking=TRUE;
00119         ce.Pop();
00120         GotFocus();
00121 }
00122
00123 Title::~Title()
00124 {
00125         ce.timerRefresh.onTimer.disconnect(this);
00126 }
00127
00129 int Title::OnRefresh(Timer *timer)
00130 {
00131         //Debug0Param("Title::OnRefresh()");
00132         if (!StateKey::GetState(VK_SHIFT))
00133         {
00134                 double delta = timer->GetDeltaTime(TRUE)*500.0; // but 20 texel / seconde
00135                 double x=0,y=0,z=0;
00136                 if (StateKey::GetState(VK_UP))          y+=delta;
00137                 if (StateKey::GetState(VK_DOWN))        y-=delta;
00138                 if (StateKey::GetState(VK_LEFT))        x-=delta;
00139                 if (StateKey::GetState(VK_RIGHT))       x+=delta;
00140                 if (StateKey::GetState(VK_PRIOR))       z-=delta;
00141                 if (StateKey::GetState(VK_NEXT))        z+=delta;
00142                 if (container&&(x||y||z)) container->Move(x,y,z);
00143         }
00144         return 0;
00145 }
00146
00147 int Title::OnOverIn(Control *oldControl,int face)
00148 {
00149         Debug2Param("Title::OnOverIn(oldCtlr:%s,face:%d",(char *)oldControl->name,face);
00150         ce.cursor.ApplyTypes(cursorArrow,cursorMoving,cursorRepere);
00151         ce.timerRefresh.onTimer.connect(this,OnRefresh);
00152         return 1;
00153 }
00154
00155 int Title::OnOverOut(Control *newControl,int face)
00156 {
00157         Debug2Param("Title::OnOverOut(newCtlr:%s,face:%d",(char *)newControl->name,face);
00158         ce.timerRefresh.onTimer.disconnect(this);
00159         return 1;
00160 }
00161
00162 void Title::SetUses(BOOL _useMin,BOOL _useMax,BOOL _useClose,BOOL _useIcon)
00163 {
00164         useMin=_useMin;
00165         useMax=_useMax;
00166         useClose=_useClose;
00167         useIcon=_useIcon;
00168 }
00169
00170 void Title::SetText(char *newCaption)
00171 {
00172         caption->SetText(newCaption);
00173 }
00174
00178 int Title::OnMaxOrOriginal(StateMouse *mouse,int face)
00179 {
00180         DebugMouse2("Title::OnMaxOrOriginal",mouse,face);
00181         switch (state)
00182         {
00183         case original: OnMax(); break;
00184         case maximize: OnOriginal(); break;
00185         }
00186         return 1;
00187 }
00188
00189 int Title::OnMaxOrOriginal()
00190 {
00191         Debug0Param("Title::OnMaxOrOriginal");
00192         switch (state)
00193         {
00194         case original: OnMax(); break;
00195         case maximize: OnOriginal(); break;
00196         }
00197         return 1;
00198 }
00199
00208 int Title::OnOriginal()
00209 {
00210         Debug0Param("Title::OnOriginal()");
00211         if (useMax) btnMax.faceNode->Elems(FACE_FRONT)->texture=&ce.texture.max;
00212         state=original;
00213         if (container)
00214         {
00215                 container->faceNode->elem->angle = originalAngle;
00216                 container->faceNode->elem->size= originalSize;
00217                 container->faceNode->MoveTo(tempNode);
00218         }
00219         ce.taskWindow->Restore(this);
00220         return 1;
00221 }
00222
00226 int Title::OnMouseWheel(StateMouse *mouse,int face)
00227 {
00228         DebugMouse2("Title::OnMouseWheel",mouse,face);
00229         if (!container) return 0;
00230         container->Move(0,0,-mouse->wheelDelta/10.0);
00231         return 1;
00232 }
00233
00241 int Title::OnMin()
00242 {
00243         Debug0Param("Title::OnMin()");
00244         state=minimize;
00245         if (container)
00246         {
00247                 originalAngle = container->faceNode->elem->angle;
00248                 originalSize = container->faceNode->elem->size;
00249                 tempNode=container->faceNode->parent;
00250                 container->faceNode->MoveTo(ce.trash.GetRoot());
00251                 ce.taskWindow->Add(this);
00252         }
00253         onTitle.minimize();
00254         return 1;
00255 }
00256
00262 int Title::OnMax()
00263 {
00264         Debug0Param("Title::OnMax()");
00265         state=maximize;
00266         if (useMax) btnMax.faceNode->Elems(FACE_FRONT)->texture=&ce.texture.maxAlternate;
00267         if (container)
00268         {
00269                 originalAngle = container->faceNode->elem->angle;
00270                 originalSize = container->faceNode->elem->size;
00271                 tempNode=container->faceNode->parent;
00272                 container->RotateTo(0,0,0);
00273                 container->faceNode->elem->angle.Zero();
00274                 container->faceNode->MoveTo(ce.primitive.tree.GetRoot());
00275         }
00276         onTitle.maximize();
00277         return 1;
00278 }
00279
00283 int Title::OnKeyUp(StateKey *key,int face)
00284 {
00285         DebugKey2("Title::OnKeyUp",key,face);
00286         switch(key->code)
00287         {
00288         case VK_ESCAPE: OnClose(); return 1;
00289         case VK_HOME:
00290                 if (!container) return 0;
00291                 container->RotateTo(0,0,0);
00292                 return 1;
00293         }
00294         return 0;
00295 }
00296
00300 int Title::OnKeyDown(StateKey *key,int face)
00301 {
00302         DebugKey2("Title::OnKeyDown",key,face);
00303         if (!container) return 0;
00304         BOOL shift = StateKey::GetState(VK_SHIFT);
00305         if (shift)
00306         {
00307                 switch(key->code)
00308                 {
00309                 case VK_UP:             container->RotateQuaternion(0,90/4.0,FALSE);    return 1;
00310                 case VK_DOWN:   container->RotateQuaternion(0,-90/4.0,FALSE);   return 1;
00311                 case VK_LEFT:   container->RotateQuaternion(90/4.0,0,FALSE);    return 1;
00312                 case VK_RIGHT:  container->RotateQuaternion(-90/4.0,0,FALSE);   return 1;
00313                 }
00314         }
00315         /* Remplacer par OnRefresh
00316         else
00317         {
00318                 switch(key->code)
00319                 {
00320                 case VK_UP: Move(0,-15,0,); break;
00321                 case VK_DOWN: Move(0,+15,0); break;
00322                 case VK_LEFT: Move(-15,0,0); break;
00323                 case VK_RIGHT: Move(15,0,0); break;
00324                 case VK_PRIOR: Move(0,0,-15); break;
00325                 case VK_NEXT: Move(0,0,15); break;
00326                 }
00327         }
00328         */
00329         return 0;
00330 }
00331
00335 int Title::OnMouseMove(StateMouse *mouse,int deltaX,int deltaY,int face)
00336 {
00337         //DebugMouse2("Title::OnMouseMove",mouse,face);
00338         if (!container) return 0;
00339         //if (parent) parent->onControl.mouse.move(mouse,deltaX,deltaY,parentFace);     // heritage au parent pour la gestion des trackButtons
00340         if (face!=FACE_FRONT) return 0; // pour le moment car la translation est local pour l'instnant et pas par rapport au point de vu
00341         if (mouse->GetNbButtonPush()==1)
00342         {
00343                 if (mouse->leftBtn) container->Move(-deltaX,deltaY,0);
00344                 if (mouse->midBtn)      container->RotateQuaternion(deltaX,deltaY,0);
00345                 if (mouse->leftBtn||mouse->midBtn) return 1;
00346         }
00347         return 0;
00348 }
00349
00350 int Title::OnLButtonDown(StateMouse *mouse,int face)
00351 {
00352         DebugMouse2("Title::OnLButtonDown",mouse,face);
00353         oldMouse=*mouse;
00354         GotFocus();
00355         ce.cursor.ApplyTypes(cursorMoving,cursorArrow,cursorRepere);
00356         return 1;
00357 }
00358
00359 int Title::OnMButtonDown(StateMouse *mouse,int face)
00360 {
00361         DebugMouse2("Title::OnMButtonDown",mouse,face);
00362         oldMouse=*mouse;
00363         GotFocus();
00364         ce.cursor.ApplyTypes(cursorRepere,cursorMoving,cursorArrow);
00365         return 1;
00366 }
00367
00368 int Title::OnLMButtonUp(StateMouse *mouse,int face)
00369 {
00370         DebugMouse2("Title::OnLMButtonUp",mouse,face);
00371         ce.cursor.ApplyTypes(cursorArrow,cursorMoving,cursorRepere);
00372         return 0;
00373 }
00374
00380 void Title::GotFocus()
00381 {
00382         //focused^=1;
00383         //if (! focused){ LostFocus(); return; } // pour test
00384         Debug0Param("Title::GotFocus()");
00385         focused=TRUE;
00386         faceNode->Elems(FACE_FRONT)->texture=&ce.texture.degradeeFocus;
00387         faceNode->Elems(FACE_FRONT)->material.SetDS(1,1,1);
00388         faceNode->Elems(FACE_LEFT)->material.SetDS(10/256.0,36/256.0,106/256.0);
00389         faceNode->Elems(FACE_RIGHT)->material.SetDS(166/256.0,202/256.0,240/256.0);
00390         faceNode->Elems(FACE_TOP)->material.SetDS(0,0,0.4f);
00391         faceNode->Elems(FACE_BOTTOM)->material.SetDS(0,0,0.4f);
00392
00393         onTitle.gotFocus();
00394 }
00395
00399 void Title::LostFocus()
00400 {
00401         Debug0Param("Title::LostFocus()");
00402         focused=FALSE;
00403         faceNode->Elems(FACE_FRONT)->texture=&ce.texture.degradeeUnFocus;
00404         faceNode->Elems(FACE_FRONT)->material.SetDS(1,1,1,0);
00405         faceNode->Elems(FACE_LEFT)->material.SetDS(128/256.0,128/256.0,128/256.0,0);
00406         faceNode->Elems(FACE_RIGHT)->material.SetDS(192/256.0,192/256.0,192/256.0,0);
00407         faceNode->Elems(FACE_TOP)->material.SetDS(.5,.5,.5);
00408         faceNode->Elems(FACE_BOTTOM)->material.SetDS(.5,.5,.5);
00409
00410         onTitle.lostFocus();
00411 }
00412
00416 int Title::OnClose()
00417 {
00418         Debug0Param("Title::OnClose()");
00419         //Delete(); // si pas de conteneur
00420         onTitle.close();
00421         return 1;
00422 }
00423
00424 // ********************************************************************************
00425
00426 void Title::ToString(MyString &str)
00427 {
00428         str.AddFormat("name: %s caption:%s focused:%d",
00429                 name,faceNode->Elems(FACE_FRONT)->text->GetText(),focused);
00430 }
00431
00432 // ********************************************************************************
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: title.h File Reference

title.h File Reference

Control Title. More...

#include "MyString.h"
#include "button.h"
#include "textBox.h"

Go to the source code of this file.

Classes

class | EventTitle
class | Title
titre affiche une bare degradé titre avec des boutons (min,max,close) More...

Enumerations

enum | StateTitle { original, maximize, minimize }

Detailed Description

Control Title.

Definition in file title.h.

Enumeration Type Documentation

enum StateTitle

Enumeration values:
original
maximize
minimize

Definition at line 31 of file title.h.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: title.h Source File

title.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_TITLE_H
00024 #define INCLUDE_TITLE_H
00025
00026 #include "MyString.h"
00027 #include "button.h"
00028 #include "textBox.h"
00029 //#include "container.h"
00030
00031 typedef enum { original , maximize , minimize } StateTitle;
00032
00033 using namespace sigslot;  // pour signal (evit l'ecriture sigslot::signal?<...>)
00034
00035 class EventTitle
00036 {
00037 public:
00038         signal0<> minimize;             //Call: void Minimize();
00039         signal0<> maximize;             //Call: void Maximize();
00040         signal0<> original;             //Call: void Original();
00041         signal0<> close;                //Call: void Close();
00042         signal0<> gotFocus;             //Call: void GotFocus();
00043         signal0<> lostFocus;    //Call: void Class::LostFocus();
00044 };
00045
00051 class Title : public Control
00052 {
00053 public:
00054         // varaible membre
00055         Button btnMin,btnMax,btnClose;
00056         Button btnIcon;
00057         Text3D *caption;
00058         Tip     tipCaption;
00059         Control *container;
00060
00061         BOOL focused;
00062         BOOL useIcon;
00063         BOOL useMin;
00064         BOOL useMax;
00065         BOOL useClose;
00066
00067         // gestion pour min / max / alternate
00068         Point3D<LayoutDouble> originalSize; // taille fenetre avant maximisation ou minimisation
00069         Point3D<GLdouble> originalAngle;        // angle fenetre avant maximisation ou minimisation
00070         FaceNode *tempNode;                     // noeud temporaire, en max = masterContainer, en min dans trash
00071         StateTitle state;
00072         StateMouse oldMouse;
00073         EventTitle onTitle;
00074
00075         Title();
00076         ~Title();
00077
00078         virtual void Create() { Create(NULL,DEFAULT_DEPTH_TITLE); } // Createur pour container
00079         void Create(Control *container,double depth=DEFAULT_DEPTH_TITLE); // !importent, le container dois etre le control contenant le title
00080         void ToString(MyString &str);
00081         void GotFocus();
00082         void LostFocus();
00083         void operator=(char *newCaption) { SetText(newCaption); };
00084         void SetText(char *newCaption);
00085         void SetUses(BOOL _useMin,BOOL _useMax,BOOL _useClose,BOOL _useIcon);
00086
00087         int OnClick(StateMouse *mouse,int face);
00088         int OnLButtonDown(StateMouse *mouse,int face);
00089         int OnMButtonDown(StateMouse *mouse,int face);
00090         int OnLMButtonUp(StateMouse *mouse,int face);
00091         int OnMaxOrOriginal(StateMouse *mouse,int face);
00092         int OnMaxOrOriginal();
00093         int OnMouseMove (StateMouse *mouse,int deltaX,int deltaY,int face);
00094         int OnMouseWheel(StateMouse *mouse,int face);
00095         int OnMin();
00096         int OnMax();
00097         int OnOriginal();
00098         int OnClose();
00099         int OnKeyDown(StateKey *key,int face);
00100         int OnKeyUp(StateKey *key,int face);
00101         int OnRefresh(Timer *);
00102         int OnOverIn(Control *,int);
00103         int OnOverOut(Control *,int);
00104 };
00105
00106 #endif
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: trackButton.cpp File Reference

trackButton.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "myList.h"
#include "texture.h"
#include "button.h"
#include "trackButton.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 27 of file trackButton.cpp.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: trackButton.cpp Source File

trackButton.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "myList.h"
00023 #include "texture.h"
00024 #include "button.h"
00025 #include "trackButton.h"
00026
00027 extern ControlEngine ce;
00028
00029 TrackButton::TrackButton()
00030 {
00031         // init variable
00032         name="TrackButton";
00033         orientation=(DockPos)0;
00034         onControl.over.out.connect(this,OnOverOut);
00035         SetResizeAndRotate(FALSE,FALSE);
00036         isMoving=FALSE;
00037
00038         // gestion des evenements
00039 }
00040
00041 TrackButton::~TrackButton()
00042 {
00043 }
00044
00045 // ********************************************************************************
00046
00047 BOOL TrackButton::Create(double depth)
00048 {
00049         // si pas de mouvement de liberté possible ==> pas de trackBar
00050         if (!canResize&&!canRotate) return FALSE;
00051         SetParent();
00052
00053         // init general
00054         faceNode = ce.primitive.AddBox(name,id,depth,TRUE);
00055         faceNode->elem->material.SetDS(0.4f,0.4f,0.4f);
00056         SetAlphaBlending(0.7f);
00057         ApplyMode();
00058         return TRUE;
00059 }
00060
00061 void TrackButton::SetResizeAndRotate(BOOL resize,BOOL rotate)
00062 {
00063         canResize = resize;
00064         canRotate = rotate;
00065 }
00066
00067 void TrackButton::SetMode(DockPos newOrientation)
00068 {
00069         if (orientation!=newOrientation)
00070         {
00071                 orientation = newOrientation;
00072                 ApplyMode();
00073         }
00074 }
00075
00077
00078 void TrackButton::ApplyMode()
00079 {
00080         ce.Push(this);
00081
00082         switch(orientation)
00083         {
00084         case left|top:          Config(OnClickLeftTop,&ce.texture.arrowOblique,0); break;
00085         case left|bottom:       Config(OnClickLeftBottom,&ce.texture.arrowOblique,90); break;
00086         case right|top:         Config(OnClickRightTop,&ce.texture.arrowOblique,-90); break;
00087         case right|bottom:      Config(OnClickRightBottom,&ce.texture.arrowOblique,180); break;
00088         case left:                      Config(OnClickLeft,&ce.texture.arrow,0); break;
00089         case right:                     Config(OnClickRight,&ce.texture.arrow,180); break;
00090         case top:                       Config(OnClickTop,&ce.texture.arrow,-90);       break;
00091         case bottom:            Config(OnClickBottom,&ce.texture.arrow,90); break;
00092         }
00093         ce.Pop();
00094 }
00095
00096 void TrackButton::Config(int (TrackButton::*onClickFace)(StateMouse *,int),Texture *texture,double angleZ)
00097 {
00098         if (!faceNode) return;
00099         for (int i=0;i<6;i++) faceNode->Elems(i)->texture=texture;
00100         RotateTo(0,0,angleZ);
00101         onControl.mouse.left.click.disconnect_all();
00102         if (canRotate) onControl.mouse.left.click.connect(this,onClickFace);
00103         onControl.mouse.move.disconnect_all();
00104         if (canResize) onControl.mouse.move.connect(this,OnMouseMove);
00105 }
00106
00107 int TrackButton::OnClickLeft(StateMouse *mouse,int face)
00108 {
00109         DebugMouse2("TrackButton::OnClickLeft",mouse,face);
00110         if (!isMoving&&parent) parent->Rotate(0,-90,0);
00111         return 1;
00112 }
00113
00114 int TrackButton::OnClickRight(StateMouse *mouse,int face)
00115 {
00116         DebugMouse2("TrackButton::OnClickRight",mouse,face);
00117         if (!isMoving&&parent) parent->Rotate(0,90,0);
00118         return 1;
00119 }
00120
00121 int TrackButton::OnClickTop(StateMouse *mouse,int face)
00122 {
00123         DebugMouse2("TrackButton::OnClickTop",mouse,face);
00124         if (!isMoving&&parent) parent->Rotate(-90,0,0);
00125         return 1;
00126 }
00127
00128 int TrackButton::OnClickBottom(StateMouse *mouse,int face)
00129 {
00130         DebugMouse2("TrackButton::OnClickBottom",mouse,face);
00131         if (!isMoving&&parent) parent->Rotate(90,0,0);
00132         return 1;
00133 }
00134
00135 int TrackButton::OnClickLeftTop(StateMouse *mouse,int face)
00136 {
00137         DebugMouse2("TrackButton::OnClickLeftTop",mouse,face);
00138         if (!isMoving&&parent) parent->Rotate(-90,-90,0);
00139         return 1;
00140 }
00141
00142 int TrackButton::OnClickLeftBottom(StateMouse *mouse,int face)
00143 {
00144         DebugMouse2("TrackButton::OnClickLeftBottom",mouse,face);
00145         if (!isMoving&&parent) parent->Rotate(90,-90,0);
00146         return 1;
00147 }
00148
00149 int TrackButton::OnClickRightTop(StateMouse *mouse,int face)
00150 {
00151         DebugMouse2("TrackButton::OnClickRightTop",mouse,face);
00152         if (!isMoving&&parent) parent->Rotate(-90,90,0);
00153         return 1;
00154 }
00155
00156 int TrackButton::OnClickRightBottom(StateMouse *mouse,int face)
00157 {
00158         DebugMouse2("TrackButton::OnClickRightBottom",mouse,face);
00159         if (!isMoving&&parent) parent->Rotate(-90,90,0);
00160         return 1;
00161 }
00162
00167 int TrackButton::OnMouseMove(StateMouse *mouse,int deltaX,int deltaY,int face)
00168 {
00169         //DebugMouse2("TrackButton::OnMouseMove",mouse,face);
00170         if (!parent) return 0;
00171         isMoving=FALSE;
00172         if (mouse->leftBtn)
00173         {
00174                 isMoving=TRUE;
00175                 switch(orientation)
00176                 {
00177                 case left|top:          parent->ReSize(deltaX*2,deltaY*2); break;
00178                 case left|bottom:       parent->ReSize(deltaX*2,-deltaY*2); break;
00179                 case right|top:         parent->ReSize(-deltaX*2,deltaY*2); break;
00180                 case right|bottom:      parent->ReSize(-deltaX*2,-deltaY*2); break;
00181                 case left:                      parent->ReSize(deltaX*2,0); break;
00182                 case right:                     parent->ReSize(-deltaX*2,0); break;
00183                 case top:                       parent->ReSize(0,deltaY*2); break;
00184                 case bottom:            parent->ReSize(0,-deltaY*2); break;
00185                 }
00186         }
00187         if (mouse->rightBtn)
00188         {
00189                 isMoving=TRUE;
00190                 switch(orientation)
00191                 {
00192                 case left|top:
00193                 case left|bottom:
00194                 case right|top:
00195                 case right|bottom:
00196                         parent->Move(-deltaX,deltaY,0); break;
00197                 case left:
00198                 case right:
00199                         parent->Move(-deltaX,0,0); break;
00200                 case top:
00201                 case bottom:
00202                         parent->Move(0,deltaY,0); break;
00203                 }
00204         }
00205         return 0; // heritage au parent pour mouvement du control eventuel
00206 }
00207
00208 int TrackButton::OnOverOut(Control *newControl,int face)
00209 {
00210         Debug2Param("TrackButton::OnOverOut(newCtrl:%s,%d)",(char *)newControl->name,face);
00211         orientation=(DockPos)0;
00212         isMoving = FALSE;
00213         return 0;
00214 }
00215
00216 void TrackButton::ToString(MyString &str)
00217 {
00218         str.AddFormat("name: %s",name);
00219 }
00220
00221 // ********************************************************************************
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: trackButton.h File Reference

trackButton.h File Reference

Control Track Button. More...

#include "control.h"

Go to the source code of this file.

Classes

class | EventTrackButton
class | TrackButton
Class de parametre et d'evenement d'un "Bouton". More...

Detailed Description

Control Track Button.

Definition in file trackButton.h.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: trackButton.h Source File

trackButton.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_TRACK_BUTTON_H
00024 #define INCLUDE_TRACK_BUTTON_H
00025
00026 #include "control.h"
00027
00028 class EventTrackButton
00029 {
00030 public:
00031         signal0<> rotate; // call: void OnRotate();
00032         signal1<double> resize; // call: void OnResize(double nbTexel);
00033         signal1<double> translate; // call: void OnTranslate(double nbTexel);
00034 };
00035
00041 class TrackButton : public Control
00042 {
00043 private:
00044         void ApplyMode();
00045         void Config(int (TrackButton::*onClickFace)(StateMouse *,int),Texture *texture,double angleZ);
00046         BOOL canResize;
00047         BOOL canRotate;
00048         BOOL isMoving;
00049
00050 public:
00051         // varaible membre
00052         DockPos orientation;
00053         // evenements
00054         EventTrackButton onTrackButton;
00055
00056         TrackButton();
00057         ~TrackButton();
00058
00059         virtual void Create() { Create(DEFAULT_SIZE_TRACK_BUTTON); } // Createur pour container
00060         BOOL Create(double size);
00061         void ToString(MyString &str);
00062
00063         void SetMode(DockPos newOrientation);
00064         void SetResizeAndRotate(BOOL resize,BOOL rotate);
00065
00066
00067         int OnButtonClick();
00068         int OnMouseMove(StateMouse *mouse,int deltaX,int deltaY,int face);
00069         int OnOverOut(Control *newControl,int face);
00070
00071         int OnClickLeft(StateMouse *,int);
00072         int OnClickRight(StateMouse *,int);
00073         int OnClickTop(StateMouse *,int);
00074         int OnClickBottom(StateMouse *,int);
00075         int OnClickLeftTop(StateMouse *,int);
00076         int OnClickLeftBottom(StateMouse *,int);
00077         int OnClickRightTop(StateMouse *,int);
00078         int OnClickRightBottom(StateMouse *,int);
00079 };
00080
00081 #endif
Generated on Fri Aug 20 19:19:50 2004 for 3d Controls by doxygen 1.3.6


3d Controls: treeView.cpp File Reference

treeView.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "treeView.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 24 of file treeView.cpp.

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: treeView.cpp Source File

treeView.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "treeView.h"
00023
00024 extern ControlEngine ce;
00025
00026 TreeView::TreeView()
00027 {
00028         posY=0;
00029 }
00030
00031 void TreeView::Create()
00032 {
00033         faceNode = ce.primitive.AddBox("TreeView",id,10,FALSE);
00034 }
00035
00036 void TreeView::Draw ()
00037 {
00038         ce.Push(this);
00039         ce.primitive.GoTo(FACE_FRONT);
00040         if (!faceNode->elem->computeSize.y) ce.primitive.ComputeLayout(faceNode);
00041         posY=2;
00042         DrawRecursif(data.GetRoot(),2,0);
00043         ce.Pop();
00044 }
00045
00046 int TreeView::DrawRecursif (TreeNode *node,double margeY,int level)
00047 {
00048         int nbElem=0;
00049         int nbElemFather;
00050         TreeNode *nodeChild;
00051
00052         for (node->childs.i=0;node->childs.i.More();node->childs.i++)
00053         {
00054                 nodeChild = node->childs.i.GetElem();
00055                 if (posY+21>=faceNode->elem->computeSize.y) return nbElem;
00056
00057                 // creation du boutton
00058                 Button *button;
00059                 button = new Button;
00060                 nodeChild->elem->idControl = button->id;
00061                 button->materialOnUp.SetDS(0.5f+level*0.1f,0.5f+level*0.1f,0.5f+level*0.1f);
00062                 button->materialOnDown.SetDS(0,0,1);
00063                 button->Create();
00064                 button->SetText(nodeChild->elem->text);
00065                 button->text.SetWrapping(TRUE,FALSE,FALSE);
00066                 button->XDockCenter(10,0);
00067                 button->YDockTop(margeY,19);
00068                 button->faceNode->Elems(FACE_RIGHT)->material=*button->materialCurrent;
00069
00070                 if (nodeChild->elem->contentSub)
00071                 {       // a un sous repertoire (ou peut en posseder potentielement)
00072                         button->onButton.click.connect(this,OnClick);
00073                         button->text.SetAlign(align_begin,align_begin);
00074                         AddTreeButton(button,nodeChild->elem->isCollaps); // ajout du boutton '+' / '-'
00075                         if (!nodeChild->elem->isCollaps)
00076                         {
00077                                 ce.Push(button);
00078                                         ce.primitive.GoTo(FACE_FRONT);
00079                                         nbElemFather=DrawRecursif(nodeChild,21,level+1);
00080                                 ce.Pop();
00081                         }
00082                         else nbElemFather=0;
00083                         nbElem+=nbElemFather+1;
00084                         margeY+=(nbElemFather+1)*21;
00085                         posY+=21;
00086                         button->faceNode->elem->size.y.constValue+=nbElemFather*21;
00087                 }
00088                 else
00089                 {       // on est sur un noeud final
00090                         button->onButton.click.connect(this,OnClick);
00091                         button->text.SetAlign(align_begin,align_center);
00092                         margeY+=21;
00093                         posY+=21;
00094                         nbElem++;
00095                 }
00096         }
00097         return nbElem;
00098 }
00099
00101
00102 TreeNode * TreeView::FindOnData(int idControl)
00103 {
00104         return FindOnData(idControl,data.GetRoot());
00105 }
00106
00107 TreeNode * TreeView::FindOnData(int idControl,TreeNode *node)
00108 {
00109         if (!node) return NULL;
00110         if (node->elem->idControl==idControl) return node;
00111         TreeNode *nodeChild,*nodeFind;
00112         for (node->childs.i=0;node->childs.i.More();node->childs.i++)
00113         {
00114                 nodeChild = node->childs.i.GetElem();
00115                 nodeFind = FindOnData(idControl,nodeChild);
00116                 if (nodeFind) return nodeFind;
00117         }
00118         return NULL;
00119 }
00120
00121 int TreeView::OnClick()
00122 {
00123         Control * control = ce.pickingCursor.controlHover;
00124         Test(control);
00125         return 0;
00126 }
00127
00128 int TreeView::OnClickPlus()
00129 {
00130         Control * control = ce.pickingCursor.controlHover;
00131         Test(control->parent);
00132         return 0;
00133 }
00134
00135 void TreeView::Test(Control *control)
00136 {
00137         TreeNode *node = FindOnData(control->id);
00138         //char *text = control->faceNode->Elems(FACE_FRONT)->text->GetText();
00139
00140         if (node->elem->contentSub)
00141         {
00142                 node->elem->isCollaps^=1;
00143                 ce.timerRefresh.onTimer.connect(this,OnNextFrame); // ca sinon pb d'inter-blocage
00144         }
00145         onTreeView.select(node);
00146 }
00147
00148 void TreeView::GetTreePath(TreeNode *treeNode,MyString &result,BOOL isFirst)
00149 {
00150         if (!treeNode)
00151         {
00152                 result="";
00153                 return;
00154         }
00155         GetTreePath(treeNode->parent,result,FALSE);
00156         result<<treeNode->elem->text;
00157         if (!isFirst) result<<'/';
00158 }
00159
00160 int TreeView::OnNextFrame(Timer *timer)
00161 {
00162         timer->onTimer.disconnect(this);
00163         ce.pickingCursor.ResetCurrent();
00164         DeleteSub();
00165         Draw();
00166         return 0;
00167 }
00168
00169 void TreeView::ConfigFacesPlus(Control *control,BOOL isCollaps)
00170 {
00171         MyListIterator<FaceNode *> i(&control->faceNode->childs);
00172         Face *face;
00173         for (i=0;i.More();i++)
00174         {
00175                 face = i.GetElem()->elem;
00176                 face->texture=isCollaps?&ce.texture.plus:&ce.texture.minus;
00177         }
00178 }
00179
00180 void TreeView::AddTreeButton(Button *button,BOOL isCollaps)
00181 {
00182         ce.Push(button);
00183         ce.primitive.GoTo(FACE_LEFT);
00184         Button *subButton;
00185         subButton = new Button;
00186         subButton->materialOnUp = button->materialOnUp;
00187         subButton->Create(12);
00188         subButton->XDockCenter(1);
00189         subButton->YDockTop(1,17);
00190         ConfigFacesPlus(subButton,isCollaps);
00191         ce.Pop();
00192
00193         subButton->onButton.click.connect(this,OnClickPlus);
00194 }
00195
00196 // *****************************************************************************
00197
00198 TreeDirectory::TreeDirectory()
00199 {
00200         addFile=FALSE;
00201         addDirectory=TRUE;
00202         filter="*.*";
00203         beginPath="c:";
00204         onTreeView.select.connect(this,OnClickDirectory);
00205 }
00206
00207 int TreeDirectory::OnClickDirectory(TreeNode *treeNode)
00208 {
00209         if (treeNode->elem->contentSub)
00210         {
00211                 ce.timerRefresh.onTimer.disconnect(this); // ca sinon pb d'inter-blocage
00212                 MyString pathFile;
00213                 GetTreePath(treeNode,pathFile);
00214                 treeNode->SuprChilds(TRUE);
00215                 Loading(treeNode,pathFile,TRUE);
00216                 ce.timerRefresh.onTimer.connect((TreeView*)this,OnNextFrame); // ca sinon pb d'inter-blocage
00217         }
00218         return 0;
00219 }
00220
00221 void TreeDirectory::Config(BOOL _addFile,BOOL _addDirectory,char *_filter)
00222 {
00223         addFile = _addFile;
00224         addDirectory = _addDirectory;
00225         if (_filter) filter = _filter;
00226 }
00227
00228 void TreeDirectory::Reset()
00229 {
00230         data.SuprAll();
00231         DeleteSub();
00232 }
00233
00234 void TreeDirectory::Loading(char *name,BOOL isCollaps)
00235 {
00236         beginPath=name;
00237         // il faut au moin une racine
00238         if (!data.GetRoot())
00239         {
00240                 TreeViewItem item;
00241                 item.text=name;
00242                 data.Add(item);
00243         }
00244         Loading(data.GetRoot(),name,isCollaps);
00245 }
00246
00247 void TreeDirectory::Loading(TreeNode *node,char *name,BOOL isCollaps)
00248 {
00249         HANDLE hFichCour;
00250         WIN32_FIND_DATA wfd ;
00251         MyString path;
00252         MyString temp;
00253         TreeViewItem item;
00254         TreeNode *newNode;
00255
00256         path<<clear<<name<<"\\"<<filter;
00257         hFichCour = FindFirstFile (path, &wfd) ;
00258         if (hFichCour == INVALID_HANDLE_VALUE) return ;
00259         do
00260         {
00261                 if (wfd.cFileName[0]=='.') continue;
00262                 BOOL isDir = (wfd.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY) == FILE_ATTRIBUTE_DIRECTORY;
00263                 if (isDir)
00264                 {
00265                         if (!addDirectory) continue;
00266                         temp<<clear<<name<<"\\"<<wfd.cFileName;
00267                         item.isCollaps=isCollaps;
00268                         item.contentSub=TRUE;
00269                         item.text=wfd.cFileName;
00270                         newNode = data.Add(item,node);
00271                         item.askSubData=isCollaps;
00272                         if (!isCollaps) Loading(newNode,temp,isCollaps);
00273                 }
00274                 else
00275                 {
00276                         if (!addFile) continue;
00277                         item.isCollaps=FALSE;
00278                         item.contentSub=FALSE;
00279                         item.text=wfd.cFileName;
00280                         data.Add(item,node);
00281                 }
00282         }
00283         while (FindNextFile (hFichCour, &wfd ));
00284         FindClose (hFichCour) ;
00285 }
Generated on Fri Aug 20 19:19:51 2004 for 3d Controls by doxygen 1.3.6


3d Controls: treeView.h File Reference

treeView.h File Reference

#include "control.h"

Go to the source code of this file.

Classes

class | TreeViewItem
class | EventTreeView
class | TreeView
Class de parametre et d'evenement d'une "TreeView". More...

class | TreeDirectory
Class de parametre et d'evenement d'une "TreeDirectory". More...

Typedefs

typedef MyTreeNode< TreeViewItem > | TreeNode

Typedef Documentation

typedef MyTreeNode<TreeViewItem> TreeNode

Definition at line 46 of file treeView.h.

Referenced by TreeView::FindOnData(), TreeView::GetTreePath(), TreeDirectory::OnClickDirectory(), Tutorial::ApplicationDemo::OnSelectBkg(), and Tutorial::ApplicationDemo::OnSelectExplorer().

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: treeView.h Source File

treeView.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_TREEVIEW_H
00024 #define INCLUDE_TREEVIEW_H
00025
00026 #include "control.h"
00027
00028 class TreeViewItem
00029 {
00030 public:
00031         MyString text;
00032         BOOL isCollaps;
00033         BOOL contentSub;
00034         BOOL askSubData;
00035         int idControl;
00036
00037         TreeViewItem()
00038         {
00039                 isCollaps=TRUE;
00040                 contentSub=FALSE;
00041                 askSubData=FALSE;
00042                 idControl=-1;
00043         }
00044 };
00045
00046 typedef MyTreeNode<TreeViewItem> TreeNode;
00047
00048 class EventTreeView
00049 {
00050 public:
00051         signal1<TreeNode *> select;
00052 };
00053
00059 class TreeView : public Control
00060 {
00061 private:
00062         int  DrawRecursif(TreeNode *node,double margeY,int level);
00063         void AddTreeButton(Button *button,BOOL isCollaps);
00064         TreeNode * FindOnData(int idControl,TreeNode *node);
00065         double posY;
00066         void Test(Control *control);
00067         int OnClickPlus();
00068
00069 public:
00070         MyTree<TreeViewItem> data;
00071         EventTreeView onTreeView;
00072
00073         TreeView();
00074         void Create();
00075         void Draw ();
00076         TreeNode * FindOnData(int idControl);
00077         void GetTreePath(TreeNode *treeNode,MyString &result,BOOL isFirst=TRUE);
00078         void ConfigFacesPlus(Control *control,BOOL isCollaps);
00079
00080         int OnNextFrame(Timer *timer);
00081         int OnClick();
00082 };
00083
00084
00090 class TreeDirectory : public TreeView
00091 {
00092 private:
00093         void Loading(TreeNode *node,char *name,BOOL isCollaps);
00094
00095         BOOL addFile;
00096         BOOL addDirectory;
00097         MyString filter;
00098         MyString beginPath;
00099
00100 public:
00101         TreeDirectory();
00102         void Config(BOOL _addFile,BOOL _addDirectory,char *_filter=NULL);
00103         void Reset();
00104         void Loading(char *name,BOOL isCollaps=TRUE);
00105
00106         int OnClickDirectory(TreeNode *treeNode);
00107 };
00108
00109 #endif
Generated on Fri Aug 20 19:19:51 2004 for 3d Controls by doxygen 1.3.6


3d Controls: trigo.cpp File Reference

trigo.cpp File Reference

#include "trigo.h"

Go to the source code of this file.

Functions

double | Bound2_PI (double angle)
BOOL | GetTrigoSens (POINT *pt)
Dit si les points sont les sens trigonometrique (invers des aiguille d'une montre).

BOOL | GetTrigoSens (POINT *pt, int nbPoints)
Dit si les points sont les sens trigonometrique (invers des aiguille d'une montre).

void | ChangeTrigoSens (POINT *pt, int nbPoints)
Inverse l'ordre des points ==> change de sens rotation.

int | GetNearExp2 (int num)
Donne le chiffre exposent de 2 englobant le nombre possée.

int | IntFloorLog2 (unsigned int x)
(int)floor(log2(x))

BOOL | IsPow2 (unsigned int x)
true if x is a power of two

Function Documentation

double Bound2_PI ( double angle )

Definition at line 22 of file trigo.cpp.

References DOUBLE_PI.

Referenced by GetTrigoSens().

void ChangeTrigoSens | ( | POINT * | pt,
 |  | int | nbPoints
 | ) |

Inverse l'ordre des points ==> change de sens rotation.

Definition at line 78 of file trigo.cpp.

References point.

Referenced by Region::NormalizeSens().

int GetNearExp2 ( int num )

Donne le chiffre exposent de 2 englobant le nombre possée.

Definition at line 96 of file trigo.cpp.

References num.

Referenced by Texture::ConfigSize().

BOOL GetTrigoSens | ( | POINT * | pt,
 |  | int | nbPoints
 | ) |

Dit si les points sont les sens trigonometrique (invers des aiguille d'une montre).

Technique: prendre tout les points

Returns:
  • TRUE: trigonometrique
  • FALSE: horaire
  • -1: inconsistant
  • -2: erreur: il faut au moin 3 points

Definition at line 62 of file trigo.cpp.

References BOOL().

Referenced by Region::NormalizeSens().

BOOL GetTrigoSens ( POINT * pt )

Dit si les points sont les sens trigonometrique (invers des aiguille d'une montre).

Technique: prendre 3 points et determiner l'angle entre les 2 segments remarque: ne regard que 3 points, il peut y avoir inconsistance

Returns:
resultat:
  • TRUE: trigonometrique
  • FALSE: horaire

Definition at line 40 of file trigo.cpp.

int IntFloorLog2 ( unsigned int x )

(int)floor(log2(x))

Definition at line 106 of file trigo.cpp.

BOOL IsPow2 ( unsigned int x )

true if x is a power of two

Definition at line 116 of file trigo.cpp.

References BOOL().

Generated on Fri Aug 20 19:20:53 2004 for 3d Controls by doxygen 1.3.6


3d Controls: trigo.cpp Source File

trigo.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "trigo.h"
00020
00021 // borne a un angle de [0,2*PI[
00022 double Bound2_PI(double angle)
00023 {
00024         int nbTours = (int)(angle/DOUBLE_PI);
00025         double angleRes = angle-nbTours*DOUBLE_PI;
00026         if (angleRes<0) angleRes = DOUBLE_PI+angleRes;
00027         return angleRes;
00028 }
00029
00040 BOOL GetTrigoSens(POINT *pt)
00041 {
00042         double angle1,angle2;
00043         int dx1=pt[1].x-pt[0].x;
00044         int dy1=pt[1].y-pt[0].y;
00045         int dx2=pt[2].x-pt[1].x;
00046         int dy2=pt[2].y-pt[1].y;
00047         angle1=atan2((double)dy1,(double)dx1);
00048         angle2=atan2((double)dy2,(double)dx2);
00049         return Bound2_PI(angle2-angle1)>PI?FALSE:TRUE;
00050 }
00051
00062 BOOL GetTrigoSens(POINT *pt,int nbPoints)
00063 {
00064         BOOL trigo=-2;
00065         for (int i=0;i<nbPoints-2;i++)
00066         {
00067                 BOOL trigoCur = GetTrigoSens(pt+i);
00068                 if (trigo==-2) trigo = trigoCur;
00069                 if (trigoCur!=trigo)
00070                         return -1;
00071         }
00072         return trigo;
00073 }
00074
00078 void ChangeTrigoSens(POINT *pt,int nbPoints)
00079 {
00080         POINT point;
00081         // si nb de point impaires, ne change rien
00082         for (int i=0,j=nbPoints-1;i<nbPoints/2;i++,j--)
00083         {
00084                 point.x=pt[i].x;
00085                 point.y=pt[i].y;
00086                 pt[i].x=pt[j].x;
00087                 pt[i].y=pt[j].y;
00088                 pt[j].x=point.x;
00089                 pt[j].y=point.y;
00090         }
00091 }
00092
00096 int GetNearExp2(int num)
00097 {
00098         int numExp2;
00099         for (numExp2=1;numExp2<num;numExp2<<=1);
00100         return numExp2;
00101 }
00102
00106 int IntFloorLog2(unsigned int x)
00107 {
00108         int a=0;
00109         while (x>>=1) ++a;
00110         return a;
00111 }
00112
00116 BOOL IsPow2(unsigned int x)
00117 {
00118         return ((x>0) && ((x&(x-1))==0));
00119 }
Generated on Fri Aug 20 19:19:51 2004 for 3d Controls by doxygen 1.3.6


3d Controls: trigo.h File Reference

trigo.h File Reference

Gestion de math: "trigonometrie" (points,sens trigonometrique,etc ...). More...

#include <math.h>
#include <windows.h>
#include "include/quaternion.h"

Go to the source code of this file.

Classes

class | Point1D
un point de 1 dimmentions (utils pour les interpolation lineaire) More...

class | Point2D
un point de 2 dimmentions More...

class | Point3D
un point de 3 dimmentions More...

class | LinearEqu2D
Donne l'equation de la droite passant par les points. More...

Defines

#define | PI 3.1415926535f
#define | DOUBLE_PI (PI*2.0f)
#define | HALF_PI (PI/2.0f)
#define | PRECISION 0.0001
#define | DEGTORAD(ang) ((ang) * PI / 180.0)
#define | RADTODEG(ang) ((ang) * 180.0/ PI)

Functions

double | Bound2_PI (double angle)
BOOL | GetTrigoSens (POINT *pt)
Dit si les points sont les sens trigonometrique (invers des aiguille d'une montre).

BOOL | GetTrigoSens (POINT *pt, int nbPoints)
Dit si les points sont les sens trigonometrique (invers des aiguille d'une montre).

void | ChangeTrigoSens (POINT *pt, int nbPoints)
Inverse l'ordre des points ==> change de sens rotation.

int | GetNearExp2 (int num)
Donne le chiffre exposent de 2 englobant le nombre possée.

Detailed Description

Gestion de math: "trigonometrie" (points,sens trigonometrique,etc ...).

Definition in file trigo.h.

Define Documentation

#define DEGTORAD ( ang ) ((ang) * PI / 180.0)

Definition at line 33 of file trigo.h.

#define DOUBLE_PI (PI*2.0f)

Definition at line 30 of file trigo.h.

Referenced by Bound2_PI().

#define HALF_PI (PI/2.0f)

Definition at line 31 of file trigo.h.

#define PI 3.1415926535f

Definition at line 29 of file trigo.h.

Referenced by Object3D::DrawVector(), Cursor::DrawVector(), GetTrigoSens(), and Tutorial::FaceDemo::OnTimer().

#define PRECISION 0.0001

Definition at line 32 of file trigo.h.

#define RADTODEG ( ang ) ((ang) * 180.0/ PI)

Definition at line 34 of file trigo.h.

Function Documentation

double Bound2_PI ( double angle )

Definition at line 22 of file trigo.cpp.

References DOUBLE_PI.

Referenced by GetTrigoSens().

void ChangeTrigoSens | ( | POINT * | pt,
 |  | int | nbPoints
 | ) |

Inverse l'ordre des points ==> change de sens rotation.

Definition at line 78 of file trigo.cpp.

References point.

Referenced by Region::NormalizeSens().

int GetNearExp2 ( int num )

Donne le chiffre exposent de 2 englobant le nombre possée.

Definition at line 96 of file trigo.cpp.

References num.

Referenced by Texture::ConfigSize().

BOOL GetTrigoSens | ( | POINT * | pt,
 |  | int | nbPoints
 | ) |

Dit si les points sont les sens trigonometrique (invers des aiguille d'une montre).

Technique: prendre tout les points

Returns:
  • TRUE: trigonometrique
  • FALSE: horaire
  • -1: inconsistant
  • -2: erreur: il faut au moin 3 points

Definition at line 62 of file trigo.cpp.

References BOOL().

Referenced by Region::NormalizeSens().

BOOL GetTrigoSens ( POINT * pt )

Dit si les points sont les sens trigonometrique (invers des aiguille d'une montre).

Technique: prendre 3 points et determiner l'angle entre les 2 segments remarque: ne regard que 3 points, il peut y avoir inconsistance

Returns:
resultat:
  • TRUE: trigonometrique
  • FALSE: horaire

Definition at line 40 of file trigo.cpp.

References BOOL(), Bound2_PI(), and PI.

Generated on Fri Aug 20 19:20:54 2004 for 3d Controls by doxygen 1.3.6


3d Controls: trigo.h Source File

trigo.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_TRIGO_H
00024 #define INCLUDE_TRIGO_H
00025
00026 #include <math.h>
00027 #include <windows.h> // POINT
00028
00029 #define PI                              3.1415926535f
00030 #define DOUBLE_PI               (PI*2.0f)
00031 #define HALF_PI                 (PI/2.0f)
00032 #define PRECISION               0.0001      // pour les calculs de IsOnXXXXX() : valeur par defaut
00033 #define DEGTORAD(ang) ((ang) * PI / 180.0)
00034 #define RADTODEG(ang) ((ang) * 180.0/ PI)
00035
00036 double  Bound2_PI(double angle);
00037 BOOL    GetTrigoSens(POINT *pt);
00038 BOOL    GetTrigoSens(POINT *pt,int nbPoints);
00039 void    ChangeTrigoSens(POINT *pt,int nbPoints);
00040 int             GetNearExp2(int num);
00041
00042 template <class T> class Point3D;
00046 template <class T> class Point1D
00047 {
00048 public:
00049         T value;
00050
00051 public:
00052         Point1D() { Zero(); }
00053         Point1D(T _value) { value=_value; }
00054         void Zero() { value=0; }
00055         BOOL operator==(Point1D<T> &src) { return (value==src.value); }
00056         void operator=(Point1D<T> &src) { value=src.value; }
00057         void operator=(T _value) { value=_value; }
00058         //void operator+=(T _value) { value+=_value; }
00059         //void operator-=(T _value) { value-=_value; }
00060         //void operator/=(T _value) { value/=_value; }
00061         //void operator*=(T _value) { value*=_value; }
00062         T operator+(T _value) { T t; t = value+_value; return t; }
00063         T operator-(T _value) { T t; t = value-_value; return t; }
00064         double operator/(double coef) { return value/coef; }
00065         double operator*(double coef) { return value*coef; }
00066         operator T() const { return value; }
00067         double LinearInterpolation(T value1,T value2,double alpha);
00068 };
00069
00073 template <class T> class Point2D
00074 {
00075 public:
00076         T x;
00077         T y;
00078
00079 public:
00080         Point2D() { Zero(); }
00081         Point2D(T _x,T _y) { Set(_x,_y); }
00082         void Set (T _x,T _y) { x=_x; y=_y; }
00083         void Zero() { x=0; y=0; }
00084         BOOL operator==(Point2D<T> &src) { return (x==src.x)&&(y==src.y); }
00085         BOOL operator!=(Point2D<T> &src) { return !((x==src.x)&&(y==src.y)); }
00086         void operator=(Point3D<T> &src);
00087         void operator=(Point2D<T> &src) { x=src.x; y=src.y; }
00088         void operator+=(Point2D<T> &src) { x+=src.x; y+=src.y; }
00089         Point2D<T> operator-(Point2D<T> &src);
00090         Point2D<T> operator+(Point2D<T> &src);
00091         Point2D<T> operator*(double coef);
00092         Point2D<T> operator/(double coef);
00093         void operator/=(double coef) { x/=coef; y/=coef;        }
00094         void operator*=(double coef) { x*=coef; y*=coef;        }
00095         double Power() { return sqrt(x*x+y*y); }
00096
00097         BOOL IsOnSegment(Point2D<T> &a,Point2D<T> &b,double *alpha=NULL);
00098         BOOL IsOnLine(Point2D<T> &a,Point2D<T> &b,double *alpha=NULL,double precision=PRECISION);
00099         BOOL IsOnTriangle(Point2D<T> &a,Point2D<T> &b,Point2D<T> &c,double *alphaBC,double *alphaAPP,Point2D<T> *pp=NULL);
00100         BOOL IsOnQuadrilatere(Point2D<T> &a,Point2D<T> &b,Point2D<T> &c,Point2D<T> &d,double *alphaX=NULL,double *alphaY=NULL);
00101         BOOL IsOnRectangle(Point2D<T> &a,Point2D<T> &c,double *alphaX=NULL,double *alphaY=NULL);
00102
00103         BOOL GetRelativePtOnQuadrilatere(Point2D<T> &a,Point2D<T> &b,Point2D<T> &c,Point2D<T> &d,double *deltaX,double *deltaY);
00104         BOOL GetRelativePtOn2Lines(Point2D<T> &a,Point2D<T> &b,Point2D<T> &c,Point2D<T> &d,double *alpha);
00105
00106         void ToNormalVector(BOOL asTrigo=TRUE);
00107 };
00108
00109
00110 #include "include/quaternion.h"
00111
00116 template <class T> class Point3D
00117 {
00118 public:
00119         T x;
00120         T y;
00121         T z;
00122
00123 public:
00124         Point3D() { Zero(); }
00125         Point3D(T _x,T _y,T _z) { Set(_x,_y,_z); }
00126
00127         void Set (T _x,T _y,T _z=0) { x=_x; y=_y; z=_z; }
00128         void Zero() { x=0; y=0; z=0; }
00129         BOOL IsEqual(T _x,T _y,T _z) { return (x==_x)&&(y==_y)&&(z==_z); }
00130         BOOL operator==(Point3D<T> &src) { return (x==src.x)&&(y==src.y)&&(z==src.z); }
00131         void operator=(Point3D<T> &src);
00132         void Add(T _x,T _y,T _z);
00133         void operator+=(Point3D<T> &src);
00134         void operator/=(double divide);
00135
00136         void glRotated(double ratio);
00137         void glRotated();
00138         void glTranslated(double ratio);
00139         void glTranslated();
00140         void glRasterPos() { glRasterPos3d(x,y,z); }
00141         void glScale() { glScaled(x,y,z); }
00142
00143         double Power() { return sqrt(x*x+y*y+z*z); }
00144         Point3D<T> QuaternionRotate (Point3D<T> &rotate);
00145         void operator=(Point2D<T> &src);
00146         BOOL IsOnTriangle(Point3D<T> &a,Point3D<T> &b,Point3D<T> &c);
00147         BOOL IsNotNull() { return (x||y||z)?TRUE:FALSE; }
00148 };
00149
00161 template <class T>
00162 class LinearEqu2D
00163 {
00164 private:
00165         void Compute()
00166         {
00167                 a=pt1.y-pt2.y;
00168                 b=pt2.x-pt1.x;
00169                 c=-(pt1.x*a+pt1.y*b); // <=> xa(yb-ya)-ya(xb-xa)
00170         }
00171
00172         double a,b,c;
00173         Point2D<T> pt1,pt2;
00174
00175 public:
00176         LinearEqu2D() { Zero(); }
00177         LinearEqu2D(Point2D<T> &_pt1,Point2D<T> &_pt2) { Set(_pt1,_pt2); }
00178
00179         void Zero()
00180         {
00181                 pt1.Zero();
00182                 pt2.Zero();
00183                 a=b=c=0;
00184         }
00185
00186         void Set(Point2D<T> &_pt1,Point2D<T> &_pt2)
00187         {
00188                 pt1=_pt1;
00189                 pt2=_pt2;
00190                 Compute();
00191         }
00192
00193         BOOL IsPoint() { return a||b?TRUE:FALSE; }
00194         BOOL IsVertical() { return a&&!b?TRUE:FALSE; }
00195         BOOL IsHorizontal() { return !a&&b?TRUE:FALSE; }
00196
00197         BOOL GetCrossPtFromVertical(T x,Point2D<T> *pt=NULL)
00198         {       // donne le point a l'intesections de la ligne en cours et une vertical donnée
00199                 Point2D<T> ptv1(x,0);
00200                 Point2D<T> ptv2(x,10);
00201                 LinearEqu2D<T> vertEqu(ptv1,ptv2);
00202                 return GetCrossPtFromLine(vertEqu,pt);
00203         }
00204
00205         BOOL GetCrossPtFromHorizontal(T y,Point2D<T> *pt=NULL)
00206         {       // donne le point a l'intesections de la ligne en cours et une vertical donnée
00207                 Point2D<T> pth1(0,y);
00208                 Point2D<T> pth2(10,y);
00209                 LinearEqu2D<T> horiEqu(pth1,pth2);
00210                 return GetCrossPtFromLine(horiEqu,pt);
00211         }
00231         BOOL GetCrossPtFromLine(LinearEqu2D<T> &equ,Point2D<T> *pt=NULL)
00232         {   // donne le point a l'interections des 2 lignes definis par leurs equation
00233                 Point2D<T> _pt;
00234                 if (!pt) pt=&_pt;
00235                 if (!ComputePtFromeLine(*this,equ,pt))
00236                         return ComputePtFromeLine(equ,*this,pt);
00237                 else return TRUE;
00238                 return TRUE;
00239         }
00240
00241 private:
00242         BOOL ComputePtFromeLine(LinearEqu2D<T> &equ1,LinearEqu2D<T> &equ2,Point2D<T> *pt)
00243         {
00244                 T denominateur = ((equ2.a*equ1.b)-(equ1.a*equ2.b));
00245                 if (!denominateur) return FALSE; // pas de solution
00246                 pt->y = ((equ1.a*equ2.c)-(equ2.a*equ1.c))/denominateur;
00247                 if (!equ2.a) return FALSE;// la 2 eme equations et horizontal donc une infinité de solution sur equ
00248                 pt->x = ((equ2.b*pt->y)+equ2.c)/-equ2.a;
00249                 return TRUE;
00250         }
00251 };
00252
00253 // Point1D implementation ********************************************************
00254
00255 template <class T>
00256 double Point1D<T>::LinearInterpolation(T value1,T value2,double alpha)
00257 {
00258         value= value1+(double)(value2-value1)*alpha;
00259         return value;
00260 }
00261
00262 // Point2D implementation ********************************************************
00263
00264 template <class T>
00265 Point2D<T> Point2D<T>::operator-(Point2D<T> &src)
00266 {
00267         Point2D<T> pt;
00268         pt.x=x-src.x;
00269         pt.y=y-src.y;
00270         return pt;
00271 }
00272
00273 template <class T>
00274 Point2D<T> Point2D<T>::operator+(Point2D<T> &src)
00275 {
00276         Point2D<T> pt;
00277         pt.x=x+src.x;
00278         pt.y=y+src.y;
00279         return pt;
00280 }
00281
00282 template <class T>
00283 Point2D<T> Point2D<T>::operator*(double coef)
00284 {
00285         Point2D<T> pt;
00286         pt.x=(T)(x*coef);
00287         pt.y=(T)(y*coef);
00288         return pt;
00289 }
00290
00291 template <class T>
00292 Point2D<T> Point2D<T>::operator/(double coef)
00293 {
00294         Point2D<T> pt;
00295         pt.x=(T)(x/coef);
00296         pt.y=(T)(y/coef);
00297         return pt;
00298 }
00299
00300 template <class T>
00301 void Point2D<T>::operator=(Point3D<T> &src)
00302 {
00303         x=src.x;
00304         y=src.y;
00305 }
00306
00307 /* Determine si un point (p) est sur la tragectoire d'un segment [ab] ******************
00308 Si un pointeur alhpa est donnée, et si il y a interesection, donne le pourcentage
00309 de la position d'intersection par rapport ou point (a)
00310 Ex.:
00311 alpha = 0; p = a
00312 alpha = 1; p = b
00313 alpha = 0.5; p.x= (b.x+a.x)/2; p.y = (b.y+a.y)/2
00314 ************************************************************************************* */
00315
00316 template <class T>
00317 BOOL Point2D<T>::IsOnSegment(Point2D<T> &a,Point2D<T> &b,double *alpha)
00318 {
00319         double _alpha;
00320         if (!alpha) alpha=&_alpha;
00321         if (IsOnLine(a,b,alpha)) return ((*alpha>=0)&&(*alpha<=1))?TRUE:FALSE;
00322         return FALSE;
00323 }
00324
00325 template <class T>
00326 BOOL Point2D<T>::IsOnLine(Point2D<T> &a,Point2D<T> &b,double *alpha,double precision)
00327 {
00328         double dx = b.x-a.x;
00329         double dy = b.y-a.y;
00330         if (!dx&&!dy)
00331         {       // a et b sont confondu
00332                 if (a==*this)
00333                 {
00334                         if (alpha) *alpha = 0; // en fait infinit de solution car les 2 points sont confondu
00335                         return TRUE;
00336                 }
00337                 return FALSE;
00338         }
00339
00340         double dxap = x-a.x;
00341         double dyap = y-a.y;
00342         double reste=dxap*dy-dyap*dx;
00343         if (fabs(reste)<=precision)
00344         {
00345                 if (alpha)
00346                 {
00347                         if (dx) *alpha = dxap/dx;
00348                         else if (dy) *alpha = dyap/dy;
00349                         else *alpha = 0; // en fait infinit de solution car les 2 points sont confondu
00350                 }
00351                 return TRUE;
00352         }
00353         return FALSE;
00354 }
00355
00356 /* consitere le point comme un vecteur, on peut alors en faire une rotation a 90° ******
00357 en sens trigonometirque ou horaire
00358 ************************************************************************************* */
00359
00360 template <class T>
00361 void Point2D<T>::ToNormalVector(BOOL asTrigo)
00362 {
00363         T temp = x;
00364         if (asTrigo)
00365         {
00366                 x = -y;
00367                 y = temp;
00368         }
00369         else
00370         {
00371                 x = y;
00372                 y = -temp;
00373         }
00374 }
00375
00392 template <class T>
00393 BOOL Point2D<T>::IsOnTriangle(Point2D<T> &a,Point2D<T> &b,Point2D<T> &c,double *alphaBC,double *alphaAPP,Point2D<T> *pp)
00394 {
00395         Point2D<T> _pp;
00396         Point1D<T> interpolation;
00397         double _alphaBC,_alphaAPP;
00398         if (!alphaAPP) alphaAPP=&_alphaAPP;
00399         if (!alphaBC) alphaBC=&_alphaBC;
00400         if (!pp) pp=&_pp;
00401
00402         // etape 1: calcul du point PP
00403         LinearEqu2D<T> equAP(a,*this);  // equation de [AP]
00404         LinearEqu2D<T> equBC(b,c);              // equation de [BC]
00405         if (!equAP.GetCrossPtFromLine(equBC,pp)) return FALSE;
00406         // etape 2: calcul de l'alpha de P' sur segment [BC]
00407         if (!pp->IsOnSegment(b,c,alphaBC)) return FALSE;
00408         // etape 3: calcul de l'alpha de P sur segment [AP']
00409         if (!IsOnSegment(a,*pp,alphaAPP)) return FALSE;
00410         return TRUE;
00411 }
00412
00414
00415 template <class T>
00416 BOOL Point2D<T>::IsOnRectangle(Point2D<T> &a,Point2D<T> &c,double *alphaX,double *alphaY)
00417 {
00418         Point2D<T> b(c.x,a.y),Point2D<T> d(a.x,c.y);
00419         return IsOnQuadrilatere(a,b,c,d,alphaX,alphaY);
00420 }
00421
00423
00424 template <class T>
00425 BOOL Point2D<T>::IsOnQuadrilatere(Point2D<T> &a,Point2D<T> &b,Point2D<T> &c,Point2D<T> &d,double *alphaX,double *alphaY)
00426 {
00427         double _alphaX,_alphaY;
00428         if (!alphaX) _alphaX=&alphaX;
00429         if (!alphaY) _alphaY=&alphaY;
00430         BOOL res = GetRelativePtOnQuadrilatere(a,b,c,d,&_alphaX,&_alphaY);
00431         return (!res||*alphaX<0||*alphaY<0)?FALSE:TRUE;
00432 }
00433
00459 template <class T>
00460 BOOL Point2D<T>::GetRelativePtOnQuadrilatere(Point2D<T> &a,Point2D<T> &b,Point2D<T> &c,Point2D<T> &d,double *alphaX,double *alphaY)
00461 {
00462         double _alphaX,_alphaY;
00463         if (!alphaX) alphaX=&_alphaX;
00464         if (!alphaY) alphaY=&_alphaY;
00465
00466         // calcul de alpha
00467         if (!GetRelativePtOn2Lines(a,b,d,c,alphaX)) return FALSE;
00468         if (!GetRelativePtOn2Lines(a,d,b,c,alphaY)) return FALSE;
00469         return TRUE;
00470 }
00471
00472 template <class T>
00473 BOOL Point2D<T>::GetRelativePtOn2Lines(Point2D<T> &a,Point2D<T> &b,Point2D<T> &c,Point2D<T> &d,double *alpha)
00474 {
00475         double _alpha;
00476         if (!alpha) alpha=&_alpha;
00477
00478         // calcul des constante de l'eqation: _a*alpha^2+_b*alpha+_c=0
00479         double _a,_b,_c;
00480         _a =
00481                 (a.y-b.y)*(d.x-c.x)
00482                 -(a.x-b.x)*(d.y-c.y);
00483         _b =
00484                 (a.y-b.y)*(c.x-a.x)
00485                 -(a.x-b.x)*(c.y-a.y)
00486                 +(a.x-b.x-c.x+d.x)*(y-a.y)
00487                 -(a.y-b.y-c.y+d.y)*(x-a.x);
00488         _c =
00489                 (y-a.y)*(c.x-a.x)
00490                 -(x-a.x)*(c.y-a.y);
00491
00492         // resolution des eventuel solution de alpha
00493         if (!_a)
00494         {       // l'equation n'est plus du 2°degrée donc un solution simple
00495                 if (!_b) return FALSE;
00496                 *alpha=-_c/_b;
00497         }
00498         else
00499         {       // l'eqution est du 2°degrée
00500                 // solution1 donne P inclus dans [P1,P2]
00501                 // solution2 donné apres intersection des 2 droites
00502                 double delta=_b*_b-4.0*_a*_c;
00503                 if (delta<0) return FALSE; // pas de solution
00504                 double alpha1,alpha2;
00505                 double sqrtdelta = sqrt(delta);
00506                 alpha1 = (-_b-sqrtdelta)/(2.0*_a);
00507                 alpha2 = (-_b+sqrtdelta)/(2.0*_a);
00508
00509                 if (fabs(alpha1)<fabs(alpha2)) *alpha=alpha1;
00510                 else *alpha=alpha2;
00511                 //Point2D<double> p1((b.x-a.x)*alpha1+a.x,(b.y-a.y)*alpha1+a.y);
00512                 //Point2D<double> p2((d.x-c.x)*alpha1+c.x,(d.y-c.y)*alpha1+c.y);
00513                 //if (IsOnLine(p1,p2)) *alpha = alpha1;
00514                 //else *alpha = alpha2;
00515                 /*
00516                 // test alpha pour savoir si P1=P2
00517                 double precision_rest = 0.000001;
00518                 double restX = alpha1*(b.x-a.x-d.x+c.x)-c.x+a.x;
00519                 double restY = alpha1*(b.y-a.y-d.y+c.y)-c.y+a.y;
00520                 if (fabs(restX)<precision_rest&&fabs(restY)<precision_rest)
00521                          *alpha = alpha2; // alpha1 fait que P1=P2
00522                 else *alpha = alpha1; // alpha2 fait que P1=P2
00523                 */
00524         }
00525         return TRUE;
00526 }
00527
00528
00529 // Point3D implementation ********************************************************
00530
00531 template <class T>
00532 Point3D<T> Point3D<T>::QuaternionRotate (Point3D<T> &rotate)
00533 {
00534         return *this;
00535         Quaternion qbase,qrotate;
00536
00537         qbase.from_euler(*this);
00538         qrotate.from_euler(rotate);
00539         qbase*=qrotate;
00540         return qbase.to_euler();
00541 }
00542
00543 template <class T>
00544 BOOL Point3D<T>::IsOnTriangle(Point3D<T> &a,Point3D<T> &b,Point3D<T> &c)
00545 {
00546         Point2D<T> _p,_a,_b,_c,_pp;
00547         double alphaBC,alphaAPP;
00548         _p=this;
00549         _a=a;
00550         _b=b;
00551         _c=c;
00552         if (!_p.IsOnTriangle(_a,_b,_c,&alphaBC,&alphaAPP,&_pp)) return FALSE;
00553         Point3D pp;
00554         pp=_pp;
00555         pp.z.LinearInterpolation(b.z,c.z,alphaBC);
00556         z.LinearInterpolation(a.z,pp.z,alphaAPP);
00557         return TRUE;
00558 }
00559
00560 template <class T>
00561 void Point3D<T>::operator= (Point2D<T> &src)
00562 {
00563         x=src.x;
00564         y=src.y;
00565         z=0;
00566 }
00567
00568 template <class T>
00569 void Point3D<T>::operator=(Point3D<T> &src)
00570 {
00571         x=src.x;
00572         y=src.y;
00573         z=src.z;
00574 }
00575
00576 template <class T>
00577 void Point3D<T>::Add(T _x,T _y,T _z)
00578 {
00579         x+=_x;
00580         y+=_y;
00581         z+=_z;
00582 }
00583
00584 template <class T>
00585 void Point3D<T>::operator+=(Point3D<T> &src)
00586 {
00587         x+=src.x;
00588         y+=src.y;
00589         z+=src.z;
00590 }
00591
00592 template <class T>
00593 void Point3D<T>::operator/=(double divide)
00594 {
00595         x/=divide;
00596         y/=divide;
00597         z/=divide;
00598 }
00599
00600 template <class T>
00601 void Point3D<T>::glRotated(double ratio)
00602 {
00603         if (!ratio) return;
00604         if (ratio==1) glRotated();
00605         else
00606         {
00607                 if (x) ::glRotated(x*ratio,1,0,0);
00608                 if (y) ::glRotated(y*ratio,0,1,0);
00609                 if (z) ::glRotated(z*ratio,0,0,1);
00610         }
00611 }
00612
00613 template <class T>
00614 void Point3D<T>::glRotated()
00615 {
00616         if (x) ::glRotated(x,1,0,0);
00617         if (y) ::glRotated(y,0,1,0);
00618         if (z) ::glRotated(z,0,0,1);
00619 }
00620
00621 template <class T>
00622 void Point3D<T>::glTranslated(double ratio)
00623 {
00624         if (!ratio) return;
00625         if (x||y||z) ::glTranslated(x*ratio,y*ratio,z*ratio);
00626 }
00627
00628 template <class T>
00629 void Point3D<T>::glTranslated()
00630 {
00631         if (x||y||z) ::glTranslated(x,y,z);
00632 }
00633
00634 #endif
Generated on Fri Aug 20 19:19:51 2004 for 3d Controls by doxygen 1.3.6


3d Controls: univers.cpp File Reference

univers.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "univers.h"
#include "mylist.h"
#include "polygonMode.h"
#include "valueEditor.h"
#include "msgBox.h"
#include "tip.h"

Go to the source code of this file.

Variables

ControlEngine ce

Variable Documentation

ControlEngine ce

Definition at line 29 of file univers.cpp.

Generated on Fri Aug 20 19:20:54 2004 for 3d Controls by doxygen 1.3.6


3d Controls: univers.cpp Source File

univers.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "univers.h"
00023 #include "mylist.h"
00024 #include "polygonMode.h"
00025 #include "valueEditor.h"
00026 #include "msgBox.h"
00027 #include "tip.h"
00028
00029 extern ControlEngine ce;
00030
00031 // ********************************************************************************
00032
00033 Univers::Univers()
00034 {
00035         // init des variables
00036         isOnMenu=FALSE;
00037         isMenuUsing=FALSE;
00038         name="Univers";
00039         tipKey=NULL;
00040
00041         // gestion des evenements
00042         onControl.key.down.connect(this,OnKeyDown);
00043         onControl.key.up.connect(this,OnKeyUp);
00044         onControl.mouse.move.connect(this,OnMouseMove);
00045         onControl.mouse.wheel.connect(this,OnMouseWheel);
00046         onControl.mouse.left.down.connect(this,OnLButtonDown);
00047         onControl.mouse.left.up.connect(this,OnLButtonUp);
00048         onControl.mouse.mid.down.connect(this,OnMButtonDown);
00049         onControl.mouse.mid.up.connect(this,OnMButtonUp);
00050         onControl.over.in.connect(this,OnOverIn);
00051         onControl.over.out.connect(this,OnOverOut);
00052 }
00053
00054 Univers::~Univers()
00055 {
00056         ce.timerRefresh.onTimer.disconnect(this);
00057 }
00058
00059 // ********************************************************************************
00060
00061 void Univers::Create()
00062 {       // creation graphics
00063         SetParent();
00064         faceNode = ce.primitive.AddFace(name,id,-1,FALSE,0,0,0,0,0,0,1,0,1);
00065 }
00066
00067 // ********************************************************************************
00068
00069 int Univers::OnKeyDown (StateKey *key,int face)
00070 {
00071         DebugKey2("Univers::OnKeyDown",key,face);
00072         if (isOnMenu)
00073         {
00074                 isMenuUsing=TRUE;
00075                 switch (key->code)
00076                 {
00077                 case 'C': ce.primitive.ViewDebug(); UpdateTip(); return 1;
00078                 case 'D': ShowWindow(CreateDialogParam(ce.hInst,MAKEINTRESOURCE(IDD_DEBUG_STRUCT),NULL,(DLGPROC)DebugStructProc,NULL),SW_SHOW); return 1;
00079                 case 'R': ce.screenMain.region.enable^=1; UpdateTip(); return 1;
00080                 case 'F': ce.screenMain.enableFullScreen^=1 ; ce.screenMain.Update(TRUE); UpdateTip(); return 1;
00081                 case 'T': ce.screenMain.enableTitle^=1; ce.screenMain.Update(TRUE); UpdateTip(); return 1;
00082                 //case 'F': ce.screenMain.enableFullScreen=!ce.screenMain.enableFullScreen ; ce.Refresh(FALSE); ce.screenMain.ApplySize(); UpdateTip(); return 1;
00083                 //case 'T': ce.screenMain.enableTitle=!ce.screenMain.enableTitle; ce.Refresh(TRUE); ce.screenMain.ApplySize(); UpdateTip(); return 1;
00084                 case 'L': ce.enableLightView^=1; UpdateTip(); return 1;
00085                 case 'B': ce.enableBackGround^=1; UpdateTip(); return 1;
00086                 case 'A': ce.enableAntiAliasing^=1; UpdateTip(); return 1;
00087                 case 'P': ce.enablePicking^=1; UpdateTip(); return 1;
00088                 case 'E': ce.enableRepere^=1; UpdateTip(); return 1; // lettre 'R' deja pris !
00089                 case 'S': ce.enableFPS^=1; UpdateTip(); return 1;
00090                 case 'M':
00091                         {
00092                                 // ordre des differents modes
00093                                 PolygonModeType *mode,modes[]= {
00094                                         fill,fill,
00095                                         line,line,
00096                                         point,point,
00097                                         fill,line,
00098                                         fill,point,
00099                                         line,fill,
00100                                         line,point,
00101                                         point,fill,
00102                                         point,line};
00103                                 mode = modes;
00104                                 int i;
00105                                 for (i=0;i<9;i++)
00106                                 {
00107                                         if (mode[0]==ce.polygonMode.front && mode[1]==ce.polygonMode.back) break;
00108                                         mode+=2;
00109                                 }
00110                                 if (i==9) mode= modes;
00111                                 else mode+=2;
00112                                 ce.polygonMode.Use(mode[0],mode[1]);
00113                                 UpdateTip();
00114                         }
00115                         return 1;
00116                 default:
00117                         isOnMenu=FALSE;
00118                         isMenuUsing=FALSE;
00119                 }
00120         }
00121         BOOL shift = StateKey::GetState(VK_SHIFT);
00122         if (shift)
00123         {
00124                 switch(key->code)
00125                 {
00126                 case VK_LEFT:   RotateQuaternion(90/4.0,0,0);   return 1;
00127                 case VK_RIGHT:  RotateQuaternion(-90/4.0,0,0);  return 1;
00128                 case VK_UP:             RotateQuaternion(0,90/4.0,0);   return 1;
00129                 case VK_DOWN:   RotateQuaternion(0,-90/4.0,0);  return 1;
00130                 //case VK_LEFT: Rotate(0,-90/4.0);      return 1;
00131                 //case VK_RIGHT:        Rotate(0,90/4.0);       return 1;
00132                 //case VK_UP:           Rotate(-90/4.0,0);      return 1;
00133                 //case VK_DOWN: Rotate(90/4.0,0);       return 1;
00134                 }
00135         }
00136         else
00137         {
00138                 switch(key->code)
00139                 {
00140                 //case VK_UP:           Move(0,15,0);   break;
00141                 //case VK_DOWN: Move(0,-15,0);  break;
00142                 //case VK_LEFT: Move(-15,0,0); break;
00143                 //case VK_RIGHT:        Move(15,0,0);   break;
00144                 //case VK_PRIOR:        Move(0,0,-15);  break;
00145                 //case VK_NEXT: Move(0,0,15);   break;
00146
00147                 case VK_F11:
00148                         isOnMenu=TRUE;
00149                         isMenuUsing=FALSE;
00150                         break;
00151                 }
00152         }
00153         return 0;
00154 }
00155
00156 // ********************************************************************************
00157
00158 void Univers::ExitQuestion()
00159 {
00160         MsgBox *msgBox = new MsgBox;
00161         ce.Push(ce.masterContainer);
00162                 msgBox->Create();
00163                 msgBox->XDockCenter(160);
00164                 msgBox->YDockCenter(100);
00165                 msgBox->Move(0,0,100);
00166                 msgBox->txtInfo.SetText("Do you realy want to exit");
00167                 msgBox->btnCancel.SetText("No");
00168                 msgBox->btnOk.SetText("Yes");
00169                 msgBox->btnOk.onButton.click.connect(this,OnExit);
00170         ce.Pop();
00171 }
00172
00173 int Univers::OnExit ()
00174 {
00175         Debug0Param("Univers::OnExit");
00176         ce.timerRefresh.onTimer.connect(this,OnApplyExit);
00177         return 1;
00178 }
00179
00180 int Univers::OnApplyExit(Timer *)
00181 {
00182         Debug0Param("Univers::OnApplyExit");
00183         ce.timerRefresh.onTimer.disconnect(this);
00184         ce.Stop();
00185         return 1;
00186 }
00187
00188 int Univers::OnKeyUp (StateKey *key,int face)
00189 {
00190         DebugKey2("Univers::OnKeyUp",key,face);
00191         switch (key->code)
00192         {
00193         case VK_ESCAPE: ExitQuestion(); return 1;
00194         case VK_F1: ce.ScreenShot(ssRGB); return 1;
00195         case VK_F2: ce.ScreenShot(ssDepth); return 1;
00196         case VK_F3: ce.ScreenShot(ssLuminance); return 1;
00197         case VK_F4: ce.ScreenShot(ssBlending); return 1;
00198         case VK_HOME: HomePosition(); return 1;
00199         case VK_F11:
00200                 if (isOnMenu)
00201                 {
00202                         isOnMenu=FALSE;
00203                         if (!isMenuUsing)
00204                         {
00205                                 if (!tipKey)
00206                                 {
00207                                         tipKey = new Tip;
00208                                         ce.Push(ce.masterContainer);
00209                                         tipKey->Create();
00210                                         tipKey->XDockRight(10,220);
00211                                         tipKey->YDockCenter(300);
00212                                         tipKey->text.SetAlign(align_begin,align_center);
00213                                         UpdateTip();
00214                                         ce.Pop();
00215                                         //ou MessageBox(ce.screenMain.hWnd,temp,"ShortCutKey - Help",0);
00216                                 }
00217                                 else
00218                                 {
00219                                         delete tipKey;
00220                                         tipKey=NULL;
00221                                 }
00222                                 return 1;
00223                         }
00224                 }
00225                 break;
00226         }
00227         return 0;
00228 }
00229
00230 void Univers::UpdateTip()
00231 {
00232         if (!tipKey) return;
00233         MyString temp;
00234         MyString sTrue ("True\n");
00235         MyString sFalse("False\n");
00236         temp<<"System Key - Help\n\n";
00237         temp<<"F11+R:\tRegion\t\t"<<(ce.screenMain.region.enable?sTrue:sFalse);
00238         temp<<"F11+F:\tFull screen\t"<<(ce.screenMain.enableFullScreen?sTrue:sFalse);
00239         temp<<"F11+T:\tTitle screen\t"<<(ce.screenMain.enableTitle?sTrue:sFalse);
00240         temp<<"F11+L:\tLightView\t\t"<<(ce.enableLightView?sTrue:sFalse);
00241         temp<<"F11+B:\tBackground\t"<<(ce.enableBackGround?sTrue:sFalse);
00242         temp<<"F11+A:\tAntialiasing\t"<<(ce.enableAntiAliasing?sTrue:sFalse);
00243         temp<<"F11+P:\tPicking\t\t"<<(ce.enablePicking?sTrue:sFalse);
00244         temp<<"F11+E:\tRepere\t\t"<<(ce.enableRepere?sTrue:sFalse);
00245         temp<<"F11+S:\tFPS\t\t"<<(ce.enableFPS?sTrue:sFalse);
00246         temp<<"F11+M:\tMode Polygone\t\n       ";ce.polygonMode.ToString(temp); temp<<"\n";
00247         temp<<"F11+D:\tDebuger\n";
00248         temp<<"F11+C:\tArborecence debug";
00249         tipKey->text.SetText(temp);
00250 }
00251
00252 void Univers::HomePosition()
00253 {
00254         faceNode->elem->angle.Zero();
00255         faceNode->elem->position.Zero();
00256 }
00257
00258 int Univers::OnMouseMove(StateMouse *mouse,int deltaX,int deltaY,int face)
00259 {
00260         //DebugMouse2("Univers::OnMouseMove",mouse,face);
00261
00262         if (mouse->GetNbButtonPush()==1)
00263         {
00264                 if (mouse->midBtn) RotateQuaternion(deltaX,deltaY,0);
00265                 if (mouse->leftBtn) Move(-deltaX,deltaY,0);
00266                 if (mouse->midBtn||mouse->leftBtn) return 1;
00267         }
00268         return 0;
00269 }
00270
00271 int Univers::OnMouseWheel(StateMouse *mouse,int face)
00272 {
00273         DebugMouse2("Univers::OnWheel",mouse,face);
00274         Move(0,0,-mouse->wheelDelta/10.0);
00275         return 1;
00276 }
00277
00278 int Univers::OnLButtonDown(StateMouse *mouse,int face)
00279 {
00280         DebugMouse2("Univers::OnLButtonDown",mouse,face);
00281         oldMouse=*mouse;
00282         ce.cursor.ApplyTypes(cursorMoving,cursorArrow);
00283         return 0;
00284 }
00285
00286 int Univers::OnLButtonUp(StateMouse *mouse,int face)
00287 {
00288         DebugMouse2("Univers::OnLButtonU",mouse,face);
00289         if (ce.cursor.curType==cursorMoving) ce.cursor.curType=cursorArrow;
00290         ce.cursor.leftType=cursorMoving;
00291         ce.cursor.ApplyTypes();
00292         return 0;
00293 }
00294 int Univers::OnMButtonDown(StateMouse *mouse,int face)
00295 {
00296         DebugMouse2("Univers::OnMButtonDown",mouse,face);
00297         oldMouse=*mouse;
00298         ce.cursor.ApplyTypes(cursorRepere,cursorNoChange,cursorArrow);
00299 /*      RECT rect; // clip le curseur
00300         rect.left=mouse->pos.x-10;
00301         rect.top=mouse->pos.y-10;
00302         rect.right=mouse->pos.x+10;
00303         rect.bottom=mouse->pos.y+10;
00304         ClipCursor(&rect);*/
00305         return 0;
00306 }
00307
00308 int Univers::OnMButtonUp(StateMouse *mouse,int face)
00309 {
00310         DebugMouse2("Univers::OnMButtonUp",mouse,face);
00311         ClipCursor(NULL);
00312         if (ce.cursor.curType==cursorRepere) ce.cursor.curType=cursorArrow;
00313         ce.cursor.midType=cursorRepere;
00314         ce.cursor.ApplyTypes();
00315         return 0;
00316 }
00317
00319 int Univers::OnRefresh(Timer *timer)
00320 {
00321         //Debug0Param("Univers::OnRefresh");
00322         if (!StateKey::GetState(VK_SHIFT))
00323         {
00324                 double delta = timer->GetDeltaTime(TRUE)*500.0; // but 20 texel / seconde
00325                 double x=0,y=0,z=0;
00326                 if (StateKey::GetState(VK_UP))          y+=delta;
00327                 if (StateKey::GetState(VK_DOWN))        y-=delta;
00328                 if (StateKey::GetState(VK_LEFT))        x-=delta;
00329                 if (StateKey::GetState(VK_RIGHT))       x+=delta;
00330                 if (StateKey::GetState(VK_PRIOR))       z-=delta;
00331                 if (StateKey::GetState(VK_NEXT))        z+=delta;
00332                 if (x||y||z) Move(x,y,z);
00333         }
00334         return 0;
00335 }
00336
00337 int Univers::OnOverIn(Control *oldControl,int face)
00338 {
00339         Debug2Param("Univers::OnOverIn(oldCtrl:%s,face:%d)",(char*)oldControl->name,face);
00340         ce.timerRefresh.onTimer.connect(this,OnRefresh);
00341         ce.cursor.ApplyTypes(cursorArrow,cursorMoving,cursorRepere,cursorNothing);
00342         return 0;
00343 }
00344
00345 int Univers::OnOverOut(Control *newControl,int face)
00346 {
00347         Debug2Param("Univers::OnOverOut(newCtrl:%s,face:%d)",(char*)newControl->name,face);
00348         ce.timerRefresh.onTimer.disconnect(this);
00349         return 0;
00350 }
00351
00352 // ********************************************************************************
00353
00354 void Univers::ToString(MyString &str)
00355 {
00356         str.AddFormat("name: %s",name);
00357 }
00358
00359 // ********************************************************************************
Generated on Fri Aug 20 19:19:51 2004 for 3d Controls by doxygen 1.3.6


3d Controls: univers.h File Reference

univers.h File Reference

Control Univers (celui qui contien un monde). More...

#include "control.h"
#include "tip.h"

Go to the source code of this file.

Classes

class Univers
L'univers est le conteneur 3D general (le desktop en 3D). More...

Detailed Description

Control Univers (celui qui contien un monde).

Definition in file univers.h.

Generated on Fri Aug 20 19:20:54 2004 for 3d Controls by doxygen 1.3.6


3d Controls: univers.h Source File

univers.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_UNIVERS_H
00024 #define INCLUDE_UNIVERS_H
00025
00026 #include "control.h"
00027 #include "tip.h"
00028
00032 class Univers : public Control
00033 {
00034 private:
00035         Tip *tipKey;
00036
00037         int OnApplyExit(Timer *);
00038         void UpdateTip();
00039
00040 public:
00041         BOOL isOnMenu;
00042         BOOL isMenuUsing;
00043         StateMouse oldMouse;
00044
00045         Univers();
00046         ~Univers();
00047         virtual void Create();  // Createur pour container
00048         void ToString(MyString &str);
00049         void ExitQuestion();
00050         void HomePosition();
00051
00052         int OnKeyDown (StateKey *key,int face);
00053         int OnKeyUp (StateKey *key,int face);
00054         int OnMouseMove(StateMouse *mouse,int deltaX,int deltaY,int face);
00055         int OnMouseWheel(StateMouse *mouse,int face);
00056         int OnLButtonDown(StateMouse *mouse,int face);
00057         int OnLButtonUp(StateMouse *mouse,int face);
00058         int OnMButtonDown(StateMouse *mouse,int face);
00059         int OnMButtonUp(StateMouse *mouse,int face);
00060         int OnRefresh(Timer *);
00061         int OnOverIn(Control *,int);
00062         int OnOverOut(Control *,int);
00063         int OnExit();
00064 };
00065
00066 #endif
Generated on Fri Aug 20 19:19:51 2004 for 3d Controls by doxygen 1.3.6


3d Controls: valueEditor.cpp File Reference

valueEditor.cpp File Reference

#include "valueEditor.h"
#include "resource.h"
#include "windowTools.h"
#include "MyObject.h"
#include "face.h"
#include "light.h"
#include "controlEngine.h"
#include "screen.h"
#include "control.h"

Go to the source code of this file.

Defines

#define | IS_NOTHING 0
#define | IS_LIGHT 1
#define | IS_FOG 2
#define | IS_TEXTURE 10
#define | INSERT_ITEM_TYPED(type, variable, info, paramCur, minValue, maxValue, valueCur)
#define | INSERT_ITEM_INT(variable, info, param, minValue, maxValue, valueCur) INSERT_ITEM_TYPED(int,variable,info,param,minValue,maxValue,valueCur)
#define | INSERT_ITEM_FLOAT(variable, info, param, minValue, maxValue, valueCur) INSERT_ITEM_TYPED(float,variable,info,param,minValue,maxValue,valueCur)
#define | INSERT_ITEM_DOUBLE(variable, info, param, minValue, maxValue, valueCur) INSERT_ITEM_TYPED(double,variable,info,param,minValue,maxValue,valueCur)
#define | INSERT_INT list.i+=VE_int_cur;
#define | INSERT_FLOAT list.i+=VE_float_cur;
#define | INSERT_DOUBLE list.i+=VE_double_cur;
#define | INSERT_ITEM
#define | INSERT_ITEM_NUM(num)
#define | NUM_SELECTED_RENDER 65535
#define | NUM_SELECTED_LIGHT 65534
#define | NUM_SELECTED_TEXTURE 65533
#define | NUM_SELECTED_FONT 65532
#define | NUM_SELECTED_PICKING 65531
#define | NUM_SELECTED_NOTHING 65530
#define | NUM_SELECTED_TRASH 65529

Functions

LRESULT WINAPI | DebugStructProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
void | ApplyParamObj (LONG type)
LRESULT WINAPI | ValueEditorProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)

Variables

ControlEngine ce
ValueEditors valueEditors

Define Documentation

#define INSERT_DOUBLE list.i+=VE_double_cur;

Definition at line 363 of file valueEditor.cpp.

Referenced by ValueEditors::MakeElemFaceStruct(), and ValueEditors::MakeTexturesStruct().

#define INSERT_FLOAT list.i+=VE_float_cur;

Definition at line 362 of file valueEditor.cpp.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), and ValueEditors::MakeTexturesStruct().

#define INSERT_INT list.i+=VE_int_cur;

Definition at line 361 of file valueEditor.cpp.

Referenced by ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), and ValueEditors::MakeTexturesStruct().

#define INSERT_ITEM

Value:

elemTree.item.pszText = message; \
        elemTree.item.lParam = 0; \
        hParentItem = TreeView_InsertItem(hWnd,&elemTree);

Definition at line 365 of file valueEditor.cpp.

Referenced by ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), and ValueEditors::MakeTexturesStruct().

#define INSERT_ITEM_DOUBLE | ( | variable,
 |  | info,
 |  | param,
 |  | minValue,
 |  | maxValue,
 |  | valueCur | ) | INSERT_ITEM_TYPED(double,variable,info,param,minValue,maxValue,valueCur)

Definition at line 358 of file valueEditor.cpp.

Referenced by ValueEditors::MakeElemFaceStruct(), and ValueEditors::MakeTexturesStruct().

#define INSERT_ITEM_FLOAT | ( | variable,
 |  | info,
 |  | param,
 |  | minValue,
 |  | maxValue,
 |  | valueCur | ) | INSERT_ITEM_TYPED(float,variable,info,param,minValue,maxValue,valueCur)

Definition at line 356 of file valueEditor.cpp.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), and ValueEditors::MakeTexturesStruct().

#define INSERT_ITEM_INT | ( | variable,
 |  | info,
 |  | param,
 |  | minValue,
 |  | maxValue,
 |  | valueCur | ) | INSERT_ITEM_TYPED(int,variable,info,param,minValue,maxValue,valueCur)

Definition at line 354 of file valueEditor.cpp.

Referenced by ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), and ValueEditors::MakeTexturesStruct().

#define INSERT_ITEM_NUM ( num )

Value:

elemTree.item.pszText = message; \
        elemTree.item.lParam = num; \
        hParentItem = TreeView_InsertItem(hWnd,&elemTree);

Definition at line 369 of file valueEditor.cpp.

Referenced by ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), and ValueEditors::MakeDebugStruct().

#define INSERT_ITEM_TYPED | ( | type,
 |  | variable,
 |  | info,
 |  | paramCur,
 |  | minValue,
 |  | maxValue,
 |  | valueCur | )

Value:

VE_##type##_cur.elem.Zero(); \
        VE_##type##_cur.param = paramCur; \
        VE_##type##_cur.elem.InterpretedText(interpretedText,message,valueCur); \
        elemTree.item.pszText = interpretedText;  \
        elemTree.item.lParam = num++;  \
        hParentItem = TreeView_InsertItem(hWnd,&elemTree); \
        VE_##type##_cur.elem.Set(variable,info,minValue,maxValue,hParentItem) ;

Definition at line 345 of file valueEditor.cpp.

#define IS_FOG 2

Definition at line 314 of file valueEditor.cpp.

Referenced by ApplyParamObj(), and ValueEditors::MakeRenderStruct().

#define IS_LIGHT 1

Definition at line 313 of file valueEditor.cpp.

Referenced by ApplyParamObj(), and ValueEditors::MakeLightsStruct().

#define IS_NOTHING 0

Definition at line 312 of file valueEditor.cpp.

#define IS_TEXTURE 10

Definition at line 315 of file valueEditor.cpp.

Referenced by ApplyParamObj(), ValueEditors::MakeElemFaceStruct(), and ValueEditors::MakeTexturesStruct().

#define NUM_SELECTED_FONT 65532

Definition at line 377 of file valueEditor.cpp.

Referenced by DebugStructProc(), and ValueEditors::MakeDebugStruct().

#define NUM_SELECTED_LIGHT 65534

Definition at line 375 of file valueEditor.cpp.

Referenced by DebugStructProc(), and ValueEditors::MakeDebugStruct().

#define NUM_SELECTED_NOTHING 65530

Definition at line 379 of file valueEditor.cpp.

Referenced by DebugStructProc(), and ValueEditors::MakeDebugStruct().

#define NUM_SELECTED_PICKING 65531

Definition at line 378 of file valueEditor.cpp.

Referenced by DebugStructProc(), and ValueEditors::MakeDebugStruct().

#define NUM_SELECTED_RENDER 65535

Definition at line 374 of file valueEditor.cpp.

Referenced by DebugStructProc(), and ValueEditors::MakeDebugStruct().

#define NUM_SELECTED_TEXTURE 65533

Definition at line 376 of file valueEditor.cpp.

Referenced by DebugStructProc(), and ValueEditors::MakeDebugStruct().

#define NUM_SELECTED_TRASH 65529

Definition at line 380 of file valueEditor.cpp.

Referenced by ValueEditors::MakeDebugControlStruct().

Function Documentation

void ApplyParamObj ( LONG type )

Definition at line 2138 of file valueEditor.cpp.

References ce, ControlEngine::fog, MyList< Texture * >::i, IS_FOG, IS_LIGHT, IS_TEXTURE, ControlEngine::MajLights(), num, type, and Fog::Use().

Referenced by ValueEditorProc().

LRESULT WINAPI DebugStructProc | ( | HWND | hDlg,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Definition at line 1932 of file valueEditor.cpp.

References BOOL(), CBASE_INDEX_DOUBLE, CBASE_INDEX_FLOAT, CBASE_INDEX_INT, ce, MyTreeNode< T >::elem, FaceNode, Control::Find(), Primitive::Find(), MyTree< Face >::GetRoot(), ControlEngine::hInst, MyList< Object >::i, IDC_RADIO_CONTROLS_MODE, IDC_RADIO_FACE_MODE, IDC_RADIO_FACEMODE, IDC_TREE_ELEM, IDC_TREE_STRUCT, IDD_VALUE_EDITOR, ValueEditors::list, ValueEditor< T >::MAJ(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), ValueEditors::MakeTexturesStruct(), ControlEngine::masterContainer, num, NUM_SELECTED_FONT, NUM_SELECTED_LIGHT, NUM_SELECTED_NOTHING, NUM_SELECTED_PICKING, NUM_SELECTED_RENDER, NUM_SELECTED_TEXTURE, param, ControlEngine::primitive, SetDeltaWindowPos(), ShowMouse(), Primitive::tree, TreeView_ExpandAll_Level(), ValueEditors::Update(), ValueEditorProc(), valueEditors, ValueEditors::VE_double, ValueEditors::VE_float, and ValueEditors::VE_int.

Referenced by Univers::OnKeyDown(), and SysTrayProc().

LRESULT WINAPI ValueEditorProc | ( | HWND | hDlg,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Todo:
mecanisme de desalocation a faire (mais peut inportant pour le moment)

Definition at line 2156 of file valueEditor.cpp.

References ApplyParamObj(), BOOL(), CBASE_INDEX_DOUBLE, CBASE_INDEX_FLOAT, CBASE_INDEX_INT, GetDeltaWindow(), GLint(), IDC_BUTTON_MAX, IDC_BUTTON_MIDS, IDC_BUTTON_MIN, IDC_BUTTON_MOVE, IDC_COMBO_SPECIALS, IDC_EDIT_VALUE, IDC_SLIDER_PAD, IDC_STATIC1, IDC_STATIC2, IDC_STATIC_VARIABLE, num, param, SetDeltaWindowPos(), SetDeltaWindowSize(), ShowMouse(), ValueEditors::Update(), valueEditors, ValueEditors::VE_double, ValueEditors::VE_float, and ValueEditors::VE_int.

Referenced by DebugStructProc().

Variable Documentation

ControlEngine ce

Definition at line 29 of file valueEditor.cpp.

ValueEditors valueEditors

Definition at line 1930 of file valueEditor.cpp.

Referenced by DebugStructProc(), and ValueEditorProc().

Generated on Fri Aug 20 19:20:54 2004 for 3d Controls by doxygen 1.3.6


3d Controls: valueEditor.cpp Source File

valueEditor.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "valueEditor.h"
00020 #include "resource.h"
00021 #include "windowTools.h"
00022 #include "MyObject.h"
00023 #include "face.h"
00024 #include "light.h"
00025 #include "controlEngine.h"
00026 #include "screen.h"
00027 #include "control.h"
00028
00029 extern ControlEngine ce;
00030
00031 // implementation de la class ParamValueEditors ************************************
00032
00033 ParamValueEditor::ParamValueEditor()
00034 {
00035         Zero();
00036 }
00037
00038 void ParamValueEditor::Zero()
00039 {
00040         object=NULL;
00041         rect.bottom=rect.left=rect.right=rect.top=0;
00042         hWndParent=NULL;
00043         independant=FALSE;
00044 }
00045
00046 void ParamValueEditor::operator=(ParamValueEditor &source)
00047 {
00048         rect.bottom=source.rect.bottom;
00049         rect.left=source.rect.left;
00050         rect.right=source.rect.right;
00051         rect.top=source.rect.top;
00052         hWndParent=source.hWndParent;
00053         independant=source.independant;
00054 }
00055
00056 ParamValueEditor * ParamValueEditor::GetCopy()
00057 {
00058         ParamValueEditor *newOne = new ParamValueEditor;
00059         newOne->object = new Object();
00060         *newOne=*this;
00061         *newOne->object = *object;
00062         return newOne;
00063 }
00064
00065 // implementation de la class ValueNamed ************************************
00066
00067 template <class T>
00068 ValueNamed<T>::ValueNamed()
00069 {
00070         Zero();
00071 }
00072
00073 template <class T>
00074 void ValueNamed<T>::Zero()
00075 {
00076         value = 0;
00077         description = "";
00078 }
00079
00080 template <class T>
00081 void ValueNamed<T>::operator=(ValueNamed &source)
00082 {
00083         value = source.value;
00084         description = source.description;
00085 }
00086
00087 template <class T>
00088 void ValueNamed<T>::Set(T _value,char *_desciption)
00089 {
00090         value = _value;
00091         description = _desciption;
00092 }
00093
00094 // implementation de la class ValueEditor ************************************
00095
00096 template <class T>
00097 ValueEditor<T>::ValueEditor()
00098 {
00099         Zero();
00100 }
00101
00102 template <class T>
00103 void ValueEditor<T>::Zero()
00104 {
00105         hItem=NULL;
00106         info="";
00107         variable="";
00108         valueText="";
00109         minValue=0;
00110         maxValue=1;
00111         value = NULL;
00112         specials.i.SuprAll();
00113 }
00114
00115 template <class T>
00116 void ValueEditor<T>::operator=(ValueEditor &source)
00117 {
00118         hItem=source.hItem;
00119         info=source.info;
00120         variable=source.variable;
00121         minValue=source.minValue;
00122         maxValue=source.maxValue;
00123         value=source.value;
00124         valueText=source.valueText;
00125         specials = source.specials;
00126 }
00127
00128 template <class T>
00129 ValueEditor<T> * ValueEditor<T>::GetCopy()
00130 {
00131         ValueEditor<T> *newOne = new ValueEditor<T>;
00132         *newOne=*this;
00133         return newOne;
00134 }
00135
00136 template <class T>
00137 void ValueEditor<T>::InterpretedText(MyString &interpretedText,char *_valueText,T *_value)
00138 {
00139         if (_valueText) valueText=_valueText;
00140         if (_value) value=_value;
00141
00142         interpretedText="";
00143
00144         for (int i=0;i<valueText.GetSize();i++)
00145                 if (valueText[i]=='\t') interpretedText<<*value;
00146                 else interpretedText<<valueText[i];
00147 }
00148
00149 template <class T>
00150 void ValueEditor<T>::Set(char *_variable,char *_info,T _minValue,T _maxValue,HTREEITEM _hItem)
00151 {
00152         hItem=_hItem;
00153         info=_info;
00154         variable=_variable;
00155         minValue=_minValue;
00156         maxValue=_maxValue;
00157 }
00158
00159 template <class T>
00160 void ValueEditor<T>::MAJ_TreeItem(HWND hWnd)
00161 {
00162         MyString text;
00163         InterpretedText(text);
00164         TVITEM item;
00165         item.mask = TVIF_HANDLE | TVIF_TEXT;
00166         item.hItem = hItem;
00167         item.pszText=text;
00168         TreeView_SetItem(GetDlgItem(hWnd,IDC_TREE_ELEM),&item);
00169 }
00170
00171 template <class T>
00172 void ValueEditor<T>::AddSpecial(T special,char *description)
00173 {
00174         ValueNamed<T> valSpecial;
00175         valSpecial.Set(special,description);
00176         specials.i+=valSpecial;
00177 }
00178
00179 template <class T>
00180 void ValueEditor<T>::MAJ_ValueMin(HWND hWnd)
00181 {
00182         MAJ_Value(hWnd,minValue);
00183 }
00184
00185 template <class T>
00186 void ValueEditor<T>::MAJ_ValueMax(HWND hWnd)
00187 {
00188         MAJ_Value(hWnd,maxValue);
00189 }
00190
00191 template <class T>
00192 void ValueEditor<T>::MAJ_ValueMids(HWND hWnd)
00193 {
00194         MAJ_Value(hWnd,(T)((minValue+maxValue)/2.0));
00195 }
00196
00197 template <class T>
00198 void ValueEditor<T>::MAJ_Value(HWND hWnd,T _value,BOOL refresh)
00199 {
00200         if (value) *value=_value;
00201         if (refresh)
00202         {
00203                 MAJ_Value(hWnd);
00204                 MAJ_Specials(hWnd);
00205                 MAJ_Slider(hWnd);
00206         }
00207 }
00208
00209 template <class T>
00210 void ValueEditor<T>::MAJ_Value(HWND hWnd)
00211 {
00212         MyString text;
00213         if (value) text<<*value;
00214         Edit_SetText(GetDlgItem(hWnd,IDC_EDIT_VALUE),text);
00215 }
00216
00217 template <class T>
00218 void ValueEditor<T>::Get_Value(HWND hWnd)
00219 {
00220         char text[64];
00221         MyString textTmp;
00222         Edit_GetText(GetDlgItem(hWnd,IDC_EDIT_VALUE),text,64);
00223         textTmp = text;
00224         MAJ_Value(hWnd,(T)textTmp.ToDouble(),FALSE);
00225 }
00226
00227 template <class T>
00228 void ValueEditor<T>::MAJ_Slider(HWND hWnd)
00229 {
00230         if (!(this&&value)) return;
00231         BOOL isActive = !(!minValue && maxValue==-1);
00232         Static_Enable(GetDlgItem(hWnd,IDC_SLIDER_PAD),isActive);
00233         double xPos = 0;
00234         xPos = (100.0f*(*value-minValue))/(maxValue-minValue);
00235         SendMessage(GetDlgItem(hWnd,IDC_SLIDER_PAD), TBM_SETPOS, TRUE, (LPARAM)xPos);
00236 }
00237
00238 template <class T>
00239 void ValueEditor<T>::MAJ_Specials(HWND hWnd,int num)
00240 {
00241         HWND hWndCtrl = GetDlgItem(hWnd,IDC_COMBO_SPECIALS);
00242         ComboBox_ResetContent(hWndCtrl);
00243         MyString text;
00244         BOOL active = this&&value?TRUE:FALSE;
00245         if (active&&specials.GetNbElem())
00246         {
00247                 ComboBox_Enable(hWndCtrl,TRUE);
00248                 ComboBox_AddString(hWndCtrl,"<Nothing>");
00249                 int numSel = 0;
00250                 int numCur = 0;
00251                 T valueCur = num==-1?*value:specials.i[num].value;
00252
00253                 for (specials.i=0;specials.i.More();specials.i++)
00254                 {
00255                         text="";
00256                         numCur++;
00257                         T valueSpe = specials.i()->value;
00258                         text<<specials.i()->description<<" (="<<valueSpe<<")";
00259                         if (valueCur==valueSpe) numSel=numCur;
00260                         ComboBox_AddString(hWndCtrl,text);
00261                 }
00262                 ComboBox_SetCurSel(hWndCtrl,numSel);
00263                 if (num!=-1)
00264                 {
00265                         *value=valueCur;
00266                         MAJ_Value(hWnd);
00267                 }
00268         }
00269         else ComboBox_Enable(GetDlgItem(hWnd,IDC_COMBO_SPECIALS),FALSE);
00270 }
00271
00272 template <class T>
00273 void ValueEditor<T>::MAJ(HWND hWnd)
00274 {
00275         HWND hWndMin = GetDlgItem(hWnd,IDC_BUTTON_MIN);
00276         HWND hWndMax = GetDlgItem(hWnd,IDC_BUTTON_MAX);
00277         HWND hWndMids = GetDlgItem(hWnd,IDC_BUTTON_MIDS);
00278         HWND hWndValue= GetDlgItem(hWnd,IDC_EDIT_VALUE);
00279         HWND hWndInfo= GetDlgItem(hWnd,IDC_STATIC_VARIABLE);
00280         HWND hWndStaticValue= GetDlgItem(hWnd,IDC_STATIC1);
00281
00282         BOOL active = this&&value?TRUE:FALSE;
00283         if (active)
00284         {
00285                 MyString text;
00286                 text<<"Value: ["<<minValue<<";"<<maxValue<<"]";
00287                 Static_SetText(hWndStaticValue,text);
00288                 Static_Enable(hWndStaticValue,TRUE);
00289                 Edit_Enable(hWndValue,TRUE);
00290                 MAJ_Value(hWnd);
00291                 Static_Enable(hWndMin,TRUE);
00292                 Static_Enable(hWndMids,TRUE);
00293                 Static_Enable(hWndMax,TRUE);
00294                 Static_SetText(hWndInfo,info);
00295         }
00296         else
00297         {
00298                 Static_SetText(hWndStaticValue,"Value: []");
00299                 Edit_SetText(hWndValue,"");
00300                 Static_Enable(hWndValue,FALSE);
00301                 Static_Enable(hWndMin,FALSE);
00302                 Static_Enable(hWndMids,FALSE);
00303                 Static_Enable(hWndMax,FALSE);
00304                 Static_SetText(hWndInfo,"Select a value to edit it");
00305         }
00306         MAJ_Specials(hWnd);
00307         MAJ_Slider(hWnd);
00308 }
00309
00310 // implementation de la class ValueEditors ************************************
00311
00312 #define IS_NOTHING      0
00313 #define IS_LIGHT        1
00314 #define IS_FOG          2
00315 #define IS_TEXTURE      10 // [10;+inf]
00316
00317 ValueEditors::ValueEditors()
00318 {
00319 }
00320
00321 ValueEditors::~ValueEditors()
00322 {
00323         Zero();
00324 }
00325
00326 void ValueEditors::Update(Object *object)
00327 {
00328         if (object)
00329         {
00330                 VE_int = (CBase_VE_int *)object->thisParent;
00331                 VE_double = (CBase_VE_double *) object->thisParent;
00332                 VE_float = (CBase_VE_float *) object->thisParent;
00333         }
00334 }
00335
00336 void ValueEditors::Zero()
00337 {
00338         VE_int = NULL;
00339         VE_float = NULL;
00340         VE_double = NULL;
00341         list.i.SuprAll();
00342
00343 }
00344
00345 #define INSERT_ITEM_TYPED(type,variable,info,paramCur,minValue,maxValue,valueCur) \
00346         VE_##type##_cur.elem.Zero(); \
00347         VE_##type##_cur.param = paramCur; \
00348         VE_##type##_cur.elem.InterpretedText(interpretedText,message,valueCur); \
00349         elemTree.item.pszText = interpretedText;  \
00350         elemTree.item.lParam = num++;  \
00351         hParentItem = TreeView_InsertItem(hWnd,&elemTree); \
00352         VE_##type##_cur.elem.Set(variable,info,minValue,maxValue,hParentItem) ;
00353
00354 #define INSERT_ITEM_INT(variable,info,param,minValue,maxValue,valueCur) \
00355         INSERT_ITEM_TYPED(int,variable,info,param,minValue,maxValue,valueCur)
00356 #define INSERT_ITEM_FLOAT(variable,info,param,minValue,maxValue,valueCur) \
00357         INSERT_ITEM_TYPED(float,variable,info,param,minValue,maxValue,valueCur)
00358 #define INSERT_ITEM_DOUBLE(variable,info,param,minValue,maxValue,valueCur) \
00359         INSERT_ITEM_TYPED(double,variable,info,param,minValue,maxValue,valueCur)
00360
00361 #define INSERT_INT      list.i+=VE_int_cur;
00362 #define INSERT_FLOAT list.i+=VE_float_cur;
00363 #define INSERT_DOUBLE list.i+=VE_double_cur;
00364
00365 #define INSERT_ITEM \
00366         elemTree.item.pszText = message; \
00367         elemTree.item.lParam = 0; \
00368         hParentItem = TreeView_InsertItem(hWnd,&elemTree);
00369 #define INSERT_ITEM_NUM(num) \
00370         elemTree.item.pszText = message; \
00371         elemTree.item.lParam = num; \
00372         hParentItem = TreeView_InsertItem(hWnd,&elemTree);
00373
00374 #define NUM_SELECTED_RENDER             65535
00375 #define NUM_SELECTED_LIGHT              65534
00376 #define NUM_SELECTED_TEXTURE    65533
00377 #define NUM_SELECTED_FONT               65532
00378 #define NUM_SELECTED_PICKING    65531
00379 #define NUM_SELECTED_NOTHING    65530
00380 #define NUM_SELECTED_TRASH              65529
00381
00382 void ValueEditors::MakeDebugStruct(HWND hWnd)
00383 {
00384         MyString message;
00385         HTREEITEM hParentItem;
00386         TVINSERTSTRUCT elemTree;
00387         elemTree.hInsertAfter = TVI_LAST;
00388         elemTree.hParent = NULL;
00389         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
00390
00391         message="Config";
00392         INSERT_ITEM_NUM(MAKELPARAM(NUM_SELECTED_NOTHING,0));
00393         {
00394                 elemTree.hParent = hParentItem;
00395                 message="Render";
00396                 INSERT_ITEM_NUM(MAKELPARAM(NUM_SELECTED_RENDER,0));
00397                 message="Lights";
00398                 INSERT_ITEM_NUM(MAKELPARAM(NUM_SELECTED_LIGHT,0));
00399                 message="Textures";
00400                 INSERT_ITEM_NUM(MAKELPARAM(NUM_SELECTED_TEXTURE,0));
00401                 message="Fonts";
00402                 INSERT_ITEM_NUM(MAKELPARAM(NUM_SELECTED_FONT,0));
00403                 elemTree.hParent = NULL;
00404         }
00405         message="Picking";
00406         INSERT_ITEM_NUM(MAKELPARAM(NUM_SELECTED_PICKING,0));
00407 ;
00408 }
00409
00410 void ValueEditors::MakeDebugFaceStruct(HWND hWnd)
00411 {
00412         MakeDebugStruct(hWnd);
00413         MakeDebugFaceStruct(hWnd,NULL,ce.primitive.tree.GetRoot());
00414         MakeDebugFaceStruct(hWnd,NULL,ce.trash.GetRoot());
00415 }
00416
00417 void ValueEditors::MakeDebugFaceStruct(HWND hWnd,HTREEITEM hParentItem,FaceNode *node)
00418 {
00419         MyString message;
00420         TVINSERTSTRUCT elemTree;
00421         elemTree.hInsertAfter = TVI_LAST;
00422         elemTree.hParent = hParentItem;
00423         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
00424         message=node->elem->name;
00425         INSERT_ITEM_NUM(MAKELPARAM(node->elem->idControl,node->elem->idFace));
00426         for (node->childs.i=0;node->childs.i.More();node->childs.i++)
00427                 MakeDebugFaceStruct(hWnd,hParentItem,node->childs.i.GetElem());
00428 }
00429
00430 void ValueEditors::MakeDebugControlStruct(HWND hWnd)
00431 {
00432         MakeDebugStruct(hWnd);
00433         MakeDebugControlStruct(hWnd,NULL,ce.primitive.tree.GetRoot(),-1);
00434         HTREEITEM hParentItem;
00435         TVINSERTSTRUCT elemTree;
00436         MyString message;
00437         elemTree.hInsertAfter = TVI_LAST;
00438         elemTree.hParent = NULL;
00439         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
00440         message = "Trash";
00441         INSERT_ITEM_NUM(MAKELPARAM(NUM_SELECTED_TRASH,0));
00442         MakeDebugControlStruct(hWnd,hParentItem,ce.trash.GetRoot(),-1);
00443 }
00444
00445 void ValueEditors::MakeDebugControlStruct(HWND hWnd,HTREEITEM hParentItem,FaceNode *node,int oldIdControl)
00446 {
00447         if (oldIdControl!=node->elem->idControl)
00448         {
00449                 MyString message;
00450                 TVINSERTSTRUCT elemTree;
00451                 elemTree.hInsertAfter = TVI_LAST;
00452                 elemTree.hParent = hParentItem;
00453                 elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
00454                 elemTree.item.lParam = node->elem->idControl;
00455                 Control *control = Control::Find(node->elem->idControl);
00456                 if (control)
00457                 {
00458                         message=control->name;
00459                         elemTree.item.pszText = message;
00460                         hParentItem = TreeView_InsertItem(hWnd,&elemTree);
00461                 }
00462         }
00463         for (node->childs.i=0;node->childs.i.More();node->childs.i++)
00464                 MakeDebugControlStruct(hWnd,hParentItem,node->childs.i.GetElem(),node->elem->idControl);
00465 }
00466
00467 void ValueEditors::MakeElemControlStruct(HWND hWnd,Control *control)
00468 {
00469         if (!control) return;
00470
00471         Zero();
00472         CBase_VE_double VE_double_cur;
00473         CBase_VE_int VE_int_cur;
00474         CBase_VE_float VE_float_cur;
00475         VE_double_cur.param = 12;
00476         MyString interpretedText;
00477
00478         HTREEITEM hParentItem,hParentItem2,hParentItem3,hParentItem4;
00479         TVINSERTSTRUCT elemTree;
00480         elemTree.hInsertAfter = TVI_LAST;
00481         elemTree.hParent = NULL;
00482         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
00483
00484         int num = 1;
00485         MyString message;
00486         message.Format("Name: %s [id]: %d",(char *)control->name,control->id);
00487         INSERT_ITEM;
00488
00489         if (control->parent)
00490         {
00491                 message.Format("Parent [id,face,name]: %d , %d , %s",control->parent->id,control->parentFace,(char *)control->parent->name);
00492                 INSERT_ITEM;
00493         }
00494
00495         message.Format("Mode [enable,view,sleeped]: %d , %d , %d",control->isEnable,control->isView,control->sleepedDelay);
00496         INSERT_ITEM;
00497         {
00498                 elemTree.hParent = hParentItem;
00499                 message="isEnable: \t";
00500                 INSERT_ITEM_INT("control.isEnable","control dois il etre utilisé",FALSE,0,-1,&control->isEnable);
00501                 VE_int_cur.elem.AddSpecial(FALSE,"false");
00502                 VE_int_cur.elem.AddSpecial(TRUE,"true");
00503                 INSERT_INT;
00504                 message="isView: \t";
00505                 INSERT_ITEM_INT("control.isView","control dois il s'afficher",FALSE,0,-1,&control->isView);
00506                 VE_int_cur.elem.AddSpecial(FALSE,"false");
00507                 VE_int_cur.elem.AddSpecial(TRUE,"true");
00508                 INSERT_INT;
00509                 message="sleepedDelay: \t";
00510                 INSERT_ITEM_INT("control.sleepedDelay","temps d'inaction avant evenement OnSleeped",FALSE,0,10000,&control->sleepedDelay);
00511                 INSERT_INT;
00512                 elemTree.hParent = NULL;
00513         }
00514
00515         message.Format("Events (%d links)",control->onControl.GetNbLinks());
00516         INSERT_ITEM;
00517         {
00518                 hParentItem2 = hParentItem;
00519                 elemTree.hParent = hParentItem;
00520                 message.Format("onControl (%d links)",control->onControl.GetNbLinks());
00521                 INSERT_ITEM;
00522                 {
00523                         hParentItem3 = hParentItem;
00524                         elemTree.hParent = hParentItem;
00525                         message.Format("mouse (%d links)",control->onControl.mouse.GetNbLinks());
00526                         INSERT_ITEM;
00527                         {
00528                                 hParentItem4 = hParentItem;
00529                                 elemTree.hParent = hParentItem;
00530                                 message.Format("left (%d links)",control->onControl.mouse.left.GetNbLinks());
00531                                 INSERT_ITEM;
00532                                 {
00533                                         elemTree.hParent = hParentItem;
00534                                         message.Format("down (%d links)",control->onControl.mouse.left.down.size());
00535                                         INSERT_ITEM;
00536                                         message.Format("up (%d links)",control->onControl.mouse.left.up.size());
00537                                         INSERT_ITEM;
00538                                         message.Format("click (%d links)",control->onControl.mouse.left.click.size());
00539                                         INSERT_ITEM;
00540                                         message.Format("doubleClick (%d links)",control->onControl.mouse.left.doubleClick.size());
00541                                         INSERT_ITEM;
00542                                         elemTree.hParent = hParentItem4;
00543                                 }
00544                                 message.Format("mid (%d links)",control->onControl.mouse.mid.GetNbLinks());
00545                                 INSERT_ITEM;
00546                                 {
00547                                         elemTree.hParent = hParentItem;
00548                                         message.Format("down (%d links)",control->onControl.mouse.mid.down.size());
00549                                         INSERT_ITEM;
00550                                         message.Format("up (%d links)",control->onControl.mouse.mid.up.size());
00551                                         INSERT_ITEM;
00552                                         message.Format("click (%d links)",control->onControl.mouse.mid.click.size());
00553                                         INSERT_ITEM;
00554                                         message.Format("doubleClick (%d links)",control->onControl.mouse.mid.doubleClick.size());
00555                                         INSERT_ITEM;
00556                                         elemTree.hParent = hParentItem4;
00557                                 }
00558                                 message.Format("right (%d links)",control->onControl.mouse.right.GetNbLinks());
00559                                 INSERT_ITEM;
00560                                 {
00561                                         elemTree.hParent = hParentItem;
00562                                         message.Format("down (%d links)",control->onControl.mouse.right.down.size());
00563                                         INSERT_ITEM;
00564                                         message.Format("up (%d links)",control->onControl.mouse.right.up.size());
00565                                         INSERT_ITEM;
00566                                         message.Format("click (%d links)",control->onControl.mouse.right.click.size());
00567                                         INSERT_ITEM;
00568                                         message.Format("doubleClick (%d links)",control->onControl.mouse.right.doubleClick.size());
00569                                         INSERT_ITEM;
00570                                         elemTree.hParent = hParentItem4;
00571                                 }
00572                                 message.Format("move (%d links)",control->onControl.mouse.move.size());
00573                                 INSERT_ITEM;
00574                                 //message.Format("down (%d links)",control->onControl.mouse.down.size());
00575                                 //INSERT_ITEM;
00576                                 //message.Format("up (%d links)",control->onControl.mouse.up.size());
00577                                 //INSERT_ITEM;
00578                                 message.Format("wheel (%d links)",control->onControl.mouse.wheel.size());
00579                                 INSERT_ITEM;
00580                                 elemTree.hParent = hParentItem3;
00581                         }
00582                         message.Format("key (%d links)",control->onControl.key.GetNbLinks());
00583                         INSERT_ITEM;
00584                         {
00585                                 elemTree.hParent = hParentItem;
00586                                 message.Format("down (%d links)",control->onControl.key.down.size());
00587                                 INSERT_ITEM;
00588                                 message.Format("up (%d links)",control->onControl.key.up.size());
00589                                 INSERT_ITEM;
00590                                 message.Format("click (%d links)",control->onControl.key.click.size());
00591                                 INSERT_ITEM;
00592                                 message.Format("doubleClick (%d links)",control->onControl.key.doubleClick.size());
00593                                 INSERT_ITEM;
00594                                 elemTree.hParent = hParentItem3;
00595                         }
00596                         message.Format("over (%d links)",control->onControl.over.GetNbLinks());
00597                         INSERT_ITEM;
00598                         {
00599                                 elemTree.hParent = hParentItem;
00600                                 message.Format("out (%d links)",control->onControl.over.out.size());
00601                                 INSERT_ITEM;
00602                                 message.Format("in (%d links)",control->onControl.over.in.size());
00603                                 INSERT_ITEM;
00604                                 elemTree.hParent = hParentItem3;
00605                         }
00606                         message.Format("faceover (%d links)",control->onControl.faceOver.GetNbLinks());
00607                         INSERT_ITEM;
00608                         {
00609                                 elemTree.hParent = hParentItem;
00610                                 message.Format("out (%d links)",control->onControl.faceOver.out.size());
00611                                 INSERT_ITEM;
00612                                 message.Format("in (%d links)",control->onControl.faceOver.in.size());
00613                                 INSERT_ITEM;
00614                                 elemTree.hParent = hParentItem3;
00615                         }
00616                         message.Format("sleeped (%d links)",control->onControl.sleeped.size());
00617                         INSERT_ITEM;
00618
00619                         elemTree.hParent = hParentItem2;
00620                 }
00621                 elemTree.hParent = NULL;
00622         }
00623 }
00624
00625 void ValueEditors::MakeRenderStruct(HWND hWnd)
00626 {
00627         Zero();
00628         CBase_VE_double VE_double_cur;
00629         CBase_VE_int VE_int_cur;
00630         CBase_VE_float VE_float_cur;
00631         VE_double_cur.param = 12;
00632         MyString interpretedText;
00633
00634         HTREEITEM hParentItem,hParentItem2;
00635         TVINSERTSTRUCT elemTree;
00636         elemTree.hInsertAfter = TVI_LAST;
00637         elemTree.hParent = NULL;
00638         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
00639
00640         int num = 1;
00641         MyString message;
00642         message<<clear<<"Region [enable,nbPoly,nbOr]: "<<ce.screenMain.region.enable<<" , "<<ce.screenMain.region.points.GetNbElem()<<" , "<<ce.screenMain.region.nbOr;
00643         INSERT_ITEM;
00644         {
00645                 elemTree.hParent = hParentItem;
00646                 message="enable: \t";
00647                 INSERT_ITEM_INT("region.enable","active le regionage",FALSE,0,1,&ce.screenMain.region.enable);
00648                 INSERT_INT;
00649                 message<<clear<<"box [xMin,xMax,yMin,yMax]: "<<ce.screenMain.region.xMin<<" , "<<ce.screenMain.region.xMax<<" , "<<ce.screenMain.region.yMin<<" , "<<ce.screenMain.region.yMax;
00650                 INSERT_ITEM;
00651                 elemTree.hParent = NULL;
00652         }
00653         message<<clear<<"Windows [title,fullScr]: "<<ce.screenMain.enableTitle<<" , "<<ce.screenMain.enableFullScreen;
00654         INSERT_ITEM;
00655         {
00656                 elemTree.hParent = hParentItem;
00657                 message="enableTitle: \t";
00658                 INSERT_ITEM_INT("enableTitle","active le titre de la fenetre",FALSE,0,1,&ce.screenMain.enableTitle);
00659                 INSERT_INT;
00660                 message="enableFullScreen: \t";
00661                 INSERT_ITEM_INT("enableFullScreen","active le mode plein ecran",FALSE,0,1,&ce.screenMain.enableFullScreen);
00662                 INSERT_INT;
00663                 message="enableAntiAliasing: \t";
00664                 INSERT_ITEM_INT("enableAntiAliasing","active le mode anti-aliasing (active uniquement si la face l'utiulise)",FALSE,0,1,&ce.enableAntiAliasing);
00665                 INSERT_INT;
00666                 message="antiAliasingQuality: \t";
00667                 INSERT_ITEM_INT("antiAliasingQuality","precision de l'anti-aliasing",FALSE,0,7,&ce.antiAliasingQuality);
00668                 INSERT_INT;
00669                 message="enableCursor: \t";
00670                 INSERT_ITEM_INT("enableCursor","active l'affichage d'un curseur",FALSE,0,1,&ce.enableCursor);
00671                 INSERT_INT;
00672                 message="enableRepere: \t";
00673                 INSERT_ITEM_INT("enableRepere","active l'affichage d'un repere 3d",FALSE,0,1,&ce.enableRepere);
00674                 INSERT_INT;
00675                 message="enableLightView: \t";
00676                 INSERT_ITEM_INT("enableLightView","active les boite representant les lumieres",FALSE,0,1,&ce.enableLightView);
00677                 INSERT_INT;
00678                 message="enableBackGround: \t";
00679                 INSERT_ITEM_INT("enableBackGround","active le fond",FALSE,0,1,&ce.enableBackGround);
00680                 INSERT_INT;
00681                 elemTree.hParent = NULL;
00682         }
00683
00684         message<<clear<<"Tools [inertia,monitor]: "<<ce.enableInertia<<" , "<<ce.monitor.enable;
00685         INSERT_ITEM;
00686         {
00687                 elemTree.hParent = hParentItem;
00688                 message="enableInertia: \t";
00689                 INSERT_ITEM_INT("enableInertia","active le mode d'inertie",FALSE,0,1,&ce.enableInertia);
00690                 INSERT_INT;
00691                 message="enableViewInertia: \t";
00692                 INSERT_ITEM_INT("enableViewInertia","active l'affichage du mode d'inertie",FALSE,0,1,&ce.enableViewInertia);
00693                 INSERT_INT;
00694                 message="enableMonitor: \t";
00695                 INSERT_ITEM_INT("enableMonitor","active l'utilisation du moniteur de performance",FALSE,0,1,&ce.monitor.enable);
00696                 INSERT_INT;
00697                 elemTree.hParent = NULL;
00698         }
00699
00700         message<<clear<<"Fog [enable,start,end]: "<<ce.fog.isEnable<<" , "<<ce.fog.start<<" , "<<ce.fog.end;
00701         INSERT_ITEM;
00702         {
00703                 elemTree.hParent = hParentItem;
00704                 message="enable: \t";
00705                 INSERT_ITEM_INT("fog.enable","active le brouillard",IS_FOG,0,1,&ce.fog.isEnable);
00706                 INSERT_INT;
00707                 message="start: \t";
00708                 INSERT_ITEM_FLOAT("fog.start","distance z de debut du brouillard",IS_FOG,0,100,&ce.fog.start);
00709                 INSERT_FLOAT;
00710                 message="end: \t";
00711                 INSERT_ITEM_FLOAT("fog.end","distance z de fin de brouillard",IS_FOG,0,100,&ce.fog.end);
00712                 INSERT_FLOAT;
00713                 message="density: \t";
00714                 INSERT_ITEM_FLOAT("fog.density","densité du brouillard (utilisé en mode EXP ou EXP2)",IS_FOG,0,0.5,&ce.fog.density);
00715                 INSERT_FLOAT;
00716                 message="mode: \t";
00717                 INSERT_ITEM_INT("fog.mode","type de calcul de brouillard",IS_FOG,0,-1,(int *)&ce.fog.mode);
00718                 VE_float_cur.elem.AddSpecial(GL_LINEAR,"Linear");
00719                 VE_float_cur.elem.AddSpecial(GL_EXP,"Exp");
00720                 VE_float_cur.elem.AddSpecial(GL_EXP2,"Exp2");
00721                 INSERT_INT;
00722                 message="color ";
00723                 ce.fog.color.ToString(message);
00724                 INSERT_ITEM;
00725                 {
00726                         hParentItem2 = hParentItem;
00727                         elemTree.hParent = hParentItem;
00728                         message="enable: \t";
00729                         INSERT_ITEM_INT("fog.color.enable","active la couleur",IS_FOG,0,1,&ce.fog.color.isEnable);
00730                         INSERT_INT;
00731                         message="r: \t";
00732                         INSERT_ITEM_FLOAT("fog.color.r","Composante rouge",IS_FOG,0,1,&ce.fog.color.r);
00733                         INSERT_FLOAT;
00734                         message="g: \t";
00735                         INSERT_ITEM_FLOAT("fog.color.g","Composante verte",IS_FOG,0,1,&ce.fog.color.g);
00736                         INSERT_FLOAT;
00737                         message="b: \t";
00738                         INSERT_ITEM_FLOAT("fog.color.b","Composante bleu",IS_FOG,0,1,&ce.fog.color.b);
00739                         INSERT_FLOAT;
00740                         message="a: \t";
00741                         INSERT_ITEM_FLOAT("fog.color.a","Composante alpha (pour blending)",IS_FOG,0,1,&ce.fog.color.a);
00742                         INSERT_FLOAT;
00743                         elemTree.hParent = hParentItem;
00744                 }
00745                 elemTree.hParent = NULL;
00746         }
00747 }
00748
00749 void ValueEditors::MakeLightsStruct(HWND hWnd)
00750 {
00751         Zero();
00752         CBase_VE_double VE_double_cur;
00753         CBase_VE_int VE_int_cur;
00754         CBase_VE_float VE_float_cur;
00755         MyString interpretedText;
00756
00757         HTREEITEM hParentItem,hParentItem2,hParentItem3;
00758         TVINSERTSTRUCT elemTree;
00759         elemTree.hInsertAfter = TVI_LAST;
00760         elemTree.hParent = NULL;
00761         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
00762
00763         int num = 1;
00764         MyString message;
00765         Light *lightCur;
00766         BOOL *lightMoveCur;
00767         MyString lightName,paramName;
00768         for (int i=0;i<4;i++)
00769         {
00770                 lightCur=&ce.lights[i];
00771                 lightMoveCur=&ce.lightsMove[i];
00772
00773                 lightName<<clear<<"light"<<i;
00774                 message<<clear<<lightName<<" [enable]: "<<lightCur->isEnable;
00775                 INSERT_ITEM;
00776                 {
00777                         hParentItem2 = hParentItem;
00778                         elemTree.hParent = hParentItem;
00779                         message="enable: \t";
00780                         paramName<<clear<<lightName<<".enable";
00781                         INSERT_ITEM_INT(paramName,"active la lumiere",IS_LIGHT,0,1,&lightCur->isEnable);
00782                         INSERT_INT;
00783
00784                         message="Material";
00785                         INSERT_ITEM;
00786                         {
00787                                 hParentItem3 = hParentItem;
00788                                 elemTree.hParent = hParentItem;
00789                                 message="ambient: ";
00790                                 lightCur->material.ambient.ToString(message);
00791                                 INSERT_ITEM;
00792                                 {
00793                                         elemTree.hParent = hParentItem;
00794                                         message="enable: \t";
00795                                         paramName<<clear<<lightName<<".ambient.enable";
00796                                         INSERT_ITEM_INT(paramName,"enable l'utilisation des couleurs",IS_LIGHT,0,1,&lightCur->material.ambient.isEnable);
00797                                         INSERT_INT;
00798                                         message="r: \t";
00799                                         paramName<<clear<<lightName<<".ambient.r";
00800                                         INSERT_ITEM_FLOAT(paramName,"Composante rouge",IS_LIGHT,0,1,&lightCur->material.ambient.r);
00801                                         INSERT_FLOAT;
00802                                         message="g: \t";
00803                                         paramName<<clear<<lightName<<".ambient.g";
00804                                         INSERT_ITEM_FLOAT(paramName,"Composante verte",IS_LIGHT,0,1,&lightCur->material.ambient.g);
00805                                         INSERT_FLOAT;
00806                                         message="b: \t";
00807                                         paramName<<clear<<lightName<<".ambient.b";
00808                                         INSERT_ITEM_FLOAT(paramName,"Composante bleu",IS_LIGHT,0,1,&lightCur->material.ambient.b);
00809                                         INSERT_FLOAT;
00810                                         message="a: \t";
00811                                         paramName<<clear<<lightName<<".ambient.a";
00812                                         INSERT_ITEM_FLOAT(paramName,"Composante alpha (pour blending)",IS_LIGHT,0,1,&lightCur->material.ambient.a);
00813                                         INSERT_FLOAT;
00814                                         elemTree.hParent = hParentItem3;
00815                                 }
00816
00817                                 message="diffuse: ";
00818                                 lightCur->material.diffuse.ToString(message);
00819                                 INSERT_ITEM;
00820                                 {
00821                                         elemTree.hParent = hParentItem;
00822                                         message="enable: \t";
00823                                         paramName<<clear<<lightName<<".diffuse.enable";
00824                                         INSERT_ITEM_INT(paramName,"enable l'utilisation des couleurs",IS_LIGHT,0,1,&lightCur->material.diffuse.isEnable);
00825                                         INSERT_INT;
00826                                         message="r: \t";
00827                                         paramName<<clear<<lightName<<".diffuse.r";
00828                                         INSERT_ITEM_FLOAT(paramName,"Composante rouge",IS_LIGHT,0,1,&lightCur->material.diffuse.r);
00829                                         INSERT_FLOAT;
00830                                         message="g: \t";
00831                                         paramName<<clear<<lightName<<".diffuse.g";
00832                                         INSERT_ITEM_FLOAT(paramName,"Composante verte",IS_LIGHT,0,1,&lightCur->material.diffuse.g);
00833                                         INSERT_FLOAT;
00834                                         message="b: \t";
00835                                         paramName<<clear<<lightName<<".diffuse.b";
00836                                         INSERT_ITEM_FLOAT(paramName,"Composante bleu",IS_LIGHT,0,1,&lightCur->material.diffuse.b);
00837                                         INSERT_FLOAT;
00838                                         message="a: \t";
00839                                         paramName<<clear<<lightName<<".diffuse.a";
00840                                         INSERT_ITEM_FLOAT(paramName,"Composante alpha (pour blending)",IS_LIGHT,0,1,&lightCur->material.diffuse.a);
00841                                         INSERT_FLOAT;
00842                                         elemTree.hParent = hParentItem3;
00843                                 }
00844
00845                                 message="specular: ";
00846                                 lightCur->material.specular.ToString(message);
00847                                 INSERT_ITEM;
00848                                 {
00849                                         elemTree.hParent = hParentItem;
00850                                         message="enable: \t";
00851                                         paramName<<clear<<lightName<<".specular.enable";
00852                                         INSERT_ITEM_INT(paramName,"enable l'utilisation des couleurs",IS_LIGHT,0,1,&lightCur->material.specular.isEnable);
00853                                         INSERT_INT;
00854                                         message="r: \t";
00855                                         paramName<<clear<<lightName<<".specular.r";
00856                                         INSERT_ITEM_FLOAT(paramName,"Composante rouge",IS_LIGHT,0,1,&lightCur->material.specular.r);
00857                                         INSERT_FLOAT;
00858                                         message="g: \t";
00859                                         paramName<<clear<<lightName<<".specular.g";
00860                                         INSERT_ITEM_FLOAT(paramName,"Composante verte",IS_LIGHT,0,1,&lightCur->material.specular.g);
00861                                         INSERT_FLOAT;
00862                                         message="b: \t";
00863                                         paramName<<clear<<lightName<<".specular.b";
00864                                         INSERT_ITEM_FLOAT(paramName,"Composante bleu",IS_LIGHT,0,1,&lightCur->material.specular.b);
00865                                         INSERT_FLOAT;
00866                                         message="a: \t";
00867                                         paramName<<clear<<lightName<<".specular.a";
00868                                         INSERT_ITEM_FLOAT(paramName,"Composante alpha (pour blending)",IS_LIGHT,0,1,&lightCur->material.specular.a);
00869                                         INSERT_FLOAT;
00870                                         elemTree.hParent = hParentItem2;
00871                                 }
00872                         }
00873                         message="position: ";
00874                         lightCur->position.ToString(message);
00875                         INSERT_ITEM;
00876                         {
00877                                 elemTree.hParent = hParentItem;
00878                                 message="enable: \t";
00879                                 paramName<<clear<<lightName<<".position.enable";
00880                                 INSERT_ITEM_INT(paramName,"enable l'utilisation du positionement",IS_LIGHT,0,1,&lightCur->position.isEnable);
00881                                 INSERT_INT;
00882                                 message="x: \t";
00883                                 paramName<<clear<<lightName<<".position.x";
00884                                 INSERT_ITEM_FLOAT(paramName,"position x",IS_LIGHT,-1024,1024,&lightCur->position.x);
00885                                 VE_float_cur.elem.AddSpecial(180,"paralelle");
00886                                 INSERT_FLOAT;
00887                                 message="y: \t";
00888                                 paramName<<clear<<lightName<<".position.y";
00889                                 INSERT_ITEM_FLOAT(paramName,"position y",IS_LIGHT,-1024,1024,&lightCur->position.y);
00890                                 INSERT_FLOAT;
00891                                 message="z: \t";
00892                                 paramName<<clear<<lightName<<".position.z";
00893                                 INSERT_ITEM_FLOAT(paramName,"position z",IS_LIGHT,-1024,1024,&lightCur->position.z);
00894                                 INSERT_FLOAT;
00895                                 message="w: \t";
00896                                 paramName<<clear<<lightName<<".position.w";
00897                                 INSERT_ITEM_FLOAT(paramName,"directionnel ou ponctuel",IS_LIGHT,0,-1,&lightCur->position.w);
00898                                 VE_float_cur.elem.AddSpecial(0,"directionnel");
00899                                 VE_float_cur.elem.AddSpecial(1,"ponctuel");
00900                                 INSERT_FLOAT;
00901                                 elemTree.hParent = hParentItem2;
00902                         }
00903
00904                         message="direction: ";
00905                         lightCur->direction.ToString(message);
00906                         INSERT_ITEM;
00907                         {
00908                                 elemTree.hParent = hParentItem;
00909                                 message="enable: \t";
00910                                 paramName<<clear<<lightName<<".direction.enable";
00911                                 INSERT_ITEM_INT(paramName,"enable l'utilisation des direction",IS_LIGHT,0,1,&lightCur->direction.isEnable);
00912                                 INSERT_INT;
00913                                 message="x: \t";
00914                                 paramName<<clear<<lightName<<".direction.x";
00915                                 INSERT_ITEM_FLOAT(paramName,"direction x",IS_LIGHT,-1024,1024,&lightCur->direction.x);
00916                                 INSERT_FLOAT;
00917                                 message="y: \t";
00918                                 paramName<<clear<<lightName<<".direction.y";
00919                                 INSERT_ITEM_FLOAT(paramName,"direction y",IS_LIGHT,-1024,1024,&lightCur->direction.y);
00920                                 INSERT_FLOAT;
00921                                 message="z: \t";
00922                                 paramName<<clear<<lightName<<".direction.z";
00923                                 INSERT_ITEM_FLOAT(paramName,"direction z",IS_LIGHT,-1024,1024,&lightCur->direction.z);
00924                                 INSERT_FLOAT;
00925                                 elemTree.hParent = hParentItem2;
00926                         }
00927
00928                         message="cutoff: ";
00929                         lightCur->cutoff.ToString(message);
00930                         INSERT_ITEM;
00931                         {
00932                                 elemTree.hParent = hParentItem;
00933                                 message="enable: \t";
00934                                 paramName<<clear<<lightName<<".cutoff.enable";
00935                                 INSERT_ITEM_INT(paramName,"enable l'utilisation de l'ouverture",IS_LIGHT,0,1,&lightCur->cutoff.isEnable);
00936                                 INSERT_INT;
00937                                 message="value: \t";
00938                                 paramName<<clear<<lightName<<".cutoff.value";
00939                                 INSERT_ITEM_FLOAT(paramName,"valeur de l'ouverture",IS_LIGHT,0,90,&lightCur->cutoff.elem);
00940                                 VE_int_cur.elem.AddSpecial(180,"paralelle");
00941                                 INSERT_FLOAT;
00942                                 elemTree.hParent = hParentItem2;
00943                         }
00944
00945                         message="exponent: ";
00946                         lightCur->exponent.ToString(message);
00947                         INSERT_ITEM;
00948                         {
00949                                 elemTree.hParent = hParentItem;
00950                                 message="enable: \t";
00951                                 paramName<<clear<<lightName<<".exponent.enable";
00952                                 INSERT_ITEM_INT(paramName,"enable l'utilisation du exponent",IS_LIGHT,0,1,&lightCur->exponent.isEnable);
00953                                 INSERT_INT;
00954                                 message="value: \t";
00955                                 paramName<<clear<<lightName<<".exponent.value";
00956                                 INSERT_ITEM_FLOAT(paramName,"valeur du exponent ",IS_LIGHT,0,128,&lightCur->exponent.elem);
00957                                 INSERT_FLOAT;
00958                                 elemTree.hParent = hParentItem2;
00959                         }
00960
00961                         message="attenuation";
00962                         BOOL atLeast = FALSE;
00963                         if (lightCur->attenuationCst.isEnable)
00964                         {
00965                                 message<<": "<<lightCur->attenuationCst.elem;
00966                                 atLeast = TRUE;
00967                         }
00968                         if (lightCur->attenuationLin.isEnable)
00969                         {
00970                                 if (atLeast) message<<"+";
00971                                 else message<<": ";
00972                                 message<<lightCur->attenuationLin.elem<<"*x";
00973                                 atLeast = TRUE;
00974                         }
00975                         if (lightCur->attenuationQuad.isEnable)
00976                         {
00977                                 if (atLeast) message<<"+";
00978                                 else message<<": ";
00979                                 message<<lightCur->attenuationQuad.elem<<"*x2";
00980                                 atLeast = TRUE;
00981                         }
00982                         INSERT_ITEM;
00983                         {
00984                                 hParentItem2 = hParentItem;
00985                                 elemTree.hParent = hParentItem;
00986                                 message<<clear<<"constant [enable,value]:"<<lightCur->attenuationCst.isEnable<<" , "<<lightCur->attenuationCst.elem;
00987                                 INSERT_ITEM;
00988                                 {
00989                                         elemTree.hParent = hParentItem;
00990                                         message="enable: \t";
00991                                         paramName<<clear<<lightName<<".attenuationCst.enable";
00992                                         INSERT_ITEM_INT(paramName,"enable l'utilisation de l'attenuation",IS_LIGHT,0,1,&lightCur->attenuationCst.isEnable);
00993                                         INSERT_INT;
00994                                         message="value: \t";
00995                                         paramName<<clear<<lightName<<".attenuationCst.value";
00996                                         INSERT_ITEM_FLOAT(paramName,"valeur de l'attenuation",IS_LIGHT,0,90,&lightCur->attenuationCst.elem);
00997                                         VE_float_cur.elem.AddSpecial(180,"paralelle");
00998                                         INSERT_FLOAT;
00999                                         elemTree.hParent = hParentItem2;
01000                                 }
01001                                 message<<clear<<"lineaire [enable,value]:"<<lightCur->attenuationLin.isEnable<<" , "<<lightCur->attenuationLin.elem;
01002                                 INSERT_ITEM;
01003                                 {
01004                                         elemTree.hParent = hParentItem;
01005                                         message="enable: \t";
01006                                         paramName<<clear<<lightName<<".attenuationLin.enable";
01007                                         INSERT_ITEM_INT(paramName,"enable l'utilisation de l'attenuation",IS_LIGHT,0,1,&lightCur->attenuationLin.isEnable);
01008                                         INSERT_INT;
01009                                         message="value: \t";
01010                                         paramName<<clear<<lightName<<".attenuationLin.value";
01011                                         INSERT_ITEM_FLOAT(paramName,"valeur de l'attenuation",IS_LIGHT,0,90,&lightCur->attenuationLin.elem);
01012                                         VE_float_cur.elem.AddSpecial(180,"paralelle");
01013                                         INSERT_FLOAT;
01014                                         elemTree.hParent = hParentItem2;
01015                                 }
01016                                 message<<clear<<"quadratique [enable,value]:"<<lightCur->attenuationQuad.isEnable<<" , "<<lightCur->attenuationQuad.elem;
01017                                 INSERT_ITEM;
01018                                 {
01019                                         elemTree.hParent = hParentItem;
01020                                         message="enable: \t";
01021                                         paramName<<clear<<lightName<<".attenuationQuad.enable";
01022                                         INSERT_ITEM_INT(paramName,"enable l'utilisation de l'attenuation",IS_LIGHT,0,1,&lightCur->attenuationQuad.isEnable);
01023                                         INSERT_INT;
01024                                         message="value: \t";
01025                                         paramName<<clear<<lightName<<".attenuationQuad.value";
01026                                         INSERT_ITEM_FLOAT(paramName,"valeur de l'attenuation",IS_LIGHT,0,90,&lightCur->attenuationQuad.elem);
01027                                         VE_float_cur.elem.AddSpecial(180,"paralelle");
01028                                         INSERT_FLOAT;
01029                                         elemTree.hParent = hParentItem2;
01030                                 }
01031                         }
01032                         elemTree.hParent=NULL;
01033                 }
01034         }
01035 }
01036
01037 void ValueEditors::MakeTexturesStruct(HWND hWnd)
01038 {
01039         Zero();
01040         CBase_VE_double VE_double_cur;
01041         CBase_VE_int VE_int_cur;
01042         CBase_VE_float VE_float_cur;
01043         MyString interpretedText;
01044
01045         HTREEITEM hParentItem,hParentItem2;
01046         TVINSERTSTRUCT elemTree;
01047         elemTree.hInsertAfter = TVI_LAST;
01048         elemTree.hParent = NULL;
01049         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
01050
01051         int num = 1;
01052         MyString message,textureNum,temp;
01053
01054         int numTexture = -1;
01055         for (Texture::list.i=0;Texture::list.i.More();Texture::list.i++)
01056         {
01057                 numTexture++;
01058                 Texture *texture = Texture::list.i.GetElem();
01059
01060                 textureNum.Format("texture%d",numTexture);
01061                 message.Format("%s [name,id]: \"%s\" , %d",(char*)textureNum,(char*)texture->name,texture->id);
01062                 INSERT_ITEM;
01063                 {
01064                         hParentItem2 = hParentItem;
01065                         elemTree.hParent = hParentItem;
01066                         //message="source: \"";message<<texture->source<<"\"";
01067                         message.Format("source: \"%s\"",(char*)texture->source);
01068                         INSERT_ITEM;
01069                         message.Format("size [x,y]: %d , %d",texture->xSize,texture->ySize);
01070                         INSERT_ITEM;
01071                         message="useResizing: \t";
01072                         temp=textureNum;temp<<".useResizing";
01073                         INSERT_ITEM_INT(temp,"utilse le redimentionement (parametre scale) ou changement a la source",FALSE,0,1,&texture->useResizing);
01074                         INSERT_INT;
01075                         message="scale [x,y]: ";message<<texture->xScale<<" , "<<texture->yScale;
01076                         INSERT_ITEM;
01077                         {
01078                                 elemTree.hParent = hParentItem;
01079                                 message="x: \t";
01080                                 temp=textureNum;temp<<".xScale";
01081                                 INSERT_ITEM_DOUBLE(temp,"scaling de la texture dans les x (<1 si texture original non exposant de 2)",FALSE,0,1,&texture->xScale);
01082                                 INSERT_DOUBLE;
01083                                 message="y: \t";
01084                                 temp=textureNum;temp<<".yScale";
01085                                 INSERT_ITEM_DOUBLE(temp,"scaling de la texture dans les y (<1 si texture original non exposant de 2)",FALSE,0,1,&texture->yScale);
01086                                 INSERT_DOUBLE;
01087                                 elemTree.hParent = hParentItem2;
01088                         }
01089
01090                         message="border ";
01091                         texture->border.ToString(message);
01092                         INSERT_ITEM;
01093                         {
01094                                 elemTree.hParent = hParentItem;
01095                                 message="enable: \t";
01096                                 temp=textureNum;temp<<".border.enable";
01097                                 INSERT_ITEM_INT(temp,"enable l'utilisation des couleurs",IS_TEXTURE+numTexture,0,1,&texture->border.isEnable);
01098                                 INSERT_INT;
01099                                 message="r: \t";
01100                                 temp=textureNum;temp<<".border.r";
01101                                 INSERT_ITEM_FLOAT(temp,"Composante rouge",IS_TEXTURE+numTexture,-1,1,&texture->border.r);
01102                                 INSERT_FLOAT;
01103                                 message="g: \t";
01104                                 temp=textureNum;temp<<".border.g";
01105                                 INSERT_ITEM_FLOAT(temp,"Composante verte",IS_TEXTURE+numTexture,-1,1,&texture->border.g);
01106                                 INSERT_FLOAT;
01107                                 message="b: \t";
01108                                 temp=textureNum;temp<<".border.b";
01109                                 INSERT_ITEM_FLOAT(temp,"Composante bleu",IS_TEXTURE+numTexture,-1,1,&texture->border.b);
01110                                 INSERT_FLOAT;
01111                                 message="a: \t";
01112                                 temp=textureNum;temp<<".border.a";
01113                                 INSERT_ITEM_FLOAT(temp,"Composante alpha (pour blending)",IS_TEXTURE+numTexture,-1,1,&texture->border.a);
01114                                 INSERT_FLOAT;
01115                                 elemTree.hParent = hParentItem2;
01116                         }
01117
01118                         message="envColor ";
01119                         texture->envColor.ToString(message);
01120                         INSERT_ITEM;
01121                         {
01122                                 elemTree.hParent = hParentItem;
01123                                 message="enable: \t";
01124                                 temp=textureNum;temp<<".envColor.enable";
01125                                 INSERT_ITEM_INT(temp,"enable l'utilisation des couleurs",IS_TEXTURE+numTexture,0,1,&texture->envColor.isEnable);
01126                                 INSERT_INT;
01127                                 message="r: \t";
01128                                 temp=textureNum;temp<<".envColor.r";
01129                                 INSERT_ITEM_FLOAT(temp,"Composante rouge",IS_TEXTURE+numTexture,-1,1,&texture->envColor.r);
01130                                 INSERT_FLOAT;
01131                                 message="g: \t";
01132                                 temp=textureNum;temp<<".envColor.g";
01133                                 INSERT_ITEM_FLOAT(temp,"Composante verte",IS_TEXTURE+numTexture,-1,1,&texture->envColor.g);
01134                                 INSERT_FLOAT;
01135                                 message="b: \t";
01136                                 temp=textureNum;temp<<".envColor.b";
01137                                 INSERT_ITEM_FLOAT(temp,"Composante bleu",IS_TEXTURE+numTexture,-1,1,&texture->envColor.b);
01138                                 INSERT_FLOAT;
01139                                 message="a: \t";
01140                                 temp=textureNum;temp<<".envColor.a";
01141                                 INSERT_ITEM_FLOAT(temp,"Composante alpha (pour blending)",IS_TEXTURE+numTexture,-1,1,&texture->envColor.a);
01142                                 INSERT_FLOAT;
01143                                 elemTree.hParent = hParentItem2;
01144                         }
01145
01146                         message="filter [min,mag]: ";message<<texture->minFilter<<" , "<<texture->magFilter;
01147                         INSERT_ITEM;
01148                         {
01149                                 elemTree.hParent = hParentItem;
01150                                 message="min: \t";
01151                                 temp=textureNum;temp<<".minFilter";
01152                                 INSERT_ITEM_INT(temp,"type de traitement si la taille de la texture orginal est plus petite qu'a l'affichage",IS_TEXTURE+numTexture,0,-1,(int *)&texture->minFilter);
01153                                 VE_int_cur.elem.AddSpecial(GL_NEAREST,"Nearest");
01154                                 VE_int_cur.elem.AddSpecial(GL_LINEAR,"Linear");
01155                                 INSERT_INT;
01156                                 message="mag: \t";
01157                                 temp=textureNum;temp<<".magFilter";
01158                                 INSERT_ITEM_INT(temp,"type de traitement si la taille de la texture original est plus grande qu'a l'affichage",IS_TEXTURE+numTexture,0,-1,(int *)&texture->magFilter);
01159                                 VE_int_cur.elem.AddSpecial(GL_NEAREST,"Nearest");
01160                                 VE_int_cur.elem.AddSpecial(GL_LINEAR,"Linear");
01161                                 INSERT_INT;
01162                                 elemTree.hParent = hParentItem2;
01163                         }
01164                         message="wrap [Hori,Verti]: ";message<<texture->wrapS<<" , "<<texture->wrapT;
01165                         INSERT_ITEM;
01166                         {
01167                                 elemTree.hParent = hParentItem;
01168                                 message="Horizontal: \t";
01169                                 temp<<clear<<textureNum<<".wrapS";
01170                                 INSERT_ITEM_INT(temp,"type d'envelopement horizontal",IS_TEXTURE+numTexture,0,-1,(int *)&texture->wrapS);
01171                                 VE_int_cur.elem.AddSpecial(GL_CLAMP ,"Clamp");
01172                                 VE_int_cur.elem.AddSpecial(GL_REPEAT,"Repeat");
01173                                 INSERT_INT;
01174                                 message="Vertical: \t";
01175                                 temp<<clear<<textureNum;temp<<".wrapT";
01176                                 INSERT_ITEM_INT(temp,"type d'envelopement vertical",IS_TEXTURE+numTexture,0,-1,(int *)&texture->wrapT);
01177                                 VE_int_cur.elem.AddSpecial(GL_CLAMP ,"Clamp");
01178                                 VE_int_cur.elem.AddSpecial(GL_REPEAT,"Repeat");
01179                                 INSERT_INT;
01180                                 elemTree.hParent = hParentItem2;
01181                         }
01182                         elemTree.hParent = NULL;
01183                 }
01184         }
01185 }
01186
01191 void ValueEditors::MakeFontsStruct(HWND hWnd)
01192 {
01193         Zero();
01194         CBase_VE_double VE_double_cur;
01195         CBase_VE_int VE_int_cur;
01196         CBase_VE_float VE_float_cur;
01197         MyString interpretedText;
01198
01199         HTREEITEM hParentItem;//,hParentItem2;
01200         TVINSERTSTRUCT elemTree;
01201         elemTree.hInsertAfter = TVI_LAST;
01202         elemTree.hParent = NULL;
01203         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
01204
01205         int num = 1;
01206         MyString message,fontTxt,temp;
01207
01208         int numFont = -1;
01209
01210         MyList<FTFont *> fonts;
01211         fonts.i+=ce.fontBitmap;
01212         fonts.i+=ce.fontExtrude;
01213         fonts.i+=ce.fontOutline;
01214         fonts.i+=ce.fontPixmap;
01215         fonts.i+=ce.fontPolygon;
01216         fonts.i+=ce.fontTexture;
01217         for (fonts.i=0;fonts.i.More();fonts.i++)
01218         {
01219                 FTFont *font = fonts.i.GetElem();
01220                 numFont++;
01221                 int size = font->FaceSize();
01222                 float ascender = font->Ascender();
01223                 float descender = font->Descender();
01224
01225                 fontTxt.Format("font%d",numFont);
01226                 message.Format("%s [name,asc,des]: \"%s\" , %0.2f , %0.2f",(char*)fontTxt,ascender,descender);
01227                 INSERT_ITEM;
01228 /*                      {
01229                         hParentItem2 = hParentItem;
01230                         elemTree.hParent = hParentItem;
01231
01232                         message="useResizing: \t";
01233                         temp=textureNum;temp<<".useResizing";
01234                         INSERT_ITEM_INT(temp,"utilse le redimentionement (parametre scale) ou changement a la source",FALSE,0,1,&texture->useResizing);
01235                         INSERT_INT;
01236                         elemTree.hParent = NULL;
01237                 }*/
01238         }
01239 }
01240
01241 BOOL ValueEditors::MakeElemFaceStruct(HWND hWnd,FaceNode *node)
01242 {
01243         if (!node) return FALSE;
01244         Zero();
01245         CBase_VE_double VE_double_cur;
01246         CBase_VE_int VE_int_cur;
01247         CBase_VE_float VE_float_cur;
01248         MyString interpretedText;
01249
01250         Face *face = node->elem;
01251         HTREEITEM hParentItem,hParentItem2;
01252         TVINSERTSTRUCT elemTree;
01253         elemTree.hInsertAfter = TVI_LAST;
01254         elemTree.hParent = NULL;
01255         elemTree.item.mask = TVIF_TEXT | TVIF_PARAM;
01256
01257         int num = 1;
01258         MyString message;
01259         message.Format("Name: %s [idControl,idFace]: %d,%d",(char*)face->name,face->idControl,face->idFace);
01260         INSERT_ITEM;
01261         message<<clear<<"Angle [x,y,z]: "<<face->angle.x<<" , "<<face->angle.y<<" , "<<face->angle.z;
01262         INSERT_ITEM;
01263         {
01264                 elemTree.hParent = hParentItem;
01265                 message="angle.x: \t";
01266                 INSERT_ITEM_DOUBLE("Angle.x","Angle X de l'univers",FALSE,-180,180,&face->angle.x);
01267                 INSERT_DOUBLE;
01268                 message="angle.y: \t";
01269                 INSERT_ITEM_DOUBLE("Angle.y","Angle Y de l'univers",FALSE,-180,180,&face->angle.y);
01270                 INSERT_DOUBLE;
01271                 message="angle.z: \t";
01272                 INSERT_ITEM_DOUBLE("Angle.z","Angle Z de l'univers",FALSE,-180,180,&face->angle.z);
01273                 INSERT_DOUBLE;
01274                 message="ratioXY: \t";
01275                 INSERT_ITEM_DOUBLE("RatioXY","ration entre les X et Y",FALSE,-180,180,&face->ratioXY);
01276                 INSERT_DOUBLE;
01277                 elemTree.hParent = NULL;
01278         }
01279         message.Format("Mode [view,aalias,fog,blend,line]: %d , %d , %d , %d , %d",face->view,face->antialias,face->fog,face->blending,face->line);
01280         INSERT_ITEM;
01281         {
01282                 elemTree.hParent = hParentItem;
01283                 message="view: \t";
01284                 INSERT_ITEM_INT("view","Face doit etre visualisé ?",FALSE,0,1,&face->view);
01285                 INSERT_INT;
01286                 message="antialias: \t";
01287                 INSERT_ITEM_INT("antialias","Antialising activée?",FALSE,0,1,&face->antialias);
01288                 INSERT_INT;
01289                 message="fog: \t";
01290                 INSERT_ITEM_INT("fog","Le brouillard concerne il cette face ? (si brouillard general est activé)",FALSE,0,1,&face->fog);
01291                 INSERT_INT;
01292                 message="blending: \t";
01293                 INSERT_ITEM_INT("blending","Mode de transparance activé ? (utilise les valeur alphas)",FALSE,0,1,&face->blending);
01294                 INSERT_INT;
01295
01296                 message="line: \t";
01297                 INSERT_ITEM_FLOAT("line","Taille du contour de la surface en ligne, booleen si antialiasing de ligne activé",FALSE,0,10,&face->line);
01298                 INSERT_FLOAT;
01299
01300                 message="lineMaterials";
01301                 INSERT_ITEM;
01302                 {
01303                         hParentItem2 = hParentItem;
01304                         elemTree.hParent = hParentItem;
01305                         message="typeFace: \t";
01306                         INSERT_ITEM_INT("typeFace","Type deface consernée",FALSE,0,-1,&face->lineMaterial.typeFace);
01307                         VE_int_cur.elem.AddSpecial(GL_FRONT_AND_BACK,"front&back");
01308                         VE_int_cur.elem.AddSpecial(GL_FRONT,"front");
01309                         VE_int_cur.elem.AddSpecial(GL_BACK,"back");
01310                         INSERT_INT;
01311
01312                         message="ambient: ";
01313                         face->lineMaterial.ambient.ToString(message);
01314                         INSERT_ITEM;
01315                         {
01316                                 elemTree.hParent = hParentItem;
01317                                 message="enable: \t";
01318                                 INSERT_ITEM_INT("lineMaterial.ambient.enable","enable l'utilisation des coureurs",FALSE,0,1,&face->lineMaterial.ambient.isEnable);
01319                                 INSERT_INT;
01320                                 message="r: \t";
01321                                 INSERT_ITEM_FLOAT("lineMaterial.ambient.r","Composante rouge",FALSE,0,1,&face->lineMaterial.ambient.r);
01322                                 INSERT_FLOAT;
01323                                 message="g: \t";
01324                                 INSERT_ITEM_FLOAT("lineMaterial.ambient.g","Composante verte",FALSE,0,1,&face->lineMaterial.ambient.g);
01325                                 INSERT_FLOAT;
01326                                 message="b: \t";
01327                                 INSERT_ITEM_FLOAT("lineMaterial.ambient.b","Composante bleu",FALSE,0,1,&face->lineMaterial.ambient.b);
01328                                 INSERT_FLOAT;
01329                                 message="a: \t";
01330                                 INSERT_ITEM_FLOAT("lineMaterial.ambient.a","Composante alpha (pour blending)",FALSE,0,1,&face->lineMaterial.ambient.a);
01331                                 INSERT_FLOAT;
01332                                 elemTree.hParent = hParentItem2;
01333                         }
01334
01335                         message="diffuse: ";
01336                         face->lineMaterial.diffuse.ToString(message);
01337                         INSERT_ITEM;
01338                         {
01339                                 elemTree.hParent = hParentItem;
01340                                 message="enable: \t";
01341                                 INSERT_ITEM_INT("lineMaterial.diffuse.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->lineMaterial.diffuse.isEnable);
01342                                 INSERT_INT;
01343                                 message="r: \t";
01344                                 INSERT_ITEM_FLOAT("lineMaterial.diffuse.r","Composante rouge",FALSE,0,1,&face->lineMaterial.diffuse.r);
01345                                 INSERT_FLOAT;
01346                                 message="g: \t";
01347                                 INSERT_ITEM_FLOAT("lineMaterial.diffuse.g","Composante verte",FALSE,0,1,&face->lineMaterial.diffuse.g);
01348                                 INSERT_FLOAT;
01349                                 message="b: \t";
01350                                 INSERT_ITEM_FLOAT("lineMaterial.diffuse.b","Composante bleu",FALSE,0,1,&face->lineMaterial.diffuse.b);
01351                                 INSERT_FLOAT;
01352                                 message="a: \t";
01353                                 INSERT_ITEM_FLOAT("lineMaterial.diffuse.a","Composante alpha (pour blending)",FALSE,0,1,&face->lineMaterial.diffuse.a);
01354                                 INSERT_FLOAT;
01355                                 elemTree.hParent = hParentItem2;
01356                         }
01357
01358                         message="specular: ";
01359                         face->lineMaterial.specular.ToString(message);
01360                         INSERT_ITEM;
01361                         {
01362                                 elemTree.hParent = hParentItem;
01363                                 message="enable: \t";
01364                                 INSERT_ITEM_INT("lineMaterial.specular.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->lineMaterial.specular.isEnable);
01365                                 INSERT_INT;
01366                                 message="r: \t";
01367                                 INSERT_ITEM_FLOAT("lineMaterial.specular.r","Composante rouge",FALSE,0,1,&face->lineMaterial.specular.r);
01368                                 INSERT_FLOAT;
01369                                 message="g: \t";
01370                                 INSERT_ITEM_FLOAT("lineMaterial.specular.g","Composante verte",FALSE,0,1,&face->lineMaterial.specular.g);
01371                                 INSERT_FLOAT;
01372                                 message="b: \t";
01373                                 INSERT_ITEM_FLOAT("lineMaterial.specular.b","Composante bleu",FALSE,0,1,&face->lineMaterial.specular.b);
01374                                 INSERT_FLOAT;
01375                                 message="a: \t";
01376                                 INSERT_ITEM_FLOAT("lineMaterial.specular.a","Composante alpha (pour blending)",FALSE,0,1,&face->lineMaterial.specular.a);
01377                                 INSERT_FLOAT;
01378                                 elemTree.hParent = hParentItem2;
01379                         }
01380
01381                         message="emission: ";
01382                         face->lineMaterial.emission.ToString(message);
01383                         INSERT_ITEM;
01384                         {
01385                                 elemTree.hParent = hParentItem;
01386                                 message="enable: \t";
01387                                 INSERT_ITEM_INT("lineMaterial.emission.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->lineMaterial.emission.isEnable);
01388                                 INSERT_INT;
01389                                 message="r: \t";
01390                                 INSERT_ITEM_FLOAT("lineMaterial.emission.r","Composante rouge",FALSE,0,1,&face->lineMaterial.emission.r);
01391                                 INSERT_FLOAT;
01392                                 message="g: \t";
01393                                 INSERT_ITEM_FLOAT("lineMaterial.emission.g","Composante verte",FALSE,0,1,&face->lineMaterial.emission.g);
01394                                 INSERT_FLOAT;
01395                                 message="b: \t";
01396                                 INSERT_ITEM_FLOAT("lineMaterial.emission.b","Composante bleu",FALSE,0,1,&face->lineMaterial.emission.b);
01397                                 INSERT_FLOAT;
01398                                 message="a: \t";
01399                                 INSERT_ITEM_FLOAT("lineMaterial.emission.a","Composante alpha (pour blending)",FALSE,0,1,&face->lineMaterial.emission.a);
01400                                 INSERT_FLOAT;
01401                                 elemTree.hParent = hParentItem2;
01402                         }
01403
01404                         message<<clear<<"shiness [enable,value]: "<<face->lineMaterial.shiness.isEnable<<" , "<<face->lineMaterial.shiness.elem;
01405                         INSERT_ITEM;
01406                         {
01407                                 elemTree.hParent = hParentItem;
01408                                 message="enable: \t";
01409                                 INSERT_ITEM_INT("lineMaterial.shiness.enable","enable l'utilisation de la luminosité",FALSE,0,1,&face->lineMaterial.shiness.isEnable);
01410                                 INSERT_INT;
01411                                 message="value: \t";
01412                                 INSERT_ITEM_INT("lineMaterial.shiness.value","luminosité",FALSE,0,128,&face->lineMaterial.shiness.elem);
01413                                 INSERT_INT;
01414                                 elemTree.hParent = hParentItem2;
01415                         }
01416                         elemTree.hParent = NULL;
01417                 }
01418                 elemTree.hParent = NULL;
01419         }
01420         if (face->text)
01421         {
01422                 message.Format("Text [value,scale]: \"%s\" , %.2lf",(char*)face->text,face->text->scale);
01423                 INSERT_ITEM;
01424                 {
01425                         hParentItem2 = hParentItem;
01426                         elemTree.hParent = hParentItem;
01427
01428                         //message="Font: \t";
01429                         //INSERT_ITEM_STRING("text.font.name","Nom de la fonte utilisé",FALSE,&face->text->font->name);
01430                         //INSERT_STRING;
01431
01432                         message.Format("align [x,y]: %d , %d",face->text->xAlign,face->text->yAlign);
01433                         INSERT_ITEM;
01434                         {
01435                                 elemTree.hParent = hParentItem;
01436                                 message="x: \t";
01437                                 INSERT_ITEM_INT("text.align.x","type d'alignement sur les X",FALSE,0,-1,(int *)&face->text->xAlign);
01438                                 VE_int_cur.elem.AddSpecial(align_begin,"begin");
01439                                 VE_int_cur.elem.AddSpecial(align_center,"center");
01440                                 VE_int_cur.elem.AddSpecial(align_end,"end");
01441                                 VE_int_cur.elem.AddSpecial(align_justify,"justify");
01442                                 INSERT_INT;
01443                                 message="y: \t";
01444                                 INSERT_ITEM_INT("text.align.y","type d'alignement sur les Y",FALSE,0,-1,(int *)&face->text->yAlign);
01445                                 VE_int_cur.elem.AddSpecial(align_begin,"begin");
01446                                 VE_int_cur.elem.AddSpecial(align_center,"center");
01447                                 VE_int_cur.elem.AddSpecial(align_end,"end");
01448                                 VE_int_cur.elem.AddSpecial(align_justify,"justify");
01449                                 INSERT_INT;
01450                                 message="xJustifyLimit: \t";
01451                                 INSERT_ITEM_DOUBLE("text.xJustifyLimit","maximum de la justification en X",FALSE,0,50,&face->text->xJustifyLimit);
01452                                 INSERT_DOUBLE;
01453                                 message="yJustifyLimit: \t";
01454                                 INSERT_ITEM_DOUBLE("text.yJustifyLimit","maximum de la justification en Y",FALSE,0,50,&face->text->yJustifyLimit);
01455                                 INSERT_DOUBLE;
01456                                 elemTree.hParent = hParentItem2;
01457                         }
01458                         //message="value: \t";
01459                         //INSERT_ITEM_STRING("value","Text a afficher",FALSE,&face->text->value);
01460                         //INSERT_STRING;
01461
01462                         message.Format("wrapping [line,word,letter]: %d , %d , %d",face->text->lineWrap,face->text->wordWrap,face->text->letterWrap);
01463                         INSERT_ITEM;
01464                         {
01465                                 elemTree.hParent = hParentItem;
01466                                 message="line: \t";
01467                                 INSERT_ITEM_INT("text.lineWrap","les lignes sont elle secable ?(retour automatique)",FALSE,0,-1,(int *)&face->text->lineWrap);
01468                                 VE_int_cur.elem.AddSpecial(FALSE,"false");
01469                                 VE_int_cur.elem.AddSpecial(TRUE,"true");
01470                                 INSERT_INT;
01471                                 message="word: \t";
01472                                 INSERT_ITEM_INT("text.wordWrap","les mots sont ils secable ?(retour automatique)",FALSE,0,-1,(int *)&face->text->wordWrap);
01473                                 VE_int_cur.elem.AddSpecial(FALSE,"false");
01474                                 VE_int_cur.elem.AddSpecial(TRUE,"true");
01475                                 INSERT_INT;
01476                                 message="letter: \t";
01477                                 INSERT_ITEM_INT("text.letterWrap","les lettres sont elle secable ?",FALSE,0,-1,(int *)&face->text->letterWrap);
01478                                 VE_int_cur.elem.AddSpecial(FALSE,"false");
01479                                 VE_int_cur.elem.AddSpecial(TRUE,"true");
01480                                 INSERT_INT;
01481                                 elemTree.hParent = hParentItem2;
01482                         }
01483
01484                         message="scale: \t";
01485                         INSERT_ITEM_DOUBLE("text.scale","taille relative de la fonte",FALSE,0,4,&face->text->scale);
01486                         INSERT_DOUBLE;
01487
01488                         message="depth: \t";
01489                         INSERT_ITEM_FLOAT("text.depth","epaisseur (dans les cas d'une fonte extrude)",FALSE,0,20,&face->text->depth);
01490                         INSERT_FLOAT;
01491
01492                         message="material";
01493                         INSERT_ITEM;
01494                         {
01495                                 hParentItem2 = hParentItem;
01496                                 elemTree.hParent = hParentItem;
01497                                 message="typeFace: \t";
01498                                 INSERT_ITEM_INT("typeFace","Type deface consernée",FALSE,0,-1,&face->text->material.typeFace);
01499                                 VE_int_cur.elem.AddSpecial(GL_FRONT_AND_BACK,"front&back");
01500                                 VE_int_cur.elem.AddSpecial(GL_FRONT,"front");
01501                                 VE_int_cur.elem.AddSpecial(GL_BACK,"back");
01502                                 INSERT_INT;
01503
01504                                 message="ambient: ";
01505                                 face->text->material.ambient.ToString(message);
01506                                 INSERT_ITEM;
01507                                 {
01508                                         elemTree.hParent = hParentItem;
01509                                         message="enable: \t";
01510                                         INSERT_ITEM_INT("material.ambient.enable","enable l'utilisation des coureurs",FALSE,0,1,&face->text->material.ambient.isEnable);
01511                                         INSERT_INT;
01512                                         message="r: \t";
01513                                         INSERT_ITEM_FLOAT("material.ambient.r","Composante rouge",FALSE,0,1,&face->text->material.ambient.r);
01514                                         INSERT_FLOAT;
01515                                         message="g: \t";
01516                                         INSERT_ITEM_FLOAT("material.ambient.g","Composante verte",FALSE,0,1,&face->text->material.ambient.g);
01517                                         INSERT_FLOAT;
01518                                         message="b: \t";
01519                                         INSERT_ITEM_FLOAT("material.ambient.b","Composante bleu",FALSE,0,1,&face->text->material.ambient.b);
01520                                         INSERT_FLOAT;
01521                                         message="a: \t";
01522                                         INSERT_ITEM_FLOAT("material.ambient.a","Composante alpha (pour blending)",FALSE,0,1,&face->text->material.ambient.a);
01523                                         INSERT_FLOAT;
01524                                         elemTree.hParent = hParentItem2;
01525                                 }
01526
01527                                 message="diffuse: ";
01528                                 face->text->material.diffuse.ToString(message);
01529                                 INSERT_ITEM;
01530                                 {
01531                                         elemTree.hParent = hParentItem;
01532                                         message="enable: \t";
01533                                         INSERT_ITEM_INT("material.diffuse.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->text->material.diffuse.isEnable);
01534                                         INSERT_INT;
01535                                         message="r: \t";
01536                                         INSERT_ITEM_FLOAT("material.diffuse.r","Composante rouge",FALSE,0,1,&face->text->material.diffuse.r);
01537                                         INSERT_FLOAT;
01538                                         message="g: \t";
01539                                         INSERT_ITEM_FLOAT("material.diffuse.g","Composante verte",FALSE,0,1,&face->text->material.diffuse.g);
01540                                         INSERT_FLOAT;
01541                                         message="b: \t";
01542                                         INSERT_ITEM_FLOAT("material.diffuse.b","Composante bleu",FALSE,0,1,&face->text->material.diffuse.b);
01543                                         INSERT_FLOAT;
01544                                         message="a: \t";
01545                                         INSERT_ITEM_FLOAT("material.diffuse.a","Composante alpha (pour blending)",FALSE,0,1,&face->text->material.diffuse.a);
01546                                         INSERT_FLOAT;
01547                                         elemTree.hParent = hParentItem2;
01548                                 }
01549
01550                                 message="specular: ";
01551                                 face->text->material.specular.ToString(message);
01552                                 INSERT_ITEM;
01553                                 {
01554                                         elemTree.hParent = hParentItem;
01555                                         message="enable: \t";
01556                                         INSERT_ITEM_INT("material.specular.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->text->material.specular.isEnable);
01557                                         INSERT_INT;
01558                                         message="r: \t";
01559                                         INSERT_ITEM_FLOAT("material.specular.r","Composante rouge",FALSE,0,1,&face->text->material.specular.r);
01560                                         INSERT_FLOAT;
01561                                         message="g: \t";
01562                                         INSERT_ITEM_FLOAT("material.specular.g","Composante verte",FALSE,0,1,&face->text->material.specular.g);
01563                                         INSERT_FLOAT;
01564                                         message="b: \t";
01565                                         INSERT_ITEM_FLOAT("material.specular.b","Composante bleu",FALSE,0,1,&face->text->material.specular.b);
01566                                         INSERT_FLOAT;
01567                                         message="a: \t";
01568                                         INSERT_ITEM_FLOAT("material.specular.a","Composante alpha (pour blending)",FALSE,0,1,&face->text->material.specular.a);
01569                                         INSERT_FLOAT;
01570                                         elemTree.hParent = hParentItem2;
01571                                 }
01572
01573                                 message="emission: ";
01574                                 face->text->material.emission.ToString(message);
01575                                 INSERT_ITEM;
01576                                 {
01577                                         elemTree.hParent = hParentItem;
01578                                         message="enable: \t";
01579                                         INSERT_ITEM_INT("material.emission.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->text->material.emission.isEnable);
01580                                         INSERT_INT;
01581                                         message="r: \t";
01582                                         INSERT_ITEM_FLOAT("material.emission.r","Composante rouge",FALSE,0,1,&face->text->material.emission.r);
01583                                         INSERT_FLOAT;
01584                                         message="g: \t";
01585                                         INSERT_ITEM_FLOAT("material.emission.g","Composante verte",FALSE,0,1,&face->text->material.emission.g);
01586                                         INSERT_FLOAT;
01587                                         message="b: \t";
01588                                         INSERT_ITEM_FLOAT("material.emission.b","Composante bleu",FALSE,0,1,&face->text->material.emission.b);
01589                                         INSERT_FLOAT;
01590                                         message="a: \t";
01591                                         INSERT_ITEM_FLOAT("material.emission.a","Composante alpha (pour blending)",FALSE,0,1,&face->text->material.emission.a);
01592                                         INSERT_FLOAT;
01593                                         elemTree.hParent = hParentItem2;
01594                                 }
01595
01596                                 message<<clear<<"shiness [enable,value]: "<<face->text->material.shiness.isEnable<<" , "<<face->text->material.shiness.elem;
01597                                 INSERT_ITEM;
01598                                 {
01599                                         elemTree.hParent = hParentItem;
01600                                         message="enable: \t";
01601                                         INSERT_ITEM_INT("material.shiness.enable","enable l'utilisation de la luminosité",FALSE,0,1,&face->text->material.shiness.isEnable);
01602                                         INSERT_INT;
01603                                         message="value: \t";
01604                                         INSERT_ITEM_INT("material.shiness.value","luminosité",FALSE,0,128,&face->text->material.shiness.elem);
01605                                         INSERT_INT;
01606                                         elemTree.hParent = hParentItem2;
01607                                 }
01608                                 elemTree.hParent = NULL;
01609                         }
01610                         elemTree.hParent = NULL;
01611                 }
01612         }
01613         message="Curve";
01614         INSERT_ITEM;
01615         {
01616                 hParentItem2 = hParentItem;
01617                 elemTree.hParent = hParentItem;
01618                 message.Format("center [x,y,z]: %.2f , %.2f , %.2f",face->curve.center.x,face->curve.center.y,face->curve.center.z);
01619                 INSERT_ITEM;
01620                 {
01621                         elemTree.hParent = hParentItem;
01622                         message="x: \t";
01623                         INSERT_ITEM_DOUBLE("curve.center.x","position du centre en x de l'incurvation",FALSE,0,1,&face->curve.center.x);
01624                         INSERT_DOUBLE;
01625                         message="y: \t";
01626                         INSERT_ITEM_DOUBLE("curve.center.y","position du centre en y de l'incurvation",FALSE,0,1,&face->curve.center.y);
01627                         INSERT_DOUBLE;
01628                         message="z: \t";
01629                         INSERT_ITEM_DOUBLE("curve.center.z","position du centre en z de l'incurvation",FALSE,-1024,1024,&face->curve.center.z);
01630                         INSERT_DOUBLE;
01631                         elemTree.hParent = hParentItem2;
01632                 }
01633                 message<<clear<<"nbCut [x,y]: "<<face->curve.nbCut.x<<" , "<<face->curve.nbCut.y;
01634                 INSERT_ITEM;
01635                 {
01636                         elemTree.hParent = hParentItem;
01637                         message="x: \t";
01638                         INSERT_ITEM_INT("curve.nbCut.x","nb subdivision en sous-face en x",FALSE,1,50,&face->curve.nbCut.x);
01639                         INSERT_INT;
01640                         message="y: \t";
01641                         INSERT_ITEM_INT("curve.nbCut.y","nb subdivision en sous-face en y",FALSE,1,50,&face->curve.nbCut.y);
01642                         INSERT_INT;
01643                         elemTree.hParent = hParentItem2;
01644                 }
01645                 elemTree.hParent = NULL;
01646         }
01647         message.Format("Center [x,y => cx,cy]: %d , %d => %.2lf , %.2lf",face->center.x,face->center.y,face->computeCenter.x,face->computeCenter.y);
01648         INSERT_ITEM;
01649         {
01650                 elemTree.hParent = hParentItem;
01651                 message="x: \t";
01652                 INSERT_ITEM_INT("center.x","position dans les x",FALSE,0,-1,&face->center.x);
01653                 VE_int_cur.elem.AddSpecial(-1,"gauche");
01654                 VE_int_cur.elem.AddSpecial(0,"centré");
01655                 VE_int_cur.elem.AddSpecial(1,"droit");
01656                 INSERT_INT;
01657                 message="y: \t";
01658                 INSERT_ITEM_INT("center.y","position dans les y",FALSE,0,-1,&face->center.y);
01659                 VE_int_cur.elem.AddSpecial(-1,"haut");
01660                 VE_int_cur.elem.AddSpecial(0,"centré");
01661                 VE_int_cur.elem.AddSpecial(1,"bas");
01662                 INSERT_INT;
01663                 elemTree.hParent = NULL;
01664         }
01665         message="Position";
01666         INSERT_ITEM;
01667         {
01668                 hParentItem2 = hParentItem;
01669                 elemTree.hParent = hParentItem;
01670                 if (face->position.x.IsDynamic())
01671                          message.Format("position.x: %.2lf * %.2lf + %.2lf = %.2lf",face->position.x.percentValue,*face->position.x.baseValue,face->position.x.constValue,face->computePosition.x);
01672                 else message.Format("position.x: %.2lf",face->position.x.constValue);
01673                 INSERT_ITEM;
01674                 {
01675                         elemTree.hParent = hParentItem;
01676                         if (face->position.x.IsDynamic())
01677                         {
01678                                 message="percent: \t";
01679                                 INSERT_ITEM_DOUBLE("position.x.percentValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,-0.5,0.5,&face->position.x.percentValue);
01680                                 INSERT_DOUBLE;
01681                                 message="base: \t";
01682                                 INSERT_ITEM_DOUBLE("position.x.baseValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,-1024,1024,face->position.x.baseValue);
01683                                 INSERT_DOUBLE;
01684                         }
01685                         message="const: \t";
01686                         INSERT_ITEM_DOUBLE("position.x.constValue","composante constante de la position (pos = pourcentage*variable+constante)",FALSE,-1024,1024,&face->position.x.constValue);
01687                         INSERT_DOUBLE;
01688                         elemTree.hParent = hParentItem2;
01689                 }
01690                 if (face->position.y.IsDynamic())
01691                                 message.Format("position.y: %.2lf * %.2lf + %.2lf = %.2lf",face->position.y.percentValue,*face->position.y.baseValue,face->position.y.constValue,face->computePosition.y);
01692                 else message.Format("position.y: %.2lf",face->position.y.constValue);
01693                 INSERT_ITEM;
01694                 {
01695                         elemTree.hParent = hParentItem;
01696                         if (face->position.y.IsDynamic())
01697                         {
01698                                 message="percent: \t";
01699                                 INSERT_ITEM_DOUBLE("position.y.percentValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,-0.5,0.5,&face->position.y.percentValue);
01700                                 INSERT_DOUBLE;
01701                                 message="base: \t";
01702                                 INSERT_ITEM_DOUBLE("position.y.baseValue","composante base de la taille (taille = pourcentage*base+constante)",FALSE,-1024,1024,face->position.y.baseValue);
01703                                 INSERT_DOUBLE;
01704                         }
01705                         message="const: \t";
01706                         INSERT_ITEM_DOUBLE("position.y.constValue","composante constante de la position (pos = pourcentage*variable+constante)",FALSE,-1024,1024,&face->position.y.constValue);
01707                         INSERT_DOUBLE;
01708                         elemTree.hParent = hParentItem2;
01709                 }
01710                 if (face->position.z.IsDynamic())
01711                                 message.Format("position.z: %.2lf * %.2lf + %.2lf = %.2lf",face->position.z.percentValue,*face->position.z.baseValue,face->position.z.constValue,face->computePosition.z);
01712                 else message.Format("position.z: %.2lf",face->position.z.constValue);
01713                 INSERT_ITEM;
01714                 {
01715                         elemTree.hParent = hParentItem;
01716                         if (face->position.z.IsDynamic())
01717                         {
01718                                 message="percent: \t";
01719                                 INSERT_ITEM_DOUBLE("position.z.percentValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,-0.5,0.5,&face->position.z.percentValue);
01720                                 INSERT_DOUBLE;
01721                                 message="base: \t";
01722                                 INSERT_ITEM_DOUBLE("position.z.baseValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,-1024,1024,face->position.z.baseValue);
01723                                 INSERT_DOUBLE;
01724                         }
01725                         message="const: \t";
01726                         INSERT_ITEM_DOUBLE("position.z.constValue","composante constante de la position (pos = pourcentage*variable+constante)",FALSE,-1024,1024,&face->position.z.constValue);
01727                         INSERT_DOUBLE;
01728                         elemTree.hParent = hParentItem2;
01729                 }
01730                 elemTree.hParent = NULL;
01731         }
01732         message="Size";
01733         INSERT_ITEM;
01734         {
01735                 hParentItem2 = hParentItem;
01736                 elemTree.hParent = hParentItem;
01737                 if (face->size.x.IsDynamic())
01738                                 message.Format("size.x: %.2lf * %.2lf + %.2lf = %.2lf",face->size.x.percentValue,*face->size.x.baseValue,face->size.x.constValue,face->computeSize.x);
01739                 else message.Format("size.x: %.2lf",face->size.x.constValue);
01740
01741                 INSERT_ITEM;
01742                 {
01743                         elemTree.hParent = hParentItem;
01744                         if (face->size.x.IsDynamic())
01745                         {
01746                                 message="percent: \t";
01747                                 INSERT_ITEM_DOUBLE("size.x.percentValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,0,1,&face->size.x.percentValue);
01748                                 INSERT_DOUBLE;
01749                                 message="base: \t";
01750                                 INSERT_ITEM_DOUBLE("size.x.baseValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,0,2048,face->size.x.baseValue);
01751                                 INSERT_DOUBLE;
01752                         }
01753                         message="const: \t";
01754                         INSERT_ITEM_DOUBLE("size.x.constValue","composante constante de la taille (taille = pourcentage*base+constante)",FALSE,0,2048,&face->size.x.constValue);
01755                         INSERT_DOUBLE;
01756                         elemTree.hParent = hParentItem2;
01757                 }
01758                 if (face->size.y.IsDynamic())
01759                                 message.Format("size.y: %.2lf * %.2lf + %.2lf = %.2lf",face->size.y.percentValue,*face->size.y.baseValue,face->size.y.constValue,face->computeSize.y);
01760                 else message.Format("size.y: %.2lf",face->size.y.constValue);
01761                 INSERT_ITEM;
01762                 {
01763                         elemTree.hParent = hParentItem;
01764                         if (face->size.y.IsDynamic())
01765                         {
01766                                 message="percent: \t";
01767                                 INSERT_ITEM_DOUBLE("size.y.percentValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,0,1,&face->size.y.percentValue);
01768                                 INSERT_DOUBLE;
01769                                 message="base: \t";
01770                                 INSERT_ITEM_DOUBLE("size.y.baseValue","composante pourcentage de la taille (taille = pourcentage*base+constante)",FALSE,0,2048,face->size.y.baseValue);
01771                                 INSERT_DOUBLE;
01772                         }
01773                         message="const: \t";
01774                         INSERT_ITEM_DOUBLE("size.y.constValue","composante constante de la taille (taille = pourcentage*variable+constante)",FALSE,0,2048,&face->size.y.constValue);
01775                         INSERT_DOUBLE;
01776                         elemTree.hParent = hParentItem2;
01777                 }
01778                 elemTree.hParent = NULL;
01779         }
01780         message.Format("Scale [x,y,z]: %.3lf , %.3lf , %.3lf",face->scale.x,face->scale.y,face->scale.z);
01781         INSERT_ITEM;
01782         {
01783                 elemTree.hParent = hParentItem;
01784                 message="x: \t";
01785                 INSERT_ITEM_DOUBLE("scale.x","zoom en x",FALSE,0.25,4,&face->scale.x);
01786                 INSERT_DOUBLE;
01787                 message="y: \t";
01788                 INSERT_ITEM_DOUBLE("scale.y","zoom en y",FALSE,0.25,4,&face->scale.y);
01789                 INSERT_DOUBLE;
01790                 message="z: \t";
01791                 INSERT_ITEM_DOUBLE("scale.z","zoom en z",FALSE,0.25,4,&face->scale.z);
01792                 INSERT_DOUBLE;
01793                 elemTree.hParent = NULL;
01794         }
01795         message="Material";
01796         INSERT_ITEM;
01797         {
01798                 hParentItem2 = hParentItem;
01799                 elemTree.hParent = hParentItem;
01800                 message="typeFace: \t";
01801                 INSERT_ITEM_INT("typeFace","Type deface consernée",FALSE,0,-1,&face->material.typeFace);
01802                 VE_int_cur.elem.AddSpecial(GL_FRONT_AND_BACK,"front&back");
01803                 VE_int_cur.elem.AddSpecial(GL_FRONT,"front");
01804                 VE_int_cur.elem.AddSpecial(GL_BACK,"back");
01805                 INSERT_INT;
01806
01807                 message="ambient: ";
01808                 face->material.ambient.ToString(message);
01809                 INSERT_ITEM;
01810                 {
01811                         elemTree.hParent = hParentItem;
01812                         message="enable: \t";
01813                         INSERT_ITEM_INT("material.ambient.enable","enable l'utilisation des coureurs",FALSE,0,1,&face->material.ambient.isEnable);
01814                         INSERT_INT;
01815                         message="r: \t";
01816                         INSERT_ITEM_FLOAT("material.ambient.r","Composante rouge",FALSE,0,1,&face->material.ambient.r);
01817                         INSERT_FLOAT;
01818                         message="g: \t";
01819                         INSERT_ITEM_FLOAT("material.ambient.g","Composante verte",FALSE,0,1,&face->material.ambient.g);
01820                         INSERT_FLOAT;
01821                         message="b: \t";
01822                         INSERT_ITEM_FLOAT("material.ambient.b","Composante bleu",FALSE,0,1,&face->material.ambient.b);
01823                         INSERT_FLOAT;
01824                         message="a: \t";
01825                         INSERT_ITEM_FLOAT("material.ambient.a","Composante alpha (pour blending)",FALSE,0,1,&face->material.ambient.a);
01826                         INSERT_FLOAT;
01827                         elemTree.hParent = hParentItem2;
01828                 }
01829
01830                 message="diffuse: ";
01831                 face->material.diffuse.ToString(message);
01832                 INSERT_ITEM;
01833                 {
01834                         elemTree.hParent = hParentItem;
01835                         message="enable: \t";
01836                         INSERT_ITEM_INT("material.diffuse.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->material.diffuse.isEnable);
01837                         INSERT_INT;
01838                         message="r: \t";
01839                         INSERT_ITEM_FLOAT("material.diffuse.r","Composante rouge",FALSE,0,1,&face->material.diffuse.r);
01840                         INSERT_FLOAT;
01841                         message="g: \t";
01842                         INSERT_ITEM_FLOAT("material.diffuse.g","Composante verte",FALSE,0,1,&face->material.diffuse.g);
01843                         INSERT_FLOAT;
01844                         message="b: \t";
01845                         INSERT_ITEM_FLOAT("material.diffuse.b","Composante bleu",FALSE,0,1,&face->material.diffuse.b);
01846                         INSERT_FLOAT;
01847                         message="a: \t";
01848                         INSERT_ITEM_FLOAT("material.diffuse.a","Composante alpha (pour blending)",FALSE,0,1,&face->material.diffuse.a);
01849                         INSERT_FLOAT;
01850                         elemTree.hParent = hParentItem2;
01851                 }
01852
01853                 message="specular: ";
01854                 face->material.specular.ToString(message);
01855                 INSERT_ITEM;
01856                 {
01857                         elemTree.hParent = hParentItem;
01858                         message="enable: \t";
01859                         INSERT_ITEM_INT("material.specular.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->material.specular.isEnable);
01860                         INSERT_INT;
01861                         message="r: \t";
01862                         INSERT_ITEM_FLOAT("material.specular.r","Composante rouge",FALSE,0,1,&face->material.specular.r);
01863                         INSERT_FLOAT;
01864                         message="g: \t";
01865                         INSERT_ITEM_FLOAT("material.specular.g","Composante verte",FALSE,0,1,&face->material.specular.g);
01866                         INSERT_FLOAT;
01867                         message="b: \t";
01868                         INSERT_ITEM_FLOAT("material.specular.b","Composante bleu",FALSE,0,1,&face->material.specular.b);
01869                         INSERT_FLOAT;
01870                         message="a: \t";
01871                         INSERT_ITEM_FLOAT("material.specular.a","Composante alpha (pour blending)",FALSE,0,1,&face->material.specular.a);
01872                         INSERT_FLOAT;
01873                         elemTree.hParent = hParentItem2;
01874                 }
01875
01876                 message="emission: ";
01877                 face->material.emission.ToString(message);
01878                 INSERT_ITEM;
01879                 {
01880                         elemTree.hParent = hParentItem;
01881                         message="enable: \t";
01882                         INSERT_ITEM_INT("material.emission.enable","enable l'utilisation des couleurs",FALSE,0,1,&face->material.emission.isEnable);
01883                         INSERT_INT;
01884                         message="r: \t";
01885                         INSERT_ITEM_FLOAT("material.emission.r","Composante rouge",FALSE,0,1,&face->material.emission.r);
01886                         INSERT_FLOAT;
01887                         message="g: \t";
01888                         INSERT_ITEM_FLOAT("material.emission.g","Composante verte",FALSE,0,1,&face->material.emission.g);
01889                         INSERT_FLOAT;
01890                         message="b: \t";
01891                         INSERT_ITEM_FLOAT("material.emission.b","Composante bleu",FALSE,0,1,&face->material.emission.b);
01892                         INSERT_FLOAT;
01893                         message="a: \t";
01894                         INSERT_ITEM_FLOAT("material.emission.a","Composante alpha (pour blending)",FALSE,0,1,&face->material.emission.a);
01895                         INSERT_FLOAT;
01896                         elemTree.hParent = hParentItem2;
01897                 }
01898
01899                 message<<clear<<"shiness [enable,value]: "<<face->material.shiness.isEnable<<" , "<<face->material.shiness.elem;
01900                 INSERT_ITEM;
01901                 {
01902                         elemTree.hParent = hParentItem;
01903                         message="enable: \t";
01904                         INSERT_ITEM_INT("material.shiness.enable","enable l'utilisation de la luminosité",FALSE,0,1,&face->material.shiness.isEnable);
01905                         INSERT_INT;
01906                         message="value: \t";
01907                         INSERT_ITEM_INT("material.shiness.value","luminosité",FALSE,0,128,&face->material.shiness.elem);
01908                         INSERT_INT;
01909                         elemTree.hParent = hParentItem2;
01910                 }
01911                 elemTree.hParent = NULL;
01912         }
01913         message="Texture";
01914         if (face->texture)
01915         {       message<<" [id,name]: "<<face->texture->id<<" , "<<face->texture->name;
01916                 INSERT_ITEM;
01917                 {
01918                         hParentItem2 = hParentItem;
01919                         elemTree.hParent = hParentItem;
01920                         message="id: \t";
01921                         INSERT_ITEM_INT("texture.id","Numero de la texture",IS_TEXTURE,0,15,&face->texture->id);
01922                         VE_int_cur.elem.AddSpecial(0,"not use");
01923                         INSERT_INT;
01924                         elemTree.hParent = NULL;
01925                 }
01926         }
01927         return TRUE;
01928 }
01929
01930 ValueEditors valueEditors;
01931
01932 LRESULT WINAPI DebugStructProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam)
01933 {
01934         static HWND hWndTreeStruct;
01935         static HWND hWndTreeElem;
01936         static FaceNode *node;
01937         static ParamValueEditor *param;
01938         static HWND hWndValueEditor;
01939         static RECT rect;
01940         static BOOL mode_control_enable;
01941         if (param) valueEditors.Update(param->object);
01942
01943         switch(message)
01944         {
01945         case WM_INITDIALOG:
01946                 param=NULL;
01947                 hWndValueEditor=NULL;
01948                 GetWindowRect(hDlg,&rect);
01949                 hWndTreeStruct = GetDlgItem(hDlg,IDC_TREE_STRUCT);
01950                 hWndTreeElem = GetDlgItem(hDlg,IDC_TREE_ELEM);
01951                 Button_SetCheck(GetDlgItem(hDlg,IDC_RADIO_FACEMODE),TRUE);
01952
01953                 mode_control_enable = FALSE;
01954                 valueEditors.MakeDebugFaceStruct(hWndTreeStruct);
01955                 node = ce.primitive.tree.GetRoot();
01956                 valueEditors.MakeElemFaceStruct(hWndTreeElem,node);
01957                 TreeView_ExpandAll_Level(hWndTreeStruct,TRUE,2);
01958                 TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
01959                 return TRUE;
01960
01961         case WM_MOVE:
01962                 {
01963                         int deltaX = -rect.left;
01964                         int deltaY = -rect.top;
01965                         GetWindowRect(hDlg,&rect);
01966                         deltaX+=rect.left;
01967                         deltaY+=rect.top;
01968
01969                         if (param&&(!param->independant))
01970                         {
01971                                 RECT rectElem;
01972                                 GetWindowRect(GetDlgItem(hDlg,IDC_TREE_ELEM),&rectElem);
01973                                 SetDeltaWindowPos(hWndValueEditor,deltaX,deltaY);
01974                         }
01975                 }
01976                 return TRUE;
01977
01978         case WM_COMMAND:
01979                 switch (LOWORD(wParam))
01980                 {
01981                 case IDOK:
01982                 case IDCANCEL:
01983                         EndDialog(hWndValueEditor,LOWORD(wParam));
01984                         EndDialog(hDlg, LOWORD(wParam));
01985                         return TRUE;
01986
01987                 case IDC_RADIO_FACE_MODE:
01988                         mode_control_enable = FALSE;
01989                         TreeView_DeleteAllItems(hWndTreeStruct);
01990                         TreeView_DeleteAllItems(hWndTreeElem);
01991                         valueEditors.MakeDebugFaceStruct(hWndTreeStruct);
01992                         node = ce.primitive.tree.GetRoot();
01993                         valueEditors.MakeElemFaceStruct(hWndTreeElem,node);
01994                         TreeView_ExpandAll_Level(hWndTreeStruct,TRUE,2);
01995                         TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
01996                         break;
01997
01998                 case IDC_RADIO_CONTROLS_MODE:
01999                         mode_control_enable = TRUE;
02000                         TreeView_DeleteAllItems(hWndTreeStruct);
02001                         TreeView_DeleteAllItems(hWndTreeElem);
02002                         valueEditors.MakeDebugControlStruct(hWndTreeStruct);
02003                         node = ce.primitive.tree.GetRoot();
02004                         valueEditors.MakeElemControlStruct(hWndTreeElem,ce.masterContainer);
02005                         TreeView_ExpandAll_Level(hWndTreeStruct,TRUE,2);
02006                         TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
02007                         break;
02008                 }
02009                 break;
02010
02011         case WM_NCMOUSEMOVE:
02012         case WM_MOUSEMOVE:
02013                 ShowMouse(TRUE); // car normalement iniber par la genetre GL
02014                 return TRUE;
02015
02016         case WM_NOTIFY:
02017                 {
02018                         int numSelectedControl;
02019                         int numSelectedFace;
02020                         LPNMHDR pnmh = (LPNMHDR) lParam;
02021                         LPNMTREEVIEW pnmtv = (LPNMTREEVIEW) lParam;
02022                         switch (wParam)
02023                         {
02024                         case IDC_TREE_STRUCT:
02025                                 switch (pnmh->code)
02026                                 {
02027                                 case TVN_SELCHANGED:
02028                                         {
02029                                                 LPARAM param =pnmtv->itemNew.lParam;
02030                                                 numSelectedControl = LOWORD(param);
02031                                                 numSelectedFace = HIWORD(param);
02032                                                 if ((numSelectedFace&0x8000)==0x8000) // gestion des nombre negatifs
02033                                                         numSelectedFace-=0x10000;
02034                                         }
02035                                         switch(numSelectedControl)
02036                                         {
02037                                         case NUM_SELECTED_RENDER: // config - Render
02038                                                 TreeView_DeleteAllItems(hWndTreeElem);
02039                                                 valueEditors.MakeRenderStruct(hWndTreeElem);
02040                                                 TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
02041                                                 break;
02042                                         case NUM_SELECTED_LIGHT: // config - Lights
02043                                                 TreeView_DeleteAllItems(hWndTreeElem);
02044                                                 valueEditors.MakeLightsStruct(hWndTreeElem);
02045                                                 TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
02046                                                 break;
02047                                         case NUM_SELECTED_FONT: // config - Font
02048                                                 TreeView_DeleteAllItems(hWndTreeElem);
02049                                                 valueEditors.MakeFontsStruct(hWndTreeElem);
02050                                                 TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
02051                                                 break;
02052                                         case NUM_SELECTED_TEXTURE: // config - Textures
02053                                                 TreeView_DeleteAllItems(hWndTreeElem);
02054                                                 valueEditors.MakeTexturesStruct(hWndTreeElem);
02055                                                 TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
02056                                                 break;
02057                                         case NUM_SELECTED_PICKING: // picking
02058                                         case NUM_SELECTED_NOTHING: // config - rien de selectionée
02059                                                 TreeView_DeleteAllItems(hWndTreeElem);
02060                                                 TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
02061                                                 break;
02062                                         default:
02063                                                 if (mode_control_enable)
02064                                                 {
02065                                                         Control *control = Control::Find(numSelectedControl);
02066                                                         TreeView_DeleteAllItems(hWndTreeElem);
02067                                                         valueEditors.MakeElemControlStruct(hWndTreeElem,control);
02068                                                         TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
02069                                                 }
02070                                                 else
02071                                                 {
02072                                                         node = ce.primitive.Find(numSelectedControl,numSelectedFace);
02073                                                         TreeView_DeleteAllItems(hWndTreeElem);
02074                                                         valueEditors.MakeElemFaceStruct(hWndTreeElem,node);
02075                                                         TreeView_ExpandAll_Level(hWndTreeElem,TRUE,2);
02076                                                 }
02077                                         }
02078                                 }
02079                                 break;
02080                         case IDC_TREE_ELEM:
02081                                 switch (pnmh->code)
02082                                 {
02083                                 case TVN_SELCHANGED:
02084                                         int num = (int)pnmtv->itemNew.lParam;
02085
02086                                         if (param&&param->independant) param=NULL;
02087                                         if (!param)
02088                                         {
02089                                                 param = new ParamValueEditor;
02090                                                 param->hWndParent = hDlg;
02091                                                 param->independant = FALSE;
02092                                                 param->object = NULL;
02093                                                 hWndValueEditor = CreateDialogParam(ce.hInst,MAKEINTRESOURCE(IDD_VALUE_EDITOR),NULL,(DLGPROC)ValueEditorProc,(LPARAM)param);
02094                                                 ShowWindow(hWndValueEditor,SW_SHOW);
02095                                                 RECT rectElem;
02096                                                 GetWindowRect(GetDlgItem(hDlg,IDC_TREE_ELEM),&rectElem);
02097                                                 SetDeltaWindowPos(hWndValueEditor,rectElem.left,rectElem.bottom);
02098                                         }
02099                                         if (num)
02100                                         {
02101                                                 param->object = valueEditors.list.i(num-1);
02102                                                 valueEditors.Update(param->object);
02103
02104                                                 MyString title;
02105                                                 switch(param->object->type)
02106                                                 {
02107                                                         case CBASE_INDEX_INT:
02108                                                                 title<<"Value: "<<valueEditors.VE_int->elem.variable<<" - "<<node->elem->name;
02109                                                                 valueEditors.VE_int->elem.MAJ(hWndValueEditor);
02110                                                                 break;
02111                                                         case CBASE_INDEX_FLOAT:
02112                                                                 title<<"Value: "<<valueEditors.VE_float->elem.variable<<" - "<<node->elem->name;
02113                                                                 valueEditors.VE_float->elem.MAJ(hWndValueEditor);
02114                                                                 break;
02115                                                         case CBASE_INDEX_DOUBLE:
02116                                                                 title<<"Value: "<<valueEditors.VE_double->elem.variable<<" - "<<node->elem->name;
02117                                                                 valueEditors.VE_double->elem.MAJ(hWndValueEditor);
02118                                                                 break;
02119                                                 }
02120                                                 SetWindowText(hWndValueEditor,title);
02121                                         }
02122                                         else
02123                                         {
02124                                                 param->object = NULL;
02125                                                 ValueEditor<GLint> *temp=NULL;
02126                                                 temp->MAJ(hWndValueEditor);
02127                                         }
02128
02129                                 }
02130                                 break;
02131                         }
02132                 }
02133                 break;
02134         }
02135         return FALSE;
02136 }
02137
02138 void ApplyParamObj(LONG type)
02139 {
02140         switch(type)
02141         {
02142         case IS_FOG: ce.fog.Use(); break;//fog.Enable(ce.fog.enable); break;
02143         case IS_LIGHT: ce.MajLights(); break;
02144         default:
02145                 if (type>=IS_TEXTURE)
02146                 {
02147                         int num = type-IS_TEXTURE;
02148                         Texture::list.i[num]->Config();
02149                 }
02150         }
02151 }
02152
02156 LRESULT WINAPI ValueEditorProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam)
02157 {
02158         ParamValueEditor *param = (ParamValueEditor *) GetWindowLongPtr (hDlg,GWLP_USERDATA);
02159
02160         BOOL activeParam = param&&param->object;
02161         if (activeParam) valueEditors.Update(param->object);
02162
02163         switch (message)
02164         {
02165         case WM_INITDIALOG:
02166                 param = (ParamValueEditor *) lParam;
02167                 SetWindowLongPtr (hDlg, GWLP_USERDATA , (LONG_PTR)param);
02168                 if (param) GetWindowRect(hDlg,&param->rect);
02169                 return TRUE;
02170
02171         case WM_SIZE:
02172                 {
02173                         if (!param) return TRUE;
02174                         int deltaX,deltaY;
02175                         GetDeltaWindow(hDlg,&param->rect,&deltaX,&deltaY);
02176                         SetDeltaWindowSize(GetDlgItem(hDlg,IDC_STATIC_VARIABLE),deltaX,deltaY);
02177                         SetDeltaWindowSize(GetDlgItem(hDlg,IDC_EDIT_VALUE),deltaX,0);
02178                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_EDIT_VALUE),0,deltaY);
02179                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_COMBO_SPECIALS),0,deltaY);
02180                         SetDeltaWindowSize(GetDlgItem(hDlg,IDC_COMBO_SPECIALS),deltaX,0);
02181                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_STATIC1),0,deltaY);
02182                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_STATIC2),0,deltaY);
02183                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_BUTTON_MIN),deltaX,deltaY);
02184                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_BUTTON_MIDS),deltaX,deltaY);
02185                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_BUTTON_MAX),deltaX,deltaY);
02186                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_BUTTON_MOVE),deltaX,deltaY);
02187                         SetDeltaWindowPos(GetDlgItem(hDlg,IDC_SLIDER_PAD),0,deltaY);
02188                         SetDeltaWindowSize(GetDlgItem(hDlg,IDC_SLIDER_PAD),deltaX,0);
02189                         InvalidateRect(hDlg,NULL,TRUE);
02190                 }
02191                 return TRUE;
02192
02193         case WM_HSCROLL:
02194                 if (!activeParam) break;
02195                 if ((HWND)lParam==GetDlgItem(hDlg,IDC_SLIDER_PAD))
02196                 {
02197                         int xPos;
02198                         switch (LOWORD(wParam))
02199                         {
02200                                 case SB_THUMBTRACK:
02201                                         xPos = HIWORD(wParam); // de 0 a 100
02202                                         float xValue = xPos/100.0f;
02203                                         if (param->object)
02204                                         {
02205                                                 GLint valueInt;
02206                                                 GLdouble valueDouble;
02207                                                 GLfloat valueFloat;
02208                                                 switch (param->object->type)
02209                                                 {
02210                                                 case CBASE_INDEX_INT:
02211                                                         valueInt=valueEditors.VE_int->elem.minValue+(GLint)(xValue*(valueEditors.VE_int->elem.maxValue-valueEditors.VE_int->elem.minValue));
02212                                                         valueEditors.VE_int->elem.MAJ_Value(hDlg,valueInt);
02213                                                         break;
02214                                                 case CBASE_INDEX_FLOAT:
02215                                                         valueFloat=valueEditors.VE_float->elem.minValue+xValue*(valueEditors.VE_float->elem.maxValue-valueEditors.VE_float->elem.minValue);
02216                                                         valueEditors.VE_float->elem.MAJ_Value(hDlg,valueFloat);
02217                                                         break;
02218                                                 case CBASE_INDEX_DOUBLE:
02219                                                         valueDouble=valueEditors.VE_double->elem.minValue+xValue*(valueEditors.VE_double->elem.maxValue-valueEditors.VE_double->elem.minValue);
02220                                                         valueEditors.VE_double->elem.MAJ_Value(hDlg,valueDouble);
02221                                                         break;
02222                                                 }
02223                                                 ApplyParamObj(param->object->param);
02224                                         }
02225                                         break;
02226                         }
02227                 }
02228                 break;
02229
02230         case WM_NCMOUSEMOVE:
02231         case WM_MOUSEMOVE:
02232                 ShowMouse(TRUE); // car normalement iniber par la genetre GL
02233                 return TRUE;
02234
02235         case WM_COMMAND:
02236                 switch (LOWORD(wParam))
02237                 {
02238                 case IDOK:
02239                 case IDCANCEL: EndDialog(hDlg, LOWORD(wParam)); return TRUE;
02240                 case IDC_COMBO_SPECIALS:
02241                         if (!activeParam) break;
02242                         switch (HIWORD(wParam))
02243                         {
02244                         case LBN_SELCHANGE :
02245                                 {
02246                                         int num = ComboBox_GetCurSel(GetDlgItem(hDlg,IDC_COMBO_SPECIALS));
02247                                         switch (param->object->type) {
02248                                                 case CBASE_INDEX_INT: valueEditors.VE_int->elem.MAJ_Specials(hDlg,num-1); break;
02249                                                 case CBASE_INDEX_FLOAT: valueEditors.VE_float->elem.MAJ_Specials(hDlg,num-1); break;
02250                                                 case CBASE_INDEX_DOUBLE: valueEditors.VE_double->elem.MAJ_Specials(hDlg,num-1); break;
02251                                         }
02252                                         ApplyParamObj(param->object->param); // pas sur que ca serve a quelque chose !
02253                                 }
02254                                 return TRUE;
02255                         }
02256                         break;
02257
02258                 case IDC_BUTTON_MIN:
02259                         if (!activeParam) break;
02260                         switch (param->object->type) {
02261                         case CBASE_INDEX_INT: valueEditors.VE_int->elem.MAJ_ValueMin(hDlg); break;
02262                         case CBASE_INDEX_FLOAT: valueEditors.VE_float->elem.MAJ_ValueMin(hDlg); break;
02263                         case CBASE_INDEX_DOUBLE: valueEditors.VE_double->elem.MAJ_ValueMin(hDlg); break;
02264                         }
02265                         ApplyParamObj(param->object->param);
02266                         break;
02267                 case IDC_BUTTON_MAX:
02268                         if (!activeParam) break;
02269                         switch (param->object->type) {
02270                         case CBASE_INDEX_INT: valueEditors.VE_int->elem.MAJ_ValueMax(hDlg); break;
02271                         case CBASE_INDEX_FLOAT: valueEditors.VE_float->elem.MAJ_ValueMax(hDlg); break;
02272                         case CBASE_INDEX_DOUBLE: valueEditors.VE_double->elem.MAJ_ValueMax(hDlg); break;
02273                         }
02274                         ApplyParamObj(param->object->param);
02275                         break;
02276                 case IDC_BUTTON_MIDS:
02277                         if (!activeParam) break;
02278                         switch (param->object->type) {
02279                         case CBASE_INDEX_INT: valueEditors.VE_int->elem.MAJ_ValueMids(hDlg); break;
02280                         case CBASE_INDEX_FLOAT: valueEditors.VE_float->elem.MAJ_ValueMids(hDlg); break;
02281                         case CBASE_INDEX_DOUBLE: valueEditors.VE_double->elem.MAJ_ValueMids(hDlg); break;
02282                         }
02283                         ApplyParamObj(param->object->param);
02284                         break;
02285                 case IDC_EDIT_VALUE:
02286                         if (!activeParam) break;
02287                         switch (param->object->type) {
02288                         case CBASE_INDEX_INT: valueEditors.VE_int->elem.Get_Value(hDlg); valueEditors.VE_int->elem.MAJ_Specials(hDlg); valueEditors.VE_int->elem.MAJ_Slider(hDlg); valueEditors.VE_int->elem.MAJ_TreeItem(param->hWndParent); break;
02289                         case CBASE_INDEX_FLOAT: valueEditors.VE_float->elem.Get_Value(hDlg); valueEditors.VE_float->elem.MAJ_Specials(hDlg); valueEditors.VE_float->elem.MAJ_Slider(hDlg); valueEditors.VE_float->elem.MAJ_TreeItem(param->hWndParent); break;
02290                         case CBASE_INDEX_DOUBLE: valueEditors.VE_double->elem.Get_Value(hDlg); valueEditors.VE_double->elem.MAJ_Specials(hDlg); valueEditors.VE_double->elem.MAJ_Slider(hDlg); valueEditors.VE_double->elem.MAJ_TreeItem(param->hWndParent); break;
02291                         }
02292                         ApplyParamObj(param->object->param);
02293                         break;
02294                 case IDC_BUTTON_MOVE:
02295                         if (!activeParam) break;
02296                         param->independant = TRUE;
02297                         Button_Enable(GetDlgItem(hDlg,IDC_BUTTON_MOVE),FALSE);
02298                         ParamValueEditor *paramIndependant = param->GetCopy();
02299                         SetWindowLongPtr(hDlg, GWLP_USERDATA , (LONG_PTR)paramIndependant);
02300                         break;
02301                 }
02302                 break;
02303         }
02304         return FALSE;
02305 }
Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: valueEditor.h File Reference

valueEditor.h File Reference

Gestion de l'editeur de valeur. More...

#include "3d.h"
#include "face.h"
#include "MyObject.h"
#include "control.h"

Go to the source code of this file.

Classes

class | ParamValueEditor
Parametre des valeurs de l'editeur. More...

class | ValueNamed
Valeur nomée pour le mode Editor. More...

class | ValueEditor
valeur de l'element en saisie More...

class | ValueEditors
Gestion des l'ensemble de ValueEditor. More...

Defines

#define | SPEED 6
#define | SPEED_PAD 45
#define | SPEED_DELTA 1
#define | SPEED_PAD_DELTA 10
#define | DELTA_FOG 0.5
#define | CBase_VE_int BaseObj<ValueEditor_int,CBASE_INDEX_INT>
#define | CBase_VE_float BaseObj<ValueEditor_float,CBASE_INDEX_FLOAT>
#define | CBase_VE_double BaseObj<ValueEditor_double,CBASE_INDEX_DOUBLE>

Typedefs

typedef ValueEditor< GLint > | ValueEditor_int
typedef ValueEditor< GLfloat > | ValueEditor_float
typedef ValueEditor< GLdouble > | ValueEditor_double

Functions

LRESULT WINAPI | DebugStructProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
LRESULT WINAPI | ValueEditorProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)

Detailed Description

Gestion de l'editeur de valeur.

Definition in file valueEditor.h.

Define Documentation

#define CBase_VE_double BaseObj<ValueEditor_double,CBASE_INDEX_DOUBLE>

Definition at line 117 of file valueEditor.h.

Referenced by ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), ValueEditors::MakeTexturesStruct(), and ValueEditors::Update().

#define CBase_VE_float BaseObj<ValueEditor_float,CBASE_INDEX_FLOAT>

Definition at line 116 of file valueEditor.h.

Referenced by ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), ValueEditors::MakeTexturesStruct(), and ValueEditors::Update().

#define CBase_VE_int BaseObj<ValueEditor_int,CBASE_INDEX_INT>

Definition at line 115 of file valueEditor.h.

Referenced by ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), ValueEditors::MakeTexturesStruct(), and ValueEditors::Update().

#define DELTA_FOG 0.5

Definition at line 37 of file valueEditor.h.

#define SPEED 6

Definition at line 33 of file valueEditor.h.

#define SPEED_DELTA 1

Definition at line 35 of file valueEditor.h.

#define SPEED_PAD 45

Definition at line 34 of file valueEditor.h.

#define SPEED_PAD_DELTA 10

Definition at line 36 of file valueEditor.h.

Typedef Documentation

typedef ValueEditor<GLdouble> ValueEditor_double

Definition at line 113 of file valueEditor.h.

typedef ValueEditor<GLfloat> ValueEditor_float

Definition at line 112 of file valueEditor.h.

typedef ValueEditor<GLint> ValueEditor_int

Definition at line 111 of file valueEditor.h.

Function Documentation

LRESULT WINAPI DebugStructProc | ( | HWND | hDlg,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Definition at line 1932 of file valueEditor.cpp.

References BOOL(), CBASE_INDEX_DOUBLE, CBASE_INDEX_FLOAT, CBASE_INDEX_INT, ce, MyTreeNode< T >::elem, FaceNode, Primitive::Find(), Control::Find(), MyTree< Face >::GetRoot(), ControlEngine::hInst, MyList< Object >::i, IDC_RADIO_CONTROLS_MODE, IDC_RADIO_FACE_MODE, IDC_RADIO_FACEMODE, IDC_TREE_ELEM, IDC_TREE_STRUCT, IDD_VALUE_EDITOR, ValueEditors::list, ValueEditor< T >::MAJ(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), ValueEditors::MakeTexturesStruct(), ControlEngine::masterContainer, num, NUM_SELECTED_FONT, NUM_SELECTED_LIGHT, NUM_SELECTED_NOTHING, NUM_SELECTED_PICKING, NUM_SELECTED_RENDER, NUM_SELECTED_TEXTURE, param, ControlEngine::primitive, SetDeltaWindowPos(), ShowMouse(), Primitive::tree, TreeView_ExpandAll_Level(), ValueEditors::Update(), ValueEditorProc(), valueEditors, ValueEditors::VE_double, ValueEditors::VE_float, and ValueEditors::VE_int.

Referenced by Univers::OnKeyDown(), and SysTrayProc().

LRESULT WINAPI ValueEditorProc | ( | HWND | hDlg,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Todo:
mecanisme de desalocation a faire (mais peut inportant pour le moment)

Definition at line 2156 of file valueEditor.cpp.

References ApplyParamObj(), BOOL(), CBASE_INDEX_DOUBLE, CBASE_INDEX_FLOAT, CBASE_INDEX_INT, GetDeltaWindow(), GLint(), IDC_BUTTON_MAX, IDC_BUTTON_MIDS, IDC_BUTTON_MIN, IDC_BUTTON_MOVE, IDC_COMBO_SPECIALS, IDC_EDIT_VALUE, IDC_SLIDER_PAD, IDC_STATIC1, IDC_STATIC2, IDC_STATIC_VARIABLE, num, param, SetDeltaWindowPos(), SetDeltaWindowSize(), ShowMouse(), ValueEditors::Update(), valueEditors, ValueEditors::VE_double, ValueEditors::VE_float, and ValueEditors::VE_int.

Referenced by DebugStructProc().

Generated on Fri Aug 20 19:20:54 2004 for 3d Controls by doxygen 1.3.6


3d Controls: valueEditor.h Source File

valueEditor.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_VALUE_EDITOR
00024 #define INCLUDE_VALUE_EDITOR
00025
00026 #pragma warning( disable : 4355 ) // pour les this codebase
00027
00028 #include "3d.h"
00029 #include "face.h"
00030 #include "MyObject.h"
00031 #include "control.h"
00032
00033 #define SPEED                   6
00034 #define SPEED_PAD               45
00035 #define SPEED_DELTA             1
00036 #define SPEED_PAD_DELTA 10
00037 #define DELTA_FOG       0.5
00038
00042 class ParamValueEditor
00043 {
00044 public:
00045         Object *object; // valueEditor
00046         RECT rect;
00047         HWND hWndParent;
00048         BOOL independant;
00049
00050         ParamValueEditor();
00051         void Zero();
00052         void operator=(ParamValueEditor &source);
00053         ParamValueEditor * GetCopy();
00054 };
00055
00059 template <class T>
00060 class ValueNamed
00061 {
00062 public:
00063         T value;
00064         MyString description;
00065
00066 public:
00067         ValueNamed();
00068         void Zero();
00069         void operator=(ValueNamed &source);
00070         void Set (T _value,char *_desciption);
00071 };
00072
00076 template <class T>
00077 class ValueEditor
00078 {
00079 public:
00080         MyString valueText;
00081         MyString info;
00082         MyString variable;
00083         T minValue;
00084         T maxValue;
00085         T *value;
00086         HTREEITEM hItem;
00087
00088         typedef ValueNamed<T> ValueNamedCour;
00089         MyList<ValueNamedCour> specials;
00090
00091 public:
00092         ValueEditor();
00093         void Zero();
00094         void operator=(ValueEditor &source);
00095         ValueEditor<T> * GetCopy();
00096         void InterpretedText(MyString &interpretedText,char *_valueText=NULL,T *_value=NULL);
00097         void Set(char *_variable,char *_info,T _minValue,T _maxValue,HTREEITEM _hItem);
00098         void MAJ_TreeItem(HWND hWnd);
00099         void AddSpecial(T special,char *description);
00100         void MAJ_ValueMin(HWND hWnd);
00101         void MAJ_ValueMax(HWND hWnd);
00102         void MAJ_ValueMids(HWND hWnd);
00103         void MAJ_Value(HWND hWnd,T _value,BOOL refresh=TRUE);
00104         void MAJ_Value(HWND hWnd);
00105         void Get_Value(HWND hWnd);
00106         void MAJ_Slider(HWND hWnd);
00107         void MAJ_Specials(HWND hWnd,int num=-1);
00108         void MAJ(HWND hWnd);
00109 };
00110
00111 typedef ValueEditor<GLint> ValueEditor_int;
00112 typedef ValueEditor<GLfloat> ValueEditor_float;
00113 typedef ValueEditor<GLdouble> ValueEditor_double;
00114
00115 #define CBase_VE_int BaseObj<ValueEditor_int,CBASE_INDEX_INT>
00116 #define CBase_VE_float BaseObj<ValueEditor_float,CBASE_INDEX_FLOAT>
00117 #define CBase_VE_double BaseObj<ValueEditor_double,CBASE_INDEX_DOUBLE>
00118
00122 class ValueEditors
00123 {
00124 public:
00125         MyList<Object> list;
00126         CBase_VE_double *VE_double;
00127         CBase_VE_int *VE_int;
00128         CBase_VE_float *VE_float;
00129
00130 public:
00131         ValueEditors();
00132         ~ValueEditors();
00133         void Update(Object *object);
00134         void Zero();
00135         void MakeDebugStruct(HWND hWnd);
00136         void MakeDebugFaceStruct(HWND hWnd);
00137         void MakeDebugFaceStruct(HWND hWnd,HTREEITEM hParentItem,FaceNode *node);
00138         void MakeDebugControlStruct(HWND hWnd);
00139         void MakeDebugControlStruct(HWND hWnd,HTREEITEM hParentItem,FaceNode *node,int oldIdControl);
00140         void MakeRenderStruct(HWND hWnd);
00141         void MakeLightsStruct(HWND hWnd);
00142         void MakeTexturesStruct(HWND hWnd);
00143         void MakeFontsStruct(HWND hWnd);
00144         BOOL MakeElemFaceStruct(HWND hWnd,FaceNode *node);
00145         void MakeElemControlStruct(HWND hWnd,Control *control);
00146
00147 };
00148
00149 LRESULT WINAPI DebugStructProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
00150 LRESULT WINAPI ValueEditorProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
00151
00152 #endif
Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: variable.h File Reference

variable.h File Reference

Variable active ou pas. More...

Go to the source code of this file.

Classes

class Enabling
Variable active ou pas. More...

Detailed Description

Variable active ou pas.

Definition in file variable.h.

Generated on Fri Aug 20 19:20:54 2004 for 3d Controls by doxygen 1.3.6


3d Controls: variable.h Source File

variable.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_VARIABLE_H
00024 #define INCLUDE_VARIABLE_H
00025
00030 template <class T> class Enabling
00031 {
00032 public:
00033         BOOL isEnable;
00034         T elem;
00035
00036         Enabling()
00037         {
00038                 isEnable = FALSE;
00039         }
00040
00041         void operator=(T source)
00042         {
00043                 Set(source);
00044         }
00045
00046         void Set(T source)
00047         {
00048                 elem = source;
00049                 isEnable = TRUE;
00050         }
00051
00052         void ToString(MyString &source)
00053         {
00054                 source<<"[enable,value]: "<<isEnable<<" , "<<elem;
00055         }
00056 };
00057
00058 #endif
Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: wglext.h File Reference

wglext.h File Reference

Go to the source code of this file.

Defines

#define | GLAPI extern
#define | WGL_WGLEXT_VERSION 4
#define | WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
#define | WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002
#define | WGL_DEPTH_BUFFER_BIT_ARB 0x00000004
#define | WGL_STENCIL_BUFFER_BIT_ARB 0x00000008
#define | WGL_SAMPLE_BUFFERS_ARB 0x2041
#define | WGL_SAMPLES_ARB 0x2042
#define | WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
#define | WGL_DRAW_TO_WINDOW_ARB 0x2001
#define | WGL_DRAW_TO_BITMAP_ARB 0x2002
#define | WGL_ACCELERATION_ARB 0x2003
#define | WGL_NEED_PALETTE_ARB 0x2004
#define | WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
#define | WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
#define | WGL_SWAP_METHOD_ARB 0x2007
#define | WGL_NUMBER_OVERLAYS_ARB 0x2008
#define | WGL_NUMBER_UNDERLAYS_ARB 0x2009
#define | WGL_TRANSPARENT_ARB 0x200A
#define | WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
#define | WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
#define | WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
#define | WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
#define | WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
#define | WGL_SHARE_DEPTH_ARB 0x200C
#define | WGL_SHARE_STENCIL_ARB 0x200D
#define | WGL_SHARE_ACCUM_ARB 0x200E
#define | WGL_SUPPORT_GDI_ARB 0x200F
#define | WGL_SUPPORT_OPENGL_ARB 0x2010
#define | WGL_DOUBLE_BUFFER_ARB 0x2011
#define | WGL_STEREO_ARB 0x2012
#define | WGL_PIXEL_TYPE_ARB 0x2013
#define | WGL_COLOR_BITS_ARB 0x2014
#define | WGL_RED_BITS_ARB 0x2015
#define | WGL_RED_SHIFT_ARB 0x2016
#define | WGL_GREEN_BITS_ARB 0x2017
#define | WGL_GREEN_SHIFT_ARB 0x2018
#define | WGL_BLUE_BITS_ARB 0x2019
#define | WGL_BLUE_SHIFT_ARB 0x201A
#define | WGL_ALPHA_BITS_ARB 0x201B
#define | WGL_ALPHA_SHIFT_ARB 0x201C
#define | WGL_ACCUM_BITS_ARB 0x201D
#define | WGL_ACCUM_RED_BITS_ARB 0x201E
#define | WGL_ACCUM_GREEN_BITS_ARB 0x201F
#define | WGL_ACCUM_BLUE_BITS_ARB 0x2020
#define | WGL_ACCUM_ALPHA_BITS_ARB 0x2021
#define | WGL_DEPTH_BITS_ARB 0x2022
#define | WGL_STENCIL_BITS_ARB 0x2023
#define | WGL_AUX_BUFFERS_ARB 0x2024
#define | WGL_NO_ACCELERATION_ARB 0x2025
#define | WGL_GENERIC_ACCELERATION_ARB 0x2026
#define | WGL_FULL_ACCELERATION_ARB 0x2027
#define | WGL_SWAP_EXCHANGE_ARB 0x2028
#define | WGL_SWAP_COPY_ARB 0x2029
#define | WGL_SWAP_UNDEFINED_ARB 0x202A
#define | WGL_TYPE_RGBA_ARB 0x202B
#define | WGL_TYPE_COLORINDEX_ARB 0x202C
#define | ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
#define | ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
#define | WGL_DRAW_TO_PBUFFER_ARB 0x202D
#define | WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
#define | WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
#define | WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
#define | WGL_PBUFFER_LARGEST_ARB 0x2033
#define | WGL_PBUFFER_WIDTH_ARB 0x2034
#define | WGL_PBUFFER_HEIGHT_ARB 0x2035
#define | WGL_PBUFFER_LOST_ARB 0x2036
#define | WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
#define | WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
#define | WGL_TEXTURE_FORMAT_ARB 0x2072
#define | WGL_TEXTURE_TARGET_ARB 0x2073
#define | WGL_MIPMAP_TEXTURE_ARB 0x2074
#define | WGL_TEXTURE_RGB_ARB 0x2075
#define | WGL_TEXTURE_RGBA_ARB 0x2076
#define | WGL_NO_TEXTURE_ARB 0x2077
#define | WGL_TEXTURE_CUBE_MAP_ARB 0x2078
#define | WGL_TEXTURE_1D_ARB 0x2079
#define | WGL_TEXTURE_2D_ARB 0x207A
#define | WGL_MIPMAP_LEVEL_ARB 0x207B
#define | WGL_CUBE_MAP_FACE_ARB 0x207C
#define | WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
#define | WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
#define | WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
#define | WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
#define | WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
#define | WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
#define | WGL_FRONT_LEFT_ARB 0x2083
#define | WGL_FRONT_RIGHT_ARB 0x2084
#define | WGL_BACK_LEFT_ARB 0x2085
#define | WGL_BACK_RIGHT_ARB 0x2086
#define | WGL_AUX0_ARB 0x2087
#define | WGL_AUX1_ARB 0x2088
#define | WGL_AUX2_ARB 0x2089
#define | WGL_AUX3_ARB 0x208A
#define | WGL_AUX4_ARB 0x208B
#define | WGL_AUX5_ARB 0x208C
#define | WGL_AUX6_ARB 0x208D
#define | WGL_AUX7_ARB 0x208E
#define | WGL_AUX8_ARB 0x208F
#define | WGL_AUX9_ARB 0x2090
#define | ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
#define | WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
#define | WGL_DRAW_TO_WINDOW_EXT 0x2001
#define | WGL_DRAW_TO_BITMAP_EXT 0x2002
#define | WGL_ACCELERATION_EXT 0x2003
#define | WGL_NEED_PALETTE_EXT 0x2004
#define | WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
#define | WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
#define | WGL_SWAP_METHOD_EXT 0x2007
#define | WGL_NUMBER_OVERLAYS_EXT 0x2008
#define | WGL_NUMBER_UNDERLAYS_EXT 0x2009
#define | WGL_TRANSPARENT_EXT 0x200A
#define | WGL_TRANSPARENT_VALUE_EXT 0x200B
#define | WGL_SHARE_DEPTH_EXT 0x200C
#define | WGL_SHARE_STENCIL_EXT 0x200D
#define | WGL_SHARE_ACCUM_EXT 0x200E
#define | WGL_SUPPORT_GDI_EXT 0x200F
#define | WGL_SUPPORT_OPENGL_EXT 0x2010
#define | WGL_DOUBLE_BUFFER_EXT 0x2011
#define | WGL_STEREO_EXT 0x2012
#define | WGL_PIXEL_TYPE_EXT 0x2013
#define | WGL_COLOR_BITS_EXT 0x2014
#define | WGL_RED_BITS_EXT 0x2015
#define | WGL_RED_SHIFT_EXT 0x2016
#define | WGL_GREEN_BITS_EXT 0x2017
#define | WGL_GREEN_SHIFT_EXT 0x2018
#define | WGL_BLUE_BITS_EXT 0x2019
#define | WGL_BLUE_SHIFT_EXT 0x201A
#define | WGL_ALPHA_BITS_EXT 0x201B
#define | WGL_ALPHA_SHIFT_EXT 0x201C
#define | WGL_ACCUM_BITS_EXT 0x201D
#define | WGL_ACCUM_RED_BITS_EXT 0x201E
#define | WGL_ACCUM_GREEN_BITS_EXT 0x201F
#define | WGL_ACCUM_BLUE_BITS_EXT 0x2020
#define | WGL_ACCUM_ALPHA_BITS_EXT 0x2021
#define | WGL_DEPTH_BITS_EXT 0x2022
#define | WGL_STENCIL_BITS_EXT 0x2023
#define | WGL_AUX_BUFFERS_EXT 0x2024
#define | WGL_NO_ACCELERATION_EXT 0x2025
#define | WGL_GENERIC_ACCELERATION_EXT 0x2026
#define | WGL_FULL_ACCELERATION_EXT 0x2027
#define | WGL_SWAP_EXCHANGE_EXT 0x2028
#define | WGL_SWAP_COPY_EXT 0x2029
#define | WGL_SWAP_UNDEFINED_EXT 0x202A
#define | WGL_TYPE_RGBA_EXT 0x202B
#define | WGL_TYPE_COLORINDEX_EXT 0x202C
#define | WGL_DRAW_TO_PBUFFER_EXT 0x202D
#define | WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
#define | WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
#define | WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
#define | WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
#define | WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
#define | WGL_PBUFFER_LARGEST_EXT 0x2033
#define | WGL_PBUFFER_WIDTH_EXT 0x2034
#define | WGL_PBUFFER_HEIGHT_EXT 0x2035
#define | WGL_DEPTH_FLOAT_EXT 0x2040
#define | WGL_SAMPLE_BUFFERS_3DFX 0x2060
#define | WGL_SAMPLES_3DFX 0x2061
#define | WGL_SAMPLE_BUFFERS_EXT 0x2041
#define | WGL_SAMPLES_EXT 0x2042
#define | WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
#define | WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
#define | WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
#define | WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
#define | WGL_GAMMA_TABLE_SIZE_I3D 0x204E
#define | WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
#define | WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
#define | WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D 0x2045
#define | WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D 0x2046
#define | WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D 0x2047
#define | WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
#define | WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
#define | WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
#define | WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
#define | WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
#define | WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
#define | WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
#define | WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
#define | WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
#define | WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
#define | WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
#define | WGL_DEPTH_COMPONENT_NV 0x20A7
#define | WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
#define | WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
#define | WGL_TEXTURE_RECTANGLE_NV 0x20A2
#define | WGL_FLOAT_COMPONENTS_NV 0x20B0
#define | WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
#define | WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
#define | WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
#define | WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
#define | WGL_TEXTURE_FLOAT_R_NV 0x20B5
#define | WGL_TEXTURE_FLOAT_RG_NV 0x20B6
#define | WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
#define | WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
#define | WGL_ARB_buffer_region 1
#define | WGL_ARB_multisample 1
#define | WGL_ARB_extensions_string 1
#define | WGL_ARB_pixel_format 1
#define | WGL_ARB_make_current_read 1
#define | WGL_ARB_pbuffer 1
#define | WGL_ARB_render_texture 1
#define | WGL_EXT_display_color_table 1
#define | WGL_EXT_extensions_string 1
#define | WGL_EXT_make_current_read 1
#define | WGL_EXT_pbuffer 1
#define | WGL_EXT_pixel_format 1
#define | WGL_EXT_swap_control 1
#define | WGL_EXT_depth_float 1
#define | WGL_NV_vertex_array_range 1
#define | WGL_3DFX_multisample 1
#define | WGL_EXT_multisample 1
#define | WGL_OML_sync_control 1
#define | WGL_I3D_digital_video_control 1
#define | WGL_I3D_gamma 1
#define | WGL_I3D_genlock 1
#define | WGL_I3D_image_buffer 1
#define | WGL_I3D_swap_frame_lock 1
#define | WGL_I3D_swap_frame_usage 1

Typedefs

typedef int | iLayerPlane
typedef int UINT | uType
typedef int | x
typedef int int | y
typedef int int int | width
typedef int int int int | height
typedef int int int int int | xSrc
typedef int int int int int
int 		ySrc
typedef const char *WINAPI * | PFNWGLGETEXTENSIONSSTRINGARBPROC (HDC hdc)
typedef int | iPixelFormat
typedef int int UINT | nAttributes
typedef int int UINT const
int * 		piAttributes
typedef int int UINT const
int int * 		piValues
typedef int int UINT const
int FLOAT * 		pfValues
typedef const int * | piAttribIList
typedef const int const FLOAT * | pfAttribFList
typedef const int const FLOAT
UINT 		nMaxFormats
typedef const int const FLOAT
UINT int * 		piFormats
typedef const int const FLOAT
UINT int UINT * 		nNumFormats
typedef HDC | hReadDC
typedef HDC HGLRC | hglrc
typedef int int | iWidth
typedef int int int | iHeight
typedef int int int const
int * 		piAttribList
typedef HDC | hDC
typedef int | iAttribute
typedef int int * | piValue
typedef int | iBuffer
typedef GLuint | length
typedef const char *WINAPI * | PFNWGLGETEXTENSIONSSTRINGEXTPROC (void)
typedef void *WINAPI * | PFNWGLALLOCATEMEMORYNVPROC (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority)
typedef INT64 * | ust
typedef INT64 INT64 * | msc
typedef INT64 INT64 INT64 * | sbc
typedef INT32 * | numerator
typedef INT32 INT32 * | denominator
typedef INT64 | target_msc
typedef INT64 INT64 | divisor
typedef INT64 INT64 INT64 | remainder
typedef int | fuPlanes
typedef INT64 | target_sbc
typedef int | iEntries
typedef int USHORT * | puRed
typedef int USHORT USHORT * | puGreen
typedef int USHORT USHORT
USHORT * 		puBlue
typedef BOOL * | pFlag
typedef UINT | uSource
typedef UINT | uEdge
typedef UINT | uRate
typedef UINT | uDelay
typedef UINT * | uMaxLineDelay
typedef UINT UINT * | uMaxPixelDelay
typedef DWORD | dwSize
typedef DWORD UINT | uFlags
typedef LPVOID | pAddress
typedef const HANDLE * | pEvent
typedef const HANDLE const
LPVOID const DWORD * 		pSize
typedef const HANDLE const
LPVOID const DWORD UINT 		count
typedef DWORD * | pMissedFrames
typedef DWORD float * | pLastMissedUsage

Functions

DECLARE_HANDLE (HPBUFFERARB)
DECLARE_HANDLE (HPBUFFEREXT)
typedef | HANDLE (WINAPI *PFNWGLCREATEBUFFERREGIONARBPROC)(HDC hDC
typedef | VOID (WINAPI *PFNWGLDELETEBUFFERREGIONARBPROC)(HANDLE hRegion)
typedef | BOOL (WINAPI *PFNWGLSAVEBUFFERREGIONARBPROC)(HANDLE hRegion
typedef | HDC (WINAPI *PFNWGLGETCURRENTREADDCARBPROC)(void)
typedef | HPBUFFERARB (WINAPI *PFNWGLCREATEPBUFFERARBPROC)(HDC hDC
typedef | int (WINAPI *PFNWGLRELEASEPBUFFERDCARBPROC)(HPBUFFERARB hPbuffer
typedef | GLboolean (WINAPI *PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC)(GLushort id)
typedef | HPBUFFEREXT (WINAPI *PFNWGLCREATEPBUFFEREXTPROC)(HDC hDC
typedef | void (WINAPI *PFNWGLFREEMEMORYNVPROC)(void *pointer)
typedef | INT64 (WINAPI *PFNWGLSWAPBUFFERSMSCOMLPROC)(HDC hdc
typedef | LPVOID (WINAPI *PFNWGLCREATEIMAGEBUFFERI3DPROC)(HDC hDC

Define Documentation

#define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054

Definition at line 125 of file wglext.h.

#define ERROR_INVALID_PIXEL_TYPE_ARB 0x2043

Definition at line 124 of file wglext.h.

#define ERROR_INVALID_PIXEL_TYPE_EXT 0x2043

Definition at line 176 of file wglext.h.

#define GLAPI extern

Definition at line 46 of file wglext.h.

#define WGL_3DFX_multisample 1

Definition at line 482 of file wglext.h.

#define WGL_ACCELERATION_ARB 0x2003

Definition at line 75 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_ACCELERATION_EXT 0x2003

Definition at line 183 of file wglext.h.

#define WGL_ACCUM_ALPHA_BITS_ARB 0x2021

Definition at line 109 of file wglext.h.

#define WGL_ACCUM_ALPHA_BITS_EXT 0x2021

Definition at line 213 of file wglext.h.

#define WGL_ACCUM_BITS_ARB 0x201D

Definition at line 105 of file wglext.h.

#define WGL_ACCUM_BITS_EXT 0x201D

Definition at line 209 of file wglext.h.

#define WGL_ACCUM_BLUE_BITS_ARB 0x2020

Definition at line 108 of file wglext.h.

#define WGL_ACCUM_BLUE_BITS_EXT 0x2020

Definition at line 212 of file wglext.h.

#define WGL_ACCUM_GREEN_BITS_ARB 0x201F

Definition at line 107 of file wglext.h.

#define WGL_ACCUM_GREEN_BITS_EXT 0x201F

Definition at line 211 of file wglext.h.

#define WGL_ACCUM_RED_BITS_ARB 0x201E

Definition at line 106 of file wglext.h.

#define WGL_ACCUM_RED_BITS_EXT 0x201E

Definition at line 210 of file wglext.h.

#define WGL_ALPHA_BITS_ARB 0x201B

Definition at line 103 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_ALPHA_BITS_EXT 0x201B

Definition at line 207 of file wglext.h.

#define WGL_ALPHA_SHIFT_ARB 0x201C

Definition at line 104 of file wglext.h.

#define WGL_ALPHA_SHIFT_EXT 0x201C

Definition at line 208 of file wglext.h.

#define WGL_ARB_buffer_region 1

Definition at line 322 of file wglext.h.

#define WGL_ARB_extensions_string 1

Definition at line 340 of file wglext.h.

#define WGL_ARB_make_current_read 1

Definition at line 360 of file wglext.h.

#define WGL_ARB_multisample 1

Definition at line 336 of file wglext.h.

#define WGL_ARB_pbuffer 1

Definition at line 370 of file wglext.h.

#define WGL_ARB_pixel_format 1

Definition at line 348 of file wglext.h.

#define WGL_ARB_render_texture 1

Definition at line 386 of file wglext.h.

#define WGL_AUX0_ARB 0x2087

Definition at line 163 of file wglext.h.

#define WGL_AUX1_ARB 0x2088

Definition at line 164 of file wglext.h.

#define WGL_AUX2_ARB 0x2089

Definition at line 165 of file wglext.h.

#define WGL_AUX3_ARB 0x208A

Definition at line 166 of file wglext.h.

#define WGL_AUX4_ARB 0x208B

Definition at line 167 of file wglext.h.

#define WGL_AUX5_ARB 0x208C

Definition at line 168 of file wglext.h.

#define WGL_AUX6_ARB 0x208D

Definition at line 169 of file wglext.h.

#define WGL_AUX7_ARB 0x208E

Definition at line 170 of file wglext.h.

#define WGL_AUX8_ARB 0x208F

Definition at line 171 of file wglext.h.

#define WGL_AUX9_ARB 0x2090

Definition at line 172 of file wglext.h.

#define WGL_AUX_BUFFERS_ARB 0x2024

Definition at line 112 of file wglext.h.

#define WGL_AUX_BUFFERS_EXT 0x2024

Definition at line 216 of file wglext.h.

#define WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002

Definition at line 58 of file wglext.h.

#define WGL_BACK_LEFT_ARB 0x2085

Definition at line 161 of file wglext.h.

#define WGL_BACK_RIGHT_ARB 0x2086

Definition at line 162 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3

Definition at line 286 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4

Definition at line 287 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1

Definition at line 301 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2

Definition at line 302 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3

Definition at line 303 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4

Definition at line 304 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0

Definition at line 294 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1

Definition at line 295 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070

Definition at line 140 of file wglext.h.

#define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071

Definition at line 141 of file wglext.h.

#define WGL_BLUE_BITS_ARB 0x2019

Definition at line 101 of file wglext.h.

#define WGL_BLUE_BITS_EXT 0x2019

Definition at line 205 of file wglext.h.

#define WGL_BLUE_SHIFT_ARB 0x201A

Definition at line 102 of file wglext.h.

#define WGL_BLUE_SHIFT_EXT 0x201A

Definition at line 206 of file wglext.h.

#define WGL_COLOR_BITS_ARB 0x2014

Definition at line 96 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_COLOR_BITS_EXT 0x2014

Definition at line 200 of file wglext.h.

#define WGL_CUBE_MAP_FACE_ARB 0x207C

Definition at line 152 of file wglext.h.

#define WGL_DEPTH_BITS_ARB 0x2022

Definition at line 110 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_DEPTH_BITS_EXT 0x2022

Definition at line 214 of file wglext.h.

#define WGL_DEPTH_BUFFER_BIT_ARB 0x00000004

Definition at line 59 of file wglext.h.

#define WGL_DEPTH_COMPONENT_NV 0x20A7

Definition at line 290 of file wglext.h.

#define WGL_DEPTH_FLOAT_EXT 0x2040

Definition at line 240 of file wglext.h.

#define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5

Definition at line 288 of file wglext.h.

#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050

Definition at line 254 of file wglext.h.

#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051

Definition at line 255 of file wglext.h.

#define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052

Definition at line 256 of file wglext.h.

#define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053

Definition at line 257 of file wglext.h.

#define WGL_DOUBLE_BUFFER_ARB 0x2011

Definition at line 93 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_DOUBLE_BUFFER_EXT 0x2011

Definition at line 197 of file wglext.h.

#define WGL_DRAW_TO_BITMAP_ARB 0x2002

Definition at line 74 of file wglext.h.

#define WGL_DRAW_TO_BITMAP_EXT 0x2002

Definition at line 182 of file wglext.h.

#define WGL_DRAW_TO_PBUFFER_ARB 0x202D

Definition at line 129 of file wglext.h.

#define WGL_DRAW_TO_PBUFFER_EXT 0x202D

Definition at line 228 of file wglext.h.

#define WGL_DRAW_TO_WINDOW_ARB 0x2001

Definition at line 73 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_DRAW_TO_WINDOW_EXT 0x2001

Definition at line 181 of file wglext.h.

#define WGL_EXT_depth_float 1

Definition at line 468 of file wglext.h.

#define WGL_EXT_display_color_table 1

Definition at line 398 of file wglext.h.

#define WGL_EXT_extensions_string 1

Definition at line 412 of file wglext.h.

#define WGL_EXT_make_current_read 1

Definition at line 420 of file wglext.h.

#define WGL_EXT_multisample 1

Definition at line 486 of file wglext.h.

#define WGL_EXT_pbuffer 1

Definition at line 430 of file wglext.h.

#define WGL_EXT_pixel_format 1

Definition at line 446 of file wglext.h.

#define WGL_EXT_swap_control 1

Definition at line 458 of file wglext.h.

#define WGL_FLOAT_COMPONENTS_NV 0x20B0

Definition at line 300 of file wglext.h.

#define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001

Definition at line 57 of file wglext.h.

#define WGL_FRONT_LEFT_ARB 0x2083

Definition at line 159 of file wglext.h.

#define WGL_FRONT_RIGHT_ARB 0x2084

Definition at line 160 of file wglext.h.

#define WGL_FULL_ACCELERATION_ARB 0x2027

Definition at line 115 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_FULL_ACCELERATION_EXT 0x2027

Definition at line 219 of file wglext.h.

#define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F

Definition at line 262 of file wglext.h.

#define WGL_GAMMA_TABLE_SIZE_I3D 0x204E

Definition at line 261 of file wglext.h.

#define WGL_GENERIC_ACCELERATION_ARB 0x2026

Definition at line 114 of file wglext.h.

#define WGL_GENERIC_ACCELERATION_EXT 0x2026

Definition at line 218 of file wglext.h.

#define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049

Definition at line 271 of file wglext.h.

#define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048

Definition at line 270 of file wglext.h.

#define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C

Definition at line 274 of file wglext.h.

#define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A

Definition at line 272 of file wglext.h.

#define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B

Definition at line 273 of file wglext.h.

#define WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D 0x2046

Definition at line 268 of file wglext.h.

#define WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D 0x2045

Definition at line 267 of file wglext.h.

#define WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D 0x2047

Definition at line 269 of file wglext.h.

#define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044

Definition at line 266 of file wglext.h.

#define WGL_GREEN_BITS_ARB 0x2017

Definition at line 99 of file wglext.h.

#define WGL_GREEN_BITS_EXT 0x2017

Definition at line 203 of file wglext.h.

#define WGL_GREEN_SHIFT_ARB 0x2018

Definition at line 100 of file wglext.h.

#define WGL_GREEN_SHIFT_EXT 0x2018

Definition at line 204 of file wglext.h.

#define WGL_I3D_digital_video_control 1

Definition at line 508 of file wglext.h.

#define WGL_I3D_gamma 1

Definition at line 518 of file wglext.h.

#define WGL_I3D_genlock 1

Definition at line 532 of file wglext.h.

#define WGL_I3D_image_buffer 1

Definition at line 562 of file wglext.h.

#define WGL_I3D_swap_frame_lock 1

Definition at line 576 of file wglext.h.

#define WGL_I3D_swap_frame_usage 1

Definition at line 590 of file wglext.h.

#define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002

Definition at line 279 of file wglext.h.

#define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001

Definition at line 278 of file wglext.h.

#define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030

Definition at line 132 of file wglext.h.

#define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030

Definition at line 231 of file wglext.h.

#define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E

Definition at line 130 of file wglext.h.

#define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E

Definition at line 229 of file wglext.h.

#define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F

Definition at line 131 of file wglext.h.

#define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F

Definition at line 230 of file wglext.h.

#define WGL_MIPMAP_LEVEL_ARB 0x207B

Definition at line 151 of file wglext.h.

#define WGL_MIPMAP_TEXTURE_ARB 0x2074

Definition at line 144 of file wglext.h.

#define WGL_NEED_PALETTE_ARB 0x2004

Definition at line 76 of file wglext.h.

#define WGL_NEED_PALETTE_EXT 0x2004

Definition at line 184 of file wglext.h.

#define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005

Definition at line 77 of file wglext.h.

#define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005

Definition at line 185 of file wglext.h.

#define WGL_NO_ACCELERATION_ARB 0x2025

Definition at line 113 of file wglext.h.

#define WGL_NO_ACCELERATION_EXT 0x2025

Definition at line 217 of file wglext.h.

#define WGL_NO_TEXTURE_ARB 0x2077

Definition at line 147 of file wglext.h.

#define WGL_NUMBER_OVERLAYS_ARB 0x2008

Definition at line 80 of file wglext.h.

#define WGL_NUMBER_OVERLAYS_EXT 0x2008

Definition at line 188 of file wglext.h.

#define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000

Definition at line 72 of file wglext.h.

#define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000

Definition at line 180 of file wglext.h.

#define WGL_NUMBER_UNDERLAYS_ARB 0x2009

Definition at line 81 of file wglext.h.

#define WGL_NUMBER_UNDERLAYS_EXT 0x2009

Definition at line 189 of file wglext.h.

#define WGL_NV_vertex_array_range 1

Definition at line 472 of file wglext.h.

#define WGL_OML_sync_control 1

Definition at line 490 of file wglext.h.

#define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032

Definition at line 233 of file wglext.h.

#define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031

Definition at line 232 of file wglext.h.

#define WGL_PBUFFER_HEIGHT_ARB 0x2035

Definition at line 135 of file wglext.h.

#define WGL_PBUFFER_HEIGHT_EXT 0x2035

Definition at line 236 of file wglext.h.

#define WGL_PBUFFER_LARGEST_ARB 0x2033

Definition at line 133 of file wglext.h.

#define WGL_PBUFFER_LARGEST_EXT 0x2033

Definition at line 234 of file wglext.h.

#define WGL_PBUFFER_LOST_ARB 0x2036

Definition at line 136 of file wglext.h.

#define WGL_PBUFFER_WIDTH_ARB 0x2034

Definition at line 134 of file wglext.h.

#define WGL_PBUFFER_WIDTH_EXT 0x2034

Definition at line 235 of file wglext.h.

#define WGL_PIXEL_TYPE_ARB 0x2013

Definition at line 95 of file wglext.h.

#define WGL_PIXEL_TYPE_EXT 0x2013

Definition at line 199 of file wglext.h.

#define WGL_RED_BITS_ARB 0x2015

Definition at line 97 of file wglext.h.

#define WGL_RED_BITS_EXT 0x2015

Definition at line 201 of file wglext.h.

#define WGL_RED_SHIFT_ARB 0x2016

Definition at line 98 of file wglext.h.

#define WGL_RED_SHIFT_EXT 0x2016

Definition at line 202 of file wglext.h.

#define WGL_SAMPLE_BUFFERS_3DFX 0x2060

Definition at line 244 of file wglext.h.

#define WGL_SAMPLE_BUFFERS_ARB 0x2041

Definition at line 64 of file wglext.h.

#define WGL_SAMPLE_BUFFERS_EXT 0x2041

Definition at line 249 of file wglext.h.

#define WGL_SAMPLES_3DFX 0x2061

Definition at line 245 of file wglext.h.

#define WGL_SAMPLES_ARB 0x2042

Definition at line 65 of file wglext.h.

#define WGL_SAMPLES_EXT 0x2042

Definition at line 250 of file wglext.h.

#define WGL_SHARE_ACCUM_ARB 0x200E

Definition at line 90 of file wglext.h.

#define WGL_SHARE_ACCUM_EXT 0x200E

Definition at line 194 of file wglext.h.

#define WGL_SHARE_DEPTH_ARB 0x200C

Definition at line 88 of file wglext.h.

#define WGL_SHARE_DEPTH_EXT 0x200C

Definition at line 192 of file wglext.h.

#define WGL_SHARE_STENCIL_ARB 0x200D

Definition at line 89 of file wglext.h.

#define WGL_SHARE_STENCIL_EXT 0x200D

Definition at line 193 of file wglext.h.

#define WGL_STENCIL_BITS_ARB 0x2023

Definition at line 111 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_STENCIL_BITS_EXT 0x2023

Definition at line 215 of file wglext.h.

#define WGL_STENCIL_BUFFER_BIT_ARB 0x00000008

Definition at line 60 of file wglext.h.

#define WGL_STEREO_ARB 0x2012

Definition at line 94 of file wglext.h.

#define WGL_STEREO_EXT 0x2012

Definition at line 198 of file wglext.h.

#define WGL_SUPPORT_GDI_ARB 0x200F

Definition at line 91 of file wglext.h.

#define WGL_SUPPORT_GDI_EXT 0x200F

Definition at line 195 of file wglext.h.

#define WGL_SUPPORT_OPENGL_ARB 0x2010

Definition at line 92 of file wglext.h.

Referenced by InitMultisample(), and OpenGL_InitMultisample().

#define WGL_SUPPORT_OPENGL_EXT 0x2010

Definition at line 196 of file wglext.h.

#define WGL_SWAP_COPY_ARB 0x2029

Definition at line 117 of file wglext.h.

#define WGL_SWAP_COPY_EXT 0x2029

Definition at line 221 of file wglext.h.

#define WGL_SWAP_EXCHANGE_ARB 0x2028

Definition at line 116 of file wglext.h.

#define WGL_SWAP_EXCHANGE_EXT 0x2028

Definition at line 220 of file wglext.h.

#define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006

Definition at line 78 of file wglext.h.

#define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006

Definition at line 186 of file wglext.h.

#define WGL_SWAP_METHOD_ARB 0x2007

Definition at line 79 of file wglext.h.

#define WGL_SWAP_METHOD_EXT 0x2007

Definition at line 187 of file wglext.h.

#define WGL_SWAP_UNDEFINED_ARB 0x202A

Definition at line 118 of file wglext.h.

#define WGL_SWAP_UNDEFINED_EXT 0x202A

Definition at line 222 of file wglext.h.

#define WGL_TEXTURE_1D_ARB 0x2079

Definition at line 149 of file wglext.h.

#define WGL_TEXTURE_2D_ARB 0x207A

Definition at line 150 of file wglext.h.

#define WGL_TEXTURE_CUBE_MAP_ARB 0x2078

Definition at line 148 of file wglext.h.

#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E

Definition at line 154 of file wglext.h.

#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080

Definition at line 156 of file wglext.h.

#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082

Definition at line 158 of file wglext.h.

#define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D

Definition at line 153 of file wglext.h.

#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F

Definition at line 155 of file wglext.h.

#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081

Definition at line 157 of file wglext.h.

#define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6

Definition at line 289 of file wglext.h.

#define WGL_TEXTURE_FLOAT_R_NV 0x20B5

Definition at line 305 of file wglext.h.

#define WGL_TEXTURE_FLOAT_RG_NV 0x20B6

Definition at line 306 of file wglext.h.

#define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7

Definition at line 307 of file wglext.h.

#define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8

Definition at line 308 of file wglext.h.

#define WGL_TEXTURE_FORMAT_ARB 0x2072

Definition at line 142 of file wglext.h.

#define WGL_TEXTURE_RECTANGLE_NV 0x20A2

Definition at line 296 of file wglext.h.

#define WGL_TEXTURE_RGB_ARB 0x2075

Definition at line 145 of file wglext.h.

#define WGL_TEXTURE_RGBA_ARB 0x2076

Definition at line 146 of file wglext.h.

#define WGL_TEXTURE_TARGET_ARB 0x2073

Definition at line 143 of file wglext.h.

#define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A

Definition at line 86 of file wglext.h.

#define WGL_TRANSPARENT_ARB 0x200A

Definition at line 82 of file wglext.h.

#define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039

Definition at line 85 of file wglext.h.

#define WGL_TRANSPARENT_EXT 0x200A

Definition at line 190 of file wglext.h.

#define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038

Definition at line 84 of file wglext.h.

#define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B

Definition at line 87 of file wglext.h.

#define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037

Definition at line 83 of file wglext.h.

#define WGL_TRANSPARENT_VALUE_EXT 0x200B

Definition at line 191 of file wglext.h.

#define WGL_TYPE_COLORINDEX_ARB 0x202C

Definition at line 120 of file wglext.h.

#define WGL_TYPE_COLORINDEX_EXT 0x202C

Definition at line 224 of file wglext.h.

#define WGL_TYPE_RGBA_ARB 0x202B

Definition at line 119 of file wglext.h.

#define WGL_TYPE_RGBA_EXT 0x202B

Definition at line 223 of file wglext.h.

#define WGL_WGLEXT_VERSION 4

Definition at line 54 of file wglext.h.

Typedef Documentation

typedef const LPVOID UINT count

Definition at line 571 of file wglext.h.

typedef INT32 INT32* denominator

Definition at line 500 of file wglext.h.

typedef INT64 INT64 divisor

Definition at line 501 of file wglext.h.

typedef DWORD dwSize

Definition at line 569 of file wglext.h.

Referenced by MyRegistry::GetValueSize(), and MyRegistry::TestValue().

typedef int fuPlanes

Definition at line 502 of file wglext.h.

typedef HDC hDC

Definition at line 380 of file wglext.h.

Referenced by Object3D::DrawText(), and ControlEngine::Start().

typedef int int int int height

Definition at line 331 of file wglext.h.

typedef HDC HGLRC hglrc

Definition at line 365 of file wglext.h.

typedef HDC hReadDC

Definition at line 365 of file wglext.h.

typedef int iAttribute

Definition at line 382 of file wglext.h.

typedef int iBuffer

Definition at line 392 of file wglext.h.

typedef int iEntries

Definition at line 527 of file wglext.h.

typedef int int int iHeight

Definition at line 378 of file wglext.h.

typedef int int iLayerPlane

Definition at line 329 of file wglext.h.

typedef int iPixelFormat

Definition at line 354 of file wglext.h.

typedef int int iWidth

Definition at line 378 of file wglext.h.

typedef GLuint length

Definition at line 406 of file wglext.h.

typedef INT64 INT64 INT64 * msc

Definition at line 499 of file wglext.h.

typedef int int UINT nAttributes

Definition at line 354 of file wglext.h.

typedef const int const FLOAT UINT nMaxFormats

Definition at line 356 of file wglext.h.

typedef const int const FLOAT UINT int UINT * nNumFormats

Definition at line 356 of file wglext.h.

typedef INT32* numerator

Definition at line 500 of file wglext.h.

typedef const LPVOID * pAddress

Definition at line 570 of file wglext.h.

typedef const HANDLE* pEvent

Definition at line 571 of file wglext.h.

typedef const int const FLOAT * pfAttribFList

Definition at line 356 of file wglext.h.

typedef BOOL* pFlag

Definition at line 549 of file wglext.h.

typedef void* WINAPI* PFNWGLALLOCATEMEMORYNVPROC(GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority)

Definition at line 477 of file wglext.h.

typedef const char* WINAPI* PFNWGLGETEXTENSIONSSTRINGARBPROC(HDC hdc)

Definition at line 344 of file wglext.h.

typedef const char* WINAPI* PFNWGLGETEXTENSIONSSTRINGEXTPROC(void)

Definition at line 416 of file wglext.h.

typedef int int UINT int FLOAT * pfValues

Definition at line 355 of file wglext.h.

typedef const int * piAttribIList

Definition at line 356 of file wglext.h.

typedef int int int const int * piAttribList

Definition at line 378 of file wglext.h.

typedef int int UINT int * piAttributes

Definition at line 354 of file wglext.h.

typedef const int const FLOAT UINT int * piFormats

Definition at line 356 of file wglext.h.

typedef int const int * piValue

Definition at line 382 of file wglext.h.

typedef int int UINT int int * piValues

Definition at line 354 of file wglext.h.

typedef DWORD float* pLastMissedUsage

Definition at line 600 of file wglext.h.

typedef DWORD* pMissedFrames

Definition at line 600 of file wglext.h.

typedef const HANDLE const LPVOID const DWORD* pSize

Definition at line 571 of file wglext.h.

typedef int const USHORT const USHORT const USHORT * puBlue

Definition at line 527 of file wglext.h.

typedef int const USHORT const USHORT * puGreen

Definition at line 527 of file wglext.h.

typedef int const USHORT * puRed

Definition at line 527 of file wglext.h.

typedef INT64 INT64 INT64 remainder

Definition at line 501 of file wglext.h.

typedef INT64 INT64 INT64 INT64 * sbc

Definition at line 499 of file wglext.h.

typedef INT64 target_msc

Definition at line 501 of file wglext.h.

typedef INT64 target_sbc

Definition at line 504 of file wglext.h.

typedef UINT * uDelay

Definition at line 556 of file wglext.h.

typedef UINT * uEdge

Definition at line 552 of file wglext.h.

typedef DWORD UINT uFlags

Definition at line 569 of file wglext.h.

typedef UINT* uMaxLineDelay

Definition at line 558 of file wglext.h.

typedef UINT UINT* uMaxPixelDelay

Definition at line 558 of file wglext.h.

typedef UINT * uRate

Definition at line 554 of file wglext.h.

typedef UINT * uSource

Definition at line 550 of file wglext.h.

typedef INT64 INT64 * ust

Definition at line 499 of file wglext.h.

typedef int UINT uType

Definition at line 329 of file wglext.h.

Referenced by MyRegistry::GetValue(), MyRegistry::GetValueType(), and MyRegistry::TestValue().

typedef int int int width

Definition at line 331 of file wglext.h.

typedef int x

Definition at line 331 of file wglext.h.

typedef int int int int int xSrc

Definition at line 332 of file wglext.h.

typedef int int y

Definition at line 331 of file wglext.h.

typedef int int int int int int ySrc

Definition at line 332 of file wglext.h.

Function Documentation

typedef BOOL ( WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC )

Referenced by TaskWindow::Add(), MyString::Add(), Region::AddElem(), MyString::AddFormat(), Texture::AddText(), Text3D::AnalyseGram(), Text3D::AnalyseLex(), Texture::Begin(), Recorder::BeginRecord(), MyListIterator< ParsingWord >::Bind(), Timer::Call(), Control::ChangeDirection(), Region::Compute(), Text3D::ComputeLayout(), Face::ConfigDynamicLayout(), MyString::CopyTo(), TrackButton::Create(), Screen::Create(), MyRegistry::Create(), Slider::Current(), DebugStructProc(), Texture::Delete(), Recorder::Delete(), MyString::Delete(), Control::Delete(), MyRegistry::DeleteKey(), MyRegistry::DeleteValue(), Text3D::Draw(), BasicText3D::Draw(), Primitive::Draw(), Curve::Draw(), ControlEngine::Draw(), ControlEngine::DrawBackGround(), ControlEngine::DrawFPS(), ControlEngine::DrawOrigineRepere(), Text3D::DrawPicking(), BasicText3D::DrawPicking(), Object3D::DrawVectorMinMax(), Cursor::DrawVectorMinMax(), Texture::End(), Picking::FindContainer(), MyTreeNode< Face >::FindOnParent(), MyDebug::FindServer(), MyString::Format(), MyString::FormatToLower(), MyString::FormatToNoCtrl(), MyString::FormatToUpper(), Texture::FromBitmap(), Texture::FromFile(), Texture::FromNull(), Texture::FromText(), MyStack< FaceNode * >::FrontPush(), LinearEqu2D< T >::GetCrossPtFromHorizontal(), LinearEqu2D< T >::GetCrossPtFromLine(), LinearEqu2D< T >::GetCrossPtFromVertical(), GetDeltaWindow(), Texture::GetPixel(), Button::GetPush(), Point2D< T >::GetRelativePtOn2Lines(), Point2D< T >::GetRelativePtOnQuadrilatere(), GetSpinPos(), StateKey::GetState(), GetTrigoSens(), MyRegistry::GetValue(), MyRegistry::GetValueExpand(), MyRegistry::GetValueMulti(), GetWindowPos(), GetWindowSize(), MyListIterator< ParsingWord >::GoAfter(), MyListIterator< ParsingWord >::GoBefore(), MyListIterator< ParsingWord >::GoFirst(), MyListIterator< ParsingWord >::GoIndex(), MyListIterator< ParsingWord >::GoLast(), MyListIterator< ParsingWord >::GoTo(), Timer::Init(), ControlEngine::InitFont(), ControlEngine::InitLights(), Curve::IsActive(), MyRegistry::IsAutoCreate(), MyString::IsBeginWith(), Layout< GLdouble >::IsDynamic(), MyString::IsEmpty(), Light::IsEnabled(), Point3D< LayoutDouble >::IsEqual(), LinearEqu2D< T >::IsHorizontal(), Light::IsLighting(), Point3D< LayoutDouble >::IsNotNull(), MyListIterator< ParsingWord >::IsOnFirst(), MyListIterator< ParsingWord >::IsOnLast(), Point2D< T >::IsOnLine(), Point2D< T >::IsOnQuadrilatere(), Point2D< T >::IsOnRectangle(), Point2D< T >::IsOnSegment(), Point3D< T >::IsOnTriangle(), Point2D< T >::IsOnTriangle(), LinearEqu2D< T >::IsPoint(), IsPow2(), Timer::IsRuning(), LinearEqu2D< T >::IsVertical(), MyString::IsVisibleText(), MyList< ParsingWord >::Load(), ValueEditor< T >::MAJ(), ValueEditor< T >::MAJ_Slider(), ValueEditor< T >::MAJ_Specials(), TextTexture::MajTexture(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), Slider::Max(), Slider::Min(), MyListIterator< ParsingWord >::More(), Control::Move(), MyListIterator< ParsingWord >::MoveFirst(), MyListIterator< ParsingWord >::MoveLast(), MyTreeNode< Face >::MoveTo(), Control::MoveTo(), Screen::MsgInfoType(), NextSubKey(), Region::NormalizeSens(), ResizingAndRotateControl::OnHover(), Univers::OnKeyDown(), Title::OnKeyDown(), Button::OnPushUp(), MyRegistry::Open(), OpenGL_ExtensionSupported(), OpenGL_TestError(), Point2D< LayoutDouble >::operator!=(), MyString::operator!=(), Coordonate< GLfloat >::operator!=(), MyListIterator< ParsingWord >::operator++(), MyListIterator< ParsingWord >::operator--(), MyRegistry::operator=(), MyListIterator< ParsingWord >::operator=(), Point3D< LayoutDouble >::operator==(), Point2D< LayoutDouble >::operator==(), Point1D< T >::operator==(), MyString::operator==(), Coordonate< GLfloat >::operator==(), Timer::Pause(), ControlEngine::Proc(), ControlEngine::ProjectObjectToWindow(), ControlEngine::ProjectWindowToObject(), MyStack< FaceNode * >::Push(), ControlEngine::Push(), ControlEngine::RegionAdd(), ControlEngine::RegionGet(), Primitive::ReOrderForBlending(), Control::ReSize(), TaskWindow::Restore(), Timer::Resume(), Control::Rotate(), Control::RotateQuaternion(), Control::RotateTo(), Run(), MyList< ParsingWord >::Save(), Control::ScreenMove(), Control::ScreenMoveTo(), ControlEngine::ScreenShot(), MyDebug::Send(), MyDebug::SendEvent(), MyDebug::SendLine(), Curve::Set(), Array< T >::Set(), SetDeltaWindowPos(), SetDeltaWindowSize(), SetFullScreen(), Screen::SetFullScreen(), Texture::SetPixel(), SetSpinPos(), SetSpinRange(), Screen::Setup(), SetWindowSize(), Control::Size(), Timer::Start(), Slider::Step(), Timer::Stop(), Timer::StopAndUnBind(), MyString::SubStringBeforToken(), MyListIterator< ParsingWord >::Supr(), MyTreeNode< Face >::SuprChilds(), MyListIterator< ParsingWord >::SuprFirst(), MyListIterator< ParsingWord >::SuprIndex(), MyListIterator< ParsingWord >::SuprLast(), MyTree< Face >::SuprNode(), MyTreeNode< Face >::SuprOnParent(), Screen::SwapBuffers(), Picking::Test(), MyRegistry::TestKey(), MyRegistry::TestValue(), ToggleCheck(), Region::Use(), ValueEditorProc(), Control::XDockCenter(), Control::XDockLeft(), Control::XDockRight(), Control::YDockBottom(), Control::YDockCenter(), and Control::YDockTop().

DECLARE_HANDLE ( HPBUFFEREXT )

DECLARE_HANDLE ( HPBUFFERARB )

typedef GLboolean ( WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC )

typedef HANDLE ( WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC )

typedef HDC ( WINAPI * PFNWGLGETCURRENTREADDCARBPROC )

Referenced by Texture::AddText(), DrawTextOnFirstPlan(), InitMultisample(), CMyMenu::MeasureItem(), OpenGL_ExtensionSupported(), OpenGL_InitMultisample(), ControlEngine::ScreenShot(), and WGLisExtensionSupported().

typedef HPBUFFERARB ( WINAPI * PFNWGLCREATEPBUFFERARBPROC )

typedef HPBUFFEREXT ( WINAPI * PFNWGLCREATEPBUFFEREXTPROC )

typedef int ( WINAPI * PFNWGLGETSWAPINTERVALEXTPROC )

typedef INT64 ( WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC )

typedef LPVOID ( WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC )

typedef void ( WINAPI * PFNWGLFREEMEMORYNVPROC )

typedef VOID ( WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC )

Generated on Fri Aug 20 19:20:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: wglext.h Source File

wglext.h

Go to the documentation of this file.
00001 #ifndef __wglext_h_
00002 #define __wglext_h_
00003
00004 #ifdef __cplusplus
00005 extern "C" {
00006 #endif
00007
00008         /*
00009         ** License Applicability. Except to the extent portions of this file are
00010         ** made subject to an alternative license as permitted in the SGI Free
00011         ** Software License B, Version 1.1 (the "License"), the contents of this
00012         ** file are subject only to the provisions of the License. You may not use
00013         ** this file except in compliance with the License. You may obtain a copy
00014         ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
00015         ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
00016         **
00017         ** http://oss.sgi.com/projects/FreeB
00018         **
00019         ** Note that, as provided in the License, the Software is distributed on an
00020         ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
00021         ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
00022         ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
00023         ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
00024         **
00025         ** Original Code. The Original Code is: OpenGL Sample Implementation,
00026         ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
00027         ** Inc. The Original Code is Copyright (c) 1991-2002 Silicon Graphics, Inc.
00028         ** Copyright in any portions created by third parties is as indicated
00029         ** elsewhere herein. All Rights Reserved.
00030         **
00031         ** Additional Notice Provisions: This software was created using the
00032         ** OpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has
00033         ** not been independently verified as being compliant with the OpenGL(R)
00034         ** version 1.2.1 Specification.
00035         */
00036
00037 #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__)
00038 #define WIN32_LEAN_AND_MEAN 1
00039 #include <windows.h>
00040 #endif
00041
00042 #ifndef APIENTRY
00043 #define APIENTRY
00044 #endif
00045 #ifndef GLAPI
00046 #define GLAPI extern
00047 #endif
00048
00049         /*************************************************************/
00050
00051         /* Header file version number */
00052         /* wglext.h last updated 2002/03/22 */
00053         /* Current version at http://oss.sgi.com/projects/ogl-sample/registry/ */
00054 #define WGL_WGLEXT_VERSION 4
00055
00056 #ifndef WGL_ARB_buffer_region
00057 #define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
00058 #define WGL_BACK_COLOR_BUFFER_BIT_ARB  0x00000002
00059 #define WGL_DEPTH_BUFFER_BIT_ARB       0x00000004
00060 #define WGL_STENCIL_BUFFER_BIT_ARB     0x00000008
00061 #endif
00062
00063 #ifndef WGL_ARB_multisample
00064 #define WGL_SAMPLE_BUFFERS_ARB         0x2041
00065 #define WGL_SAMPLES_ARB                0x2042
00066 #endif
00067
00068 #ifndef WGL_ARB_extensions_string
00069 #endif
00070
00071 #ifndef WGL_ARB_pixel_format
00072 #define WGL_NUMBER_PIXEL_FORMATS_ARB   0x2000
00073 #define WGL_DRAW_TO_WINDOW_ARB         0x2001
00074 #define WGL_DRAW_TO_BITMAP_ARB         0x2002
00075 #define WGL_ACCELERATION_ARB           0x2003
00076 #define WGL_NEED_PALETTE_ARB           0x2004
00077 #define WGL_NEED_SYSTEM_PALETTE_ARB    0x2005
00078 #define WGL_SWAP_LAYER_BUFFERS_ARB     0x2006
00079 #define WGL_SWAP_METHOD_ARB            0x2007
00080 #define WGL_NUMBER_OVERLAYS_ARB        0x2008
00081 #define WGL_NUMBER_UNDERLAYS_ARB       0x2009
00082 #define WGL_TRANSPARENT_ARB            0x200A
00083 #define WGL_TRANSPARENT_RED_VALUE_ARB  0x2037
00084 #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
00085 #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
00086 #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
00087 #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
00088 #define WGL_SHARE_DEPTH_ARB            0x200C
00089 #define WGL_SHARE_STENCIL_ARB          0x200D
00090 #define WGL_SHARE_ACCUM_ARB            0x200E
00091 #define WGL_SUPPORT_GDI_ARB            0x200F
00092 #define WGL_SUPPORT_OPENGL_ARB         0x2010
00093 #define WGL_DOUBLE_BUFFER_ARB          0x2011
00094 #define WGL_STEREO_ARB                 0x2012
00095 #define WGL_PIXEL_TYPE_ARB             0x2013
00096 #define WGL_COLOR_BITS_ARB             0x2014
00097 #define WGL_RED_BITS_ARB               0x2015
00098 #define WGL_RED_SHIFT_ARB              0x2016
00099 #define WGL_GREEN_BITS_ARB             0x2017
00100 #define WGL_GREEN_SHIFT_ARB            0x2018
00101 #define WGL_BLUE_BITS_ARB              0x2019
00102 #define WGL_BLUE_SHIFT_ARB             0x201A
00103 #define WGL_ALPHA_BITS_ARB             0x201B
00104 #define WGL_ALPHA_SHIFT_ARB            0x201C
00105 #define WGL_ACCUM_BITS_ARB             0x201D
00106 #define WGL_ACCUM_RED_BITS_ARB         0x201E
00107 #define WGL_ACCUM_GREEN_BITS_ARB       0x201F
00108 #define WGL_ACCUM_BLUE_BITS_ARB        0x2020
00109 #define WGL_ACCUM_ALPHA_BITS_ARB       0x2021
00110 #define WGL_DEPTH_BITS_ARB             0x2022
00111 #define WGL_STENCIL_BITS_ARB           0x2023
00112 #define WGL_AUX_BUFFERS_ARB            0x2024
00113 #define WGL_NO_ACCELERATION_ARB        0x2025
00114 #define WGL_GENERIC_ACCELERATION_ARB   0x2026
00115 #define WGL_FULL_ACCELERATION_ARB      0x2027
00116 #define WGL_SWAP_EXCHANGE_ARB          0x2028
00117 #define WGL_SWAP_COPY_ARB              0x2029
00118 #define WGL_SWAP_UNDEFINED_ARB         0x202A
00119 #define WGL_TYPE_RGBA_ARB              0x202B
00120 #define WGL_TYPE_COLORINDEX_ARB        0x202C
00121 #endif
00122
00123 #ifndef WGL_ARB_make_current_read
00124 #define ERROR_INVALID_PIXEL_TYPE_ARB   0x2043
00125 #define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
00126 #endif
00127
00128 #ifndef WGL_ARB_pbuffer
00129 #define WGL_DRAW_TO_PBUFFER_ARB        0x202D
00130 #define WGL_MAX_PBUFFER_PIXELS_ARB     0x202E
00131 #define WGL_MAX_PBUFFER_WIDTH_ARB      0x202F
00132 #define WGL_MAX_PBUFFER_HEIGHT_ARB     0x2030
00133 #define WGL_PBUFFER_LARGEST_ARB        0x2033
00134 #define WGL_PBUFFER_WIDTH_ARB          0x2034
00135 #define WGL_PBUFFER_HEIGHT_ARB         0x2035
00136 #define WGL_PBUFFER_LOST_ARB           0x2036
00137 #endif
00138
00139 #ifndef WGL_ARB_render_texture
00140 #define WGL_BIND_TO_TEXTURE_RGB_ARB    0x2070
00141 #define WGL_BIND_TO_TEXTURE_RGBA_ARB   0x2071
00142 #define WGL_TEXTURE_FORMAT_ARB         0x2072
00143 #define WGL_TEXTURE_TARGET_ARB         0x2073
00144 #define WGL_MIPMAP_TEXTURE_ARB         0x2074
00145 #define WGL_TEXTURE_RGB_ARB            0x2075
00146 #define WGL_TEXTURE_RGBA_ARB           0x2076
00147 #define WGL_NO_TEXTURE_ARB             0x2077
00148 #define WGL_TEXTURE_CUBE_MAP_ARB       0x2078
00149 #define WGL_TEXTURE_1D_ARB             0x2079
00150 #define WGL_TEXTURE_2D_ARB             0x207A
00151 #define WGL_MIPMAP_LEVEL_ARB           0x207B
00152 #define WGL_CUBE_MAP_FACE_ARB          0x207C
00153 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
00154 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
00155 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
00156 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
00157 #define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
00158 #define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
00159 #define WGL_FRONT_LEFT_ARB             0x2083
00160 #define WGL_FRONT_RIGHT_ARB            0x2084
00161 #define WGL_BACK_LEFT_ARB              0x2085
00162 #define WGL_BACK_RIGHT_ARB             0x2086
00163 #define WGL_AUX0_ARB                   0x2087
00164 #define WGL_AUX1_ARB                   0x2088
00165 #define WGL_AUX2_ARB                   0x2089
00166 #define WGL_AUX3_ARB                   0x208A
00167 #define WGL_AUX4_ARB                   0x208B
00168 #define WGL_AUX5_ARB                   0x208C
00169 #define WGL_AUX6_ARB                   0x208D
00170 #define WGL_AUX7_ARB                   0x208E
00171 #define WGL_AUX8_ARB                   0x208F
00172 #define WGL_AUX9_ARB                   0x2090
00173 #endif
00174
00175 #ifndef WGL_EXT_make_current_read
00176 #define ERROR_INVALID_PIXEL_TYPE_EXT   0x2043
00177 #endif
00178
00179 #ifndef WGL_EXT_pixel_format
00180 #define WGL_NUMBER_PIXEL_FORMATS_EXT   0x2000
00181 #define WGL_DRAW_TO_WINDOW_EXT         0x2001
00182 #define WGL_DRAW_TO_BITMAP_EXT         0x2002
00183 #define WGL_ACCELERATION_EXT           0x2003
00184 #define WGL_NEED_PALETTE_EXT           0x2004
00185 #define WGL_NEED_SYSTEM_PALETTE_EXT    0x2005
00186 #define WGL_SWAP_LAYER_BUFFERS_EXT     0x2006
00187 #define WGL_SWAP_METHOD_EXT            0x2007
00188 #define WGL_NUMBER_OVERLAYS_EXT        0x2008
00189 #define WGL_NUMBER_UNDERLAYS_EXT       0x2009
00190 #define WGL_TRANSPARENT_EXT            0x200A
00191 #define WGL_TRANSPARENT_VALUE_EXT      0x200B
00192 #define WGL_SHARE_DEPTH_EXT            0x200C
00193 #define WGL_SHARE_STENCIL_EXT          0x200D
00194 #define WGL_SHARE_ACCUM_EXT            0x200E
00195 #define WGL_SUPPORT_GDI_EXT            0x200F
00196 #define WGL_SUPPORT_OPENGL_EXT         0x2010
00197 #define WGL_DOUBLE_BUFFER_EXT          0x2011
00198 #define WGL_STEREO_EXT                 0x2012
00199 #define WGL_PIXEL_TYPE_EXT             0x2013
00200 #define WGL_COLOR_BITS_EXT             0x2014
00201 #define WGL_RED_BITS_EXT               0x2015
00202 #define WGL_RED_SHIFT_EXT              0x2016
00203 #define WGL_GREEN_BITS_EXT             0x2017
00204 #define WGL_GREEN_SHIFT_EXT            0x2018
00205 #define WGL_BLUE_BITS_EXT              0x2019
00206 #define WGL_BLUE_SHIFT_EXT             0x201A
00207 #define WGL_ALPHA_BITS_EXT             0x201B
00208 #define WGL_ALPHA_SHIFT_EXT            0x201C
00209 #define WGL_ACCUM_BITS_EXT             0x201D
00210 #define WGL_ACCUM_RED_BITS_EXT         0x201E
00211 #define WGL_ACCUM_GREEN_BITS_EXT       0x201F
00212 #define WGL_ACCUM_BLUE_BITS_EXT        0x2020
00213 #define WGL_ACCUM_ALPHA_BITS_EXT       0x2021
00214 #define WGL_DEPTH_BITS_EXT             0x2022
00215 #define WGL_STENCIL_BITS_EXT           0x2023
00216 #define WGL_AUX_BUFFERS_EXT            0x2024
00217 #define WGL_NO_ACCELERATION_EXT        0x2025
00218 #define WGL_GENERIC_ACCELERATION_EXT   0x2026
00219 #define WGL_FULL_ACCELERATION_EXT      0x2027
00220 #define WGL_SWAP_EXCHANGE_EXT          0x2028
00221 #define WGL_SWAP_COPY_EXT              0x2029
00222 #define WGL_SWAP_UNDEFINED_EXT         0x202A
00223 #define WGL_TYPE_RGBA_EXT              0x202B
00224 #define WGL_TYPE_COLORINDEX_EXT        0x202C
00225 #endif
00226
00227 #ifndef WGL_EXT_pbuffer
00228 #define WGL_DRAW_TO_PBUFFER_EXT        0x202D
00229 #define WGL_MAX_PBUFFER_PIXELS_EXT     0x202E
00230 #define WGL_MAX_PBUFFER_WIDTH_EXT      0x202F
00231 #define WGL_MAX_PBUFFER_HEIGHT_EXT     0x2030
00232 #define WGL_OPTIMAL_PBUFFER_WIDTH_EXT  0x2031
00233 #define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
00234 #define WGL_PBUFFER_LARGEST_EXT        0x2033
00235 #define WGL_PBUFFER_WIDTH_EXT          0x2034
00236 #define WGL_PBUFFER_HEIGHT_EXT         0x2035
00237 #endif
00238
00239 #ifndef WGL_EXT_depth_float
00240 #define WGL_DEPTH_FLOAT_EXT            0x2040
00241 #endif
00242
00243 #ifndef WGL_3DFX_multisample
00244 #define WGL_SAMPLE_BUFFERS_3DFX        0x2060
00245 #define WGL_SAMPLES_3DFX               0x2061
00246 #endif
00247
00248 #ifndef WGL_EXT_multisample
00249 #define WGL_SAMPLE_BUFFERS_EXT         0x2041
00250 #define WGL_SAMPLES_EXT                0x2042
00251 #endif
00252
00253 #ifndef WGL_I3D_digital_video_control
00254 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
00255 #define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
00256 #define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
00257 #define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
00258 #endif
00259
00260 #ifndef WGL_I3D_gamma
00261 #define WGL_GAMMA_TABLE_SIZE_I3D       0x204E
00262 #define WGL_GAMMA_EXCLUDE_DESKTOP_I3D  0x204F
00263 #endif
00264
00265 #ifndef WGL_I3D_genlock
00266 #define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
00267 #define WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D 0x2045
00268 #define WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D 0x2046
00269 #define WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D 0x2047
00270 #define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
00271 #define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
00272 #define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
00273 #define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
00274 #define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
00275 #endif
00276
00277 #ifndef WGL_I3D_image_buffer
00278 #define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
00279 #define WGL_IMAGE_BUFFER_LOCK_I3D      0x00000002
00280 #endif
00281
00282 #ifndef WGL_I3D_swap_frame_lock
00283 #endif
00284
00285 #ifndef WGL_NV_render_depth_texture
00286 #define WGL_BIND_TO_TEXTURE_DEPTH_NV   0x20A3
00287 #define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
00288 #define WGL_DEPTH_TEXTURE_FORMAT_NV    0x20A5
00289 #define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
00290 #define WGL_DEPTH_COMPONENT_NV         0x20A7
00291 #endif
00292
00293 #ifndef WGL_NV_render_texture_rectangle
00294 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
00295 #define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
00296 #define WGL_TEXTURE_RECTANGLE_NV       0x20A2
00297 #endif
00298
00299 #ifndef WGL_NV_float_buffer
00300 #define WGL_FLOAT_COMPONENTS_NV        0x20B0
00301 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
00302 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
00303 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
00304 #define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
00305 #define WGL_TEXTURE_FLOAT_R_NV         0x20B5
00306 #define WGL_TEXTURE_FLOAT_RG_NV        0x20B6
00307 #define WGL_TEXTURE_FLOAT_RGB_NV       0x20B7
00308 #define WGL_TEXTURE_FLOAT_RGBA_NV      0x20B8
00309 #endif
00310
00311
00312         /*************************************************************/
00313
00314 #ifndef WGL_ARB_pbuffer
00315         DECLARE_HANDLE(HPBUFFERARB);
00316 #endif
00317 #ifndef WGL_EXT_pbuffer
00318         DECLARE_HANDLE(HPBUFFEREXT);
00319 #endif
00320
00321 #ifndef WGL_ARB_buffer_region
00322 #define WGL_ARB_buffer_region 1
00323 #ifdef WGL_WGLEXT_PROTOTYPES
00324         extern HANDLE WINAPI wglCreateBufferRegionARB (HDC, int, UINT);
00325         extern VOID WINAPI wglDeleteBufferRegionARB (HANDLE);
00326         extern BOOL WINAPI wglSaveBufferRegionARB (HANDLE, int, int, int, int);
00327         extern BOOL WINAPI wglRestoreBufferRegionARB (HANDLE, int, int, int, int, int, int);
00328 #endif /* WGL_WGLEXT_PROTOTYPES */
00329         typedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
00330         typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
00331         typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
00332         typedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
00333 #endif
00334
00335 #ifndef WGL_ARB_multisample
00336 #define WGL_ARB_multisample 1
00337 #endif
00338
00339 #ifndef WGL_ARB_extensions_string
00340 #define WGL_ARB_extensions_string 1
00341 #ifdef WGL_WGLEXT_PROTOTYPES
00342         extern const char * WINAPI wglGetExtensionsStringARB (HDC);
00343 #endif /* WGL_WGLEXT_PROTOTYPES */
00344         typedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
00345 #endif
00346
00347 #ifndef WGL_ARB_pixel_format
00348 #define WGL_ARB_pixel_format 1
00349 #ifdef WGL_WGLEXT_PROTOTYPES
00350         extern BOOL WINAPI wglGetPixelFormatAttribivARB (HDC, int, int, UINT, const int *, int *);
00351         extern BOOL WINAPI wglGetPixelFormatAttribfvARB (HDC, int, int, UINT, const int *, FLOAT *);
00352         extern BOOL WINAPI wglChoosePixelFormatARB (HDC, const int *, const FLOAT *, UINT, int *, UINT *);
00353 #endif /* WGL_WGLEXT_PROTOTYPES */
00354         typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
00355         typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
00356         typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
00357 #endif
00358
00359 #ifndef WGL_ARB_make_current_read
00360 #define WGL_ARB_make_current_read 1
00361 #ifdef WGL_WGLEXT_PROTOTYPES
00362         extern BOOL WINAPI wglMakeContextCurrentARB (HDC, HDC, HGLRC);
00363         extern HDC WINAPI wglGetCurrentReadDCARB (void);
00364 #endif /* WGL_WGLEXT_PROTOTYPES */
00365         typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
00366         typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (void);
00367 #endif
00368
00369 #ifndef WGL_ARB_pbuffer
00370 #define WGL_ARB_pbuffer 1
00371 #ifdef WGL_WGLEXT_PROTOTYPES
00372         extern HPBUFFERARB WINAPI wglCreatePbufferARB (HDC, int, int, int, const int *);
00373         extern HDC WINAPI wglGetPbufferDCARB (HPBUFFERARB);
00374         extern int WINAPI wglReleasePbufferDCARB (HPBUFFERARB, HDC);
00375         extern BOOL WINAPI wglDestroyPbufferARB (HPBUFFERARB);
00376         extern BOOL WINAPI wglQueryPbufferARB (HPBUFFERARB, int, int *);
00377 #endif /* WGL_WGLEXT_PROTOTYPES */
00378         typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
00379         typedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
00380         typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
00381         typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
00382         typedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
00383 #endif
00384
00385 #ifndef WGL_ARB_render_texture
00386 #define WGL_ARB_render_texture 1
00387 #ifdef WGL_WGLEXT_PROTOTYPES
00388         extern BOOL WINAPI wglBindTexImageARB (HPBUFFERARB, int);
00389         extern BOOL WINAPI wglReleaseTexImageARB (HPBUFFERARB, int);
00390         extern BOOL WINAPI wglSetPbufferAttribARB (HPBUFFERARB, const int *);
00391 #endif /* WGL_WGLEXT_PROTOTYPES */
00392         typedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
00393         typedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
00394         typedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int *piAttribList);
00395 #endif
00396
00397 #ifndef WGL_EXT_display_color_table
00398 #define WGL_EXT_display_color_table 1
00399 #ifdef WGL_WGLEXT_PROTOTYPES
00400         extern GLboolean WINAPI wglCreateDisplayColorTableEXT (GLushort);
00401         extern GLboolean WINAPI wglLoadDisplayColorTableEXT (const GLushort *, GLuint);
00402         extern GLboolean WINAPI wglBindDisplayColorTableEXT (GLushort);
00403         extern VOID WINAPI wglDestroyDisplayColorTableEXT (GLushort);
00404 #endif /* WGL_WGLEXT_PROTOTYPES */
00405         typedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
00406         typedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (const GLushort *table, GLuint length);
00407         typedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
00408         typedef VOID (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
00409 #endif
00410
00411 #ifndef WGL_EXT_extensions_string
00412 #define WGL_EXT_extensions_string 1
00413 #ifdef WGL_WGLEXT_PROTOTYPES
00414         extern const char * WINAPI wglGetExtensionsStringEXT (void);
00415 #endif /* WGL_WGLEXT_PROTOTYPES */
00416         typedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
00417 #endif
00418
00419 #ifndef WGL_EXT_make_current_read
00420 #define WGL_EXT_make_current_read 1
00421 #ifdef WGL_WGLEXT_PROTOTYPES
00422         extern BOOL WINAPI wglMakeContextCurrentEXT (HDC, HDC, HGLRC);
00423         extern HDC WINAPI wglGetCurrentReadDCEXT (void);
00424 #endif /* WGL_WGLEXT_PROTOTYPES */
00425         typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
00426         typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (void);
00427 #endif
00428
00429 #ifndef WGL_EXT_pbuffer
00430 #define WGL_EXT_pbuffer 1
00431 #ifdef WGL_WGLEXT_PROTOTYPES
00432         extern HPBUFFEREXT WINAPI wglCreatePbufferEXT (HDC, int, int, int, const int *);
00433         extern HDC WINAPI wglGetPbufferDCEXT (HPBUFFEREXT);
00434         extern int WINAPI wglReleasePbufferDCEXT (HPBUFFEREXT, HDC);
00435         extern BOOL WINAPI wglDestroyPbufferEXT (HPBUFFEREXT);
00436         extern BOOL WINAPI wglQueryPbufferEXT (HPBUFFEREXT, int, int *);
00437 #endif /* WGL_WGLEXT_PROTOTYPES */
00438         typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
00439         typedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
00440         typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
00441         typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
00442         typedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
00443 #endif
00444
00445 #ifndef WGL_EXT_pixel_format
00446 #define WGL_EXT_pixel_format 1
00447 #ifdef WGL_WGLEXT_PROTOTYPES
00448         extern BOOL WINAPI wglGetPixelFormatAttribivEXT (HDC, int, int, UINT, int *, int *);
00449         extern BOOL WINAPI wglGetPixelFormatAttribfvEXT (HDC, int, int, UINT, int *, FLOAT *);
00450         extern BOOL WINAPI wglChoosePixelFormatEXT (HDC, const int *, const FLOAT *, UINT, int *, UINT *);
00451 #endif /* WGL_WGLEXT_PROTOTYPES */
00452         typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
00453         typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
00454         typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
00455 #endif
00456
00457 #ifndef WGL_EXT_swap_control
00458 #define WGL_EXT_swap_control 1
00459 #ifdef WGL_WGLEXT_PROTOTYPES
00460         extern BOOL WINAPI wglSwapIntervalEXT (int);
00461         extern int WINAPI wglGetSwapIntervalEXT (void);
00462 #endif /* WGL_WGLEXT_PROTOTYPES */
00463         typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
00464         typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
00465 #endif
00466
00467 #ifndef WGL_EXT_depth_float
00468 #define WGL_EXT_depth_float 1
00469 #endif
00470
00471 #ifndef WGL_NV_vertex_array_range
00472 #define WGL_NV_vertex_array_range 1
00473 #ifdef WGL_WGLEXT_PROTOTYPES
00474         extern void* WINAPI wglAllocateMemoryNV (GLsizei, GLfloat, GLfloat, GLfloat);
00475         extern void WINAPI wglFreeMemoryNV (void *);
00476 #endif /* WGL_WGLEXT_PROTOTYPES */
00477         typedef void* (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
00478         typedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
00479 #endif
00480
00481 #ifndef WGL_3DFX_multisample
00482 #define WGL_3DFX_multisample 1
00483 #endif
00484
00485 #ifndef WGL_EXT_multisample
00486 #define WGL_EXT_multisample 1
00487 #endif
00488
00489 #ifndef WGL_OML_sync_control
00490 #define WGL_OML_sync_control 1
00491 #ifdef WGL_WGLEXT_PROTOTYPES
00492         extern BOOL WINAPI wglGetSyncValuesOML (HDC, INT64 *, INT64 *, INT64 *);
00493         extern BOOL WINAPI wglGetMscRateOML (HDC, INT32 *, INT32 *);
00494         extern INT64 WINAPI wglSwapBuffersMscOML (HDC, INT64, INT64, INT64);
00495         extern INT64 WINAPI wglSwapLayerBuffersMscOML (HDC, int, INT64, INT64, INT64);
00496         extern BOOL WINAPI wglWaitForMscOML (HDC, INT64, INT64, INT64, INT64 *, INT64 *, INT64 *);
00497         extern BOOL WINAPI wglWaitForSbcOML (HDC, INT64, INT64 *, INT64 *, INT64 *);
00498 #endif /* WGL_WGLEXT_PROTOTYPES */
00499         typedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc);
00500         typedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32 *numerator, INT32 *denominator);
00501         typedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
00502         typedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, int fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
00503         typedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64 *ust, INT64 *msc, INT64 *sbc);
00504         typedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64 *sbc);
00505 #endif
00506
00507 #ifndef WGL_I3D_digital_video_control
00508 #define WGL_I3D_digital_video_control 1
00509 #ifdef WGL_WGLEXT_PROTOTYPES
00510         extern BOOL WINAPI wglGetDigitalVideoParametersI3D (HDC, int, int *);
00511         extern BOOL WINAPI wglSetDigitalVideoParametersI3D (HDC, int, const int *);
00512 #endif /* WGL_WGLEXT_PROTOTYPES */
00513         typedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
00514         typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
00515 #endif
00516
00517 #ifndef WGL_I3D_gamma
00518 #define WGL_I3D_gamma 1
00519 #ifdef WGL_WGLEXT_PROTOTYPES
00520         extern BOOL WINAPI wglGetGammaTableParametersI3D (HDC, int, int *);
00521         extern BOOL WINAPI wglSetGammaTableParametersI3D (HDC, int, const int *);
00522         extern BOOL WINAPI wglGetGammaTableI3D (HDC, int, USHORT *, USHORT *, USHORT *);
00523         extern BOOL WINAPI wglSetGammaTableI3D (HDC, int, const USHORT *, const USHORT *, const USHORT *);
00524 #endif /* WGL_WGLEXT_PROTOTYPES */
00525         typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
00526         typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
00527         typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen, USHORT *puBlue);
00528         typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT *puRed, const USHORT *puGreen, const USHORT *puBlue);
00529 #endif
00530
00531 #ifndef WGL_I3D_genlock
00532 #define WGL_I3D_genlock 1
00533 #ifdef WGL_WGLEXT_PROTOTYPES
00534         extern BOOL WINAPI wglEnableGenlockI3D (HDC);
00535         extern BOOL WINAPI wglDisableGenlockI3D (HDC);
00536         extern BOOL WINAPI wglIsEnabledGenlockI3D (HDC, BOOL *);
00537         extern BOOL WINAPI wglGenlockSourceI3D (HDC, UINT);
00538         extern BOOL WINAPI wglGetGenlockSourceI3D (HDC, UINT *);
00539         extern BOOL WINAPI wglGenlockSourceEdgeI3D (HDC, UINT);
00540         extern BOOL WINAPI wglGetGenlockSourceEdgeI3D (HDC, UINT *);
00541         extern BOOL WINAPI wglGenlockSampleRateI3D (HDC, UINT);
00542         extern BOOL WINAPI wglGetGenlockSampleRateI3D (HDC, UINT *);
00543         extern BOOL WINAPI wglGenlockSourceDelayI3D (HDC, UINT);
00544         extern BOOL WINAPI wglGetGenlockSourceDelayI3D (HDC, UINT *);
00545         extern BOOL WINAPI wglQueryGenlockMaxSourceDelayI3D (HDC, UINT *, UINT *);
00546 #endif /* WGL_WGLEXT_PROTOTYPES */
00547         typedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
00548         typedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
00549         typedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL *pFlag);
00550         typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
00551         typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT *uSource);
00552         typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
00553         typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT *uEdge);
00554         typedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
00555         typedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT *uRate);
00556         typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
00557         typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT *uDelay);
00558         typedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay);
00559 #endif
00560
00561 #ifndef WGL_I3D_image_buffer
00562 #define WGL_I3D_image_buffer 1
00563 #ifdef WGL_WGLEXT_PROTOTYPES
00564         extern LPVOID WINAPI wglCreateImageBufferI3D (HDC, DWORD, UINT);
00565         extern BOOL WINAPI wglDestroyImageBufferI3D (HDC, LPVOID);
00566         extern BOOL WINAPI wglAssociateImageBufferEventsI3D (HDC, const HANDLE *, const LPVOID *, const DWORD *, UINT);
00567         extern BOOL WINAPI wglReleaseImageBufferEventsI3D (HDC, const LPVOID *, UINT);
00568 #endif /* WGL_WGLEXT_PROTOTYPES */
00569         typedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
00570         typedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
00571         typedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const HANDLE *pEvent, const LPVOID *pAddress, const DWORD *pSize, UINT count);
00572         typedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const LPVOID *pAddress, UINT count);
00573 #endif
00574
00575 #ifndef WGL_I3D_swap_frame_lock
00576 #define WGL_I3D_swap_frame_lock 1
00577 #ifdef WGL_WGLEXT_PROTOTYPES
00578         extern BOOL WINAPI wglEnableFrameLockI3D (void);
00579         extern BOOL WINAPI wglDisableFrameLockI3D (void);
00580         extern BOOL WINAPI wglIsEnabledFrameLockI3D (BOOL *);
00581         extern BOOL WINAPI wglQueryFrameLockMasterI3D (BOOL *);
00582 #endif /* WGL_WGLEXT_PROTOTYPES */
00583         typedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (void);
00584         typedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (void);
00585         typedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL *pFlag);
00586         typedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL *pFlag);
00587 #endif
00588
00589 #ifndef WGL_I3D_swap_frame_usage
00590 #define WGL_I3D_swap_frame_usage 1
00591 #ifdef WGL_WGLEXT_PROTOTYPES
00592         extern BOOL WINAPI wglGetFrameUsageI3D (float *);
00593         extern BOOL WINAPI wglBeginFrameTrackingI3D (void);
00594         extern BOOL WINAPI wglEndFrameTrackingI3D (void);
00595         extern BOOL WINAPI wglQueryFrameTrackingI3D (DWORD *, DWORD *, float *);
00596 #endif /* WGL_WGLEXT_PROTOTYPES */
00597         typedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float *pUsage);
00598         typedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
00599         typedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
00600         typedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD *pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
00601 #endif
00602
00603
00604 #ifdef __cplusplus
00605 }
00606 #endif
00607
00608 #endif
00609
Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: window.cpp File Reference

window.cpp File Reference

#include "3d.h"
#include "input.h"
#include "controlEngine.h"
#include "window.h"
#include "mylist.h"

Go to the source code of this file.

Defines

#define | DEFAULT_XSIZE_WINDOW 400
#define | DEFAULT_YSIZE_WINDOW 300

Variables

ControlEngine ce

Define Documentation

#define DEFAULT_XSIZE_WINDOW 400

Definition at line 51 of file window.cpp.

#define DEFAULT_YSIZE_WINDOW 300

Definition at line 52 of file window.cpp.

Variable Documentation

ControlEngine ce

Definition at line 25 of file window.cpp.

Referenced by TaskWindow::Add(), Tutorial::ApplicationDemo::ApplicationDemo(), ApplyParamObj(), Cursor::ApplyType(), Tutorial::BaseDemo::BaseDemo(), Button::Button(), Config(), TreeView::ConfigFacesPlus(), ConfigProc(), Tutorial::LayoutDemo::ConfigTextFace(), ControlEngineProc(), Tutorial::Create(), Button::Create(), Calculator::Create(), Container::Create(), MasterContainer::Create(), MsgBox::Create(), Slider::Create(), TaskWindow::Create(), TextBox::Create(), Tip::Create(), Title::Create(), TrackButton::Create(), TreeView::Create(), Univers::Create(), Window::Create(), Tutorial::LayoutDemo::CreateTreeButton(), DebugStructProc(), Tutorial::Demo::Demo(), Demo::Demo(), Face::Draw(), BasicText3D::Draw(), Text3D::Draw(), TreeView::Draw(), ControlEngine::DrawFPS(), Univers::ExitQuestion(), Tutorial::FaceDemo::FaceDemo(), Picking::FindContainer(), Control::GetCorners(), Face::GetCorners(), Primitive::GetCorners(), Control::GetLocalPos(), Title::GotFocus(), Tutorial::LayoutDemo::LayoutDemo(), Title::LostFocus(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), TreeView::OnClick(), TreeDirectory::OnClickDirectory(), Tutorial::BaseDemo::OnEnd(), Tutorial::WindowDemo::OnEnd(), Tutorial::ApplicationDemo::OnEnd(), Tutorial::OnEnd(), Univers::OnExit(), ResizingAndRotateControl::OnHover(), EventInertia::OnInertia(), Univers::OnKeyDown(), Univers::OnKeyUp(), TextBox::OnLButtonDown(), Title::OnLButtonDown(), Univers::OnLButtonDown(), TextBox::OnLButtonUp(), Univers::OnLButtonUp(), Title::OnLMButtonUp(), Title::OnMax(), Title::OnMButtonDown(), Univers::OnMButtonDown(), Univers::OnMButtonUp(), Title::OnMin(), Control::OnMouseMove(), TreeView::OnNextFrame(), Title::OnOriginal(), Button::OnOverIn(), TextBox::OnOverIn(), Title::OnOverIn(), Univers::OnOverIn(), Title::OnOverOut(), Univers::OnOverOut(), Button::OnPushDown(), Button::OnPushUp(), Tutorial::ApplicationDemo::OnSelectBkg(), Demo::OnTimer(), Slider::Refresh(), TaskWindow::Restore(), Control::ScreenMove(), Control::ScreenMoveTo(), Tutorial::UniversDemo::SetFace(), Control::SetParent(), EffectApparition::Start(), EventInertia::Start(), EffectApparition::Stop(), EventInertia::Stop(), SysTrayProc(), Picking::Test(), TextBox::TextBox(), Tip::Tip(), Title::Title(), Tutorial::Tutorial(), Tutorial::UniversDemo::UniversDemo(), Tutorial::WindowDemo::WindowDemo(), WinMain(), Title::~Title(), Tutorial::~Tutorial(), and Univers::~Univers().

Generated on Fri Aug 20 19:20:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: window.cpp Source File

window.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include "3d.h"
00020 #include "input.h"
00021 #include "controlEngine.h"
00022 #include "window.h"
00023 #include "mylist.h"
00024
00025 extern ControlEngine ce;
00026
00027 // ********************************************************************************
00028
00029 Window::Window()
00030 {
00031         // init des variable
00032         name="Window";
00033         titleDock=top;
00034
00035         // gestion des evenements
00036         canResize=TRUE;
00037         canRotate=TRUE;
00038
00039         title.onTitle.close.connect(this,OnClose);
00040         onControl.mouse.left.down.connect(this,OnLMRButton);
00041         onControl.mouse.mid.down.connect(this,OnLMRButton);
00042         onControl.mouse.right.down.connect(this,OnLMRButton);
00043 }
00044
00045 Window::~Window()
00046 {
00047 }
00048
00049 // ********************************************************************************
00050
00051 #define DEFAULT_XSIZE_WINDOW 400
00052 #define DEFAULT_YSIZE_WINDOW 300
00053
00068 void Window::Create(double depth)
00069 {
00070         SetParent();
00071
00072         faceNode = ce.primitive.AddBox(name,id,depth,TRUE);
00073         faceNode->elem->material.SetDS(0.5,0.5,0.5);
00074
00075         ce.Push(this);
00076         ce.primitive.GoTo(FACE_FRONT);
00077         // en haut centré avec marge de 2 pixel
00078         title.Create(this);
00079         switch (titleDock)
00080         {
00081         case top:
00082                 title.faceNode->elem->center.Set(0,-1);
00083                 title.faceNode->elem->position.y.Set(-2,0.5,&faceNode->elem->computeSize.y);
00084                 title.faceNode->elem->size.x.Set(-4,1,&faceNode->elem->computeSize.x);
00085                 title.faceNode->elem->size.y=24;
00086                 // en dessous du titre de 2 pixel, bordure de 2 pixel
00087                 client.Create();
00088                 client.faceNode->elem->center.Set(0,1);
00089                 client.faceNode->elem->position.y.Set(2,-0.5,&faceNode->elem->computeSize.y);
00090                 client.faceNode->elem->size.x.Set(-4,1,&faceNode->elem->computeSize.x);
00091                 client.faceNode->elem->size.y.Set(-28,1,&faceNode->elem->computeSize.y);
00092                 break;
00093         case bottom:
00094                 title.faceNode->elem->center.Set(0,1);
00095                 title.faceNode->elem->position.y.Set(2,-0.5,&faceNode->elem->computeSize.y);
00096                 title.faceNode->elem->size.x.Set(-4,1,&faceNode->elem->computeSize.x);
00097                 title.faceNode->elem->size.y=24;
00098                 // au dessus du titre de 2 pixel, bordure de 2 pixel
00099                 client.Create();
00100                 client.faceNode->elem->center.Set(0,-1);
00101                 client.faceNode->elem->position.y.Set(-2,0.5,&faceNode->elem->computeSize.y);
00102                 client.faceNode->elem->size.x.Set(-4,1,&faceNode->elem->computeSize.x);
00103                 client.faceNode->elem->size.y.Set(-28,1,&faceNode->elem->computeSize.y);
00104                 break;
00105         case left:
00106                 title.faceNode->elem->center.Set(0,-1);
00107                 title.faceNode->elem->angle.Set(0,0,90);
00108                 title.faceNode->elem->position.x.Set(2,-0.5,&faceNode->elem->computeSize.x);
00109                 title.faceNode->elem->size.x.Set(-4,1,&faceNode->elem->computeSize.y);
00110                 title.faceNode->elem->size.y=24;
00111                 // au dessus du titre de 2 pixel, bordure de 2 pixel
00112                 client.Create();
00113                 client.faceNode->elem->center.Set(1,0);
00114                 client.faceNode->elem->position.x.Set(30,-0.5,&faceNode->elem->computeSize.x);
00115                 client.faceNode->elem->size.x.Set(-32,1,&faceNode->elem->computeSize.x);
00116                 client.faceNode->elem->size.y.Set(-2,1,&faceNode->elem->computeSize.y);
00117                 break;
00118         case right:
00119                 title.faceNode->elem->center.Set(0,-1);
00120                 title.faceNode->elem->angle.Set(0,0,-90);
00121                 title.faceNode->elem->position.x.Set(-2,0.5,&faceNode->elem->computeSize.x);
00122                 title.faceNode->elem->size.x.Set(-4,1,&faceNode->elem->computeSize.y);
00123                 title.faceNode->elem->size.y=24;
00124                 // au dessus du titre de 2 pixel, bordure de 2 pixel
00125                 client.Create();
00126                 client.faceNode->elem->center.Set(-1,0);
00127                 client.faceNode->elem->position.x.Set(-30,0.5,&faceNode->elem->computeSize.x);
00128                 client.faceNode->elem->size.x.Set(-32,1,&faceNode->elem->computeSize.x);
00129                 client.faceNode->elem->size.y.Set(-2,1,&faceNode->elem->computeSize.y);
00130                 break;
00131         }
00132         ce.Pop();
00133 }
00134
00135 // ********************************************************************************
00136
00137 // on a demander la fermeture
00138 int Window::OnClose()
00139 {
00140         Debug0Param("Window::OnClose()");
00141         Delete();
00142         return 1;
00143 }
00144
00145 int Window::OnLMRButton(StateMouse *mouse,int face)
00146 {
00147         DebugMouse2("Window::OnLMRButton",mouse,face);
00148         title.GotFocus();
00149         return 1;
00150 }
00151
00152 void Window::ToString(MyString &str)
00153 {
00154         str.AddFormat("name: %s canResize:%d",name,canResize);
00155 }
00156
00157 // ----------------------------------------------------------------------------
00158
00159 ResizingAndRotateControl::ResizingAndRotateControl()
00160 {
00161         trackButton = NULL;
00162         onControl.mouse.move.connect(this,OnHover);
00163 }
00164
00165 ResizingAndRotateControl::~ResizingAndRotateControl()
00166 {
00167 //      onControl.mouse.move.disconnect();
00168 }
00169
00171
00172 int ResizingAndRotateControl::OnHover(StateMouse *mouse,int deltaX,int deltaY,int numFace)
00173 {
00174         //DebugMouse2("ResizingAndRotateControl::OnHover",mouse,numFace);
00175         double dx = 10; // maximum 2 texel du bord en X pour etre activé
00176         double dy = 10; // maximum 2 texel du bord en Y pour etre activé
00177         // gestion dans le cas ou la face et plus petite que les 10 texel ==> /2 de la taille original
00178         Face *face = faceNode->Elems(numFace);
00179         if (face->computeSize.x<(3.0*dx)) dx=face->computeSize.x/3.0;
00180         if (face->computeSize.y<(3.0*dy)) dy=face->computeSize.y/3.0;
00181
00182         Point2D<double> localPos;
00183         Point2D<double> pos(mouse->pos.x,mouse->pos.y);
00184         localPos = GetLocalPos(numFace,pos);
00185         BOOL isOnLeft = fabs(localPos.x)<=dx;
00186         BOOL isOnRight = (localPos.x>=0)&&(fabs(face->computeSize.x-localPos.x)<=dx);
00187         BOOL isOnTop = fabs(localPos.y)<=dy;
00188         BOOL isOnBottom = (localPos.y>=0)&&(fabs(face->computeSize.y-localPos.y)<=dy);
00189         if (isOnLeft||isOnRight||isOnTop||isOnBottom)
00190         {       // affichage de la TrackButton
00191                 if (!trackButton)
00192                 {
00193                         ce.Push(this);
00194                         ce.primitive.GoTo(numFace);
00195                         trackButton = new TrackButton;
00196                         trackButton->SetResizeAndRotate(canResize,canRotate);
00197                         if (trackButton->Create(20))
00198                         {
00199                                 trackButton->faceNode->elem->position.z=-8;
00200                                 trackButton->SetResizeAndRotate(canResize,canRotate);
00201                                 trackButton->onControl.over.out.connect(this,OnTrackButtonOver);
00202                         }
00203                         ce.Pop();
00204                 }
00205                 int orientation =
00206                         (isOnLeft?left:0) |
00207                         (isOnRight?right:0) |
00208                         (isOnTop?top:0) |
00209                         (isOnBottom?bottom:0);
00210                 trackButton->SetMode((DockPos)orientation);
00211
00212                 if (isOnTop) trackButton->YDockTop(0,16,TRUE);
00213                 else if (isOnBottom) trackButton->YDockBottom(0,16,TRUE);
00214                 else trackButton->YDockTop(localPos.y,16,TRUE);
00215
00216                 if (isOnLeft) trackButton->XDockLeft(0,16,TRUE);
00217                 else if (isOnRight) trackButton->XDockRight(0,16,TRUE);
00218                 else trackButton->XDockLeft(localPos.x,16,TRUE);
00219                 return 1;
00220         }
00221         if (trackButton) ce.timerRefresh.onTimer.connect(this,OnNextFrame);
00222         return 0;
00223 }
00224
00225 int ResizingAndRotateControl::OnNextFrame(Timer *timer)
00226 {
00227         timer->onTimer.disconnect(this);
00228         ce.pickingCursor.ResetCurrent();
00229         delete trackButton;
00230         trackButton = NULL;
00231         return 0;
00232 }
00233
00234 int ResizingAndRotateControl::OnTrackButtonOver(Control *newControl,int face)
00235 {
00236         Debug2Param("ResizingAndRotateControl::OnTrackButtonOver(newCtrl:%s,int face)",newControl,face);
00237         ce.timerRefresh.onTimer.connect(this,OnNextFrame);
00238         return 0;
00239 }
Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: window.h File Reference

window.h File Reference

Control Window. More...

#include "MyString.h"
#include "MyDebug.h"
#include "title.h"
#include "container.h"
#include "cubedock.h"
#include "trackButton.h"

Go to the source code of this file.

Classes

class | ResizingAndRotateControl
class | Window
Une "Window" est formé d'un Title et d'un zone Cliente. More...

Detailed Description

Control Window.

Definition in file window.h.

Generated on Fri Aug 20 19:20:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: window.h Source File

window.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_WINDOW_CTRL_H
00024 #define INCLUDE_WINDOW_CTRL_H
00025
00026 #include "MyString.h"
00027 #include "MyDebug.h"
00028 #include "title.h"
00029 #include "container.h"
00030 #include "cubedock.h"
00031 #include "trackButton.h"
00032
00050 class ResizingAndRotateControl : public Control
00051 {
00052 private:
00053         int OnTrackButtonOver(Control *,int);
00054         TrackButton *trackButton;
00055         int OnNextFrame(Timer *timer);
00056
00057 public:
00058         BOOL canResize;
00059         BOOL canRotate;
00060
00061         ResizingAndRotateControl();
00062         ~ResizingAndRotateControl();
00063         int OnHover(StateMouse *mouse,int deltaX,int deltaY,int numFace); // La fenetre est survollé
00064 };
00065
00071 class Window : public ResizingAndRotateControl
00072 {
00073 public:
00074         DockPos titleDock;
00075         Title title;
00076         Container client;
00077
00078         Window();
00079         ~Window();
00080         virtual void Create() { Create(DEFAULT_DEPTH_WINDOW); }
00081         void Create(double depth);
00082         void ToString(MyString &str);
00083
00084         int OnMouseWheel(StateMouse *mouse,int face);
00085         int OnClose(); // on a demander la fermeture
00086         int OnOver(StateMouse *mouse,int face);
00087         int OnLMRButton(StateMouse *,int);
00088
00089 };
00090
00091 #endif
Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: windowTools.cpp File Reference

windowTools.cpp File Reference

#include <windows.h>
#include <windowsx.h>
#include <commctrl.h>
#include "windowTools.h"

Go to the source code of this file.

Functions

BOOL | GetWindowSize (HWND hWnd, int *dx, int *dy)
BOOL | SetWindowSize (HWND hWndControl, int dx, int dy)
BOOL | GetWindowPos (HWND hWnd, int *x, int *y)
LONG | SetWindowStyle (HWND hWnd, int set, LONG dwStyle)
void | SetFullScreen (HWND hWnd, BOOL isFull, BOOL isTopMost)
void | SetWindowTitle (HWND hWnd, char *title, BOOL enableTitle)
void | PushButton (HWND hWnd, int idControl)
BOOL | ToggleCheck (HWND hWnd, int idControl)
void | ShowMouse (BOOL active)
affiche le curseur de la souris

BOOL | GetDeltaWindow (HWND hWndParent, RECT *oldRect, int *deltaX, int *deltaY)
BOOL | SetDeltaWindowSize (HWND hWndControl, int deltaX, int deltaY)
BOOL | SetDeltaWindowPos (HWND hWndControl, int deltaX, int deltaY)
void | TreeView_ExpandAll (HWND hTree, BOOL expand, HTREEITEM rootTree)
void | TreeView_ExpandAll_Level (HWND hTree, BOOL expand, int levelMax, HTREEITEM rootTree)
void | MoveToBorderTask (HWND hUpdatingWnd)

Function Documentation

BOOL GetDeltaWindow | ( | HWND | hWndParent,
 |  | RECT * | oldRect,
 |  | int * | deltaX,
 |  | int * | deltaY
 | ) |

Definition at line 137 of file windowTools.cpp.

References BOOL().

Referenced by ValueEditorProc().

BOOL GetWindowPos | ( | HWND | hWnd,
 |  | int * | x,
 |  | int * | y
 | ) |

Definition at line 42 of file windowTools.cpp.

References BOOL().

Referenced by Screen::SetFullScreen(), and SetFullScreen().

BOOL GetWindowSize | ( | HWND | hWnd,
 |  | int * | dx,
 |  | int * | dy
 | ) |

Definition at line 26 of file windowTools.cpp.

References BOOL().

Referenced by SetFullScreen().

void MoveToBorderTask ( HWND hUpdatingWnd )

Definition at line 215 of file windowTools.cpp.

void PushButton | ( | HWND | hWnd,
 |  | int | idControl
 | ) |

Definition at line 103 of file windowTools.cpp.

Referenced by ToggleCheck().

BOOL SetDeltaWindowPos | ( | HWND | hWndControl,
 |  | int | deltaX,
 |  | int | deltaY
 | ) |

Definition at line 163 of file windowTools.cpp.

References BOOL(), and point.

Referenced by DebugStructProc(), and ValueEditorProc().

BOOL SetDeltaWindowSize | ( | HWND | hWndControl,
 |  | int | deltaX,
 |  | int | deltaY
 | ) |

Definition at line 150 of file windowTools.cpp.

References BOOL().

Referenced by ValueEditorProc().

void SetFullScreen | ( | HWND | hWnd,
 |  | BOOL | isFull,
 |  | BOOL | isTopMost
 | ) |

Definition at line 65 of file windowTools.cpp.

References BOOL(), GetWindowPos(), GetWindowSize(), and SetWindowStyle().

BOOL SetWindowSize | ( | HWND | hWndControl,
 |  | int | dx,
 |  | int | dy
 | ) |

Definition at line 36 of file windowTools.cpp.

References BOOL().

LONG SetWindowStyle | ( | HWND | hWnd,
 |  | int | set,
 |  | LONG | dwStyle
 | ) |

Definition at line 56 of file windowTools.cpp.

Referenced by SetFullScreen(), and SetWindowTitle().

void SetWindowTitle | ( | HWND | hWnd,
 |  | char * | title,
 |  | BOOL | enableTitle
 | ) |

Definition at line 96 of file windowTools.cpp.

References SetWindowStyle().

void ShowMouse ( BOOL active )

affiche le curseur de la souris

Definition at line 130 of file windowTools.cpp.

Referenced by DebugStructProc(), ControlEngine::Proc(), and ValueEditorProc().

BOOL ToggleCheck | ( | HWND | hWnd,
 |  | int | idControl
 | ) |

Definition at line 109 of file windowTools.cpp.

References BOOL(), and PushButton().

void TreeView_ExpandAll | ( | HWND | hTree,
 |  | BOOL | expand,
 |  | HTREEITEM | rootTree
 | ) |

Definition at line 177 of file windowTools.cpp.

void TreeView_ExpandAll_Level | ( | HWND | hTree,
 |  | BOOL | expand,
 |  | int | levelMax,
 |  | HTREEITEM | rootTree
 | ) |

Definition at line 191 of file windowTools.cpp.

References level.

Referenced by DebugStructProc().

Generated on Fri Aug 20 19:20:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: windowTools.cpp Source File

windowTools.cpp

Go to the documentation of this file.
00001 /* *************************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 ************************************************************************************* */
00018
00019 #include <windows.h>
00020 #include <windowsx.h>
00021 #include <commctrl.h>
00022
00023 #include "windowTools.h"
00024
00025 // donne la taille de la fenetre client
00026 BOOL GetWindowSize(HWND hWnd,int *dx,int *dy)
00027 {
00028         RECT rect;
00029         if (!GetClientRect(hWnd,&rect)) return FALSE;
00030         *dx = rect.right-rect.left;
00031         *dy = rect.bottom-rect.top;
00032         return TRUE;
00033 }
00034
00035 // configure la taille d'une fenetre
00036 BOOL SetWindowSize(HWND hWndControl,int dx,int dy)
00037 {
00038         return SetWindowPos(hWndControl,NULL,0,0,dx,dy,SWP_NOMOVE|SWP_NOZORDER|SWP_NOREDRAW|SWP_NOACTIVATE|SWP_NOCOPYBITS|SWP_NOSENDCHANGING);
00039 }
00040
00041 // donne la postion de la fenetre
00042 BOOL GetWindowPos(HWND hWnd,int *x,int *y)
00043 {
00044         RECT rect;
00045         GetWindowRect(hWnd,&rect);
00046         POINT pt;
00047         pt.x = rect.left;
00048         pt.y = rect.top;
00049         ScreenToClient(GetParent(hWnd),&pt);
00050         *x=pt.x;
00051         *y=pt.y;
00052         return TRUE;
00053 }
00054
00055 // ajout ou retir un style d'une fenetre cf.: voir CreateWindowEx
00056 LONG SetWindowStyle(HWND hWnd,int set,LONG dwStyle)
00057 {
00058         LONG result = GetWindowLong(hWnd,GWL_STYLE);
00059         result |=dwStyle;
00060         if (!set) result-=dwStyle;
00061         return  SetWindowLong(hWnd,GWL_STYLE,result);
00062 }
00063
00064 // place en fullscreen
00065 void SetFullScreen(HWND hWnd,BOOL isFull,BOOL isTopMost)
00066 {
00067         HWND hWndConfig = isTopMost? HWND_TOPMOST : NULL;
00068
00069         static int dxOld,dyOld,xOld,yOld;
00070         static BOOL oldIsFull=FALSE;
00071         if (isFull)
00072         {
00073                 if (!oldIsFull)
00074                 {
00075                         GetWindowSize(hWnd,&dxOld,&dyOld);
00076                         GetWindowPos(hWnd,&xOld,&yOld);
00077                 }
00078                 oldIsFull=TRUE;
00079                 int dx = GetSystemMetrics(SM_CXSCREEN);
00080                 int dy = GetSystemMetrics(SM_CYSCREEN);
00081                 SetWindowStyle(hWnd,FALSE,WS_BORDER|WS_CAPTION|WS_DLGFRAME|WS_SIZEBOX );
00082                 SetWindowPos(hWnd,NULL,0,0,dx,dy,SWP_SHOWWINDOW);
00083                 SetWindowPos(hWnd,hWndConfig,0,0,dx,dy,SWP_SHOWWINDOW); // topMost
00084                 SetActiveWindow(hWnd);
00085         }
00086         else
00087         {
00088                 oldIsFull=FALSE;
00089                 SetWindowStyle(hWnd,TRUE,WS_BORDER|WS_CAPTION|WS_DLGFRAME|WS_SIZEBOX);
00090                 SetWindowPos(hWnd,hWndConfig, xOld, yOld, dxOld, dyOld, 0); // topMost
00091                 SetActiveWindow(hWnd);
00092         }
00093 }
00094
00095 // place en fenetre un titre ou non
00096 void SetWindowTitle(HWND hWnd,char *title,BOOL enableTitle)
00097 {
00098         SetWindowStyle(hWnd,enableTitle,WS_TILEDWINDOW);
00099         SetWindowText(hWnd,title);
00100 }
00101
00102 // simule un appuis de bouton
00103 void PushButton(HWND hWnd,int idControl)
00104 {
00105         SendMessage(hWnd,WM_COMMAND,idControl,0);
00106 }
00107
00108 // simule un appuis sur un boutton check box
00109 BOOL ToggleCheck(HWND hWnd,int idControl)
00110 {
00111         HWND hWndCtrl = GetDlgItem(hWnd,idControl);
00112         BOOL state = !Button_GetCheck(hWndCtrl);
00113         Button_SetCheck(hWndCtrl,state);
00114         PushButton(hWnd,idControl);
00115         return state;
00116 }
00117
00118 // affiche le curseur de la souris (version parallele qui peut declanché un stack overflow si trop d'interation)
00119 /*
00120 void ShowMouse(BOOL active)
00121 {
00122         int num=ShowCursor(active);
00123         if (num<0&&active) ShowMouse(active);
00124         if (num>=0&&!active) ShowMouse(active);
00125 }
00126 */
00130 void ShowMouse(BOOL active)
00131 {
00132         if (active) while (ShowCursor(TRUE)<0);
00133         else while (ShowCursor(FALSE)>=0);
00134 }
00135
00136 // calcul le delta de taille de fenetre
00137 BOOL GetDeltaWindow(HWND hWndParent,RECT *oldRect,int *deltaX,int *deltaY)
00138 {
00139         RECT newRect;
00140
00141         GetWindowRect(hWndParent,&newRect);
00142         *deltaX = (newRect.right-newRect.left)-(oldRect->right-oldRect->left);
00143         *deltaY = (newRect.bottom-newRect.top)-(oldRect->bottom-oldRect->top);
00144
00145         CopyMemory(oldRect,&newRect,sizeof(RECT));
00146         return TRUE;
00147 }
00148
00149 // configure la taille d'une fenetre par rapport au delta
00150 BOOL SetDeltaWindowSize(HWND hWndControl,int deltaX,int deltaY)
00151 {
00152         RECT rect;
00153
00154         GetWindowRect(hWndControl,&rect);
00155         int dX = rect.right-rect.left;
00156         int dY= rect.bottom-rect.top;
00157
00158         SetWindowPos(hWndControl,NULL,0,0,dX+deltaX,dY+deltaY,SWP_NOMOVE|SWP_NOZORDER|SWP_NOREDRAW|SWP_NOACTIVATE|SWP_NOCOPYBITS|SWP_NOSENDCHANGING);
00159         return TRUE;
00160 }
00161
00162 // configure la position d'une fenetre par rapport au delta
00163 BOOL SetDeltaWindowPos(HWND hWndControl,int deltaX,int deltaY)
00164 {
00165         POINT point;
00166         RECT rect;
00167         GetWindowRect(hWndControl,&rect);
00168         point.x=rect.left;
00169         point.y=rect.top;
00170         HWND hWndParent = GetParent(hWndControl);
00171         ScreenToClient(hWndParent,&point);
00172         SetWindowPos(hWndControl,NULL,point.x+deltaX,point.y+deltaY,0,0,SWP_NOSIZE);//|SWP_NOZORDER|SWP_NOREDRAW|SWP_NOACTIVATE|SWP_NOCOPYBITS|SWP_NOSENDCHANGING);
00173         return TRUE;
00174 }
00175
00176 // expande/collaps recursivement une arborecence d'un arbre
00177 void TreeView_ExpandAll (HWND hTree,BOOL expand,HTREEITEM rootTree)
00178 {
00179         if (!rootTree) rootTree = TreeView_GetRoot(hTree);
00180
00181         while (rootTree)
00182         {
00183                 TreeView_Expand(hTree,rootTree,expand? TVE_EXPAND : TVE_COLLAPSE);
00184                 HTREEITEM childTree = TreeView_GetNextItem(hTree,rootTree,TVGN_CHILD);
00185                 if (childTree) TreeView_ExpandAll(hTree,expand,childTree);
00186                 rootTree = TreeView_GetNextSibling(hTree,rootTree);
00187         }
00188 }
00189
00190 // expande/collaps jusqu'a un certain niveau d'arborecence d'un arbre
00191 void TreeView_ExpandAll_Level (HWND hTree,BOOL expand,int levelMax,HTREEITEM rootTree)
00192 {
00193         static int level=0;
00194         if (!rootTree) rootTree = TreeView_GetRoot(hTree);
00195
00196         level++;
00197         if (level<levelMax)
00198         {
00199                 while (rootTree)
00200                 {
00201                         TreeView_Expand(hTree,rootTree,expand? TVE_EXPAND : TVE_COLLAPSE);
00202                         HTREEITEM childTree = TreeView_GetNextItem(hTree,rootTree,TVGN_CHILD);
00203                         if (childTree) TreeView_ExpandAll_Level (hTree,expand,levelMax,childTree);
00204                         rootTree = TreeView_GetNextSibling(hTree,rootTree);
00205                 }
00206         }
00207         level--;
00208 }
00209
00210
00211 /* ---------------------------------------------------------------------------------------------------
00212 Déplace une fenetre dans le but de la placer dans le coin le plus proche des icon de tache
00213 --------------------------------------------------------------------------------------------------- */
00214
00215 void MoveToBorderTask (HWND hUpdatingWnd)
00216 {
00217         if (!hUpdatingWnd) return ;
00218
00219         APPBARDATA Data ;
00220         memset (&Data, 0, sizeof(Data)) ;
00221         Data.hWnd = hUpdatingWnd ;
00222         SHAppBarMessage( ABM_GETTASKBARPOS , &Data) ;
00223         RECT r ;
00224         GetWindowRect (hUpdatingWnd , &r) ;
00225
00226         int cx = GetSystemMetrics(SM_CXSCREEN);
00227         int cy = GetSystemMetrics(SM_CYSCREEN);
00228
00229         if (Data.rc.top < 0 && Data.rc.left < 0 && Data.rc.right > cx)
00230         { // Barre de taches en haut
00231                 MoveWindow (hUpdatingWnd,
00232                         cx - (r.right - r.left),
00233                         Data.rc.bottom - Data.rc.top,
00234                         r.right - r.left,
00235                         r.bottom - r.top,
00236                         FALSE);
00237         }
00238         else if (Data.rc.bottom > cy && Data.rc.left < 0 && Data.rc.right > cx)
00239         { // Barre de taches en bas
00240                 MoveWindow (hUpdatingWnd,
00241                         cx - (r.right - r.left),
00242                         cy - (Data.rc.bottom-Data.rc.top)-(r.bottom - r.top),
00243                         r.right - r.left,
00244                         r.bottom - r.top,
00245                         FALSE);
00246         }
00247         else if (Data.rc.top < 0 && Data.rc.left < 0 && Data.rc.bottom > cy)
00248         { // Barre de taches à gauche
00249                 MoveWindow (hUpdatingWnd,
00250                         (Data.rc.right-Data.rc.left),
00251                         cy - (r.bottom - r.top),
00252                         r.right - r.left,
00253                         r.bottom - r.top,
00254                         FALSE);
00255         }
00256         else if (Data.rc.top < 0 && Data.rc.bottom > cy && Data.rc.right > cx)
00257         { // Barre de taches à droite
00258                 MoveWindow (hUpdatingWnd,
00259                         cx - (Data.rc.right-Data.rc.left)- (r.right - r.left),
00260                         cy -(r.bottom - r.top),
00261                         r.right - r.left,
00262                         r.bottom - r.top,
00263                         FALSE);
00264         }
00265         else
00266                 MoveWindow (hUpdatingWnd,
00267                 cx - (r.right - r.left),
00268                 cy - (Data.rc.bottom-Data.rc.top)-(r.bottom - r.top),
00269                 r.right - r.left,
00270                 r.bottom - r.top,
00271                 FALSE);
00272 }
Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: windowTools.h File Reference

windowTools.h File Reference

Fonction simple sur le fenetrage Windows. More...

#include "windowsx.h"
#include "commctrl.h"

Go to the source code of this file.

Functions

BOOL | GetWindowSize (HWND hWnd, int *dx, int *dy)
BOOL | GetWindowPos (HWND hWnd, int *x, int *y)
BOOL | SetWindowSize (HWND hWndControl, int dx, int dy)
LONG | SetWindowStyle (HWND hWnd, int set, LONG dwStyle)
void | SetFullScreen (HWND hWnd, BOOL isFull, BOOL isTopMost=FALSE)
void | SetWindowTitle (HWND hWnd, char *title, BOOL enableTitle)
BOOL | ToggleCheck (HWND hWnd, int idControl)
void | PushButton (HWND hWnd, int idControl)
void | ShowMouse (BOOL active)
affiche le curseur de la souris

BOOL | GetDeltaWindow (HWND hWndParent, RECT *oldRect, int *deltaX, int *deltaY)
BOOL | SetDeltaWindowSize (HWND hWndControl, int deltaX, int deltaY)
BOOL | SetDeltaWindowPos (HWND hWndControl, int deltaX, int deltaY)
void | TreeView_ExpandAll (HWND hTree, BOOL expand, HTREEITEM rootTree=NULL)
void | TreeView_ExpandAll_Level (HWND hTree, BOOL expand, int levelMax, HTREEITEM rootTree=NULL)
void | MoveToBorderTask (HWND hUpdatingWnd)

Detailed Description

Fonction simple sur le fenetrage Windows.

Definition in file windowTools.h.

Function Documentation

BOOL GetDeltaWindow | ( | HWND | hWndParent,
 |  | RECT * | oldRect,
 |  | int * | deltaX,
 |  | int * | deltaY
 | ) |

Definition at line 137 of file windowTools.cpp.

References BOOL().

Referenced by ValueEditorProc().

BOOL GetWindowPos | ( | HWND | hWnd,
 |  | int * | x,
 |  | int * | y
 | ) |

Definition at line 42 of file windowTools.cpp.

References BOOL().

Referenced by SetFullScreen(), and Screen::SetFullScreen().

BOOL GetWindowSize | ( | HWND | hWnd,
 |  | int * | dx,
 |  | int * | dy
 | ) |

Definition at line 26 of file windowTools.cpp.

References BOOL().

Referenced by SetFullScreen().

void MoveToBorderTask ( HWND hUpdatingWnd )

Definition at line 215 of file windowTools.cpp.

void PushButton | ( | HWND | hWnd,
 |  | int | idControl
 | ) |

Definition at line 103 of file windowTools.cpp.

Referenced by ToggleCheck().

BOOL SetDeltaWindowPos | ( | HWND | hWndControl,
 |  | int | deltaX,
 |  | int | deltaY
 | ) |

Definition at line 163 of file windowTools.cpp.

References BOOL(), and point.

Referenced by DebugStructProc(), and ValueEditorProc().

BOOL SetDeltaWindowSize | ( | HWND | hWndControl,
 |  | int | deltaX,
 |  | int | deltaY
 | ) |

Definition at line 150 of file windowTools.cpp.

References BOOL().

Referenced by ValueEditorProc().

void SetFullScreen | ( | HWND | hWnd,
 |  | BOOL | isFull,
 |  | BOOL | isTopMost = FALSE
 | ) |

Definition at line 65 of file windowTools.cpp.

References BOOL(), GetWindowPos(), GetWindowSize(), and SetWindowStyle().

BOOL SetWindowSize | ( | HWND | hWndControl,
 |  | int | dx,
 |  | int | dy
 | ) |

Definition at line 36 of file windowTools.cpp.

References BOOL().

LONG SetWindowStyle | ( | HWND | hWnd,
 |  | int | set,
 |  | LONG | dwStyle
 | ) |

Definition at line 56 of file windowTools.cpp.

Referenced by SetFullScreen(), and SetWindowTitle().

void SetWindowTitle | ( | HWND | hWnd,
 |  | char * | title,
 |  | BOOL | enableTitle
 | ) |

Definition at line 96 of file windowTools.cpp.

References SetWindowStyle().

void ShowMouse ( BOOL active )

affiche le curseur de la souris

Definition at line 130 of file windowTools.cpp.

Referenced by DebugStructProc(), ControlEngine::Proc(), and ValueEditorProc().

BOOL ToggleCheck | ( | HWND | hWnd,
 |  | int | idControl
 | ) |

Definition at line 109 of file windowTools.cpp.

References BOOL(), and PushButton().

void TreeView_ExpandAll | ( | HWND | hTree,
 |  | BOOL | expand,
 |  | HTREEITEM | rootTree = NULL
 | ) |

Definition at line 177 of file windowTools.cpp.

void TreeView_ExpandAll_Level | ( | HWND | hTree,
 |  | BOOL | expand,
 |  | int | levelMax,
 |  | HTREEITEM | rootTree = NULL
 | ) |

Definition at line 191 of file windowTools.cpp.

References level.

Referenced by DebugStructProc().

Generated on Fri Aug 20 19:20:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: windowTools.h Source File

windowTools.h

Go to the documentation of this file.
00001 /* ***********************************************************************************
00002         Writer:         Sebastien Bloc
00003         Copyright:      2003-2004
00004         eMail:          sebastien.bloc@free.fr
00005         URL:            http://mignonsoft.free.fr
00006
00007         This program is free software; you can redistribute it and/or
00008         modify it under the terms of the GNU General Public License
00009         as published by the Free Software Foundation; either version 2
00010         of the License, or (at your option) any later version.
00011
00012         This program is distributed in the hope that it will be useful,
00013         but WITHOUT ANY WARRANTY; without even the implied warranty of
00014         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015         GNU General Public License for more details.
00016         http://www.gnu.org/copyleft/gpl.html
00017 *********************************************************************************** */
00018
00023 #ifndef INCLUDE_WINDOW_TOOLS_H
00024 #define INCLUDE_WINDOW_TOOLS_H
00025
00026 #include "windowsx.h"
00027 #include "commctrl.h"
00028
00029 BOOL GetWindowSize(HWND hWnd,int *dx,int *dy);
00030 BOOL GetWindowPos(HWND hWnd,int *x,int *y);
00031 BOOL SetWindowSize(HWND hWndControl,int dx,int dy);
00032 LONG SetWindowStyle(HWND hWnd,int set,LONG dwStyle);
00033 void SetFullScreen(HWND hWnd,BOOL isFull,BOOL isTopMost=FALSE);
00034 void SetWindowTitle(HWND hWnd,char *title,BOOL enableTitle);
00035 BOOL ToggleCheck(HWND hWnd,int idControl);
00036 void PushButton(HWND hWnd,int idControl);
00037 void ShowMouse(BOOL active);
00038 BOOL GetDeltaWindow(HWND hWndParent,RECT *oldRect,int *deltaX,int *deltaY);
00039 BOOL SetDeltaWindowSize(HWND hWndControl,int deltaX,int deltaY);
00040 BOOL SetDeltaWindowPos(HWND hWndControl,int deltaX,int deltaY);
00041 void TreeView_ExpandAll (HWND hTree,BOOL expand,HTREEITEM rootTree=NULL);
00042 void TreeView_ExpandAll_Level (HWND hTree,BOOL expand,int levelMax,HTREEITEM rootTree=NULL);
00043 void MoveToBorderTask (HWND hUpdatingWnd);
00044
00045 #endif
Generated on Fri Aug 20 19:19:52 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Annotated Index

3d Controls Class List

Here are the classes, structs, unions and interfaces with brief descriptions:
Angles |
Array< T > |
AsMaterial | Element de materials
BaseObj< T, V > | Objet de base
BasicText3D | Classe de gestion de text 3D (basée sur la FTGL)
Box3D | Affiche une boite en 3D
Button | Class de parametre et d'evenement d'un "Bouton"
Calculator | Class de parametre et d'evenement d'un "Calculator"
CMsgBox |
CMyMenu | Permet degere des menus dans l'element du haut fait titre
Color | Gestion des couleurs en 3D valeur de [0;1] parametre: value ou {r,g,b,a}
Container | Class de parametre et d'evenement d'un "Container" qui peut contenir un autre control
Control | Class de parametre et d'evenement d'un "Control" (Control doit etre herité par tout control 3D)
ControlEngine | Gestion du moteur de rendu des controls
Coordonate< T > | Gestion des coordonnée en 3D (compatible avec OpenGL)
CubeDock | Docker: test le click sur une partie zone cubique
Cursor |
Curve | Gestion des l'incurvation d'une face
Demo |
Dock | Test le click sur une zone cubique (a utiliser pour faire un "Splitter")
Effect |
EffectApparition |
ElemStack | Element du stack d'inertia
ElemTaskWindow |
Enabling< T > | Variable active ou pas
EventButton |
EventContainer |
EventControl |
EventFaceOver |
EventInertia | Evenement liée a inertia
EventKey |
EventMouse | Evenement de souris
EventMouseButton | Evenemnt EventMouseButton
EventOver | Evenement sur le survole
EventSlider |
EventTextBox |
EventTitle |
EventTrackButton |
EventTreeView |
Face | Une face est la brique de base de l'affichage 3D
Fog |
Inertia | Donne le vecteur correspondant a la moyenne de deplacement donnée par longeur de cycl donnée
Layout< T > | Gestion des positionnements des controls
Light | Gestion d'une lumiere
LinearEqu2D< T > | Donne l'equation de la droite passant par les points
LineDock | Dock en ligne
MasterContainer | L'univers est le conteneur 3D general (le desktop en 3D)
Material | Gestion du materiel (notion OpenGL)
MsgBox | Equivalent de l'API "MessageBox" de Windows
MyDebug | MyDebug est la partie cliente (qui envoi) du debugeur (cf MyServerDebug)
MyException |
MyExceptionMemory |
MyList< T > |
MyListItem< T > | List generique
MyListIterator< T > |
MyRegistry | Lecture / Ecriture / Enumeration de clef et de valeur de registre
MyStack< T > | Stack generique, les Push & Pop peuvent ce faire en test ou en queut ==> File
MyString | Gestion de chaine de caractere dynamique
MyTree< T > | Arbre generique
MyTreeNode< T > | Gestion des Noeud d'un arbre MyTree
Object | "Objet" generique, utilise pour faire des list ou arbre d'element de type different
Object3D | Object 3D
Opperation |
ParamValueEditor | Parametre des valeurs de l'editeur
ParsingElem | Element de parsing
ParsingLine | Sauvegard du parsing du text
ParsingWord | Parsing de mots
Picking | Gestion du picking
Point1D< T > | Un point de 1 dimmentions (utils pour les interpolation lineaire)
Point2D< T > | Un point de 2 dimmentions
Point3D< T > | Un point de 3 dimmentions
PolygonMode | Gestion du mode d'affichage des polygons
Primitive | Gestion des Primitive graphics (ajout de face, de cube, etc ...)
Recorder |
Region | Gestion des region windows
ResizingAndRotateControl |
RGBA |
Screen |
Slider | Class de parametre et d'evenement d'un "Slider"
StateKey | Parametres des touches en cours
StateMouse | Etat de la souris
TaskWindow |
Text3D | Classe de gestion d'alignement de text 3D (basée sur la FTGL)
TextBox | Une "TextBox" est un control permetant l'affichage (isReadOnly=TRUE) et la saisie de text
TextTexture | Propriete d'un control a avoir une face avec du text
Texture | Gestion des textures pour la 3D
Textures | Toute les textures "commune"
Timer |
Tip | Class de parametre et d'evenement d'un "ToolsTip"
Title | Titre affiche une bare degradé titre avec des boutons (min,max,close)
TrackButton | Class de parametre et d'evenement d'un "Bouton"
TreeDirectory | Class de parametre et d'evenement d'une "TreeDirectory"
TreeView | Class de parametre et d'evenement d'une "TreeView"
TreeViewItem |
Tutorial | Evenement de parametre et d'evenement de l'application
Tutorial::ApplicationDemo |
Tutorial::BaseDemo |
Tutorial::Demo |
Tutorial::FaceDemo |
Tutorial::LayoutDemo |
Tutorial::UniversDemo |
Tutorial::WindowDemo |
Univers | L'univers est le conteneur 3D general (le desktop en 3D)
ValueEditor< T > | Valeur de l'element en saisie
ValueEditors | Gestion des l'ensemble de ValueEditor
ValueNamed< T > | Valeur nomée pour le mode Editor
Window | Une "Window" est formé d'un Title et d'un zone Cliente
Generated on Fri Aug 20 19:20:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Angles class Reference

Angles Class Reference

#include <angles.h>

List of all members.

Public Member Functions

Angles ()
Point3D< double > | GetEuler ()
void | operator= (Angles &src)
Angles (Point3D< double > &relativeAngles)
void | Rotate (Point3D< double > &relativeAngles)
void | Set (Point3D< double > &relativeAngles)
void | Add (Point3D< double > &relativeAngles)
Angles (double x, double y, double z)
void | Rotate (double x, double y, double z)
void | Set (double x, double y, double z)
void | Add (double x, double y, double z)

Constructor & Destructor Documentation

Angles::Angles ( )

Definition at line 28 of file angles.cpp.

Angles::Angles ( Point3D< double > & relativeAngles )

Definition at line 51 of file angles.cpp.

References Set().

Angles::Angles | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Definition at line 57 of file angles.cpp.

References Set().

Member Function Documentation

void Angles::Add | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Definition at line 110 of file angles.cpp.

References Point3D< double >::Add().

void Angles::Add ( Point3D< double > & relativeAngles )

Definition at line 101 of file angles.cpp.

References Point3D< T >::IsNotNull().

Point3D< double > Angles::GetEuler ( )

Definition at line 41 of file angles.cpp.

void Angles::operator= ( Angles & src )

Definition at line 33 of file angles.cpp.

References src.

void Angles::Rotate | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Definition at line 75 of file angles.cpp.

void Angles::Rotate ( Point3D< double > & relativeAngles )

Definition at line 63 of file angles.cpp.

void Angles::Set | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Definition at line 95 of file angles.cpp.

References Point3D< double >::Set().

void Angles::Set ( Point3D< double > & relativeAngles )

Definition at line 89 of file angles.cpp.

Referenced by Angles().

The documentation for this class was generated from the following files:
  • angles.h
  • angles.cpp
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Angles Member List

This is the complete list of members for Angles, including all inherited members.
Add(Point3D< double > &relativeAngles) | Angles
Add(double x, double y, double z) | Angles
Angles() | Angles
Angles(Point3D< double > &relativeAngles) | Angles
Angles(double x, double y, double z) | Angles
GetEuler() | Angles
operator=(Angles &src) | Angles
Rotate(Point3D< double > &relativeAngles) | Angles
Rotate(double x, double y, double z) | Angles
Set(Point3D< double > &relativeAngles) | Angles
Set(double x, double y, double z) | Angles
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateArray< T > class Reference

Array< T > Class Template Reference

#include <array.h>

List of all members.

Public Member Functions

Array ()
Array (int _size)
~Array ()
void | operator= (Array &src)
void | Init (int _size)
void | New ()
void | Zero ()
void | operator= (int val)
Permet l'ecriture
 var=0;
.

void | Delete ()
BOOL | Set (int num, T value)

Public Attributes

int | size
T * | values

template<class T>
class Array< T >

Constructor & Destructor Documentation

template<class T>
Array< T >::Array ( ) [inline]

Definition at line 47 of file array.h.

template<class T>
Array< T >::Array ( int _size ) [inline]

Definition at line 51 of file array.h.

References Array< T >::Init().

template<class T>
Array< T >::~Array ( ) [inline]

Definition at line 56 of file array.h.

References Array< T >::Delete().

Member Function Documentation

template<class T>
void Array< T >::Delete ( ) [inline]

Definition at line 90 of file array.h.

References Array< T >::Init(), size, and values.

Referenced by Array< T >::New(), and Array< T >::~Array().

template<class T>
void Array< T >::Init ( int _size ) [inline]

Definition at line 66 of file array.h.

References size, and values.

Referenced by Array< T >::Array(), and Array< T >::Delete().

template<class T>
void Array< T >::New ( ) [inline]

Definition at line 72 of file array.h.

References Array< T >::Delete(), size, values, and Array< T >::Zero().

template<class T>
void Array< T >::operator= ( int val ) [inline]

Permet l'ecriture

 var=0;
.

Definition at line 85 of file array.h.

References size, and values.

template<class T>
void Array< T >::operator= ( Array< T > & src ) [inline]

Definition at line 61 of file array.h.

References size, and src.

Referenced by Array< T >::Zero().

template<class T>
BOOL Array< T >::Set | ( | int | num,
 |  | T | value
 | ) | [inline]

Definition at line 99 of file array.h.

References BOOL(), num, size, and values.

template<class T>
void Array< T >::Zero ( ) [inline]

Definition at line 79 of file array.h.

References Array< T >::operator=().

Referenced by Array< T >::New().

Member Data Documentation

template<class T>
int Array< T >::size

Definition at line 44 of file array.h.

template<class T>
T* Array< T >::values

Definition at line 45 of file array.h.

The documentation for this class was generated from the following file:
  • array.h
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Array< T > Member List

This is the complete list of members for Array< T >, including all inherited members.
Array() | Array< T > | [inline]
Array(int _size) | Array< T > | [inline]
Delete() | Array< T > | [inline]
Init(int _size) | Array< T > | [inline]
New() | Array< T > | [inline]
operator=(Array &src) | Array< T > | [inline]
operator=(int val) | Array< T > | [inline]
Set(int num, T value) | Array< T > | [inline]
size | Array< T > |
values | Array< T > |
Zero() | Array< T > | [inline]
~Array() | Array< T > | [inline]
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: AsMaterial struct Reference

AsMaterial Struct Reference

element de materials More...

#include <material.h>

List of all members.

Public Attributes

MyString name
float | ambient [4]
float | diffuse [4]
float | specular [4]
float | shininess

Detailed Description

element de materials

Definition at line 34 of file material.h.

Member Data Documentation

float AsMaterial::ambient[4]

Definition at line 37 of file material.h.

Referenced by Material::As().

float AsMaterial::diffuse[4]

Definition at line 38 of file material.h.

Referenced by Material::As().

MyString AsMaterial::name

Definition at line 36 of file material.h.

float AsMaterial::shininess

Definition at line 40 of file material.h.

float AsMaterial::specular[4]

Definition at line 39 of file material.h.

Referenced by Material::As().

The documentation for this struct was generated from the following file:
  • material.h
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

AsMaterial Member List

This is the complete list of members for AsMaterial, including all inherited members.
ambient | AsMaterial
diffuse | AsMaterial
name | AsMaterial
shininess | AsMaterial
specular | AsMaterial
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateBaseObj< T, V > class Reference

BaseObj< T, V > Class Template Reference

Objet de base. More...

#include <MyObject.h>

Inheritance diagram for BaseObj< T, V >:

Object List of all members.

Public Member Functions

BaseObj ()
void * | Duplicate (void *_in)
void | operator= (BaseObj< T, V > &source)

Public Attributes

T | elem

Detailed Description

template<class T, int V>
class BaseObj< T, V >

Objet de base.

Si la class T est elle meme une template faire prealablement:

  • typedef CMaTemplate<type> CMaTemplate_type;
  • #define CBASE_INDEX_MATEPLATE_TYPE CBASE_INDEX_CUSTOM+num
  • #define CBase_MaTemplate_type BaseObj<CMaTemplate_type,CBASE_INDEX_MATEPLATE_TYPE>

Definition at line 124 of file MyObject.h.

Constructor & Destructor Documentation

template<class T, int V>
BaseObj< T, V >::BaseObj ( ) [inline]

Definition at line 129 of file MyObject.h.

References BaseObj< T, V >::Duplicate(), Obj_CallBack, and void().

Member Function Documentation

template<class T, int V>
void* BaseObj< T, V >::Duplicate ( void * _in ) [inline]

Definition at line 134 of file MyObject.h.

Referenced by BaseObj< T, V >::BaseObj().

template<class T, int V>
void BaseObj< T, V >::operator= ( BaseObj< T, V > & source ) [inline]

Definition at line 142 of file MyObject.h.

References BaseObj< T, V >::elem.

Member Data Documentation

template<class T, int V>
T BaseObj< T, V >::elem

Definition at line 127 of file MyObject.h.

Referenced by BaseObj< T, V >::operator=().

The documentation for this class was generated from the following file:
  • MyObject.h
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

BaseObj< T, V > Member List

This is the complete list of members for BaseObj< T, V >, including all inherited members.
BaseObj() | BaseObj< T, V > | [inline]
callBackAlloc | Object |
Duplicate(void *_in) | BaseObj< T, V > | [inline]
elem | BaseObj< T, V > |
Object() | Object | [inline]
Object(int _type, void *_thisParent) | Object | [inline]
operator=(BaseObj< T, V > &source) | BaseObj< T, V > | [inline]
Object::operator=(Object &source) | Object | [inline]
param | Object |
thisParent | Object |
type | Object |
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: BasicText3D class Reference

BasicText3D Class Reference

Classe de gestion de text 3D (basée sur la FTGL). More...

#include <text3d.h>

Inheritance diagram for BasicText3D:

Text3D List of all members.

Public Member Functions

BasicText3D ()
void | SetRatioXY (GLdouble value)
void | Setup (FTFont *f, FontType t, int x=0, int y=0)
void | operator= (BasicText3D &src)
BOOL | DrawPicking (char *text)
Affichage pour le picking.

BOOL | Draw (char *text)
BOOL | Draw (char letter)
Point3D< float > | GetBox (char *text)
float | GetAscender ()
float | GetDescender ()
float | GetHeight ()
float | GetWidth (char *text)
float | GetWidth (char letter)

Public Attributes

FontType type
type de fonte

FTFont * | font
fonte a appliquer

Material material
couleur

float | depth
profondeur dans le cas d'une font extrude

int | xCenter
centrage en X (-1 a gauche, 0 centrer, 1 a droite)

int | yCenter
centrage en Y (-1 en haut,0 centrer, 1 en base)

GLdouble | zCenter
centrage en Z

double | scale
taille relative de la fonte (en )

BOOL | usePicking
dois on utiliser le picking

double | ratioXY
rapport X/Y de la surface en cours

double | ratioYX
rapport Y/X de la surface en cours

Detailed Description

Classe de gestion de text 3D (basée sur la FTGL).

Les parametres:

  • value: text
  • clipping: taille de la limite d'affichage
  • align[X,Y]: type d'allignement du text par rapport au clipping
  • type: type de fonte (texture,extrude,outline etc ...)
  • font: la fonte qui va etre utilisée
  • material: couleur a afficher
  • pos: decalade par rapport a la face

ex.:

BasicText3D text;
FTGLTextureFont font;
font.open("myfont.ttf");
font.FaceSize(18);
text.Setup(&font,ft_texture,0,0);
text.value="hello word !!";
// positionage en 3D par les glTranlate,glRotate,glScall
text.Draw();

Definition at line 122 of file text3d.h.

Constructor & Destructor Documentation

BasicText3D::BasicText3D ( )

Definition at line 26 of file text3d.cpp.

References font, ft_unknown, Material::SetFull(), SetRatioXY(), type, usePicking, xCenter, yCenter, and zCenter.

Member Function Documentation

BOOL BasicText3D::Draw ( char letter )

Definition at line 84 of file text3d.cpp.

References BOOL(), and Draw().

BOOL BasicText3D::Draw ( char * text )

Definition at line 91 of file text3d.cpp.

References BOOL(), ce, decal, font, ft_bitmap, ft_extrude, ft_outline, ft_pixmap, ft_polygon, ft_texture, ft_unknown, GetAscender(), GetDescender(), GetWidth(), ControlEngine::monitor, type, Material::Use(), xCenter, yCenter, and zCenter.

Referenced by Draw(), and DrawPicking().

BOOL BasicText3D::DrawPicking ( char * text )

Affichage pour le picking.

Todo:
Parametre:
  • asBoundBox, afficher just les boites englobantes ou caractere complet
  • differentier les lettre
Question ? Le Text3D doit avoir l'option usePicking(TRUE,FALSE,letter)

Definition at line 78 of file text3d.cpp.

References BOOL(), Draw(), and usePicking.

float BasicText3D::GetAscender ( )

Definition at line 166 of file text3d.cpp.

References font.

Referenced by Draw(), and GetHeight().

Point3D< float > BasicText3D::GetBox ( char * text )

Definition at line 157 of file text3d.cpp.

References font, and Point3D< T >::Set().

float BasicText3D::GetDescender ( )

Definition at line 171 of file text3d.cpp.

References font.

Referenced by Draw(), and GetHeight().

float BasicText3D::GetHeight ( )

Definition at line 176 of file text3d.cpp.

References GetAscender(), and GetDescender().

Referenced by Text3D::ComputeLineSize().

float BasicText3D::GetWidth ( char letter )

Definition at line 181 of file text3d.cpp.

References GetWidth().

float BasicText3D::GetWidth ( char * text )

Si valeur NULL, utilise le text courent

Definition at line 189 of file text3d.cpp.

References font.

Referenced by Text3D::ComputeLayout(), Text3D::ComputeLineSize(), Draw(), and GetWidth().

void BasicText3D::operator= ( BasicText3D & src )

Definition at line 54 of file text3d.cpp.

References font, src, type, usePicking, xCenter, yCenter, and zCenter.

Referenced by Text3D::operator=().

void BasicText3D::SetRatioXY ( GLdouble value )

Definition at line 40 of file text3d.cpp.

References ratioYX.

Referenced by BasicText3D(), and Face::Draw().

void BasicText3D::Setup | ( | FTFont * | f,
 |  | FontType | t,
 |  | int | x = 0,
 |  | int | y = 0
 | ) |

Definition at line 46 of file text3d.cpp.

References f, font, t, type, xCenter, and yCenter.

Referenced by Text3D::Setup().

Member Data Documentation

float BasicText3D::depth

profondeur dans le cas d'une font extrude

Definition at line 128 of file text3d.h.

Referenced by ValueEditors::MakeElemFaceStruct().

FTFont* BasicText3D::font

fonte a appliquer

Definition at line 126 of file text3d.h.

Referenced by BasicText3D(), Draw(), GetAscender(), GetBox(), GetDescender(), GetWidth(), operator=(), and Setup().

Material BasicText3D::material

couleur

Definition at line 127 of file text3d.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Button::Button(), Tutorial::LayoutDemo::ConfigTextFace(), TaskWindow::Create(), MsgBox::Create(), Demo::Demo(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), Tutorial::UniversDemo::SetFace(), TextBox::TextBox(), Tip::Tip(), Title::Title(), and Tutorial::WindowDemo::WindowDemo().

double BasicText3D::ratioXY

rapport X/Y de la surface en cours

Definition at line 134 of file text3d.h.

double BasicText3D::ratioYX

rapport Y/X de la surface en cours

Definition at line 135 of file text3d.h.

Referenced by SetRatioXY().

double BasicText3D::scale

taille relative de la fonte (en )

Definition at line 132 of file text3d.h.

Referenced by Tutorial::LayoutDemo::ConfigTextFace(), TaskWindow::Create(), MsgBox::Create(), and ValueEditors::MakeElemFaceStruct().

FontType BasicText3D::type

type de fonte

Definition at line 125 of file text3d.h.

BOOL BasicText3D::usePicking

dois on utiliser le picking

Definition at line 133 of file text3d.h.

Referenced by BasicText3D(), DrawPicking(), and operator=().

int BasicText3D::xCenter

centrage en X (-1 a gauche, 0 centrer, 1 a droite)

Definition at line 129 of file text3d.h.

Referenced by BasicText3D(), Draw(), operator=(), and Setup().

int BasicText3D::yCenter

centrage en Y (-1 en haut,0 centrer, 1 en base)

Definition at line 130 of file text3d.h.

Referenced by BasicText3D(), Draw(), operator=(), and Setup().

GLdouble BasicText3D::zCenter

centrage en Z

Definition at line 131 of file text3d.h.

Referenced by BasicText3D(), Draw(), and operator=().

The documentation for this class was generated from the following files:
  • text3d.h
  • text3d.cpp
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

BasicText3D Member List

This is the complete list of members for BasicText3D, including all inherited members.
BasicText3D() | BasicText3D
depth | BasicText3D
Draw(char *text) | BasicText3D
Draw(char letter) | BasicText3D
DrawPicking(char *text) | BasicText3D
font | BasicText3D
GetAscender() | BasicText3D
GetBox(char *text) | BasicText3D
GetDescender() | BasicText3D
GetHeight() | BasicText3D
GetWidth(char *text) | BasicText3D
GetWidth(char letter) | BasicText3D
material | BasicText3D
operator=(BasicText3D &src) | BasicText3D
ratioXY | BasicText3D
ratioYX | BasicText3D
scale | BasicText3D
SetRatioXY(GLdouble value) | BasicText3D
Setup(FTFont *f, FontType t, int x=0, int y=0) | BasicText3D
type | BasicText3D
usePicking | BasicText3D
xCenter | BasicText3D
yCenter | BasicText3D
zCenter | BasicText3D
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Box3D class Reference

Box3D Class Reference

Affiche une boite en 3D. More...

#include <box.h>

List of all members.

Public Member Functions

Box3D ()
void | Zero ()
void | operator= (Box3D &source)
void | Draw ()
void | CenterIt ()

Public Attributes

Material material
Coordonate< GLfloat > | coor
Coordonate< GLfloat > | delta

Detailed Description

Affiche une boite en 3D.

Definition at line 33 of file box.h.

Constructor & Destructor Documentation

Box3D::Box3D ( ) [inline]

Definition at line 41 of file box.h.

References Zero().

Member Function Documentation

void Box3D::CenterIt ( ) [inline]

Definition at line 106 of file box.h.

References coor, delta, Coordonate< GLfloat >::x, Coordonate< GLfloat >::y, and Coordonate< GLfloat >::z.

Referenced by ControlEngine::DrawLight().

void Box3D::Draw ( ) [inline]

Definition at line 60 of file box.h.

References coor, delta, material, Material::Use(), Coordonate< GLfloat >::x, Coordonate< GLfloat >::y, and Coordonate< GLfloat >::z.

Referenced by ControlEngine::DrawLight().

void Box3D::operator= ( Box3D & source ) [inline]

Definition at line 53 of file box.h.

References coor, delta, and material.

void Box3D::Zero ( ) [inline]

Definition at line 46 of file box.h.

References coor, delta, material, Material::Zero(), and Coordonate< GLfloat >::Zero().

Referenced by Box3D().

Member Data Documentation

Coordonate<GLfloat> Box3D::coor

Definition at line 37 of file box.h.

Referenced by CenterIt(), Draw(), ControlEngine::DrawLight(), ControlEngine::MajLights(), operator=(), and Zero().

Coordonate<GLfloat> Box3D::delta

Definition at line 38 of file box.h.

Referenced by CenterIt(), Draw(), ControlEngine::MajLights(), operator=(), and Zero().

Material Box3D::material

Definition at line 36 of file box.h.

Referenced by Draw(), ControlEngine::MajLights(), operator=(), and Zero().

The documentation for this class was generated from the following file:
  • box.h
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Box3D Member List

This is the complete list of members for Box3D, including all inherited members.
Box3D() | Box3D | [inline]
CenterIt() | Box3D | [inline]
coor | Box3D |
delta | Box3D |
Draw() | Box3D | [inline]
material | Box3D |
operator=(Box3D &source) | Box3D | [inline]
Zero() | Box3D | [inline]
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Button class Reference

Button Class Reference

Class de parametre et d'evenement d'un "Bouton". More...

#include <button.h>

Inheritance diagram for Button:

Control List of all members.

Public Member Functions

Button ()
~Button ()
virtual void | Create ()
void | Create (double depth)
void | operator= (char *newCaption)
void | SetText (char *newCaption)
void | ToString (MyString &str)
Pour le debugage.

void | PushUp ()
Si on quit le control avec le boutton appuyé ==> arret.

void | SetPush (BOOL enable)
void | SetPushToogle ()
BOOL | GetPush ()
determine si le button est appuillé ou pas (vaut aussi en mode pushLike)

void | ModePushLike (BOOL enable)
gestion du mode pushLike (toogle appuis relaché a chaque click)

void | ModeAllButtons (BOOL enable)
Tout les bouttons peuvent activé le click.

int | OnPushDown (StateMouse *mouse, int face)
int | OnPushUp (StateMouse *mouse, int face)
int | OnOverOut (Control *newControl, int face)
int | OnOverIn (Control *oldControl, int face)

Public Attributes

MyString caption
double | depth_max
double | depth_min
double | depth_cur
double | timeOut
BOOL | isPushed
Material materialOnUp
Material materialOnDown
Material * materialCurrent
Text3D text
EventButton onButton
Timer timerPushDown

Detailed Description

Class de parametre et d'evenement d'un "Bouton".

Definition at line 40 of file button.h.

Constructor & Destructor Documentation

Button::Button ( )

Definition at line 29 of file button.cpp.

References align_center, ce, DEFAULT_DEPTH_MAX_BUTTON, DEFAULT_DEPTH_MIN_BUTTON, depth_cur, depth_max, depth_min, EventMouseButton::down, f, ControlEngine::fontTexture, ft_texture, EventOver::in, isPushed, EventMouse::left, BasicText3D::material, materialCurrent, materialOnDown, materialOnUp, EventControl::mouse, OnOverIn(), OnOverOut(), OnPushDown(), OnPushUp(), EventOver::out, EventControl::over, Text3D::SetAlign(), Material::SetDS(), Text3D::Setup(), TIME_OUT_PUSH_DOWN_BUTTON, timeOut, and EventMouseButton::up.

Button::~Button ( )

Definition at line 60 of file button.cpp.

Member Function Documentation

void Button::Create ( double depth )

Definition at line 66 of file button.cpp.

References Primitive::AddBox(), ce, depth_cur, depth_max, MyTreeNode< T >::elem, MyTreeNode< T >::Elems(), FACE_FRONT, materialCurrent, ControlEngine::primitive, and Control::SetParent().

virtual void Button::Create ( ) [inline, virtual]

Reimplemented from Control.

Definition at line 67 of file button.h.

References DEFAULT_DEPTH_MAX_BUTTON.

Referenced by TaskWindow::Add(), Tutorial::BaseDemo::BaseDemo(), Tutorial::LayoutDemo::ConfigTreeButton(), Title::Create(), Slider::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), Tutorial::LayoutDemo::LayoutDemo(), and Tutorial::UniversDemo::SetFace().

BOOL Button::GetPush ( )

determine si le button est appuillé ou pas (vaut aussi en mode pushLike)

Definition at line 132 of file button.cpp.

References BOOL(), and isPushed.

void Button::ModeAllButtons ( BOOL enable )

Tout les bouttons peuvent activé le click.

Definition at line 154 of file button.cpp.

References EventMouseButton::down, EventMouse::mid, EventControl::mouse, OnPushDown(), OnPushUp(), EventMouse::right, and EventMouseButton::up.

Referenced by Tutorial::LayoutDemo::ConfigTreeButton(), and Tutorial::LayoutDemo::LayoutDemo().

void Button::ModePushLike ( BOOL enable )

gestion du mode pushLike (toogle appuis relaché a chaque click)

Definition at line 148 of file button.cpp.

Referenced by Tutorial::LayoutDemo::ConfigTreeButton(), and Tutorial::LayoutDemo::LayoutDemo().

int Button::OnOverIn | ( | Control * | oldControl,
 |  | int | face
 | ) |

Definition at line 192 of file button.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorNothing, Debug2Param, and Control::name.

Referenced by Button().

int Button::OnOverOut | ( | Control * | newControl,
 |  | int | face
 | ) |

Definition at line 199 of file button.cpp.

References Debug2Param, Control::name, and PushUp().

Referenced by Button().

int Button::OnPushDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 79 of file button.cpp.

References Cursor::ApplyTypes(), BindTimer, ce, EventButton::checked, ControlEngine::cursor, DebugMouse2, MyTreeNode< T >::elem, Timer::GetDeltaTime(), isPushed, materialCurrent, materialOnDown, onButton, SetPushToogle(), and timerPushDown.

Referenced by Button(), and ModeAllButtons().

int Button::OnPushUp | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 137 of file button.cpp.

References Cursor::ApplyTypes(), BOOL(), ce, EventButton::click, ControlEngine::cursor, DebugMouse2, isPushed, onButton, and PushUp().

Referenced by Button(), and ModeAllButtons().

void Button::operator= ( char * newCaption )

Definition at line 208 of file button.cpp.

References Text3D::SetText().

void Button::PushUp ( )

Si on quit le control avec le boutton appuyé ==> arret.

Definition at line 178 of file button.cpp.

References depth_cur, depth_max, MyTreeNode< T >::elem, isPushed, materialCurrent, materialOnUp, Timer::Stop(), and timerPushDown.

Referenced by OnOverOut(), and OnPushUp().

void Button::SetPush ( BOOL enable )

Definition at line 120 of file button.cpp.

References depth_cur, depth_max, depth_min, and isPushed.

Referenced by Tutorial::LayoutDemo::OnReset(), Tutorial::LayoutDemo::OnResetAll(), Tutorial::LayoutDemo::OnSet(), Tutorial::LayoutDemo::OnSetAll(), and SetPushToogle().

void Button::SetPushToogle ( )

Definition at line 126 of file button.cpp.

References isPushed, and SetPush().

Referenced by OnPushDown(), Tutorial::LayoutDemo::OnToogle(), and Tutorial::LayoutDemo::OnToogleAll().

void Button::SetText ( char * newCaption )

Definition at line 213 of file button.cpp.

References Text3D::SetText().

Referenced by TaskWindow::Add(), Tutorial::BaseDemo::BaseDemo(), Tutorial::Create(), and Univers::ExitQuestion().

void Button::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 220 of file button.cpp.

References MyString::AddFormat(), and caption.

Member Data Documentation

MyString Button::caption

Definition at line 51 of file button.h.

Referenced by ToString().

double Button::depth_cur

Definition at line 52 of file button.h.

Referenced by Button(), Create(), PushUp(), and SetPush().

double Button::depth_max

Definition at line 52 of file button.h.

Referenced by Button(), Slider::Create(), Create(), Tutorial::LayoutDemo::LayoutDemo(), PushUp(), and SetPush().

double Button::depth_min

Definition at line 52 of file button.h.

Referenced by Button(), Slider::Create(), Tutorial::LayoutDemo::LayoutDemo(), and SetPush().

BOOL Button::isPushed

Definition at line 54 of file button.h.

Referenced by Button(), GetPush(), OnPushDown(), OnPushUp(), PushUp(), SetPush(), and SetPushToogle().

Material* Button::materialCurrent

Definition at line 57 of file button.h.

Referenced by Button(), Create(), OnPushDown(), and PushUp().

Material Button::materialOnDown

Definition at line 56 of file button.h.

Referenced by Button(), OnPushDown(), and Tutorial::UniversDemo::SetFace().

Material Button::materialOnUp

Definition at line 55 of file button.h.

Referenced by Button(), PushUp(), and Tutorial::UniversDemo::SetFace().

EventButton Button::onButton

Definition at line 61 of file button.h.

Referenced by TaskWindow::Add(), Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Calculator::Calculator(), Tutorial::Create(), Tutorial::Demo::Demo(), Tutorial::Demo::Ending(), Univers::ExitQuestion(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), MsgBox::MsgBox(), OnPushDown(), OnPushUp(), Tutorial::UniversDemo::SetFace(), Title::Title(), Tutorial::Tutorial(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

Text3D Button::text

Definition at line 58 of file button.h.

Referenced by TaskWindow::Add(), Tutorial::BaseDemo::BaseDemo(), Tutorial::LayoutDemo::ConfigTreeButton(), Tutorial::LayoutDemo::LayoutDemo(), and Tutorial::Tutorial().

double Button::timeOut

Definition at line 53 of file button.h.

Referenced by Button().

Timer Button::timerPushDown

Definition at line 62 of file button.h.

Referenced by OnPushDown(), and PushUp().

The documentation for this class was generated from the following files:
  • button.h
  • button.cpp
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Button Member List

This is the complete list of members for Button, including all inherited members.
Button() | Button |
caption | Button |
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | Button | [inline, virtual]
Create(double depth) | Button |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
depth_cur | Button |
depth_max | Button |
depth_min | Button |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
GetPush() | Button |
id | Control |
inertia | Control | [static]
isEnable | Control |
isPushed | Button |
isView | Control |
leftDown | Control | [static]
materialCurrent | Button |
materialOnDown | Button |
materialOnUp | Button |
midDown | Control | [static]
ModeAllButtons(BOOL enable) | Button |
ModePushLike(BOOL enable) | Button |
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
onButton | Button |
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnOverIn(Control *oldControl, int face) | Button |
OnOverOut(Control *newControl, int face) | Button |
OnPushDown(StateMouse *mouse, int face) | Button |
OnPushUp(StateMouse *mouse, int face) | Button |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(char *newCaption) | Button |
Control::operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
PushUp() | Button |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
SetPush(BOOL enable) | Button |
SetPushToogle() | Button |
SetText(char *newCaption) | Button |
Size(double x, double y) | Control |
sleepedDelay | Control |
text | Button |
timeOut | Button |
timerAutoWheel | Control | [static]
timerPushDown | Button |
timerSleeped | Control | [static]
ToString(MyString &str) | Button |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Button() | Button |
~Control() | Control |
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Calculator class Reference

Calculator Class Reference

Class de parametre et d'evenement d'un "Calculator". More...

#include <calculator.h>

Inheritance diagram for Calculator:

Window ResizingAndRotateControl Control List of all members.

Public Member Functions

Calculator ()
void | Create ()
int | OnKey (StateKey *key, int face)
void | OnNum (int num)
int | OnNum0 ()
int | OnNum1 ()
int | OnNum2 ()
int | OnNum3 ()
int | OnNum4 ()
int | OnNum5 ()
int | OnNum6 ()
int | OnNum7 ()
int | OnNum8 ()
int | OnNum9 ()
int | OnDot ()
int | OnClear ()
int | OnEqual ()
int | OnAdd ()
int | OnSub ()
int | OnMult ()
int | OnDiv ()
int | OnOk ()

Detailed Description

Class de parametre et d'evenement d'un "Calculator".

Definition at line 50 of file calculator.h.

Constructor & Destructor Documentation

Calculator::Calculator ( )

Definition at line 66 of file calculator.cpp.

References align_begin, EventButton::click, EventKey::down, EventControl::key, OnAdd(), Button::onButton, OnClear(), Control::onControl, OnDiv(), OnDot(), OnEqual(), OnKey(), OnMult(), OnNum0(), OnNum1(), OnNum2(), OnNum3(), OnNum4(), OnNum5(), OnNum6(), OnNum7(), OnNum8(), OnNum9(), OnSub(), Text3D::SetAlign(), TextBox::text, and Title::useMax.

Member Function Documentation

void Calculator::Create ( ) [virtual]

Reimplemented from Window.

Definition at line 126 of file calculator.cpp.

References align_begin, align_center, Title::btnIcon, ce, Button::Create(), TextBox::Create(), Window::Create(), MyTreeNode< T >::elem, MyTreeNode< T >::Elems(), FACE_BACK, FACE_FRONT, Control::faceNode, Texture::FromBitmap(), Primitive::GoTo(), ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Text3D::SetAlign(), TextBox::text, ControlEngine::univers, Control::XDockCenter(), Control::XDockLeft(), Control::YDockCenter(), and Control::YDockTop().

Referenced by Tutorial::ApplicationDemo::ApplicationDemo().

int Calculator::OnAdd ( )

Definition at line 327 of file calculator.cpp.

References MyList< Opperation >::i, Opperation::number, Opperation::op, and Op_Add.

Referenced by Calculator(), and OnKey().

int Calculator::OnClear ( )

Definition at line 313 of file calculator.cpp.

References MyList< Opperation >::i, and MyListIterator< Opperation >::SuprAll().

Referenced by Calculator(), and OnKey().

int Calculator::OnDiv ( )

Definition at line 371 of file calculator.cpp.

References MyList< Opperation >::i, Opperation::number, Opperation::op, and Op_Div.

Referenced by Calculator(), and OnKey().

int Calculator::OnDot ( )

Definition at line 306 of file calculator.cpp.

Referenced by Calculator(), and OnKey().

int Calculator::OnEqual ( )

Definition at line 321 of file calculator.cpp.

Referenced by Calculator(), and OnKey().

int Calculator::OnKey | ( | StateKey * | key,
 |  | int | face
 | ) |

Definition at line 262 of file calculator.cpp.

References StateKey::code, Control::Delete(), OnAdd(), OnClear(), OnDiv(), OnDot(), OnEqual(), OnMult(), OnNum(), and OnSub().

Referenced by Calculator().

int Calculator::OnMult ( )

Definition at line 358 of file calculator.cpp.

References MyList< Opperation >::i, Opperation::number, Opperation::op, and Op_Mult.

Referenced by Calculator(), and OnKey().

void Calculator::OnNum ( int num )

Definition at line 288 of file calculator.cpp.

References num.

Referenced by OnKey(), OnNum0(), OnNum1(), OnNum2(), OnNum3(), OnNum4(), OnNum5(), OnNum6(), OnNum7(), OnNum8(), and OnNum9().

int Calculator::OnNum0 ( )

Definition at line 295 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum1 ( )

Definition at line 296 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum2 ( )

Definition at line 297 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum3 ( )

Definition at line 298 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum4 ( )

Definition at line 299 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum5 ( )

Definition at line 300 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum6 ( )

Definition at line 301 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum7 ( )

Definition at line 302 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum8 ( )

Definition at line 303 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnNum9 ( )

Definition at line 304 of file calculator.cpp.

References OnNum().

Referenced by Calculator().

int Calculator::OnOk ( )

Definition at line 384 of file calculator.cpp.

References Window::OnClose().

int Calculator::OnSub ( )

Definition at line 340 of file calculator.cpp.

References MyList< Opperation >::i, Opperation::number, Opperation::op, and Op_Sub.

Referenced by Calculator(), and OnKey().

The documentation for this class was generated from the following files:
  • calculator.h
  • calculator.cpp
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Calculator Member List

This is the complete list of members for Calculator, including all inherited members.
Calculator() | Calculator |
canResize | ResizingAndRotateControl |
canRotate | ResizingAndRotateControl |
ChangeDirection() | Control |
client | Window |
Control() | Control |
controls | Control | [static]
Create() | Calculator | [virtual]
Window::Create(double depth) | Window |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnAdd() | Calculator |
OnClear() | Calculator |
OnClick(StateMouse *mouse, int face) | Control |
OnClose() | Window |
onControl | Control |
OnDiv() | Calculator |
OnDot() | Calculator |
OnEqual() | Calculator |
OnHover(StateMouse *mouse, int deltaX, int deltaY, int numFace) | ResizingAndRotateControl |
OnKey(StateKey *key, int face) | Calculator |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnLMRButton(StateMouse *, int) | Window |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Window |
OnMult() | Calculator |
OnNum(int num) | Calculator |
OnNum0() | Calculator |
OnNum1() | Calculator |
OnNum2() | Calculator |
OnNum3() | Calculator |
OnNum4() | Calculator |
OnNum5() | Calculator |
OnNum6() | Calculator |
OnNum7() | Calculator |
OnNum8() | Calculator |
OnNum9() | Calculator |
OnOk() | Calculator |
OnOver(StateMouse *mouse, int face) | Window |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
OnSub() | Calculator |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
ResizingAndRotateControl() | ResizingAndRotateControl |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
title | Window |
titleDock | Window |
ToString(MyString &str) | Window |
Window() | Window |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~ResizingAndRotateControl() | ResizingAndRotateControl |
~Window() | Window |
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: CMsgBox class Reference

CMsgBox Class Reference

#include <MyException.h>

List of all members.

Public Member Functions

CMsgBox (char *message, char *title, int style=0)
int | MessageBox ()

Public Attributes

MyString m_message
MyString m_title
int | m_style

Constructor & Destructor Documentation

CMsgBox::CMsgBox | ( | char * | message,
 |  | char * | title,
 |  | int | style = 0
 | ) | [inline]

Definition at line 65 of file MyException.h.

References m_style, and m_title.

Member Function Documentation

int CMsgBox::MessageBox ( ) [inline]

Definition at line 72 of file MyException.h.

References m_style, and m_title.

Member Data Documentation

MyString CMsgBox::m_message

Definition at line 60 of file MyException.h.

int CMsgBox::m_style

Definition at line 62 of file MyException.h.

Referenced by CMsgBox(), and MessageBox().

MyString CMsgBox::m_title

Definition at line 61 of file MyException.h.

Referenced by CMsgBox(), and MessageBox().

The documentation for this class was generated from the following file:
  • MyException.h
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

CMsgBox Member List

This is the complete list of members for CMsgBox, including all inherited members.
CMsgBox(char *message, char *title, int style=0) | CMsgBox | [inline]
m_message | CMsgBox |
m_style | CMsgBox |
m_title | CMsgBox |
MessageBox() | CMsgBox | [inline]
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: CMyMenu class Reference

CMyMenu Class Reference

Permet degere des menus dans l'element du haut fait titre. More...

#include <MyMenu.h>

List of all members.

Public Member Functions

CMyMenu ()
void | AddTitle (char *title)
void | operator= (HMENU hMenu)
void | SetColor (long cl)
void | SetGradientColor (long cl)
void | SetTextColor (long cl)
void | SetEdge (bool shown, UINT remove=0, UINT add=0)
long | GetColor ()
long | GetGradientColor ()
long | GetTextColor ()
long | GetEdge ()
virtual | ~CMyMenu ()
virtual void | MeasureItem (LPMEASUREITEMSTRUCT lpMIS)
virtual void | DrawItem (LPDRAWITEMSTRUCT lpDIS)

Protected Member Functions

HFONT | CreatePopupMenuTitleFont ()
BOOL | GradientFill (HDC hdc, CONST PTRIVERTEX pVertex, DWORD dwNumVertex, CONST PVOID pMesh, DWORD dwNumMesh, DWORD dwMode)

Protected Attributes

HFONT | m_hFont
HMENU | m_hMenu
MyString m_title
LPFNDLLFUNC1 | dllfunc_GradientFill
HINSTANCE | hinst_msimg32
long | clRight
long | clLeft
long | clText
bool | bDrawEdge
UINT | flag_edge
bool | m_bCanDoGradientFill

Detailed Description

Permet degere des menus dans l'element du haut fait titre.

Issue de http://www.codeproject.com/menu/titlemenu.asp

Example:

LRESULT CALLBACK TestProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
        static CMyMenu menu;

        switch (message)
        {
                case WM_INIT:
                menu = LoadMenu(hInst,MAKEINTRESOURCE(IDM_MAIN));
                menu.AddTitle("Mon titre");
                return TRUE;

                case WM_MEASUREITEM:
                menu.MeasureItem((LPMEASUREITEMSTRUCT)lParam);
                return TRUE;

                case WM_DRAWITEM:
                menu.DrawItem((LPDRAWITEMSTRUCT)lParam);
                return TRUE;
        }
        return FALSE;
}

Definition at line 46 of file MyMenu.h.

Constructor & Destructor Documentation

CMyMenu::CMyMenu ( )

Definition at line 6 of file MyMenu.cpp.

References bDrawEdge, clLeft, clRight, clText, CreatePopupMenuTitleFont(), dllfunc_GradientFill, flag_edge, hinst_msimg32, m_bCanDoGradientFill, and m_hFont.

CMyMenu::~CMyMenu ( ) [virtual]

Definition at line 25 of file MyMenu.cpp.

References hinst_msimg32, and m_hFont.

Member Function Documentation

void CMyMenu::AddTitle ( char * title )

Definition at line 56 of file MyMenu.cpp.

References m_hMenu.

Referenced by SysTrayProc().

HFONT CMyMenu::CreatePopupMenuTitleFont ( ) [protected]

Definition at line 35 of file MyMenu.cpp.

Referenced by CMyMenu().

void CMyMenu::DrawItem ( LPDRAWITEMSTRUCT lpDIS ) [virtual]

Definition at line 89 of file MyMenu.cpp.

References bDrawEdge, clLeft, clRight, clText, flag_edge, GradientFill(), m_bCanDoGradientFill, and m_hFont.

Referenced by SysTrayProc().

long CMyMenu::GetColor ( ) [inline]

Definition at line 89 of file MyMenu.h.

References clLeft.

long CMyMenu::GetEdge ( ) [inline]

Definition at line 92 of file MyMenu.h.

References flag_edge.

long CMyMenu::GetGradientColor ( ) [inline]

Definition at line 90 of file MyMenu.h.

References clRight.

long CMyMenu::GetTextColor ( ) [inline]

Definition at line 91 of file MyMenu.h.

References clText.

BOOL CMyMenu::GradientFill | ( | HDC | hdc,
 |  | CONST PTRIVERTEX | pVertex,
 |  | DWORD | dwNumVertex,
 |  | CONST PVOID | pMesh,
 |  | DWORD | dwNumMesh,
 |  | DWORD | dwMode
 | ) | [protected]

Referenced by DrawItem().

void CMyMenu::MeasureItem ( LPMEASUREITEMSTRUCT lpMIS ) [virtual]

Definition at line 66 of file MyMenu.cpp.

References MyString::GetSize(), HDC(), and m_hFont.

Referenced by SysTrayProc().

void CMyMenu::operator= ( HMENU hMenu ) [inline]

Definition at line 81 of file MyMenu.h.

References m_hMenu.

void CMyMenu::SetColor ( long cl ) [inline]

Definition at line 83 of file MyMenu.h.

References clLeft.

void CMyMenu::SetEdge | ( | bool | shown,
 |  | UINT | remove = 0,
 |  | UINT | add = 0
 | ) | [inline]

Definition at line 87 of file MyMenu.h.

References bDrawEdge, and flag_edge.

void CMyMenu::SetGradientColor ( long cl ) [inline]

Definition at line 84 of file MyMenu.h.

References clRight.

void CMyMenu::SetTextColor ( long cl ) [inline]

Definition at line 85 of file MyMenu.h.

References clText.

Member Data Documentation

bool CMyMenu::bDrawEdge [protected]

Definition at line 61 of file MyMenu.h.

Referenced by CMyMenu(), DrawItem(), and SetEdge().

long CMyMenu::clLeft [protected]

Definition at line 59 of file MyMenu.h.

Referenced by CMyMenu(), DrawItem(), GetColor(), and SetColor().

long CMyMenu::clRight [protected]

Definition at line 58 of file MyMenu.h.

Referenced by CMyMenu(), DrawItem(), GetGradientColor(), and SetGradientColor().

long CMyMenu::clText [protected]

Definition at line 60 of file MyMenu.h.

Referenced by CMyMenu(), DrawItem(), GetTextColor(), and SetTextColor().

LPFNDLLFUNC1 CMyMenu::dllfunc_GradientFill [protected]

Definition at line 56 of file MyMenu.h.

Referenced by CMyMenu().

UINT CMyMenu::flag_edge [protected]

Definition at line 62 of file MyMenu.h.

Referenced by CMyMenu(), DrawItem(), GetEdge(), and SetEdge().

HINSTANCE CMyMenu::hinst_msimg32 [protected]

Definition at line 57 of file MyMenu.h.

Referenced by CMyMenu(), and ~CMyMenu().

bool CMyMenu::m_bCanDoGradientFill [protected]

Definition at line 65 of file MyMenu.h.

Referenced by CMyMenu(), and DrawItem().

HFONT CMyMenu::m_hFont [protected]

Definition at line 52 of file MyMenu.h.

Referenced by CMyMenu(), DrawItem(), MeasureItem(), and ~CMyMenu().

HMENU CMyMenu::m_hMenu [protected]

Definition at line 53 of file MyMenu.h.

Referenced by AddTitle(), and operator=().

MyString CMyMenu::m_title [protected]

Definition at line 54 of file MyMenu.h.

The documentation for this class was generated from the following files:
  • MyMenu.h
  • MyMenu.cpp
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

CMyMenu Member List

This is the complete list of members for CMyMenu, including all inherited members.
AddTitle(char *title) | CMyMenu |
bDrawEdge | CMyMenu | [protected]
clLeft | CMyMenu | [protected]
clRight | CMyMenu | [protected]
clText | CMyMenu | [protected]
CMyMenu() | CMyMenu |
CreatePopupMenuTitleFont() | CMyMenu | [protected]
dllfunc_GradientFill | CMyMenu | [protected]
DrawItem(LPDRAWITEMSTRUCT lpDIS) | CMyMenu | [virtual]
flag_edge | CMyMenu | [protected]
GetColor() | CMyMenu | [inline]
GetEdge() | CMyMenu | [inline]
GetGradientColor() | CMyMenu | [inline]
GetTextColor() | CMyMenu | [inline]
GradientFill(HDC hdc, CONST PTRIVERTEX pVertex, DWORD dwNumVertex, CONST PVOID pMesh, DWORD dwNumMesh, DWORD dwMode) | CMyMenu | [protected]
hinst_msimg32 | CMyMenu | [protected]
m_bCanDoGradientFill | CMyMenu | [protected]
m_hFont | CMyMenu | [protected]
m_hMenu | CMyMenu | [protected]
m_title | CMyMenu | [protected]
MeasureItem(LPMEASUREITEMSTRUCT lpMIS) | CMyMenu | [virtual]
operator=(HMENU hMenu) | CMyMenu | [inline]
SetColor(long cl) | CMyMenu | [inline]
SetEdge(bool shown, UINT remove=0, UINT add=0) | CMyMenu | [inline]
SetGradientColor(long cl) | CMyMenu | [inline]
SetTextColor(long cl) | CMyMenu | [inline]
~CMyMenu() | CMyMenu | [virtual]
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Color class Reference

Color Class Reference

Gestion des couleurs en 3D valeur de [0;1] parametre: value ou {r,g,b,a}. More...

#include <color.h>

List of all members.

Public Member Functions

Color ()
Color (float r, float g, float b, float a)
Color (float rgba)
void | Zero ()
void | operator= (Color &source)
void | operator= (float *source)
void | SetNull ()
void | SetFull ()
void | Set (float _r, float _g, float _b)
void | Set (float _r, float _g, float _b, float _a)
operator float * () const
void | ToString (MyString &text)

Public Attributes

BOOL | isEnable

Detailed Description

Gestion des couleurs en 3D valeur de [0;1] parametre: value ou {r,g,b,a}.

Definition at line 40 of file color.h.

Constructor & Destructor Documentation

Color::Color ( )

Definition at line 22 of file color.cpp.

References Zero().

Color::Color | ( | float | r,
 |  | float | g,
 |  | float | b,
 |  | float | a
 | ) |

Definition at line 27 of file color.cpp.

References Set().

Color::Color ( float rgba )

Definition at line 32 of file color.cpp.

Member Function Documentation

Color::operator float * ( ) const

Definition at line 89 of file color.cpp.

References value.

void Color::operator= ( float * source )

Definition at line 53 of file color.cpp.

References isEnable.

void Color::operator= ( Color & source )

Definition at line 44 of file color.cpp.

References a, b, g, isEnable, and r.

void Color::Set | ( | float | _r,
 |  | float | _g,
 |  | float | _b,
 |  | float | _a
 | ) |

Definition at line 80 of file color.cpp.

References isEnable.

void Color::Set | ( | float | _r,
 |  | float | _g,
 |  | float | _b
 | ) |

Definition at line 72 of file color.cpp.

References isEnable.

Referenced by Color(), ControlEngine::ControlEngine(), ControlEngine::DrawBackGround(), ControlEngine::DrawCursors(), Object3D::DrawRepere(), Cursor::DrawRepere(), Object3D::DrawVector(), Cursor::DrawVector(), Fog::Fog(), Material::SetDS(), SetFull(), and SetNull().

void Color::SetFull ( )

Definition at line 67 of file color.cpp.

References Set().

Referenced by ControlEngine::Draw2DText(), ControlEngine::DrawCursors(), and Material::SetFull().

void Color::SetNull ( )

Definition at line 62 of file color.cpp.

References Set().

Referenced by Object3D::DrawArrow(), Cursor::DrawArrow(), ControlEngine::DrawBackGround(), Object3D::DrawRepere(), Cursor::DrawRepere(), Material::SetDS(), and Material::SetNull().

void Color::ToString ( MyString & text )

Definition at line 93 of file color.cpp.

References isEnable.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), and ValueEditors::MakeRenderStruct().

void Color::Zero ( )

Definition at line 35 of file color.cpp.

References isEnable.

Referenced by Color(), Texture::Zero(), and Material::Zero().

Member Data Documentation

float Color::a

Definition at line 51 of file color.h.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), operator=(), and Material::SetAlpha().

float Color::b

Definition at line 50 of file color.h.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), operator=(), and ControlEngine::ScreenShot().

float Color::g

Definition at line 49 of file color.h.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), operator=(), and ControlEngine::ScreenShot().

BOOL Color::isEnable

Definition at line 54 of file color.h.

Referenced by Texture::Config(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), operator=(), Set(), ToString(), Material::Use(), Light::Use(), and Zero().

float Color::r

Definition at line 48 of file color.h.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), ValueEditors::MakeRenderStruct(), operator=(), and ControlEngine::ScreenShot().

float Color::value[4]

Definition at line 45 of file color.h.

The documentation for this class was generated from the following files:
  • color.h
  • color.cpp
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Color Member List

This is the complete list of members for Color, including all inherited members.
a | Color
b | Color
Color() | Color
Color(float r, float g, float b, float a) | Color
Color(float rgba) | Color
g | Color
isEnable | Color
operator float *() const | Color
operator=(Color &source) | Color
operator=(float *source) | Color
r | Color
Set(float _r, float _g, float _b) | Color
Set(float _r, float _g, float _b, float _a) | Color
SetFull() | Color
SetNull() | Color
ToString(MyString &text) | Color
value | Color
Zero() | Color
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Container class Reference

Container Class Reference

Class de parametre et d'evenement d'un "Container" qui peut contenir un autre control. More...

#include <container.h>

Inheritance diagram for Container:

Control List of all members.

Public Member Functions

Container ()
~Container ()
virtual void | Create ()
void | Create (double depth)
void | ToString (MyString &str)
Pour le debugage.

Public Attributes

EventContainer onContainer

Detailed Description

Class de parametre et d'evenement d'un "Container" qui peut contenir un autre control.

Definition at line 38 of file container.h.

Constructor & Destructor Documentation

Container::Container ( )

Definition at line 59 of file container.cpp.

Container::~Container ( )

Definition at line 64 of file container.cpp.

Member Function Documentation

void Container::Create ( double depth )

Definition at line 41 of file container.cpp.

References Primitive::AddBox(), ce, MyTreeNode< T >::elem, ControlEngine::primitive, and Control::SetParent().

virtual void Container::Create ( ) [inline, virtual]

Reimplemented from Control.

Definition at line 45 of file container.h.

References DEFAULT_DEPTH_CONTAINER.

Referenced by Window::Create().

void Container::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 70 of file container.cpp.

References MyString::AddFormat().

Member Data Documentation

EventContainer Container::onContainer

Definition at line 41 of file container.h.

The documentation for this class was generated from the following files:
  • container.h
  • container.cpp
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Container Member List

This is the complete list of members for Container, including all inherited members.
ChangeDirection() | Control |
Container() | Container |
Control() | Control |
controls | Control | [static]
Create() | Container | [inline, virtual]
Create(double depth) | Container |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
onContainer | Container |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Container |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Container() | Container |
~Control() | Control |
Generated on Fri Aug 20 19:21:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Control class Reference

Control Class Reference

Class de parametre et d'evenement d'un "Control" (Control doit etre herité par tout control 3D). More...

#include <control.h>

Inheritance diagram for Control:

Button Container Dock LineDock MasterContainer ResizingAndRotateControl Slider TextBox Tip Title TrackButton TreeView Univers List of all members.

Public Member Functions

Control ()
~Control ()
void | SetParent ()
Utilisé uu Create du control, fait la config du parent.

BOOL | Delete ()
void | DeleteFaces ()
void | DeleteSub ()
void | operator= (Control &src)
virtual void | Create ()
void | ToString (MyString &str)
Pour le debugage.

void | SetBlending (BOOL enable)
Active/desactive le blending sur toute les faces.

void | SetAlphaBlending (float alpha)
Positionne la valeur alpha du blending le blending sur toute les faces.

void | SetLines (Color color, float size)
void | OverIn (Control *oldControl, int face)
On rentre sur le control.

void | OverOut (Control *newControl, int face)
On part du control.

void | FaceOverIn (int oldFace)
On rentre sur un face du control courent.

void | FaceOverOut (int newFace)
On part d'un face du control courent.

BOOL | ScreenMove (double x, double y, double z)
Fait un deplacement de {x,y,z} pixel excran suivant le focus du picking.

BOOL | ScreenMoveTo (double x, double y, double z)
positionne au pixel ecran: {x,y,z} suivant le focus du picking

BOOL | Move (double x, double y, double z)
deplacement

BOOL | MoveTo (double x, double y, double z)
positionne

BOOL | Size (double x, double y)
place un taille

BOOL | ReSize (double dx, double dy)
resize

BOOL | Rotate (double x, double y, double z)
Delta-rotation.

BOOL | RotateQuaternion (double x, double y, double z)
Delta-rotation par rapport a un point de vu fix de l'Univers.

BOOL | RotateTo (double x, double y, double z)
Assignation d'un rotation.

BOOL | XDockLeft (double margeX, double sizeX, BOOL isCenter=FALSE)
BOOL | XDockRight (double margeX, double sizeX, BOOL isCenter=FALSE)
BOOL | XDockCenter (double sizeX)
BOOL | XDockCenter (double margeLeft, double margeRight)
BOOL | YDockTop (double margeY, double sizeY, BOOL isCenter=FALSE)
BOOL | YDockBottom (double margeY, double sizeY, BOOL isCenter=FALSE)
BOOL | YDockCenter (double sizeY)
BOOL | YDockCenter (double margeTop, double margeBottom)
BOOL | ChangeDirection ()
int | OnMouseWheel (StateMouse *mouse, int face)
int | OnMouseMove (StateMouse *mouse, int face)
Si la souris bouge.

int | OnLButtonDown (StateMouse *mouse, int face)
Un simple click.

int | OnMButtonDown (StateMouse *mouse, int face)
int | OnRButtonDown (StateMouse *mouse, int face)
int | OnLButtonUp (StateMouse *mouse, int face)
int | OnMButtonUp (StateMouse *mouse, int face)
int | OnRButtonUp (StateMouse *mouse, int face)
int | OnLButtonDouble (StateMouse *mouse, int face)
int | OnMButtonDouble (StateMouse *mouse, int face)
int | OnRButtonDouble (StateMouse *mouse, int face)
int | OnKeyUp (StateKey *key, int face)
int | OnKeyDown (StateKey *key, int face)
int | OnKeyDouble (StateKey *key, int face)
int | OnClick (StateMouse *mouse, int face)
void | GetCorners (int face, Point3D< double > *points)
Point2D< double > | GetLocalPos (int face, Point2D< double > absolutePos)

Static Public Member Functions

Control * | Find (int _idControl)
Recherche un id de control dans toute les instances possibles.

Public Attributes

int | id
FaceNode * faceNode
graphics

MyString name
BOOL | isEnable
BOOL | isView
int | sleepedDelay
temp avant envois du message sleeper

Control * parent
control parent

int | parentFace
face du control parent

EventControl onControl

Static Public Attributes

MyList< Control * > controls
list de toute les instances de control

int | nextId = 2
Inertia inertia
Timer timerAutoWheel
cronos des lancement des autoWheel

Timer timerSleeped
cronos pour savoir si on est sleeped

BOOL | leftDown
le boutton a t'il ete appuyé sur ce focus (gestion de mouse.left.click)

BOOL | midDown
le boutton a t'il ete appuyé sur ce focus (gestion de mouse.mid.click)

BOOL | rightDown
le boutton a t'il ete appuyé sur ce focus (gestion de mouse.right.click)

Detailed Description

Class de parametre et d'evenement d'un "Control" (Control doit etre herité par tout control 3D).

Tout control a les message suivant par defaut

  • on{L,M,R}Button{Up,Down}
  • onMouseMove
  • onKey{Up,Down}
  • onEnter
  • onLeave
  • onDraw
  • onSleeped

Definition at line 231 of file control.h.

Constructor & Destructor Documentation

Control::Control ( )

Definition at line 28 of file control.cpp.

References controls, faceNode, MyList< Control * >::i, isView, leftDown, midDown, name, nextId, parentFace, rightDown, and sleepedDelay.

Control::~Control ( )

Definition at line 44 of file control.cpp.

References Delete().

Member Function Documentation

BOOL Control::ChangeDirection ( )

Definition at line 339 of file control.cpp.

References BOOL(), DOCK_INIT, Face::position, Rotate(), Face::size, Point2D< LayoutDouble >::x, Point3D< LayoutDouble >::x, Point2D< LayoutDouble >::y, and Point3D< LayoutDouble >::y.

virtual void Control::Create ( ) [inline, virtual]

Reimplemented in Tutorial, Button, Calculator, Container, MasterContainer, MsgBox, TaskWindow, TextBox, Tip, Title, TrackButton, TreeView, Univers, and Window.

Definition at line 275 of file control.h.

BOOL Control::Delete ( )

Definition at line 74 of file control.cpp.

References BOOL(), controls, DeleteFaces(), MyListIterator< Control * >::GoTo(), MyList< Control * >::i, and MyListIterator< Control * >::Supr().

Referenced by Window::OnClose(), MsgBox::OnClose(), Tutorial::LayoutDemo::OnEnd(), Calculator::OnKey(), and ~Control().

void Control::DeleteFaces ( )

Definition at line 87 of file control.cpp.

References faceNode.

Referenced by Delete().

void Control::DeleteSub ( )

Detruit tout les controls contenu mais pas le control de base

Definition at line 111 of file control.cpp.

References faceNode.

Referenced by TreeView::OnNextFrame(), and TreeDirectory::Reset().

void Control::FaceOverIn ( int oldFace )

On rentre sur un face du control courent.

Definition at line 464 of file control.cpp.

References Debug1Param, EventControl::faceOver, EventFaceOver::in, and onControl.

void Control::FaceOverOut ( int newFace )

On part d'un face du control courent.

Si newFace==-1 ==> on sort du control

Definition at line 475 of file control.cpp.

References Debug1Param, EventControl::faceOver, onControl, and EventFaceOver::out.

Control * Control::Find ( int idControl ) [static]

Recherche un id de control dans toute les instances possibles.

Definition at line 373 of file control.cpp.

References controls, MyListIterator< T >::GetElem(), id, and MyListIterator< T >::More().

Referenced by DebugStructProc(), Picking::FindContainer(), ValueEditors::MakeDebugControlStruct(), TaskWindow::Restore(), and Picking::Test().

void Control::GetCorners | ( | int | face,
 |  | Point3D< double > * | points
 | ) |

Definition at line 607 of file control.cpp.

References ce, MyTreeNode< T >::childs, faceNode, Primitive::GetCorners(), MyList< MyTreeNode * >::i, points, and ControlEngine::primitive.

Referenced by Tutorial::BaseDemo::OnWinMove().

Point2D< double > Control::GetLocalPos | ( | int | face,
 |  | Point2D< double > | absolutePos
 | ) |

Definition at line 612 of file control.cpp.

References ce, MyTreeNode< T >::childs, faceNode, Primitive::GetLocalPos(), MyList< MyTreeNode * >::i, and ControlEngine::primitive.

Referenced by ResizingAndRotateControl::OnHover(), Slider::OnMouseMove(), and Tutorial::BaseDemo::OnWinMove().

BOOL Control::Move | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

deplacement

Definition at line 210 of file control.cpp.

References BOOL(), MyTreeNode< T >::elem, and faceNode.

Referenced by Tutorial::BaseDemo::BaseDemo(), TaskWindow::Create(), Slider::Create(), Univers::ExitQuestion(), Univers::OnMouseMove(), TrackButton::OnMouseMove(), Title::OnMouseMove(), Univers::OnMouseWheel(), Title::OnMouseWheel(), Univers::OnRefresh(), Title::OnRefresh(), and ScreenMove().

BOOL Control::MoveTo | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

positionne

Definition at line 202 of file control.cpp.

References BOOL(), MyTreeNode< T >::elem, and faceNode.

Referenced by Tutorial::BaseDemo::BaseDemo(), ScreenMoveTo(), and Tutorial::UniversDemo::SetFace().

int Control::OnClick | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented in Title.

Definition at line 505 of file control.cpp.

References EventMouseButton::click, DebugMouse2, EventMouse::left, EventControl::mouse, and onControl.

Referenced by OnLButtonUp().

int Control::OnKeyDouble | ( | StateKey * | key,
 |  | int | face
 | ) |

Definition at line 599 of file control.cpp.

References DebugKey2, EventKey::doubleClick, EventControl::key, and onControl.

Referenced by ControlEngine::Proc().

int Control::OnKeyDown | ( | StateKey * | key,
 |  | int | face
 | ) |

Reimplemented in Title, and Univers.

Definition at line 593 of file control.cpp.

References DebugKey2, EventKey::down, EventControl::key, and onControl.

Referenced by ControlEngine::Proc().

int Control::OnKeyUp | ( | StateKey * | key,
 |  | int | face
 | ) |

Reimplemented in Title, and Univers.

Definition at line 587 of file control.cpp.

References DebugKey2, EventControl::key, onControl, and EventKey::up.

Referenced by ControlEngine::Proc().

int Control::OnLButtonDouble | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 567 of file control.cpp.

References DebugMouse2, EventMouseButton::doubleClick, EventMouse::left, EventControl::mouse, and onControl.

Referenced by ControlEngine::Proc().

int Control::OnLButtonDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Un simple click.

Reimplemented in TextBox, Title, and Univers.

Definition at line 484 of file control.cpp.

References DebugMouse2, EventMouseButton::down, EventMouse::left, leftDown, EventControl::mouse, and onControl.

Referenced by ControlEngine::Proc().

int Control::OnLButtonUp | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented in TextBox, and Univers.

Definition at line 530 of file control.cpp.

References DebugMouse2, EventMouse::left, leftDown, EventControl::mouse, OnClick(), onControl, res, and EventMouseButton::up.

Referenced by ControlEngine::Proc().

int Control::OnMButtonDouble | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 573 of file control.cpp.

References DebugMouse2, EventMouseButton::doubleClick, EventMouse::mid, EventControl::mouse, and onControl.

Referenced by ControlEngine::Proc().

int Control::OnMButtonDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented in Title, and Univers.

Definition at line 491 of file control.cpp.

References DebugMouse2, EventMouseButton::down, EventMouse::mid, midDown, EventControl::mouse, and onControl.

Referenced by ControlEngine::Proc().

int Control::OnMButtonUp | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented in Univers.

Definition at line 542 of file control.cpp.

References EventMouseButton::click, DebugMouse2, Timer::isRuning, EventMouse::mid, midDown, EventControl::mouse, onControl, res, Timer::StopAndUnBind(), timerAutoWheel, and EventMouseButton::up.

Referenced by ControlEngine::Proc().

int Control::OnMouseMove | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Si la souris bouge.

Definition at line 420 of file control.cpp.

References Inertia::Add(), BindTimer, ce, ControlEngine::enableInertia, StateMouse::GetDelta(), inertia, EventControl::mouse, Picking::mouse, EventMouse::move, Picking::oldMouse, onControl, Timer::onTimer, ControlEngine::pickingCursor, StateMouse::pos, sleepedDelay, timerSleeped, Point2D< int >::x, and Point2D< int >::y.

Referenced by Picking::OnMouseMove(), and ControlEngine::Proc().

int Control::OnMouseWheel | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented in Title, Univers, and Window.

Definition at line 397 of file control.cpp.

References BindTimer, DebugMouse2, StateMouse::midBtn, EventControl::mouse, onControl, timerAutoWheel, and EventMouse::wheel.

Referenced by Picking::OnMouseWheel(), and ControlEngine::Proc().

int Control::OnRButtonDouble | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 579 of file control.cpp.

References DebugMouse2, EventMouseButton::doubleClick, EventControl::mouse, onControl, and EventMouse::right.

Referenced by ControlEngine::Proc().

int Control::OnRButtonDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 498 of file control.cpp.

References DebugMouse2, EventMouseButton::down, EventControl::mouse, onControl, EventMouse::right, and rightDown.

Referenced by ControlEngine::Proc().

int Control::OnRButtonUp | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 555 of file control.cpp.

References EventMouseButton::click, DebugMouse2, EventControl::mouse, onControl, res, EventMouse::right, rightDown, and EventMouseButton::up.

Referenced by ControlEngine::Proc().

void Control::operator= ( Control & src )

Definition at line 60 of file control.cpp.

References faceNode, isView, name, onControl, parentFace, sleepedDelay, and src.

void Control::OverIn | ( | Control * | oldControl,
 |  | int | face
 | ) |

On rentre sur le control.

Definition at line 440 of file control.cpp.

References Debug2Param, EventOver::in, leftDown, midDown, name, onControl, EventControl::over, and rightDown.

Referenced by ControlEngine::Proc().

void Control::OverOut | ( | Control * | newControl,
 |  | int | face
 | ) |

On part du control.

Definition at line 452 of file control.cpp.

References Debug2Param, leftDown, midDown, name, onControl, EventOver::out, EventControl::over, and rightDown.

BOOL Control::ReSize | ( | double | dx,
 |  | double | dy
 | ) |

resize

Definition at line 218 of file control.cpp.

References BOOL(), MyTreeNode< T >::elem, and faceNode.

Referenced by TrackButton::OnMouseMove().

BOOL Control::Rotate | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Delta-rotation.

Definition at line 245 of file control.cpp.

References BOOL(), MyTreeNode< T >::elem, and faceNode.

Referenced by ChangeDirection(), TaskWindow::Create(), Slider::Create(), TrackButton::OnClickBottom(), TrackButton::OnClickLeft(), TrackButton::OnClickLeftBottom(), TrackButton::OnClickLeftTop(), TrackButton::OnClickRight(), TrackButton::OnClickRightBottom(), TrackButton::OnClickRightTop(), TrackButton::OnClickTop(), and Demo::OnTimer().

BOOL Control::RotateQuaternion | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Delta-rotation par rapport a un point de vu fix de l'Univers.

Definition at line 236 of file control.cpp.

References BOOL(), MyTreeNode< T >::elem, faceNode, and Point3D< T >::QuaternionRotate().

Referenced by Univers::OnKeyDown(), Title::OnKeyDown(), Univers::OnMouseMove(), Title::OnMouseMove(), and Tutorial::UniversDemo::OnTimer().

BOOL Control::RotateTo | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Assignation d'un rotation.

Definition at line 254 of file control.cpp.

References BOOL(), MyTreeNode< T >::elem, and faceNode.

Referenced by Tutorial::BaseDemo::BaseDemo(), Title::OnKeyUp(), Title::OnMax(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

BOOL Control::ScreenMove | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Fait un deplacement de {x,y,z} pixel excran suivant le focus du picking.

Definition at line 184 of file control.cpp.

References BOOL(), ce, ControlEngine::ComputeRealZ(), Move(), ControlEngine::pickingCursor, ControlEngine::pickingInertia, ControlEngine::usingInertia, and Picking::zDist.

BOOL Control::ScreenMoveTo | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

positionne au pixel ecran: {x,y,z} suivant le focus du picking

Definition at line 195 of file control.cpp.

References BOOL(), ce, ControlEngine::ComputeRealZ(), MoveTo(), ControlEngine::pickingCursor, and Picking::zDist.

void Control::SetAlphaBlending ( float alpha )

Positionne la valeur alpha du blending le blending sur toute les faces.

Definition at line 155 of file control.cpp.

References alpha, Face::blending, MyTreeNode< T >::childs, MyTreeNode< T >::elem, faceNode, MyListIterator< MyTreeNode * >::GetElem(), MyList< MyTreeNode * >::i, Face::material, MyListIterator< MyTreeNode * >::More(), and Material::SetAlpha().

Referenced by TrackButton::Create(), Title::Create(), and Demo::Demo().

void Control::SetBlending ( BOOL enable )

Active/desactive le blending sur toute les faces.

Definition at line 144 of file control.cpp.

References MyTreeNode< T >::childs, MyTreeNode< T >::elem, faceNode, MyListIterator< MyTreeNode * >::GetElem(), MyList< MyTreeNode * >::i, and MyListIterator< MyTreeNode * >::More().

Referenced by Tutorial::LayoutDemo::ConfigTreeButton(), Slider::Create(), and Tutorial::UniversDemo::SetFace().

void Control::SetLines | ( | Color | color,
 |  | float | size
 | ) |

Definition at line 169 of file control.cpp.

References MyTreeNode< T >::childs, MyTreeNode< T >::elem, faceNode, MyListIterator< MyTreeNode * >::GetElem(), MyList< MyTreeNode * >::i, Face::line, Face::lineMaterial, MyListIterator< MyTreeNode * >::More(), and Material::SetDS().

void Control::SetParent ( )

Utilisé uu Create du control, fait la config du parent.

Definition at line 50 of file control.cpp.

References ce, MyTreeNode< T >::elem, faceNode, FaceNode, MyTree< Face >::GetCurrent(), parentFace, ControlEngine::Peek(), ControlEngine::primitive, and Primitive::tree.

Referenced by Window::Create(), Univers::Create(), TrackButton::Create(), Title::Create(), Tip::Create(), TextBox::Create(), Slider::Create(), MasterContainer::Create(), Container::Create(), and Button::Create().

BOOL Control::Size | ( | double | x,
 |  | double | y
 | ) |

place un taille

Definition at line 227 of file control.cpp.

References BOOL(), MyTreeNode< T >::elem, and faceNode.

Referenced by Tutorial::BaseDemo::BaseDemo(), TaskWindow::Create(), and MsgBox::Create().

void Control::ToString ( MyString & str )

Pour le debugage.

Reimplemented in Button, Container, MasterContainer, Slider, TextBox, Tip, Title, TrackButton, Univers, and Window.

Definition at line 365 of file control.cpp.

References MyString::AddFormat(), isView, and name.

BOOL Control::XDockCenter | ( | double | margeLeft,
 |  | double | margeRight
 | ) |

Definition at line 321 of file control.cpp.

References BOOL(), and DOCK_INIT.

BOOL Control::XDockCenter ( double sizeX )

Definition at line 312 of file control.cpp.

References BOOL(), and DOCK_INIT.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Tutorial::LayoutDemo::ConfigTreeButton(), Title::Create(), Slider::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), Demo::Demo(), Univers::ExitQuestion(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

BOOL Control::XDockLeft | ( | double | margeX,
 |  | double | sizeX,
 |  | BOOL | isCenter = FALSE
 | ) |

Definition at line 294 of file control.cpp.

References BOOL(), and DOCK_INIT.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Title::Create(), TaskWindow::Create(), Slider::Create(), Calculator::Create(), ControlEngine::DrawFPS(), Tutorial::LayoutDemo::LayoutDemo(), ResizingAndRotateControl::OnHover(), TaskWindow::Refresh(), Slider::Refresh(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

BOOL Control::XDockRight | ( | double | margeX,
 |  | double | sizeX,
 |  | BOOL | isCenter = FALSE
 | ) |

Definition at line 303 of file control.cpp.

References BOOL(), and DOCK_INIT.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Title::Create(), Slider::Create(), Tutorial::Create(), Tutorial::LayoutDemo::LayoutDemo(), ResizingAndRotateControl::OnHover(), Univers::OnKeyUp(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

BOOL Control::YDockBottom | ( | double | margeY,
 |  | double | sizeY,
 |  | BOOL | isCenter = FALSE
 | ) |

Definition at line 285 of file control.cpp.

References BOOL(), and DOCK_INIT.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), TaskWindow::Create(), Tutorial::Create(), Tutorial::LayoutDemo::LayoutDemo(), ResizingAndRotateControl::OnHover(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

BOOL Control::YDockCenter | ( | double | margeTop,
 |  | double | margeBottom
 | ) |

Definition at line 353 of file control.cpp.

References BOOL(), and DOCK_INIT.

BOOL Control::YDockCenter ( double sizeY )

Definition at line 330 of file control.cpp.

References BOOL(), and DOCK_INIT.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Tutorial::LayoutDemo::ConfigTreeButton(), Title::Create(), Slider::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), Demo::Demo(), Univers::ExitQuestion(), Tutorial::LayoutDemo::LayoutDemo(), Univers::OnKeyUp(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

BOOL Control::YDockTop | ( | double | margeY,
 |  | double | sizeY,
 |  | BOOL | isCenter = FALSE
 | ) |

Definition at line 276 of file control.cpp.

References BOOL(), and DOCK_INIT.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), ControlEngine::DrawFPS(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), ResizingAndRotateControl::OnHover(), TaskWindow::Refresh(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

Member Data Documentation

MyList< Control * > Control::controls [static]

list de toute les instances de control

Definition at line 29 of file control_instance.h.

Referenced by Control(), Delete(), and Find().

FaceNode* Control::faceNode

graphics

Definition at line 247 of file control.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Config(), TreeView::ConfigFacesPlus(), Tutorial::LayoutDemo::ConfigTreeButton(), Control(), Window::Create(), Title::Create(), TaskWindow::Create(), Slider::Create(), MsgBox::Create(), Calculator::Create(), DeleteFaces(), DeleteSub(), Demo::Demo(), ControlEngine::DrawBackGround(), ControlEngine::DrawCursor(), Tutorial::Demo::Ending(), Tutorial::FaceDemo::FaceDemo(), Picking::FindContainer(), GetCorners(), GetLocalPos(), Tutorial::LayoutDemo::LayoutDemo(), Move(), MoveTo(), ResizingAndRotateControl::OnHover(), Title::OnMax(), Title::OnMin(), Title::OnOriginal(), Demo::OnTimer(), Tutorial::UniversDemo::OnTimer(), Tutorial::BaseDemo::OnWinMove(), Tutorial::BaseDemo::OnWinOut(), operator=(), ControlEngine::Push(), TaskWindow::Refresh(), Slider::Refresh(), ReSize(), Rotate(), RotateQuaternion(), RotateTo(), SetAlphaBlending(), SetBlending(), Tutorial::UniversDemo::SetFace(), SetLines(), SetParent(), Size(), Picking::Test(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

int Control::id

Definition at line 246 of file control.h.

Referenced by Slider::Create(), Tutorial::FaceDemo::FaceDemo(), Find(), ValueEditors::MakeElemControlStruct(), and Tutorial::UniversDemo::UniversDemo().

Inertia Control::inertia [static]

Definition at line 31 of file control_instance.h.

Referenced by OnMouseMove().

BOOL Control::isEnable

Definition at line 249 of file control.h.

Referenced by ValueEditors::MakeElemControlStruct().

BOOL Control::isView

Definition at line 250 of file control.h.

Referenced by Control(), ValueEditors::MakeElemControlStruct(), operator=(), and ToString().

BOOL Control::leftDown [static]

le boutton a t'il ete appuyé sur ce focus (gestion de mouse.left.click)

Definition at line 34 of file control_instance.h.

Referenced by Control(), OnLButtonDown(), OnLButtonUp(), OverIn(), and OverOut().

BOOL Control::midDown [static]

le boutton a t'il ete appuyé sur ce focus (gestion de mouse.mid.click)

Definition at line 36 of file control_instance.h.

Referenced by Control(), OnMButtonDown(), OnMButtonUp(), OverIn(), and OverOut().

MyString Control::name

Definition at line 248 of file control.h.

Referenced by ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeElemControlStruct(), MsgBox::MsgBox(), Univers::OnOverIn(), Title::OnOverIn(), TextBox::OnOverIn(), Button::OnOverIn(), Univers::OnOverOut(), TrackButton::OnOverOut(), Title::OnOverOut(), Button::OnOverOut(), OverIn(), OverOut(), Picking::Test(), and Title::Title().

int Control::nextId = 2 [static]

Definition at line 30 of file control_instance.h.

Referenced by Control().

EventControl Control::onControl

Definition at line 256 of file control.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Calculator::Calculator(), FaceOverIn(), FaceOverOut(), ValueEditors::MakeElemControlStruct(), OnClick(), ResizingAndRotateControl::OnHover(), OnKeyDouble(), OnKeyDown(), OnKeyUp(), OnLButtonDouble(), OnLButtonDown(), Picking::OnLButtonUp(), OnLButtonUp(), OnMButtonDouble(), OnMButtonDown(), Picking::OnMButtonUp(), OnMButtonUp(), OnMouseMove(), OnMouseWheel(), OnRButtonDouble(), OnRButtonDown(), Picking::OnRButtonUp(), OnRButtonUp(), operator=(), OverIn(), OverOut(), and Slider::Slider().

Control* Control::parent

control parent

Definition at line 252 of file control.h.

Referenced by ValueEditors::MakeElemControlStruct().

int Control::parentFace

face du control parent

Definition at line 253 of file control.h.

Referenced by Control(), ValueEditors::MakeElemControlStruct(), operator=(), and SetParent().

BOOL Control::rightDown [static]

le boutton a t'il ete appuyé sur ce focus (gestion de mouse.right.click)

Definition at line 35 of file control_instance.h.

Referenced by Control(), OnRButtonDown(), OnRButtonUp(), OverIn(), and OverOut().

int Control::sleepedDelay

temp avant envois du message sleeper

Definition at line 251 of file control.h.

Referenced by Control(), ValueEditors::MakeElemControlStruct(), OnMouseMove(), and operator=().

Timer Control::timerAutoWheel [static]

cronos des lancement des autoWheel

Definition at line 32 of file control_instance.h.

Referenced by OnMButtonUp(), and OnMouseWheel().

Timer Control::timerSleeped [static]

cronos pour savoir si on est sleeped

Definition at line 33 of file control_instance.h.

Referenced by OnMouseMove().

The documentation for this class was generated from the following files:
  • control.h
  • control.cpp
  • control_instance.h
Generated on Fri Aug 20 19:21:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Control Member List

This is the complete list of members for Control, including all inherited members.
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | Control | [inline, virtual]
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Control |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
Generated on Fri Aug 20 19:21:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ControlEngine class Reference

ControlEngine Class Reference

Gestion du moteur de rendu des controls. More...

#include <controlEngine.h>

List of all members.

Public Member Functions

ControlEngine ()
~ControlEngine ()
void | Start (HINSTANCE hInstance)
void | Stop ()
void | Loop ()
void | InitViewPort (int deltaX, int deltaY)
void | Setup (int deltaX, int deltaY)
void | Refresh (BOOL setSize)
void | SetTimerRefresh (int value)
int | OnRefresh (Timer *timer)
BOOL | Push (Control *control)
Control * Pop ()
Control * Peek ()
void | InitMonitor ()
Init des moniteurs.

BOOL | InitFont ()
void | InitTextures ()
void | InitLights ()
void | EndFont ()
void | Draw ()
BOOL | DrawBackGround ()
void | DrawScene (BOOL isPicking)
void | DrawLight ()
void | DrawCursors ()
void | DrawCursor (Point2D< int > pos, Color color, BOOL isDrawInertia)
void | Draw2DText (int xCenter, int yCenter, int x, int y, char *text, Color *color=NULL)
BOOL | DrawOrigineRepere ()
BOOL | DrawFPS ()
void | MajLights ()
float | GiveFPS ()
void | SetPerspective (float xJitter, float yJiiter)
void | ApplyScaleView ()
BOOL | RegionAdd (double x, double y)
BOOL | RegionGet (double x, double y, Point3D< double > *pt)
LRESULT | Proc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
void | ScreenShot (TypeScreenShot type)
double | ComputeRealZ (double logicZ)
BOOL | ProjectWindowToObject (Point3D< GLdouble > &windowPos, Point3D< GLdouble > *objectPos)
BOOL | ProjectWindowToObject (GLdouble windowPosX, GLdouble windowPosY, GLdouble windowPosZ, GLdouble *objectPosX, GLdouble *objectPosY, GLdouble *objectPosZ)
BOOL | ProjectObjectToWindow (Point3D< GLdouble > &objectPos, Point3D< GLdouble > *windowPos)
BOOL | ProjectObjectToWindow (GLdouble objectPosX, GLdouble objectPosY, GLdouble objectPosZ, GLdouble *windowPosX, GLdouble *windowPosY, GLdouble *windowPosZ)

Public Attributes

PerfMonitor | monitor
test de performance

Primitive primitive
primitive graphic 3D

MyTree< Face > trash
les primitive qui ne sont pas a afficher

Fog fog
gestion du brouillard

Light | lights [4]
gestion des lumiere

BOOL | enableAntiAliasing
utilisation de l'antialiasing

int | antiAliasingQuality
qualité de l'antialiasing

BOOL | enableCursor
affiche le curseur (curseur OpenGL par window)

BOOL | enableRepere
affiche un repere 3D (x,y,z)

BOOL | enableLightView
affiche des boite representant les lumieres

BOOL | enableFPS
affiche les "Frams Par Secondes"

Tip * tipFPS
control d'affichage de la tool tip

Cursor cursor
gestrion de l'affichage du curseur de la souris

BOOL | enableInertia
utilise l'inertie

BOOL | enableViewInertia
affiche le vecteur directeur de l'inertie

PolygonMode polygonMode
type de calcul sur les poylgone Fill,Line,Point

Box3D | boxLights [3]
boite d'affichage des lumieres

GLdouble | aspect
ratio hauteur/lageur

Screen screenMain
Gestion de la fenetre d'affichage.

Screen screenSystray
Gestion du systray.

Screen screenConfig
Gestion des config.

HINSTANCE | hInst
HINSTANCE de l'application.

double | dxWin
taille x de la fenetre a l'initialisation

double | dyWin
taille y de la fenetre a l'initialisation

int | cpuLimit
limit du CPU utilisable par le moteur de 3D

GLdouble | projMatrix [16]
matrice de projection

GLdouble | modelMatrix [16]
matrice modele

GLint | viewPort [4]
point de vue

int | refreshTime
taux de rafraichisement l'affichage ==> FPS

BOOL | enablePicking
picking activée ?

BOOL | enableDelta
deplacement par delta

BOOL | enableBackGround
affiche un fond

GLdouble | depth
distance z du point de vue

BOOL | lightsMove [4]
les lumieres bouge t'elle ?

Timer timerRefresh
evenement de rafraichissement

Univers * univers
control par defaut

TaskWindow * taskWindow
gestion des task en cours ou minimisé

MasterContainer * masterContainer
contien les desktop

StateKey key
etat de touche

Picking pickingCursor
ce a quoi reference le curseur (control,souris)

Picking pickingInertia
ce a quoi reference l'inertie en cours (control,souris)

int | usingInertia
donne le nombre d'inertie en cours

EventInertia | eventInertia [3]
gestion de linertie pour le bouton gauche,centre et droit de la souris

FTFont * | fontPixmap
fonte pour text droit

FTFont * | fontTexture
fonte pour text ordinaire, rapide & antialiasé

FTFont * | fontExtrude
fonte pour text avec volume

FTFont * | fontOutline
fonte pour text non remplie, rapide

FTFont * | fontPolygon
fonte en resolution polygon, lente & non antialiasé

FTFont * | fontBitmap
fonte par bitmap

Textures texture
les texture static

Detailed Description

Gestion du moteur de rendu des controls.

Genere l'affichage et lance les calculs des faces en integrant les messages des controls internes

Definition at line 131 of file controlEngine.h.

Constructor & Destructor Documentation

ControlEngine::ControlEngine ( )

Constructeur:

  • Chargement de la config via la registry (HKCU controls)
  • Creation de l'univers

Arboresence de la resitry: HKCU controls

  • : configuration des lumieres
    • move0 (BOOL) [FALSE] si actif rotation sur les Y de l'univers
    • move1 (BOOL) [FALSE] si actif rotation sur les X de l'univers
    • move2 (BOOL) [FALSE] si actif deplacement par rapport a la souris (effet highlight)
    • enable0 (BOOL) [FALSE]
    • enable1 (BOOL) [FALSE]
    • enable2 (BOOL) [TRUE]
  • : configuration du brouillard
    • enable (BOOL) [FALSE]
    • start (float) [4.5]
    • end (float) [6]
    • density (float) [0.3];
    • mode (FogMode) [linear];
  • enableAntiAliasing (BOOL) [FALSE]
  • enableRepere (BOOL) [FALSE]
  • enableLightView (BOOL) [FALSE]
  • enablePicking (BOOL) [TRUE]
  • enableDelta (BOOL) [FALSE]
  • enableBackGround (BOOL) [TRUE]
  • enableFPS (BOOL) [FALSE]
  • enableInertia (BOOL) [FALSE]
  • enableMonitor (BOOL) [FALSE]
  • enableViewInertia (BOOL) [TRUE]
  • enableFullScreen (BOOL) [TRUE]
  • enableTitle (BOOL) [FALSE]
  • enableRegion (BOOL) [FALSE]
  • polygonModeFront () [fill]
  • polygonModeBack",() [fill]
  • dxWin (double) [500]
  • dyWin (double) [400]
  • timerRefresh (int) [30]
  • cpuLimit (int) [100%]

Todo:
Gestion multi univers (equivalent 2d: multi desktop), fair une class infinte ?

Definition at line 68 of file controlEngine.cpp.

References MyTree< Face >::Add(), antiAliasingQuality, aspect, PolygonMode::back, Fog::color, cpuLimit, TaskWindow::Create(), Univers::Create(), MasterContainer::Create(), DEFAULT_ANTIALIASING, DEFAULT_ANTIALIASING_QUALITY, DEFAULT_CPU_LIMIT, DEFAULT_DELTA, DEFAULT_FOG_DENSITY, DEFAULT_FOG_ENABLE, DEFAULT_FOG_END, DEFAULT_FOG_MODE, DEFAULT_FOG_START, DEFAULT_FULLSCREEN, DEFAULT_INERTIA, DEFAULT_LIGHT_ENABLE0, DEFAULT_LIGHT_ENABLE1, DEFAULT_LIGHT_ENABLE2, DEFAULT_LIGHT_MOVE0, DEFAULT_LIGHT_MOVE1, DEFAULT_LIGHT_MOVE2, DEFAULT_MONITOR, DEFAULT_PICKING, DEFAULT_POLYGON_BACK, DEFAULT_POLYGON_FRONT, DEFAULT_TIMER_REFRESH, DEFAULT_TITLED, DEFAULT_VIEW_BACKGROUND, DEFAULT_VIEW_FPS, DEFAULT_VIEW_INERTIA, DEFAULT_VIEW_LIGHT, DEFAULT_VIEW_REGION, DEFAULT_VIEW_REPERE, DEFAULT_XSIZE, DEFAULT_YSIZE, MyRegistry::DeleteKey(), Fog::density, depth, dxWin, dyWin, Region::enable, enableAntiAliasing, enableBackGround, enableCursor, enableDelta, enableFPS, Screen::enableFullScreen, enableInertia, enableLightView, enablePicking, enableRepere, Screen::enableTitle, enableViewInertia, Fog::end, eventInertia, f, fog, PolygonMode::front, MyRegistry::GetValue(), hInst, EventInertia::Init(), InitFont(), InitMonitor(), Fog::isEnable, lights, lightsMove, masterContainer, Fog::mode, monitor, Face::name, polygonMode, Pop(), Push(), refreshTime, Screen::region, screenMain, Color::Set(), Fog::start, taskWindow, MyRegistry::TestKey(), tipFPS, trash, univers, usingInertia, and VERSION.

ControlEngine::~ControlEngine ( )

Destructeur:

  • Ecrit la registry ==> sauvegarde de la config
  • Detruit la fenetre

Definition at line 170 of file controlEngine.cpp.

References antiAliasingQuality, PolygonMode::back, cpuLimit, Fog::density, Screen::dxNormal, Screen::dyNormal, Region::enable, enableAntiAliasing, enableBackGround, enableDelta, enableFPS, Screen::enableFullScreen, enableInertia, enableLightView, enablePicking, enableRepere, Screen::enableTitle, enableViewInertia, Fog::end, EndFont(), fog, PolygonMode::front, Fog::isEnable, lights, lightsMove, Fog::mode, monitor, polygonMode, refreshTime, Screen::region, screenMain, MyRegistry::SetValue(), Fog::start, Stop(), taskWindow, univers, and VERSION.

Member Function Documentation

void ControlEngine::ApplyScaleView ( )

Le scaling permet de se placer dans un univers borné a la resolution de la fenetre englobante trouver l'equation permetant de calculer la constante du scaling (permetra de faire varié de depth) en effet la constante est liée au depth pour : (empiriquement) depth=15 => 12.4 depth=10 => 8.28

Definition at line 647 of file controlEngine.cpp.

References dyWin.

Referenced by Draw(), and Primitive::GetCorners().

double ControlEngine::ComputeRealZ ( double logicZ )

Calcul du zReel par rapport a un zLogic

  1. rendre lineaire la distance zBuffer de zDistOfSelected 1/(2-zDistOfSelected) grosse bidouille de la mort, qui rend lineaire de 10-100 !attention <2 plus du tout lineaire
  2. equation de la droite par interpolation lineaire

Parameters:
logicZ: valeur obtenu par le picking d'OpenGL
Returns:
valeur du zReel

Definition at line 1016 of file controlEngine.cpp.

References alpha.

Referenced by Control::ScreenMove(), and Control::ScreenMoveTo().

void ControlEngine::Draw ( )

Affichage du rendu graphics

Definition at line 800 of file controlEngine.cpp.

References antiAliasingQuality, ApplyScaleView(), Recorder::BeginRecord(), BOOL(), depth, DrawBackGround(), DrawCursors(), DrawFPS(), DrawLight(), DrawOrigineRepere(), DrawScene(), enableAntiAliasing, enablePicking, Recorder::EndRecord(), f, GL_MULTISAMPLE_ARB, modelMatrix, monitor, pickingCursor, pickingInertia, Recorder::Play(), projMatrix, SetPerspective(), Picking::Test(), and usingInertia.

Referenced by Proc().

void ControlEngine::Draw2DText | ( | int | xCenter,
 |  | int | yCenter,
 |  | int | x,
 |  | int | y,
 |  | char * | text,
 |  | Color * | color = NULL
 | ) |

Affiche un text au coordonnée d'ecrant

Parameters:
xCenter: positioneement de base en X {-1=gauche,0=xcentré,1=droite)
yCenter: positioneement de base en Y {-1=haut,0=ycentré,1=base)
x,y: position du text par rapport a la fenetre (2D)
text: le text a afficher
color: couleur du test a afficher (emission)

Definition at line 515 of file controlEngine.cpp.

References deltaXwin, deltaYwin, Material::emission, f, fontTexture, Point3D< T >::glTranslated(), modelMatrix, projMatrix, Color::SetFull(), Material::Use(), viewPort, Point3D< T >::x, Point3D< T >::y, and Point3D< T >::z.

BOOL ControlEngine::DrawBackGround ( )

Affiche un fond a l'univers

Returns:
l'affichage a il ete effectué ?

Definition at line 888 of file controlEngine.cpp.

References BOOL(), MyTreeNode< T >::elem, Material::emission, enableBackGround, Control::faceNode, Color::Set(), Color::SetNull(), Material::SetNull(), texture, univers, and Material::Use().

Referenced by Draw().

void ControlEngine::DrawCursor | ( | Point2D< int > | mousePos,
 |  | Color | color,
 |  | BOOL | isDrawInertia
 | ) |

Affiche un curseur positionné a Z=15

Parameters:
mousePos: position de la souris 2D
color: couleur du curseur (permet a inertia d'etre en bleu par ex.)
isDrawInertia: affiche-ton le vecteur directeur d'inertia ?

Definition at line 499 of file controlEngine.cpp.

References cursor, Cursor::curType, Cursor::Draw(), MyTreeNode< T >::elem, Control::faceNode, Cursor::GetHotSpot(), Cursor::Rotate(), univers, Point2D< T >::x, and Point2D< T >::y.

Referenced by DrawCursors().

void ControlEngine::DrawCursors ( )

Affiche le curseur de souris (en attendant une classe de gestions complete)

Definition at line 475 of file controlEngine.cpp.

References DrawCursor(), enableCursor, modelMatrix, Picking::mouse, pickingCursor, pickingInertia, StateMouse::pos, projMatrix, Color::Set(), Color::SetFull(), and usingInertia.

Referenced by Draw().

BOOL ControlEngine::DrawFPS ( )

Affiche les FPS (Frame Par Seconde)

Returns:
l'affichage c'est il fait ?

Definition at line 565 of file controlEngine.cpp.

References BOOL(), ce, Tip::Create(), enableFPS, MyString::Format(), GiveFPS(), masterContainer, Pop(), Push(), Tip::SetText(), tipFPS, Control::XDockLeft(), and Control::YDockTop().

Referenced by Draw().

void ControlEngine::DrawLight ( )

Materialise par des boite (Box3D) les lumieres activée

Definition at line 941 of file controlEngine.cpp.

References boxLights, Box3D::CenterIt(), Box3D::coor, count, deltaXwin, deltaYwin, depth, Light::direction, Box3D::Draw(), enableLightView, Light::IsEnabled(), lights, lightsMove, MajLights(), Picking::mouse, pickingCursor, StateMouse::pos, Light::position, Coordonate< GLfloat >::Set(), Point2D< int >::x, Coordonate< GLfloat >::x, Point2D< int >::y, Coordonate< GLfloat >::y, and Coordonate< GLfloat >::z.

Referenced by Draw().

BOOL ControlEngine::DrawOrigineRepere ( )

Affiche une repere X,Y,Z a l'origine de l'univers

Definition at line 554 of file controlEngine.cpp.

References BOOL(), Object3D::DrawRepere(), and enableRepere.

Referenced by Draw().

void ControlEngine::DrawScene ( BOOL isPicking )

Affiche la scene

Definition at line 932 of file controlEngine.cpp.

References Primitive::Draw(), and primitive.

Referenced by Draw(), and Picking::Test().

void ControlEngine::EndFont ( )

Detruit les fontes globale

Definition at line 298 of file controlEngine.cpp.

References fontBitmap, fontExtrude, fontOutline, fontPixmap, fontPolygon, and fontTexture.

Referenced by ~ControlEngine().

float ControlEngine::GiveFPS ( )

Calcul le nombre deframe par secondes (doit etre appeler a chaque rafraichissement)

System par moyenage de SIZE_LIST element (pour eviter les valeurs instantannée)

Definition at line 608 of file controlEngine.cpp.

References MyStack< T >::FrontPop(), MyList< T >::GetNbElem(), MyStack< T >::Push(), SIZE_LIST, and TIME_TO_VIEW.

Referenced by DrawFPS().

BOOL ControlEngine::InitFont ( )

Initialisation des fontes globale

But: optimisation, car evite de charger et decharger sans cesse des fontes

Definition at line 269 of file controlEngine.cpp.

References BOOL(), FONT_FILE, fontBitmap, fontExtrude, fontOutline, fontPixmap, fontPolygon, and fontTexture.

Referenced by ControlEngine().

void ControlEngine::InitLights ( )

Configuration des lumieres

  • lumiere 0 a 2 lumiere ponctuel
  • lumiere 3, lumiere ambiante non ponctuel

Definition at line 701 of file controlEngine.cpp.

References BOOL(), Light::cutoff, depth, Light::exponent, Light::isEnable, lights, MajLights(), Light::material, Light::position, Coordonate< GLfloat >::Set(), Material::SetDS(), and Light::SetLighting().

Referenced by Start().

void ControlEngine::InitMonitor ( )

Init des moniteurs.

Definition at line 310 of file controlEngine.cpp.

References monitor.

Referenced by ControlEngine().

void ControlEngine::InitTextures ( )

Chargemenet des textures de base (pour bouton standart etc ...)

  • Bouton fermer
  • Bouton minimiser
  • Bouton maximisé

Definition at line 737 of file controlEngine.cpp.

References texture.

Referenced by Start().

void ControlEngine::InitViewPort | ( | int | deltaX,
 |  | int | deltaY
 | ) |

Initialise la taille & perspective de la fenetre OpenGL

Parameters:
deltaX: taille X de la fenetre
deltaY: taille Y de la fenetre

Definition at line 401 of file controlEngine.cpp.

References aspect, SetPerspective(), and viewPort.

Referenced by Setup().

void ControlEngine::Loop ( )

Absobstion dela boucle de message

Definition at line 386 of file controlEngine.cpp.

Referenced by WinMain().

void ControlEngine::MajLights ( )

Mise a jout des lumieres: utilisation de leur preselection , et affichage

Definition at line 781 of file controlEngine.cpp.

References boxLights, Box3D::coor, Box3D::delta, Material::emission, lights, Light::material, Box3D::material, Coordonate< GLfloat >::Set(), Material::specular, Light::Use(), and Coordonate< GLfloat >::z.

Referenced by ApplyParamObj(), DrawLight(), and InitLights().

int ControlEngine::OnRefresh ( Timer * timer )

A chaque timer ==> refresh graphics

Parameters:
timer: source TimerEvent d'origine

Definition at line 1032 of file controlEngine.cpp.

References Screen::hWnd, and screenMain.

Referenced by SetTimerRefresh().

Control * ControlEngine::Peek ( )

Definition at line 1380 of file controlEngine.cpp.

References MyList< Control * >::GetNbElem(), and MyStack< Control * >::Peek().

Referenced by Control::SetParent().

Control * ControlEngine::Pop ( )

Definition at line 1372 of file controlEngine.cpp.

References MyList< Control * >::GetNbElem(), Primitive::Pop(), MyStack< Control * >::Pop(), and primitive.

Referenced by TaskWindow::Add(), Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), ControlEngine(), Window::Create(), Title::Create(), TaskWindow::Create(), Slider::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), Tutorial::LayoutDemo::CreateTreeButton(), Demo::Demo(), TreeView::Draw(), DrawFPS(), Univers::ExitQuestion(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), ResizingAndRotateControl::OnHover(), Univers::OnKeyUp(), and Tutorial::UniversDemo::UniversDemo().

LRESULT ControlEngine::Proc | ( | HWND | hWnd,
 |  | UINT | message,
 |  | WPARAM | wParam,
 |  | LPARAM | lParam
 | ) |

Gestion de la fenetre d'affichage OpenGL

Definition at line 1136 of file controlEngine.cpp.

References BOOL(), Timer::Call(), StateKey::code, Picking::controlContainer, Picking::controlHover, DEFAULT_DOUBLE_CLICK, Draw(), dxWin, dyWin, Region::enable, enableCursor, Picking::faceContainer, Picking::faceHover, GET_WHEEL_DELTA_WPARAM, Timer::GetDeltaTime(), Picking::isMoving, StateKey::isPush, StateMouse::leftBtn, StateKey::letter, StateMouse::midBtn, Picking::mouse, Control::OnKeyDouble(), Control::OnKeyDown(), Control::OnKeyUp(), Control::OnLButtonDouble(), Control::OnLButtonDown(), Control::OnLButtonUp(), Control::OnMButtonDouble(), Control::OnMButtonDown(), Control::OnMButtonUp(), Control::OnMouseMove(), Control::OnMouseWheel(), Control::OnRButtonDouble(), Control::OnRButtonDown(), Control::OnRButtonUp(), Control::OverIn(), pickingCursor, pickingInertia, Refresh(), Screen::region, Screen::RegionReset(), Screen::RegionUse(), StateMouse::rightBtn, screenMain, MyDebug::SendEvent(), Picking::SetDeltaWheel(), Picking::SetMousePos(), ShowMouse(), Stop(), Screen::SwapBuffers(), and univers.

Referenced by ControlEngineProc().

BOOL ControlEngine::ProjectObjectToWindow | ( | GLdouble | objectPosX,
 |  | GLdouble | objectPosY,
 |  | GLdouble | objectPosZ,
 |  | GLdouble * | windowPosX,
 |  | GLdouble * | windowPosY,
 |  | GLdouble * | windowPosZ
 | ) |

Definition at line 685 of file controlEngine.cpp.

References BOOL(), deltaYwin, modelMatrix, projMatrix, and viewPort.

BOOL ControlEngine::ProjectObjectToWindow | ( | Point3D< GLdouble > & | objectPos,
 |  | Point3D< GLdouble > * | windowPos
 | ) |

Definition at line 678 of file controlEngine.cpp.

References BOOL(), deltaYwin, modelMatrix, projMatrix, viewPort, Point3D< T >::x, Point3D< T >::y, and Point3D< T >::z.

BOOL ControlEngine::ProjectWindowToObject | ( | GLdouble | windowPosX,
 |  | GLdouble | windowPosY,
 |  | GLdouble | windowPosZ,
 |  | GLdouble * | objectPosX,
 |  | GLdouble * | objectPosY,
 |  | GLdouble * | objectPosZ
 | ) |

Definition at line 669 of file controlEngine.cpp.

References BOOL(), deltaYwin, modelMatrix, projMatrix, and viewPort.

BOOL ControlEngine::ProjectWindowToObject | ( | Point3D< GLdouble > & | windowPos,
 |  | Point3D< GLdouble > * | objectPos
 | ) |

Definition at line 664 of file controlEngine.cpp.

References BOOL(), deltaYwin, modelMatrix, projMatrix, viewPort, Point3D< T >::x, Point3D< T >::y, and Point3D< T >::z.

BOOL ControlEngine::Push ( Control * control )

Definition at line 1363 of file controlEngine.cpp.

References BOOL(), Control::faceNode, Primitive::GoTo(), primitive, Primitive::Push(), and MyStack< Control * >::Push().

Referenced by TaskWindow::Add(), Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), ControlEngine(), Window::Create(), Title::Create(), TaskWindow::Create(), Slider::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), Tutorial::LayoutDemo::CreateTreeButton(), Demo::Demo(), TreeView::Draw(), DrawFPS(), Univers::ExitQuestion(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), ResizingAndRotateControl::OnHover(), Univers::OnKeyUp(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

void ControlEngine::Refresh ( BOOL setSize )

Definition at line 451 of file controlEngine.cpp.

References dxWin, dyWin, screenMain, Screen::SetSize(), Setup(), Screen::Show(), and Screen::Update().

Referenced by Proc().

BOOL ControlEngine::RegionAdd | ( | double | x,
 |  | double | y
 | ) |

Ajout d'un element de region

Parameters:
x,y: coordonnée d'un point d'un region d'un quadrilatere
Returns:
l'element a t'il ete bien ajouté ?

Definition at line 1340 of file controlEngine.cpp.

References Region::AddElem(), BOOL(), projMatrix, Screen::region, screenMain, and viewPort.

Referenced by Face::Draw().

BOOL ControlEngine::RegionGet | ( | double | x,
 |  | double | y,
 |  | Point3D< double > * | pt
 | ) |

Calcul d'un element de region

Parameters:
x,y: coordonnée d'un point d'un region d'un quadrilatere
Returns:
si reusite (return TRUE) le pt dois est mis-a-jour

Definition at line 1354 of file controlEngine.cpp.

References BOOL(), Region::Compute(), projMatrix, Screen::region, screenMain, and viewPort.

Referenced by Face::GetCorners().

void ControlEngine::ScreenShot ( TypeScreenShot type )

Definition at line 1072 of file controlEngine.cpp.

References Color::b, BOOL(), dxWin, dyWin, Color::g, GLint(), HDC(), hInst, IDI_DCONTROLS, Color::r, ScreenShotProc(), ssBlending, ssDepth, ssLuminance, ssRGB, type, Point3D< T >::x, Point3D< T >::y, and Point3D< T >::z.

Referenced by Univers::OnKeyUp().

void ControlEngine::SetPerspective | ( | float | xJitter,
 |  | float | yJitter
 | ) |

Type de perspective

Definition at line 656 of file controlEngine.cpp.

References accPerspective(), and aspect.

Referenced by Draw(), InitViewPort(), and Picking::Test().

void ControlEngine::SetTimerRefresh ( int value )

Donne la vitesse de rafraishissement

Parameters:
value: valeur du rafraichissement
  • 10 au plus rapide
  • 60 ==> 15Frm/s
  • 40 ==> 21Frm/s
  • 30 ==> 30Frm/s (valeur par defaut)

Definition at line 467 of file controlEngine.cpp.

References BindTimer, OnRefresh(), and timerRefresh.

Referenced by Start().

void ControlEngine::Setup | ( | int | deltaX,
 |  | int | deltaY
 | ) |

Configuration du rendu du moteur

Parameters:
deltaX: taille X de la fenetre
deltaY: taille Y de la fenetre

Definition at line 417 of file controlEngine.cpp.

References depth, f, fog, InitViewPort(), polygonMode, Fog::Use(), and PolygonMode::Use().

Referenced by Refresh(), and Start().

void ControlEngine::Start ( HINSTANCE hInstance )

Lancement du moteur:

  • Creation de la fenetre

Parameters:
hInstance: hInstance du process courent

Definition at line 322 of file controlEngine.cpp.

References Screen::BindOpenGL(), ControlEngineProc(), Cursor::Create(), Screen::Create(), cursor, dxWin, dyWin, Screen::hDC, hDC, hInst, Screen::hWnd, Light::id, IDI_DCONTROLS, IDI_ICON_SYSTRAY, Timer::Init(), InitLights(), InitTextures(), lights, refreshTime, screenMain, screenSystray, Screen::SetSize(), Screen::SetStyle(), SetTimerRefresh(), Setup(), Screen::Setup(), Screen::Show(), Inertia::Start(), and SysTrayProc().

Referenced by WinMain().

void ControlEngine::Stop ( )

Destruction du fenetrage

Definition at line 376 of file controlEngine.cpp.

References Screen::Destroy(), screenMain, and screenSystray.

Referenced by Proc(), and ~ControlEngine().

Member Data Documentation

int ControlEngine::antiAliasingQuality

qualité de l'antialiasing

Definition at line 143 of file controlEngine.h.

Referenced by ControlEngine(), Draw(), ValueEditors::MakeRenderStruct(), and ~ControlEngine().

GLdouble ControlEngine::aspect

ratio hauteur/lageur

Definition at line 154 of file controlEngine.h.

Referenced by ControlEngine(), InitViewPort(), and SetPerspective().

Box3D ControlEngine::boxLights[3]

boite d'affichage des lumieres

Definition at line 153 of file controlEngine.h.

Referenced by DrawLight(), and MajLights().

int ControlEngine::cpuLimit

limit du CPU utilisable par le moteur de 3D

Todo:
implementation du cpuLimit

Definition at line 163 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), and ~ControlEngine().

Cursor ControlEngine::cursor

gestrion de l'affichage du curseur de la souris

Definition at line 149 of file controlEngine.h.

Referenced by DrawCursor(), Univers::OnLButtonDown(), Title::OnLButtonDown(), TextBox::OnLButtonDown(), Univers::OnLButtonUp(), TextBox::OnLButtonUp(), Title::OnLMButtonUp(), Univers::OnMButtonDown(), Title::OnMButtonDown(), Univers::OnMButtonUp(), Univers::OnOverIn(), Title::OnOverIn(), TextBox::OnOverIn(), Button::OnOverIn(), Button::OnPushDown(), Button::OnPushUp(), and Start().

GLdouble ControlEngine::depth

distance z du point de vue

Definition at line 175 of file controlEngine.h.

Referenced by Primitive::GetCorners().

double ControlEngine::dxWin

taille x de la fenetre a l'initialisation

Definition at line 161 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), MasterContainer::Create(), Proc(), Refresh(), ScreenShot(), and Start().

double ControlEngine::dyWin

taille y de la fenetre a l'initialisation

Definition at line 162 of file controlEngine.h.

Referenced by ApplyScaleView(), ConfigProc(), ControlEngine(), MasterContainer::Create(), Proc(), Refresh(), ScreenShot(), Start(), and Picking::Test().

BOOL ControlEngine::enableAntiAliasing

utilisation de l'antialiasing

Definition at line 142 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), Draw(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), and ~ControlEngine().

BOOL ControlEngine::enableBackGround

affiche un fond

Definition at line 174 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), DrawBackGround(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), and ~ControlEngine().

BOOL ControlEngine::enableCursor

affiche le curseur (curseur OpenGL par window)

Definition at line 144 of file controlEngine.h.

Referenced by ControlEngine(), DrawCursors(), ValueEditors::MakeRenderStruct(), and Proc().

BOOL ControlEngine::enableDelta

deplacement par delta

Definition at line 173 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), and ~ControlEngine().

BOOL ControlEngine::enableFPS

affiche les "Frams Par Secondes"

Definition at line 147 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), DrawFPS(), Univers::OnKeyDown(), and ~ControlEngine().

BOOL ControlEngine::enableInertia

utilise l'inertie

Definition at line 150 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), ValueEditors::MakeRenderStruct(), Control::OnMouseMove(), and ~ControlEngine().

BOOL ControlEngine::enableLightView

affiche des boite representant les lumieres

Definition at line 146 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), DrawLight(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), and ~ControlEngine().

BOOL ControlEngine::enablePicking

picking activée ?

Definition at line 172 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), Draw(), Univers::OnKeyDown(), Picking::Test(), and ~ControlEngine().

BOOL ControlEngine::enableRepere

affiche un repere 3D (x,y,z)

Definition at line 145 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), DrawOrigineRepere(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), and ~ControlEngine().

BOOL ControlEngine::enableViewInertia

affiche le vecteur directeur de l'inertie

Definition at line 151 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), ValueEditors::MakeRenderStruct(), and ~ControlEngine().

EventInertia ControlEngine::eventInertia[3]

gestion de linertie pour le bouton gauche,centre et droit de la souris

Definition at line 185 of file controlEngine.h.

Referenced by ControlEngine().

Fog ControlEngine::fog

gestion du brouillard

Definition at line 140 of file controlEngine.h.

Referenced by ApplyParamObj(), ConfigProc(), ControlEngine(), Face::Draw(), ValueEditors::MakeRenderStruct(), Setup(), and ~ControlEngine().

FTFont* ControlEngine::fontBitmap

fonte par bitmap

Definition at line 193 of file controlEngine.h.

Referenced by EndFont(), InitFont(), and ValueEditors::MakeFontsStruct().

FTFont* ControlEngine::fontExtrude

fonte pour text avec volume

Definition at line 190 of file controlEngine.h.

Referenced by EndFont(), InitFont(), and ValueEditors::MakeFontsStruct().

FTFont* ControlEngine::fontOutline

fonte pour text non remplie, rapide

Definition at line 191 of file controlEngine.h.

Referenced by EndFont(), InitFont(), and ValueEditors::MakeFontsStruct().

FTFont* ControlEngine::fontPixmap

fonte pour text droit

Definition at line 188 of file controlEngine.h.

Referenced by EndFont(), InitFont(), and ValueEditors::MakeFontsStruct().

FTFont* ControlEngine::fontPolygon

fonte en resolution polygon, lente & non antialiasé

Definition at line 192 of file controlEngine.h.

Referenced by EndFont(), InitFont(), and ValueEditors::MakeFontsStruct().

FTFont* ControlEngine::fontTexture

fonte pour text ordinaire, rapide & antialiasé

Definition at line 189 of file controlEngine.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Button::Button(), Tutorial::LayoutDemo::ConfigTextFace(), Draw2DText(), EndFont(), Tutorial::FaceDemo::FaceDemo(), InitFont(), ValueEditors::MakeFontsStruct(), Tutorial::UniversDemo::SetFace(), TextBox::TextBox(), Tip::Tip(), Title::Title(), and Tutorial::WindowDemo::WindowDemo().

HINSTANCE ControlEngine::hInst

HINSTANCE de l'application.

Definition at line 160 of file controlEngine.h.

Referenced by ControlEngine(), DebugStructProc(), Univers::OnKeyDown(), ScreenShot(), Start(), and SysTrayProc().

StateKey ControlEngine::key

etat de touche

Definition at line 181 of file controlEngine.h.

Light ControlEngine::lights[4]

gestion des lumiere

Definition at line 141 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), DrawLight(), InitLights(), MajLights(), ValueEditors::MakeLightsStruct(), Start(), and ~ControlEngine().

BOOL ControlEngine::lightsMove[4]

les lumieres bouge t'elle ?

Definition at line 176 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), DrawLight(), ValueEditors::MakeLightsStruct(), and ~ControlEngine().

MasterContainer* ControlEngine::masterContainer

contien les desktop

Definition at line 180 of file controlEngine.h.

Referenced by Config(), ControlEngine(), Tutorial::Create(), DebugStructProc(), Demo::Demo(), DrawFPS(), Univers::ExitQuestion(), Picking::FindContainer(), and Univers::OnKeyUp().

GLdouble ControlEngine::modelMatrix[16]

matrice modele

Definition at line 167 of file controlEngine.h.

Referenced by Draw(), Draw2DText(), DrawCursors(), ProjectObjectToWindow(), and ProjectWindowToObject().

PerfMonitor ControlEngine::monitor

test de performance

Definition at line 137 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), Text3D::Draw(), BasicText3D::Draw(), Draw(), InitMonitor(), ValueEditors::MakeRenderStruct(), Picking::Test(), and ~ControlEngine().

Picking ControlEngine::pickingCursor

ce a quoi reference le curseur (control,souris)

Definition at line 182 of file controlEngine.h.

Referenced by Draw(), DrawCursors(), DrawLight(), TreeView::OnClick(), Control::OnMouseMove(), TreeView::OnNextFrame(), Proc(), Control::ScreenMove(), Control::ScreenMoveTo(), and EventInertia::Start().

Picking ControlEngine::pickingInertia

ce a quoi reference l'inertie en cours (control,souris)

Definition at line 183 of file controlEngine.h.

Referenced by Draw(), DrawCursors(), EventInertia::OnInertia(), Proc(), Control::ScreenMove(), EventInertia::Start(), and EventInertia::Stop().

PolygonMode ControlEngine::polygonMode

type de calcul sur les poylgone Fill,Line,Point

Definition at line 152 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), Univers::OnKeyDown(), Setup(), and ~ControlEngine().

Primitive ControlEngine::primitive

primitive graphic 3D

Definition at line 138 of file controlEngine.h.

Referenced by TaskWindow::Add(), Tutorial::BaseDemo::BaseDemo(), Window::Create(), Univers::Create(), TreeView::Create(), TrackButton::Create(), Title::Create(), Tip::Create(), TextBox::Create(), TaskWindow::Create(), Slider::Create(), MsgBox::Create(), MasterContainer::Create(), Container::Create(), Calculator::Create(), Button::Create(), Tutorial::Create(), Tutorial::LayoutDemo::CreateTreeButton(), DebugStructProc(), TreeView::Draw(), DrawScene(), Tutorial::FaceDemo::FaceDemo(), Control::GetCorners(), Control::GetLocalPos(), Tutorial::LayoutDemo::LayoutDemo(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), ResizingAndRotateControl::OnHover(), Univers::OnKeyDown(), Title::OnMax(), Pop(), Push(), Slider::Refresh(), Tutorial::UniversDemo::SetFace(), Control::SetParent(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

GLdouble ControlEngine::projMatrix[16]

matrice de projection

Definition at line 166 of file controlEngine.h.

Referenced by Draw(), Draw2DText(), DrawCursors(), ProjectObjectToWindow(), ProjectWindowToObject(), RegionAdd(), and RegionGet().

int ControlEngine::refreshTime

taux de rafraichisement l'affichage ==> FPS

Definition at line 169 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), Start(), and ~ControlEngine().

Screen ControlEngine::screenConfig

Gestion des config.

Definition at line 159 of file controlEngine.h.

Referenced by ConfigProc(), and Picking::Test().

Screen ControlEngine::screenMain

Gestion de la fenetre d'affichage.

Definition at line 157 of file controlEngine.h.

Referenced by ConfigProc(), ControlEngine(), Face::Draw(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), OnRefresh(), Proc(), Refresh(), RegionAdd(), RegionGet(), Start(), Stop(), and ~ControlEngine().

Screen ControlEngine::screenSystray

Gestion du systray.

Definition at line 158 of file controlEngine.h.

Referenced by Start(), and Stop().

TaskWindow* ControlEngine::taskWindow

gestion des task en cours ou minimisé

Definition at line 179 of file controlEngine.h.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), ControlEngine(), Demo::Demo(), Tutorial::ApplicationDemo::OnEnd(), Tutorial::WindowDemo::OnEnd(), Tutorial::BaseDemo::OnEnd(), Title::OnMin(), Title::OnOriginal(), Tutorial::Tutorial(), Tutorial::WindowDemo::WindowDemo(), ~ControlEngine(), and Tutorial::~Tutorial().

Textures ControlEngine::texture

les texture static

Definition at line 195 of file controlEngine.h.

Referenced by Cursor::ApplyType(), Tutorial::BaseDemo::BaseDemo(), TreeView::ConfigFacesPlus(), Title::Create(), Slider::Create(), Tutorial::FaceDemo::FaceDemo(), Title::GotFocus(), Title::LostFocus(), Title::OnMax(), Title::OnOriginal(), Tutorial::ApplicationDemo::OnSelectBkg(), and Tutorial::UniversDemo::SetFace().

Timer ControlEngine::timerRefresh

evenement de rafraichissement

Definition at line 177 of file controlEngine.h.

Referenced by ConfigProc(), TreeDirectory::OnClickDirectory(), Univers::OnExit(), ResizingAndRotateControl::OnHover(), Univers::OnOverIn(), Title::OnOverIn(), Univers::OnOverOut(), Title::OnOverOut(), TaskWindow::Restore(), SetTimerRefresh(), EffectApparition::Start(), EffectApparition::Stop(), Title::~Title(), and Univers::~Univers().

Tip* ControlEngine::tipFPS

control d'affichage de la tool tip

Definition at line 148 of file controlEngine.h.

Referenced by ControlEngine(), and DrawFPS().

MyTree<Face> ControlEngine::trash

les primitive qui ne sont pas a afficher

Definition at line 139 of file controlEngine.h.

Referenced by ControlEngine(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), and Title::OnMin().

Univers* ControlEngine::univers

control par defaut

Definition at line 178 of file controlEngine.h.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), ControlEngine(), Calculator::Create(), Demo::Demo(), Tutorial::Demo::Demo(), DrawBackGround(), DrawCursor(), Tutorial::FaceDemo::FaceDemo(), Picking::FindContainer(), Tutorial::LayoutDemo::LayoutDemo(), Tutorial::OnEnd(), Demo::OnTimer(), Proc(), Picking::Test(), Tutorial::UniversDemo::UniversDemo(), Tutorial::WindowDemo::WindowDemo(), and ~ControlEngine().

int ControlEngine::usingInertia

donne le nombre d'inertie en cours

Definition at line 184 of file controlEngine.h.

Referenced by ControlEngine(), Draw(), DrawCursors(), Control::ScreenMove(), and EventInertia::Stop().

GLint ControlEngine::viewPort[4]

point de vue

Definition at line 168 of file controlEngine.h.

Referenced by Draw2DText(), InitViewPort(), ProjectObjectToWindow(), ProjectWindowToObject(), RegionAdd(), RegionGet(), and Picking::Test().

The documentation for this class was generated from the following files:
  • controlEngine.h
  • controlEngine.cpp
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ControlEngine Member List

This is the complete list of members for ControlEngine, including all inherited members.
antiAliasingQuality | ControlEngine
ApplyScaleView() | ControlEngine
aspect | ControlEngine
boxLights | ControlEngine
ComputeRealZ(double logicZ) | ControlEngine
ControlEngine() | ControlEngine
cpuLimit | ControlEngine
cursor | ControlEngine
depth | ControlEngine
Draw() | ControlEngine
Draw2DText(int xCenter, int yCenter, int x, int y, char *text, Color *color=NULL) | ControlEngine
DrawBackGround() | ControlEngine
DrawCursor(Point2D< int > pos, Color color, BOOL isDrawInertia) | ControlEngine
DrawCursors() | ControlEngine
DrawFPS() | ControlEngine
DrawLight() | ControlEngine
DrawOrigineRepere() | ControlEngine
DrawScene(BOOL isPicking) | ControlEngine
dxWin | ControlEngine
dyWin | ControlEngine
enableAntiAliasing | ControlEngine
enableBackGround | ControlEngine
enableCursor | ControlEngine
enableDelta | ControlEngine
enableFPS | ControlEngine
enableInertia | ControlEngine
enableLightView | ControlEngine
enablePicking | ControlEngine
enableRepere | ControlEngine
enableViewInertia | ControlEngine
EndFont() | ControlEngine
eventInertia | ControlEngine
fog | ControlEngine
fontBitmap | ControlEngine
fontExtrude | ControlEngine
fontOutline | ControlEngine
fontPixmap | ControlEngine
fontPolygon | ControlEngine
fontTexture | ControlEngine
GiveFPS() | ControlEngine
hInst | ControlEngine
InitFont() | ControlEngine
InitLights() | ControlEngine
InitMonitor() | ControlEngine
InitTextures() | ControlEngine
InitViewPort(int deltaX, int deltaY) | ControlEngine
key | ControlEngine
lights | ControlEngine
lightsMove | ControlEngine
Loop() | ControlEngine
MajLights() | ControlEngine
masterContainer | ControlEngine
modelMatrix | ControlEngine
monitor | ControlEngine
OnRefresh(Timer *timer) | ControlEngine
Peek() | ControlEngine
pickingCursor | ControlEngine
pickingInertia | ControlEngine
polygonMode | ControlEngine
Pop() | ControlEngine
primitive | ControlEngine
Proc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) | ControlEngine
ProjectObjectToWindow(Point3D< GLdouble > &objectPos, Point3D< GLdouble > *windowPos) | ControlEngine
ProjectObjectToWindow(GLdouble objectPosX, GLdouble objectPosY, GLdouble objectPosZ, GLdouble *windowPosX, GLdouble *windowPosY, GLdouble *windowPosZ) | ControlEngine
ProjectWindowToObject(Point3D< GLdouble > &windowPos, Point3D< GLdouble > *objectPos) | ControlEngine
ProjectWindowToObject(GLdouble windowPosX, GLdouble windowPosY, GLdouble windowPosZ, GLdouble *objectPosX, GLdouble *objectPosY, GLdouble *objectPosZ) | ControlEngine
projMatrix | ControlEngine
Push(Control *control) | ControlEngine
Refresh(BOOL setSize) | ControlEngine
refreshTime | ControlEngine
RegionAdd(double x, double y) | ControlEngine
RegionGet(double x, double y, Point3D< double > *pt) | ControlEngine
screenConfig | ControlEngine
screenMain | ControlEngine
ScreenShot(TypeScreenShot type) | ControlEngine
screenSystray | ControlEngine
SetPerspective(float xJitter, float yJiiter) | ControlEngine
SetTimerRefresh(int value) | ControlEngine
Setup(int deltaX, int deltaY) | ControlEngine
Start(HINSTANCE hInstance) | ControlEngine
Stop() | ControlEngine
taskWindow | ControlEngine
texture | ControlEngine
timerRefresh | ControlEngine
tipFPS | ControlEngine
trash | ControlEngine
univers | ControlEngine
usingInertia | ControlEngine
viewPort | ControlEngine
~ControlEngine() | ControlEngine
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateCoordonate< T > class Reference

Coordonate< T > Class Template Reference

Gestion des coordonnée en 3D (compatible avec OpenGL). More...

#include <coordonate.h>

List of all members.

Public Member Functions

Coordonate ()
void | Zero ()
void | operator= (Coordonate &src)
void | Set (T _x, T _y, T _z=0, T _w=0)
BOOL | operator!= (Coordonate &src)
BOOL | operator== (Coordonate &src)
operator T * () const
void | ToString (MyString &source)

Public Attributes

BOOL | isEnable

Detailed Description

template<class T>
class Coordonate< T >

Gestion des coordonnée en 3D (compatible avec OpenGL).

valeurs: value ou (x,y,z,w)

Definition at line 31 of file coordonate.h.

Constructor & Destructor Documentation

template<class T>
Coordonate< T >::Coordonate ( ) [inline]

Definition at line 48 of file coordonate.h.

Member Function Documentation

template<class T>
Coordonate< T >::operator T * ( ) const [inline]

Definition at line 89 of file coordonate.h.

template<class T>
BOOL Coordonate< T >::operator!= ( Coordonate< T > & src ) [inline]

Definition at line 79 of file coordonate.h.

template<class T>
void Coordonate< T >::operator= ( Coordonate< T > & src ) [inline]

Definition at line 61 of file coordonate.h.

template<class T>
BOOL Coordonate< T >::operator== ( Coordonate< T > & src ) [inline]

Definition at line 84 of file coordonate.h.

Referenced by Coordonate< GLfloat >::operator!=().

template<class T>
void Coordonate< T >::Set | ( | T | _x,
 |  | T | _y,
 |  | T | _z = 0,
 |  | T | _w = 0
 | ) | [inline]

Definition at line 70 of file coordonate.h.

template<class T>
void Coordonate< T >::ToString ( MyString & source ) [inline]

Definition at line 94 of file coordonate.h.

template<class T>
void Coordonate< T >::Zero ( ) [inline]

Definition at line 53 of file coordonate.h.

Referenced by Coordonate< GLfloat >::Coordonate().

Member Data Documentation

template<class T>
BOOL Coordonate< T >::isEnable

Definition at line 45 of file coordonate.h.

template<class T>
T Coordonate< T >::value[4]

Definition at line 36 of file coordonate.h.

template<class T>
T Coordonate< T >::w

Definition at line 42 of file coordonate.h.

template<class T>
T Coordonate< T >::x

Definition at line 39 of file coordonate.h.

template<class T>
T Coordonate< T >::y

Definition at line 40 of file coordonate.h.

template<class T>
T Coordonate< T >::z

Definition at line 41 of file coordonate.h.

The documentation for this class was generated from the following file:
  • coordonate.h
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Coordonate< T > Member List

This is the complete list of members for Coordonate< T >, including all inherited members.
Coordonate() | Coordonate< T > | [inline]
isEnable | Coordonate< T > |
operator T *() const | Coordonate< T > | [inline]
operator!=(Coordonate &src) | Coordonate< T > | [inline]
operator=(Coordonate &src) | Coordonate< T > | [inline]
operator==(Coordonate &src) | Coordonate< T > | [inline]
Set(T _x, T _y, T _z=0, T _w=0) | Coordonate< T > | [inline]
ToString(MyString &source) | Coordonate< T > | [inline]
value | Coordonate< T > |
w | Coordonate< T > |
x | Coordonate< T > |
y | Coordonate< T > |
z | Coordonate< T > |
Zero() | Coordonate< T > | [inline]
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: CubeDock class Reference

CubeDock Class Reference

Docker: test le click sur une partie zone cubique. More...

#include <cubedock.h>

List of all members.

Public Member Functions

CubeDock ()
void Config (Control *_parent, double width=-1)
~CubeDock ()

Public Attributes

Control * parent
LineDock frontTop
LineDock frontBottom
LineDock frontLeft
LineDock frontRight
Dock frontTopRight
Dock frontTopLeft
Dock frontBottomLeft
Dock frontBottomRight
LineDock backTop
LineDock backBottom
LineDock backLeft
LineDock backRight
Dock backTopRight
Dock backTopLeft
Dock backBottomLeft
Dock backBottomRight

Detailed Description

Docker: test le click sur une partie zone cubique.

Definition at line 34 of file cubedock.h.

Constructor & Destructor Documentation

CubeDock::CubeDock ( ) [inline]

Definition at line 43 of file cubedock.h.

CubeDock::~CubeDock ( ) [inline]

Definition at line 68 of file cubedock.h.

Member Function Documentation

void CubeDock::Config | ( | Control * | _parent,
 |  | double | width = -1
 | ) | [inline]

Definition at line 48 of file cubedock.h.

References backBottom, backBottomLeft, backBottomRight, backLeft, backRight, backTop, backTopLeft, backTopRight, frontBottom, frontBottomLeft, frontBottomRight, frontLeft, frontRight, frontTop, frontTopLeft, frontTopRight, Dock::Set(), and LineDock::Set().

Member Data Documentation

LineDock CubeDock::backBottom

Definition at line 40 of file cubedock.h.

Referenced by Config().

Dock CubeDock::backBottomLeft

Definition at line 41 of file cubedock.h.

Referenced by Config().

Dock CubeDock::backBottomRight

Definition at line 41 of file cubedock.h.

Referenced by Config().

LineDock CubeDock::backLeft

Definition at line 40 of file cubedock.h.

Referenced by Config().

LineDock CubeDock::backRight

Definition at line 40 of file cubedock.h.

Referenced by Config().

LineDock CubeDock::backTop

Definition at line 40 of file cubedock.h.

Referenced by Config().

Dock CubeDock::backTopLeft

Definition at line 41 of file cubedock.h.

Referenced by Config().

Dock CubeDock::backTopRight

Definition at line 41 of file cubedock.h.

Referenced by Config().

LineDock CubeDock::frontBottom

Definition at line 38 of file cubedock.h.

Referenced by Config().

Dock CubeDock::frontBottomLeft

Definition at line 39 of file cubedock.h.

Referenced by Config().

Dock CubeDock::frontBottomRight

Definition at line 39 of file cubedock.h.

Referenced by Config().

LineDock CubeDock::frontLeft

Definition at line 38 of file cubedock.h.

Referenced by Config().

LineDock CubeDock::frontRight

Definition at line 38 of file cubedock.h.

Referenced by Config().

LineDock CubeDock::frontTop

Definition at line 38 of file cubedock.h.

Referenced by Config().

Dock CubeDock::frontTopLeft

Definition at line 39 of file cubedock.h.

Referenced by Config().

Dock CubeDock::frontTopRight

Definition at line 39 of file cubedock.h.

Referenced by Config().

Control* CubeDock::parent

Definition at line 37 of file cubedock.h.

The documentation for this class was generated from the following file:
  • cubedock.h
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

CubeDock Member List

This is the complete list of members for CubeDock, including all inherited members.
backBottom | CubeDock |
backBottomLeft | CubeDock |
backBottomRight | CubeDock |
backLeft | CubeDock |
backRight | CubeDock |
backTop | CubeDock |
backTopLeft | CubeDock |
backTopRight | CubeDock |
Config(Control *_parent, double width=-1) | CubeDock | [inline]
CubeDock() | CubeDock | [inline]
frontBottom | CubeDock |
frontBottomLeft | CubeDock |
frontBottomRight | CubeDock |
frontLeft | CubeDock |
frontRight | CubeDock |
frontTop | CubeDock |
frontTopLeft | CubeDock |
frontTopRight | CubeDock |
parent | CubeDock |
~CubeDock() | CubeDock | [inline]
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Cursor class Reference

Cursor Class Reference

#include <cursor.h>

List of all members.

Public Member Functions

Cursor ()
void | Create ()
void | ApplyType (Face *face, CursorType type)
void | ApplyTypes (CursorType current=cursorNoChange, CursorType left=cursorNoChange, CursorType mid=cursorNoChange, CursorType right=cursorNoChange)
void | Rotate (Face *face, CursorType type, Point3D< double > angle)
void | Rotate (Point3D< double > angle)
void | Draw (double x, double y)
Point2D< int > | GetHotSpot (CursorType type)
void | DrawArrow (Color color)
void | DrawRepere ()
void | DrawText (char *text)
void | DrawVector (double x, double y)
Affiche un vecteur.

BOOL | DrawVectorMinMax (double x, double y, double minIntensity, double maxIntensity)

Public Attributes

CursorType curType
CursorType leftType
CursorType rightType
CursorType midType
Face curFace
Face leftFace
Face midFace
Face rightFace
Recorder recorderRepere

Constructor & Destructor Documentation

Cursor::Cursor ( )

Definition at line 39 of file cursor.cpp.

References cursorNothing, curType, leftType, midType, and rightType.

Member Function Documentation

void Cursor::ApplyType | ( | Face * | face,
 |  | CursorType | type
 | ) |

Definition at line 127 of file cursor.cpp.

References ce, Face::childRecorder, Textures::cursorArrow, Textures::cursorMoving, cursorNothing, Textures::cursorPush, cursorRepere, Textures::cursorText, Textures::cursorWait, recorderRepere, ControlEngine::texture, Face::texture, type, Face::view, and Recorder::Zero().

Referenced by ApplyTypes().

void Cursor::ApplyTypes | ( | CursorType | current = cursorNoChange,
 |  | CursorType | left = cursorNoChange,
 |  | CursorType | mid = cursorNoChange,
 |  | CursorType | right = cursorNoChange
 | ) |

Definition at line 115 of file cursor.cpp.

References ApplyType(), curFace, cursorNoChange, curType, leftFace, leftType, midFace, midType, rightFace, and rightType.

Referenced by Create(), Univers::OnLButtonDown(), Title::OnLButtonDown(), TextBox::OnLButtonDown(), Univers::OnLButtonUp(), TextBox::OnLButtonUp(), Title::OnLMButtonUp(), Univers::OnMButtonDown(), Title::OnMButtonDown(), Univers::OnMButtonUp(), Univers::OnOverIn(), Title::OnOverIn(), TextBox::OnOverIn(), Button::OnOverIn(), Button::OnPushDown(), and Button::OnPushUp().

void Cursor::Create ( )

Definition at line 47 of file cursor.cpp.

References ApplyTypes(), Recorder::BeginRecord(), Config(), curFace, DrawRepere(), Recorder::EndRecord(), f, leftFace, midFace, and recorderRepere.

Referenced by ControlEngine::Start().

void Cursor::Draw | ( | double | x,
 |  | double | y
 | ) |

Definition at line 60 of file cursor.cpp.

References Face::ComputeLayout(), curFace, Face::Draw(), leftFace, midFace, Face::MoveTo(), Face::MovingInside(), and rightFace.

Referenced by ControlEngine::DrawCursor().

void Cursor::DrawArrow ( Color color )

Definition at line 208 of file cursor.cpp.

References Material::emission, Color::SetNull(), Material::SetNull(), and Material::Use().

void Cursor::DrawRepere ( )

Definition at line 246 of file cursor.cpp.

References Material::emission, Color::Set(), Color::SetNull(), Material::SetNull(), and Material::Use().

Referenced by Create().

void Cursor::DrawText ( char * text )

Todo:
a implementer

Definition at line 301 of file cursor.cpp.

void Cursor::DrawVector | ( | double | x,
 |  | double | y
 | ) |

Affiche un vecteur.

Todo:
blending, mais la j'ai pas reussi

Definition at line 179 of file cursor.cpp.

References Material::emission, Point3D< T >::glRotated(), PI, Color::Set(), Material::SetNull(), and Material::Use().

Referenced by DrawVectorMinMax().

BOOL Cursor::DrawVectorMinMax | ( | double | x,
 |  | double | y,
 |  | double | minIntensity,
 |  | double | maxIntensity
 | ) |

Definition at line 159 of file cursor.cpp.

References BOOL(), and DrawVector().

Point2D< int > Cursor::GetHotSpot ( CursorType type )

Definition at line 98 of file cursor.cpp.

References Point2D< T >::Set(), and type.

Referenced by ControlEngine::DrawCursor().

void Cursor::Rotate ( Point3D< double > angle )

Definition at line 151 of file cursor.cpp.

References curFace, curType, leftFace, leftType, midFace, midType, rightFace, rightType, and Rotate().

void Cursor::Rotate | ( | Face * | face,
 |  | CursorType | type,
 |  | Point3D< double > | angle
 | ) |

Definition at line 143 of file cursor.cpp.

References Face::angle, cursorRepere, type, and Point3D< GLdouble >::Zero().

Referenced by ControlEngine::DrawCursor(), and Rotate().

Member Data Documentation

Face Cursor::curFace

Definition at line 51 of file cursor.h.

Referenced by ApplyTypes(), Create(), Draw(), and Rotate().

CursorType Cursor::curType

Definition at line 49 of file cursor.h.

Referenced by ApplyTypes(), Cursor(), ControlEngine::DrawCursor(), Univers::OnLButtonUp(), Univers::OnMButtonUp(), and Rotate().

Face Cursor::leftFace

Definition at line 52 of file cursor.h.

Referenced by ApplyTypes(), Create(), Draw(), and Rotate().

CursorType Cursor::leftType

Definition at line 50 of file cursor.h.

Referenced by ApplyTypes(), Cursor(), Univers::OnLButtonUp(), and Rotate().

Face Cursor::midFace

Definition at line 53 of file cursor.h.

Referenced by ApplyTypes(), Create(), Draw(), and Rotate().

CursorType Cursor::midType

Definition at line 50 of file cursor.h.

Referenced by ApplyTypes(), Cursor(), Univers::OnMButtonUp(), and Rotate().

Recorder Cursor::recorderRepere

Definition at line 55 of file cursor.h.

Referenced by ApplyType(), and Create().

Face Cursor::rightFace

Definition at line 54 of file cursor.h.

Referenced by ApplyTypes(), Draw(), and Rotate().

CursorType Cursor::rightType

Definition at line 50 of file cursor.h.

Referenced by ApplyTypes(), Cursor(), and Rotate().

The documentation for this class was generated from the following files:
  • cursor.h
  • cursor.cpp
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Cursor Member List

This is the complete list of members for Cursor, including all inherited members.
ApplyType(Face *face, CursorType type) | Cursor
ApplyTypes(CursorType current=cursorNoChange, CursorType left=cursorNoChange, CursorType mid=cursorNoChange, CursorType right=cursorNoChange) | Cursor
Create() | Cursor
curFace | Cursor
Cursor() | Cursor
curType | Cursor
Draw(double x, double y) | Cursor
DrawArrow(Color color) | Cursor
DrawRepere() | Cursor
DrawText(char *text) | Cursor
DrawVector(double x, double y) | Cursor
DrawVectorMinMax(double x, double y, double minIntensity, double maxIntensity) | Cursor
GetHotSpot(CursorType type) | Cursor
leftFace | Cursor
leftType | Cursor
midFace | Cursor
midType | Cursor
recorderRepere | Cursor
rightFace | Cursor
rightType | Cursor
Rotate(Face *face, CursorType type, Point3D< double > angle) | Cursor
Rotate(Point3D< double > angle) | Cursor
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Curve class Reference

Curve Class Reference

Gestion des l'incurvation d'une face. More...

#include <curve.h>

List of all members.

Public Member Functions

Curve ()
~Curve ()
void | Zero ()
void | operator= (Curve &source)
BOOL | Set (GLdouble zCenter, int nbCutXY)
BOOL | Set (GLdouble zCenter, int nbCutX, int nbCutY)
BOOL | IsActive ()
void | Refresh ()
Oblige a recalculer le prochaine affichage.

BOOL | Draw (Point2D< double > size, Texture *texture)
Affiche une curve(version non optimisé).

Public Attributes

Point2D< int > | nbCut
Coordonate< GLdouble > | center

Detailed Description

Gestion des l'incurvation d'une face.

Definition at line 33 of file curve.h.

Constructor & Destructor Documentation

Curve::Curve ( )

Definition at line 21 of file curve.cpp.

References Zero().

Curve::~Curve ( )

Definition at line 29 of file curve.cpp.

Member Function Documentation

BOOL Curve::Draw | ( | Point2D< double > | size,
 |  | Texture * | texture
 | ) |

Affiche une curve(version non optimisé).

Todo:
les 2 version de Curve::Draw on les meme performance pourkoi ?, meme test avec les list sans ammelioration

Todo:
on peut faire des optimisaiotn en testant au debut texture->useResising

Definition at line 76 of file curve.cpp.

References BOOL(), center, fx, fy, IsActive(), nbCut, Point2D< int >::x, Point2D< int >::y, and Coordonate< GLdouble >::z.

Referenced by Face::Draw().

BOOL Curve::IsActive ( )

Definition at line 65 of file curve.cpp.

References BOOL(), nbCut, Point2D< int >::x, and Point2D< int >::y.

Referenced by Face::Draw(), and Draw().

void Curve::operator= ( Curve & source )

Definition at line 41 of file curve.cpp.

References center, nbCut, oldCenter, and oldNbCut.

void Curve::Refresh ( )

Oblige a recalculer le prochaine affichage.

Utils si le container a changer de taille, sinon le curve garde l'ancienne taille

Definition at line 156 of file curve.cpp.

References nbCut, and Point2D< int >::Set().

BOOL Curve::Set | ( | GLdouble | zCenter,
 |  | int | nbCutX,
 |  | int | nbCutY
 | ) |

Definition at line 57 of file curve.cpp.

References BOOL(), center, nbCut, Coordonate< GLdouble >::Set(), and Point2D< int >::Set().

BOOL Curve::Set | ( | GLdouble | zCenter,
 |  | int | nbCutXY
 | ) |

Definition at line 49 of file curve.cpp.

References BOOL(), center, nbCut, Coordonate< GLdouble >::Set(), and Point2D< int >::Set().

Referenced by Tutorial::FaceDemo::FaceDemo().

void Curve::Zero ( )

Definition at line 33 of file curve.cpp.

References center, nbCut, Coordonate< GLdouble >::Set(), and Point2D< int >::Set().

Referenced by Curve(), and Face::Zero().

Member Data Documentation

Coordonate<GLdouble> Curve::center

Definition at line 47 of file curve.h.

Referenced by Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), Set(), and Zero().

Point2D<int> Curve::nbCut

Definition at line 46 of file curve.h.

Referenced by Draw(), IsActive(), ValueEditors::MakeElemFaceStruct(), operator=(), Refresh(), Set(), and Zero().

The documentation for this class was generated from the following files:
  • curve.h
  • curve.cpp
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Curve Member List

This is the complete list of members for Curve, including all inherited members.
center | Curve
Curve() | Curve
Draw(Point2D< double > size, Texture *texture) | Curve
IsActive() | Curve
nbCut | Curve
operator=(Curve &source) | Curve
Refresh() | Curve
Set(GLdouble zCenter, int nbCutXY) | Curve
Set(GLdouble zCenter, int nbCutX, int nbCutY) | Curve
Zero() | Curve
~Curve() | Curve
Generated on Fri Aug 20 19:21:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Demo class Reference

Demo Class Reference

List of all members.

Public Member Functions

Demo ()
int | OnTimer (Timer *)

Public Attributes

Timer timer
Tip | tip [6]

Constructor & Destructor Documentation

Demo::Demo ( ) [inline]

Definition at line 1280 of file 3dcontrols.cpp.

References BindTimer, ce, Tip::Create(), MyTreeNode< T >::elem, f, Control::faceNode, ControlEngine::masterContainer, BasicText3D::material, Title::OnMin(), ControlEngine::Pop(), ControlEngine::Push(), Control::SetAlphaBlending(), Material::SetDS(), Tip::SetText(), ControlEngine::taskWindow, Tip::text, Window::title, ControlEngine::univers, Control::XDockCenter(), and Control::YDockCenter().

Member Function Documentation

int Demo::OnTimer ( Timer * ) [inline]

Definition at line 1310 of file 3dcontrols.cpp.

References ce, MyTreeNode< T >::elem, Control::faceNode, Control::Rotate(), and ControlEngine::univers.

Member Data Documentation

Timer Demo::timer

Definition at line 1277 of file 3dcontrols.cpp.

Tip Demo::tip[6]

Definition at line 1278 of file 3dcontrols.cpp.

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Demo Member List

This is the complete list of members for Demo, including all inherited members.
Demo() | Demo | [inline]
OnTimer(Timer *) | Demo | [inline]
timer | Demo |
tip | Demo |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Dock class Reference

Dock Class Reference

Test le click sur une zone cubique (a utiliser pour faire un "Splitter"). More...

#include <dock.h>

Inheritance diagram for Dock:

Control List of all members.

Public Member Functions

Dock ()
void | Set (double _x, double _y, double _z, double width=-1)
~Dock ()

Public Attributes

double | width
double | x
double | y
double | z

Detailed Description

Test le click sur une zone cubique (a utiliser pour faire un "Splitter").

Definition at line 35 of file dock.h.

Constructor & Destructor Documentation

Dock::Dock ( ) [inline]

Definition at line 41 of file dock.h.

References DEFAULT_WIDTH, and width.

Dock::~Dock ( ) [inline]

Definition at line 54 of file dock.h.

Member Function Documentation

void Dock::Set | ( | double | _x,
 |  | double | _y,
 |  | double | _z,
 |  | double | width = -1
 | ) | [inline]

Definition at line 46 of file dock.h.

References DEFAULT_WIDTH, and width.

Referenced by CubeDock::Config().

Member Data Documentation

double Dock::width

Definition at line 38 of file dock.h.

double Dock::x

Definition at line 39 of file dock.h.

double Dock::y

Definition at line 39 of file dock.h.

double Dock::z

Definition at line 39 of file dock.h.

The documentation for this class was generated from the following file:
  • dock.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Dock Member List

This is the complete list of members for Dock, including all inherited members.
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | Control | [inline, virtual]
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
Dock() | Dock | [inline]
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
Set(double _x, double _y, double _z, double width=-1) | Dock | [inline]
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Control |
width | Dock |
x | Dock |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
y | Dock |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
z | Dock |
~Control() | Control |
~Dock() | Dock | [inline]
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Effect class Reference

Effect Class Reference

#include <effect.h>

Inheritance diagram for Effect:

EffectApparition List of all members.

Public Member Functions

Effect ()
void | Bind (FaceNode *_faceNode)

Public Attributes

signal0 | onEnding
appelé a la fin de la transition

Protected Attributes

FaceNode * faceNode
faceNode sur lequel l'effet dois etre effectué

BOOL | isFadeIn
effet FadeIn ou FadeOut

BOOL | isRunning
effet a demarer (Start)

MyTree< Face > oldTree
ancien arbre

LARGE_INTEGER | beginTime
debut du temp

Detailed Description

effet de transition des conrtols

Ex.:

EffectAppariation effect;
effect.Setup(TRUE,control->faceNode);
effect.Start(1000);

Definition at line 41 of file effect.h.

Constructor & Destructor Documentation

Effect::Effect ( )

Definition at line 26 of file effect.cpp.

References Bind().

Member Function Documentation

void Effect::Bind ( FaceNode * _faceNode )

Definition at line 31 of file effect.cpp.

References FaceNode, and isRunning.

Referenced by Tutorial::Create(), Effect(), and Tutorial::Demo::Ending().

Member Data Documentation

LARGE_INTEGER Effect::beginTime [protected]

debut du temp

Definition at line 48 of file effect.h.

FaceNode* Effect::faceNode [protected]

faceNode sur lequel l'effet dois etre effectué

Definition at line 44 of file effect.h.

BOOL Effect::isFadeIn [protected]

effet FadeIn ou FadeOut

Definition at line 45 of file effect.h.

BOOL Effect::isRunning [protected]

effet a demarer (Start)

Definition at line 46 of file effect.h.

Referenced by Bind().

MyTree<Face> Effect::oldTree [protected]

ancien arbre

Definition at line 47 of file effect.h.

signal0 Effect::onEnding

appelé a la fin de la transition

Definition at line 52 of file effect.h.

Referenced by EffectApparition::Stop().

The documentation for this class was generated from the following files:
  • effect.h
  • effect.cpp
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Effect Member List

This is the complete list of members for Effect, including all inherited members.
beginTime | Effect | [protected]
Bind(FaceNode *_faceNode) | Effect |
Effect() | Effect |
faceNode | Effect | [protected]
isFadeIn | Effect | [protected]
isRunning | Effect | [protected]
oldTree | Effect | [protected]
onEnding | Effect |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EffectApparition class Reference

EffectApparition Class Reference

#include <effect.h>

Inheritance diagram for EffectApparition:

Effect List of all members.

Public Member Functions

EffectApparition ()
~EffectApparition ()
void | Start (BOOL _isFadeIn, double _nbSeconds)
void | Stop ()

Constructor & Destructor Documentation

EffectApparition::EffectApparition ( )

Definition at line 37 of file effect.cpp.

EffectApparition::~EffectApparition ( )

Definition at line 42 of file effect.cpp.

References Stop().

Member Function Documentation

void EffectApparition::Start | ( | BOOL | _isFadeIn,
 |  | double | _nbSeconds
 | ) |

Definition at line 47 of file effect.cpp.

References ce, Timer::GetDeltaTime(), Timer::onTimer, Stop(), and ControlEngine::timerRefresh.

Referenced by Tutorial::Create(), and Tutorial::Demo::Ending().

void EffectApparition::Stop ( )

Definition at line 62 of file effect.cpp.

References ce, MyTree< Face >::GetRoot(), Effect::onEnding, Timer::onTimer, and ControlEngine::timerRefresh.

Referenced by Start(), and ~EffectApparition().

The documentation for this class was generated from the following files:
  • effect.h
  • effect.cpp
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EffectApparition Member List

This is the complete list of members for EffectApparition, including all inherited members.
beginTime | Effect | [protected]
Bind(FaceNode *_faceNode) | Effect |
Effect() | Effect |
EffectApparition() | EffectApparition |
faceNode | Effect | [protected]
isFadeIn | Effect | [protected]
isRunning | Effect | [protected]
oldTree | Effect | [protected]
onEnding | Effect |
Start(BOOL _isFadeIn, double _nbSeconds) | EffectApparition |
Stop() | EffectApparition |
~EffectApparition() | EffectApparition |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ElemStack class Reference

ElemStack Class Reference

Element du stack d'inertia. More...

#include <Inertia.h>

List of all members.

Public Member Functions

void | operator= (ElemStack &src)

Public Attributes

Point2D< int > | elem
double | timing

Detailed Description

Element du stack d'inertia.

Definition at line 34 of file Inertia.h.

Member Function Documentation

void ElemStack::operator= ( ElemStack & src ) [inline]

Definition at line 40 of file Inertia.h.

References elem, src, and timing.

Member Data Documentation

Point2D<int> ElemStack::elem

Definition at line 37 of file Inertia.h.

Referenced by Inertia::Add(), Inertia::GetMoyValue(), and operator=().

double ElemStack::timing

Definition at line 38 of file Inertia.h.

Referenced by Inertia::Add(), Inertia::GetMoyValue(), and operator=().

The documentation for this class was generated from the following file:
  • Inertia.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ElemStack Member List

This is the complete list of members for ElemStack, including all inherited members.
elem | ElemStack |
operator=(ElemStack &src) | ElemStack | [inline]
timing | ElemStack |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ElemTaskWindow class Reference

ElemTaskWindow Class Reference

#include <taskWindow.h>

List of all members.

Public Attributes

Button button
Title * title

Member Data Documentation

Button ElemTaskWindow::button

Definition at line 32 of file taskWindow.h.

Referenced by TaskWindow::Add(), and TaskWindow::Refresh().

Title* ElemTaskWindow::title

Definition at line 33 of file taskWindow.h.

Referenced by TaskWindow::Add().

The documentation for this class was generated from the following file:
  • taskWindow.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ElemTaskWindow Member List

This is the complete list of members for ElemTaskWindow, including all inherited members.
button | ElemTaskWindow
title | ElemTaskWindow
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateEnabling< T > class Reference

Enabling< T > Class Template Reference

Variable active ou pas. More...

#include <variable.h>

List of all members.

Public Member Functions

Enabling ()
void | operator= (T source)
void | Set (T source)
void | ToString (MyString &source)

Public Attributes

BOOL | isEnable
T | elem

Detailed Description

template<class T>
class Enabling< T >

Variable active ou pas.

Definition at line 30 of file variable.h.

Constructor & Destructor Documentation

template<class T>
Enabling< T >::Enabling ( ) [inline]

Definition at line 36 of file variable.h.

Member Function Documentation

template<class T>
void Enabling< T >::operator= ( T source ) [inline]

Definition at line 41 of file variable.h.

template<class T>
void Enabling< T >::Set ( T source ) [inline]

Definition at line 46 of file variable.h.

Referenced by Enabling< GLfloat >::operator=().

template<class T>
void Enabling< T >::ToString ( MyString & source ) [inline]

Definition at line 52 of file variable.h.

Member Data Documentation

template<class T>
T Enabling< T >::elem

Definition at line 34 of file variable.h.

template<class T>
BOOL Enabling< T >::isEnable

Definition at line 33 of file variable.h.

The documentation for this class was generated from the following file:
  • variable.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Enabling< T > Member List

This is the complete list of members for Enabling< T >, including all inherited members.
elem | Enabling< T > |
Enabling() | Enabling< T > | [inline]
isEnable | Enabling< T > |
operator=(T source) | Enabling< T > | [inline]
Set(T source) | Enabling< T > | [inline]
ToString(MyString &source) | Enabling< T > | [inline]
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventButton class Reference

EventButton Class Reference

#include <button.h>

List of all members.

Public Attributes

signal0 | click
signal1< BOOL > | checked

Member Data Documentation

signal1<BOOL> EventButton::checked

Definition at line 32 of file button.h.

Referenced by Button::OnPushDown().

signal0 EventButton::click

Definition at line 31 of file button.h.

Referenced by TaskWindow::Add(), Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Calculator::Calculator(), Tutorial::Create(), Tutorial::Demo::Demo(), Tutorial::Demo::Ending(), Univers::ExitQuestion(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), MsgBox::MsgBox(), Button::OnPushUp(), Tutorial::UniversDemo::SetFace(), Title::Title(), Tutorial::Tutorial(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

The documentation for this class was generated from the following file:
  • button.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventButton Member List

This is the complete list of members for EventButton, including all inherited members.
checked | EventButton
click | EventButton
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventContainer class Reference

EventContainer Class Reference

#include <container.h>

The documentation for this class was generated from the following file:
  • container.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventControl class Reference

EventControl Class Reference

#include <control.h>

List of all members.

Public Member Functions

int | GetNbLinks ()

Public Attributes

EventMouse mouse
EventKey key
EventOver over
EventFaceOver faceOver
signal0 | sleeped

Member Function Documentation

int EventControl::GetNbLinks ( ) [inline]

Definition at line 210 of file control.h.

References faceOver, EventFaceOver::GetNbLinks(), EventOver::GetNbLinks(), EventKey::GetNbLinks(), EventMouse::GetNbLinks(), key, mouse, over, and sleeped.

Referenced by ValueEditors::MakeElemControlStruct().

Member Data Documentation

EventFaceOver EventControl::faceOver

Definition at line 207 of file control.h.

Referenced by Control::FaceOverIn(), Control::FaceOverOut(), GetNbLinks(), and ValueEditors::MakeElemControlStruct().

EventKey EventControl::key

Definition at line 205 of file control.h.

Referenced by Calculator::Calculator(), GetNbLinks(), ValueEditors::MakeElemControlStruct(), Control::OnKeyDouble(), Control::OnKeyDown(), Control::OnKeyUp(), Title::Title(), and Univers::Univers().

EventMouse EventControl::mouse

Definition at line 204 of file control.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Button::Button(), GetNbLinks(), ValueEditors::MakeElemControlStruct(), Button::ModeAllButtons(), Control::OnClick(), Control::OnLButtonDouble(), Control::OnLButtonDown(), Picking::OnLButtonUp(), Control::OnLButtonUp(), Control::OnMButtonDouble(), Control::OnMButtonDown(), Picking::OnMButtonUp(), Control::OnMButtonUp(), Control::OnMouseMove(), Control::OnMouseWheel(), Control::OnRButtonDouble(), Control::OnRButtonDown(), Picking::OnRButtonUp(), Control::OnRButtonUp(), ResizingAndRotateControl::ResizingAndRotateControl(), Slider::Slider(), TextBox::TextBox(), Title::Title(), Univers::Univers(), and Window::Window().

EventOver EventControl::over

Definition at line 206 of file control.h.

Referenced by Button::Button(), GetNbLinks(), ValueEditors::MakeElemControlStruct(), ResizingAndRotateControl::OnHover(), Control::OverIn(), Control::OverOut(), Slider::Slider(), TextBox::TextBox(), Title::Title(), TrackButton::TrackButton(), and Univers::Univers().

signal0 EventControl::sleeped

Definition at line 208 of file control.h.

Referenced by GetNbLinks(), and ValueEditors::MakeElemControlStruct().

The documentation for this class was generated from the following file:
  • control.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventControl Member List

This is the complete list of members for EventControl, including all inherited members.
faceOver | EventControl |
GetNbLinks() | EventControl | [inline]
key | EventControl |
mouse | EventControl |
over | EventControl |
sleeped | EventControl |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventFaceOver class Reference

EventFaceOver Class Reference

#include <control.h>

List of all members.

Public Member Functions

int | GetNbLinks ()

Public Attributes

signal1< int > | in
signal1< int > | out

Member Function Documentation

int EventFaceOver::GetNbLinks ( ) [inline]

Definition at line 195 of file control.h.

Referenced by EventControl::GetNbLinks(), and ValueEditors::MakeElemControlStruct().

Member Data Documentation

signal1<int> EventFaceOver::in

Definition at line 192 of file control.h.

Referenced by Control::FaceOverIn(), and ValueEditors::MakeElemControlStruct().

signal1<int> EventFaceOver::out

Definition at line 193 of file control.h.

Referenced by Control::FaceOverOut(), and ValueEditors::MakeElemControlStruct().

The documentation for this class was generated from the following file:
  • control.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventFaceOver Member List

This is the complete list of members for EventFaceOver, including all inherited members.
GetNbLinks() | EventFaceOver | [inline]
in | EventFaceOver |
out | EventFaceOver |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventInertia class Reference

EventInertia Class Reference

Evenement liée a inertia. More...

#include <Inertia.h>

List of all members.

Public Member Functions

EventInertia ()
void | operator= (EventInertia &src)
void | Init (int _numButton)
void | Start (int _face, Point2D< double > _vectorInertia)
void | Stop ()
void | SwitchButton ()
int | OnInertia (Timer *timer)

Public Attributes

BOOL | enable

Detailed Description

Evenement liée a inertia.

Definition at line 92 of file Inertia.h.

Constructor & Destructor Documentation

EventInertia::EventInertia ( )

Definition at line 85 of file Inertia.cpp.

References enable.

Member Function Documentation

void EventInertia::Init ( int _numButton )

Definition at line 92 of file Inertia.cpp.

Referenced by ControlEngine::ControlEngine().

int EventInertia::OnInertia ( Timer * timer )

Definition at line 145 of file Inertia.cpp.

References ce, Timer::GetDeltaTime(), Picking::OnMouseMove(), ControlEngine::pickingInertia, Stop(), TIME_MOVE_ON_INERTIA, Point2D< T >::x, Point2D< double >::x, Point2D< T >::y, and Point2D< double >::y.

Referenced by Start().

void EventInertia::operator= ( EventInertia & src )

Definition at line 97 of file Inertia.cpp.

References enable, and src.

void EventInertia::Start | ( | int | _face,
 |  | Point2D< double > | _vectorInertia
 | ) |

Definition at line 108 of file Inertia.cpp.

References BindTimer, ce, Picking::mouse, OnInertia(), ControlEngine::pickingCursor, ControlEngine::pickingInertia, StateMouse::pos, SwitchButton(), Point2D< int >::x, Point2D< double >::x, Point2D< int >::y, and Point2D< double >::y.

void EventInertia::Stop ( )

Definition at line 131 of file Inertia.cpp.

References ce, enable, Picking::OnLButtonUp(), Picking::OnMButtonUp(), Picking::OnRButtonUp(), ControlEngine::pickingInertia, Timer::Stop(), and ControlEngine::usingInertia.

Referenced by OnInertia().

void EventInertia::SwitchButton ( )

Definition at line 121 of file Inertia.cpp.

References StateMouse::leftBtn, StateMouse::midBtn, and StateMouse::rightBtn.

Referenced by Start().

Member Data Documentation

BOOL EventInertia::enable

Definition at line 103 of file Inertia.h.

Referenced by EventInertia(), operator=(), and Stop().

The documentation for this class was generated from the following files:
  • Inertia.h
  • Inertia.cpp
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventInertia Member List

This is the complete list of members for EventInertia, including all inherited members.
enable | EventInertia
EventInertia() | EventInertia
Init(int _numButton) | EventInertia
OnInertia(Timer *timer) | EventInertia
operator=(EventInertia &src) | EventInertia
Start(int _face, Point2D< double > _vectorInertia) | EventInertia
Stop() | EventInertia
SwitchButton() | EventInertia
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventKey class Reference

EventKey Class Reference

#include <control.h>

List of all members.

Public Member Functions

int | GetNbLinks ()

Public Attributes

signal2< StateKey *, int > | up
signal2< StateKey *, int > | down
signal2< StateKey *, int > | doubleClick
signal2< StateKey *, int > | click

Member Function Documentation

int EventKey::GetNbLinks ( ) [inline]

Definition at line 113 of file control.h.

Referenced by EventControl::GetNbLinks(), and ValueEditors::MakeElemControlStruct().

Member Data Documentation

signal2<StateKey *,int> EventKey::click

Definition at line 111 of file control.h.

Referenced by ValueEditors::MakeElemControlStruct().

signal2<StateKey *,int> EventKey::doubleClick

Definition at line 110 of file control.h.

Referenced by ValueEditors::MakeElemControlStruct(), and Control::OnKeyDouble().

signal2<StateKey *,int> EventKey::down

Definition at line 109 of file control.h.

Referenced by Calculator::Calculator(), ValueEditors::MakeElemControlStruct(), Control::OnKeyDown(), Title::Title(), and Univers::Univers().

signal2<StateKey *,int> EventKey::up

Definition at line 108 of file control.h.

Referenced by ValueEditors::MakeElemControlStruct(), Control::OnKeyUp(), Title::Title(), and Univers::Univers().

The documentation for this class was generated from the following file:
  • control.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventKey Member List

This is the complete list of members for EventKey, including all inherited members.
click | EventKey |
doubleClick | EventKey |
down | EventKey |
GetNbLinks() | EventKey | [inline]
up | EventKey |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventMouse class Reference

EventMouse Class Reference

Evenement de souris. More...

#include <control.h>

List of all members.

Public Member Functions

int | GetNbLinks ()

Public Attributes

EventMouseButton left
EventMouseButton right
EventMouseButton mid
signal4< StateMouse *, int,
int, int > 		move
signal2< StateMouse *, int > | wheel

Detailed Description

Evenement de souris.

List:

  • left
  • right
  • mid
  • move
  • wheel

Definition at line 155 of file control.h.

Member Function Documentation

int EventMouse::GetNbLinks ( ) [inline]

Definition at line 163 of file control.h.

References EventMouseButton::GetNbLinks(), left, mid, move, right, and wheel.

Referenced by EventControl::GetNbLinks(), and ValueEditors::MakeElemControlStruct().

Member Data Documentation

EventMouseButton EventMouse::left

Definition at line 158 of file control.h.

Referenced by Button::Button(), GetNbLinks(), ValueEditors::MakeElemControlStruct(), Control::OnClick(), Control::OnLButtonDouble(), Control::OnLButtonDown(), Picking::OnLButtonUp(), Control::OnLButtonUp(), Slider::Slider(), TextBox::TextBox(), Title::Title(), Univers::Univers(), and Window::Window().

EventMouseButton EventMouse::mid

Definition at line 158 of file control.h.

Referenced by GetNbLinks(), ValueEditors::MakeElemControlStruct(), Button::ModeAllButtons(), Control::OnMButtonDouble(), Control::OnMButtonDown(), Picking::OnMButtonUp(), Control::OnMButtonUp(), Title::Title(), Univers::Univers(), and Window::Window().

signal4<StateMouse *,int,int,int> EventMouse::move

Definition at line 160 of file control.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), GetNbLinks(), ValueEditors::MakeElemControlStruct(), Control::OnMouseMove(), ResizingAndRotateControl::ResizingAndRotateControl(), Slider::Slider(), Title::Title(), and Univers::Univers().

EventMouseButton EventMouse::right

Definition at line 158 of file control.h.

Referenced by GetNbLinks(), ValueEditors::MakeElemControlStruct(), Button::ModeAllButtons(), Control::OnRButtonDouble(), Control::OnRButtonDown(), Picking::OnRButtonUp(), Control::OnRButtonUp(), and Window::Window().

signal2<StateMouse *,int> EventMouse::wheel

Definition at line 161 of file control.h.

Referenced by GetNbLinks(), ValueEditors::MakeElemControlStruct(), Control::OnMouseWheel(), Title::Title(), and Univers::Univers().

The documentation for this class was generated from the following file:
  • control.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventMouse Member List

This is the complete list of members for EventMouse, including all inherited members.
GetNbLinks() | EventMouse | [inline]
left | EventMouse |
mid | EventMouse |
move | EventMouse |
right | EventMouse |
wheel | EventMouse |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventMouseButton class Reference

EventMouseButton Class Reference

Evenemnt EventMouseButton. More...

#include <control.h>

List of all members.

Public Member Functions

int | GetNbLinks ()

Public Attributes

signal2< StateMouse *, int > | up
signal2< StateMouse *, int > | down
signal2< StateMouse *, int > | doubleClick
signal2< StateMouse *, int > | click
Timer timerClick

Detailed Description

Evenemnt EventMouseButton.

List:

  • up (relaché)
  • down (appuyé)
  • doubleClik (double click)
  • click (simple click)

Definition at line 78 of file control.h.

Member Function Documentation

int EventMouseButton::GetNbLinks ( ) [inline]

Definition at line 87 of file control.h.

References doubleClick, down, and up.

Referenced by EventMouse::GetNbLinks(), and ValueEditors::MakeElemControlStruct().

Member Data Documentation

signal2<StateMouse *,int > EventMouseButton::click

Definition at line 84 of file control.h.

Referenced by ValueEditors::MakeElemControlStruct(), Control::OnClick(), Control::OnMButtonUp(), and Control::OnRButtonUp().

signal2<StateMouse *,int > EventMouseButton::doubleClick

Definition at line 83 of file control.h.

Referenced by GetNbLinks(), ValueEditors::MakeElemControlStruct(), Control::OnLButtonDouble(), Control::OnMButtonDouble(), Control::OnRButtonDouble(), and Title::Title().

signal2<StateMouse *,int > EventMouseButton::down

Definition at line 82 of file control.h.

Referenced by Button::Button(), GetNbLinks(), ValueEditors::MakeElemControlStruct(), Button::ModeAllButtons(), Control::OnLButtonDown(), Control::OnMButtonDown(), Control::OnRButtonDown(), Slider::Slider(), TextBox::TextBox(), Title::Title(), Univers::Univers(), and Window::Window().

Timer EventMouseButton::timerClick

Definition at line 86 of file control.h.

signal2<StateMouse *,int > EventMouseButton::up

Definition at line 81 of file control.h.

Referenced by Button::Button(), GetNbLinks(), ValueEditors::MakeElemControlStruct(), Button::ModeAllButtons(), Picking::OnLButtonUp(), Control::OnLButtonUp(), Picking::OnMButtonUp(), Control::OnMButtonUp(), Picking::OnRButtonUp(), Control::OnRButtonUp(), Slider::Slider(), TextBox::TextBox(), Title::Title(), and Univers::Univers().

The documentation for this class was generated from the following file:
  • control.h
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventMouseButton Member List

This is the complete list of members for EventMouseButton, including all inherited members.
click | EventMouseButton |
doubleClick | EventMouseButton |
down | EventMouseButton |
GetNbLinks() | EventMouseButton | [inline]
timerClick | EventMouseButton |
up | EventMouseButton |
Generated on Fri Aug 20 19:21:04 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventOver class Reference

EventOver Class Reference

Evenement sur le survole. More...

#include <control.h>

List of all members.

Public Member Functions

int | GetNbLinks ()

Public Attributes

signal2< Control *, int > | in
signal2< Control *, int > | out

Detailed Description

Evenement sur le survole.

List:

  • in
  • out

Definition at line 177 of file control.h.

Member Function Documentation

int EventOver::GetNbLinks ( ) [inline]

Definition at line 183 of file control.h.

References in, and out.

Referenced by EventControl::GetNbLinks(), and ValueEditors::MakeElemControlStruct().

Member Data Documentation

signal2<Control *,int> EventOver::in

Definition at line 180 of file control.h.

Referenced by Button::Button(), ValueEditors::MakeElemControlStruct(), Control::OverIn(), TextBox::TextBox(), Title::Title(), and Univers::Univers().

signal2<Control *,int> EventOver::out

Definition at line 181 of file control.h.

Referenced by Button::Button(), GetNbLinks(), ValueEditors::MakeElemControlStruct(), ResizingAndRotateControl::OnHover(), Control::OverOut(), Slider::Slider(), Title::Title(), TrackButton::TrackButton(), and Univers::Univers().

The documentation for this class was generated from the following file:
  • control.h
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventOver Member List

This is the complete list of members for EventOver, including all inherited members.
GetNbLinks() | EventOver | [inline]
in | EventOver |
out | EventOver |
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventSlider class Reference

EventSlider Class Reference

#include <slider.h>

List of all members.

Public Attributes

signal3< double, double, double > moving
Moving(double min,double max,double percent).

Member Data Documentation

signal3<double,double,double> EventSlider::moving

Moving(double min,double max,double percent).

Definition at line 32 of file slider.h.

Referenced by Tutorial::BaseDemo::BaseDemo().

The documentation for this class was generated from the following file:
  • slider.h
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventSlider Member List

This is the complete list of members for EventSlider, including all inherited members.
moving EventSlider
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventTextBox class Reference

EventTextBox Class Reference

#include <textBox.h>

List of all members.

Public Attributes

signal2< int, int > | setCursor
Call(int column,int line); Le curseur est positionné.

signal0 | change
Call() Quelque chose a ete modifié.

Member Data Documentation

signal0 EventTextBox::change

Call() Quelque chose a ete modifié.

Definition at line 32 of file textBox.h.

signal2<int,int> EventTextBox::setCursor

Call(int column,int line); Le curseur est positionné.

Definition at line 31 of file textBox.h.

Referenced by TextBox::SetCursor().

The documentation for this class was generated from the following file:
  • textBox.h
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventTextBox Member List

This is the complete list of members for EventTextBox, including all inherited members.
change | EventTextBox
setCursor | EventTextBox
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventTitle class Reference

EventTitle Class Reference

#include <title.h>

List of all members.

Public Attributes

signal0 | minimize
signal0 | maximize
signal0 | original
signal0 | close
signal0 | gotFocus
signal0 | lostFocus

Member Data Documentation

signal0 EventTitle::close

Definition at line 41 of file title.h.

Referenced by Title::OnClose(), and Window::Window().

signal0 EventTitle::gotFocus

Definition at line 42 of file title.h.

Referenced by Title::GotFocus().

signal0 EventTitle::lostFocus

Definition at line 43 of file title.h.

Referenced by Title::LostFocus().

signal0 EventTitle::maximize

Definition at line 39 of file title.h.

Referenced by Title::OnMax().

signal0 EventTitle::minimize

Definition at line 38 of file title.h.

Referenced by Title::OnMin().

signal0 EventTitle::original

Definition at line 40 of file title.h.

The documentation for this class was generated from the following file:
  • title.h
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventTitle Member List

This is the complete list of members for EventTitle, including all inherited members.
close | EventTitle
gotFocus | EventTitle
lostFocus | EventTitle
maximize | EventTitle
minimize | EventTitle
original | EventTitle
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventTrackButton class Reference

EventTrackButton Class Reference

#include <trackButton.h>

List of all members.

Public Attributes

signal0 | rotate
signal1< double > | resize
signal1< double > | translate

Member Data Documentation

signal1<double> EventTrackButton::resize

Definition at line 32 of file trackButton.h.

signal0 EventTrackButton::rotate

Definition at line 31 of file trackButton.h.

signal1<double> EventTrackButton::translate

Definition at line 33 of file trackButton.h.

The documentation for this class was generated from the following file:
  • trackButton.h
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventTrackButton Member List

This is the complete list of members for EventTrackButton, including all inherited members.
resize | EventTrackButton
rotate | EventTrackButton
translate | EventTrackButton
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: EventTreeView class Reference

EventTreeView Class Reference

#include <treeView.h>

List of all members.

Public Attributes

signal1< TreeNode * > select

Member Data Documentation

signal1<TreeNode *> EventTreeView::select

Definition at line 51 of file treeView.h.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), and TreeDirectory::TreeDirectory().

The documentation for this class was generated from the following file:
  • treeView.h
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

EventTreeView Member List

This is the complete list of members for EventTreeView, including all inherited members.
select EventTreeView
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Face class Reference

Face Class Reference

Une face est la brique de base de l'affichage 3D. More...

#include <face.h>

List of all members.

Public Member Functions

Face ()
~Face ()
void | Set (char *name, int idControl, int idFace, BOOL view)
BOOL | ConfigDynamicLayout (Face *father, double xCenter, double yCenter, double xSize, double ySize)
place la face par rapport a son pere, configure la partie percent

void | ConfigStaticLayout (double xCenter, double yCenter, double zCenter, double xSize, double ySize)
void | ConfigCenter (int xCenter, int yCenter)
void | Move (double x, double y, double z)
void | MoveTo (double x, double y, double z)
void | MovingInside ()
On se deplace dans la face.

void | Zero ()
void | operator= (Face &source)
void | Draw (BOOL onPicking)
void | GetCorners (Point3D< double > *corners)
Donne les 4 coins de la face en coordonnée ecrant.

void | ComputeLayout ()

Public Attributes

Recorder childRecorder
objet 3D a affiché quelque soit le mode d'affichage de la face (peremet d'afficher le curseur par example)

int | idFace
int | idControl
identifiant de la face ne cours

BOOL | noPicking
ne pas utiliser dans le picking

BOOL | view
doit etre visualisée

BOOL | blending
0=non 1=oui -1=ne change rien a l'ancien

MyString name
info pour le picking

Text3D * text
text qui dois etre affiché

Material material
couleurs

Texture * texture
pointeur sur une texture

Curve curve
parametre d'incurvation

float | line
taille de la ligne de detour =0 pas de ligne, si anti alise active la taille ne change rien donc 0 ou 1 dans ce cas

Material lineMaterial
couleurs de la ligne

BOOL | antialias
antialiase activée

BOOL | fog
brouillard activée

Point2D< LayoutDouble > size
taille logic de la face

Point2D< int > | center
centre logic par rapport a la face courante {-1,0,1}

Point3D< LayoutDouble > position
centre logic par rapport a la face conteneur

Point3D< GLdouble > | scale
redimentionement de la face

Point3D< GLdouble > | angle
angle de cette face par rapport a la face conteneur

Point2D< GLdouble > | computeSize
taile une fois calculé

Point2D< GLdouble > | computeCenter
valeur du centre calculé

Point3D< GLdouble > | computePosition
valeur de la position calculé

double | ratioXY
ratio entre les X et Y

Detailed Description

Une face est la brique de base de l'affichage 3D.

Parametres:

  • Identifié (if)
  • A des modes d'affichage (view,blending,fog,antialias)
  • Texturé
  • A un materiel
  • A une position et angle par rapoort a sont "pere" (layout,angle)
  • Peut etre incurvé
  • Peut etre detouré (line)

Definition at line 46 of file face.h.

Constructor & Destructor Documentation

Face::Face ( )

Definition at line 272 of file face.cpp.

References Zero().

Face::~Face ( )

Definition at line 277 of file face.cpp.

Member Function Documentation

void Face::ComputeLayout ( )

Definition at line 75 of file face.cpp.

References Layout< T >::Compute(), computeCenter, computePosition, computeSize, position, scale, Point2D< int >::x, Point3D< LayoutDouble >::x, Point3D< GLdouble >::x, Point2D< LayoutDouble >::x, Point2D< GLdouble >::x, Point2D< int >::y, Point3D< LayoutDouble >::y, Point3D< GLdouble >::y, Point2D< LayoutDouble >::y, Point2D< GLdouble >::y, Point3D< LayoutDouble >::z, and Point3D< GLdouble >::z.

Referenced by Primitive::Draw(), and Cursor::Draw().

void Face::ConfigCenter | ( | int | xCenter,
 |  | int | yCenter
 | ) |

Definition at line 55 of file face.cpp.

References Point2D< int >::x, and Point2D< int >::y.

BOOL Face::ConfigDynamicLayout | ( | Face * | father,
 |  | double | xPosition,
 |  | double | yPosition,
 |  | double | xSize,
 |  | double | ySize
 | ) |

place la face par rapport a son pere, configure la partie percent

Definition at line 38 of file face.cpp.

References BOOL(), computeSize, position, Layout< T >::SetPercent(), Point2D< LayoutDouble >::x, Point2D< GLdouble >::x, Point3D< LayoutDouble >::x, Point2D< LayoutDouble >::y, Point2D< GLdouble >::y, and Point3D< LayoutDouble >::y.

Referenced by Primitive::AddFace().

void Face::ConfigStaticLayout | ( | double | xCenter,
 |  | double | yCenter,
 |  | double | zCenter,
 |  | double | xSize,
 |  | double | ySize
 | ) |

Definition at line 48 of file face.cpp.

References Layout< T >::constValue, MoveTo(), Point2D< LayoutDouble >::x, and Point2D< LayoutDouble >::y.

Referenced by Primitive::AddFace().

void Face::Draw ( BOOL onPicking )

Affiche la face et fait les translation,rotation et applique le materiel quelque soit le mode d'affichage.

La fonction pre-suppose que les coordonnée gl sont centré

Remarque: ne pas oublier de lancer

 MovingInside();
avant

Todo:
transposé tout dans le text->draw

Definition at line 109 of file face.cpp.

References antialias, blending, ce, childRecorder, computeSize, curve, Text3D::Draw(), Curve::Draw(), Text3D::DrawPicking(), Region::enable, ControlEngine::fog, Texture::id, idControl, idFace, Curve::IsActive(), Fog::isEnable, line, lineMaterial, noPicking, Recorder::Play(), ratioXY, Screen::region, ControlEngine::RegionAdd(), ControlEngine::screenMain, Text3D::SetClipping(), Texture::SetCoord(), BasicText3D::SetRatioXY(), Material::Use(), view, Point2D< GLdouble >::x, and Point2D< GLdouble >::y.

Referenced by Primitive::Draw(), and Cursor::Draw().

void Face::GetCorners ( Point3D< double > * corners )

Donne les 4 coins de la face en coordonnée ecrant.

Definition at line 259 of file face.cpp.

References ce, computeSize, ControlEngine::RegionGet(), Point2D< GLdouble >::x, and Point2D< GLdouble >::y.

void Face::Move | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Definition at line 61 of file face.cpp.

References Layout< T >::constValue, position, Point3D< LayoutDouble >::x, Point3D< LayoutDouble >::y, and Point3D< LayoutDouble >::z.

void Face::MoveTo | ( | double | x,
 |  | double | y,
 |  | double | z
 | ) |

Definition at line 68 of file face.cpp.

References Layout< T >::constValue, position, Point3D< LayoutDouble >::x, Point3D< LayoutDouble >::y, and Point3D< LayoutDouble >::z.

Referenced by ConfigStaticLayout(), and Cursor::Draw().

void Face::MovingInside ( )

On se deplace dans la face.

Definition at line 251 of file face.cpp.

References angle, computeCenter, computePosition, Point3D< GLdouble >::glRotated(), Point3D< GLdouble >::glTranslated(), Point2D< GLdouble >::x, and Point2D< GLdouble >::y.

Referenced by Primitive::Draw(), and Cursor::Draw().

void Face::operator= ( Face & source )

Definition at line 317 of file face.cpp.

References angle, antialias, blending, computeCenter, computePosition, computeSize, curve, idControl, idFace, line, lineMaterial, noPicking, position, ratioXY, scale, src, and view.

void Face::Set | ( | char * | name,
 |  | int | idControl,
 |  | int | idFace,
 |  | BOOL | view
 | ) |

Definition at line 27 of file face.cpp.

References idControl, idFace, and view.

Referenced by Primitive::AddFace().

void Face::Zero ( )

Definition at line 283 of file face.cpp.

References angle, antialias, blending, childRecorder, computeCenter, computePosition, computeSize, curve, Recorder::Delete(), idControl, idFace, line, lineMaterial, noPicking, position, ratioXY, scale, view, Curve::Zero(), Material::Zero(), Point3D< GLdouble >::Zero(), Point2D< GLdouble >::Zero(), Point3D< LayoutDouble >::Zero(), Point2D< int >::Zero(), and Point2D< LayoutDouble >::Zero().

Referenced by Face().

Member Data Documentation

Point3D<GLdouble> Face::angle

angle de cette face par rapport a la face conteneur

Definition at line 70 of file face.h.

Referenced by Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), MovingInside(), operator=(), Cursor::Rotate(), and Zero().

BOOL Face::antialias

antialiase activée

Definition at line 62 of file face.h.

Referenced by Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), and Zero().

BOOL Face::blending

0=non 1=oui -1=ne change rien a l'ancien

Definition at line 54 of file face.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Config(), Tip::Create(), Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), Control::SetAlphaBlending(), and Zero().

Point2D<int> Face::center

centre logic par rapport a la face courante {-1,0,1}

Definition at line 67 of file face.h.

Referenced by ValueEditors::MakeElemFaceStruct().

Recorder Face::childRecorder

objet 3D a affiché quelque soit le mode d'affichage de la face (peremet d'afficher le curseur par example)

Definition at line 50 of file face.h.

Referenced by Cursor::ApplyType(), Draw(), and Zero().

Point2D<GLdouble> Face::computeCenter

valeur du centre calculé

Definition at line 72 of file face.h.

Referenced by ComputeLayout(), ValueEditors::MakeElemFaceStruct(), MovingInside(), operator=(), and Zero().

Point3D<GLdouble> Face::computePosition

valeur de la position calculé

Definition at line 73 of file face.h.

Referenced by ComputeLayout(), ValueEditors::MakeElemFaceStruct(), MovingInside(), operator=(), and Zero().

Point2D<GLdouble> Face::computeSize

taile une fois calculé

Definition at line 71 of file face.h.

Referenced by ComputeLayout(), Config(), ConfigDynamicLayout(), Draw(), GetCorners(), ValueEditors::MakeElemFaceStruct(), ResizingAndRotateControl::OnHover(), operator=(), TaskWindow::Refresh(), and Zero().

Curve Face::curve

parametre d'incurvation

Definition at line 59 of file face.h.

Referenced by Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), and Zero().

BOOL Face::fog

brouillard activée

Definition at line 63 of file face.h.

Referenced by ValueEditors::MakeElemFaceStruct().

int Face::idControl

identifiant de la face ne cours

Definition at line 51 of file face.h.

Referenced by Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), Set(), and Zero().

int Face::idFace

Definition at line 51 of file face.h.

Referenced by Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), Set(), and Zero().

float Face::line

taille de la ligne de detour =0 pas de ligne, si anti alise active la taille ne change rien donc 0 ou 1 dans ce cas

Definition at line 60 of file face.h.

Referenced by Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), Control::SetLines(), and Zero().

Material Face::lineMaterial

couleurs de la ligne

Definition at line 61 of file face.h.

Referenced by Draw(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), operator=(), Control::SetLines(), and Zero().

Material Face::material

couleurs

Definition at line 57 of file face.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Config(), Tip::Create(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), Control::SetAlphaBlending(), and Tutorial::UniversDemo::SetFace().

MyString Face::name

info pour le picking

Definition at line 55 of file face.h.

Referenced by ControlEngine::ControlEngine(), ValueEditors::MakeElemFaceStruct(), and Picking::Test().

BOOL Face::noPicking

ne pas utiliser dans le picking

Definition at line 52 of file face.h.

Referenced by Config(), Draw(), operator=(), and Zero().

Point3D<LayoutDouble> Face::position

centre logic par rapport a la face conteneur

Definition at line 68 of file face.h.

Referenced by Control::ChangeDirection(), ComputeLayout(), Config(), ConfigDynamicLayout(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), Move(), MoveTo(), operator=(), Tutorial::UniversDemo::UniversDemo(), and Zero().

double Face::ratioXY

ratio entre les X et Y

Definition at line 74 of file face.h.

Referenced by Primitive::Draw(), Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), and Zero().

Point3D<GLdouble> Face::scale

redimentionement de la face

Definition at line 69 of file face.h.

Referenced by Primitive::Draw(), and ValueEditors::MakeElemFaceStruct().

Point2D<LayoutDouble> Face::size

taille logic de la face

Definition at line 66 of file face.h.

Referenced by Control::ChangeDirection(), Config(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), and Tutorial::UniversDemo::UniversDemo().

Text3D* Face::text

text qui dois etre affiché

Definition at line 56 of file face.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Tip::Create(), Tutorial::FaceDemo::FaceDemo(), ValueEditors::MakeElemFaceStruct(), Tutorial::BaseDemo::OnWinOut(), Tutorial::UniversDemo::SetFace(), and Tutorial::WindowDemo::WindowDemo().

Texture* Face::texture

pointeur sur une texture

Definition at line 58 of file face.h.

Referenced by Cursor::ApplyType(), TreeView::ConfigFacesPlus(), Tutorial::FaceDemo::FaceDemo(), TextTexture::MajTexture(), and ValueEditors::MakeElemFaceStruct().

BOOL Face::view

doit etre visualisée

Definition at line 53 of file face.h.

Referenced by Cursor::ApplyType(), Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), Set(), and Zero().

The documentation for this class was generated from the following files:
  • face.h
  • face.cpp
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Face Member List

This is the complete list of members for Face, including all inherited members.
angle | Face
antialias | Face
blending | Face
center | Face
childRecorder | Face
computeCenter | Face
ComputeLayout() | Face
computePosition | Face
computeSize | Face
ConfigCenter(int xCenter, int yCenter) | Face
ConfigDynamicLayout(Face *father, double xCenter, double yCenter, double xSize, double ySize) | Face
ConfigStaticLayout(double xCenter, double yCenter, double zCenter, double xSize, double ySize) | Face
curve | Face
Draw(BOOL onPicking) | Face
Face() | Face
fog | Face
GetCorners(Point3D< double > *corners) | Face
idControl | Face
idFace | Face
line | Face
lineMaterial | Face
material | Face
Move(double x, double y, double z) | Face
MoveTo(double x, double y, double z) | Face
MovingInside() | Face
name | Face
noPicking | Face
operator=(Face &source) | Face
position | Face
ratioXY | Face
scale | Face
Set(char *name, int idControl, int idFace, BOOL view) | Face
size | Face
text | Face
texture | Face
view | Face
Zero() | Face
~Face() | Face
Generated on Fri Aug 20 19:21:05 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Fog class Reference

Fog Class Reference

#include <fog.h>

List of all members.

Public Member Functions

Fog ()
void | Enable (BOOL set=-1)
void | Use ()
void | GetStringMode (MyString &result)
int | GetIndexMode ()
void | SetIndexMode (int index)

Public Attributes

BOOL | isEnable
float | start
float | end
float | density
FogMode mode
Color color

Detailed Description

Todo:
template class class IVS { int index T value MyString description; }

Definition at line 53 of file fog.h.

Constructor & Destructor Documentation

Fog::Fog ( ) [inline]

Definition at line 64 of file fog.h.

References color, density, end, fogLinear, mode, Color::Set(), and start.

Member Function Documentation

void Fog::Enable ( BOOL set = -1 ) [inline]

Definition at line 74 of file fog.h.

Referenced by ConfigProc(), and Use().

int Fog::GetIndexMode ( ) [inline]

Definition at line 102 of file fog.h.

References fogExponential, fogExponential2, fogLinear, and mode.

Referenced by ConfigProc().

void Fog::GetStringMode ( MyString & result ) [inline]

Definition at line 91 of file fog.h.

References fogExponential, fogExponential2, fogLinear, and mode.

void Fog::SetIndexMode ( int index ) [inline]

Definition at line 113 of file fog.h.

References fogExponential, fogExponential2, fogLinear, FogMode, index, and mode.

void Fog::Use ( ) [inline]

Definition at line 81 of file fog.h.

References color, density, Enable(), end, mode, and start.

Referenced by ApplyParamObj(), and ControlEngine::Setup().

Member Data Documentation

Color Fog::color

Definition at line 61 of file fog.h.

Referenced by ControlEngine::ControlEngine(), Fog(), ValueEditors::MakeRenderStruct(), and Use().

float Fog::density

Definition at line 59 of file fog.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), Fog(), ValueEditors::MakeRenderStruct(), Use(), and ControlEngine::~ControlEngine().

float Fog::end

Definition at line 58 of file fog.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), ValueEditors::MakeRenderStruct(), and ControlEngine::~ControlEngine().

BOOL Fog::isEnable

Definition at line 56 of file fog.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), Face::Draw(), ValueEditors::MakeRenderStruct(), and ControlEngine::~ControlEngine().

FogMode Fog::mode

Definition at line 60 of file fog.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), ValueEditors::MakeRenderStruct(), and ControlEngine::~ControlEngine().

float Fog::start

Definition at line 57 of file fog.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), ValueEditors::MakeRenderStruct(), and ControlEngine::~ControlEngine().

The documentation for this class was generated from the following file:
  • fog.h
Generated on Fri Aug 20 19:21:23 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Fog Member List

This is the complete list of members for Fog, including all inherited members.
color | Fog |
density | Fog |
Enable(BOOL set=-1) | Fog | [inline]
end | Fog |
Fog() | Fog | [inline]
GetIndexMode() | Fog | [inline]
GetStringMode(MyString &result) | Fog | [inline]
isEnable | Fog |
mode | Fog |
SetIndexMode(int index) | Fog | [inline]
start | Fog |
Use() | Fog | [inline]
Generated on Fri Aug 20 19:21:23 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Inertia class Reference

Inertia Class Reference

Donne le vecteur correspondant a la moyenne de deplacement donnée par longeur de cycl donnée. More...

#include <Inertia.h>

List of all members.

Public Member Functions

Inertia ()
void | Start (double _viewTime=0.5, double _inertiaTime=0.1)
void | Add (Point2D< int > element)
Point2D< double > | GetMoyValue ()

Detailed Description

Donne le vecteur correspondant a la moyenne de deplacement donnée par longeur de cycl donnée.

Remarque :

  • le moteur de timer doit deja etre lancé par "TimerEvent::Start();")
  • l'element template T doit avoir definie les operateurs =,/=,+=,-= avec lui meme

Principe de distrubution:

  • chaque pick de valeur est supposée durée tInertie
  • si un au pick arrive avant ca la fin tInertie du precedent elle le poursuis

Ex.:

Inertia<int,double> inertia;
int moy;

inertia.Start(5,10);    // 5sec
...
inertia.Add(2);
...
inertia.Add(5);
...
moy=GetMoyValue();

Definition at line 72 of file Inertia.h.

Constructor & Destructor Documentation

Inertia::Inertia ( )

Definition at line 25 of file Inertia.cpp.

Member Function Documentation

void Inertia::Add ( Point2D< int > element )

Definition at line 38 of file Inertia.cpp.

References ElemStack::elem, Timer::GetDeltaTime(), MyStack< ElemStack >::Push(), and ElemStack::timing.

Referenced by Control::OnMouseMove().

Point2D< double > Inertia::GetMoyValue ( )

Definition at line 46 of file Inertia.cpp.

References ElemStack::elem, MyStack< ElemStack >::FrontPeek(), MyStack< ElemStack >::FrontPop(), Timer::GetDeltaTime(), MyListIterator< ElemStack >::GetElem(), MyList< ElemStack >::GetNbElem(), MyList< ElemStack >::i, MyListIterator< ElemStack >::More(), ElemStack::timing, Point2D< int >::x, Point2D< T >::x, Point2D< int >::y, and Point2D< T >::y.

void Inertia::Start | ( | double | _viewTime = 0.5,
 |  | double | _inertiaTime = 0.1
 | ) |

Definition at line 31 of file Inertia.cpp.

References Timer::GetDeltaTime().

Referenced by ControlEngine::Start().

The documentation for this class was generated from the following files:
  • Inertia.h
  • Inertia.cpp
Generated on Fri Aug 20 19:21:23 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Inertia Member List

This is the complete list of members for Inertia, including all inherited members.
Add(Point2D< int > element) | Inertia
GetMoyValue() | Inertia
Inertia() | Inertia
Start(double _viewTime=0.5, double _inertiaTime=0.1) | Inertia
Generated on Fri Aug 20 19:21:23 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateLayout< T > class Reference

Layout< T > Class Template Reference

Gestion des positionnements des controls. More...

#include <layout.h>

List of all members.

Public Member Functions

Layout ()
void | Zero ()
void | operator= (int value)
permet d'acceder directement a la composant constante dy layout
        onLayout=0;
Remarque: Indispensable dans les templates qui initialise par "value=0;" (cf.: Point3D<Layout>)

void | operator= (GLdouble value)
void | operator= (Layout &source)
void | Set (T _constValue, double _percentValue=0, T *_baseValue=NULL)
void | SetPercent (double _percentValue=0, T *_baseValue=NULL)
BOOL | IsDynamic ()
T | Compute ()

Public Attributes

T | constValue
double | percentValue
T * | baseValue

Detailed Description

template<class T>
class Layout< T >

Gestion des positionnements des controls.

Ex.:

Layout var;
double base;
var.Set(0,1,&base);
float res = var.Compute(); // res = 1; (0% de 100 + +1)
var.Set(0.5,-1);
base=100;
float res = var.Compute(); // res = 49; (50% de 100 + -1)

Definition at line 40 of file layout.h.

Constructor & Destructor Documentation

template<class T>
Layout< T >::Layout ( ) [inline]

Definition at line 48 of file layout.h.

Member Function Documentation

template<class T>
T Layout< T >::Compute ( ) [inline]

Todo:
a revoir completement void Move(T delta) { constValue+=delta; }
void MoveTo(T value) { constValue=value; }

void Scale(T delta) { percentValue*=(double)delta; }

Definition at line 117 of file layout.h.

Referenced by Face::ComputeLayout().

template<class T>
BOOL Layout< T >::IsDynamic ( ) [inline]

Definition at line 96 of file layout.h.

Referenced by ValueEditors::MakeElemFaceStruct().

template<class T>
void Layout< T >::operator= ( Layout< T > & source ) [inline]

Definition at line 77 of file layout.h.

template<class T>
void Layout< T >::operator= ( GLdouble value ) [inline]

Definition at line 72 of file layout.h.

template<class T>
void Layout< T >::operator= ( int value ) [inline]

permet d'acceder directement a la composant constante dy layout

        onLayout=0;
Remarque: Indispensable dans les templates qui initialise par "value=0;" (cf.: Point3D<Layout>)

Definition at line 67 of file layout.h.

template<class T>
void Layout< T >::Set | ( | T | _constValue,
 |  | double | _percentValue = 0,
 |  | T * | _baseValue = NULL
 | ) | [inline]

Definition at line 84 of file layout.h.

template<class T>
void Layout< T >::SetPercent | ( | double | _percentValue = 0,
 |  | T * | _baseValue = NULL
 | ) | [inline]

Definition at line 90 of file layout.h.

Referenced by Config(), Face::ConfigDynamicLayout(), and Layout< GLdouble >::Set().

template<class T>
void Layout< T >::Zero ( ) [inline]

Definition at line 53 of file layout.h.

Referenced by Layout< GLdouble >::Layout().

Member Data Documentation

template<class T>
T* Layout< T >::baseValue

Definition at line 45 of file layout.h.

Referenced by ValueEditors::MakeElemFaceStruct(), and Layout< GLdouble >::operator=().

template<class T>
T Layout< T >::constValue

Definition at line 43 of file layout.h.

Referenced by Face::ConfigStaticLayout(), ValueEditors::MakeElemFaceStruct(), Face::Move(), Face::MoveTo(), and Layout< GLdouble >::operator=().

template<class T>
double Layout< T >::percentValue

Definition at line 44 of file layout.h.

Referenced by ValueEditors::MakeElemFaceStruct(), and Layout< GLdouble >::operator=().

The documentation for this class was generated from the following file:
  • layout.h
Generated on Fri Aug 20 19:21:23 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Layout< T > Member List

This is the complete list of members for Layout< T >, including all inherited members.
baseValue | Layout< T > |
Compute() | Layout< T > | [inline]
constValue | Layout< T > |
IsDynamic() | Layout< T > | [inline]
Layout() | Layout< T > | [inline]
operator=(int value) | Layout< T > | [inline]
operator=(GLdouble value) | Layout< T > | [inline]
operator=(Layout &source) | Layout< T > | [inline]
percentValue | Layout< T > |
Set(T _constValue, double _percentValue=0, T *_baseValue=NULL) | Layout< T > | [inline]
SetPercent(double _percentValue=0, T *_baseValue=NULL) | Layout< T > | [inline]
Zero() | Layout< T > | [inline]
Generated on Fri Aug 20 19:21:23 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Light class Reference

Light Class Reference

Gestion d'une lumiere. More...

#include <light.h>

List of all members.

Public Member Functions

Light ()
Light (int _id)
void | Zero ()
void | operator= (Light &source)
void | Enable (BOOL active=-1)
< -1 affiche ou pas suivant le mode precedent , 0 desactive et 1 active

BOOL | IsEnabled ()
void | Toggle ()
void | Use ()

Static Public Member Functions

void | SetLighting (BOOL set)
BOOL | IsLighting ()

Public Attributes

int | id
BOOL | isEnable
Enabling< GLfloat > | cutoff
Enabling< GLfloat > | exponent
Enabling< GLfloat > | attenuationCst
Enabling< GLfloat > | attenuationLin
Enabling< GLfloat > | attenuationQuad
Material material
Coordonate< GLfloat > | direction
Coordonate< GLfloat > | position

Static Public Attributes

BOOL | useLighting

Detailed Description

Gestion d'une lumiere.

Les parametres:

  • cutoff
  • exponent
  • attenuation
  • position
  • direction

Definition at line 41 of file light.h.

Constructor & Destructor Documentation

Light::Light ( )

Definition at line 35 of file light.cpp.

References Zero().

Light::Light ( int _id )

Definition at line 41 of file light.cpp.

References Zero().

Member Function Documentation

void Light::Enable ( BOOL active = -1 )

< -1 affiche ou pas suivant le mode precedent , 0 desactive et 1 active

Definition at line 77 of file light.cpp.

Referenced by Toggle(), and Use().

BOOL Light::IsEnabled ( )

Definition at line 84 of file light.cpp.

References BOOL().

Referenced by ControlEngine::DrawLight(), and Toggle().

BOOL Light::IsLighting ( ) [static]

Definition at line 30 of file light.cpp.

References BOOL(), and useLighting.

void Light::operator= ( Light & source )

Definition at line 61 of file light.cpp.

References attenuationCst, attenuationLin, attenuationQuad, cutoff, direction, exponent, isEnable, material, and position.

void Light::SetLighting ( BOOL set ) [static]

Definition at line 23 of file light.cpp.

References useLighting.

Referenced by ConfigProc(), and ControlEngine::InitLights().

void Light::Toggle ( )

Definition at line 89 of file light.cpp.

References Enable(), and IsEnabled().

void Light::Use ( )

Definition at line 94 of file light.cpp.

References Material::ambient, attenuationCst, attenuationLin, attenuationQuad, cutoff, Material::diffuse, direction, Enabling< GLfloat >::elem, Enable(), exponent, Coordonate< GLfloat >::isEnable, Enabling< GLfloat >::isEnable, Color::isEnable, and Material::specular.

Referenced by ControlEngine::MajLights().

void Light::Zero ( )

Definition at line 47 of file light.cpp.

References attenuationCst, attenuationLin, attenuationQuad, cutoff, direction, exponent, Enabling< GLfloat >::isEnable, Coordonate< GLfloat >::Zero(), and Material::Zero().

Referenced by Light().

Member Data Documentation

Enabling<GLfloat> Light::attenuationCst

Definition at line 49 of file light.h.

Referenced by ValueEditors::MakeLightsStruct(), operator=(), Use(), and Zero().

Enabling<GLfloat> Light::attenuationLin

Definition at line 50 of file light.h.

Referenced by ValueEditors::MakeLightsStruct(), operator=(), Use(), and Zero().

Enabling<GLfloat> Light::attenuationQuad

Definition at line 51 of file light.h.

Referenced by ValueEditors::MakeLightsStruct(), operator=(), Use(), and Zero().

Enabling<GLfloat> Light::cutoff

Definition at line 47 of file light.h.

Referenced by ControlEngine::InitLights(), ValueEditors::MakeLightsStruct(), operator=(), Use(), and Zero().

Coordonate<GLfloat> Light::direction

Definition at line 55 of file light.h.

Referenced by ControlEngine::DrawLight(), ValueEditors::MakeLightsStruct(), operator=(), Use(), and Zero().

Enabling<GLfloat> Light::exponent

Definition at line 48 of file light.h.

Referenced by ControlEngine::InitLights(), ValueEditors::MakeLightsStruct(), operator=(), Use(), and Zero().

int Light::id

Definition at line 45 of file light.h.

Referenced by ControlEngine::Start().

BOOL Light::isEnable

Definition at line 46 of file light.h.

Referenced by ConfigProc(), ControlEngine::InitLights(), ValueEditors::MakeLightsStruct(), and operator=().

Material Light::material

Definition at line 54 of file light.h.

Referenced by ControlEngine::InitLights(), ControlEngine::MajLights(), ValueEditors::MakeLightsStruct(), and operator=().

Coordonate<GLfloat> Light::position

Definition at line 56 of file light.h.

Referenced by ControlEngine::DrawLight(), ControlEngine::InitLights(), ValueEditors::MakeLightsStruct(), and operator=().

BOOL Light::useLighting [static]

Definition at line 21 of file light.cpp.

Referenced by IsLighting(), and SetLighting().

The documentation for this class was generated from the following files:
  • light.h
  • light.cpp
Generated on Fri Aug 20 19:21:23 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Light Member List

This is the complete list of members for Light, including all inherited members.
attenuationCst | Light |
attenuationLin | Light |
attenuationQuad | Light |
cutoff | Light |
direction | Light |
Enable(BOOL active=-1) | Light |
exponent | Light |
id | Light |
isEnable | Light |
IsEnabled() | Light |
IsLighting() | Light | [static]
Light() | Light |
Light(int _id) | Light |
material | Light |
operator=(Light &source) | Light |
position | Light |
SetLighting(BOOL set) | Light | [static]
Toggle() | Light |
Use() | Light |
useLighting | Light | [static]
Zero() | Light |
Generated on Fri Aug 20 19:21:23 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateLinearEqu2D< T > class Reference

LinearEqu2D< T > Class Template Reference

Donne l'equation de la droite passant par les points. More...

#include <trigo.h>

List of all members.

Public Member Functions

LinearEqu2D ()
LinearEqu2D (Point2D< T > &_pt1, Point2D< T > &_pt2)
void | Zero ()
void | Set (Point2D< T > &_pt1, Point2D< T > &_pt2)
BOOL | IsPoint ()
BOOL | IsVertical ()
BOOL | IsHorizontal ()
BOOL | GetCrossPtFromVertical (T x, Point2D< T > *pt=NULL)
BOOL | GetCrossPtFromHorizontal (T y, Point2D< T > *pt=NULL)
BOOL | GetCrossPtFromLine (LinearEqu2D< T > &equ, Point2D< T > *pt=NULL)

Detailed Description

template<class T>
class LinearEqu2D< T >

Donne l'equation de la droite passant par les points.

L'equation est sous forme: y = ax + b

ex.:
Point2D<int> pt1,pt2;
LinearEqu2D equ(&pt1,&pt2);

Definition at line 162 of file trigo.h.

Constructor & Destructor Documentation

template<class T>
LinearEqu2D< T >::LinearEqu2D ( ) [inline]

Definition at line 176 of file trigo.h.

References LinearEqu2D< T >::Zero().

template<class T>
LinearEqu2D< T >::LinearEqu2D | ( | Point2D< T > & | _pt1,
 |  | Point2D< T > & | _pt2
 | ) | [inline]

Definition at line 177 of file trigo.h.

References LinearEqu2D< T >::Set().

Member Function Documentation

template<class T>
BOOL LinearEqu2D< T >::GetCrossPtFromHorizontal | ( | T | y,
 |  | Point2D< T > * | pt = NULL
 | ) | [inline]

Definition at line 205 of file trigo.h.

References BOOL(), and LinearEqu2D< T >::GetCrossPtFromLine().

template<class T>
BOOL LinearEqu2D< T >::GetCrossPtFromLine | ( | LinearEqu2D< T > & | equ,
 |  | Point2D< T > * | pt = NULL
 | ) | [inline]

Donne le point d'intersection entre 2 droites (si ce n'est pas un point retourn FAUX)

Example:

        Point2D<double> a(0,0);
        Point2D<double> b(10,10);
        Point2D<double> c(10,0);
        Point2D<double> d(0,10);
        Point2D<double> x;

        LinearEqu2D<double> equ1(a,b);
        LinearEqu2D<double> equ2(c,d);
        BOOL res = equ1.GetCrossPtFromLine(equ2,&x);
Resultat: res = TRUE; x={5,5}

Definition at line 231 of file trigo.h.

References BOOL().

Referenced by LinearEqu2D< T >::GetCrossPtFromHorizontal(), LinearEqu2D< T >::GetCrossPtFromVertical(), and Point2D< T >::IsOnTriangle().

template<class T>
BOOL LinearEqu2D< T >::GetCrossPtFromVertical | ( | T | x,
 |  | Point2D< T > * | pt = NULL
 | ) | [inline]

Definition at line 197 of file trigo.h.

References BOOL(), and LinearEqu2D< T >::GetCrossPtFromLine().

template<class T>
BOOL LinearEqu2D< T >::IsHorizontal ( ) [inline]

Definition at line 195 of file trigo.h.

References BOOL().

template<class T>
BOOL LinearEqu2D< T >::IsPoint ( ) [inline]

Definition at line 193 of file trigo.h.

References BOOL().

template<class T>
BOOL LinearEqu2D< T >::IsVertical ( ) [inline]

Definition at line 194 of file trigo.h.

References BOOL().

template<class T>
void LinearEqu2D< T >::Set | ( | Point2D< T > & | _pt1,
 |  | Point2D< T > & | _pt2
 | ) | [inline]

Definition at line 186 of file trigo.h.

Referenced by LinearEqu2D< T >::LinearEqu2D().

template<class T>
void LinearEqu2D< T >::Zero ( ) [inline]

Definition at line 179 of file trigo.h.

References c.

Referenced by LinearEqu2D< T >::LinearEqu2D().

The documentation for this class was generated from the following file:
  • trigo.h
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

LinearEqu2D< T > Member List

This is the complete list of members for LinearEqu2D< T >, including all inherited members.
GetCrossPtFromHorizontal(T y, Point2D< T > *pt=NULL) | LinearEqu2D< T > | [inline]
GetCrossPtFromLine(LinearEqu2D< T > &equ, Point2D< T > *pt=NULL) | LinearEqu2D< T > | [inline]
GetCrossPtFromVertical(T x, Point2D< T > *pt=NULL) | LinearEqu2D< T > | [inline]
IsHorizontal() | LinearEqu2D< T > | [inline]
IsPoint() | LinearEqu2D< T > | [inline]
IsVertical() | LinearEqu2D< T > | [inline]
LinearEqu2D() | LinearEqu2D< T > | [inline]
LinearEqu2D(Point2D< T > &_pt1, Point2D< T > &_pt2) | LinearEqu2D< T > | [inline]
Set(Point2D< T > &_pt1, Point2D< T > &_pt2) | LinearEqu2D< T > | [inline]
Zero() | LinearEqu2D< T > | [inline]
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: LineDock class Reference

LineDock Class Reference

Dock en ligne. More...

#include <linedock.h>

Inheritance diagram for LineDock:

Control List of all members.

Public Member Functions

LineDock ()
~LineDock ()
void | Set (double _xDeb, double _yDeb, double _zDeb, double _xFin, double _yFin, double _zFin, double width=-1)

Public Attributes

double | width
double | xDeb
double | yDeb
double | zDeb
double | xFin
double | yFin
double | zFin

Detailed Description

Dock en ligne.

Test le click sur une zone d'une ligne d'une certaine epaisseur (a utiliser pour faire un "Splitter")

Definition at line 37 of file linedock.h.

Constructor & Destructor Documentation

LineDock::LineDock ( ) [inline]

Definition at line 44 of file linedock.h.

References DEFAULT_WIDTH.

LineDock::~LineDock ( ) [inline]

Definition at line 48 of file linedock.h.

Member Function Documentation

void LineDock::Set | ( | double | _xDeb,
 |  | double | _yDeb,
 |  | double | _zDeb,
 |  | double | _xFin,
 |  | double | _yFin,
 |  | double | _zFin,
 |  | double | width = -1
 | ) | [inline]

Definition at line 52 of file linedock.h.

References DEFAULT_WIDTH, xDeb, xFin, yDeb, yFin, zDeb, and zFin.

Referenced by CubeDock::Config().

Member Data Documentation

double LineDock::width

Definition at line 40 of file linedock.h.

double LineDock::xDeb

Definition at line 41 of file linedock.h.

Referenced by Set().

double LineDock::xFin

Definition at line 42 of file linedock.h.

Referenced by Set().

double LineDock::yDeb

Definition at line 41 of file linedock.h.

Referenced by Set().

double LineDock::yFin

Definition at line 42 of file linedock.h.

Referenced by Set().

double LineDock::zDeb

Definition at line 41 of file linedock.h.

Referenced by Set().

double LineDock::zFin

Definition at line 42 of file linedock.h.

Referenced by Set().

The documentation for this class was generated from the following file:
  • linedock.h
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

LineDock Member List

This is the complete list of members for LineDock, including all inherited members.
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | Control | [inline, virtual]
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
LineDock() | LineDock | [inline]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
Set(double _xDeb, double _yDeb, double _zDeb, double _xFin, double _yFin, double _zFin, double width=-1) | LineDock | [inline]
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Control |
width | LineDock |
xDeb | LineDock |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
xFin | LineDock |
yDeb | LineDock |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
yFin | LineDock |
zDeb | LineDock |
zFin | LineDock |
~Control() | Control |
~LineDock() | LineDock | [inline]
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MasterContainer class Reference

MasterContainer Class Reference

L'univers est le conteneur 3D general (le desktop en 3D). More...

#include <masterContainer.h>

Inheritance diagram for MasterContainer:

Control List of all members.

Public Member Functions

MasterContainer ()
~MasterContainer ()
void | Create ()
void | ToString (MyString &str)
Pour le debugage.

Detailed Description

L'univers est le conteneur 3D general (le desktop en 3D).

Definition at line 31 of file masterContainer.h.

Constructor & Destructor Documentation

MasterContainer::MasterContainer ( )

Definition at line 27 of file masterContainer.cpp.

MasterContainer::~MasterContainer ( )

Definition at line 31 of file masterContainer.cpp.

Member Function Documentation

void MasterContainer::Create ( ) [virtual]

Reimplemented from Control.

Definition at line 37 of file masterContainer.cpp.

References Primitive::AddFace(), ce, ControlEngine::dxWin, ControlEngine::dyWin, MyTreeNode< T >::elem, ControlEngine::primitive, and Control::SetParent().

Referenced by ControlEngine::ControlEngine().

void MasterContainer::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 46 of file masterContainer.cpp.

References MyString::AddFormat().

The documentation for this class was generated from the following files:
  • masterContainer.h
  • masterContainer.cpp
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MasterContainer Member List

This is the complete list of members for MasterContainer, including all inherited members.
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | MasterContainer | [virtual]
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
MasterContainer() | MasterContainer |
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | MasterContainer |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~MasterContainer() | MasterContainer |
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Material class Reference

Material Class Reference

Gestion du materiel (notion OpenGL). More...

#include <material.h>

List of all members.

Public Member Functions

Material ()
void | Zero ()
void | operator= (Material &source)
void | SetDS (Color color)
void | SetDS (float *source)
void | SetDS (float r, float g, float b)
void | SetDS (float r, float g, float b, float a)
void | SetAlpha (float alpha)
void | SetNull ()
void | SetFull (BOOL includeEmission=FALSE)
void | Use ()
void | As (TypeMaterial mat)
void | Record ()
void | Play ()

Public Attributes

int | typeFace
Color ambient
Color diffuse
Color specular
Color emission
Enabling< GLint > | shiness
0 par default

float | opacity
Recorder recorder
recorder pour acceleration openGL

Detailed Description

Gestion du materiel (notion OpenGL).

Parametres:

  • couleur: Ambiente,Speculaire,Diffuse,Emission
  • luminosité (shiness)
  • typeFace [GL_FRONT_AND_BACK]

Todo:
gestion opacity a faire

Definition at line 84 of file material.h.

Constructor & Destructor Documentation

Material::Material ( )

Definition at line 21 of file material.cpp.

References Zero().

Member Function Documentation

void Material::As ( TypeMaterial mat )

Todo:
shiness mistere

Definition at line 130 of file material.cpp.

References AsMaterial::ambient, AsMaterial::diffuse, NB_MATERIAL, num, Enabling< GLint >::Set(), shiness, and AsMaterial::specular.

void Material::operator= ( Material & source )

Definition at line 41 of file material.cpp.

References ambient, diffuse, emission, opacity, shiness, specular, and typeFace.

void Material::Play ( )

Definition at line 121 of file material.cpp.

References Recorder::Play(), and recorder.

void Material::Record ( )

Definition at line 114 of file material.cpp.

References Recorder::BeginRecord(), Recorder::EndRecord(), recorder, and Use().

void Material::SetAlpha ( float alpha )

Definition at line 65 of file material.cpp.

References Color::a, alpha, and emission.

Referenced by Control::SetAlphaBlending().

void Material::SetDS | ( | float | r,
 |  | float | g,
 |  | float | b,
 |  | float | a
 | ) |

set diffuse and specular

Definition at line 74 of file material.cpp.

References emission, Color::Set(), and Color::SetNull().

void Material::SetDS | ( | float | r,
 |  | float | g,
 |  | float | b
 | ) |

Definition at line 82 of file material.cpp.

References emission, Color::Set(), and Color::SetNull().

void Material::SetDS ( float * source )

Definition at line 60 of file material.cpp.

References SetDS().

void Material::SetDS ( Color color )

Definition at line 52 of file material.cpp.

References emission, and Color::SetNull().

Referenced by Tutorial::BaseDemo::BaseDemo(), Button::Button(), Config(), Tutorial::LayoutDemo::ConfigTextFace(), Tip::Create(), TaskWindow::Create(), MsgBox::Create(), Demo::Demo(), Tutorial::FaceDemo::FaceDemo(), ControlEngine::InitLights(), SetDS(), Tutorial::UniversDemo::SetFace(), Control::SetLines(), TextBox::TextBox(), Tip::Tip(), Title::Title(), and Tutorial::WindowDemo::WindowDemo().

void Material::SetFull ( BOOL includeEmission = FALSE )

Definition at line 98 of file material.cpp.

References emission, and Color::SetFull().

Referenced by BasicText3D::BasicText3D().

void Material::SetNull ( )

Definition at line 90 of file material.cpp.

References emission, and Color::SetNull().

Referenced by Object3D::DrawArrow(), Cursor::DrawArrow(), ControlEngine::DrawBackGround(), Object3D::DrawRepere(), Cursor::DrawRepere(), Object3D::DrawVector(), and Cursor::DrawVector().

void Material::Use ( )

Definition at line 105 of file material.cpp.

References Enabling< GLint >::elem, emission, Enabling< GLint >::isEnable, Color::isEnable, shiness, and typeFace.

Referenced by BasicText3D::Draw(), Face::Draw(), Box3D::Draw(), ControlEngine::Draw2DText(), Object3D::DrawArrow(), Cursor::DrawArrow(), ControlEngine::DrawBackGround(), Object3D::DrawRepere(), Cursor::DrawRepere(), Object3D::DrawVector(), Cursor::DrawVector(), and Record().

void Material::Zero ( )

Definition at line 26 of file material.cpp.

References Enabling< GLint >::elem, emission, shiness, typeFace, and Color::Zero().

Referenced by Material(), Light::Zero(), Face::Zero(), and Box3D::Zero().

Member Data Documentation

Color Material::ambient

Definition at line 88 of file material.h.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), operator=(), and Light::Use().

Color Material::diffuse

Definition at line 89 of file material.h.

Referenced by ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), operator=(), and Light::Use().

Color Material::emission

Definition at line 91 of file material.h.

Referenced by ControlEngine::Draw2DText(), Object3D::DrawArrow(), Cursor::DrawArrow(), ControlEngine::DrawBackGround(), Object3D::DrawRepere(), Cursor::DrawRepere(), Object3D::DrawVector(), Cursor::DrawVector(), ControlEngine::MajLights(), ValueEditors::MakeElemFaceStruct(), operator=(), SetAlpha(), SetDS(), SetFull(), SetNull(), Use(), and Zero().

float Material::opacity

Definition at line 93 of file material.h.

Referenced by operator=().

Recorder Material::recorder

recorder pour acceleration openGL

Definition at line 94 of file material.h.

Referenced by Play(), and Record().

Enabling<GLint> Material::shiness

0 par default

Definition at line 92 of file material.h.

Referenced by As(), ValueEditors::MakeElemFaceStruct(), operator=(), Use(), and Zero().

Color Material::specular

Definition at line 90 of file material.h.

Referenced by ControlEngine::MajLights(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeLightsStruct(), operator=(), and Light::Use().

int Material::typeFace

Definition at line 87 of file material.h.

Referenced by ValueEditors::MakeElemFaceStruct(), operator=(), Use(), and Zero().

The documentation for this class was generated from the following files:
  • material.h
  • material.cpp
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Material Member List

This is the complete list of members for Material, including all inherited members.
ambient | Material
As(TypeMaterial mat) | Material
diffuse | Material
emission | Material
Material() | Material
opacity | Material
operator=(Material &source) | Material
Play() | Material
Record() | Material
recorder | Material
SetAlpha(float alpha) | Material
SetDS(Color color) | Material
SetDS(float *source) | Material
SetDS(float r, float g, float b) | Material
SetDS(float r, float g, float b, float a) | Material
SetFull(BOOL includeEmission=FALSE) | Material
SetNull() | Material
shiness | Material
specular | Material
typeFace | Material
Use() | Material
Zero() | Material
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MsgBox class Reference

MsgBox Class Reference

equivalent de l'API "MessageBox" de Windows More...

#include <msgBox.h>

Inheritance diagram for MsgBox:

Window ResizingAndRotateControl Control List of all members.

Public Member Functions

MsgBox ()
~MsgBox ()
virtual void | Create ()
int | OnClose ()
int | OnButtonOk ()
bouton Ok de la zone client clicker

Public Attributes

Button btnOk
Button btnCancel
TextBox txtInfo
TextBox txtHelp
TextBox txtTranche
BOOL | useCancel

Detailed Description

equivalent de l'API "MessageBox" de Windows

Composé d'une zone de text et de boutton "Ok" et "Cancel"

Definition at line 33 of file msgBox.h.

Constructor & Destructor Documentation

MsgBox::MsgBox ( )

Definition at line 33 of file msgBox.cpp.

References btnCancel, Title::btnClose, btnOk, EventButton::click, TextBox::isReadOnly, Control::name, Button::onButton, OnButtonOk(), OnClose(), txtHelp, txtInfo, txtTranche, useCancel, Title::useMax, and Title::useMin.

MsgBox::~MsgBox ( )

Definition at line 60 of file msgBox.cpp.

Member Function Documentation

void MsgBox::Create ( ) [virtual]

Reimplemented from Window.

Definition at line 64 of file msgBox.cpp.

References btnCancel, btnOk, ce, TextBox::Create(), Button::Create(), Window::Create(), MyTreeNode< T >::elem, FACE_BACK, FACE_FRONT, FACE_LEFT, Control::faceNode, FaceNode, Primitive::GoTo(), Primitive::GoToParent(), BasicText3D::material, ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), BasicText3D::scale, Material::SetDS(), Control::Size(), TextBox::text, txtHelp, txtInfo, txtTranche, useCancel, Control::XDockCenter(), Control::YDockCenter(), and Control::YDockTop().

Referenced by Tutorial::BaseDemo::BaseDemo(), and Univers::ExitQuestion().

int MsgBox::OnButtonOk ( )

bouton Ok de la zone client clicker

Todo:
evenement a gerer pour differention Ok de Cancel (valeur de retour ?

Definition at line 119 of file msgBox.cpp.

References Debug0Param, and OnClose().

Referenced by MsgBox().

int MsgBox::OnClose ( )

Reimplemented from Window.

Definition at line 127 of file msgBox.cpp.

References Debug0Param, Control::Delete(), and Window::OnClose().

Referenced by MsgBox(), and OnButtonOk().

Member Data Documentation

Button MsgBox::btnCancel

Definition at line 38 of file msgBox.h.

Referenced by Create(), Univers::ExitQuestion(), and MsgBox().

Button MsgBox::btnOk

Definition at line 37 of file msgBox.h.

Referenced by Create(), Univers::ExitQuestion(), and MsgBox().

TextBox MsgBox::txtHelp

Definition at line 40 of file msgBox.h.

Referenced by Create(), and MsgBox().

TextBox MsgBox::txtInfo

Definition at line 39 of file msgBox.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Create(), Univers::ExitQuestion(), and MsgBox().

TextBox MsgBox::txtTranche

Definition at line 41 of file msgBox.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Create(), and MsgBox().

BOOL MsgBox::useCancel

Definition at line 43 of file msgBox.h.

Referenced by Create(), and MsgBox().

The documentation for this class was generated from the following files:
  • msgBox.h
  • msgBox.cpp
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MsgBox Member List

This is the complete list of members for MsgBox, including all inherited members.
btnCancel | MsgBox |
btnOk | MsgBox |
canResize | ResizingAndRotateControl |
canRotate | ResizingAndRotateControl |
ChangeDirection() | Control |
client | Window |
Control() | Control |
controls | Control | [static]
Create() | MsgBox | [virtual]
Window::Create(double depth) | Window |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
MsgBox() | MsgBox |
name | Control |
nextId | Control | [static]
OnButtonOk() | MsgBox |
OnClick(StateMouse *mouse, int face) | Control |
OnClose() | MsgBox |
onControl | Control |
OnHover(StateMouse *mouse, int deltaX, int deltaY, int numFace) | ResizingAndRotateControl |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnLMRButton(StateMouse *, int) | Window |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Window |
OnOver(StateMouse *mouse, int face) | Window |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
ResizingAndRotateControl() | ResizingAndRotateControl |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
title | Window |
titleDock | Window |
ToString(MyString &str) | Window |
txtHelp | MsgBox |
txtInfo | MsgBox |
txtTranche | MsgBox |
useCancel | MsgBox |
Window() | Window |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~MsgBox() | MsgBox |
~ResizingAndRotateControl() | ResizingAndRotateControl |
~Window() | Window |
Generated on Fri Aug 20 19:21:24 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyDebug class Reference

MyDebug Class Reference

MyDebug est la partie cliente (qui envoi) du debugeur (cf MyServerDebug). More...

#include <MyDebug.h>

List of all members.

Public Member Functions

MyDebug ()
~MyDebug ()

Static Public Member Functions

BOOL | Send (char *message)
void | Start ()
BOOL | FindServer ()
BOOL | SendEvent (char *tabName, char *message,...)
BOOL | SendLine (char *tabName, char *message,...)

Static Public Attributes

HWND | hWndServer = NULL

Detailed Description

MyDebug est la partie cliente (qui envoi) du debugeur (cf MyServerDebug).

Protocole client<->serveur: header "tabName" text header = {line,#event}

Ex.:
MyDebug::SendEvent("mon_programme","mon_evenement(%d,%d)",param1,param2);

Definition at line 43 of file MyDebug.h.

Constructor & Destructor Documentation

MyDebug::MyDebug ( ) [inline]

Definition at line 58 of file MyDebug.h.

References Start().

MyDebug::~MyDebug ( ) [inline]

Definition at line 63 of file MyDebug.h.

Member Function Documentation

BOOL MyDebug::FindServer ( ) [inline, static]

Definition at line 75 of file MyDebug.h.

References BOOL(), and hWndServer.

Referenced by Start().

BOOL MyDebug::Send ( char * message ) [inline, static]

Definition at line 48 of file MyDebug.h.

References BOOL(), and hWndServer.

Referenced by SendEvent(), and SendLine().

BOOL MyDebug::SendEvent | ( | char * | tabName,
 |  | char * | message,
 |  | ... |
 | ) | [inline, static]

Definition at line 81 of file MyDebug.h.

References BOOL(), buffer, and Send().

Referenced by ControlEngine::Proc(), and Picking::Test().

BOOL MyDebug::SendLine | ( | char * | tabName,
 |  | char * | message,
 |  | ... |
 | ) | [inline, static]

Definition at line 94 of file MyDebug.h.

References BOOL(), buffer, and Send().

Referenced by OpenGL_TestError().

void MyDebug::Start ( ) [inline, static]

Definition at line 67 of file MyDebug.h.

References FindServer(), and hWndServer.

Referenced by MyDebug(), and WinMain().

Member Data Documentation

HWND MyDebug::hWndServer = NULL [static]

Definition at line 20 of file MyDebug.cpp.

Referenced by FindServer(), Send(), and Start().

The documentation for this class was generated from the following files:
  • MyDebug.h
  • MyDebug.cpp
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyDebug Member List

This is the complete list of members for MyDebug, including all inherited members.
FindServer() | MyDebug | [inline, static]
hWndServer | MyDebug | [static]
MyDebug() | MyDebug | [inline]
Send(char *message) | MyDebug | [inline, static]
SendEvent(char *tabName, char *message,...) | MyDebug | [inline, static]
SendLine(char *tabName, char *message,...) | MyDebug | [inline, static]
Start() | MyDebug | [inline, static]
~MyDebug() | MyDebug | [inline]
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyException class Reference

MyException Class Reference

#include <MyException.h>

Inheritance diagram for MyException:

MyExceptionMemory List of all members.

Public Member Functions

MyException ()
MyException (char *className, char *methodeName, char *message, char *param=NULL)
void | Init (char *className, char *methodeName, char *message, char *param=NULL)
int | MessageBox ()

Constructor & Destructor Documentation

MyException::MyException ( ) [inline]

Definition at line 19 of file MyException.h.

MyException::MyException | ( | char * | className,
 |  | char * | methodeName,
 |  | char * | message,
 |  | char * | param = NULL
 | ) | [inline]

Definition at line 23 of file MyException.h.

References Init(), and param.

Member Function Documentation

void MyException::Init | ( | char * | className,
 |  | char * | methodeName,
 |  | char * | message,
 |  | char * | param = NULL
 | ) | [inline]

Definition at line 28 of file MyException.h.

References MessageBox(), and param.

Referenced by MyException(), and MyExceptionMemory::MyExceptionMemory().

int MyException::MessageBox ( ) [inline]

Definition at line 37 of file MyException.h.

Referenced by Init().

The documentation for this class was generated from the following file:
  • MyException.h
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyException Member List

This is the complete list of members for MyException, including all inherited members.
Init(char *className, char *methodeName, char *message, char *param=NULL) | MyException | [inline]
MessageBox() | MyException | [inline]
MyException() | MyException | [inline]
MyException(char *className, char *methodeName, char *message, char *param=NULL) | MyException | [inline]
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyExceptionMemory class Reference

MyExceptionMemory Class Reference

#include <MyException.h>

Inheritance diagram for MyExceptionMemory:

MyException List of all members.

Public Member Functions

MyExceptionMemory (char *className, char *methodeName, long size)

Constructor & Destructor Documentation

MyExceptionMemory::MyExceptionMemory | ( | char * | className,
 |  | char * | methodeName,
 |  | long | size
 | ) | [inline]

Definition at line 49 of file MyException.h.

References MyException::Init().

The documentation for this class was generated from the following file:
  • MyException.h
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyExceptionMemory Member List

This is the complete list of members for MyExceptionMemory, including all inherited members.
Init(char *className, char *methodeName, char *message, char *param=NULL) | MyException | [inline]
MessageBox() | MyException | [inline]
MyException() | MyException | [inline]
MyException(char *className, char *methodeName, char *message, char *param=NULL) | MyException | [inline]
MyExceptionMemory(char *className, char *methodeName, long size) | MyExceptionMemory | [inline]
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateMyList< T > class Reference

MyList< T > Class Template Reference

#include <MyList.h>

Inheritance diagram for MyList< T >:

MyStack< T > List of all members.

Public Member Functions

MyList ()
Init de la liste.

~MyList ()
Liberation d'une liste.

void | Zero ()
Place le valeur a 0 (mais n'effectue pas de de-allocation).

int | GetNbElem ()
Donne le nb d'element dans la liste.

MyList< T > & | operator= (MyList< T > &source)
MyList< T > & | operator+= (MyList< T > &source)
BOOL | Save (FILE *fich)
Sauve les donnée valide dans un fichier deja ouvert en ecriture.

BOOL | Load (FILE *fich)
Ajoute les donnée a partir d'un fichier deja ouvert en lecture.

void | SetCompareFunction (int(*fonction)(T *elem1, T *elem2))
Donne la fonction de: { comparaison / new / delete } a appliquer.

Public Attributes

MyListIterator< T > | i
iterator de base

T * | elemNull
element null

MyListItem< T > * | first
debut de liste

MyListItem< T > * | last
fin de liste

int | nbElem

template<class T>
class MyList< T >

Constructor & Destructor Documentation

template<class T>
MyList< T >::MyList ( ) [inline]

Init de la liste.

Definition at line 777 of file MyList.h.

template<class T>
MyList< T >::~MyList ( ) [inline]

Liberation d'une liste.

Definition at line 797 of file MyList.h.

Member Function Documentation

template<class T>
int MyList< T >::GetNbElem ( ) [inline]

Donne le nb d'element dans la liste.

Definition at line 811 of file MyList.h.

Referenced by ControlEngine::GiveFPS().

template<class T>
BOOL MyList< T >::Load ( FILE * fich ) [inline]

Ajoute les donnée a partir d'un fichier deja ouvert en lecture.

Definition at line 848 of file MyList.h.

template<class T>
MyList<T>& MyList< T >::operator+= ( MyList< T > & source ) [inline]

Definition at line 823 of file MyList.h.

template<class T>
MyList<T>& MyList< T >::operator= ( MyList< T > & source ) [inline]

Definition at line 816 of file MyList.h.

template<class T>
BOOL MyList< T >::Save ( FILE * fich ) [inline]

Sauve les donnée valide dans un fichier deja ouvert en ecriture.

Definition at line 830 of file MyList.h.

template<class T>
void MyList< T >::SetCompareFunction ( int(* fonction)(T *elem1, T *elem2) ) [inline]

Donne la fonction de: { comparaison / new / delete } a appliquer.

Todo:
fonctionnalité a implementé

Definition at line 869 of file MyList.h.

template<class T>
void MyList< T >::Zero ( ) [inline]

Place le valeur a 0 (mais n'effectue pas de de-allocation).

Definition at line 803 of file MyList.h.

Referenced by MyList< ParsingWord >::MyList().

Member Data Documentation

template<class T>
T* MyList< T >::elemNull

element null

Definition at line 770 of file MyList.h.

template<class T>
MyListItem<T>* MyList< T >::first

debut de liste

Definition at line 771 of file MyList.h.

template<class T>
MyListIterator<T> MyList< T >::i

iterator de base

Definition at line 769 of file MyList.h.

Referenced by Text3D::ComputeSize(), MyRegistry::GetValueMulti(), MyList< ParsingWord >::Load(), ValueEditors::MakeFontsStruct(), MyList< ParsingWord >::operator+=(), and MyList< ParsingWord >::Save().

template<class T>
MyListItem<T>* MyList< T >::last

fin de liste

Definition at line 772 of file MyList.h.

template<class T>
int MyList< T >::nbElem

Definition at line 773 of file MyList.h.

The documentation for this class was generated from the following file:
  • MyList.h
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyList< T > Member List

This is the complete list of members for MyList< T >, including all inherited members.
elemNull | MyList< T > |
first | MyList< T > |
GetNbElem() | MyList< T > | [inline]
i | MyList< T > |
last | MyList< T > |
Load(FILE *fich) | MyList< T > | [inline]
MyList() | MyList< T > | [inline]
nbElem | MyList< T > |
operator+=(MyList< T > &source) | MyList< T > | [inline]
operator=(MyList< T > &source) | MyList< T > | [inline]
Save(FILE *fich) | MyList< T > | [inline]
SetCompareFunction(int(*fonction)(T *elem1, T *elem2)) | MyList< T > | [inline]
Zero() | MyList< T > | [inline]
~MyList() | MyList< T > | [inline]
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateMyListItem< T > class Reference

MyListItem< T > Class Template Reference

List generique. More...

#include <MyList.h>

List of all members.

Public Member Functions

MyListItem ()
MyListItem (T *_elem, BOOL _selfAlloc, BOOL _selfUnAlloc)
void | ZeroLink ()
MyListItem (T *_elem)
MyListItem (T &_elem)
~MyListItem ()
void | Delete ()
Efface un elem de list et sa valeur associé.

void | New (T *_elem, BOOL _selfAlloc, BOOL _selfUnAlloc)
Cree un element de la liste avec comme valuer l'element lui meme alloue et recopié de l'original.

void | New (T *elem)
void | New (T &elem)

Public Attributes

T * | elem
MyListItem< T > * | after
MyListItem< T > * | before
BOOL | selfUnAlloc

Detailed Description

template<class T>
class MyListItem< T >

List generique.

Ex.:

MyList <int> listInt; //liste de int;

int num;
listInt.AddFirst(12);
listInt.AddFirst(13);
listInt += 14;
listInt.AddAfterCurrent(5);
listInt.AddBeforCurrent(6);
listInt.AddFirst(7);

for (listInt=0;listInt.More();listInt++)
{
        int last = listInt.GetElem();
        sprintf(temp,"%d",last);
}
// ==> 7,12,13,14,6,5
list += elem;                   //==> AddLast
listDest = listSource;  //==> Copy d'une liste dans une autre
listDest += listSource; //==> Ajout d'une liste dans une autre
elem = list[12];                //==> Accede a l'elem 12 (13) vu que ca commance a 0
elem = list[-1];                //==> Accede au dernier elem
list = 0;                               //==> Se place a l'element indexé 0
list ++;                                //==> Se place a l'element suivant;
list --;                                //==> Se place a l'element d'avant;
lisr += 2;                              //==> Se place a 2 element plus loin
lisr -= 2;                              //==> Se place a 2 element avant

Definition at line 81 of file MyList.h.

Constructor & Destructor Documentation

template<class T>
MyListItem< T >::MyListItem ( ) [inline]

Definition at line 88 of file MyList.h.

template<class T>
MyListItem< T >::MyListItem | ( | T * | _elem,
 |  | BOOL | _selfAlloc,
 |  | BOOL | _selfUnAlloc
 | ) | [inline]

Definition at line 95 of file MyList.h.

template<class T>
MyListItem< T >::MyListItem ( T * _elem ) [inline]

Definition at line 106 of file MyList.h.

template<class T>
MyListItem< T >::MyListItem ( T & _elem ) [inline]

Definition at line 107 of file MyList.h.

template<class T>
MyListItem< T >::~MyListItem ( ) [inline]

Definition at line 109 of file MyList.h.

Member Function Documentation

template<class T>
void MyListItem< T >::Delete ( ) [inline]

Efface un elem de list et sa valeur associé.

Definition at line 117 of file MyList.h.

Referenced by MyListItem< ParsingWord >::~MyListItem().

template<class T>
void MyListItem< T >::New ( T & elem ) [inline]

Definition at line 140 of file MyList.h.

template<class T>
void MyListItem< T >::New ( T * elem ) [inline]

Definition at line 139 of file MyList.h.

template<class T>
void MyListItem< T >::New | ( | T * | _elem,
 |  | BOOL | _selfAlloc,
 |  | BOOL | _selfUnAlloc
 | ) | [inline]

Cree un element de la liste avec comme valuer l'element lui meme alloue et recopié de l'original.

Definition at line 125 of file MyList.h.

Referenced by MyListItem< ParsingWord >::MyListItem(), and MyListItem< ParsingWord >::New().

template<class T>
void MyListItem< T >::ZeroLink ( ) [inline]

Definition at line 100 of file MyList.h.

Referenced by MyListItem< ParsingWord >::MyListItem(), and MyListIterator< ParsingWord >::Supr().

Member Data Documentation

template<class T>
MyListItem<T>* MyListItem< T >::after

Definition at line 85 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::AddAfter(), MyListIterator< ParsingWord >::AddBefore(), Primitive::ReOrderForBlending(), MyListIterator< ParsingWord >::Supr(), MyTreeNode< Face >::SuprChilds(), and MyListIterator< ParsingWord >::SuprLast().

template<class T>
MyListItem<T> * MyListItem< T >::before

Definition at line 85 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::AddAfter(), MyListIterator< ParsingWord >::AddBefore(), MyListIterator< ParsingWord >::AddLast(), and MyListIterator< ParsingWord >::Supr().

template<class T>
T* MyListItem< T >::elem

Definition at line 84 of file MyList.h.

Referenced by Primitive::ReOrderForBlending(), and MyTreeNode< Face >::SuprChilds().

template<class T>
BOOL MyListItem< T >::selfUnAlloc

Definition at line 86 of file MyList.h.

The documentation for this class was generated from the following file:
  • MyList.h
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyListItem< T > Member List

This is the complete list of members for MyListItem< T >, including all inherited members.
after | MyListItem< T > |
before | MyListItem< T > |
Delete() | MyListItem< T > | [inline]
elem | MyListItem< T > |
MyListItem() | MyListItem< T > | [inline]
MyListItem(T *_elem, BOOL _selfAlloc, BOOL _selfUnAlloc) | MyListItem< T > | [inline]
MyListItem(T *_elem) | MyListItem< T > | [inline]
MyListItem(T &_elem) | MyListItem< T > | [inline]
New(T *_elem, BOOL _selfAlloc, BOOL _selfUnAlloc) | MyListItem< T > | [inline]
New(T *elem) | MyListItem< T > | [inline]
New(T &elem) | MyListItem< T > | [inline]
selfUnAlloc | MyListItem< T > |
ZeroLink() | MyListItem< T > | [inline]
~MyListItem() | MyListItem< T > | [inline]
Generated on Fri Aug 20 19:21:25 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateMyListIterator< T > class Reference

MyListIterator< T > Class Template Reference

#include <MyList.h>

List of all members.

Public Member Functions

MyListIterator ()
Attention tant que l'iterateur n'est pas rattaché a sa source, auccun appel ne peut fonctionner.

MyListIterator (MyList< T > *_list)
BOOL | Bind (MyList< T > *_list)
void | operator= (MyListIterator &src)
void | Zero ()
Place l'iterateur par defaut sur "rien".

MyListItem< T > * | GetCurrent ()
int | GetIndex ()
Donne l'index de l'element courrent.

BOOL | MoveFirst ()
BOOL | MoveLast ()
MyListItem< T > * | AddBefore (T *elem, BOOL selfAlloc, BOOL selfUnAlloc)
MyListItem< T > * | AddBefore (MyListItem< T > *item)
MyListItem< T > * | AddFirst (T *elem, BOOL selfAlloc, BOOL selfUnAlloc)
MyListItem< T > * | AddFirst (MyListItem< T > *item)
MyListItem< T > * | AddLast (T *elem, BOOL selfAlloc, BOOL selfUnAlloc)
MyListItem< T > * | AddLast (MyListItem< T > *item)
MyListItem< T > * | AddAfter (T *elem, BOOL selfAlloc, BOOL selfUnAlloc)
MyListItem< T > * | AddAfter (MyListItem< T > *item)
MyListItem< T > * | AddFirst (T *elem)
Ajout en debut de liste.

MyListItem< T > * | AddFirst (T &elem)
T * | AddNewFirst ()
MyListItem< T > * | AddLast (T *elem)
Ajout en fin de liste.

MyListItem< T > * | AddLast (T &elem)
T * | AddNewLast ()
MyListItem< T > * | AddBefore (T *elem)
Ajourt avant le current.

MyListItem< T > * | AddBefore (T &elem)
T * | AddNewBefore ()
MyListItem< T > * | AddAfter (T *elem)
jout apres le current

MyListItem< T > * | AddAfter (T &elem)
T * | AddNewAfter ()
BOOL | SuprFirst (BOOL withItem=TRUE)
Supression d'un element dans la liste en tete.

BOOL | SuprLast (BOOL withItem=TRUE)
Supression d'un element dans la liste en fin.

void | SuprAll ()
Supression de toute la list.

BOOL | Supr (MyListItem< T > *item, BOOL withItem=TRUE)
Supression d'un element donnée.

BOOL | Supr (BOOL withItem=TRUE)
Supression d'un element dans la liste courante.

BOOL | SuprIndex (int index, BOOL withItem=TRUE)
Supression a une index donnée.

BOOL | GoTo (MyListItem< T > *item)
Se place a la position d'un element donnée.

BOOL | GoTo (T elem)
Se place a la position d'un element donnée.

BOOL | GoAfter ()
Va apres.

BOOL | GoBefore ()
Va avant.

BOOL | GoFirst ()
Va au debut.

BOOL | GoIndex (ETypeStart start, int nb)
Va depuis curent,first,last,before,after deplace de nb infos.

BOOL | GoLast ()
Va a la fin.

T & | GetElem (int index=-1)
Donne un element de la liste.

T * | GetElemPtr ()
T * | GetElemPtr (int index)
Donne un ptr sur l'element de la liste.

BOOL | More ()
Enumeration terminé ?

BOOL | IsOnLast ()
Est on sur le dernier element ?

BOOL | IsOnFirst ()
Est on sur le dernier element ?

MyListItem< T > * | operator+= (T *elem)
MyListItem< T > * | operator+= (T elem)
BOOL | operator= (int index)
BOOL | operator++ (int)
BOOL | operator-- (int)
T * | operator() (int num=-1)
T & | operator[] (int num)

template<class T>
class MyListIterator< T >

Constructor & Destructor Documentation

template<class T>
MyListIterator< T >::MyListIterator ( ) [inline]

Attention tant que l'iterateur n'est pas rattaché a sa source, auccun appel ne peut fonctionner.

Definition at line 167 of file MyList.h.

template<class T>
MyListIterator< T >::MyListIterator ( MyList< T > * _list ) [inline]

Definition at line 171 of file MyList.h.

Member Function Documentation

template<class T>
MyListItem<T>* MyListIterator< T >::AddAfter ( T & elem ) [inline]

Definition at line 396 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddAfter ( T * elem ) [inline]

jout apres le current

Definition at line 395 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddAfter ( MyListItem< T > * item ) [inline]

Definition at line 335 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddAfter | ( | T * | elem,
 |  | BOOL | selfAlloc,
 |  | BOOL | selfUnAlloc
 | ) | [inline]

Definition at line 329 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::AddAfter(), MyListIterator< ParsingWord >::AddNewAfter(), and MyList< ParsingWord >::Load().

template<class T>
MyListItem<T>* MyListIterator< T >::AddBefore ( T & elem ) [inline]

Definition at line 386 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddBefore ( T * elem ) [inline]

Ajourt avant le current.

Definition at line 385 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddBefore ( MyListItem< T > * item ) [inline]

Definition at line 254 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddBefore | ( | T * | elem,
 |  | BOOL | selfAlloc,
 |  | BOOL | selfUnAlloc
 | ) | [inline]

Definition at line 248 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::AddBefore(), and MyListIterator< ParsingWord >::AddNewBefore().

template<class T>
MyListItem<T>* MyListIterator< T >::AddFirst ( T & elem ) [inline]

Definition at line 366 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddFirst ( T * elem ) [inline]

Ajout en debut de liste.

Definition at line 365 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddFirst ( MyListItem< T > * item ) [inline]

Definition at line 293 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddFirst | ( | T * | elem,
 |  | BOOL | selfAlloc,
 |  | BOOL | selfUnAlloc
 | ) | [inline]

Definition at line 287 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::AddFirst(), MyListIterator< ParsingWord >::AddNewFirst(), and MyListIterator< ParsingWord >::MoveFirst().

template<class T>
MyListItem<T>* MyListIterator< T >::AddLast ( T & elem ) [inline]

Definition at line 376 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddLast ( T * elem ) [inline]

Ajout en fin de liste.

Definition at line 375 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddLast ( MyListItem< T > * item ) [inline]

Definition at line 314 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::AddLast | ( | T * | elem,
 |  | BOOL | selfAlloc,
 |  | BOOL | selfUnAlloc
 | ) | [inline]

Definition at line 308 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::AddLast(), MyListIterator< ParsingWord >::AddNewLast(), MyListIterator< ParsingWord >::MoveLast(), and MyListIterator< ParsingWord >::operator+=().

template<class T>
T* MyListIterator< T >::AddNewAfter ( ) [inline]

Definition at line 397 of file MyList.h.

template<class T>
T* MyListIterator< T >::AddNewBefore ( ) [inline]

Definition at line 387 of file MyList.h.

template<class T>
T* MyListIterator< T >::AddNewFirst ( ) [inline]

Definition at line 367 of file MyList.h.

template<class T>
T* MyListIterator< T >::AddNewLast ( ) [inline]

Definition at line 377 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::Bind ( MyList< T > * _list ) [inline]

Definition at line 176 of file MyList.h.

Referenced by MyTreeNode< Face >::FindOnParent(), and MyListIterator< ParsingWord >::MyListIterator().

template<class T>
MyListItem<T>* MyListIterator< T >::GetCurrent ( ) [inline]

Definition at line 198 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::GoTo(), and MyListIterator< ParsingWord >::Supr().

template<class T>
T& MyListIterator< T >::GetElem ( int index = -1 ) [inline]

Donne un element de la liste.

Ex.:

        MyList<int> lInt;
        lInt+=12;
        lInt+=13;
        int res = (int)lInt;

Definition at line 672 of file MyList.h.

Referenced by TreeView::ConfigFacesPlus(), Control::Find(), MyTreeNode< Face >::FindOnParent(), MyListIterator< ParsingWord >::GoTo(), and MyListIterator< ParsingWord >::operator[]().

template<class T>
T* MyListIterator< T >::GetElemPtr ( int index ) [inline]

Donne un ptr sur l'element de la liste.

Ex.:

        MyList<int> lInt;
        lInt+=12;
        lInt+=13;
        int *ptrRes = (int *)lInt;

Definition at line 696 of file MyList.h.

template<class T>
T* MyListIterator< T >::GetElemPtr ( ) [inline]

Definition at line 679 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::operator()(), and MyList< ParsingWord >::Save().

template<class T>
int MyListIterator< T >::GetIndex ( ) [inline]

Donne l'index de l'element courrent.

Returns:
  • l'index
  • -1 si non possible

Definition at line 210 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::GoAfter ( ) [inline]

Va apres.

Definition at line 558 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::GoIndex(), MyListIterator< ParsingWord >::GoTo(), and MyListIterator< ParsingWord >::operator++().

template<class T>
BOOL MyListIterator< T >::GoBefore ( ) [inline]

Va avant.

Definition at line 574 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::GoIndex(), and MyListIterator< ParsingWord >::operator--().

template<class T>
BOOL MyListIterator< T >::GoFirst ( ) [inline]

Va au debut.

Definition at line 590 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::GoIndex(), MyListIterator< ParsingWord >::GoTo(), and MyListIterator< ParsingWord >::SuprAll().

template<class T>
BOOL MyListIterator< T >::GoIndex | ( | ETypeStart | start,
 |  | int | nb
 | ) | [inline]

Va depuis curent,first,last,before,after deplace de nb infos.

Definition at line 598 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::GetElem(), MyListIterator< ParsingWord >::GetElemPtr(), MyListIterator< ParsingWord >::operator=(), MyListIterator< ParsingWord >::operator[](), and MyListIterator< ParsingWord >::SuprIndex().

template<class T>
BOOL MyListIterator< T >::GoLast ( ) [inline]

Va a la fin.

Definition at line 649 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::GoIndex().

template<class T>
BOOL MyListIterator< T >::GoTo ( T elem ) [inline]

Se place a la position d'un element donnée.

Definition at line 548 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::GoTo ( MyListItem< T > * item ) [inline]

Se place a la position d'un element donnée.

Definition at line 537 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::IsOnFirst ( ) [inline]

Est on sur le dernier element ?

Definition at line 716 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::IsOnLast ( ) [inline]

Est on sur le dernier element ?

Definition at line 710 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::More ( ) [inline]

Enumeration terminé ?

Definition at line 704 of file MyList.h.

Referenced by TreeView::ConfigFacesPlus(), Control::Find(), MyTreeNode< Face >::FindOnParent(), MyListIterator< ParsingWord >::GoIndex(), MyListIterator< ParsingWord >::GoTo(), MyList< ParsingWord >::Save(), MyListIterator< ParsingWord >::Supr(), and MyListIterator< ParsingWord >::SuprAll().

template<class T>
BOOL MyListIterator< T >::MoveFirst ( ) [inline]

Definition at line 217 of file MyList.h.

Referenced by MyTreeNode< Face >::MoveToFirstChild().

template<class T>
BOOL MyListIterator< T >::MoveLast ( ) [inline]

Definition at line 224 of file MyList.h.

template<class T>
T* MyListIterator< T >::operator() ( int num = -1 ) [inline]

Definition at line 747 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::operator++ ( int ) [inline]

Definition at line 737 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::operator+= ( T elem ) [inline]

Definition at line 726 of file MyList.h.

template<class T>
MyListItem<T>* MyListIterator< T >::operator+= ( T * elem ) [inline]

Definition at line 721 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::operator-- ( int ) [inline]

Definition at line 742 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::operator= ( int index ) [inline]

Definition at line 731 of file MyList.h.

template<class T>
void MyListIterator< T >::operator= ( MyListIterator< T > & src ) [inline]

Definition at line 184 of file MyList.h.

template<class T>
T& MyListIterator< T >::operator[] ( int num ) [inline]

Definition at line 752 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::Supr ( BOOL withItem = TRUE ) [inline]

Supression d'un element dans la liste courante.

Definition at line 485 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::Supr | ( | MyListItem< T > * | item,
 |  | BOOL | withItem = TRUE
 | ) | [inline]

Supression d'un element donnée.

Definition at line 472 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::MoveFirst(), MyListIterator< ParsingWord >::MoveLast(), MyListIterator< ParsingWord >::Supr(), and MyListIterator< ParsingWord >::SuprIndex().

template<class T>
void MyListIterator< T >::SuprAll ( ) [inline]

Supression de toute la list.

Definition at line 463 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::SuprFirst ( BOOL withItem = TRUE ) [inline]

Supression d'un element dans la liste en tete.

Definition at line 407 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::SuprIndex | ( | int | index,
 |  | BOOL | withItem = TRUE
 | ) | [inline]

Supression a une index donnée.

Definition at line 528 of file MyList.h.

template<class T>
BOOL MyListIterator< T >::SuprLast ( BOOL withItem = TRUE ) [inline]

Supression d'un element dans la liste en fin.

Definition at line 434 of file MyList.h.

template<class T>
void MyListIterator< T >::Zero ( ) [inline]

Place l'iterateur par defaut sur "rien".

Definition at line 192 of file MyList.h.

Referenced by MyListIterator< ParsingWord >::Bind(), MyListIterator< ParsingWord >::Supr(), MyListIterator< ParsingWord >::SuprAll(), MyListIterator< ParsingWord >::SuprFirst(), and MyListIterator< ParsingWord >::SuprLast().

The documentation for this class was generated from the following file:
  • MyList.h
Generated on Fri Aug 20 19:21:26 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyListIterator< T > Member List

This is the complete list of members for MyListIterator< T >, including all inherited members.
AddAfter(T *elem, BOOL selfAlloc, BOOL selfUnAlloc) | MyListIterator< T > | [inline]
AddAfter(MyListItem< T > *item) | MyListIterator< T > | [inline]
AddAfter(T *elem) | MyListIterator< T > | [inline]
AddAfter(T &elem) | MyListIterator< T > | [inline]
AddBefore(T *elem, BOOL selfAlloc, BOOL selfUnAlloc) | MyListIterator< T > | [inline]
AddBefore(MyListItem< T > *item) | MyListIterator< T > | [inline]
AddBefore(T *elem) | MyListIterator< T > | [inline]
AddBefore(T &elem) | MyListIterator< T > | [inline]
AddFirst(T *elem, BOOL selfAlloc, BOOL selfUnAlloc) | MyListIterator< T > | [inline]
AddFirst(MyListItem< T > *item) | MyListIterator< T > | [inline]
AddFirst(T *elem) | MyListIterator< T > | [inline]
AddFirst(T &elem) | MyListIterator< T > | [inline]
AddLast(T *elem, BOOL selfAlloc, BOOL selfUnAlloc) | MyListIterator< T > | [inline]
AddLast(MyListItem< T > *item) | MyListIterator< T > | [inline]
AddLast(T *elem) | MyListIterator< T > | [inline]
AddLast(T &elem) | MyListIterator< T > | [inline]
AddNewAfter() | MyListIterator< T > | [inline]
AddNewBefore() | MyListIterator< T > | [inline]
AddNewFirst() | MyListIterator< T > | [inline]
AddNewLast() | MyListIterator< T > | [inline]
Bind(MyList< T > *_list) | MyListIterator< T > | [inline]
GetCurrent() | MyListIterator< T > | [inline]
GetElem(int index=-1) | MyListIterator< T > | [inline]
GetElemPtr() | MyListIterator< T > | [inline]
GetElemPtr(int index) | MyListIterator< T > | [inline]
GetIndex() | MyListIterator< T > | [inline]
GoAfter() | MyListIterator< T > | [inline]
GoBefore() | MyListIterator< T > | [inline]
GoFirst() | MyListIterator< T > | [inline]
GoIndex(ETypeStart start, int nb) | MyListIterator< T > | [inline]
GoLast() | MyListIterator< T > | [inline]
GoTo(MyListItem< T > *item) | MyListIterator< T > | [inline]
GoTo(T elem) | MyListIterator< T > | [inline]
IsOnFirst() | MyListIterator< T > | [inline]
IsOnLast() | MyListIterator< T > | [inline]
More() | MyListIterator< T > | [inline]
MoveFirst() | MyListIterator< T > | [inline]
MoveLast() | MyListIterator< T > | [inline]
MyListIterator() | MyListIterator< T > | [inline]
MyListIterator(MyList< T > *_list) | MyListIterator< T > | [inline]
operator()(int num=-1) | MyListIterator< T > | [inline]
operator++(int) | MyListIterator< T > | [inline]
operator+=(T *elem) | MyListIterator< T > | [inline]
operator+=(T elem) | MyListIterator< T > | [inline]
operator--(int) | MyListIterator< T > | [inline]
operator=(MyListIterator &src) | MyListIterator< T > | [inline]
operator=(int index) | MyListIterator< T > | [inline]
operator[](int num) | MyListIterator< T > | [inline]
Supr(MyListItem< T > *item, BOOL withItem=TRUE) | MyListIterator< T > | [inline]
Supr(BOOL withItem=TRUE) | MyListIterator< T > | [inline]
SuprAll() | MyListIterator< T > | [inline]
SuprFirst(BOOL withItem=TRUE) | MyListIterator< T > | [inline]
SuprIndex(int index, BOOL withItem=TRUE) | MyListIterator< T > | [inline]
SuprLast(BOOL withItem=TRUE) | MyListIterator< T > | [inline]
Zero() | MyListIterator< T > | [inline]
Generated on Fri Aug 20 19:21:26 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyRegistry class Reference

MyRegistry Class Reference

Lecture / Ecriture / Enumeration de clef et de valeur de registre. More...

#include <MyRegistry.H>

List of all members.

Public Member Functions

MyRegistry (BOOL autoCreate=FALSE)
Contructeur avec l'autocreate.

BOOL | operator= (char *nameKey)
BOOL | Open (char *nameKey)
Affect un nom de clef.

void | GetKeyName (MyString &result)
BOOL | Create (char *nameKey)
Creation d'une clef.

void | SetAutoCreate (BOOL autoCreate)
Active ou pas le mode de creation de clef si non existant quand on utilise.

BOOL | IsAutoCreate ()
int | GetValueType (char *param)
int | GetValueSize (char *param)
Place la valeur value dans le parametre param de la base de registre selectionner par nameKey.

BOOL | GetValue (char *param, char *result, char *defValue=NULL)
BOOL | GetValue (char *param, MyString &result, char *defValue=NULL)
BOOL | GetValueMulti (char *param, MyList< MyString > &result, char *defValue=NULL)
BOOL | GetValueExpand (char *param, char *result, char *defValue=NULL)
BOOL | GetValueExpand (char *param, MyString &result, char *defValue=NULL)
BOOL | GetValue (char *param, int *result, int defValue=0)
BOOL | GetValue (char *param, DWORD *result, DWORD defValue=0)
BOOL | GetValue (char *param, LONGLONG *result, LONGLONG defValue=0)
LPBYTE | GetValue (char *param)
BOOL | GetValue (char *param, float *result, float defValue=0)
BOOL | GetValue (char *param, double *result, double defValue=0)
BOOL | SetValue (char *param)
BOOL | SetValue (char *param, int value)
BOOL | SetValue (char *param, DWORD value)
BOOL | SetValueLittleEndian (char *param, DWORD value)
BOOL | SetValueBigEndian (char *param, DWORD value)
BOOL | SetValue (char *param, LONGLONG value)
BOOL | SetValueLittleEndian (char *param, LONGLONG value)
BOOL | SetValue (char *param, char *value)
BOOL | SetValueExpand (char *param, char *value)
BOOL | SetValueMulti (char *param, MyList< MyString > &lString)
BOOL | SetValueMulti (char *param, char *value)
BOOL | SetValue (char *param, LPBYTE data, int size)
BOOL | SetValue (char *param, float result)
BOOL | SetValue (char *param, double result)
BOOL | DeleteValue (char *param)
Efface une valeur.

BOOL | DeleteKey (char *nameKey=NULL)
Efface une clef.

BOOL | TestValue (char *param)
BOOL | TestKey ()
Teste si un valeur existe.

int | GetLastError ()
void | BeginEnumKey ()
BOOL | NextEnumKey (char *result)
BOOL | NextEnumKey (MyString &result)
void | BeginEnumValue ()
BOOL | NextEnumValue (char *result)
BOOL | NextEnumValue (MyString &result)

Detailed Description

Lecture / Ecriture / Enumeration de clef et de valeur de registre.

Example:

MyRegistry reg(TRUE); // autoCreate= Yes
MyString str1;
char str2[4096];
MyList<MyString> lStr;
int integer;
LONGLONG linteger;
BOOL r;
r=reg="HKCU\\test";
r=reg.SetValue("boolean");
r=reg.SetValue("string1","hello word!");
r=reg.SetValueExpand("path","%windir%\\myFolder");
r=reg.SetValueMulti("listFriend","dudu\0grib\0cecile\0");
r=reg.SetValue("integer",-12);
r=reg.SetValueLittleEndian("integer le",(DWORD)-12);
r=reg.SetValueBigEndian("integer be",-12);
r=reg.SetValue("linteger",(LONGLONG) -12);
r=reg.SetValueLittleEndian("linteger le",(LONGLONG) -12);
r=reg.SetValue("binary",(LPBYTE)"01234567890123456789",20);

r= (BOOL)reg.GetValue("boolean"); // res = 1;
r=reg.GetValue("string1",str1); // "hello word !"
r=reg.GetValue("path",str1);    // "%windir%\myFolder"
r=reg.GetValueExpand("path",str1);  // "c:\windows\myFolder"
r=reg.GetValue("listFriend",str1);  // "dudu grib cecile"

r=reg.GetValue("string1",str2); // "hello word !"
r=reg.GetValue("path",str2);    // "%windir%\myFolder"
r=reg.GetValueExpand("path",str2);  // "c:\windows\myFolder"
r=reg.GetValue("listFriend",str2);  // "dudu grib cecile"

r=reg.GetValueMulti("listFriend",lStr);  // {"dudu","grib","cecile"};
r=reg.SetValueMulti("copy listFriend",lStr);
r=reg.GetValue("integer",&integer); // -12
r=reg.GetValue("integer le",&integer); // -12
r=reg.GetValue("integer be",&integer); // -12
r=reg.GetValue("linteger",&linteger); // -12
r=reg.GetValue("linteger le",&linteger); // -12
LPVOID bin =reg.GetValue("binary");
delete bin;

Definition at line 77 of file MyRegistry.H.

Constructor & Destructor Documentation

MyRegistry::MyRegistry ( BOOL autoCreate = FALSE )

Contructeur avec l'autocreate.

Cf.: SetAutoCreate

Definition at line 108 of file MyRegistry.CPP.

Member Function Documentation

void MyRegistry::BeginEnumKey ( ) [inline]

Definition at line 137 of file MyRegistry.H.

void MyRegistry::BeginEnumValue ( ) [inline]

Definition at line 141 of file MyRegistry.H.

BOOL MyRegistry::Create ( char * nameKey )

Creation d'une clef.

Ex.:

key.Create("HKCU\\test1\\test2");
key.Create("\\test3"); // HKCU\test1\test2\test3

Definition at line 245 of file MyRegistry.CPP.

References BOOL().

Referenced by Open().

BOOL MyRegistry::DeleteKey ( char * nameKey = NULL )

Efface une clef.

Definition at line 263 of file MyRegistry.CPP.

References BOOL(), MyString::GetValue(), and TestKey().

Referenced by ControlEngine::ControlEngine().

BOOL MyRegistry::DeleteValue ( char * param )

Efface une valeur.

Definition at line 277 of file MyRegistry.CPP.

References BOOL(), and param.

void MyRegistry::GetKeyName ( MyString & result )

Definition at line 195 of file MyRegistry.CPP.

int MyRegistry::GetLastError ( ) [inline]

Definition at line 135 of file MyRegistry.H.

BOOL MyRegistry::GetValue | ( | char * | param,
 |  | double * | result,
 |  | double | defValue = 0
 | ) |

Definition at line 524 of file MyRegistry.CPP.

References BOOL(), GetValue(), param, res, and MyString::ToDouble().

BOOL MyRegistry::GetValue | ( | char * | param,
 |  | float * | result,
 |  | float | defValue = 0
 | ) |

Definition at line 515 of file MyRegistry.CPP.

References BOOL(), GetValue(), param, res, and MyString::ToFloat().

LPBYTE MyRegistry::GetValue ( char * param )

BOOL MyRegistry::GetValue | ( | char * | param,
 |  | LONGLONG * | result,
 |  | LONGLONG | defValue = 0
 | ) |

Definition at line 500 of file MyRegistry.CPP.

References BOOL(), GetValue(), GetValueType(), param, res, and uType.

BOOL MyRegistry::GetValue | ( | char * | param,
 |  | DWORD * | result,
 |  | DWORD | defValue = 0
 | ) |

Definition at line 481 of file MyRegistry.CPP.

References BOOL(), GetValue(), GetValueType(), param, res, and uType.

BOOL MyRegistry::GetValue | ( | char * | param,
 |  | int * | result,
 |  | int | defValue = 0
 | ) |

Definition at line 476 of file MyRegistry.CPP.

References BOOL(), GetValue(), and param.

BOOL MyRegistry::GetValue | ( | char * | param,
 |  | MyString & | result,
 |  | char * | defValue = NULL
 | ) |

Definition at line 383 of file MyRegistry.CPP.

References BOOL(), MyString::Delete(), GetValue(), GetValueSize(), GetValueType(), param, res, and uType.

BOOL MyRegistry::GetValue | ( | char * | param,
 |  | char * | result,
 |  | char * | defValue = NULL
 | ) |

Definition at line 369 of file MyRegistry.CPP.

References BOOL(), MyString::GetSize(), MyString::GetValue(), and param.

Referenced by ControlEngine::ControlEngine(), GetValue(), GetValueExpand(), and GetValueMulti().

BOOL MyRegistry::GetValueExpand | ( | char * | param,
 |  | MyString & | result,
 |  | char * | defValue = NULL
 | ) |

Definition at line 458 of file MyRegistry.CPP.

References BOOL(), GetValue(), param, and res.

BOOL MyRegistry::GetValueExpand | ( | char * | param,
 |  | char * | result,
 |  | char * | defValue = NULL
 | ) |

Definition at line 450 of file MyRegistry.CPP.

References BOOL(), and param.

BOOL MyRegistry::GetValueMulti | ( | char * | param,
 |  | MyList< MyString > & | result,
 |  | char * | defValue = NULL
 | ) |

Definition at line 418 of file MyRegistry.CPP.

References BOOL(), GetValue(), GetValueSize(), MyList< T >::i, param, and res.

int MyRegistry::GetValueSize ( char * param )

Place la valeur value dans le parametre param de la base de registre selectionner par nameKey.

Definition at line 320 of file MyRegistry.CPP.

References dwSize, and param.

Referenced by GetValue(), and GetValueMulti().

int MyRegistry::GetValueType ( char * param )

Definition at line 333 of file MyRegistry.CPP.

References param, and uType.

Referenced by GetValue().

BOOL MyRegistry::IsAutoCreate ( )

Definition at line 37 of file MyRegistry.CPP.

References BOOL().

BOOL MyRegistry::NextEnumKey ( MyString & result )

BOOL MyRegistry::NextEnumKey ( char * result )

BOOL MyRegistry::NextEnumValue ( MyString & result )

BOOL MyRegistry::NextEnumValue ( char * result )

BOOL MyRegistry::Open ( char * nameKey )

Affect un nom de clef.

Accept le chemin relatif

ex.:
CMyRegistrie reg;
reg="HKCU\\Sofware\\test";
reg="..";                        // HKCU\Software
reg="..\\Console";       // HKCU\Console

Definition at line 126 of file MyRegistry.CPP.

References BOOL(), and Create().

Referenced by operator=().

BOOL MyRegistry::operator= ( char * nameKey ) [inline]

Definition at line 81 of file MyRegistry.H.

References BOOL(), and Open().

void MyRegistry::SetAutoCreate ( BOOL autoCreate )

Active ou pas le mode de creation de clef si non existant quand on utilise.

Read()

  • ou - operateur=(char *) (affectation d'un string)

Definition at line 32 of file MyRegistry.CPP.

BOOL MyRegistry::SetValue | ( | char * | param,
 |  | double | result
 | ) |

BOOL MyRegistry::SetValue | ( | char * | param,
 |  | float | result
 | ) |

BOOL MyRegistry::SetValue | ( | char * | param,
 |  | LPBYTE | data,
 |  | int | size
 | ) |

BOOL MyRegistry::SetValue | ( | char * | param,
 |  | char * | value
 | ) |

BOOL MyRegistry::SetValue | ( | char * | param,
 |  | LONGLONG | value
 | ) |

BOOL MyRegistry::SetValue | ( | char * | param,
 |  | DWORD | value
 | ) |

BOOL MyRegistry::SetValue | ( | char * | param,
 |  | int | value
 | ) |

BOOL MyRegistry::SetValue ( char * param )

Referenced by ControlEngine::~ControlEngine().

BOOL MyRegistry::SetValueBigEndian | ( | char * | param,
 |  | DWORD | value
 | ) |

BOOL MyRegistry::SetValueExpand | ( | char * | param,
 |  | char * | value
 | ) |

BOOL MyRegistry::SetValueLittleEndian | ( | char * | param,
 |  | LONGLONG | value
 | ) |

BOOL MyRegistry::SetValueLittleEndian | ( | char * | param,
 |  | DWORD | value
 | ) |

BOOL MyRegistry::SetValueMulti | ( | char * | param,
 |  | char * | value
 | ) |

BOOL MyRegistry::SetValueMulti | ( | char * | param,
 |  | MyList< MyString > & | lString
 | ) |

BOOL MyRegistry::TestKey ( )

Teste si un valeur existe.

Definition at line 290 of file MyRegistry.CPP.

References BOOL().

Referenced by ControlEngine::ControlEngine(), and DeleteKey().

BOOL MyRegistry::TestValue ( char * param )

Definition at line 304 of file MyRegistry.CPP.

References BOOL(), dwSize, param, and uType.

The documentation for this class was generated from the following files:
  • MyRegistry.H
  • MyRegistry.CPP
Generated on Fri Aug 20 19:21:27 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyRegistry Member List

This is the complete list of members for MyRegistry, including all inherited members.
BeginEnumKey() | MyRegistry | [inline]
BeginEnumValue() | MyRegistry | [inline]
Create(char *nameKey) | MyRegistry |
DeleteKey(char *nameKey=NULL) | MyRegistry |
DeleteValue(char *param) | MyRegistry |
GetKeyName(MyString &result) | MyRegistry |
GetLastError() | MyRegistry | [inline]
GetValue(char *param, char *result, char *defValue=NULL) | MyRegistry |
GetValue(char *param, MyString &result, char *defValue=NULL) | MyRegistry |
GetValue(char *param, int *result, int defValue=0) | MyRegistry |
GetValue(char *param, DWORD *result, DWORD defValue=0) | MyRegistry |
GetValue(char *param, LONGLONG *result, LONGLONG defValue=0) | MyRegistry |
GetValue(char *param) | MyRegistry |
GetValue(char *param, float *result, float defValue=0) | MyRegistry |
GetValue(char *param, double *result, double defValue=0) | MyRegistry |
GetValueExpand(char *param, char *result, char *defValue=NULL) | MyRegistry |
GetValueExpand(char *param, MyString &result, char *defValue=NULL) | MyRegistry |
GetValueMulti(char *param, MyList< MyString > &result, char *defValue=NULL) | MyRegistry |
GetValueSize(char *param) | MyRegistry |
GetValueType(char *param) | MyRegistry |
IsAutoCreate() | MyRegistry |
MyRegistry(BOOL autoCreate=FALSE) | MyRegistry |
NextEnumKey(char *result) | MyRegistry |
NextEnumKey(MyString &result) | MyRegistry |
NextEnumValue(char *result) | MyRegistry |
NextEnumValue(MyString &result) | MyRegistry |
Open(char *nameKey) | MyRegistry |
operator=(char *nameKey) | MyRegistry | [inline]
SetAutoCreate(BOOL autoCreate) | MyRegistry |
SetValue(char *param) | MyRegistry |
SetValue(char *param, int value) | MyRegistry |
SetValue(char *param, DWORD value) | MyRegistry |
SetValue(char *param, LONGLONG value) | MyRegistry |
SetValue(char *param, char *value) | MyRegistry |
SetValue(char *param, LPBYTE data, int size) | MyRegistry |
SetValue(char *param, float result) | MyRegistry |
SetValue(char *param, double result) | MyRegistry |
SetValueBigEndian(char *param, DWORD value) | MyRegistry |
SetValueExpand(char *param, char *value) | MyRegistry |
SetValueLittleEndian(char *param, DWORD value) | MyRegistry |
SetValueLittleEndian(char *param, LONGLONG value) | MyRegistry |
SetValueMulti(char *param, MyList< MyString > &lString) | MyRegistry |
SetValueMulti(char *param, char *value) | MyRegistry |
TestKey() | MyRegistry |
TestValue(char *param) | MyRegistry |
Generated on Fri Aug 20 19:21:27 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateMyStack< T > class Reference

MyStack< T > Class Template Reference

Stack generique, les Push & Pop peuvent ce faire en test ou en queut ==> File. More...

#include <MyList.h>

Inheritance diagram for MyStack< T >:

MyList< T > List of all members.

Public Member Functions

MyStack ()
BOOL | Push (T elem)
T | Pop ()
T | Peek ()
BOOL | FrontPush (T elem)
T | FrontPop ()
T | FrontPeek ()

Detailed Description

template<class T>
class MyStack< T >

Stack generique, les Push & Pop peuvent ce faire en test ou en queut ==> File.

Definition at line 907 of file MyList.h.

Constructor & Destructor Documentation

template<class T>
MyStack< T >::MyStack ( ) [inline]

Definition at line 910 of file MyList.h.

Member Function Documentation

template<class T>
T MyStack< T >::FrontPeek ( ) [inline]

Definition at line 950 of file MyList.h.

template<class T>
T MyStack< T >::FrontPop ( ) [inline]

Definition at line 939 of file MyList.h.

Referenced by ControlEngine::GiveFPS().

template<class T>
BOOL MyStack< T >::FrontPush ( T elem ) [inline]

Definition at line 934 of file MyList.h.

template<class T>
T MyStack< T >::Peek ( ) [inline]

Definition at line 928 of file MyList.h.

template<class T>
T MyStack< T >::Pop ( ) [inline]

Definition at line 917 of file MyList.h.

template<class T>
BOOL MyStack< T >::Push ( T elem ) [inline]

Definition at line 912 of file MyList.h.

Referenced by ControlEngine::GiveFPS().

The documentation for this class was generated from the following file:
  • MyList.h
Generated on Fri Aug 20 19:21:27 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyStack< T > Member List

This is the complete list of members for MyStack< T >, including all inherited members.
elemNull | MyList< T > |
first | MyList< T > |
FrontPeek() | MyStack< T > | [inline]
FrontPop() | MyStack< T > | [inline]
FrontPush(T elem) | MyStack< T > | [inline]
GetNbElem() | MyList< T > | [inline]
i | MyList< T > |
last | MyList< T > |
Load(FILE *fich) | MyList< T > | [inline]
MyList() | MyList< T > | [inline]
MyStack() | MyStack< T > | [inline]
nbElem | MyList< T > |
operator+=(MyList< T > &source) | MyList< T > | [inline]
operator=(MyList< T > &source) | MyList< T > | [inline]
Peek() | MyStack< T > | [inline]
Pop() | MyStack< T > | [inline]
Push(T elem) | MyStack< T > | [inline]
Save(FILE *fich) | MyList< T > | [inline]
SetCompareFunction(int(*fonction)(T *elem1, T *elem2)) | MyList< T > | [inline]
Zero() | MyList< T > | [inline]
~MyList() | MyList< T > | [inline]
Generated on Fri Aug 20 19:21:27 2004 for 3d Controls by doxygen 1.3.6


3d Controls: MyString class Reference

MyString Class Reference

Gestion de chaine de caractere dynamique. More...

#include <MyString.h>

List of all members.

Public Member Functions

MyString ()
virtual | ~MyString ()
BOOL | IsEmpty ()
MyString (char letter)
MyString (int integer)
MyString (long linteger)
MyString (float floating)
MyString (double lfloating)
MyString (char *string)
MyString (MyString &string)
void | Zero ()
void | operator+= (char letter)
void | operator+= (int integer)
void | operator+= (long linteger)
void | operator+= (float floating)
void | operator+= (double lfloating)
void | operator+= (char *string)
void | operator+= (MyString &string)
MyString & | operator= (char letter)
MyString & | operator= (int integer)
MyString & | operator= (long linteger)
MyString & | operator= (float floating)
MyString & | operator= (double lfloating)
MyString & | operator= (char *string)
MyString & operator= (MyString &string)
BOOL | operator== (char letter)
BOOL | operator== (int integer)
BOOL | operator== (long linteger)
BOOL | operator== (float floating)
BOOL | operator== (double lfloating)
BOOL | operator== (char *string)
BOOL | operator== (MyString &string)
BOOL | operator!= (char letter)
BOOL | operator!= (int integer)
BOOL | operator!= (long linteger)
BOOL | operator!= (float floating)
BOOL | operator!= (double lfloating)
BOOL | operator!= (char *string)
BOOL | operator!= (MyString &string)
BOOL | AddFormat (char *format,...)
Formate le text avec les parametre du printf().

BOOL | Format (char *format,...)
long | ToInteger ()
float | ToFloat ()
double | ToDouble ()
char & | operator[] (int num)
Access a un element du text.

operator char * () const
void | SplitPath (MyString *drive, MyString *dir, MyString *file, MyString *ext, MyString *driveDir, MyString *fileExt)
BOOL | SubStringBeforToken (int numSubString, MyString &result, char *lstToken)
Decomposition d'une chaine par un modele.

char * | GetValue (int index)
BOOL | CopyTo (MyString &result, int index, int size)
Recopy d'une chaine.

BOOL | FormatToNoCtrl ()
BOOL | FormatToLower ()
BOOL | FormatToUpper ()
void | AddRepetitiveFormat (char *matrise, int nbCopy)
BOOL | IsVisibleText ()
int | GetPositionFromLeft (int pos)
Transforme les positions.

int | GetPositionFromRight (int pos)
BOOL | Delete (int pos, BOOL after, char letterToFind)
Efface a partir de la position, avant ou apres d'un certain nombre de caracter ou delimité par un lettre a rechercher ex.:
MyString str="0123456";
str.Delete(-1,FALSE,1); // 012345
str.Delete(1,TRUE,2);   // 0345
str.Delete(1,TRUE,'4'); // 05
.

BOOL | Delete (int pos, BOOL after, int nbLetter)
BOOL | Add (int pos, BOOL after, char letter)
Ajoute un element a une position donnée.

BOOL | Add (int pos, BOOL after, int integer)
BOOL | Add (int pos, BOOL after, long linteger)
BOOL | Add (int pos, BOOL after, float floating)
BOOL | Add (int pos, BOOL after, double lfloating)
BOOL | Add (int pos, BOOL after, char *string)
BOOL | Add (int pos, BOOL after, MyString &string)
int | FindLetter (int pos, BOOL after, char letter)
Donne la position d'un lettre a partir de la pos de base dansla direction after avec comme model la letter.

int | FindLetter (char letter)
Donne la position d'un lettre a partir de la gauche.

MyString | Mids (int beginPos, int sizeToCopy)
Recopie la chaine a partir d'une postion et d'une taille donnée.

BOOL | IsBeginWith (char *model)
Test si le "model" est bien le debut du text.

char * | TestSubString (char *text, BOOL caseSensitive=TRUE)
Test si le text est contenu dans la chaine en cours caseSensitive: distingue les majuscule et minuscule.

void | EnterHexaNumber (int value)
Entre un nombre en hexadecimal.

void | EnterBinNumber (int value)
Entre un nombre en binaire.

void | Reverse ()
Met a l'envert une chaine "abcde" ==> "edcba".

long | GetSize ()
char * | GetValue ()

Friends

MyString | operator+ (MyString &string, char letter)
MyString | operator+ (char letter, MyString &string)
MyString | operator+ (MyString &string, int integer)
MyString | operator+ (int integer, MyString &string)
MyString | operator+ (MyString &string, long linteger)
MyString | operator+ (long linteger, MyString &string)
MyString | operator+ (MyString &string, float floating)
MyString | operator+ (float floating, MyString &string)
MyString | operator+ (MyString &string, double lfloating)
MyString | operator+ (double lfloating, MyString &string)
MyString | operator+ (MyString &string1, char *string2)
MyString | operator+ (char *string1, MyString &string2)
MyString | operator+ (MyString &string1, MyString &string2)
MyString & | operator<< (MyString &string, char letter)
MyString & | operator<< (MyString &string, int integer)
MyString & | operator<< (MyString &string, long linteger)
MyString & | operator<< (MyString &string, float floating)
MyString & | operator<< (MyString &string, double lfloating)
MyString & | operator<< (MyString &string1, char *string2)
MyString & | operator<< (MyString &string1, MyString &string2)
MyString & | operator<< (MyString &in,FncManipulateur fnc)
Lance un manipulateurs.

Detailed Description

Gestion de chaine de caractere dynamique.

Ex.:

MyString temp,a,b,c;
a = "coucou";
b = "toi";
c = a;
temp = a + "lui";
c = "hello " + b;
temp = a + b;

Definition at line 46 of file MyString.h.

Constructor & Destructor Documentation

MyString::MyString ( )

Definition at line 40 of file MyString.cpp.

References Zero().

virtual MyString::~MyString ( ) [inline, virtual]

Definition at line 55 of file MyString.h.

References Delete().

MyString::MyString ( char letter )

Definition at line 46 of file MyString.cpp.

MyString::MyString ( int integer )

Definition at line 52 of file MyString.cpp.

MyString::MyString ( long linteger )

Definition at line 58 of file MyString.cpp.

MyString::MyString ( float floating )

Definition at line 64 of file MyString.cpp.

MyString::MyString ( double lfloating )

Definition at line 70 of file MyString.cpp.

MyString::MyString ( char * string )

Definition at line 76 of file MyString.cpp.

References string.

MyString::MyString ( MyString & string )

Definition at line 82 of file MyString.cpp.

References string.

Member Function Documentation

BOOL MyString::Add | ( | int | pos,
 |  | BOOL | after,
 |  | MyString & | string
 | ) |

Definition at line 739 of file MyString.cpp.

References BOOL(), and string.

BOOL MyString::Add | ( | int | pos,
 |  | BOOL | after,
 |  | char * | string
 | ) |

Definition at line 735 of file MyString.cpp.

References BOOL(), and string.

BOOL MyString::Add | ( | int | pos,
 |  | BOOL | after,
 |  | double | lfloating
 | ) |

Definition at line 731 of file MyString.cpp.

References BOOL().

BOOL MyString::Add | ( | int | pos,
 |  | BOOL | after,
 |  | float | floating
 | ) |

Definition at line 727 of file MyString.cpp.

References BOOL().

BOOL MyString::Add | ( | int | pos,
 |  | BOOL | after,
 |  | long | linteger
 | ) |

Definition at line 723 of file MyString.cpp.

References BOOL().

BOOL MyString::Add | ( | int | pos,
 |  | BOOL | after,
 |  | int | integer
 | ) |

Definition at line 719 of file MyString.cpp.

References BOOL().

BOOL MyString::Add | ( | int | pos,
 |  | BOOL | after,
 |  | char | letter
 | ) |

Ajoute un element a une position donnée.

Ex.:

MyString str="012";
str.Add(1,TRUE,'a'); // 01a2
str.Add(1,FALSE,-12.2); // 01-12.2a2
str.Add(-1,TRUE,"coucou"); // 01-12coucou

Definition at line 708 of file MyString.cpp.

References BOOL(), CopyTo(), GetPositionFromLeft(), and operator=().

BOOL MyString::AddFormat | ( | char * | format,
 |  | ... |
 | ) |

Formate le text avec les parametre du printf().

Definition at line 784 of file MyString.cpp.

References BOOL(), buffer, format, len, and operator+=().

Referenced by OpenGL_TestError(), Picking::Test(), Window::ToString(), Univers::ToString(), TrackButton::ToString(), Title::ToString(), Tip::ToString(), TextBox::ToString(), Slider::ToString(), MasterContainer::ToString(), StateKey::ToString(), StateMouse::ToString(), Control::ToString(), Container::ToString(), and Button::ToString().

void MyString::AddRepetitiveFormat | ( | char * | matrise,
 |  | int | nbCopy
 | ) |

Definition at line 637 of file MyString.cpp.

References operator+=().

BOOL MyString::CopyTo | ( | MyString & | result,
 |  | int | index,
 |  | int | sizeToCopy
 | ) |

Recopy d'une chaine.

Todo:
a verifier le calcul me parais suspect

Definition at line 526 of file MyString.cpp.

References BOOL(), GetValue(), index, operator[](), and Resize().

Referenced by Add(), and SubStringBeforToken().

BOOL MyString::Delete | ( | int | pos,
 |  | BOOL | after,
 |  | int | nbLetter
 | ) |

Definition at line 689 of file MyString.cpp.

References BOOL(), and GetPositionFromLeft().

BOOL MyString::Delete | ( | int | pos,
 |  | BOOL | after,
 |  | char | letterToFind
 | ) |

Efface a partir de la position, avant ou apres d'un certain nombre de caracter ou delimité par un lettre a rechercher ex.:

MyString str="0123456";
str.Delete(-1,FALSE,1); // 012345
str.Delete(1,TRUE,2);   // 0345
str.Delete(1,TRUE,'4'); // 05
.

Definition at line 681 of file MyString.cpp.

References BOOL(), FindLetter(), and GetPositionFromLeft().

Referenced by operator=(), and ~MyString().

void MyString::EnterBinNumber ( int value )

Entre un nombre en binaire.

Definition at line 874 of file MyString.cpp.

References operator+=(), Reverse(), and Zero().

void MyString::EnterHexaNumber ( int value )

Entre un nombre en hexadecimal.

Definition at line 857 of file MyString.cpp.

References operator+=(), Reverse(), and Zero().

int MyString::FindLetter ( char letter )

Donne la position d'un lettre a partir de la gauche.

Returns:
  • la postion par rapport a la gauche
  • -1 si pas de model trouvé

Definition at line 776 of file MyString.cpp.

References FindLetter().

int MyString::FindLetter | ( | int | pos,
 |  | BOOL | after,
 |  | char | letter
 | ) |

Donne la position d'un lettre a partir de la pos de base dansla direction after avec comme model la letter.

Returns:
  • la postion par rapport a la gauche
  • -1 si pas de model trouvé

Definition at line 752 of file MyString.cpp.

References GetPositionFromLeft().

Referenced by Delete(), and FindLetter().

BOOL MyString::Format | ( | char * | format,
 |  | ... |
 | ) |

Definition at line 813 of file MyString.cpp.

References BOOL(), buffer, format, len, and operator=().

Referenced by AboutProc(), ControlEngine::DrawFPS(), ValueEditors::MakeElemControlStruct(), ValueEditors::MakeElemFaceStruct(), ValueEditors::MakeFontsStruct(), ValueEditors::MakeTexturesStruct(), Screen::MsgInfoType(), Tutorial::BaseDemo::OnWinMove(), Tutorial::BaseDemo::OnXSliderMove(), Tutorial::BaseDemo::OnYSliderMove(), OpenGL_TestError(), and Picking::Test().

BOOL MyString::FormatToLower ( )

Definition at line 598 of file MyString.cpp.

References BOOL().

Referenced by TestSubString().

BOOL MyString::FormatToNoCtrl ( )

Definition at line 583 of file MyString.cpp.

References BOOL().

BOOL MyString::FormatToUpper ( )

Definition at line 612 of file MyString.cpp.

References BOOL().

int MyString::GetPositionFromLeft ( int pos )

Transforme les positions.

ex.:

// left count   012
// right count -321
MyString str= "012";
printf("%d",str.GetPositionFromLeft(1));        // 1
printf("%d",str.GetPositionFromLeft(-1));       // 2
printf("%d",str.GetPositionFromRight(1));       // -2
printf("%d",str.GetPositionFromRight(-1));      // -1

Definition at line 659 of file MyString.cpp.

Referenced by Add(), Delete(), FindLetter(), and operator[]().

int MyString::GetPositionFromRight ( int pos )

Definition at line 665 of file MyString.cpp.

long MyString::GetSize ( )

Definition at line 30 of file MyString.cpp.

Referenced by Text3D::AnalyseLex(), Text3D::ComputeLineSize(), MyRegistry::GetValue(), ValueEditor< T >::InterpretedText(), CMyMenu::MeasureItem(), and NextSubKey().

char * MyString::GetValue ( )

Definition at line 35 of file MyString.cpp.

Referenced by CopyTo().

char * MyString::GetValue ( int index )

Definition at line 510 of file MyString.cpp.

References index.

Referenced by MyRegistry::DeleteKey(), Text3D::GetText(), MyRegistry::GetValue(), and NextSubKey().

BOOL MyString::IsBeginWith ( char * model )

Test si le "model" est bien le debut du text.

Definition at line 832 of file MyString.cpp.

References BOOL().

BOOL MyString::IsEmpty ( ) [inline]

Definition at line 57 of file MyString.h.

References BOOL().

Referenced by Text3D::Draw().

BOOL MyString::IsVisibleText ( )

Definition at line 626 of file MyString.cpp.

References BOOL().

MyString MyString::Mids | ( | int | beginPos,
 |  | int | sizeToCopy
 | ) |

Recopie la chaine a partir d'une postion et d'une taille donnée.

Definition at line 802 of file MyString.cpp.

Referenced by Text3D::AnalyseGram(), and Text3D::ComputeLayout().

MyString::operator char * ( ) const [inline]

Definition at line 128 of file MyString.h.

BOOL MyString::operator!= ( MyString & string ) [inline]

Definition at line 98 of file MyString.h.

References BOOL(), operator==(), and string.

BOOL MyString::operator!= ( char * string ) [inline]

Definition at line 97 of file MyString.h.

References BOOL(), operator==(), and string.

BOOL MyString::operator!= ( double lfloating ) [inline]

Definition at line 96 of file MyString.h.

References BOOL(), and operator==().

BOOL MyString::operator!= ( float floating ) [inline]

Definition at line 95 of file MyString.h.

References BOOL(), and operator==().

BOOL MyString::operator!= ( long linteger ) [inline]

Definition at line 94 of file MyString.h.

References BOOL(), and operator==().

BOOL MyString::operator!= ( int integer ) [inline]

Definition at line 93 of file MyString.h.

References BOOL(), and operator==().

BOOL MyString::operator!= ( char letter ) [inline]

Definition at line 92 of file MyString.h.

References BOOL(), and operator==().

void MyString::operator+= ( MyString & string ) [inline]

Definition at line 74 of file MyString.h.

References string.

void MyString::operator+= ( char * string )

Definition at line 257 of file MyString.cpp.

References string.

void MyString::operator+= ( double lfloating )

Definition at line 251 of file MyString.cpp.

void MyString::operator+= ( float floating )

Definition at line 245 of file MyString.cpp.

void MyString::operator+= ( long linteger )

Definition at line 239 of file MyString.cpp.

void MyString::operator+= ( int integer )

Definition at line 233 of file MyString.cpp.

void MyString::operator+= ( char letter )

Definition at line 221 of file MyString.cpp.

Referenced by AddFormat(), AddRepetitiveFormat(), EnterBinNumber(), and EnterHexaNumber().

MyString & MyString::operator= ( MyString & string )

Definition at line 165 of file MyString.cpp.

References Delete(), and string.

MyString & MyString::operator= ( char * string )

Definition at line 153 of file MyString.cpp.

References Delete(), and string.

MyString & MyString::operator= ( double lfloating )

Definition at line 145 of file MyString.cpp.

MyString & MyString::operator= ( float floating )

Definition at line 137 of file MyString.cpp.

MyString & MyString::operator= ( long linteger )

Definition at line 129 of file MyString.cpp.

MyString & MyString::operator= ( int integer )

Definition at line 121 of file MyString.cpp.

MyString & MyString::operator= ( char letter )

Definition at line 109 of file MyString.cpp.

References Delete().

Referenced by Add(), and Format().

BOOL MyString::operator== ( MyString & string )

Definition at line 214 of file MyString.cpp.

References BOOL(), and string.

BOOL MyString::operator== ( char * string )

Definition at line 208 of file MyString.cpp.

References BOOL(), and string.

BOOL MyString::operator== ( double lfloating )

Definition at line 202 of file MyString.cpp.

References BOOL(), and value.

BOOL MyString::operator== ( float floating )

Definition at line 196 of file MyString.cpp.

References BOOL(), and value.

BOOL MyString::operator== ( long linteger )

Definition at line 190 of file MyString.cpp.

References BOOL(), and value.

BOOL MyString::operator== ( int integer )

Definition at line 184 of file MyString.cpp.

References BOOL(), and value.

BOOL MyString::operator== ( char letter )

Definition at line 178 of file MyString.cpp.

References BOOL(), and value.

Referenced by operator!=().

char & MyString::operator[] ( int index )

Access a un element du text.

Ex.:

MyString temp = "coucou";
if (temp[1]=='o') temp[2]='i';
// temp == "coicou"

Definition at line 381 of file MyString.cpp.

References GetPositionFromLeft(), and index.

Referenced by CopyTo().

void MyString::Reverse ( )

Met a l'envert une chaine "abcde" ==> "edcba".

Definition at line 889 of file MyString.cpp.

Referenced by EnterBinNumber(), and EnterHexaNumber().

void MyString::SplitPath | ( | MyString * | drive,
 |  | MyString * | dir,
 |  | MyString * | file,
 |  | MyString * | ext,
 |  | MyString * | driveDir,
 |  | MyString * | fileExt
 | ) |

Definition at line 541 of file MyString.cpp.

References clear().

BOOL MyString::SubStringBeforToken | ( | int | numSubString,
 |  | MyString & | result,
 |  | char * | lstToken
 | ) |

Decomposition d'une chaine par un modele.

Ex.: "c:\mp3\album\clapton\" index deb 1 2 3 4 index fin -4 -3 -2 -1

SubStringBeforToken(-1,result,"\\:") ==> result: "clapton"

Definition at line 483 of file MyString.cpp.

References BOOL(), and CopyTo().

char * MyString::TestSubString | ( | char * | text,
 |  | BOOL | caseSensitive = TRUE
 | ) |

Test si le text est contenu dans la chaine en cours caseSensitive: distingue les majuscule et minuscule.

Returns:
NULL si pas de sous string , charPtr si trouvé

Definition at line 843 of file MyString.cpp.

References FormatToLower().

double MyString::ToDouble ( )

Definition at line 574 of file MyString.cpp.

References res.

Referenced by ValueEditor< T >::Get_Value(), and MyRegistry::GetValue().

float MyString::ToFloat ( )

Definition at line 567 of file MyString.cpp.

References res.

Referenced by MyRegistry::GetValue().

long MyString::ToInteger ( )

Definition at line 560 of file MyString.cpp.

References res.

void MyString::Zero ( ) [inline]

Definition at line 67 of file MyString.h.

Referenced by EnterBinNumber(), EnterHexaNumber(), and MyString().

Friends And Related Function Documentation

MyString operator+ | ( | MyString & | string1,
 |  | MyString & | string2
 | ) | [friend]

Definition at line 364 of file MyString.cpp.

MyString operator+ | ( | char * | string1,
 |  | MyString & | string2
 | ) | [friend]

Definition at line 279 of file MyString.cpp.

MyString operator+ | ( | MyString & | string1,
 |  | char * | string2
 | ) | [friend]

Definition at line 269 of file MyString.cpp.

MyString operator+ | ( | double | lfloating,
 |  | MyString & | string
 | ) | [friend]

Definition at line 357 of file MyString.cpp.

MyString operator+ | ( | MyString & | string,
 |  | double | lfloating
 | ) | [friend]

Definition at line 350 of file MyString.cpp.

MyString operator+ | ( | float | floating,
 |  | MyString & | string
 | ) | [friend]

Definition at line 343 of file MyString.cpp.

MyString operator+ | ( | MyString & | string,
 |  | float | floating
 | ) | [friend]

Definition at line 336 of file MyString.cpp.

MyString operator+ | ( | long | linteger,
 |  | MyString & | string
 | ) | [friend]

Definition at line 329 of file MyString.cpp.

MyString operator+ | ( | MyString & | string,
 |  | long | linteger
 | ) | [friend]

Definition at line 322 of file MyString.cpp.

MyString operator+ | ( | int | integer,
 |  | MyString & | string
 | ) | [friend]

Definition at line 315 of file MyString.cpp.

MyString operator+ | ( | MyString & | string,
 |  | int | integer
 | ) | [friend]

Definition at line 308 of file MyString.cpp.

MyString operator+ | ( | char | letter,
 |  | MyString & | string
 | ) | [friend]

Definition at line 301 of file MyString.cpp.

MyString operator+ | ( | MyString & | string,
 |  | char | letter
 | ) | [friend]

Definition at line 294 of file MyString.cpp.

MyString& operator<< | ( | MyString & | in,
 |  | FncManipulateur | fnc
 | ) | [friend]

Lance un manipulateurs.

Liste:

  • clear ==> efface
  • ret ==> retour a la ligne

Definition at line 915 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string1,
 |  | MyString & | string2
 | ) | [friend]

Definition at line 432 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string1,
 |  | char * | string2
 | ) | [friend]

Definition at line 426 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string,
 |  | double | lfloating
 | ) | [friend]

Definition at line 420 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string,
 |  | float | floating
 | ) | [friend]

Definition at line 414 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string,
 |  | long | linteger
 | ) | [friend]

Definition at line 408 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string,
 |  | int | integer
 | ) | [friend]

Definition at line 402 of file MyString.cpp.

MyString& operator<< | ( | MyString & | string,
 |  | char | letter
 | ) | [friend]

Definition at line 396 of file MyString.cpp.

The documentation for this class was generated from the following files:
  • MyString.h
  • MyString.cpp
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyString Member List

This is the complete list of members for MyString, including all inherited members.
Add(int pos, BOOL after, char letter) | MyString |
Add(int pos, BOOL after, int integer) | MyString |
Add(int pos, BOOL after, long linteger) | MyString |
Add(int pos, BOOL after, float floating) | MyString |
Add(int pos, BOOL after, double lfloating) | MyString |
Add(int pos, BOOL after, char *string) | MyString |
Add(int pos, BOOL after, MyString &string) | MyString |
AddFormat(char *format,...) | MyString |
AddRepetitiveFormat(char *matrise, int nbCopy) | MyString |
CopyTo(MyString &result, int index, int size) | MyString |
Delete(int pos, BOOL after, char letterToFind) | MyString |
Delete(int pos, BOOL after, int nbLetter) | MyString |
EnterBinNumber(int value) | MyString |
EnterHexaNumber(int value) | MyString |
FindLetter(int pos, BOOL after, char letter) | MyString |
FindLetter(char letter) | MyString |
Format(char *format,...) | MyString |
FormatToLower() | MyString |
FormatToNoCtrl() | MyString |
FormatToUpper() | MyString |
GetPositionFromLeft(int pos) | MyString |
GetPositionFromRight(int pos) | MyString |
GetSize() | MyString |
GetValue(int index) | MyString |
GetValue() | MyString |
IsBeginWith(char *model) | MyString |
IsEmpty() | MyString | [inline]
IsVisibleText() | MyString |
Mids(int beginPos, int sizeToCopy) | MyString |
MyString() | MyString |
MyString(char letter) | MyString |
MyString(int integer) | MyString |
MyString(long linteger) | MyString |
MyString(float floating) | MyString |
MyString(double lfloating) | MyString |
MyString(char *string) | MyString |
MyString(MyString &string) | MyString |
operator char *() const | MyString | [inline]
operator!=(char letter) | MyString | [inline]
operator!=(int integer) | MyString | [inline]
operator!=(long linteger) | MyString | [inline]
operator!=(float floating) | MyString | [inline]
operator!=(double lfloating) | MyString | [inline]
operator!=(char *string) | MyString | [inline]
operator!=(MyString &string) | MyString | [inline]
operator+(MyString &string, char letter) | MyString | [friend]
operator+(char letter, MyString &string) | MyString | [friend]
operator+(MyString &string, int integer) | MyString | [friend]
operator+(int integer, MyString &string) | MyString | [friend]
operator+(MyString &string, long linteger) | MyString | [friend]
operator+(long linteger, MyString &string) | MyString | [friend]
operator+(MyString &string, float floating) | MyString | [friend]
operator+(float floating, MyString &string) | MyString | [friend]
operator+(MyString &string, double lfloating) | MyString | [friend]
operator+(double lfloating, MyString &string) | MyString | [friend]
operator+(MyString &string1, char *string2) | MyString | [friend]
operator+(char *string1, MyString &string2) | MyString | [friend]
operator+(MyString &string1, MyString &string2) | MyString | [friend]
operator+=(char letter) | MyString |
operator+=(int integer) | MyString |
operator+=(long linteger) | MyString |
operator+=(float floating) | MyString |
operator+=(double lfloating) | MyString |
operator+=(char *string) | MyString |
operator+=(MyString &string) | MyString | [inline]
operator<<(MyString &string, char letter) | MyString | [friend]
operator<<(MyString &string, int integer) | MyString | [friend]
operator<<(MyString &string, long linteger) | MyString | [friend]
operator<<(MyString &string, float floating) | MyString | [friend]
operator<<(MyString &string, double lfloating) | MyString | [friend]
operator<<(MyString &string1, char *string2) | MyString | [friend]
operator<<(MyString &string1, MyString &string2) | MyString | [friend]
operator<<(MyString &in,FncManipulateur fnc) | MyString | [friend]
operator=(char letter) | MyString |
operator=(int integer) | MyString |
operator=(long linteger) | MyString |
operator=(float floating) | MyString |
operator=(double lfloating) | MyString |
operator=(char *string) | MyString |
operator=(MyString &string) | MyString |
operator==(char letter) | MyString |
operator==(int integer) | MyString |
operator==(long linteger) | MyString |
operator==(float floating) | MyString |
operator==(double lfloating) | MyString |
operator==(char *string) | MyString |
operator==(MyString &string) | MyString |
operator[](int num) | MyString |
Reverse() | MyString |
SplitPath(MyString *drive, MyString *dir, MyString *file, MyString *ext, MyString *driveDir, MyString *fileExt) | MyString |
SubStringBeforToken(int numSubString, MyString &result, char *lstToken) | MyString |
TestSubString(char *text, BOOL caseSensitive=TRUE) | MyString |
ToDouble() | MyString |
ToFloat() | MyString |
ToInteger() | MyString |
Zero() | MyString | [inline]
~MyString() | MyString | [inline, virtual]
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateMyTree< T > class Reference

MyTree< T > Class Template Reference

Arbre generique. More...

#include <MyTree.h>

List of all members.

Public Member Functions

MyTreeNode< T > * | GetRoot ()
MyTreeNode< T > * | GetCurrent ()
MyTree ()
~MyTree ()
BOOL | SuprNode (MyTreeNode< T > *node, BOOL recursif=TRUE)
void | SuprAll ()
void | operator= (MyTreeNode< T > *node)
void | operator+= (MyTreeNode< T > *node)
void | Clone (MyTreeNode< T > *nodeSource, MyTreeNode< T > *nodeParentClone)
void | operator= (MyTree< T > *otherTree)
void | operator+= (MyTree< T > *otherTree)
MyTreeNode< T > * | GoToChild (int numChild, MyTreeNode< T > *parent=NULL)
MyTreeNode< T > * | GoTo (MyTreeNode< T > *node)
MyTreeNode< T > * | GetChild (int numChild, MyTreeNode< T > *parent=NULL)
MyTreeNode< T > * | GoToParent (MyTreeNode< T > *parent=NULL)
MyTreeNode< T > * | GetParent (MyTreeNode< T > *parent=NULL)
MyTreeNode< T > * | Add (T &elem, MyTreeNode< T > *parent=NULL)
MyTreeNode< T > * | Add (T *elem, MyTreeNode< T > *parent=NULL)

Detailed Description

template<class T>
class MyTree< T >

Arbre generique.

Parametres:

  • root (MyTreeNode *) racine
  • current (MyTreeNode *) element en cours (cf voir GoTo)

Ex.: Affiche le Modele suivant dans une Pop-up

  • centre
    • gauche
      • gauche gauche
      • gauche droite
    • droite
      • droite gauche
      • droite droite

MyString message;
void viewTree(MyTreeNode<MyString> *node)
{
        static int level=0;
        for (int i=0;i<level;i++) message+="| ";
        level++;
        message<<*node->elem<<" ("<<node->childs.GetNbElem()<<" childs)\n";
        for (node->childs=0;node->childs.More();node->childs.GoNext())
        viewTree(node->childs.GetElem());
        level--;
}

void main()
{
        MyTree<MyString> tree;
        MyTreeNode<MyString> *niv0,*niv1;
        MyString str;
        str="centre";niv0 = tree.Add(str);
        str="gauche";niv1 = tree.Add(str,niv0);
        str="gauche gauche";tree.Add(str,niv1);
        str="gauche droite";tree.Add(str,niv1);
        str="droite";niv1 = tree.Add(str,niv0);
        str="droite gauche";tree.Add(str,niv1);
        str="droite droite";tree.Add(str,niv1);

        viewTree(tree.GetRoot()); // affichage
        MessageBox(NULL,message,"Arb",0);
}

Definition at line 224 of file MyTree.h.

Constructor & Destructor Documentation

template<class T>
MyTree< T >::MyTree ( ) [inline]

Definition at line 241 of file MyTree.h.

template<class T>
MyTree< T >::~MyTree ( ) [inline]

Definition at line 246 of file MyTree.h.

Member Function Documentation

template<class T>
MyTreeNode<T>* MyTree< T >::Add | ( | T * | elem,
 |  | MyTreeNode< T > * | parent = NULL
 | ) | [inline]

Definition at line 353 of file MyTree.h.

template<class T>
MyTreeNode<T>* MyTree< T >::Add | ( | T & | elem,
 |  | MyTreeNode< T > * | parent = NULL
 | ) | [inline]

Definition at line 340 of file MyTree.h.

Referenced by MyTree< Face >::Clone().

template<class T>
void MyTree< T >::Clone | ( | MyTreeNode< T > * | nodeSource,
 |  | MyTreeNode< T > * | nodeParentClone
 | ) | [inline]

Definition at line 277 of file MyTree.h.

Referenced by MyTree< Face >::Clone(), and MyTree< Face >::operator+=().

template<class T>
MyTreeNode<T>* MyTree< T >::GetChild | ( | int | numChild,
 |  | MyTreeNode< T > * | parent = NULL
 | ) | [inline]

Definition at line 313 of file MyTree.h.

Referenced by MyTree< Face >::GoToChild().

template<class T>
MyTreeNode<T>* MyTree< T >::GetCurrent ( ) [inline]

Definition at line 239 of file MyTree.h.

template<class T>
MyTreeNode<T>* MyTree< T >::GetParent ( MyTreeNode< T > * parent = NULL ) [inline]

Definition at line 330 of file MyTree.h.

Referenced by MyTree< Face >::GoToParent().

template<class T>
MyTreeNode<T>* MyTree< T >::GetRoot ( ) [inline]

Definition at line 238 of file MyTree.h.

Referenced by MyTree< Face >::operator+=(), and MyTree< Face >::operator=().

template<class T>
MyTreeNode<T>* MyTree< T >::GoTo ( MyTreeNode< T > * node ) [inline]

Definition at line 305 of file MyTree.h.

template<class T>
MyTreeNode<T>* MyTree< T >::GoToChild | ( | int | numChild,
 |  | MyTreeNode< T > * | parent = NULL
 | ) | [inline]

Definition at line 298 of file MyTree.h.

template<class T>
MyTreeNode<T>* MyTree< T >::GoToParent ( MyTreeNode< T > * parent = NULL ) [inline]

Definition at line 323 of file MyTree.h.

template<class T>
void MyTree< T >::operator+= ( MyTree< T > * otherTree ) [inline]

Definition at line 293 of file MyTree.h.

template<class T>
void MyTree< T >::operator+= ( MyTreeNode< T > * node ) [inline]

Definition at line 272 of file MyTree.h.

Referenced by MyTree< Face >::operator+=(), and MyTree< Face >::operator=().

template<class T>
void MyTree< T >::operator= ( MyTree< T > * otherTree ) [inline]

Definition at line 287 of file MyTree.h.

template<class T>
void MyTree< T >::operator= ( MyTreeNode< T > * node ) [inline]

Definition at line 266 of file MyTree.h.

template<class T>
void MyTree< T >::SuprAll ( ) [inline]

Definition at line 260 of file MyTree.h.

Referenced by MyTree< Face >::operator=(), and MyTree< Face >::~MyTree().

template<class T>
BOOL MyTree< T >::SuprNode | ( | MyTreeNode< T > * | node,
 |  | BOOL | recursif = TRUE
 | ) | [inline]

Definition at line 251 of file MyTree.h.

Referenced by MyTree< Face >::SuprAll().

The documentation for this class was generated from the following file:
  • MyTree.h
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyTree< T > Member List

This is the complete list of members for MyTree< T >, including all inherited members.
Add(T &elem, MyTreeNode< T > *parent=NULL) | MyTree< T > | [inline]
Add(T *elem, MyTreeNode< T > *parent=NULL) | MyTree< T > | [inline]
Clone(MyTreeNode< T > *nodeSource, MyTreeNode< T > *nodeParentClone) | MyTree< T > | [inline]
GetChild(int numChild, MyTreeNode< T > *parent=NULL) | MyTree< T > | [inline]
GetCurrent() | MyTree< T > | [inline]
GetParent(MyTreeNode< T > *parent=NULL) | MyTree< T > | [inline]
GetRoot() | MyTree< T > | [inline]
GoTo(MyTreeNode< T > *node) | MyTree< T > | [inline]
GoToChild(int numChild, MyTreeNode< T > *parent=NULL) | MyTree< T > | [inline]
GoToParent(MyTreeNode< T > *parent=NULL) | MyTree< T > | [inline]
MyTree() | MyTree< T > | [inline]
operator+=(MyTreeNode< T > *node) | MyTree< T > | [inline]
operator+=(MyTree< T > *otherTree) | MyTree< T > | [inline]
operator=(MyTreeNode< T > *node) | MyTree< T > | [inline]
operator=(MyTree< T > *otherTree) | MyTree< T > | [inline]
SuprAll() | MyTree< T > | [inline]
SuprNode(MyTreeNode< T > *node, BOOL recursif=TRUE) | MyTree< T > | [inline]
~MyTree() | MyTree< T > | [inline]
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateMyTreeNode< T > class Reference

MyTreeNode< T > Class Template Reference

Gestion des Noeud d'un arbre MyTree. More...

#include <MyTree.h>

List of all members.

Public Types

typedef MyTreeNode< T > | MyTreeNodeItem

Public Member Functions

MyTreeNode ()
MyTreeNode (T &_elem)
MyTreeNode (T *_elem)
affecation d'un element deja allouée

~MyTreeNode ()
BOOL | SuprChilds (BOOL recursif=FALSE)
BOOL | SuprOnParent ()
MyTreeNode< T > * | operator[] (int num)
BOOL | MoveTo (MyTreeNode< T > *dest)
Deplace un noeud dans un nouveau noeud destinataire.

BOOL | FindOnParent (MyListIterator< MyTreeNodeItem * > &it)
void | MoveToFirstChild ()
void | MoveToLastChild ()
T * | Elems (int num)
void | operator= (MyTreeNode &source)

Public Attributes

T * | elem
MyTreeNode * parent
MyList< MyTreeNode * > childs

Detailed Description

template<class T>
class MyTreeNode< T >

Gestion des Noeud d'un arbre MyTree.

Composé par:

  • elem (T)
  • parent (MyTreeNode *)
  • childs (MyList<MyTreeNode *)

Definition at line 38 of file MyTree.h.

Member Typedef Documentation

template<class T>
typedef MyTreeNode<T> MyTreeNode< T >::MyTreeNodeItem

Definition at line 53 of file MyTree.h.

Constructor & Destructor Documentation

template<class T>
MyTreeNode< T >::MyTreeNode ( ) [inline]

Definition at line 55 of file MyTree.h.

template<class T>
MyTreeNode< T >::MyTreeNode ( T & _elem ) [inline]

Definition at line 57 of file MyTree.h.

template<class T>
MyTreeNode< T >::MyTreeNode ( T * _elem ) [inline]

affecation d'un element deja allouée

Definition at line 66 of file MyTree.h.

template<class T>
MyTreeNode< T >::~MyTreeNode ( ) [inline]

Definition at line 72 of file MyTree.h.

Member Function Documentation

template<class T>
T* MyTreeNode< T >::Elems ( int num ) [inline]

Definition at line 156 of file MyTree.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Tutorial::LayoutDemo::ConfigTreeButton(), Title::Create(), TextBox::Create(), Slider::Create(), Calculator::Create(), Button::Create(), Title::GotFocus(), Tutorial::LayoutDemo::LayoutDemo(), Title::LostFocus(), ResizingAndRotateControl::OnHover(), Title::OnMax(), Title::OnOriginal(), Tutorial::BaseDemo::OnWinMove(), Tutorial::BaseDemo::OnWinOut(), TaskWindow::Refresh(), Tutorial::UniversDemo::SetFace(), Title::ToString(), and Tutorial::WindowDemo::WindowDemo().

template<class T>
BOOL MyTreeNode< T >::FindOnParent ( MyListIterator< MyTreeNodeItem * > & it ) [inline]

Definition at line 132 of file MyTree.h.

Referenced by MyTreeNode< Face >::MoveToFirstChild().

template<class T>
BOOL MyTreeNode< T >::MoveTo ( MyTreeNode< T > * dest ) [inline]

Deplace un noeud dans un nouveau noeud destinataire.

Definition at line 109 of file MyTree.h.

Referenced by MyTreeNode< Face >::MoveToLastChild(), Title::OnMax(), Title::OnMin(), and Title::OnOriginal().

template<class T>
void MyTreeNode< T >::MoveToFirstChild ( ) [inline]

Definition at line 143 of file MyTree.h.

Referenced by Slider::Create().

template<class T>
void MyTreeNode< T >::MoveToLastChild ( ) [inline]

Definition at line 151 of file MyTree.h.

Referenced by Primitive::ReOrderForBlending().

template<class T>
void MyTreeNode< T >::operator= ( MyTreeNode< T > & source ) [inline]

Definition at line 161 of file MyTree.h.

template<class T>
MyTreeNode<T>* MyTreeNode< T >::operator[] ( int num ) [inline]

Definition at line 101 of file MyTree.h.

template<class T>
BOOL MyTreeNode< T >::SuprChilds ( BOOL recursif = FALSE ) [inline]

Definition at line 77 of file MyTree.h.

Referenced by MyTree< Face >::SuprNode().

template<class T>
BOOL MyTreeNode< T >::SuprOnParent ( ) [inline]

Definition at line 93 of file MyTree.h.

Referenced by MyTree< Face >::SuprNode().

Member Data Documentation

template<class T>
MyList<MyTreeNode *> MyTreeNode< T >::childs

Definition at line 43 of file MyTree.h.

Referenced by MyTree< Face >::Add(), MyTree< Face >::Clone(), TreeView::ConfigFacesPlus(), Primitive::Draw(), Primitive::Find(), Picking::FindContainer(), MyTreeNode< Face >::FindOnParent(), MyTree< Face >::GetChild(), Control::GetCorners(), Control::GetLocalPos(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), MyTreeNode< Face >::MoveTo(), MyTreeNode< Face >::operator=(), Primitive::ReOrderForBlending(), Control::SetAlphaBlending(), Control::SetBlending(), Control::SetLines(), MyTreeNode< Face >::SuprOnParent(), Picking::Test(), and Primitive::ViewDebug().

template<class T>
T* MyTreeNode< T >::elem

Definition at line 41 of file MyTree.h.

Referenced by Primitive::AddFace(), MyTree< Face >::Clone(), Primitive::ComputeLayout(), Config(), Window::Create(), TrackButton::Create(), Title::Create(), Tip::Create(), TaskWindow::Create(), Slider::Create(), MsgBox::Create(), MasterContainer::Create(), Container::Create(), Calculator::Create(), Button::Create(), DebugStructProc(), Demo::Demo(), TreeView::Draw(), Primitive::Draw(), ControlEngine::DrawBackGround(), ControlEngine::DrawCursor(), Tutorial::FaceDemo::FaceDemo(), Primitive::Find(), Picking::FindContainer(), Primitive::GetLocalPos(), Univers::HomePosition(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), ValueEditors::MakeElemFaceStruct(), Control::Move(), Control::MoveTo(), ResizingAndRotateControl::OnHover(), Title::OnMax(), Title::OnMin(), Title::OnOriginal(), Button::OnPushDown(), Demo::OnTimer(), Tutorial::UniversDemo::OnTimer(), Tutorial::FaceDemo::OnTimer(), MyTreeNode< Face >::operator=(), Button::PushUp(), Slider::Refresh(), Primitive::ReOrderForBlending(), Control::ReSize(), Control::Rotate(), Control::RotateQuaternion(), Control::RotateTo(), Control::SetAlphaBlending(), Control::SetBlending(), Control::SetLines(), Control::SetParent(), Control::Size(), Picking::Test(), Tutorial::UniversDemo::UniversDemo(), and Primitive::ViewDebug().

template<class T>
MyTreeNode* MyTreeNode< T >::parent

Definition at line 42 of file MyTree.h.

Referenced by MyTree< Face >::Add(), Primitive::AddFace(), Primitive::ComputeLayout(), Picking::FindContainer(), MyTree< Face >::GetParent(), Title::OnMax(), Title::OnMin(), and MyTreeNode< Face >::operator=().

The documentation for this class was generated from the following file:
  • MyTree.h
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

MyTreeNode< T > Member List

This is the complete list of members for MyTreeNode< T >, including all inherited members.
childs | MyTreeNode< T > |
elem | MyTreeNode< T > |
Elems(int num) | MyTreeNode< T > | [inline]
FindOnParent(MyListIterator< MyTreeNodeItem * > &it) | MyTreeNode< T > | [inline]
MoveTo(MyTreeNode< T > *dest) | MyTreeNode< T > | [inline]
MoveToFirstChild() | MyTreeNode< T > | [inline]
MoveToLastChild() | MyTreeNode< T > | [inline]
MyTreeNode() | MyTreeNode< T > | [inline]
MyTreeNode(T &_elem) | MyTreeNode< T > | [inline]
MyTreeNode(T *_elem) | MyTreeNode< T > | [inline]
MyTreeNodeItem typedef | MyTreeNode< T > |
operator=(MyTreeNode &source) | MyTreeNode< T > | [inline]
operator[](int num) | MyTreeNode< T > | [inline]
parent | MyTreeNode< T > |
SuprChilds(BOOL recursif=FALSE) | MyTreeNode< T > | [inline]
SuprOnParent() | MyTreeNode< T > | [inline]
~MyTreeNode() | MyTreeNode< T > | [inline]
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Object class Reference

Object Class Reference

"Objet" generique, utilise pour faire des list ou arbre d'element de type different More...

#include <MyObject.h>

Inheritance diagram for Object:

BaseObj< T, V > List of all members.

Public Member Functions

Object ()
Object (int _type, void *_thisParent)
void | operator= (Object &source)

Public Attributes

void * | thisParent
int | type
LONG | param
Obj_CallBack callBackAlloc

Detailed Description

"Objet" generique, utilise pour faire des list ou arbre d'element de type different

Ex.: "list a element variable"

// chaque class voulant etre CBase faire son init avec
// BaseObj<CMyClass,CBASE_INDEX_CUSTOM> obj_myClass;

MyList<Obj> objs;
{
        CBase_int var0;
        var0.value = 12;
        objs+=var0;
        CBase_double var1;
        var1.value = 12.345;
        objs+=var1;
        CBase_string var2;
        var2.value = "coucou";
        objs+=var2;
        // le element on boen ete recopier car a la     fin     du } var0,var1,var2     sont des-allouée
}
CBase_string varStatic;
varStatic.value="fait le hibou";
objs+=&varStatic; // ici on     affect le ptr par d'utilisation de recopy

MyString res;
for (objs=0;objs.More();objs++)
{
        Obj *ptrObj = objs();
        switch (ptrObj->type)
        {
                case CBASE_INDEX_INT:
                {
                        CBase_int *ptr = (CBase_int *)ptrObj->thisParent;
                        res<<" Int:     "<<ptr->value;
                        break;
                }
                case CBASE_INDEX_DOUBLE:
                {
                        CBase_double *ptr = (CBase_double *)ptrObj->thisParent;
                        res<<" Double: "<<ptr->value;
                        break;
                }
                case CBASE_INDEX_STRING:
                {
                        CBase_string *ptr = (CBase_string *)ptrObj->thisParent;
                        res<<" String: "<<ptr->value;
                        break;
                }
        }
}

MessageBox(NULL,res,"Resultat",0);

Definition at line 84 of file MyObject.h.

Constructor & Destructor Documentation

Object::Object ( ) [inline]

Definition at line 93 of file MyObject.h.

References callBackAlloc, param, thisParent, and type.

Object::Object | ( | int | _type,
 |  | void * | _thisParent
 | ) | [inline]

Definition at line 101 of file MyObject.h.

References thisParent, and type.

Member Function Documentation

void Object::operator= ( Object & source ) [inline]

Definition at line 107 of file MyObject.h.

References callBackAlloc, param, param, thisParent, type, and type.

Member Data Documentation

Obj_CallBack Object::callBackAlloc

Definition at line 90 of file MyObject.h.

Referenced by Object(), and operator=().

LONG Object::param

Definition at line 89 of file MyObject.h.

Referenced by operator=().

void* Object::thisParent

Definition at line 87 of file MyObject.h.

Referenced by Object(), operator=(), and ValueEditors::Update().

int Object::type

Definition at line 88 of file MyObject.h.

Referenced by operator=().

The documentation for this class was generated from the following file:
  • MyObject.h
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Object3D class Reference

Object3D Class Reference

Object 3D. More...

#include <Object3D.h>

List of all members.

Static Public Member Functions

void | DrawArrow (Color color)
void | DrawRepere ()
void | DrawText (char *text)
void | DrawVector (double x, double y)
Affiche un vecteur.

BOOL | DrawVectorMinMax (double x, double y, double minIntensity, double maxIntensity)

Static Public Attributes

HDC | hDC = NULL

Detailed Description

Object 3D.

List des objects:

  • Pointeur (DrawArrow)
  • Repere xyz (DrawRepere)
  • Vecteur (DrawVector)
  • Vecture de taill limitée (DrawVectorMinMax)

Definition at line 37 of file Object3D.h.

Member Function Documentation

void Object3D::DrawArrow ( Color color ) [static]

Definition at line 78 of file Object3D.cpp.

References Material::emission, Color::SetNull(), Material::SetNull(), and Material::Use().

void Object3D::DrawRepere ( ) [static]

Definition at line 116 of file Object3D.cpp.

References Material::emission, Color::Set(), Color::SetNull(), Material::SetNull(), and Material::Use().

Referenced by ControlEngine::DrawOrigineRepere().

void Object3D::DrawText ( char * text ) [static]

Definition at line 171 of file Object3D.cpp.

References hDC.

void Object3D::DrawVector | ( | double | x,
 |  | double | y
 | ) | [static]

Affiche un vecteur.

Todo:
blending, mais la j'ai pas reussi

Definition at line 49 of file Object3D.cpp.

References Material::emission, Point3D< T >::glRotated(), PI, Color::Set(), Material::SetNull(), and Material::Use().

Referenced by DrawVectorMinMax().

BOOL Object3D::DrawVectorMinMax | ( | double | x,
 |  | double | y,
 |  | double | minIntensity,
 |  | double | maxIntensity
 | ) | [static]

Definition at line 29 of file Object3D.cpp.

References BOOL(), and DrawVector().

Member Data Documentation

HDC Object3D::hDC = NULL [static]

Definition at line 25 of file Object3D_instance.h.

The documentation for this class was generated from the following files:
  • Object3D.h
  • Object3D.cpp
  • Object3D_instance.h
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Object3D Member List

This is the complete list of members for Object3D, including all inherited members.
DrawArrow(Color color) | Object3D | [static]
DrawRepere() | Object3D | [static]
DrawText(char *text) | Object3D | [static]
DrawVector(double x, double y) | Object3D | [static]
DrawVectorMinMax(double x, double y, double minIntensity, double maxIntensity) | Object3D | [static]
hDC | Object3D | [static]
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Opperation class Reference

Opperation Class Reference

#include <calculator.h>

List of all members.

Public Member Functions

Opperation ()
void | operator= (Opperation &src)
void | GetText (MyString &result)

Static Public Member Functions

double | Compute (double param1, TOpperation op, double param2)

Public Attributes

double | number
TOpperation op

Constructor & Destructor Documentation

Opperation::Opperation ( )

Definition at line 26 of file calculator.cpp.

References number, op, and Op_Null.

Member Function Documentation

double Opperation::Compute | ( | double | param1,
 |  | TOpperation | op,
 |  | double | param2
 | ) | [static]

Definition at line 51 of file calculator.cpp.

References Op_Add, Op_Div, Op_Mult, Op_Null, and Op_Sub.

void Opperation::GetText ( MyString & result )

Definition at line 38 of file calculator.cpp.

References op, Op_Add, Op_Div, Op_Mult, Op_Null, and Op_Sub.

void Opperation::operator= ( Opperation & src )

Definition at line 32 of file calculator.cpp.

References number, op, and src.

Member Data Documentation

double Opperation::number

Definition at line 36 of file calculator.h.

Referenced by Calculator::OnAdd(), Calculator::OnDiv(), Calculator::OnMult(), Calculator::OnSub(), operator=(), and Opperation().

TOpperation Opperation::op

Definition at line 37 of file calculator.h.

Referenced by GetText(), Calculator::OnAdd(), Calculator::OnDiv(), Calculator::OnMult(), Calculator::OnSub(), operator=(), and Opperation().

The documentation for this class was generated from the following files:
  • calculator.h
  • calculator.cpp
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Opperation Member List

This is the complete list of members for Opperation, including all inherited members.
Compute(double param1, TOpperation op, double param2) | Opperation | [static]
GetText(MyString &result) | Opperation |
number | Opperation |
op | Opperation |
operator=(Opperation &src) | Opperation |
Opperation() | Opperation |
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ParamValueEditor class Reference

ParamValueEditor Class Reference

Parametre des valeurs de l'editeur. More...

#include <valueEditor.h>

List of all members.

Public Member Functions

ParamValueEditor ()
void | Zero ()
void | operator= (ParamValueEditor &source)
ParamValueEditor * GetCopy ()

Public Attributes

Object * object
RECT | rect
HWND | hWndParent
BOOL | independant

Detailed Description

Parametre des valeurs de l'editeur.

Definition at line 42 of file valueEditor.h.

Constructor & Destructor Documentation

ParamValueEditor::ParamValueEditor ( )

Definition at line 33 of file valueEditor.cpp.

References Zero().

Member Function Documentation

ParamValueEditor * ParamValueEditor::GetCopy ( )

Definition at line 56 of file valueEditor.cpp.

References object.

void ParamValueEditor::operator= ( ParamValueEditor & source )

Definition at line 46 of file valueEditor.cpp.

References hWndParent, independant, and rect.

void ParamValueEditor::Zero ( )

Definition at line 38 of file valueEditor.cpp.

References hWndParent, independant, object, and rect.

Referenced by ParamValueEditor().

Member Data Documentation

HWND ParamValueEditor::hWndParent

Definition at line 47 of file valueEditor.h.

Referenced by operator=(), and Zero().

BOOL ParamValueEditor::independant

Definition at line 48 of file valueEditor.h.

Referenced by operator=(), and Zero().

Object* ParamValueEditor::object

Definition at line 45 of file valueEditor.h.

Referenced by GetCopy(), and Zero().

RECT ParamValueEditor::rect

Definition at line 46 of file valueEditor.h.

Referenced by operator=(), and Zero().

The documentation for this class was generated from the following files:
  • valueEditor.h
  • valueEditor.cpp
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ParamValueEditor Member List

This is the complete list of members for ParamValueEditor, including all inherited members.
GetCopy() | ParamValueEditor
hWndParent | ParamValueEditor
independant | ParamValueEditor
object | ParamValueEditor
operator=(ParamValueEditor &source) | ParamValueEditor
ParamValueEditor() | ParamValueEditor
rect | ParamValueEditor
Zero() | ParamValueEditor
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ParsingElem class Reference

ParsingElem Class Reference

Element de parsing. More...

#include <text3d.h>

Inheritance diagram for ParsingElem:

ParsingLine ParsingWord List of all members.

Public Member Functions

ParsingElem ()
void | operator= (ParsingElem &src)

Public Attributes

GLfloat | deltaX
taille X du mots

BOOL | isWord
word ou separator?

Detailed Description

Element de parsing.

Definition at line 41 of file text3d.h.

Constructor & Destructor Documentation

ParsingElem::ParsingElem ( )

Definition at line 214 of file text3d.cpp.

References deltaX, and isWord.

Member Function Documentation

void ParsingElem::operator= ( ParsingElem & src )

Definition at line 220 of file text3d.cpp.

References deltaX, isWord, and src.

Referenced by ParsingWord::operator=(), and ParsingLine::operator=().

Member Data Documentation

GLfloat ParsingElem::deltaX

taille X du mots

Definition at line 44 of file text3d.h.

Referenced by Text3D::ComputeLayout(), Text3D::ComputeLineSize(), operator=(), and ParsingElem().

BOOL ParsingElem::isWord

word ou separator?

Definition at line 45 of file text3d.h.

Referenced by Text3D::AnalyseGram(), operator=(), and ParsingElem().

The documentation for this class was generated from the following files:
  • text3d.h
  • text3d.cpp
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ParsingElem Member List

This is the complete list of members for ParsingElem, including all inherited members.
deltaX | ParsingElem
isWord | ParsingElem
operator=(ParsingElem &src) | ParsingElem
ParsingElem() | ParsingElem
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ParsingLine class Reference

ParsingLine Class Reference

Sauvegard du parsing du text. More...

#include <text3d.h>

Inheritance diagram for ParsingLine:

ParsingElem List of all members.

Public Member Functions

ParsingLine ()
void | operator= (ParsingLine &src)

Public Attributes

GLfloat | deltaY
taille Y du mots (height de la fonte)

TextAlign align
type d'allignement horizontale

MyList< ParsingWord * > words
list des pointeur sur les mots de la ligne

double | xJustify
taille de chaque justification dans les X

double | xPos
postion x de depart

int | nbChar
nombre total de caractere

Detailed Description

Sauvegard du parsing du text.

parametre:

  • deltaX: taille
  • indBegin,indEnd: indice dans la chaine de debut et de fin de l'element
  • align: type d'alignement
  • words: lsit des pointeurs sur les mots contenu dans la ligne (si l'on est dans une ligne)
  • separator: separateur de l'element (pour un mots: '', ' ' etc ...)

Definition at line 72 of file text3d.h.

Constructor & Destructor Documentation

ParsingLine::ParsingLine ( )

Definition at line 196 of file text3d.cpp.

References align, align_begin, deltaY, and nbChar.

Member Function Documentation

void ParsingLine::operator= ( ParsingLine & src )

Definition at line 203 of file text3d.cpp.

References align, deltaY, nbChar, ParsingElem::operator=(), src, and words.

Member Data Documentation

TextAlign ParsingLine::align

type d'allignement horizontale

Definition at line 76 of file text3d.h.

Referenced by operator=(), and ParsingLine().

GLfloat ParsingLine::deltaY

taille Y du mots (height de la fonte)

Definition at line 75 of file text3d.h.

Referenced by Text3D::ComputeLayout(), operator=(), and ParsingLine().

int ParsingLine::nbChar

nombre total de caractere

Definition at line 80 of file text3d.h.

Referenced by operator=(), and ParsingLine().

MyList<ParsingWord *> ParsingLine::words

list des pointeur sur les mots de la ligne

Definition at line 77 of file text3d.h.

Referenced by Text3D::ComputeLayout(), and operator=().

double ParsingLine::xJustify

taille de chaque justification dans les X

Definition at line 78 of file text3d.h.

double ParsingLine::xPos

postion x de depart

Definition at line 79 of file text3d.h.

The documentation for this class was generated from the following files:
  • text3d.h
  • text3d.cpp
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ParsingLine Member List

This is the complete list of members for ParsingLine, including all inherited members.
align | ParsingLine
deltaX | ParsingElem
deltaY | ParsingLine
isWord | ParsingElem
nbChar | ParsingLine
operator=(ParsingLine &src) | ParsingLine
ParsingElem::operator=(ParsingElem &src) | ParsingElem
ParsingElem() | ParsingElem
ParsingLine() | ParsingLine
words | ParsingLine
xJustify | ParsingLine
xPos | ParsingLine
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ParsingWord class Reference

ParsingWord Class Reference

parsing de mots More...

#include <text3d.h>

Inheritance diagram for ParsingWord:

ParsingElem List of all members.

Public Member Functions

ParsingWord ()
void operator= (ParsingWord &src)

Public Attributes

MyString text

Detailed Description

parsing de mots

Definition at line 52 of file text3d.h.

Constructor & Destructor Documentation

ParsingWord::ParsingWord ( )

Definition at line 228 of file text3d.cpp.

Member Function Documentation

void ParsingWord::operator= ( ParsingWord & src )

Definition at line 233 of file text3d.cpp.

References ParsingElem::operator=(), and src.

Member Data Documentation

MyString ParsingWord::text

Definition at line 55 of file text3d.h.

Referenced by Text3D::AnalyseGram(), Text3D::ComputeLayout(), and Text3D::ComputeLineSize().

The documentation for this class was generated from the following files:
  • text3d.h
  • text3d.cpp
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ParsingWord Member List

This is the complete list of members for ParsingWord, including all inherited members.
deltaX | ParsingElem
isWord | ParsingElem
operator=(ParsingWord &src) | ParsingWord
ParsingElem::operator=(ParsingElem &src) | ParsingElem
ParsingElem() | ParsingElem
ParsingWord() | ParsingWord
text | ParsingWord
Generated on Fri Aug 20 19:21:29 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Picking class Reference

Picking Class Reference

Gestion du picking. More...

#include <picking.h>

List of all members.

Public Member Functions

Picking ()
void | operator= (Picking &scr)
BOOL | Test ()
test OpenGL du picking

BOOL | FindContainer ()
trouve le container

void | SetMousePos (int x, int y)
place les coordonnée de la souris

void | SetDeltaWheel (int delta)
place le delta wheel de la souris

void | UpdateLast ()
Mise a jour des derniers.

void | ResetLast ()
void | ResetCurrent ()
void | OnMouseMove (int x, int y)
void | OnMouseWheel (int delta)
void | OnLButtonUp ()
void | OnMButtonUp ()
void | OnRButtonUp ()

Public Attributes

Control * lastControlHover
derniere control survolé utilisé

Control * lastControlContainer
dernier control container utilisé

int | lastFaceHover
derniere face survolé utilisé

int | lastFaceContainer
derniere face container utilisé

StateMouse mouse
StateMouse oldMouse
infos / souris

Control * controlHover
control survolé

Control * controlContainer
control sélectioné

int | faceHover
face du control survolé

int | faceContainer
face du control sélectioné

double | zDist
distance z observateur <=> objet 3D

BOOL | isMoving
les coordonée on est changé depuis la derniere fois

Detailed Description

Gestion du picking.

Definition at line 35 of file picking.h.

Constructor & Destructor Documentation

Picking::Picking ( )

Definition at line 28 of file picking.cpp.

References isMoving, ResetCurrent(), ResetLast(), and zDist.

Member Function Documentation

BOOL Picking::FindContainer ( )

trouve le container

Trouve le container du "controlHover" et le place dans le "controlContainer"

Le critere est pour le moment la recherche du control dont le parent est l'Univers Ce qui ne marche pas si il y a un sous-container (example tabCtrl,UniverLocal etc ...)

Definition at line 283 of file picking.cpp.

References BOOL(), ce, MyTreeNode< T >::childs, controlContainer, controlHover, MyTreeNode< T >::elem, faceContainer, faceHover, Control::faceNode, FaceNode, Control::Find(), MyList< MyTreeNode * >::i, ControlEngine::masterContainer, MyTreeNode< T >::parent, and ControlEngine::univers.

Referenced by Test().

void Picking::OnLButtonUp ( )

Definition at line 104 of file picking.cpp.

References controlHover, faceHover, EventMouse::left, StateMouse::leftBtn, EventControl::mouse, Control::onControl, and EventMouseButton::up.

Referenced by EventInertia::Stop().

void Picking::OnMButtonUp ( )

Definition at line 110 of file picking.cpp.

References controlHover, faceHover, EventMouse::mid, StateMouse::midBtn, EventControl::mouse, Control::onControl, and EventMouseButton::up.

Referenced by EventInertia::Stop().

void Picking::OnMouseMove | ( | int | x,
 |  | int | y
 | ) |

Definition at line 91 of file picking.cpp.

References controlHover, faceHover, Control::OnMouseMove(), and SetMousePos().

Referenced by EventInertia::OnInertia().

void Picking::OnMouseWheel ( int delta )

Definition at line 98 of file picking.cpp.

References controlHover, faceHover, Control::OnMouseWheel(), and SetDeltaWheel().

void Picking::OnRButtonUp ( )

Definition at line 116 of file picking.cpp.

References controlHover, faceHover, EventControl::mouse, Control::onControl, EventMouse::right, StateMouse::rightBtn, and EventMouseButton::up.

Referenced by EventInertia::Stop().

void Picking::operator= ( Picking & scr )

Definition at line 65 of file picking.cpp.

References controlContainer, controlHover, faceContainer, faceHover, isMoving, oldMouse, src, and zDist.

void Picking::ResetCurrent ( )

Definition at line 48 of file picking.cpp.

References controlContainer, controlHover, faceContainer, and faceHover.

Referenced by TreeView::OnNextFrame(), and Picking().

void Picking::ResetLast ( )

A utitiser si un control a ete suprimé et qu'il avais le focus

pb d'interblocage sinon ==> FaceOverOut

Definition at line 40 of file picking.cpp.

References lastControlContainer, lastControlHover, lastFaceContainer, and lastFaceHover.

Referenced by Picking().

void Picking::SetDeltaWheel ( int delta )

place le delta wheel de la souris

Definition at line 84 of file picking.cpp.

References StateMouse::wheelDelta, and StateMouse::wheelVal.

Referenced by OnMouseWheel(), and ControlEngine::Proc().

void Picking::SetMousePos | ( | int | x,
 |  | int | y
 | ) |

place les coordonnée de la souris

Definition at line 77 of file picking.cpp.

References isMoving, oldMouse, StateMouse::pos, and Point2D< int >::Set().

Referenced by OnMouseMove(), and ControlEngine::Proc().

BOOL Picking::Test ( )

test OpenGL du picking

Definition at line 158 of file picking.cpp.

References MyString::AddFormat(), BOOL(), bufferSelect, ce, MyTreeNode< T >::childs, controlHover, ControlEngine::DrawScene(), ControlEngine::dyWin, MyTreeNode< T >::elem, ControlEngine::enablePicking, faceHover, Control::faceNode, Control::Find(), FindContainer(), MyString::Format(), MyList< MyTreeNode * >::GetNbElem(), GLuint(), Screen::hWnd, MyList< MyTreeNode * >::i, IDC_STATIC_PICKING_FULL, IDC_STATIC_PICKING_SELECTED, IDC_STATIC_PICKING_SELECTED_TITLE, MAX_BUFFER_SELECT, ControlEngine::monitor, Face::name, Control::name, StateMouse::pos, ControlEngine::screenConfig, MyDebug::SendEvent(), ControlEngine::SetPerspective(), ControlEngine::univers, UpdateLast(), ControlEngine::viewPort, Point2D< int >::x, Point2D< int >::y, and zDist.

Referenced by ControlEngine::Draw().

void Picking::UpdateLast ( )

Mise a jour des derniers.

Definition at line 57 of file picking.cpp.

References controlContainer, controlHover, faceContainer, faceHover, lastControlContainer, lastControlHover, lastFaceContainer, and lastFaceHover.

Referenced by Test().

Member Data Documentation

Control* Picking::controlContainer

control sélectioné

Definition at line 48 of file picking.h.

Referenced by FindContainer(), operator=(), ControlEngine::Proc(), ResetCurrent(), and UpdateLast().

Control* Picking::controlHover

control survolé

Definition at line 47 of file picking.h.

Referenced by FindContainer(), TreeView::OnClick(), OnLButtonUp(), OnMButtonUp(), OnMouseMove(), OnMouseWheel(), OnRButtonUp(), operator=(), ControlEngine::Proc(), ResetCurrent(), Test(), and UpdateLast().

int Picking::faceContainer

face du control sélectioné

Definition at line 50 of file picking.h.

Referenced by FindContainer(), operator=(), ControlEngine::Proc(), ResetCurrent(), and UpdateLast().

int Picking::faceHover

face du control survolé

Definition at line 49 of file picking.h.

Referenced by FindContainer(), OnLButtonUp(), OnMButtonUp(), OnMouseMove(), OnMouseWheel(), OnRButtonUp(), operator=(), ControlEngine::Proc(), ResetCurrent(), Test(), and UpdateLast().

BOOL Picking::isMoving

les coordonée on est changé depuis la derniere fois

Definition at line 52 of file picking.h.

Referenced by operator=(), Picking(), ControlEngine::Proc(), and SetMousePos().

Control* Picking::lastControlContainer

dernier control container utilisé

Definition at line 43 of file picking.h.

Referenced by ResetLast(), and UpdateLast().

Control* Picking::lastControlHover

derniere control survolé utilisé

Definition at line 42 of file picking.h.

Referenced by ResetLast(), and UpdateLast().

int Picking::lastFaceContainer

derniere face container utilisé

Definition at line 45 of file picking.h.

Referenced by ResetLast(), and UpdateLast().

int Picking::lastFaceHover

derniere face survolé utilisé

Definition at line 44 of file picking.h.

Referenced by ResetLast(), and UpdateLast().

StateMouse Picking::mouse

Definition at line 46 of file picking.h.

Referenced by ControlEngine::DrawCursors(), ControlEngine::DrawLight(), Control::OnMouseMove(), ControlEngine::Proc(), and EventInertia::Start().

StateMouse Picking::oldMouse

infos / souris

Definition at line 46 of file picking.h.

Referenced by Control::OnMouseMove(), operator=(), and SetMousePos().

double Picking::zDist

distance z observateur <=> objet 3D

Definition at line 51 of file picking.h.

Referenced by operator=(), Picking(), Control::ScreenMove(), Control::ScreenMoveTo(), and Test().

The documentation for this class was generated from the following files:
  • picking.h
  • picking.cpp
Generated on Fri Aug 20 19:21:30 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Picking Member List

This is the complete list of members for Picking, including all inherited members.
controlContainer | Picking
controlHover | Picking
faceContainer | Picking
faceHover | Picking
FindContainer() | Picking
isMoving | Picking
lastControlContainer | Picking
lastControlHover | Picking
lastFaceContainer | Picking
lastFaceHover | Picking
mouse | Picking
oldMouse | Picking
OnLButtonUp() | Picking
OnMButtonUp() | Picking
OnMouseMove(int x, int y) | Picking
OnMouseWheel(int delta) | Picking
OnRButtonUp() | Picking
operator=(Picking &scr) | Picking
Picking() | Picking
ResetCurrent() | Picking
ResetLast() | Picking
SetDeltaWheel(int delta) | Picking
SetMousePos(int x, int y) | Picking
Test() | Picking
UpdateLast() | Picking
zDist | Picking
Generated on Fri Aug 20 19:21:30 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplatePoint1D< T > class Reference

Point1D< T > Class Template Reference

un point de 1 dimmentions (utils pour les interpolation lineaire) More...

#include <trigo.h>

List of all members.

Public Member Functions

Point1D ()
Point1D (T _value)
void | Zero ()
BOOL | operator== (Point1D< T > &src)
void | operator= (Point1D< T > &src)
void | operator= (T _value)
T | operator+ (T _value)
T | operator- (T _value)
double | operator/ (double coef)
double | operator * (double coef)
operator T () const
double | LinearInterpolation (T value1, T value2, double alpha)

Public Attributes

T | value

Detailed Description

template<class T>
class Point1D< T >

un point de 1 dimmentions (utils pour les interpolation lineaire)

Definition at line 46 of file trigo.h.

Constructor & Destructor Documentation

template<class T>
Point1D< T >::Point1D ( ) [inline]

Definition at line 52 of file trigo.h.

References Point1D< T >::Zero().

template<class T>
Point1D< T >::Point1D ( T _value ) [inline]

Definition at line 53 of file trigo.h.

Member Function Documentation

template<class T>
double Point1D< T >::LinearInterpolation | ( | T | value1,
 |  | T | value2,
 |  | double | alpha
 | ) |

Definition at line 256 of file trigo.h.

References alpha.

template<class T>
double Point1D< T >::operator * ( double coef ) [inline]

Definition at line 65 of file trigo.h.

template<class T>
Point1D< T >::operator T ( ) const [inline]

Definition at line 66 of file trigo.h.

template<class T>
T Point1D< T >::operator+ ( T _value ) [inline]

Definition at line 62 of file trigo.h.

References t.

template<class T>
T Point1D< T >::operator- ( T _value ) [inline]

Definition at line 63 of file trigo.h.

References t.

template<class T>
double Point1D< T >::operator/ ( double coef ) [inline]

Definition at line 64 of file trigo.h.

template<class T>
void Point1D< T >::operator= ( T _value ) [inline]

Definition at line 57 of file trigo.h.

template<class T>
void Point1D< T >::operator= ( Point1D< T > & src ) [inline]

Definition at line 56 of file trigo.h.

References src.

template<class T>
BOOL Point1D< T >::operator== ( Point1D< T > & src ) [inline]

Definition at line 55 of file trigo.h.

References BOOL(), and src.

template<class T>
void Point1D< T >::Zero ( ) [inline]

Definition at line 54 of file trigo.h.

Referenced by Point1D< T >::Point1D().

Member Data Documentation

template<class T>
T Point1D< T >::value

Definition at line 49 of file trigo.h.

The documentation for this class was generated from the following file:
  • trigo.h
Generated on Fri Aug 20 19:21:30 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Point1D< T > Member List

This is the complete list of members for Point1D< T >, including all inherited members.
LinearInterpolation(T value1, T value2, double alpha) | Point1D< T > |
operator *(double coef) | Point1D< T > | [inline]
operator T() const | Point1D< T > | [inline]
operator+(T _value) | Point1D< T > | [inline]
operator-(T _value) | Point1D< T > | [inline]
operator/(double coef) | Point1D< T > | [inline]
operator=(Point1D< T > &src) | Point1D< T > | [inline]
operator=(T _value) | Point1D< T > | [inline]
operator==(Point1D< T > &src) | Point1D< T > | [inline]
Point1D() | Point1D< T > | [inline]
Point1D(T _value) | Point1D< T > | [inline]
value | Point1D< T > |
Zero() | Point1D< T > | [inline]
Generated on Fri Aug 20 19:21:30 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplatePoint2D< T > class Reference

Point2D< T > Class Template Reference

un point de 2 dimmentions More...

#include <trigo.h>

List of all members.

Public Member Functions

Point2D ()
Point2D (T _x, T _y)
void | Set (T _x, T _y)
void | Zero ()
BOOL | operator== (Point2D< T > &src)
BOOL | operator!= (Point2D< T > &src)
void | operator= (Point3D< T > &src)
void | operator= (Point2D< T > &src)
void | operator+= (Point2D< T > &src)
Point2D< T > | operator- (Point2D< T > &src)
Point2D< T > | operator+ (Point2D< T > &src)
Point2D< T > | operator * (double coef)
Point2D< T > | operator/ (double coef)
void | operator/= (double coef)
void | operator *= (double coef)
double | Power ()
BOOL | IsOnSegment (Point2D< T > &a, Point2D< T > &b, double *alpha=NULL)
BOOL | IsOnLine (Point2D< T > &a, Point2D< T > &b, double *alpha=NULL, double precision=PRECISION)
BOOL | IsOnTriangle (Point2D< T > &a, Point2D< T > &b, Point2D< T > &c, double *alphaBC, double *alphaAPP, Point2D< T > *pp=NULL)
Determine si un point (p) est contenu dans un triangle [abc].

BOOL | IsOnQuadrilatere (Point2D< T > &a, Point2D< T > &b, Point2D< T > &c, Point2D< T > &d, double *alphaX=NULL, double *alphaY=NULL)
Le point fait il partie du quadrilatere ?

BOOL | IsOnRectangle (Point2D< T > &a, Point2D< T > &c, double *alphaX=NULL, double *alphaY=NULL)
Le point fait il partie du rectangle delimité par les points a et d?

BOOL | GetRelativePtOnQuadrilatere (Point2D< T > &a, Point2D< T > &b, Point2D< T > &c, Point2D< T > &d, double *deltaX, double *deltaY)
Calcul les "coordonnée local relative" d'un point p dans un quadrilatere [abcd].

BOOL | GetRelativePtOn2Lines (Point2D< T > &a, Point2D< T > &b, Point2D< T > &c, Point2D< T > &d, double *alpha)
void | ToNormalVector (BOOL asTrigo=TRUE)

Public Attributes

T | x
T | y

Detailed Description

template<class T>
class Point2D< T >

un point de 2 dimmentions

Definition at line 73 of file trigo.h.

Constructor & Destructor Documentation

template<class T>
Point2D< T >::Point2D ( ) [inline]

Definition at line 80 of file trigo.h.

template<class T>
Point2D< T >::Point2D | ( | T | _x,
 |  | T | _y
 | ) | [inline]

Definition at line 81 of file trigo.h.

Member Function Documentation

template<class T>
BOOL Point2D< T >::GetRelativePtOn2Lines | ( | Point2D< T > & | a,
 |  | Point2D< T > & | b,
 |  | Point2D< T > & | c,
 |  | Point2D< T > & | d,
 |  | double * | alpha
 | ) |

Definition at line 473 of file trigo.h.

References alpha, BOOL(), c, Point2D< T >::x, and Point2D< T >::y.

Referenced by Point2D< T >::GetRelativePtOnQuadrilatere().

template<class T>
BOOL Point2D< T >::GetRelativePtOnQuadrilatere | ( | Point2D< T > & | a,
 |  | Point2D< T > & | b,
 |  | Point2D< T > & | c,
 |  | Point2D< T > & | d,
 |  | double * | alphaX,
 |  | double * | alphaY
 | ) |

Calcul les "coordonnée local relative" d'un point p dans un quadrilatere [abcd].

Ex.: Example "rectangulaire" resultat pp={2.5,2.5}

Point2D<float> a,b,c,d,p,pp;
a.Set(0,0);
b.Set(10,0);
c.Set(10,10);
c.Set(0,10);
p.Set(2.5,2.5);
BOOL res = p.GetRelativePtOnQuadrilatere(&a,&b,&c,&d,&pp);

Ex.: Example "quelquonque" resultat pp={2.5,2.5}

Point2D<float> a,b,c,d,p,pp;
a.Set(0,0);
b.Set(20,0);
c.Set(10,20);
c.Set(0,10);
p.Set(2.5,2.5);
BOOL res = p.GetRelativePbOnQuadrilatere(&a,&b,&c,&d,&pp);

Definition at line 460 of file trigo.h.

References BOOL(), c, and Point2D< T >::GetRelativePtOn2Lines().

Referenced by Primitive::GetLocalPos(), and Point2D< T >::IsOnQuadrilatere().

template<class T>
BOOL Point2D< T >::IsOnLine | ( | Point2D< T > & | a,
 |  | Point2D< T > & | b,
 |  | double * | alpha = NULL,
 |  | double | precision = PRECISION
 | ) |

Definition at line 326 of file trigo.h.

References alpha, and BOOL().

Referenced by Point2D< T >::IsOnSegment().

template<class T>
BOOL Point2D< T >::IsOnQuadrilatere | ( | Point2D< T > & | a,
 |  | Point2D< T > & | b,
 |  | Point2D< T > & | c,
 |  | Point2D< T > & | d,
 |  | double * | alphaX = NULL,
 |  | double * | alphaY = NULL
 | ) |

Le point fait il partie du quadrilatere ?

Definition at line 425 of file trigo.h.

References BOOL(), c, Point2D< T >::GetRelativePtOnQuadrilatere(), and res.

Referenced by Point2D< T >::IsOnRectangle().

template<class T>
BOOL Point2D< T >::IsOnRectangle | ( | Point2D< T > & | a,
 |  | Point2D< T > & | c,
 |  | double * | alphaX = NULL,
 |  | double * | alphaY = NULL
 | ) |

Le point fait il partie du rectangle delimité par les points a et d?

Definition at line 416 of file trigo.h.

References b, BOOL(), c, and Point2D< T >::IsOnQuadrilatere().

template<class T>
BOOL Point2D< T >::IsOnSegment | ( | Point2D< T > & | a,
 |  | Point2D< T > & | b,
 |  | double * | alpha = NULL
 | ) |

Definition at line 317 of file trigo.h.

References alpha, BOOL(), and Point2D< T >::IsOnLine().

Referenced by Point2D< T >::IsOnTriangle().

template<class T>
BOOL Point2D< T >::IsOnTriangle | ( | Point2D< T > & | a,
 |  | Point2D< T > & | b,
 |  | Point2D< T > & | c,
 |  | double * | alphaBC,
 |  | double * | alphaAPP,
 |  | Point2D< T > * | pp = NULL
 | ) |

Determine si un point (p) est contenu dans un triangle [abc].

Si les pointeur alhpa sont données, il donne la projection sur les segments qui compose le tirangle en pourcentage par rapport a leur premier sommet.

Point2D<float> a,b,c,p,pp;
a.Set(0,0);
b.Set(10,0);
c.Set(0,10);
p.Set(2,2);
double alphaBC,alphaAPP;
BOOL res = p.IsOnTriangle(&a,&b,&c,&alphaBC,&alphaAPP,&pp);

Definition at line 393 of file trigo.h.

References BOOL(), c, LinearEqu2D< T >::GetCrossPtFromLine(), and Point2D< T >::IsOnSegment().

Referenced by Point3D< T >::IsOnTriangle().

template<class T>
Point2D< T > Point2D< T >::operator * ( double coef )

Definition at line 283 of file trigo.h.

References Point2D< T >::x, and Point2D< T >::y.

template<class T>
void Point2D< T >::operator *= ( double coef ) [inline]

Definition at line 94 of file trigo.h.

template<class T>
BOOL Point2D< T >::operator!= ( Point2D< T > & src ) [inline]

Definition at line 85 of file trigo.h.

template<class T>
Point2D< T > Point2D< T >::operator+ ( Point2D< T > & src )

Definition at line 274 of file trigo.h.

References src, Point2D< T >::x, and Point2D< T >::y.

template<class T>
void Point2D< T >::operator+= ( Point2D< T > & src ) [inline]

Definition at line 88 of file trigo.h.

template<class T>
Point2D< T > Point2D< T >::operator- ( Point2D< T > & src )

Definition at line 265 of file trigo.h.

References src, Point2D< T >::x, and Point2D< T >::y.

template<class T>
Point2D< T > Point2D< T >::operator/ ( double coef )

Definition at line 292 of file trigo.h.

References Point2D< T >::x, and Point2D< T >::y.

template<class T>
void Point2D< T >::operator/= ( double coef ) [inline]

Definition at line 93 of file trigo.h.

template<class T>
void Point2D< T >::operator= ( Point2D< T > & src ) [inline]

Definition at line 87 of file trigo.h.

template<class T>
void Point2D< T >::operator= ( Point3D< T > & src )

Definition at line 301 of file trigo.h.

References src.

template<class T>
BOOL Point2D< T >::operator== ( Point2D< T > & src ) [inline]

Definition at line 84 of file trigo.h.

template<class T>
double Point2D< T >::Power ( ) [inline]

Definition at line 95 of file trigo.h.

template<class T>
void Point2D< T >::Set | ( | T | _x,
 |  | T | _y
 | ) | [inline]

Definition at line 82 of file trigo.h.

Referenced by Cursor::GetHotSpot(), Primitive::GetLocalPos(), and Point2D< LayoutDouble >::Point2D().

template<class T>
void Point2D< T >::ToNormalVector ( BOOL asTrigo = TRUE )

Definition at line 361 of file trigo.h.

template<class T>
void Point2D< T >::Zero ( ) [inline]

Definition at line 83 of file trigo.h.

Referenced by Point2D< LayoutDouble >::Point2D().

Member Data Documentation

template<class T>
T Point2D< T >::x

Definition at line 76 of file trigo.h.

Referenced by Region::Compute(), ControlEngine::DrawCursor(), Inertia::GetMoyValue(), Point2D< T >::GetRelativePtOn2Lines(), ResizingAndRotateControl::OnHover(), EventInertia::OnInertia(), Slider::OnMouseMove(), Tutorial::BaseDemo::OnWinMove(), Point2D< T >::operator *(), Point2D< T >::operator+(), Point2D< T >::operator-(), Point2D< T >::operator/(), and Text3D::SetClipping().

template<class T>
T Point2D< T >::y

Definition at line 77 of file trigo.h.

Referenced by Region::Compute(), ControlEngine::DrawCursor(), Inertia::GetMoyValue(), Point2D< T >::GetRelativePtOn2Lines(), ResizingAndRotateControl::OnHover(), EventInertia::OnInertia(), Tutorial::BaseDemo::OnWinMove(), Point2D< T >::operator *(), Point2D< T >::operator+(), Point2D< T >::operator-(), Point2D< T >::operator/(), and Text3D::SetClipping().

The documentation for this class was generated from the following file:
  • trigo.h
Generated on Fri Aug 20 19:21:30 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Point2D< T > Member List

This is the complete list of members for Point2D< T >, including all inherited members.
GetRelativePtOn2Lines(Point2D< T > &a, Point2D< T > &b, Point2D< T > &c, Point2D< T > &d, double *alpha) | Point2D< T > |
GetRelativePtOnQuadrilatere(Point2D< T > &a, Point2D< T > &b, Point2D< T > &c, Point2D< T > &d, double *deltaX, double *deltaY) | Point2D< T > |
IsOnLine(Point2D< T > &a, Point2D< T > &b, double *alpha=NULL, double precision=PRECISION) | Point2D< T > |
IsOnQuadrilatere(Point2D< T > &a, Point2D< T > &b, Point2D< T > &c, Point2D< T > &d, double *alphaX=NULL, double *alphaY=NULL) | Point2D< T > |
IsOnRectangle(Point2D< T > &a, Point2D< T > &c, double *alphaX=NULL, double *alphaY=NULL) | Point2D< T > |
IsOnSegment(Point2D< T > &a, Point2D< T > &b, double *alpha=NULL) | Point2D< T > |
IsOnTriangle(Point2D< T > &a, Point2D< T > &b, Point2D< T > &c, double *alphaBC, double *alphaAPP, Point2D< T > *pp=NULL) | Point2D< T > |
operator *(double coef) | Point2D< T > |
operator *=(double coef) | Point2D< T > | [inline]
operator!=(Point2D< T > &src) | Point2D< T > | [inline]
operator+(Point2D< T > &src) | Point2D< T > |
operator+=(Point2D< T > &src) | Point2D< T > | [inline]
operator-(Point2D< T > &src) | Point2D< T > |
operator/(double coef) | Point2D< T > |
operator/=(double coef) | Point2D< T > | [inline]
operator=(Point3D< T > &src) | Point2D< T > |
operator=(Point2D< T > &src) | Point2D< T > | [inline]
operator==(Point2D< T > &src) | Point2D< T > | [inline]
Point2D() | Point2D< T > | [inline]
Point2D(T _x, T _y) | Point2D< T > | [inline]
Power() | Point2D< T > | [inline]
Set(T _x, T _y) | Point2D< T > | [inline]
ToNormalVector(BOOL asTrigo=TRUE) | Point2D< T > |
x | Point2D< T > |
y | Point2D< T > |
Zero() | Point2D< T > | [inline]
Generated on Fri Aug 20 19:21:30 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplatePoint3D< T > class Reference

Point3D< T > Class Template Reference

un point de 3 dimmentions More...

#include <trigo.h>

List of all members.

Public Member Functions

Point3D ()
Point3D (T _x, T _y, T _z)
void | Set (T _x, T _y, T _z=0)
void | Zero ()
BOOL | IsEqual (T _x, T _y, T _z)
BOOL | operator== (Point3D< T > &src)
void | operator= (Point3D< T > &src)
void | Add (T _x, T _y, T _z)
void | operator+= (Point3D< T > &src)
void | operator/= (double divide)
void | glRotated (double ratio)
void | glRotated ()
void | glTranslated (double ratio)
void | glTranslated ()
void | glRasterPos ()
void | glScale ()
double | Power ()
Point3D< T > | QuaternionRotate (Point3D< T > &rotate)
void | operator= (Point2D< T > &src)
BOOL | IsOnTriangle (Point3D< T > &a, Point3D< T > &b, Point3D< T > &c)
BOOL | IsNotNull ()

Public Attributes

T | x
T | y
T | z

Detailed Description

template<class T>
class Point3D< T >

un point de 3 dimmentions

Definition at line 116 of file trigo.h.

Constructor & Destructor Documentation

template<class T>
Point3D< T >::Point3D ( ) [inline]

Definition at line 124 of file trigo.h.

template<class T>
Point3D< T >::Point3D | ( | T | _x,
 |  | T | _y,
 |  | T | _z
 | ) | [inline]

Definition at line 125 of file trigo.h.

Member Function Documentation

template<class T>
void Point3D< T >::Add | ( | T | _x,
 |  | T | _y,
 |  | T | _z
 | ) |

Definition at line 577 of file trigo.h.

template<class T>
void Point3D< T >::glRasterPos ( ) [inline]

Definition at line 140 of file trigo.h.

template<class T>
void Point3D< T >::glRotated ( )

Definition at line 614 of file trigo.h.

Referenced by Point3D< T >::glRotated().

template<class T>
void Point3D< T >::glRotated ( double ratio )

Definition at line 601 of file trigo.h.

References Point3D< T >::glRotated().

Referenced by Object3D::DrawVector(), and Cursor::DrawVector().

template<class T>
void Point3D< T >::glScale ( ) [inline]

Definition at line 141 of file trigo.h.

template<class T>
void Point3D< T >::glTranslated ( )

Definition at line 629 of file trigo.h.

template<class T>
void Point3D< T >::glTranslated ( double ratio )

Definition at line 622 of file trigo.h.

Referenced by ControlEngine::Draw2DText().

template<class T>
BOOL Point3D< T >::IsEqual | ( | T | _x,
 |  | T | _y,
 |  | T | _z
 | ) | [inline]

Definition at line 129 of file trigo.h.

template<class T>
BOOL Point3D< T >::IsNotNull ( ) [inline]

Definition at line 147 of file trigo.h.

Referenced by Angles::Add().

template<class T>
BOOL Point3D< T >::IsOnTriangle | ( | Point3D< T > & | a,
 |  | Point3D< T > & | b,
 |  | Point3D< T > & | c
 | ) |

Definition at line 544 of file trigo.h.

References BOOL(), c, Point2D< T >::IsOnTriangle(), and Point3D< T >::z.

template<class T>
void Point3D< T >::operator+= ( Point3D< T > & src )

Definition at line 585 of file trigo.h.

References src.

template<class T>
void Point3D< T >::operator/= ( double divide )

Definition at line 593 of file trigo.h.

template<class T>
void Point3D< T >::operator= ( Point2D< T > & src )

Definition at line 561 of file trigo.h.

References src.

template<class T>
void Point3D< T >::operator= ( Point3D< T > & src )

Definition at line 569 of file trigo.h.

References src.

template<class T>
BOOL Point3D< T >::operator== ( Point3D< T > & src ) [inline]

Definition at line 130 of file trigo.h.

template<class T>
double Point3D< T >::Power ( ) [inline]

Definition at line 143 of file trigo.h.

template<class T>
Point3D< T > Point3D< T >::QuaternionRotate ( Point3D< T > & rotate )

Definition at line 532 of file trigo.h.

Referenced by Control::RotateQuaternion().

template<class T>
void Point3D< T >::Set | ( | T | _x,
 |  | T | _y,
 |  | T | _z = 0
 | ) | [inline]

Definition at line 127 of file trigo.h.

Referenced by BasicText3D::GetBox(), and Point3D< LayoutDouble >::Point3D().

template<class T>
void Point3D< T >::Zero ( ) [inline]

Definition at line 128 of file trigo.h.

Referenced by Point3D< LayoutDouble >::Point3D().

Member Data Documentation

template<class T>
T Point3D< T >::x

Definition at line 119 of file trigo.h.

Referenced by Region::Compute(), ControlEngine::Draw2DText(), ControlEngine::ProjectObjectToWindow(), ControlEngine::ProjectWindowToObject(), ControlEngine::ScreenShot(), and Region::Use().

template<class T>
T Point3D< T >::y

Definition at line 120 of file trigo.h.

Referenced by Region::Compute(), ControlEngine::Draw2DText(), ControlEngine::ProjectObjectToWindow(), ControlEngine::ProjectWindowToObject(), ControlEngine::ScreenShot(), and Region::Use().

template<class T>
T Point3D< T >::z

Definition at line 121 of file trigo.h.

Referenced by Region::Compute(), ControlEngine::Draw2DText(), Point3D< T >::IsOnTriangle(), ControlEngine::ProjectObjectToWindow(), ControlEngine::ProjectWindowToObject(), and ControlEngine::ScreenShot().

The documentation for this class was generated from the following file:
  • trigo.h
Generated on Fri Aug 20 19:21:31 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Point3D< T > Member List

This is the complete list of members for Point3D< T >, including all inherited members.
Add(T _x, T _y, T _z) | Point3D< T > |
glRasterPos() | Point3D< T > | [inline]
glRotated(double ratio) | Point3D< T > |
glRotated() | Point3D< T > |
glScale() | Point3D< T > | [inline]
glTranslated(double ratio) | Point3D< T > |
glTranslated() | Point3D< T > |
IsEqual(T _x, T _y, T _z) | Point3D< T > | [inline]
IsNotNull() | Point3D< T > | [inline]
IsOnTriangle(Point3D< T > &a, Point3D< T > &b, Point3D< T > &c) | Point3D< T > |
operator+=(Point3D< T > &src) | Point3D< T > |
operator/=(double divide) | Point3D< T > |
operator=(Point3D< T > &src) | Point3D< T > |
operator=(Point2D< T > &src) | Point3D< T > |
operator==(Point3D< T > &src) | Point3D< T > | [inline]
Point3D() | Point3D< T > | [inline]
Point3D(T _x, T _y, T _z) | Point3D< T > | [inline]
Power() | Point3D< T > | [inline]
QuaternionRotate(Point3D< T > &rotate) | Point3D< T > |
Set(T _x, T _y, T _z=0) | Point3D< T > | [inline]
x | Point3D< T > |
y | Point3D< T > |
z | Point3D< T > |
Zero() | Point3D< T > | [inline]
Generated on Fri Aug 20 19:21:31 2004 for 3d Controls by doxygen 1.3.6


3d Controls: PolygonMode class Reference

PolygonMode Class Reference

Gestion du mode d'affichage des polygons. More...

#include <polygonMode.h>

List of all members.

Public Member Functions

PolygonMode ()
void | Use (PolygonModeType _front, PolygonModeType _back)
void | Use ()
void | ToString (MyString &src)
void | Traduce (PolygonModeType mode, MyString &dest)

Public Attributes

PolygonModeType front
PolygonModeType back

Detailed Description

Gestion du mode d'affichage des polygons.

Definition at line 36 of file polygonMode.h.

Constructor & Destructor Documentation

PolygonMode::PolygonMode ( ) [inline]

Definition at line 40 of file polygonMode.h.

References back, fill, and front.

Member Function Documentation

void PolygonMode::ToString ( MyString & src ) [inline]

Definition at line 59 of file polygonMode.h.

References back, front, src, and Traduce().

void PolygonMode::Traduce | ( | PolygonModeType | mode,
 |  | MyString & | dest
 | ) | [inline]

Definition at line 67 of file polygonMode.h.

References fill, and point.

Referenced by ToString().

void PolygonMode::Use ( ) [inline]

Definition at line 53 of file polygonMode.h.

References back, and front.

Referenced by Use().

void PolygonMode::Use | ( | PolygonModeType | _front,
 |  | PolygonModeType | _back
 | ) | [inline]

Definition at line 46 of file polygonMode.h.

References back, front, and Use().

Referenced by Univers::OnKeyDown(), and ControlEngine::Setup().

Member Data Documentation

PolygonModeType PolygonMode::back

Definition at line 39 of file polygonMode.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), Univers::OnKeyDown(), PolygonMode(), ToString(), Use(), and ControlEngine::~ControlEngine().

PolygonModeType PolygonMode::front

Definition at line 39 of file polygonMode.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), Univers::OnKeyDown(), PolygonMode(), ToString(), Use(), and ControlEngine::~ControlEngine().

The documentation for this class was generated from the following file:
  • polygonMode.h
Generated on Fri Aug 20 19:21:40 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

PolygonMode Member List

This is the complete list of members for PolygonMode, including all inherited members.
back | PolygonMode |
front | PolygonMode |
PolygonMode() | PolygonMode | [inline]
ToString(MyString &src) | PolygonMode | [inline]
Traduce(PolygonModeType mode, MyString &dest) | PolygonMode | [inline]
Use(PolygonModeType _front, PolygonModeType _back) | PolygonMode | [inline]
Use() | PolygonMode | [inline]
Generated on Fri Aug 20 19:21:40 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Primitive class Reference

Primitive Class Reference

Gestion des Primitive graphics (ajout de face, de cube, etc ...). More...

#include <primitive.h>

List of all members.

Public Member Functions

Primitive ()
~Primitive ()
void | Push ()
Empile le node en cours.

void | Pop ()
Depile le node en cours.

FaceNode * Peek ()
Donne le node en cours.

FaceNode * | GoTo (int childNumber)
FaceNode * | GoTo (FaceNode *node)
FaceNode * GoToParent ()
void | ViewDebug (FaceNode *node=NULL)
Affiche dans une messageBox avec un resumée de l'arborecence logic.

BOOL | Draw (BOOL isPicking)
BOOL | Draw (FaceNode *node, BOOL isPicking)
FaceNode * | Find (int idControl, int idFace, FaceNode *node=NULL)
void | BeginContainer (int idControl, double xConstCenter, double xPercentCenter, double yConstCenter, double yPercentCenter, double xConstSize, double xPercentSize, double yConstSize, double yPercentSize)
void | EndContainer ()
FaceNode * | AddFace (char *name, int idControl, int idFace, BOOL view)
FaceNode * | AddFace (char *name, int idControl, int idFace, BOOL view, double xConstCenter, double xPercentCenter, double yConstCenter, double yPercentCenter, double zConstCenter, double xConstSize, double xPercentSize, double yConstSize, double yPercentSize)
FaceNode * | AddBox (char *name, int idControl, GLdouble depth, BOOL viewBack)
ajoute une boite

FaceNode * | AddBox (char *name, int idControl, GLdouble *depth, BOOL viewBack)
Point2D< double > | GetLocalPos (FaceNode *faceNode, Point2D< double > absolutePos)
Donne la position local etant donnée un faceNode et un point en absolue.

void | GetCorners (FaceNode *faceNode, Point3D< double > *points)
void | ComputeLayout (FaceNode *faceNode)
BOOL | ReOrderForBlending (FaceNode *faceNode)
experimental

void | ReOrderForBlending ()

Public Attributes

MyTree< Face > tree

Detailed Description

Gestion des Primitive graphics (ajout de face, de cube, etc ...).

Definition at line 35 of file primitive.h.

Constructor & Destructor Documentation

Primitive::Primitive ( )

Definition at line 27 of file primitive.cpp.

Primitive::~Primitive ( )

Definition at line 32 of file primitive.cpp.

References MyTree< Face >::SuprAll(), and tree.

Member Function Documentation

FaceNode * Primitive::AddBox | ( | char * | name,
 |  | int | idControl,
 |  | GLdouble * | depth,
 |  | BOOL | viewBack
 | ) |

Definition at line 311 of file primitive.cpp.

References AddBox(), and FaceNode.

FaceNode * Primitive::AddBox | ( | char * | name,
 |  | int | idControl,
 |  | GLdouble | depth,
 |  | BOOL | viewBack
 | ) |

ajoute une boite

Une boite est contenu dans une face non visible afin de pouvoir faire des rotation et translation libre Remarque, elle prend les dimentions de sa face englobante

// example d'utilisation
primitive.AddFace("boite",1,0,0,0.5,0,0.5,0,50,0,50,FALSE);
FaceNode *node = primitive.AddBox(1,2,50);
node->childs[FACE_FRONT]->textures = ...

Definition at line 305 of file primitive.cpp.

References FaceNode.

Referenced by AddBox().

FaceNode * Primitive::AddFace | ( | char * | name,
 |  | int | idControl,
 |  | int | idFace,
 |  | BOOL | view,
 |  | double | xConstCenter,
 |  | double | xPercentCenter,
 |  | double | yConstCenter,
 |  | double | yPercentCenter,
 |  | double | zConstCenter,
 |  | double | xConstSize,
 |  | double | xPercentSize,
 |  | double | yConstSize,
 |  | double | yPercentSize
 | ) |

Definition at line 254 of file primitive.cpp.

References AddFace(), Face::ConfigDynamicLayout(), Face::ConfigStaticLayout(), MyTreeNode< T >::elem, FaceNode, and MyTreeNode< T >::parent.

FaceNode * Primitive::AddFace | ( | char * | name,
 |  | int | idControl,
 |  | int | idFace,
 |  | BOOL | view
 | ) |

Definition at line 247 of file primitive.cpp.

References MyTree< Face >::Add(), FaceNode, Face::Set(), and tree.

Referenced by AddFace(), BeginContainer(), Univers::Create(), Tip::Create(), Slider::Create(), MasterContainer::Create(), and Tutorial::FaceDemo::FaceDemo().

void Primitive::BeginContainer | ( | int | idControl,
 |  | double | xConstCenter,
 |  | double | xPercentCenter,
 |  | double | yConstCenter,
 |  | double | yPercentCenter,
 |  | double | xConstSize,
 |  | double | xPercentSize,
 |  | double | yConstSize,
 |  | double | yPercentSize
 | ) |

Definition at line 270 of file primitive.cpp.

References AddFace(), GoTo(), and Push().

void Primitive::ComputeLayout ( FaceNode * faceNode )

Definition at line 89 of file primitive.cpp.

References MyTreeNode< T >::elem, FaceNode, and MyTreeNode< T >::parent.

Referenced by TreeView::Draw(), and Slider::Refresh().

BOOL Primitive::Draw | ( | FaceNode * | node,
 |  | BOOL | isPicking
 | ) |

Definition at line 170 of file primitive.cpp.

References BOOL(), MyTreeNode< T >::childs, Face::ComputeLayout(), Draw(), Face::Draw(), MyTreeNode< T >::elem, FaceNode, MyListIterator< MyTreeNode * >::GetElem(), MyList< MyTreeNode * >::GetNbElem(), MyList< MyTreeNode * >::i, MyListIterator< MyTreeNode * >::More(), Face::MovingInside(), Face::ratioXY, Face::scale, Point3D< GLdouble >::x, and Point3D< GLdouble >::y.

BOOL Primitive::Draw ( BOOL isPicking )

Definition at line 162 of file primitive.cpp.

References BOOL(), MyTreeNode< T >::elem, FaceNode, MyTree< Face >::GetRoot(), and tree.

Referenced by Draw(), and ControlEngine::DrawScene().

void Primitive::EndContainer ( )

Definition at line 287 of file primitive.cpp.

References Pop().

FaceNode * Primitive::Find | ( | int | idControl,
 |  | int | idFace,
 |  | FaceNode * | node = NULL
 | ) |

Definition at line 233 of file primitive.cpp.

References MyTreeNode< T >::childs, MyTreeNode< T >::elem, FaceNode, MyListIterator< MyTreeNode * >::GetElem(), MyTree< Face >::GetRoot(), MyList< MyTreeNode * >::i, MyListIterator< MyTreeNode * >::More(), and tree.

Referenced by DebugStructProc().

void Primitive::GetCorners | ( | FaceNode * | faceNode,
 |  | Point3D< double > * | points
 | ) |

Definition at line 124 of file primitive.cpp.

References ControlEngine::ApplyScaleView(), ce, ControlEngine::depth, FaceNode, and points.

Referenced by Control::GetCorners(), and GetLocalPos().

Point2D< double > Primitive::GetLocalPos | ( | FaceNode * | faceNode,
 |  | Point2D< double > | absolutePos
 | ) |

Donne la position local etant donnée un faceNode et un point en absolue.

Definition at line 136 of file primitive.cpp.

References c, MyTreeNode< T >::elem, FaceNode, GetCorners(), Point2D< T >::GetRelativePtOnQuadrilatere(), p, and Point2D< T >::Set().

Referenced by Control::GetLocalPos().

FaceNode * Primitive::GoTo ( FaceNode * node )

Definition at line 52 of file primitive.cpp.

References FaceNode, MyTree< Face >::GoTo(), and tree.

FaceNode * Primitive::GoTo ( int childNumber )

Definition at line 47 of file primitive.cpp.

References FaceNode, MyTree< Face >::GoToChild(), and tree.

Referenced by TaskWindow::Add(), Tutorial::BaseDemo::BaseDemo(), BeginContainer(), Window::Create(), Title::Create(), TaskWindow::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), Tutorial::LayoutDemo::CreateTreeButton(), TreeView::Draw(), Tutorial::LayoutDemo::LayoutDemo(), ResizingAndRotateControl::OnHover(), ControlEngine::Push(), and Tutorial::UniversDemo::SetFace().

FaceNode * Primitive::GoToParent ( )

Definition at line 57 of file primitive.cpp.

References FaceNode, MyTree< Face >::GoToParent(), and tree.

Referenced by MsgBox::Create(), and Tutorial::LayoutDemo::CreateTreeButton().

FaceNode * Primitive::Peek ( )

Donne le node en cours.

Definition at line 62 of file primitive.cpp.

References FaceNode, MyList< FaceNode * >::GetNbElem(), and MyStack< FaceNode * >::Peek().

void Primitive::Pop ( )

Depile le node en cours.

Definition at line 42 of file primitive.cpp.

References MyTree< Face >::GoTo(), MyStack< FaceNode * >::Pop(), and tree.

Referenced by EndContainer(), ControlEngine::Pop(), and Tutorial::WindowDemo::WindowDemo().

void Primitive::Push ( )

Empile le node en cours.

Definition at line 37 of file primitive.cpp.

References MyTree< Face >::GetCurrent(), MyStack< FaceNode * >::Push(), and tree.

Referenced by BeginContainer(), and ControlEngine::Push().

void Primitive::ReOrderForBlending ( )

Definition at line 96 of file primitive.cpp.

References MyTree< Face >::GetRoot(), and tree.

Referenced by ReOrderForBlending().

BOOL Primitive::ReOrderForBlending ( FaceNode * faceNode )

experimental

Definition at line 102 of file primitive.cpp.

References MyListItem< T >::after, BOOL(), MyTreeNode< T >::childs, MyTreeNode< T >::elem, MyListItem< T >::elem, FaceNode, MyList< MyTreeNode * >::first, MyTreeNode< T >::MoveToLastChild(), and ReOrderForBlending().

void Primitive::ViewDebug ( FaceNode * node = NULL )

Affiche dans une messageBox avec un resumée de l'arborecence logic.

Definition at line 71 of file primitive.cpp.

References MyTreeNode< T >::childs, MyTreeNode< T >::elem, FaceNode, MyListIterator< MyTreeNode * >::GetElem(), MyTree< Face >::GetRoot(), MyList< MyTreeNode * >::i, level, MyListIterator< MyTreeNode * >::More(), and tree.

Referenced by Univers::OnKeyDown().

Member Data Documentation

MyTree<Face> Primitive::tree

Definition at line 43 of file primitive.h.

Referenced by AddFace(), DebugStructProc(), Draw(), Find(), GoTo(), GoToParent(), ValueEditors::MakeDebugControlStruct(), ValueEditors::MakeDebugFaceStruct(), Title::OnMax(), Pop(), Push(), ReOrderForBlending(), Control::SetParent(), ViewDebug(), and ~Primitive().

The documentation for this class was generated from the following files:
  • primitive.h
  • primitive.cpp
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Primitive Member List

This is the complete list of members for Primitive, including all inherited members.
AddBox(char *name, int idControl, GLdouble depth, BOOL viewBack) | Primitive
AddBox(char *name, int idControl, GLdouble *depth, BOOL viewBack) | Primitive
AddFace(char *name, int idControl, int idFace, BOOL view) | Primitive
AddFace(char *name, int idControl, int idFace, BOOL view, double xConstCenter, double xPercentCenter, double yConstCenter, double yPercentCenter, double zConstCenter, double xConstSize, double xPercentSize, double yConstSize, double yPercentSize) | Primitive
BeginContainer(int idControl, double xConstCenter, double xPercentCenter, double yConstCenter, double yPercentCenter, double xConstSize, double xPercentSize, double yConstSize, double yPercentSize) | Primitive
ComputeLayout(FaceNode *faceNode) | Primitive
Draw(BOOL isPicking) | Primitive
Draw(FaceNode *node, BOOL isPicking) | Primitive
EndContainer() | Primitive
Find(int idControl, int idFace, FaceNode *node=NULL) | Primitive
GetCorners(FaceNode *faceNode, Point3D< double > *points) | Primitive
GetLocalPos(FaceNode *faceNode, Point2D< double > absolutePos) | Primitive
GoTo(int childNumber) | Primitive
GoTo(FaceNode *node) | Primitive
GoToParent() | Primitive
Peek() | Primitive
Pop() | Primitive
Primitive() | Primitive
Push() | Primitive
ReOrderForBlending(FaceNode *faceNode) | Primitive
ReOrderForBlending() | Primitive
tree | Primitive
ViewDebug(FaceNode *node=NULL) | Primitive
~Primitive() | Primitive
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Recorder class Reference

Recorder Class Reference

#include <recorder.h>

List of all members.

Public Member Functions

Recorder ()
~Recorder ()
void | Zero ()
void | operator= (Recorder &src)
BOOL | BeginRecord (BOOL andExecute)
void | EndRecord ()
void | Play ()
BOOL | Delete ()

Constructor & Destructor Documentation

Recorder::Recorder ( )

Definition at line 22 of file recorder.cpp.

References Zero().

Recorder::~Recorder ( )

Definition at line 32 of file recorder.cpp.

References Delete().

Member Function Documentation

BOOL Recorder::BeginRecord ( BOOL andExecute )

Definition at line 42 of file recorder.cpp.

References BOOL(), and Delete().

Referenced by Cursor::Create(), ControlEngine::Draw(), and Material::Record().

BOOL Recorder::Delete ( )

Definition at line 61 of file recorder.cpp.

References BOOL(), and Zero().

Referenced by BeginRecord(), Face::Zero(), and ~Recorder().

void Recorder::EndRecord ( )

Definition at line 51 of file recorder.cpp.

Referenced by Cursor::Create(), ControlEngine::Draw(), and Material::Record().

void Recorder::operator= ( Recorder & src )

Definition at line 37 of file recorder.cpp.

References src.

void Recorder::Play ( )

Definition at line 56 of file recorder.cpp.

Referenced by Face::Draw(), ControlEngine::Draw(), and Material::Play().

void Recorder::Zero ( )

Definition at line 27 of file recorder.cpp.

Referenced by Cursor::ApplyType(), Delete(), and Recorder().

The documentation for this class was generated from the following files:
  • recorder.h
  • recorder.cpp
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Recorder Member List

This is the complete list of members for Recorder, including all inherited members.
BeginRecord(BOOL andExecute) | Recorder
Delete() | Recorder
EndRecord() | Recorder
operator=(Recorder &src) | Recorder
Play() | Recorder
Recorder() | Recorder
Zero() | Recorder
~Recorder() | Recorder
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Region class Reference

Region Class Reference

Gestion des region windows. More...

#include <region.h>

List of all members.

Public Member Functions

Region ()
void | Reset (int deltaXwin=0, int deltaYwin=0)
BOOL | Use (HWND hWnd)
void | NormalizeSens (POINT *tabPoints, int nbPt)
void | SetMinMax (POINT *tabPoints, int nbPt)
BOOL | AddElem (Point2D< GLdouble > pos, GLdouble *modelMatrix, GLdouble *projMatrix, GLint *viewPort)
BOOL | Compute (Point2D< GLdouble > pos, GLdouble *modelMatrix, GLdouble *projMatrix, GLint *viewPort, Point3D< double > *pt)

Public Attributes

BOOL | enable
BOOL | computeMinMax
MyList< Pt_3D_Double > points
int | xMin
int | xMax
int | yMin
int | yMax
int | zMin
int | zMax
int | nbOr
HRGN | hRgnBase

Detailed Description

Gestion des region windows.

Elle permet l'utilisation du mode cooperativeWindows ou elle detoure les object 3DS. Elle applique alors les API Windows sur les regions

Definition at line 38 of file region.h.

Constructor & Destructor Documentation

Region::Region ( )

Definition at line 22 of file region.cpp.

References computeMinMax, and Reset().

Member Function Documentation

BOOL Region::AddElem | ( | Point2D< GLdouble > | pos,
 |  | GLdouble * | modelMatrix,
 |  | GLdouble * | projMatrix,
 |  | GLint * | viewPort
 | ) |

Definition at line 115 of file region.cpp.

References BOOL(), Compute(), and points.

Referenced by ControlEngine::RegionAdd().

BOOL Region::Compute | ( | Point2D< GLdouble > | pos,
 |  | GLdouble * | modelMatrix,
 |  | GLdouble * | projMatrix,
 |  | GLint * | viewPort,
 |  | Point3D< double > * | pt
 | ) |

Definition at line 122 of file region.cpp.

References BOOL(), Point3D< T >::x, Point2D< T >::x, Point3D< T >::y, Point2D< T >::y, and Point3D< T >::z.

Referenced by AddElem(), and ControlEngine::RegionGet().

void Region::NormalizeSens | ( | POINT * | tabPoints,
 |  | int | nbPt
 | ) |

Definition at line 95 of file region.cpp.

References BOOL(), ChangeTrigoSens(), and GetTrigoSens().

Referenced by Use().

void Region::Reset | ( | int | deltaXwin = 0,
 |  | int | deltaYwin = 0
 | ) |

Definition at line 29 of file region.cpp.

References deltaXwin, deltaYwin, hRgnBase, nbOr, points, xMax, xMin, yMax, yMin, zMax, and zMin.

Referenced by Region(), and Screen::RegionReset().

void Region::SetMinMax | ( | POINT * | tabPoints,
 |  | int | nbPt
 | ) |

Definition at line 103 of file region.cpp.

References xMax, xMin, yMax, and yMin.

Referenced by Use().

BOOL Region::Use ( HWND hWnd )

Definition at line 42 of file region.cpp.

References BOOL(), computeMinMax, hRgnBase, NormalizeSens(), points, SetMinMax(), Point3D< T >::x, and Point3D< T >::y.

Referenced by Screen::RegionUse().

Member Data Documentation

BOOL Region::computeMinMax

Definition at line 42 of file region.h.

Referenced by Region(), and Use().

BOOL Region::enable

Definition at line 41 of file region.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), Face::Draw(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), ControlEngine::Proc(), and ControlEngine::~ControlEngine().

HRGN Region::hRgnBase

Definition at line 48 of file region.h.

Referenced by Reset(), and Use().

int Region::nbOr

Definition at line 47 of file region.h.

Referenced by ValueEditors::MakeRenderStruct(), and Reset().

MyList<Pt_3D_Double> Region::points

Definition at line 43 of file region.h.

Referenced by ValueEditors::MakeRenderStruct().

int Region::xMax

Definition at line 44 of file region.h.

Referenced by ValueEditors::MakeRenderStruct(), Reset(), and SetMinMax().

int Region::xMin

Definition at line 44 of file region.h.

Referenced by ValueEditors::MakeRenderStruct(), Reset(), and SetMinMax().

int Region::yMax

Definition at line 45 of file region.h.

Referenced by ValueEditors::MakeRenderStruct(), Reset(), and SetMinMax().

int Region::yMin

Definition at line 45 of file region.h.

Referenced by ValueEditors::MakeRenderStruct(), Reset(), and SetMinMax().

int Region::zMax

Definition at line 46 of file region.h.

Referenced by Reset().

int Region::zMin

Definition at line 46 of file region.h.

Referenced by Reset().

The documentation for this class was generated from the following files:
  • region.h
  • region.cpp
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Region Member List

This is the complete list of members for Region, including all inherited members.
AddElem(Point2D< GLdouble > pos, GLdouble *modelMatrix, GLdouble *projMatrix, GLint *viewPort) | Region
Compute(Point2D< GLdouble > pos, GLdouble *modelMatrix, GLdouble *projMatrix, GLint *viewPort, Point3D< double > *pt) | Region
computeMinMax | Region
enable | Region
hRgnBase | Region
nbOr | Region
NormalizeSens(POINT *tabPoints, int nbPt) | Region
points | Region
Region() | Region
Reset(int deltaXwin=0, int deltaYwin=0) | Region
SetMinMax(POINT *tabPoints, int nbPt) | Region
Use(HWND hWnd) | Region
xMax | Region
xMin | Region
yMax | Region
yMin | Region
zMax | Region
zMin | Region
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ResizingAndRotateControl class Reference

ResizingAndRotateControl Class Reference

#include <window.h>

Inheritance diagram for ResizingAndRotateControl:

Control Window Calculator MsgBox TaskWindow Tutorial List of all members.

Public Member Functions

ResizingAndRotateControl ()
~ResizingAndRotateControl ()
int | OnHover (StateMouse *mouse, int deltaX, int deltaY, int numFace)
Sur survole de la fenetre affiche le "trackButton" si a proximité d'un bord.

Public Attributes

BOOL | canResize
BOOL | canRotate

Detailed Description

Class de gestion de resize et rotate d'un control

Ceci est une "interface" de control et lui confere une trackButton de gestion Ex d'un control qui peut etre resize

class MyControl : public ResizingAndRotateControl
{
        MyControl()
        {
                canResize=TRUE;
                canRotate=FALSE;
                ...
        }
}

Definition at line 50 of file window.h.

Constructor & Destructor Documentation

ResizingAndRotateControl::ResizingAndRotateControl ( )

Definition at line 159 of file window.cpp.

References EventControl::mouse, EventMouse::move, and OnHover().

ResizingAndRotateControl::~ResizingAndRotateControl ( )

Definition at line 165 of file window.cpp.

Member Function Documentation

int ResizingAndRotateControl::OnHover | ( | StateMouse * | mouse,
 |  | int | deltaX,
 |  | int | deltaY,
 |  | int | numFace
 | ) |

Sur survole de la fenetre affiche le "trackButton" si a proximité d'un bord.

Definition at line 172 of file window.cpp.

References BOOL(), bottom, ce, Face::computeSize, TrackButton::Create(), DockPos, MyTreeNode< T >::elem, MyTreeNode< T >::Elems(), Control::faceNode, Control::GetLocalPos(), Primitive::GoTo(), Control::onControl, Timer::onTimer, EventOver::out, EventControl::over, ControlEngine::Pop(), StateMouse::pos, ControlEngine::primitive, ControlEngine::Push(), TrackButton::SetMode(), TrackButton::SetResizeAndRotate(), ControlEngine::timerRefresh, top, Point2D< T >::x, Point2D< int >::x, Point2D< GLdouble >::x, Control::XDockLeft(), Control::XDockRight(), Point2D< T >::y, Point2D< int >::y, Point2D< GLdouble >::y, Control::YDockBottom(), and Control::YDockTop().

Referenced by ResizingAndRotateControl().

Member Data Documentation

BOOL ResizingAndRotateControl::canResize

Definition at line 58 of file window.h.

BOOL ResizingAndRotateControl::canRotate

Definition at line 59 of file window.h.

The documentation for this class was generated from the following files:
  • window.h
  • window.cpp
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ResizingAndRotateControl Member List

This is the complete list of members for ResizingAndRotateControl, including all inherited members.
canResize | ResizingAndRotateControl |
canRotate | ResizingAndRotateControl |
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | Control | [inline, virtual]
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnHover(StateMouse *mouse, int deltaX, int deltaY, int numFace) | ResizingAndRotateControl |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
ResizingAndRotateControl() | ResizingAndRotateControl |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Control |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~ResizingAndRotateControl() | ResizingAndRotateControl |
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: RGBA struct Reference

RGBA Struct Reference

#include <color.h>

List of all members.

Public Attributes

float | r
float | g
float | b
float | a

Member Data Documentation

float RGBA::a

Definition at line 31 of file color.h.

float RGBA::b

Definition at line 30 of file color.h.

float RGBA::g

Definition at line 29 of file color.h.

float RGBA::r

Definition at line 28 of file color.h.

The documentation for this struct was generated from the following file:
  • color.h
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

RGBA Member List

This is the complete list of members for RGBA, including all inherited members.
a | RGBA
b | RGBA
g | RGBA
r | RGBA
Generated on Fri Aug 20 19:21:41 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Screen class Reference

Screen Class Reference

#include <screen.h>

List of all members.

Public Member Functions

Screen ()
~Screen ()
BOOL | Setup (WNDCLASS *wc, char *_className, char *_title)
BOOL | Create (HINSTANCE hInstance)
creation de la fenetre

void | Destroy ()
void | Show (BOOL enable)
void | Update (BOOL applySize)
void | SetSize (int dx, int dy, BOOL always)
void | BindOpenGL (BOOL useAccumulation)
BOOL | SwapBuffers ()
buffer openGL swaping

void | SetTopMost ()
void | SetTitle (char *_title)
void | SetFullScreen ()
void | ApplyStyles ()
void | ApplyStyle ()
void | ApplyStyleEx ()
void | ChangeStyle (int set, DWORD dwStyleChange)
void | ChangeStyleEx (int set, DWORD dwStyleChange)
void | SetStyle (DWORD _dwStyle)
void | MsgInfoType ()
void | ApplySize ()
Applique la taille et place en haut a gauche.

void | RegionReset ()
void | RegionUse ()

Public Attributes

HDC | hDC
context graphic au sens Windows

HGLRC | hGLRC
context graphic au sens OpenGL

BOOL | enableTitle
BOOL | enableFullScreen
int | dxNormal
int | dyNormal
HWND | hWnd
Region region
system de regionage en mode "Cooperatif Windows"

Constructor & Destructor Documentation

Screen::Screen ( )

Definition at line 117 of file screen.cpp.

References DEBUG_SCREEN, dxNormal, dyNormal, enableFullScreen, enableTitle, and hGLRC.

Screen::~Screen ( )

Definition at line 136 of file screen.cpp.

References DEBUG_SCREEN, and Destroy().

Member Function Documentation

void Screen::ApplySize ( )

Applique la taille et place en haut a gauche.

Definition at line 217 of file screen.cpp.

References DEBUG_SCREEN, and enableFullScreen.

Referenced by Create(), and Update().

void Screen::ApplyStyle ( )

Definition at line 354 of file screen.cpp.

Referenced by ApplyStyles().

void Screen::ApplyStyleEx ( )

Definition at line 359 of file screen.cpp.

Referenced by ApplyStyles().

void Screen::ApplyStyles ( )

Definition at line 342 of file screen.cpp.

References ApplyStyle(), and ApplyStyleEx().

Referenced by Update().

void Screen::BindOpenGL ( BOOL useAccumulation )

Definition at line 267 of file screen.cpp.

References hGLRC, and OpenGL_InitMultisample().

Referenced by ControlEngine::Start().

void Screen::ChangeStyle | ( | int | set,
 |  | DWORD | dwStyleChange
 | ) |

Definition at line 330 of file screen.cpp.

void Screen::ChangeStyleEx | ( | int | set,
 |  | DWORD | dwStyleChange
 | ) |

Definition at line 336 of file screen.cpp.

BOOL Screen::Create ( HINSTANCE hInstance )

creation de la fenetre

Definition at line 165 of file screen.cpp.

References ApplySize(), BOOL(), DEBUG_SCREEN, enableFullScreen, SetFullScreen(), and SetTopMost().

Referenced by ControlEngine::Start().

void Screen::Destroy ( )

Definition at line 184 of file screen.cpp.

References DEBUG_SCREEN, and hGLRC.

Referenced by ControlEngine::Stop(), and ~Screen().

void Screen::MsgInfoType ( )

Definition at line 45 of file screen.cpp.

References BOOL(), MyString::Format(), level, TEST, TEST_EX, WS_EX_COMPOSITED, WS_EX_LAYERED, and WS_EX_NOACTIVATE.

void Screen::RegionReset ( )

Definition at line 364 of file screen.cpp.

References region, and Region::Reset().

Referenced by ControlEngine::Proc().

void Screen::RegionUse ( )

Definition at line 369 of file screen.cpp.

References region, and Region::Use().

Referenced by ControlEngine::Proc().

void Screen::SetFullScreen ( )

Choisie le mode d'affichage Full , Normal

Si full ==> max en X et Y, topMost=TRUE Si Normal ==> taille normal, topMost=FALSE;

Definition at line 236 of file screen.cpp.

References BOOL(), DEBUG_SCREEN, dxNormal, dyNormal, enableFullScreen, enableTitle, GetWindowPos(), and SetStyle().

Referenced by Create(), and Update().

void Screen::SetSize | ( | int | dx,
 |  | int | dy,
 |  | BOOL | always
 | ) |

Definition at line 318 of file screen.cpp.

References DEBUG_SCREEN, dxNormal, dyNormal, and enableFullScreen.

Referenced by ControlEngine::Refresh(), and ControlEngine::Start().

void Screen::SetStyle ( DWORD _dwStyle )

Definition at line 349 of file screen.cpp.

Referenced by SetFullScreen(), and ControlEngine::Start().

void Screen::SetTitle ( char * _title )

Definition at line 307 of file screen.cpp.

void Screen::SetTopMost ( )

Definition at line 312 of file screen.cpp.

References enableFullScreen.

Referenced by Create(), and Update().

BOOL Screen::Setup | ( | WNDCLASS * | wc,
 |  | char * | _className,
 |  | char * | _title
 | ) |

Definition at line 142 of file screen.cpp.

References BOOL(), and DEBUG_SCREEN.

Referenced by ControlEngine::Start().

void Screen::Show ( BOOL enable )

Definition at line 199 of file screen.cpp.

References DEBUG_SCREEN.

Referenced by ControlEngine::Refresh(), and ControlEngine::Start().

BOOL Screen::SwapBuffers ( )

buffer openGL swaping

Definition at line 159 of file screen.cpp.

References BOOL().

Referenced by ControlEngine::Proc().

void Screen::Update ( BOOL applySize )

Definition at line 206 of file screen.cpp.

References ApplySize(), ApplyStyles(), DEBUG_SCREEN, enableTitle, SetFullScreen(), and SetTopMost().

Referenced by ConfigProc(), Univers::OnKeyDown(), and ControlEngine::Refresh().

Member Data Documentation

int Screen::dxNormal

Definition at line 61 of file screen.h.

Referenced by Screen(), SetFullScreen(), SetSize(), and ControlEngine::~ControlEngine().

int Screen::dyNormal

Definition at line 62 of file screen.h.

Referenced by Screen(), SetFullScreen(), SetSize(), and ControlEngine::~ControlEngine().

BOOL Screen::enableFullScreen

Definition at line 59 of file screen.h.

Referenced by ApplySize(), ConfigProc(), ControlEngine::ControlEngine(), Create(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), Screen(), SetFullScreen(), SetSize(), SetTopMost(), and ControlEngine::~ControlEngine().

BOOL Screen::enableTitle

Definition at line 58 of file screen.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), Screen(), SetFullScreen(), Update(), and ControlEngine::~ControlEngine().

HDC Screen::hDC

context graphic au sens Windows

Definition at line 55 of file screen.h.

Referenced by ControlEngine::Start().

HGLRC Screen::hGLRC

context graphic au sens OpenGL

Definition at line 56 of file screen.h.

Referenced by BindOpenGL(), Destroy(), and Screen().

HWND Screen::hWnd

Definition at line 64 of file screen.h.

Referenced by ConfigProc(), ControlEngine::OnRefresh(), ControlEngine::Start(), and Picking::Test().

Region Screen::region

system de regionage en mode "Cooperatif Windows"

Definition at line 65 of file screen.h.

Referenced by ConfigProc(), ControlEngine::ControlEngine(), Face::Draw(), ValueEditors::MakeRenderStruct(), Univers::OnKeyDown(), ControlEngine::Proc(), ControlEngine::RegionAdd(), ControlEngine::RegionGet(), RegionReset(), RegionUse(), and ControlEngine::~ControlEngine().

The documentation for this class was generated from the following files:
  • screen.h
  • screen.cpp
Generated on Fri Aug 20 19:21:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Screen Member List

This is the complete list of members for Screen, including all inherited members.
ApplySize() | Screen
ApplyStyle() | Screen
ApplyStyleEx() | Screen
ApplyStyles() | Screen
BindOpenGL(BOOL useAccumulation) | Screen
ChangeStyle(int set, DWORD dwStyleChange) | Screen
ChangeStyleEx(int set, DWORD dwStyleChange) | Screen
Create(HINSTANCE hInstance) | Screen
Destroy() | Screen
dxNormal | Screen
dyNormal | Screen
enableFullScreen | Screen
enableTitle | Screen
hDC | Screen
hGLRC | Screen
hWnd | Screen
MsgInfoType() | Screen
region | Screen
RegionReset() | Screen
RegionUse() | Screen
Screen() | Screen
SetFullScreen() | Screen
SetSize(int dx, int dy, BOOL always) | Screen
SetStyle(DWORD _dwStyle) | Screen
SetTitle(char *_title) | Screen
SetTopMost() | Screen
Setup(WNDCLASS *wc, char *_className, char *_title) | Screen
Show(BOOL enable) | Screen
SwapBuffers() | Screen
Update(BOOL applySize) | Screen
~Screen() | Screen
Generated on Fri Aug 20 19:21:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Slider class Reference

Slider Class Reference

Class de parametre et d'evenement d'un "Slider". More...

#include <slider.h>

Inheritance diagram for Slider:

Control List of all members.

Public Member Functions

Slider ()
~Slider ()
void | Create (double depth)
BOOL | Step (double step)
void | Setup (double min, double max, double current, double size)
BOOL | Min (double value)
BOOL | Max (double value)
BOOL | Current (double min, double max)
BOOL | Current (double delta)
void | Refresh ()
int | OnAutoMinus (Timer *)
int | OnAutoPlus (Timer *)
int | OnButtonsOverOut (Control *, int)
int | OnButtonsLMouseUp (StateMouse *, int)
int | OnMinusLMouseDown (StateMouse *, int)
int | OnPlusLMouseDown (StateMouse *, int)
int | OnLMouseDown (StateMouse *mouse, int face)
int | OnMouseMove (StateMouse *mouse, int deltaX, int deltaY, int face)
void | ToString (MyString &str)
Pour le debugage.

Public Attributes

EventSlider onSlidder
Button btnPlus
Button btnMinus
Control cursor
Control body
Timer timerAutoButton

Detailed Description

Class de parametre et d'evenement d'un "Slider".

Definition at line 43 of file slider.h.

Constructor & Destructor Documentation

Slider::Slider ( )

Definition at line 26 of file slider.cpp.

References body, btnMinus, btnPlus, EventMouseButton::down, EventMouse::left, EventControl::mouse, EventMouse::move, OnButtonsLMouseUp(), OnButtonsOverOut(), Control::onControl, OnLMouseDown(), OnMinusLMouseDown(), OnPlusLMouseDown(), EventOver::out, EventControl::over, Step(), and EventMouseButton::up.

Slider::~Slider ( )

Definition at line 44 of file slider.cpp.

Member Function Documentation

void Slider::Create ( double depth )

Definition at line 50 of file slider.cpp.

References Primitive::AddBox(), Primitive::AddFace(), Textures::arrow, body, btnMinus, btnPlus, ce, Button::Create(), Button::depth_max, Button::depth_min, MyTreeNode< T >::elem, MyTreeNode< T >::Elems(), f, FACE_BACK, Control::faceNode, Textures::grip, Control::id, Control::Move(), MyTreeNode< T >::MoveToFirstChild(), ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Refresh(), Control::Rotate(), Control::SetBlending(), Control::SetParent(), SIZE_BUTTON, ControlEngine::texture, Control::XDockCenter(), Control::XDockLeft(), Control::XDockRight(), and Control::YDockCenter().

Referenced by Tutorial::BaseDemo::BaseDemo().

BOOL Slider::Current ( double delta )

Definition at line 232 of file slider.cpp.

References BOOL(), and Refresh().

BOOL Slider::Current | ( | double | min,
 |  | double | max
 | ) |

Definition at line 225 of file slider.cpp.

References BOOL(), and Refresh().

Referenced by OnAutoMinus(), and OnAutoPlus().

BOOL Slider::Max ( double value )

Definition at line 211 of file slider.cpp.

References BOOL(), and Refresh().

BOOL Slider::Min ( double value )

Definition at line 197 of file slider.cpp.

References BOOL(), and Refresh().

int Slider::OnAutoMinus ( Timer * )

Definition at line 99 of file slider.cpp.

References Current().

Referenced by OnMinusLMouseDown().

int Slider::OnAutoPlus ( Timer * )

Definition at line 134 of file slider.cpp.

References Current().

Referenced by OnPlusLMouseDown().

int Slider::OnButtonsLMouseUp | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 121 of file slider.cpp.

References Timer::StopAndUnBind(), and timerAutoButton.

Referenced by Slider().

int Slider::OnButtonsOverOut | ( | Control * | ,
 |  | int |
 | ) |

Definition at line 115 of file slider.cpp.

References Timer::StopAndUnBind(), and timerAutoButton.

Referenced by Slider().

int Slider::OnLMouseDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 148 of file slider.cpp.

References OnMouseMove().

Referenced by Slider().

int Slider::OnMinusLMouseDown | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 127 of file slider.cpp.

References BindTimer, OnAutoMinus(), and timerAutoButton.

Referenced by Slider().

int Slider::OnMouseMove | ( | StateMouse * | mouse,
 |  | int | deltaX,
 |  | int | deltaY,
 |  | int | face
 | ) |

Definition at line 163 of file slider.cpp.

References body, Control::GetLocalPos(), StateMouse::leftBtn, StateMouse::pos, Refresh(), Point2D< T >::x, Point2D< int >::x, and Point2D< int >::y.

Referenced by OnLMouseDown().

int Slider::OnPlusLMouseDown | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 141 of file slider.cpp.

References BindTimer, OnAutoPlus(), and timerAutoButton.

Referenced by Slider().

void Slider::Refresh ( )

Definition at line 272 of file slider.cpp.

References body, ce, Primitive::ComputeLayout(), MyTreeNode< T >::elem, Control::faceNode, MIN_SIZE_CURSOR, ControlEngine::primitive, SIZE_BUTTON, and Control::XDockLeft().

Referenced by Create(), Current(), Max(), Min(), OnMouseMove(), and Setup().

void Slider::Setup | ( | double | min,
 |  | double | max,
 |  | double | current,
 |  | double | size
 | ) |

Definition at line 184 of file slider.cpp.

References Refresh().

BOOL Slider::Step ( double step )

Definition at line 177 of file slider.cpp.

References BOOL().

Referenced by Slider().

void Slider::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 295 of file slider.cpp.

References MyString::AddFormat().

Member Data Documentation

Control Slider::body

Definition at line 68 of file slider.h.

Referenced by Create(), OnMouseMove(), Refresh(), and Slider().

Button Slider::btnMinus

Definition at line 66 of file slider.h.

Referenced by Create(), and Slider().

Button Slider::btnPlus

Definition at line 65 of file slider.h.

Referenced by Create(), and Slider().

Control Slider::cursor

Definition at line 67 of file slider.h.

EventSlider Slider::onSlidder

Definition at line 64 of file slider.h.

Referenced by Tutorial::BaseDemo::BaseDemo().

Timer Slider::timerAutoButton

Definition at line 69 of file slider.h.

Referenced by OnButtonsLMouseUp(), OnButtonsOverOut(), OnMinusLMouseDown(), and OnPlusLMouseDown().

The documentation for this class was generated from the following files:
  • slider.h
  • slider.cpp
Generated on Fri Aug 20 19:21:42 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Slider Member List

This is the complete list of members for Slider, including all inherited members.
body | Slider |
btnMinus | Slider |
btnPlus | Slider |
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create(double depth) | Slider |
Control::Create() | Control | [inline, virtual]
Current(double min, double max) | Slider |
Current(double delta) | Slider |
cursor | Slider |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
Max(double value) | Slider |
midDown | Control | [static]
Min(double value) | Slider |
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnAutoMinus(Timer *) | Slider |
OnAutoPlus(Timer *) | Slider |
OnButtonsLMouseUp(StateMouse *, int) | Slider |
OnButtonsOverOut(Control *, int) | Slider |
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnLMouseDown(StateMouse *mouse, int face) | Slider |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMinusLMouseDown(StateMouse *, int) | Slider |
OnMouseMove(StateMouse *mouse, int deltaX, int deltaY, int face) | Slider |
Control::OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnPlusLMouseDown(StateMouse *, int) | Slider |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
onSlidder | Slider |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
Refresh() | Slider |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Setup(double min, double max, double current, double size) | Slider |
Size(double x, double y) | Control |
sleepedDelay | Control |
Slider() | Slider |
Step(double step) | Slider |
timerAutoButton | Slider |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Slider |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~Slider() | Slider |
Generated on Fri Aug 20 19:21:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: StateKey class Reference

StateKey Class Reference

Parametres des touches en cours. More...

#include <input.h>

List of all members.

Public Member Functions

StateKey ()
~StateKey ()
void | operator= (StateKey &src)
void | ToString (MyString &str)
void | SaveDelayAndRepeate ()
Sauve la config du clavier.

void | RestoreDelayAndRepeate ()
Retore la config du clavier.

Static Public Member Functions

BOOL | GetState (int code)
Donne l'état de la touche (0=relaché, 1=appuyé).

void | SetDelayAndRepeate (int delay, int repeate)
Configure le delay et le temp de repetition du clavier.

Public Attributes

char | letter
Envienne valeur de repeate du clavier.

short | code
BOOL | isPush

Detailed Description

Parametres des touches en cours.

Definition at line 65 of file input.h.

Constructor & Destructor Documentation

StateKey::StateKey ( )

Definition at line 77 of file input.cpp.

References code, isPush, letter, and SaveDelayAndRepeate().

StateKey::~StateKey ( )

Definition at line 85 of file input.cpp.

References RestoreDelayAndRepeate().

Member Function Documentation

BOOL StateKey::GetState ( int code ) [static]

Donne l'état de la touche (0=relaché, 1=appuyé).

Todo:
isTogged ne semble pas marcher, creuser la question

Definition at line 107 of file input.cpp.

References BOOL().

Referenced by Univers::OnKeyDown(), Title::OnKeyDown(), Univers::OnRefresh(), and Title::OnRefresh().

void StateKey::operator= ( StateKey & src )

Definition at line 90 of file input.cpp.

References code, isPush, letter, and src.

void StateKey::RestoreDelayAndRepeate ( )

Retore la config du clavier.

Definition at line 144 of file input.cpp.

References SetDelayAndRepeate().

Referenced by ~StateKey().

void StateKey::SaveDelayAndRepeate ( )

Sauve la config du clavier.

Definition at line 137 of file input.cpp.

Referenced by StateKey().

void StateKey::SetDelayAndRepeate | ( | int | delay,
 |  | int | repeate
 | ) | [static]

Configure le delay et le temp de repetition du clavier.

Parameters:
delay [0-3] ==> [250 ms- 1 second]
  • repeate [0-31] ==> [2.5 rep/sec-30 rep/sec]

Definition at line 131 of file input.cpp.

Referenced by RestoreDelayAndRepeate().

void StateKey::ToString ( MyString & str )

Definition at line 97 of file input.cpp.

References MyString::AddFormat(), code, isPush, and letter.

Member Data Documentation

short StateKey::code

Definition at line 73 of file input.h.

Referenced by Calculator::OnKey(), Univers::OnKeyDown(), Title::OnKeyDown(), Univers::OnKeyUp(), Title::OnKeyUp(), operator=(), ControlEngine::Proc(), StateKey(), and ToString().

BOOL StateKey::isPush

Definition at line 74 of file input.h.

Referenced by operator=(), ControlEngine::Proc(), StateKey(), and ToString().

char StateKey::letter

Envienne valeur de repeate du clavier.

Definition at line 72 of file input.h.

Referenced by operator=(), ControlEngine::Proc(), StateKey(), and ToString().

The documentation for this class was generated from the following files:
  • input.h
  • input.cpp
Generated on Fri Aug 20 19:21:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

StateKey Member List

This is the complete list of members for StateKey, including all inherited members.
code | StateKey |
GetState(int code) | StateKey | [static]
isPush | StateKey |
letter | StateKey |
operator=(StateKey &src) | StateKey |
RestoreDelayAndRepeate() | StateKey |
SaveDelayAndRepeate() | StateKey |
SetDelayAndRepeate(int delay, int repeate) | StateKey | [static]
StateKey() | StateKey |
ToString(MyString &str) | StateKey |
~StateKey() | StateKey |
Generated on Fri Aug 20 19:21:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: StateMouse class Reference

StateMouse Class Reference

Etat de la souris. More...

#include <input.h>

List of all members.

Public Member Functions

StateMouse ()
void | operator= (StateMouse &src)
int | GetNbButtonPush ()
StateMouse * | GetDelta (StateMouse *second)
Difference entre 2 StateMouse.

void | ToString (MyString &str)

Public Attributes

Point2D< int > | pos
BOOL | leftBtn
BOOL | rightBtn
BOOL | midBtn
int | wheelVal
int | wheelDelta

Detailed Description

Etat de la souris.

Parametre:

  • position (pos)
  • {left,mid,righ}Btn
  • roulette
    • wheelVal position de la molette)
    • wheelDelta dernier sens de rotation de la molette

Definition at line 41 of file input.h.

Constructor & Destructor Documentation

StateMouse::StateMouse ( )

Definition at line 24 of file input.cpp.

References leftBtn, midBtn, pos, rightBtn, wheelDelta, wheelVal, and Point2D< int >::Zero().

Member Function Documentation

StateMouse * StateMouse::GetDelta ( StateMouse * second )

Difference entre 2 StateMouse.

valeur de la souris: (a recepopier car issue de varaible static de la methode) x,y: delta leftBtn,midBtn,righBtn: 0=identique | 1=activé | -1=desactivé

Definition at line 57 of file input.cpp.

References leftBtn, midBtn, pos, rightBtn, wheelDelta, and wheelVal.

Referenced by Control::OnMouseMove().

int StateMouse::GetNbButtonPush ( )

Definition at line 44 of file input.cpp.

References leftBtn, midBtn, and rightBtn.

Referenced by Univers::OnMouseMove(), and Title::OnMouseMove().

void StateMouse::operator= ( StateMouse & src )

Definition at line 34 of file input.cpp.

References leftBtn, midBtn, pos, rightBtn, src, wheelDelta, and wheelVal.

void StateMouse::ToString ( MyString & str )

Definition at line 70 of file input.cpp.

References MyString::AddFormat(), leftBtn, midBtn, pos, rightBtn, wheelDelta, wheelVal, Point2D< int >::x, and Point2D< int >::y.

Member Data Documentation

BOOL StateMouse::leftBtn

Definition at line 45 of file input.h.

Referenced by GetDelta(), GetNbButtonPush(), Picking::OnLButtonUp(), Univers::OnMouseMove(), TrackButton::OnMouseMove(), Title::OnMouseMove(), Slider::OnMouseMove(), operator=(), ControlEngine::Proc(), StateMouse(), EventInertia::SwitchButton(), and ToString().

BOOL StateMouse::midBtn

Definition at line 47 of file input.h.

Referenced by GetDelta(), GetNbButtonPush(), Picking::OnMButtonUp(), Univers::OnMouseMove(), Title::OnMouseMove(), Control::OnMouseWheel(), operator=(), ControlEngine::Proc(), StateMouse(), EventInertia::SwitchButton(), and ToString().

Point2D<int> StateMouse::pos

Definition at line 44 of file input.h.

Referenced by ControlEngine::DrawCursors(), ControlEngine::DrawLight(), GetDelta(), ResizingAndRotateControl::OnHover(), TextBox::OnLButtonDown(), Slider::OnMouseMove(), Control::OnMouseMove(), Tutorial::BaseDemo::OnWinMove(), operator=(), Picking::SetMousePos(), EventInertia::Start(), StateMouse(), Picking::Test(), and ToString().

BOOL StateMouse::rightBtn

Definition at line 46 of file input.h.

Referenced by GetDelta(), GetNbButtonPush(), TrackButton::OnMouseMove(), Picking::OnRButtonUp(), operator=(), ControlEngine::Proc(), StateMouse(), EventInertia::SwitchButton(), and ToString().

int StateMouse::wheelDelta

Definition at line 49 of file input.h.

Referenced by GetDelta(), Univers::OnMouseWheel(), Title::OnMouseWheel(), operator=(), Picking::SetDeltaWheel(), StateMouse(), and ToString().

int StateMouse::wheelVal

Definition at line 48 of file input.h.

Referenced by GetDelta(), operator=(), Picking::SetDeltaWheel(), StateMouse(), and ToString().

The documentation for this class was generated from the following files:
  • input.h
  • input.cpp
Generated on Fri Aug 20 19:21:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

StateMouse Member List

This is the complete list of members for StateMouse, including all inherited members.
GetDelta(StateMouse *second) | StateMouse
GetNbButtonPush() | StateMouse
leftBtn | StateMouse
midBtn | StateMouse
operator=(StateMouse &src) | StateMouse
pos | StateMouse
rightBtn | StateMouse
StateMouse() | StateMouse
ToString(MyString &str) | StateMouse
wheelDelta | StateMouse
wheelVal | StateMouse
Generated on Fri Aug 20 19:21:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TaskWindow class Reference

TaskWindow Class Reference

#include <taskWindow.h>

Inheritance diagram for TaskWindow:

Window ResizingAndRotateControl Control List of all members.

Public Member Functions

TaskWindow ()
~TaskWindow ()
virtual void | Create ()
BOOL | Add (Title *title)
BOOL | Restore (Title *title)
void | Refresh ()
Mise a jour de l'affichage des elements.

Public Attributes

TextBox txtTranche

Constructor & Destructor Documentation

TaskWindow::TaskWindow ( )

Definition at line 33 of file taskWindow.cpp.

References Title::SetText(), Title::useClose, and Title::useMax.

TaskWindow::~TaskWindow ( )

Definition at line 44 of file taskWindow.cpp.

Member Function Documentation

BOOL TaskWindow::Add ( Title * title )

Definition at line 70 of file taskWindow.cpp.

References MyListIterator< ElemTaskWindow >::AddNewLast(), BOOL(), ElemTaskWindow::button, Title::caption, ce, EventButton::click, Button::Create(), FACE_FRONT, FaceNode, Text3D::GetText(), Primitive::GoTo(), MyList< ElemTaskWindow >::i, Button::onButton, ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Refresh(), Button::SetText(), Text3D::SetWrapping(), Button::text, and ElemTaskWindow::title.

Referenced by Title::OnMin().

void TaskWindow::Create ( ) [virtual]

Reimplemented from Window.

Definition at line 48 of file taskWindow.cpp.

References ce, TextBox::Create(), Window::Create(), MyTreeNode< T >::elem, FACE_RIGHT, Control::faceNode, FaceNode, Primitive::GoTo(), BasicText3D::material, Control::Move(), ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Control::Rotate(), BasicText3D::scale, Material::SetDS(), Control::Size(), TextBox::text, Control::XDockLeft(), and Control::YDockBottom().

Referenced by ControlEngine::ControlEngine().

void TaskWindow::Refresh ( )

Mise a jour de l'affichage des elements.

Todo:
gerer les depassement de conteneur

Definition at line 91 of file taskWindow.cpp.

References ElemTaskWindow::button, Face::computeSize, MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, MyListIterator< ElemTaskWindow >::GetElemPtr(), MyList< ElemTaskWindow >::i, MyListIterator< ElemTaskWindow >::More(), Point2D< GLdouble >::x, Control::XDockLeft(), Point2D< GLdouble >::y, and Control::YDockTop().

Referenced by Add().

BOOL TaskWindow::Restore ( Title * title )

Appelé par un title pour retirer la button de la TaskWindow

Definition at line 128 of file taskWindow.cpp.

References BOOL(), ce, Control::Find(), num, Timer::onTimer, and ControlEngine::timerRefresh.

Referenced by Title::OnOriginal().

Member Data Documentation

TextBox TaskWindow::txtTranche

Definition at line 46 of file taskWindow.h.

The documentation for this class was generated from the following files:
  • taskWindow.h
  • taskWindow.cpp
Generated on Fri Aug 20 19:21:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

TaskWindow Member List

This is the complete list of members for TaskWindow, including all inherited members.
Add(Title *title) | TaskWindow |
canResize | ResizingAndRotateControl |
canRotate | ResizingAndRotateControl |
ChangeDirection() | Control |
client | Window |
Control() | Control |
controls | Control | [static]
Create() | TaskWindow | [virtual]
Window::Create(double depth) | Window |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Window::Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
OnClose() | Window |
onControl | Control |
OnHover(StateMouse *mouse, int deltaX, int deltaY, int numFace) | ResizingAndRotateControl |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnLMRButton(StateMouse *, int) | Window |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Window |
OnOver(StateMouse *mouse, int face) | Window |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
Refresh() | TaskWindow |
ReSize(double dx, double dy) | Control |
ResizingAndRotateControl() | ResizingAndRotateControl |
Restore(Title *title) | TaskWindow |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
TaskWindow() | TaskWindow |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
title | Window |
titleDock | Window |
ToString(MyString &str) | Window |
txtTranche | TaskWindow |
Window() | Window |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~ResizingAndRotateControl() | ResizingAndRotateControl |
~TaskWindow() | TaskWindow |
~Window() | Window |
Generated on Fri Aug 20 19:21:43 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Text3D class Reference

Text3D Class Reference

Classe de gestion d'alignement de text 3D (basée sur la FTGL). More...

#include <text3d.h>

Inheritance diagram for Text3D:

BasicText3D List of all members.

Public Member Functions

Text3D ()
~Text3D ()
void | operator= (Text3D &src)
void | SetJustifyLimit (GLdouble x, GLdouble y)
Definistion de la taille maximum des justification (en texel).

void | SetWrapping (BOOL line, BOOL word, BOOL letter)
void | SetClipping (double x, double y)
void | SetClipping (Point2D< double > newClipping)
void | SetAlign (TextAlign x=align_center, TextAlign y=align_center)
void | Setup (FTFont *f, FontType t=ft_texture)
BOOL | Draw ()
Affiche un text en respectant sont alignement.

BOOL | DrawPicking ()
void | ComputeSize (MyList< ParsingLine > *linesCur, BOOL isWordSizeCompute)
void | ComputeLineSize (ParsingLine *line, BOOL isWordSizeCompute)
float | ComputeLayout ()
void | ApplyRealClipping ()
void | SetText (char *text)
char * | GetText ()
BOOL | AnalyseLex (int indBegin, int *indEnd, BOOL *isEnd, BOOL *isReturn)
void | AnalyseGram ()

Public Attributes

TextAlign xAlign
type de justification dans les X

TextAlign yAlign
type de justification dans les Y

GLdouble | xJustifyLimit
limit de la taille max de justification dans les X, pour eviter des justications trop importente

GLdouble | yJustifyLimit
limit de la taille max de justification dans les Y, pour eviter des justications trop importente

BOOL | wordWrap
un mots est il secable ?

BOOL | lineWrap
une ligne est elle secable ?

BOOL | letterWrap
une lettre est elle secable ?

Detailed Description

Classe de gestion d'alignement de text 3D (basée sur la FTGL).

Les parametres:

  • clipping: taille de la limite d'affichage (si enableClipping activé)
  • align[X,Y]: type d'allignement du text par rapport au clipping
  • wrapping[line,word,letter]: type de decoupage secable

Example:

Text3D textHautGauche,textCentreBas,textJustifyCentre;
// affiche en du text en haut a gauche du contenant sans justifiaction
textHautGauche.Setup(fontTexture,ft_texture);
textHautGauche.SetClipping((100,100);
textHautGauche.SetAlign(align_begin,align_begin);
textHautGauche.value="Haut a gauche";

// affiche en du text en centré en bas sans justifiaction
textCentreBas.Setup(fontTexture,ft_texture);
textCentreBas.SetClipping((100,100);
textCentreBas.SetAlign(align_center,align_end);
textCentreBas.value="Centré en bas";

// affiche en du text en justifier dans les x et centré dans les y
textJustifyCentre.Setup(fontTexture,ft_texture);
textJustifyCentre.SetClipping((100,100);
textJustifyCentre.SetAlign(align_justify,align_center);
textJustifyCentre.value="Justify centré";
textJustifyCentre.SetWrapping(FALSE,FALSE,FALSE); // affiche une seul ligne
- ou -
textJustifyCentre.SetWrapping(TRUE,FALSE,FALSE); // revient a la ligne si la ligne est pleine
- ou -
textJustifyCentre.SetWrapping(FALSE,TRUE,FALSE); // affiche une seul ligne finis par un mots
- ou -
textJustifyCentre.SetWrapping(TRUE,TRUE,FALSE); // retour a la ligne si cela coup un mots de fin de ligne

Definition at line 192 of file text3d.h.

Constructor & Destructor Documentation

Text3D::Text3D ( )

Definition at line 241 of file text3d.cpp.

References align_begin, SetJustifyLimit(), SetWrapping(), xAlign, and yAlign.

Text3D::~Text3D ( )

Definition at line 252 of file text3d.cpp.

Member Function Documentation

void Text3D::AnalyseGram ( )

Analyse gramatical

Fait le parsing de tout les mots ==> remplie les "lines" et "words" tel que specifié dans le "value" en cours

Definition at line 488 of file text3d.cpp.

References MyListIterator< ParsingWord >::AddNewLast(), MyListIterator< ParsingLine >::AddNewLast(), AnalyseLex(), BOOL(), MyList< ParsingWord >::i, MyList< ParsingLine >::i, ParsingElem::isWord, MyString::Mids(), MyListIterator< ParsingWord >::SuprAll(), MyListIterator< ParsingLine >::SuprAll(), and ParsingWord::text.

Referenced by SetText().

BOOL Text3D::AnalyseLex | ( | int | indBegin,
 |  | int * | indEnd,
 |  | BOOL * | isEnd,
 |  | BOOL * | isReturn
 | ) |

Analyse syntaxique

Delimite les mots et les type (word ou type de separateur)

Returns:
isWord: le mot est il un mot ou un separateur ?
ex.: "coucou\n ca va! \ntoi"

Lexieme isWord isReturn isEnd "coucou" 1 1 0 " " 0 0 0 "ca" 1 0 0 " " 0 0 0 "va!" 1 0 0 " " 0 1 0 "toi" 1 0 1

Definition at line 443 of file text3d.cpp.

References BOOL(), and MyString::GetSize().

Referenced by AnalyseGram().

void Text3D::ApplyRealClipping ( )

Definition at line 363 of file text3d.cpp.

Referenced by Draw().

float Text3D::ComputeLayout ( )

Definition at line 521 of file text3d.cpp.

References MyListIterator< ParsingWord >::AddNewLast(), MyListIterator< ParsingLine >::AddNewLast(), BOOL(), ComputeLineSize(), ParsingElem::deltaX, ParsingLine::deltaY, MyListIterator< ParsingLine >::GetElemPtr(), BasicText3D::GetWidth(), MyList< ParsingWord * >::i, MyList< ParsingLine * >::i, MyList< ParsingWord >::i, MyList< ParsingLine >::i, lineWrap, list_current, MyString::Mids(), MyListIterator< ParsingLine >::More(), MyListIterator< ParsingLine * >::SuprAll(), MyListIterator< ParsingWord >::SuprAll(), MyListIterator< ParsingLine >::SuprAll(), ParsingWord::text, ParsingLine::words, wordWrap, Point2D< GLdouble >::x, and Point2D< GLdouble >::y.

Referenced by Draw().

void Text3D::ComputeLineSize | ( | ParsingLine * | line,
 |  | BOOL | isWordSizeCompute
 | ) |

Definition at line 315 of file text3d.cpp.

References ParsingElem::deltaX, BasicText3D::GetHeight(), MyString::GetSize(), BasicText3D::GetWidth(), ParsingWord::text, and xAlign.

Referenced by ComputeLayout(), and ComputeSize().

void Text3D::ComputeSize | ( | MyList< ParsingLine > * | linesCur,
 |  | BOOL | isWordSizeCompute
 | ) |

Definition at line 305 of file text3d.cpp.

References ComputeLineSize(), and MyList< T >::i.

Referenced by Draw().

BOOL Text3D::Draw ( )

Affiche un text en respectant sont alignement.

Le parsing du text etant fait automatiquement il n'est pas a refaire a chaque affichage.

Returns:
VRAI si le text a ete affiché completement , sinon FAUX (en dehors du clipping)

Todo:
a optimiser: doit etre appeler uniquement si le text,font,scale ou clipping on changé

Definition at line 383 of file text3d.cpp.

References align_begin, align_center, align_end, align_justify, ApplyRealClipping(), BOOL(), ce, ComputeLayout(), ComputeSize(), MyListIterator< ParsingLine * >::GetElem(), MyList< ParsingLine * >::GetNbElem(), MyList< ParsingLine * >::i, MyString::IsEmpty(), ControlEngine::monitor, MyListIterator< ParsingLine * >::More(), Point2D< GLdouble >::y, yAlign, and yJustifyLimit.

Referenced by Face::Draw().

BOOL Text3D::DrawPicking ( )

Definition at line 692 of file text3d.cpp.

References BOOL().

Referenced by Face::Draw().

char * Text3D::GetText ( )

Definition at line 642 of file text3d.cpp.

References MyString::GetValue().

Referenced by TaskWindow::Add().

void Text3D::operator= ( Text3D & src )

Definition at line 256 of file text3d.cpp.

References letterWrap, lineWrap, BasicText3D::operator=(), src, wordWrap, xAlign, xJustifyLimit, and yAlign.

void Text3D::SetAlign | ( | TextAlign | x = align_center,
 |  | TextAlign | y = align_center
 | ) |

Definition at line 292 of file text3d.cpp.

References xAlign, and yAlign.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Button::Button(), Calculator::Calculator(), Tutorial::LayoutDemo::ConfigTextFace(), Calculator::Create(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), Univers::OnKeyUp(), Tutorial::UniversDemo::SetFace(), TextBox::TextBox(), Tip::Tip(), Title::Title(), Tutorial::Tutorial(), and Tutorial::WindowDemo::WindowDemo().

void Text3D::SetClipping ( Point2D< double > newClipping )

Definition at line 285 of file text3d.cpp.

References Point2D< T >::x, Point2D< GLdouble >::x, Point2D< T >::y, and Point2D< GLdouble >::y.

void Text3D::SetClipping | ( | double | x,
 |  | double | y
 | ) |

Definition at line 278 of file text3d.cpp.

References Point2D< GLdouble >::Set(), Point2D< GLdouble >::x, and Point2D< GLdouble >::y.

Referenced by Face::Draw().

void Text3D::SetJustifyLimit | ( | GLdouble | x,
 |  | GLdouble | y
 | ) |

Definistion de la taille maximum des justification (en texel).

Definition at line 702 of file text3d.cpp.

References xJustifyLimit, and yJustifyLimit.

Referenced by Tutorial::FaceDemo::FaceDemo(), and Text3D().

void Text3D::SetText ( char * text )

Definition at line 418 of file text3d.cpp.

References AnalyseGram().

Referenced by Tutorial::BaseDemo::BaseDemo(), Tutorial::LayoutDemo::ConfigTextFace(), Tutorial::FaceDemo::FaceDemo(), Tutorial::ApplicationDemo::OnSelectExplorer(), Tutorial::BaseDemo::OnWinOut(), Tip::operator=(), TextBox::operator=(), Button::operator=(), Tutorial::UniversDemo::SetFace(), Title::SetText(), Tip::SetText(), TextBox::SetText(), Button::SetText(), and Tutorial::WindowDemo::WindowDemo().

void Text3D::Setup | ( | FTFont * | f,
 |  | FontType | t = ft_texture
 | ) |

Definition at line 299 of file text3d.cpp.

References f, BasicText3D::Setup(), t, and type.

Referenced by Tutorial::BaseDemo::BaseDemo(), Button::Button(), Tutorial::LayoutDemo::ConfigTextFace(), Tutorial::FaceDemo::FaceDemo(), Tutorial::UniversDemo::SetFace(), TextBox::TextBox(), Tip::Tip(), Title::Title(), and Tutorial::WindowDemo::WindowDemo().

void Text3D::SetWrapping | ( | BOOL | line,
 |  | BOOL | word,
 |  | BOOL | letter
 | ) |

Definition at line 271 of file text3d.cpp.

References letterWrap, lineWrap, and wordWrap.

Referenced by TaskWindow::Add(), Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Tutorial::LayoutDemo::ConfigTextFace(), Tutorial::FaceDemo::FaceDemo(), Text3D(), Tip::Tip(), and Title::Title().

Member Data Documentation

BOOL Text3D::letterWrap

une lettre est elle secable ?

Definition at line 219 of file text3d.h.

Referenced by ValueEditors::MakeElemFaceStruct(), operator=(), and SetWrapping().

BOOL Text3D::lineWrap

une ligne est elle secable ?

Definition at line 218 of file text3d.h.

Referenced by ComputeLayout(), ValueEditors::MakeElemFaceStruct(), operator=(), and SetWrapping().

BOOL Text3D::wordWrap

un mots est il secable ?

Definition at line 217 of file text3d.h.

Referenced by ComputeLayout(), ValueEditors::MakeElemFaceStruct(), operator=(), and SetWrapping().

TextAlign Text3D::xAlign

type de justification dans les X

Definition at line 213 of file text3d.h.

Referenced by ComputeLineSize(), ValueEditors::MakeElemFaceStruct(), operator=(), SetAlign(), and Text3D().

GLdouble Text3D::xJustifyLimit

limit de la taille max de justification dans les X, pour eviter des justications trop importente

Definition at line 215 of file text3d.h.

Referenced by ValueEditors::MakeElemFaceStruct(), operator=(), and SetJustifyLimit().

TextAlign Text3D::yAlign

type de justification dans les Y

Definition at line 214 of file text3d.h.

Referenced by Draw(), ValueEditors::MakeElemFaceStruct(), operator=(), SetAlign(), and Text3D().

GLdouble Text3D::yJustifyLimit

limit de la taille max de justification dans les Y, pour eviter des justications trop importente

Definition at line 216 of file text3d.h.

Referenced by Draw(), ValueEditors::MakeElemFaceStruct(), and SetJustifyLimit().

The documentation for this class was generated from the following files:
  • text3d.h
  • text3d.cpp
Generated on Fri Aug 20 19:21:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Text3D Member List

This is the complete list of members for Text3D, including all inherited members.
AnalyseGram() | Text3D
AnalyseLex(int indBegin, int *indEnd, BOOL *isEnd, BOOL *isReturn) | Text3D
ApplyRealClipping() | Text3D
BasicText3D() | BasicText3D
ComputeLayout() | Text3D
ComputeLineSize(ParsingLine *line, BOOL isWordSizeCompute) | Text3D
ComputeSize(MyList< ParsingLine > *linesCur, BOOL isWordSizeCompute) | Text3D
depth | BasicText3D
Draw() | Text3D
BasicText3D::Draw(char *text) | BasicText3D
BasicText3D::Draw(char letter) | BasicText3D
DrawPicking() | Text3D
BasicText3D::DrawPicking(char *text) | BasicText3D
font | BasicText3D
GetAscender() | BasicText3D
GetBox(char *text) | BasicText3D
GetDescender() | BasicText3D
GetHeight() | BasicText3D
GetText() | Text3D
GetWidth(char *text) | BasicText3D
GetWidth(char letter) | BasicText3D
letterWrap | Text3D
lineWrap | Text3D
material | BasicText3D
operator=(Text3D &src) | Text3D
BasicText3D::operator=(BasicText3D &src) | BasicText3D
ratioXY | BasicText3D
ratioYX | BasicText3D
scale | BasicText3D
SetAlign(TextAlign x=align_center, TextAlign y=align_center) | Text3D
SetClipping(double x, double y) | Text3D
SetClipping(Point2D< double > newClipping) | Text3D
SetJustifyLimit(GLdouble x, GLdouble y) | Text3D
SetRatioXY(GLdouble value) | BasicText3D
SetText(char *text) | Text3D
Setup(FTFont *f, FontType t=ft_texture) | Text3D
BasicText3D::Setup(FTFont *f, FontType t, int x=0, int y=0) | BasicText3D
SetWrapping(BOOL line, BOOL word, BOOL letter) | Text3D
Text3D() | Text3D
type | BasicText3D
usePicking | BasicText3D
wordWrap | Text3D
xAlign | Text3D
xCenter | BasicText3D
xJustifyLimit | Text3D
yAlign | Text3D
yCenter | BasicText3D
yJustifyLimit | Text3D
zCenter | BasicText3D
~Text3D() | Text3D
Generated on Fri Aug 20 19:21:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TextBox class Reference

TextBox Class Reference

Une "TextBox" est un control permetant l'affichage (isReadOnly=TRUE) et la saisie de text. More...

#include <textBox.h>

Inheritance diagram for TextBox:

Control List of all members.

Public Member Functions

TextBox ()
~TextBox ()
virtual void | Create ()
virtual void | Create (double depth)
void | ToString (MyString &str)
Pour le debugage.

void | SetCursor (int column, int line)
le curseur a ete positionnée

void | operator= (char *newText)
Affectation du text.

void | SetText (char *newText)
int | OnLButtonDown (StateMouse *mouse, int face)
on a clicker sur le control ==> curseur a l'emplacement de la souris

int | OnLButtonUp (StateMouse *mouse, int face)
int | OnOverIn (Control *oldControl, int face)

Public Attributes

BOOL | isReadOnly
EventTextBox onTextBox
Text3D text

Detailed Description

Une "TextBox" est un control permetant l'affichage (isReadOnly=TRUE) et la saisie de text.

Definition at line 38 of file textBox.h.

Constructor & Destructor Documentation

TextBox::TextBox ( )

Definition at line 32 of file textBox.cpp.

References align_center, ce, EventMouseButton::down, ControlEngine::fontTexture, ft_texture, EventOver::in, isReadOnly, EventMouse::left, BasicText3D::material, EventControl::mouse, EventControl::over, Text3D::SetAlign(), Material::SetDS(), Text3D::Setup(), and EventMouseButton::up.

TextBox::~TextBox ( )

Definition at line 49 of file textBox.cpp.

Member Function Documentation

void TextBox::Create ( double depth ) [virtual]

Definition at line 55 of file textBox.cpp.

References Primitive::AddBox(), ce, MyTreeNode< T >::Elems(), FACE_BACK, FACE_FRONT, isReadOnly, ControlEngine::primitive, and Control::SetParent().

virtual void TextBox::Create ( ) [inline, virtual]

Reimplemented from Control.

Definition at line 47 of file textBox.h.

References DEFAULT_DEPTH_TEXTBOX.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), TaskWindow::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), and Tutorial::LayoutDemo::LayoutDemo().

int TextBox::OnLButtonDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

on a clicker sur le control ==> curseur a l'emplacement de la souris

Todo:
SetCursor, parametre reel a envoyer

Reimplemented from Control.

Definition at line 90 of file textBox.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, DebugMouse2, isReadOnly, StateMouse::pos, SetCursor(), Point2D< int >::x, and Point2D< int >::y.

int TextBox::OnLButtonUp | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented from Control.

Definition at line 98 of file textBox.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, and DebugMouse2.

int TextBox::OnOverIn | ( | Control * | oldControl,
 |  | int | face
 | ) |

Definition at line 105 of file textBox.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorNothing, Debug2Param, and Control::name.

void TextBox::operator= ( char * newText )

Affectation du text.

Permet l'ecriture

TextBox txtInfo;
info="Ceci est mon text !";

Definition at line 73 of file textBox.cpp.

References Text3D::SetText().

void TextBox::SetCursor | ( | int | column,
 |  | int | line
 | ) |

le curseur a ete positionnée

Definition at line 113 of file textBox.cpp.

References column, Debug2Param, onTextBox, and EventTextBox::setCursor.

Referenced by OnLButtonDown().

void TextBox::SetText ( char * newText )

Definition at line 80 of file textBox.cpp.

References Text3D::SetText().

Referenced by Tutorial::BaseDemo::BaseDemo(), Univers::ExitQuestion(), and Tutorial::LayoutDemo::LayoutDemo().

void TextBox::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 119 of file textBox.cpp.

References MyString::AddFormat(), and isReadOnly.

Member Data Documentation

BOOL TextBox::isReadOnly

Definition at line 41 of file textBox.h.

Referenced by Create(), MsgBox::MsgBox(), OnLButtonDown(), TextBox(), and ToString().

EventTextBox TextBox::onTextBox

Definition at line 42 of file textBox.h.

Referenced by SetCursor().

Text3D TextBox::text

Definition at line 43 of file textBox.h.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Calculator::Calculator(), TaskWindow::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::LayoutDemo::LayoutDemo(), Tutorial::ApplicationDemo::OnSelectExplorer(), and Tutorial::Tutorial().

The documentation for this class was generated from the following files:
  • textBox.h
  • textBox.cpp
Generated on Fri Aug 20 19:21:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

TextBox Member List

This is the complete list of members for TextBox, including all inherited members.
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | TextBox | [inline, virtual]
Create(double depth) | TextBox | [virtual]
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isReadOnly | TextBox |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | TextBox |
OnLButtonUp(StateMouse *mouse, int face) | TextBox |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnOverIn(Control *oldControl, int face) | TextBox |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
onTextBox | TextBox |
operator=(char *newText) | TextBox |
Control::operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetCursor(int column, int line) | TextBox |
SetLines(Color color, float size) | Control |
SetParent() | Control |
SetText(char *newText) | TextBox |
Size(double x, double y) | Control |
sleepedDelay | Control |
text | TextBox |
TextBox() | TextBox |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | TextBox |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~TextBox() | TextBox |
Generated on Fri Aug 20 19:21:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TextTexture class Reference

TextTexture Class Reference

Propriete d'un control a avoir une face avec du text. More...

#include <TextTexture.h>

List of all members.

Public Member Functions

TextTexture ()
void | operator= (char *newText)
void | SetText (char *newText)
void | SetXYFormat (int x, int y)
void | RefreshText ()
void | BindTexture (Face *face)
BOOL | MajTexture ()

Public Attributes

MyString text
Texture * texture
COLORREF | background
COLORREF | color
int | xFormat
int | yFormat
Face * faceText

Detailed Description

Propriete d'un control a avoir une face avec du text.

Example:

#include "TextTexture.h"

class TheControl: public Control , public TextTexture
{
        Create()
        {
                //... init graphique
                Bind(faceNode->Elems(FACE_FRONT));
                MajTexture();
        }
}

void TextIt()
{
        TheControl theControl;
        theControl="The text"; // change la texture
}

Definition at line 49 of file TextTexture.h.

Constructor & Destructor Documentation

TextTexture::TextTexture ( )

Definition at line 26 of file TextTexture.cpp.

References faceText, xFormat, and yFormat.

Member Function Documentation

void TextTexture::BindTexture ( Face * face )

Definition at line 36 of file TextTexture.cpp.

References faceText.

BOOL TextTexture::MajTexture ( )

Definition at line 65 of file TextTexture.cpp.

References BOOL(), faceText, and Face::texture.

Referenced by RefreshText().

void TextTexture::operator= ( char * newText )

Definition at line 41 of file TextTexture.cpp.

References SetText().

void TextTexture::RefreshText ( )

Definition at line 52 of file TextTexture.cpp.

References Texture::Delete(), Texture::FromText(), MajTexture(), xFormat, and yFormat.

Referenced by SetText().

void TextTexture::SetText ( char * newText )

Definition at line 46 of file TextTexture.cpp.

References RefreshText().

Referenced by operator=().

void TextTexture::SetXYFormat | ( | int | x,
 |  | int | y
 | ) | [inline]

Definition at line 64 of file TextTexture.h.

References xFormat, and yFormat.

Member Data Documentation

COLORREF TextTexture::background

Definition at line 54 of file TextTexture.h.

COLORREF TextTexture::color

Definition at line 55 of file TextTexture.h.

Face* TextTexture::faceText

Definition at line 58 of file TextTexture.h.

Referenced by BindTexture(), MajTexture(), and TextTexture().

MyString TextTexture::text

Definition at line 52 of file TextTexture.h.

Texture* TextTexture::texture

Definition at line 53 of file TextTexture.h.

int TextTexture::xFormat

Definition at line 56 of file TextTexture.h.

Referenced by RefreshText(), SetXYFormat(), and TextTexture().

int TextTexture::yFormat

Definition at line 57 of file TextTexture.h.

Referenced by RefreshText(), SetXYFormat(), and TextTexture().

The documentation for this class was generated from the following files:
  • TextTexture.h
  • TextTexture.cpp
Generated on Fri Aug 20 19:21:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

TextTexture Member List

This is the complete list of members for TextTexture, including all inherited members.
background | TextTexture |
BindTexture(Face *face) | TextTexture |
color | TextTexture |
faceText | TextTexture |
MajTexture() | TextTexture |
operator=(char *newText) | TextTexture |
RefreshText() | TextTexture |
SetText(char *newText) | TextTexture |
SetXYFormat(int x, int y) | TextTexture | [inline]
text | TextTexture |
TextTexture() | TextTexture |
texture | TextTexture |
xFormat | TextTexture |
yFormat | TextTexture |
Generated on Fri Aug 20 19:21:44 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Texture class Reference

Texture Class Reference

Gestion des textures pour la 3D. More...

#include <texture.h>

List of all members.

Public Member Functions

void | VerifyId ()
void | Config ()
void | ConfigPixelStore ()
GLubyte * | ConfigSize (int _xSize, int _ySize, BOOL allocate, BOOL resizeIt)
void | SetCoord (double x, double y)
double | GetXCoord (double x)
double | GetYCoord (double y)
BOOL | Delete ()
Destruction d'une texture.

Texture ()
~Texture ()
void | Zero ()
void | operator= (Texture &src)
operator GLuint () const
BOOL | FromNull ()
BOOL | FromFile (char *_name, char *fileName, BOOL resizeIt=FALSE)
BOOL | FromBitmap (char *_name, char *fileName, BOOL resizeIt=FALSE)
version win32, depreciated et non cross-compilable

BOOL | FromText (char *_name, char *text, COLORREF color, COLORREF background, int xFormat=0, int yFormat=0)
BOOL | Begin (char *_name, int deltaX, int deltaY)
BOOL | SetPixel (int x, int y, byte r, byte g, byte b)
Positione un pixel, BeginCustom() dois deja etre appelé.

BOOL | GetPixel (int x, int y, byte &r, byte &g, byte &b)
Donne un pixel, BeginCustom() dois deja etre appelé.

BOOL | AddText (char *text, COLORREF color, COLORREF background, int xFormat=0, int yFormat=0)
Ajout du text. !Attention cela efface tout ce qui avais avant.

BOOL | End ()

Static Public Member Functions

Texture * | Find (char *name)
Recherche une texture par son nom.

BOOL | Delete (Texture *texture)

Public Attributes

GLint | id
MyString name
MyString source
BOOL | useResizing
GLdouble | xScale
GLdouble | yScale
int | xSize
int | ySize
TextureTarget target
TextureWrap wrapT
TextureWrap wrapS
TextureFilter magFilter
TextureFilter minFilter
TextureEnvMode envMode
Color envColor
Color border

Static Public Attributes

MyList< Texture * > list

Detailed Description

Gestion des textures pour la 3D.

Les differentes façon de les generer sont:

  • Par un fichier graphique (CreateFromBitmap)
  • Par du text (CreateFromText)

Definition at line 63 of file texture.h.

Constructor & Destructor Documentation

Texture::Texture ( )

Definition at line 128 of file texture.cpp.

References Zero().

Texture::~Texture ( )

Definition at line 133 of file texture.cpp.

References GLuint().

Member Function Documentation

BOOL Texture::AddText | ( | char * | text,
 |  | COLORREF | color,
 |  | COLORREF | background,
 |  | int | xFormat = 0,
 |  | int | yFormat = 0
 | ) |

Ajout du text. !Attention cela efface tout ce qui avais avant.

Todo:
Ne pas effacer ce qu'il y avais avant

Definition at line 320 of file texture.cpp.

References BOOL(), format, HDC(), res, xSize, and ySize.

Referenced by FromText().

BOOL Texture::Begin | ( | char * | _name,
 |  | int | deltaX,
 |  | int | deltaY
 | ) |

Definition at line 270 of file texture.cpp.

References BOOL(), and ConfigSize().

Referenced by FromBitmap(), FromNull(), and FromText().

void Texture::Config ( )

Definition at line 36 of file texture.cpp.

References border, envColor, envMode, Color::isEnable, magFilter, minFilter, target, VerifyId(), wrapS, and wrapT.

Referenced by VerifyId().

void Texture::ConfigPixelStore ( )

Definition at line 69 of file texture.cpp.

Referenced by ConfigSize().

GLubyte * Texture::ConfigSize | ( | int | _xSize,
 |  | int | _ySize,
 |  | BOOL | allocate,
 |  | BOOL | resizeIt
 | ) |

Definition at line 78 of file texture.cpp.

References ConfigPixelStore(), GetNearExp2(), useResizing, VerifyId(), xScale, xSize, yScale, and ySize.

Referenced by Begin(), and FromFile().

BOOL Texture::Delete ( )

Destruction d'une texture.

Definition at line 51 of file texture.cpp.

References BOOL().

BOOL Texture::Delete ( Texture * texture ) [static]

Definition at line 56 of file texture.cpp.

References BOOL(), MyListIterator< Texture * >::GetElem(), MyList< Texture * >::i, MyListIterator< Texture * >::More(), and MyListIterator< Texture * >::Supr().

Referenced by TextTexture::RefreshText().

BOOL Texture::End ( )

Definition at line 277 of file texture.cpp.

References BOOL(), xSize, and ySize.

Referenced by FromBitmap(), FromNull(), and FromText().

Texture * Texture::Find ( char * name ) [static]

Recherche une texture par son nom.

Definition at line 259 of file texture.cpp.

References MyListIterator< Texture * >::GetElem(), MyList< Texture * >::i, MyListIterator< Texture * >::More(), and name.

BOOL Texture::FromBitmap | ( | char * | _name,
 |  | char * | fileName,
 |  | BOOL | resizeIt = FALSE
 | ) |

version win32, depreciated et non cross-compilable

Definition at line 389 of file texture.cpp.

References Begin(), BOOL(), End(), source, xSize, and ySize.

Referenced by Calculator::Create().

BOOL Texture::FromFile | ( | char * | _name,
 |  | char * | fileName,
 |  | BOOL | resizeIt = FALSE
 | ) |

Definition at line 188 of file texture.cpp.

References BOOL(), ConfigSize(), data, source, useResizing, xScale, xSize, yScale, and ySize.

Referenced by Tutorial::ApplicationDemo::OnSelectBkg().

BOOL Texture::FromNull ( )

Definition at line 179 of file texture.cpp.

References Begin(), BOOL(), End(), and SetPixel().

BOOL Texture::FromText | ( | char * | _name,
 |  | char * | text,
 |  | COLORREF | color,
 |  | COLORREF | background,
 |  | int | xFormat = 0,
 |  | int | yFormat = 0
 | ) |

Definition at line 379 of file texture.cpp.

References AddText(), Begin(), BOOL(), End(), and source.

Referenced by TextTexture::RefreshText().

BOOL Texture::GetPixel | ( | int | x,
 |  | int | y,
 |  | byte & | r,
 |  | byte & | g,
 |  | byte & | b
 | ) |

Donne un pixel, BeginCustom() dois deja etre appelé.

Definition at line 304 of file texture.cpp.

References BOOL(), xSize, and ySize.

double Texture::GetXCoord ( double x )

Definition at line 109 of file texture.cpp.

References useResizing, and xScale.

double Texture::GetYCoord ( double y )

Definition at line 115 of file texture.cpp.

References useResizing, and yScale.

Texture::operator GLuint ( ) const [inline]

Definition at line 102 of file texture.h.

void Texture::operator= ( Texture & src )

Definition at line 159 of file texture.cpp.

References border, envColor, envMode, magFilter, minFilter, source, src, target, useResizing, wrapS, wrapT, xScale, xSize, yScale, and ySize.

void Texture::SetCoord | ( | double | x,
 |  | double | y
 | ) |

Definition at line 121 of file texture.cpp.

References useResizing, xScale, and yScale.

Referenced by Face::Draw().

BOOL Texture::SetPixel | ( | int | x,
 |  | int | y,
 |  | byte | r,
 |  | byte | g,
 |  | byte | b
 | ) |

Positione un pixel, BeginCustom() dois deja etre appelé.

Definition at line 289 of file texture.cpp.

References BOOL(), xSize, and ySize.

Referenced by FromNull().

void Texture::VerifyId ( )

Definition at line 23 of file texture.cpp.

References Config(), GLuint(), MyList< Texture * >::i, and target.

Referenced by Config(), and ConfigSize().

void Texture::Zero ( )

Definition at line 140 of file texture.cpp.

References border, envColor, envMode, linear, magFilter, minFilter, modulate, repeat, target, texture2D, useResizing, wrapS, wrapT, xScale, yScale, and Color::Zero().

Referenced by Texture().

Member Data Documentation

Color Texture::border

Definition at line 81 of file texture.h.

Color Texture::envColor

Definition at line 80 of file texture.h.

Referenced by Config(), operator=(), and Zero().

TextureEnvMode Texture::envMode

Definition at line 79 of file texture.h.

Referenced by Config(), operator=(), and Zero().

GLint Texture::id

Definition at line 70 of file texture.h.

Referenced by Face::Draw(), and ValueEditors::MakeElemFaceStruct().

MyList< Texture * > Texture::list [static]

Definition at line 25 of file texture_instance.h.

TextureFilter Texture::magFilter

Definition at line 78 of file texture.h.

Referenced by Config(), operator=(), and Zero().

TextureFilter Texture::minFilter

Definition at line 78 of file texture.h.

Referenced by Config(), operator=(), and Zero().

MyString Texture::name

Definition at line 71 of file texture.h.

Referenced by Find(), and ValueEditors::MakeElemFaceStruct().

MyString Texture::source

Definition at line 72 of file texture.h.

Referenced by FromBitmap(), FromFile(), FromText(), and operator=().

TextureTarget Texture::target

Definition at line 76 of file texture.h.

Referenced by Config(), operator=(), VerifyId(), and Zero().

BOOL Texture::useResizing

Definition at line 73 of file texture.h.

Referenced by ConfigSize(), FromFile(), GetXCoord(), GetYCoord(), operator=(), SetCoord(), and Zero().

TextureWrap Texture::wrapS

Definition at line 77 of file texture.h.

Referenced by Config(), operator=(), and Zero().

TextureWrap Texture::wrapT

Definition at line 77 of file texture.h.

Referenced by Config(), operator=(), and Zero().

GLdouble Texture::xScale

Definition at line 74 of file texture.h.

Referenced by ConfigSize(), FromFile(), GetXCoord(), operator=(), SetCoord(), and Zero().

int Texture::xSize

Definition at line 75 of file texture.h.

Referenced by AddText(), ConfigSize(), End(), FromBitmap(), FromFile(), GetPixel(), operator=(), and SetPixel().

GLdouble Texture::yScale

Definition at line 74 of file texture.h.

Referenced by ConfigSize(), FromFile(), GetYCoord(), operator=(), SetCoord(), and Zero().

int Texture::ySize

Definition at line 75 of file texture.h.

Referenced by AddText(), ConfigSize(), End(), FromBitmap(), FromFile(), GetPixel(), operator=(), and SetPixel().

The documentation for this class was generated from the following files:
  • texture.h
  • texture.cpp
  • texture_instance.h
Generated on Fri Aug 20 19:21:45 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Texture Member List

This is the complete list of members for Texture, including all inherited members.
AddText(char *text, COLORREF color, COLORREF background, int xFormat=0, int yFormat=0) | Texture |
Begin(char *_name, int deltaX, int deltaY) | Texture |
border | Texture |
Config() | Texture |
ConfigPixelStore() | Texture |
ConfigSize(int _xSize, int _ySize, BOOL allocate, BOOL resizeIt) | Texture |
Delete(Texture *texture) | Texture | [static]
Delete() | Texture |
End() | Texture |
envColor | Texture |
envMode | Texture |
Find(char *name) | Texture | [static]
FromBitmap(char *_name, char *fileName, BOOL resizeIt=FALSE) | Texture |
FromFile(char *_name, char *fileName, BOOL resizeIt=FALSE) | Texture |
FromNull() | Texture |
FromText(char *_name, char *text, COLORREF color, COLORREF background, int xFormat=0, int yFormat=0) | Texture |
GetPixel(int x, int y, byte &r, byte &g, byte &b) | Texture |
GetXCoord(double x) | Texture |
GetYCoord(double y) | Texture |
id | Texture |
list | Texture | [static]
magFilter | Texture |
minFilter | Texture |
name | Texture |
operator GLuint() const | Texture | [inline]
operator=(Texture &src) | Texture |
SetCoord(double x, double y) | Texture |
SetPixel(int x, int y, byte r, byte g, byte b) | Texture |
source | Texture |
target | Texture |
Texture() | Texture |
useResizing | Texture |
VerifyId() | Texture |
wrapS | Texture |
wrapT | Texture |
xScale | Texture |
xSize | Texture |
yScale | Texture |
ySize | Texture |
Zero() | Texture |
~Texture() | Texture |
Generated on Fri Aug 20 19:21:45 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Textures struct Reference

Textures Struct Reference

Toute les textures "commune". More...

#include <controlEngine.h>

List of all members.

Public Attributes

Texture background
Texture plus
Texture minus
Texture min
Texture max
Texture maxAlternate
Texture rotateFace
Texture close
Texture tropique
Texture arrow
Texture arrowOblique
Texture degradeeFocus
Texture degradeeUnFocus
Texture iconBase
Texture cursorArrow
Texture cursorWait
Texture cursorText
Texture cursorMoving
Texture cursorPush
Texture grip

Detailed Description

Toute les textures "commune".

Definition at line 102 of file controlEngine.h.

Member Data Documentation

Texture Textures::arrow

Definition at line 113 of file controlEngine.h.

Referenced by Slider::Create(), and Tutorial::UniversDemo::SetFace().

Texture Textures::arrowOblique

Definition at line 114 of file controlEngine.h.

Texture Textures::background

Definition at line 104 of file controlEngine.h.

Referenced by Tutorial::ApplicationDemo::OnSelectBkg().

Texture Textures::close

Definition at line 111 of file controlEngine.h.

Referenced by Title::Create().

Texture Textures::cursorArrow

Definition at line 118 of file controlEngine.h.

Referenced by Cursor::ApplyType().

Texture Textures::cursorMoving

Definition at line 121 of file controlEngine.h.

Referenced by Cursor::ApplyType().

Texture Textures::cursorPush

Definition at line 122 of file controlEngine.h.

Referenced by Cursor::ApplyType().

Texture Textures::cursorText

Definition at line 120 of file controlEngine.h.

Referenced by Cursor::ApplyType().

Texture Textures::cursorWait

Definition at line 119 of file controlEngine.h.

Referenced by Cursor::ApplyType().

Texture Textures::degradeeFocus

Definition at line 115 of file controlEngine.h.

Referenced by Title::GotFocus().

Texture Textures::degradeeUnFocus

Definition at line 116 of file controlEngine.h.

Referenced by Title::LostFocus().

Texture Textures::grip

Definition at line 123 of file controlEngine.h.

Referenced by Slider::Create().

Texture Textures::iconBase

Definition at line 117 of file controlEngine.h.

Referenced by Title::Create(), and Tutorial::FaceDemo::FaceDemo().

Texture Textures::max

Definition at line 108 of file controlEngine.h.

Referenced by Title::Create(), and Title::OnOriginal().

Texture Textures::maxAlternate

Definition at line 109 of file controlEngine.h.

Referenced by Title::OnMax().

Texture Textures::min

Definition at line 107 of file controlEngine.h.

Referenced by Title::Create().

Texture Textures::minus

Definition at line 106 of file controlEngine.h.

Referenced by TreeView::ConfigFacesPlus().

Texture Textures::plus

Definition at line 105 of file controlEngine.h.

Referenced by TreeView::ConfigFacesPlus().

Texture Textures::rotateFace

Definition at line 110 of file controlEngine.h.

Texture Textures::tropique

Definition at line 112 of file controlEngine.h.

Referenced by Tutorial::BaseDemo::BaseDemo().

The documentation for this struct was generated from the following file:
  • controlEngine.h
Generated on Fri Aug 20 19:21:45 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Textures Member List

This is the complete list of members for Textures, including all inherited members.
arrow | Textures
arrowOblique | Textures
background | Textures
close | Textures
cursorArrow | Textures
cursorMoving | Textures
cursorPush | Textures
cursorText | Textures
cursorWait | Textures
degradeeFocus | Textures
degradeeUnFocus | Textures
grip | Textures
iconBase | Textures
max | Textures
maxAlternate | Textures
min | Textures
minus | Textures
plus | Textures
rotateFace | Textures
tropique | Textures
Generated on Fri Aug 20 19:21:45 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Timer class Reference

Timer Class Reference

#include <input.h>

List of all members.

Public Member Functions

Timer ()
~Timer ()
BOOL | Start ()
BOOL | Start (int frequency)
BOOL | Pause ()
BOOL | Resume ()
BOOL | Stop ()
BOOL | StopAndUnBind ()
BOOL | Stop (int idToFind, BOOL unBind)
double | GetDeltaTime (BOOL reset=FALSE)
double | GetDeltaTime (BOOL reset, LARGE_INTEGER *referenceTime)
BOOL | IsRuning ()

Static Public Member Functions

BOOL | Init (HWND _hWnd)
Timer * | Find (int idToFind)
Recherche d'une instanciation.

BOOL | Call (int idToFind)
A utiliser dans le message WM_TIMER de la callback ou le hWnd a ete Init.

Public Attributes

signal1< Timer * > | onTimer
int Call(Timer *timer)

int | id
id du WM_TIMER en cour

BOOL | insideList
cette element est il dans la liste ?

int | frequency
frequence de declenchement

LARGE_INTEGER | beginTime
BOOL | isRuning
timer en cours

Static Public Attributes

MyList< Timer * > list
list des instances de TimerEvent

int | nextFreeId = 10
prochain numero de timer valide

HWND | hWnd
hWnd qui collect les messages

LARGE_INTEGER | frecTimer
frequence du timer

Constructor & Destructor Documentation

Timer::Timer ( )

Definition at line 167 of file input.cpp.

References insideList, isRuning, and nextFreeId.

Timer::~Timer ( )

Definition at line 175 of file input.cpp.

References Stop().

Member Function Documentation

BOOL Timer::Call ( int idToFind ) [static]

A utiliser dans le message WM_TIMER de la callback ou le hWnd a ete Init.

Definition at line 199 of file input.cpp.

References BOOL(), Find(), and onTimer.

Referenced by ControlEngine::Proc().

Timer * Timer::Find ( int idToFind ) [static]

Recherche d'une instanciation.

Parameters:
idToFind: id a trouver parmis la id de la list
Returns:
event (Timer *) trouvé ou NULL si n'existe pas

Definition at line 186 of file input.cpp.

References MyListIterator< Timer * >::GetElem(), MyList< Timer * >::i, id, list, and MyListIterator< Timer * >::More().

Referenced by Call(), and Stop().

double Timer::GetDeltaTime | ( | BOOL | reset,
 |  | LARGE_INTEGER * | referenceTime
 | ) |

Definition at line 269 of file input.cpp.

References frecTimer, and reset.

double Timer::GetDeltaTime ( BOOL reset = FALSE )

Definition at line 263 of file input.cpp.

References insideList, isRuning, and reset.

Referenced by Inertia::Add(), Inertia::GetMoyValue(), EventInertia::OnInertia(), Button::OnPushDown(), Univers::OnRefresh(), Title::OnRefresh(), Tutorial::FaceDemo::OnTimer(), ControlEngine::Proc(), Inertia::Start(), and EffectApparition::Start().

BOOL Timer::Init ( HWND _hWnd ) [static]

Definition at line 161 of file input.cpp.

References BOOL(), frecTimer, and hWnd.

Referenced by ControlEngine::Start().

BOOL Timer::IsRuning ( )

Definition at line 279 of file input.cpp.

References BOOL(), and isRuning.

BOOL Timer::Pause ( )

Definition at line 251 of file input.cpp.

References BOOL(), hWnd, and isRuning.

Referenced by Start().

BOOL Timer::Resume ( )

Definition at line 257 of file input.cpp.

References BOOL(), frequency, hWnd, and isRuning.

BOOL Timer::Start ( int frequency )

Definition at line 241 of file input.cpp.

References BOOL(), frequency, hWnd, MyList< Timer * >::i, insideList, isRuning, and list.

BOOL Timer::Start ( )

Definition at line 235 of file input.cpp.

References BOOL(), and Pause().

BOOL Timer::Stop | ( | int | idToFind,
 |  | BOOL | unBind
 | ) |

Definition at line 220 of file input.cpp.

References BOOL(), Find(), hWnd, MyList< Timer * >::i, insideList, isRuning, list, onTimer, and MyListIterator< Timer * >::Supr().

BOOL Timer::Stop ( )

Definition at line 211 of file input.cpp.

References BOOL().

Referenced by Button::PushUp(), EventInertia::Stop(), StopAndUnBind(), and ~Timer().

BOOL Timer::StopAndUnBind ( )

Definition at line 216 of file input.cpp.

References BOOL(), and Stop().

Referenced by Slider::OnButtonsLMouseUp(), Slider::OnButtonsOverOut(), and Control::OnMButtonUp().

Member Data Documentation

LARGE_INTEGER Timer::beginTime

Definition at line 154 of file input.h.

LARGE_INTEGER Timer::frecTimer [static]

frequence du timer

Definition at line 44 of file input_instance.h.

Referenced by GetDeltaTime(), and Init().

int Timer::frequency

frequence de declenchement

Definition at line 153 of file input.h.

Referenced by Resume(), and Start().

HWND Timer::hWnd [static]

hWnd qui collect les messages

Definition at line 43 of file input_instance.h.

Referenced by Init(), Pause(), Resume(), Start(), and Stop().

int Timer::id

id du WM_TIMER en cour

Definition at line 151 of file input.h.

Referenced by Find().

BOOL Timer::insideList

cette element est il dans la liste ?

Definition at line 152 of file input.h.

Referenced by GetDeltaTime(), Start(), Stop(), and Timer().

BOOL Timer::isRuning

timer en cours

Definition at line 155 of file input.h.

Referenced by GetDeltaTime(), IsRuning(), Control::OnMButtonUp(), Pause(), Resume(), Start(), Stop(), and Timer().

MyList< Timer * > Timer::list [static]

list des instances de TimerEvent

Definition at line 41 of file input_instance.h.

Referenced by Find(), Start(), and Stop().

int Timer::nextFreeId = 10 [static]

prochain numero de timer valide

Definition at line 42 of file input_instance.h.

Referenced by Timer().

signal1<Timer *> Timer::onTimer

int Call(Timer *timer)

Definition at line 150 of file input.h.

Referenced by Call(), Tutorial::UniversDemo::ConfigSlide(), TreeDirectory::OnClickDirectory(), Tutorial::FaceDemo::OnEnd(), Univers::OnExit(), ResizingAndRotateControl::OnHover(), Control::OnMouseMove(), TreeView::OnNextFrame(), Univers::OnOverIn(), Title::OnOverIn(), Univers::OnOverOut(), Title::OnOverOut(), Tutorial::UniversDemo::OnTimer(), TaskWindow::Restore(), EffectApparition::Start(), Stop(), EffectApparition::Stop(), Title::~Title(), and Univers::~Univers().

The documentation for this class was generated from the following files:
  • input.h
  • input.cpp
  • input_instance.h
Generated on Fri Aug 20 19:21:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Timer Member List

This is the complete list of members for Timer, including all inherited members.
beginTime | Timer |
Call(int idToFind) | Timer | [static]
Find(int idToFind) | Timer | [static]
frecTimer | Timer | [static]
frequency | Timer |
GetDeltaTime(BOOL reset=FALSE) | Timer |
GetDeltaTime(BOOL reset, LARGE_INTEGER *referenceTime) | Timer |
hWnd | Timer | [static]
id | Timer |
Init(HWND _hWnd) | Timer | [static]
insideList | Timer |
isRuning | Timer |
IsRuning() | Timer |
list | Timer | [static]
nextFreeId | Timer | [static]
onTimer | Timer |
Pause() | Timer |
Resume() | Timer |
Start() | Timer |
Start(int frequency) | Timer |
Stop() | Timer |
Stop(int idToFind, BOOL unBind) | Timer |
StopAndUnBind() | Timer |
Timer() | Timer |
~Timer() | Timer |
Generated on Fri Aug 20 19:21:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tip class Reference

Tip Class Reference

Class de parametre et d'evenement d'un "ToolsTip". More...

#include <tip.h>

Inheritance diagram for Tip:

Control List of all members.

Public Member Functions

Tip ()
~Tip ()
void | Create ()
void | operator= (char *newCaption)
void | SetText (char *newCaption)
void | ToString (MyString &str)
Pour le debugage.

Public Attributes

Text3D text

Detailed Description

Class de parametre et d'evenement d'un "ToolsTip".

Definition at line 33 of file tip.h.

Constructor & Destructor Documentation

Tip::Tip ( )

Definition at line 26 of file tip.cpp.

References align_center, ce, ControlEngine::fontTexture, ft_texture, BasicText3D::material, Text3D::SetAlign(), Material::SetDS(), Text3D::Setup(), and Text3D::SetWrapping().

Tip::~Tip ( )

Definition at line 36 of file tip.cpp.

Member Function Documentation

void Tip::Create ( ) [virtual]

Reimplemented from Control.

Definition at line 42 of file tip.cpp.

References Primitive::AddFace(), Face::blending, ce, MyTreeNode< T >::elem, f, Face::material, ControlEngine::primitive, Material::SetDS(), Control::SetParent(), and Face::text.

Referenced by Tutorial::BaseDemo::BaseDemo(), Title::Create(), Tutorial::Create(), Demo::Demo(), ControlEngine::DrawFPS(), and Univers::OnKeyUp().

void Tip::operator= ( char * newCaption )

Definition at line 56 of file tip.cpp.

References Text3D::SetText().

void Tip::SetText ( char * newCaption )

Definition at line 61 of file tip.cpp.

References Text3D::SetText().

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Demo::Demo(), ControlEngine::DrawFPS(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), Tutorial::BaseDemo::OnXSliderMove(), Tutorial::BaseDemo::OnYSliderMove(), Tutorial::SetTutorialTipText(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

void Tip::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 68 of file tip.cpp.

References MyString::AddFormat().

Member Data Documentation

Text3D Tip::text

Definition at line 37 of file tip.h.

Referenced by Tutorial::BaseDemo::BaseDemo(), Demo::Demo(), Univers::OnKeyUp(), and Title::Title().

The documentation for this class was generated from the following files:
  • tip.h
  • tip.cpp
Generated on Fri Aug 20 19:21:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tip Member List

This is the complete list of members for Tip, including all inherited members.
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | Tip | [virtual]
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(char *newCaption) | Tip |
Control::operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
SetText(char *newCaption) | Tip |
Size(double x, double y) | Control |
sleepedDelay | Control |
text | Tip |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
Tip() | Tip |
ToString(MyString &str) | Tip |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~Tip() | Tip |
Generated on Fri Aug 20 19:21:46 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Title class Reference

Title Class Reference

titre affiche une bare degradé titre avec des boutons (min,max,close) More...

#include <title.h>

Inheritance diagram for Title:

Control List of all members.

Public Member Functions

Title ()
~Title ()
virtual void | Create ()
void | Create (Control *container, double depth=DEFAULT_DEPTH_TITLE)
void | ToString (MyString &str)
Pour le debugage.

void | GotFocus ()
Fenetre parente a le focus.

void | LostFocus ()
Fenetre parente n'a plus le focus.

void | operator= (char *newCaption)
void | SetText (char *newCaption)
void | SetUses (BOOL _useMin, BOOL _useMax, BOOL _useClose, BOOL _useIcon)
int | OnClick (StateMouse *mouse, int face)
int | OnLButtonDown (StateMouse *mouse, int face)
Un simple click.

int | OnMButtonDown (StateMouse *mouse, int face)
int | OnLMButtonUp (StateMouse *mouse, int face)
int | OnMaxOrOriginal (StateMouse *mouse, int face)
Swap soit en Maximize soit en OriginalSize.

int | OnMaxOrOriginal ()
int | OnMouseMove (StateMouse *mouse, int deltaX, int deltaY, int face)
La souris bouge.

int | OnMouseWheel (StateMouse *mouse, int face)
La wheel configure le demplacement z.

int | OnMin ()
Bouton min clicker.

int | OnMax ()
Boutton max clicker.

int | OnOriginal ()
Affichage en taille par defaut.

int | OnClose ()
Bouton close clicker.

int | OnKeyDown (StateKey *key, int face)
si appuis de les touche de direction ==> move , si shift en meme temp ==> rotate

int | OnKeyUp (StateKey *key, int face)
si appuis de ESC sur le title ==> Close, HOME ==> angles=0

int | OnRefresh (Timer *)
A chaque rafraichisement graphique, verifie s'il y a des deplacements rapides.

int | OnOverIn (Control *, int)
int | OnOverOut (Control *, int)

Public Attributes

Button btnMin
Button btnMax
Button btnClose
Button btnIcon
Text3D * caption
Tip tipCaption
Control * container
control pere contenant

BOOL | focused
BOOL | useIcon
le bouton icone est il a utiliser

BOOL | useMin
le bouton min est il a utiliser

BOOL | useMax
le bouton max est il a utiliser

BOOL | useClose
le bouton close est il a utiliser

Point3D< LayoutDouble > originalSize
Point3D< GLdouble > | originalAngle
FaceNode * tempNode
StateTitle state
StateMouse oldMouse
EventTitle onTitle

Detailed Description

titre affiche une bare degradé titre avec des boutons (min,max,close)

Il n'a theoriquement pas d'interet seul, un conteneur peut s'en servire (Window,MsgBox,etc ...)

Definition at line 51 of file title.h.

Constructor & Destructor Documentation

Title::Title ( )

Definition at line 29 of file title.cpp.

References align_center, btnClose, btnIcon, btnMax, btnMin, ce, EventButton::click, container, EventMouseButton::doubleClick, EventKey::down, EventMouseButton::down, focused, ControlEngine::fontTexture, ft_texture, EventOver::in, EventControl::key, EventMouse::left, BasicText3D::material, EventMouse::mid, EventControl::mouse, EventMouse::move, Control::name, Button::onButton, OnLMButtonUp(), OnMaxOrOriginal(), OnMin(), EventOver::out, EventControl::over, Text3D::SetAlign(), Material::SetDS(), Text3D::Setup(), SetUses(), Text3D::SetWrapping(), state, Tip::text, tipCaption, EventKey::up, EventMouseButton::up, and EventMouse::wheel.

Title::~Title ( )

Definition at line 123 of file title.cpp.

References ce, Timer::onTimer, and ControlEngine::timerRefresh.

Member Function Documentation

void Title::Create | ( | Control * | container,
 |  | double | depth = DEFAULT_DEPTH_TITLE
 | ) |

Definition at line 72 of file title.cpp.

References Primitive::AddBox(), btnClose, btnIcon, btnMax, btnMin, ce, Textures::close, container, Tip::Create(), Button::Create(), MyTreeNode< T >::elem, MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, GotFocus(), Primitive::GoTo(), Textures::iconBase, Textures::max, Textures::min, ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Control::SetAlphaBlending(), Control::SetParent(), ControlEngine::texture, tipCaption, useClose, useIcon, useMax, useMin, Control::XDockCenter(), Control::XDockLeft(), Control::XDockRight(), and Control::YDockCenter().

virtual void Title::Create ( ) [inline, virtual]

Reimplemented from Control.

Definition at line 78 of file title.h.

References DEFAULT_DEPTH_TITLE.

Referenced by Tutorial::BaseDemo::BaseDemo(), Window::Create(), and Tutorial::FaceDemo::FaceDemo().

void Title::GotFocus ( )

Fenetre parente a le focus.

Todo:
Passer nouveau parametre a onTitle.GotFocus(oldSelected), gestion des selected control precedent et suivant

Definition at line 380 of file title.cpp.

References ce, Debug0Param, Textures::degradeeFocus, MyTreeNode< T >::Elems(), f, FACE_BOTTOM, FACE_FRONT, FACE_LEFT, FACE_RIGHT, FACE_TOP, focused, EventTitle::gotFocus, onTitle, and ControlEngine::texture.

Referenced by Create(), OnLButtonDown(), Window::OnLMRButton(), and OnMButtonDown().

void Title::LostFocus ( )

Fenetre parente n'a plus le focus.

Definition at line 399 of file title.cpp.

References ce, Debug0Param, Textures::degradeeUnFocus, MyTreeNode< T >::Elems(), FACE_BOTTOM, FACE_FRONT, FACE_LEFT, FACE_RIGHT, FACE_TOP, focused, EventTitle::lostFocus, onTitle, and ControlEngine::texture.

int Title::OnClick | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented from Control.

int Title::OnClose ( )

Bouton close clicker.

Definition at line 416 of file title.cpp.

References EventTitle::close, Debug0Param, and onTitle.

Referenced by OnKeyUp().

int Title::OnKeyDown | ( | StateKey * | key,
 |  | int | face
 | ) |

si appuis de les touche de direction ==> move , si shift en meme temp ==> rotate

Reimplemented from Control.

Definition at line 300 of file title.cpp.

References BOOL(), StateKey::code, container, DebugKey2, StateKey::GetState(), and Control::RotateQuaternion().

int Title::OnKeyUp | ( | StateKey * | key,
 |  | int | face
 | ) |

si appuis de ESC sur le title ==> Close, HOME ==> angles=0

Reimplemented from Control.

Definition at line 283 of file title.cpp.

References StateKey::code, container, DebugKey2, OnClose(), and Control::RotateTo().

int Title::OnLButtonDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Un simple click.

Reimplemented from Control.

Definition at line 350 of file title.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorRepere, DebugMouse2, and GotFocus().

int Title::OnLMButtonUp | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Definition at line 368 of file title.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorRepere, and DebugMouse2.

Referenced by Title().

int Title::OnMax ( )

Boutton max clicker.

place le title en fullScreen mode

Definition at line 262 of file title.cpp.

References btnMax, ce, container, Debug0Param, MyTreeNode< T >::elem, MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, MyTree< Face >::GetRoot(), Textures::maxAlternate, EventTitle::maximize, MyTreeNode< T >::MoveTo(), onTitle, originalAngle, originalSize, MyTreeNode< T >::parent, ControlEngine::primitive, Control::RotateTo(), state, tempNode, ControlEngine::texture, Primitive::tree, and useMax.

Referenced by Tutorial::LayoutDemo::LayoutDemo(), and OnMaxOrOriginal().

int Title::OnMaxOrOriginal ( )

Definition at line 189 of file title.cpp.

References Debug0Param, OnMax(), OnOriginal(), and state.

int Title::OnMaxOrOriginal | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Swap soit en Maximize soit en OriginalSize.

Definition at line 178 of file title.cpp.

References DebugMouse2, OnMax(), OnOriginal(), and state.

Referenced by Title().

int Title::OnMButtonDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented from Control.

Definition at line 359 of file title.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorRepere, DebugMouse2, and GotFocus().

int Title::OnMin ( )

Bouton min clicker.

Sauvegarde la taille et position original de la fenetre et place le titre le plus bas a gauche du conteneur

Todo:
Seul l'univers pour le moment, mais dois etre etendu style fenetre MDI)

Definition at line 241 of file title.cpp.

References TaskWindow::Add(), ce, container, Debug0Param, MyTreeNode< T >::elem, Control::faceNode, MyTree< Face >::GetRoot(), EventTitle::minimize, MyTreeNode< T >::MoveTo(), onTitle, originalAngle, originalSize, MyTreeNode< T >::parent, state, ControlEngine::taskWindow, tempNode, and ControlEngine::trash.

Referenced by Demo::Demo(), Tutorial::Demo::Demo(), Tutorial::ApplicationDemo::OnEnd(), Tutorial::WindowDemo::OnEnd(), Tutorial::BaseDemo::OnEnd(), Title(), and Tutorial::Tutorial().

int Title::OnMouseMove | ( | StateMouse * | mouse,
 |  | int | deltaX,
 |  | int | deltaY,
 |  | int | face
 | ) |

La souris bouge.

Definition at line 335 of file title.cpp.

References container, FACE_FRONT, StateMouse::GetNbButtonPush(), StateMouse::leftBtn, StateMouse::midBtn, Control::Move(), and Control::RotateQuaternion().

int Title::OnMouseWheel | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

La wheel configure le demplacement z.

Reimplemented from Control.

Definition at line 226 of file title.cpp.

References container, DebugMouse2, Control::Move(), and StateMouse::wheelDelta.

int Title::OnOriginal ( )

Affichage en taille par defaut.

Action:

  • Change le boutton de Max en mode "original"
  • re-place le container a sa postion et d'origine
  • retir de taskWindow le boutton de restor

Definition at line 208 of file title.cpp.

References btnMax, ce, container, Debug0Param, MyTreeNode< T >::elem, MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, Textures::max, MyTreeNode< T >::MoveTo(), originalAngle, originalSize, TaskWindow::Restore(), state, ControlEngine::taskWindow, tempNode, ControlEngine::texture, and useMax.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Tutorial::Demo::Ending(), OnMaxOrOriginal(), Tutorial::WindowDemo::WindowDemo(), and Tutorial::~Tutorial().

int Title::OnOverIn | ( | Control * | ,
 |  | int |
 | ) |

Definition at line 147 of file title.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorRepere, Debug2Param, Control::name, Timer::onTimer, and ControlEngine::timerRefresh.

int Title::OnOverOut | ( | Control * | ,
 |  | int |
 | ) |

Definition at line 155 of file title.cpp.

References ce, Debug2Param, Control::name, Timer::onTimer, and ControlEngine::timerRefresh.

int Title::OnRefresh ( Timer * )

A chaque rafraichisement graphique, verifie s'il y a des deplacements rapides.

Definition at line 129 of file title.cpp.

References container, Timer::GetDeltaTime(), StateKey::GetState(), and Control::Move().

void Title::operator= ( char * newCaption ) [inline]

Definition at line 83 of file title.h.

References SetText().

void Title::SetText ( char * newCaption )

Definition at line 170 of file title.cpp.

References Text3D::SetText().

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), operator=(), TaskWindow::TaskWindow(), and Tutorial::WindowDemo::WindowDemo().

void Title::SetUses | ( | BOOL | _useMin,
 |  | BOOL | _useMax,
 |  | BOOL | _useClose,
 |  | BOOL | _useIcon
 | ) |

Definition at line 162 of file title.cpp.

References useClose, useIcon, useMax, and useMin.

Referenced by Tutorial::FaceDemo::FaceDemo(), and Title().

void Title::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 426 of file title.cpp.

References MyString::AddFormat(), MyTreeNode< T >::Elems(), FACE_FRONT, and focused.

Member Data Documentation

Button Title::btnClose

Definition at line 55 of file title.h.

Referenced by Create(), MsgBox::MsgBox(), and Title().

Button Title::btnIcon

Definition at line 56 of file title.h.

Referenced by Create(), Calculator::Create(), and Title().

Button Title::btnMax

Definition at line 55 of file title.h.

Referenced by Create(), OnMax(), OnOriginal(), and Title().

Button Title::btnMin

Definition at line 55 of file title.h.

Referenced by Create(), and Title().

Text3D* Title::caption

Definition at line 57 of file title.h.

Referenced by TaskWindow::Add().

Control* Title::container

control pere contenant

Definition at line 59 of file title.h.

Referenced by Create(), OnKeyDown(), OnKeyUp(), OnMax(), OnMin(), OnMouseMove(), OnMouseWheel(), OnOriginal(), OnRefresh(), and Title().

BOOL Title::focused

Definition at line 61 of file title.h.

Referenced by GotFocus(), LostFocus(), Title(), and ToString().

StateMouse Title::oldMouse

Definition at line 72 of file title.h.

EventTitle Title::onTitle

Definition at line 73 of file title.h.

Referenced by GotFocus(), LostFocus(), OnClose(), OnMax(), OnMin(), and Window::Window().

Point3D<GLdouble> Title::originalAngle

Definition at line 69 of file title.h.

Referenced by OnMax(), OnMin(), and OnOriginal().

Point3D<LayoutDouble> Title::originalSize

Definition at line 68 of file title.h.

Referenced by OnMax(), OnMin(), and OnOriginal().

StateTitle Title::state

Definition at line 71 of file title.h.

Referenced by OnMax(), OnMaxOrOriginal(), OnMin(), OnOriginal(), and Title().

FaceNode* Title::tempNode

Definition at line 70 of file title.h.

Referenced by OnMax(), OnMin(), and OnOriginal().

Tip Title::tipCaption

Definition at line 58 of file title.h.

Referenced by Create(), and Title().

BOOL Title::useClose

le bouton close est il a utiliser

Definition at line 65 of file title.h.

Referenced by Create(), SetUses(), TaskWindow::TaskWindow(), and Tutorial::Tutorial().

BOOL Title::useIcon

le bouton icone est il a utiliser

Definition at line 62 of file title.h.

Referenced by Create(), and SetUses().

BOOL Title::useMax

le bouton max est il a utiliser

Definition at line 64 of file title.h.

Referenced by Calculator::Calculator(), Create(), MsgBox::MsgBox(), OnMax(), OnOriginal(), SetUses(), TaskWindow::TaskWindow(), and Tutorial::Tutorial().

BOOL Title::useMin

le bouton min est il a utiliser

Definition at line 63 of file title.h.

Referenced by Create(), MsgBox::MsgBox(), SetUses(), and Tutorial::Tutorial().

The documentation for this class was generated from the following files:
  • title.h
  • title.cpp
Generated on Fri Aug 20 19:21:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Title Member List

This is the complete list of members for Title, including all inherited members.
btnClose | Title |
btnIcon | Title |
btnMax | Title |
btnMin | Title |
caption | Title |
ChangeDirection() | Control |
container | Title |
Control() | Control |
controls | Control | [static]
Create() | Title | [inline, virtual]
Create(Control *container, double depth=DEFAULT_DEPTH_TITLE) | Title |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
focused | Title |
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
GotFocus() | Title |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
LostFocus() | Title |
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
oldMouse | Title |
OnClick(StateMouse *mouse, int face) | Title |
OnClose() | Title |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Title |
OnKeyUp(StateKey *key, int face) | Title |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Title |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnLMButtonUp(StateMouse *mouse, int face) | Title |
OnMax() | Title |
OnMaxOrOriginal(StateMouse *mouse, int face) | Title |
OnMaxOrOriginal() | Title |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Title |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMin() | Title |
OnMouseMove(StateMouse *mouse, int deltaX, int deltaY, int face) | Title |
Control::OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Title |
OnOriginal() | Title |
OnOverIn(Control *, int) | Title |
OnOverOut(Control *, int) | Title |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
OnRefresh(Timer *) | Title |
onTitle | Title |
operator=(char *newCaption) | Title | [inline]
Control::operator=(Control &src) | Control |
originalAngle | Title |
originalSize | Title |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
SetText(char *newCaption) | Title |
SetUses(BOOL _useMin, BOOL _useMax, BOOL _useClose, BOOL _useIcon) | Title |
Size(double x, double y) | Control |
sleepedDelay | Control |
state | Title |
tempNode | Title |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
tipCaption | Title |
Title() | Title |
ToString(MyString &str) | Title |
useClose | Title |
useIcon | Title |
useMax | Title |
useMin | Title |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~Title() | Title |
Generated on Fri Aug 20 19:21:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TrackButton class Reference

TrackButton Class Reference

Class de parametre et d'evenement d'un "Bouton". More...

#include <trackButton.h>

Inheritance diagram for TrackButton:

Control List of all members.

Public Member Functions

TrackButton ()
~TrackButton ()
virtual void | Create ()
BOOL | Create (double size)
void | ToString (MyString &str)
Pour le debugage.

void | SetMode (DockPos newOrientation)
void | SetResizeAndRotate (BOOL resize, BOOL rotate)
int | OnButtonClick ()
int | OnMouseMove (StateMouse *mouse, int deltaX, int deltaY, int face)
int | OnOverOut (Control *newControl, int face)
int | OnClickLeft (StateMouse *, int)
int | OnClickRight (StateMouse *, int)
int | OnClickTop (StateMouse *, int)
int | OnClickBottom (StateMouse *, int)
int | OnClickLeftTop (StateMouse *, int)
int | OnClickLeftBottom (StateMouse *, int)
int | OnClickRightTop (StateMouse *, int)
int | OnClickRightBottom (StateMouse *, int)

Public Attributes

DockPos orientation
Orientation du boutton([haut]|[bas]|[gauche]|[droit]).

EventTrackButton onTrackButton

Detailed Description

Class de parametre et d'evenement d'un "Bouton".

Definition at line 41 of file trackButton.h.

Constructor & Destructor Documentation

TrackButton::TrackButton ( )

Definition at line 29 of file trackButton.cpp.

References DockPos, orientation, EventOver::out, EventControl::over, and SetResizeAndRotate().

TrackButton::~TrackButton ( )

Definition at line 41 of file trackButton.cpp.

Member Function Documentation

BOOL TrackButton::Create ( double size )

Definition at line 47 of file trackButton.cpp.

References Primitive::AddBox(), BOOL(), ce, MyTreeNode< T >::elem, f, ControlEngine::primitive, Control::SetAlphaBlending(), and Control::SetParent().

virtual void TrackButton::Create ( ) [inline, virtual]

Reimplemented from Control.

Definition at line 59 of file trackButton.h.

References DEFAULT_SIZE_TRACK_BUTTON.

Referenced by ResizingAndRotateControl::OnHover().

int TrackButton::OnButtonClick ( )

int TrackButton::OnClickBottom | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 128 of file trackButton.cpp.

References DebugMouse2, and Control::Rotate().

int TrackButton::OnClickLeft | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 107 of file trackButton.cpp.

References DebugMouse2, and Control::Rotate().

int TrackButton::OnClickLeftBottom | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 142 of file trackButton.cpp.

References DebugMouse2, and Control::Rotate().

int TrackButton::OnClickLeftTop | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 135 of file trackButton.cpp.

References DebugMouse2, and Control::Rotate().

int TrackButton::OnClickRight | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 114 of file trackButton.cpp.

References DebugMouse2, and Control::Rotate().

int TrackButton::OnClickRightBottom | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 156 of file trackButton.cpp.

References DebugMouse2, and Control::Rotate().

int TrackButton::OnClickRightTop | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 149 of file trackButton.cpp.

References DebugMouse2, and Control::Rotate().

int TrackButton::OnClickTop | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 121 of file trackButton.cpp.

References DebugMouse2, and Control::Rotate().

int TrackButton::OnMouseMove | ( | StateMouse * | mouse,
 |  | int | deltaX,
 |  | int | deltaY,
 |  | int | face
 | ) |

Resize du parent si deplacement+appuis boutton gauche

Todo:
le parent peut etre docker en haut,bas etc ... ici le seul cas gerer est centré

Definition at line 167 of file trackButton.cpp.

References bottom, StateMouse::leftBtn, Control::Move(), orientation, Control::ReSize(), StateMouse::rightBtn, and top.

int TrackButton::OnOverOut | ( | Control * | newControl,
 |  | int | face
 | ) |

Definition at line 208 of file trackButton.cpp.

References Debug2Param, DockPos, Control::name, and orientation.

void TrackButton::SetMode ( DockPos newOrientation )

Definition at line 67 of file trackButton.cpp.

References orientation.

Referenced by ResizingAndRotateControl::OnHover().

void TrackButton::SetResizeAndRotate | ( | BOOL | resize,
 |  | BOOL | rotate
 | ) |

Definition at line 61 of file trackButton.cpp.

Referenced by ResizingAndRotateControl::OnHover(), and TrackButton().

void TrackButton::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 216 of file trackButton.cpp.

References MyString::AddFormat().

Member Data Documentation

EventTrackButton TrackButton::onTrackButton

Definition at line 54 of file trackButton.h.

DockPos TrackButton::orientation

Orientation du boutton([haut]|[bas]|[gauche]|[droit]).

Definition at line 52 of file trackButton.h.

Referenced by OnMouseMove(), OnOverOut(), SetMode(), and TrackButton().

The documentation for this class was generated from the following files:
  • trackButton.h
  • trackButton.cpp
Generated on Fri Aug 20 19:21:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

TrackButton Member List

This is the complete list of members for TrackButton, including all inherited members.
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | TrackButton | [inline, virtual]
Create(double size) | TrackButton |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnButtonClick() | TrackButton |
OnClick(StateMouse *mouse, int face) | Control |
OnClickBottom(StateMouse *, int) | TrackButton |
OnClickLeft(StateMouse *, int) | TrackButton |
OnClickLeftBottom(StateMouse *, int) | TrackButton |
OnClickLeftTop(StateMouse *, int) | TrackButton |
OnClickRight(StateMouse *, int) | TrackButton |
OnClickRightBottom(StateMouse *, int) | TrackButton |
OnClickRightTop(StateMouse *, int) | TrackButton |
OnClickTop(StateMouse *, int) | TrackButton |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int deltaX, int deltaY, int face) | TrackButton |
Control::OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnOverOut(Control *newControl, int face) | TrackButton |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
onTrackButton | TrackButton |
operator=(Control &src) | Control |
orientation | TrackButton |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetMode(DockPos newOrientation) | TrackButton |
SetParent() | Control |
SetResizeAndRotate(BOOL resize, BOOL rotate) | TrackButton |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | TrackButton |
TrackButton() | TrackButton |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~TrackButton() | TrackButton |
Generated on Fri Aug 20 19:21:47 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TreeDirectory class Reference

TreeDirectory Class Reference

Class de parametre et d'evenement d'une "TreeDirectory". More...

#include <treeView.h>

Inheritance diagram for TreeDirectory:

TreeView Control List of all members.

Public Member Functions

TreeDirectory ()
void | Config (BOOL _addFile, BOOL _addDirectory, char *_filter=NULL)
void | Reset ()
void | Loading (char *name, BOOL isCollaps=TRUE)
int | OnClickDirectory (TreeNode *treeNode)

Detailed Description

Class de parametre et d'evenement d'une "TreeDirectory".

Definition at line 90 of file treeView.h.

Constructor & Destructor Documentation

TreeDirectory::TreeDirectory ( )

Definition at line 198 of file treeView.cpp.

References filter, OnClickDirectory(), and EventTreeView::select.

Member Function Documentation

void TreeDirectory::Config | ( | BOOL | _addFile,
 |  | BOOL | _addDirectory,
 |  | char * | _filter = NULL
 | ) |

Definition at line 221 of file treeView.cpp.

References filter.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo().

void TreeDirectory::Loading | ( | char * | name,
 |  | BOOL | isCollaps = TRUE
 | ) |

Definition at line 234 of file treeView.cpp.

References data, and TreeViewItem::text.

Referenced by OnClickDirectory().

int TreeDirectory::OnClickDirectory ( TreeNode * treeNode )

Definition at line 207 of file treeView.cpp.

References ce, TreeViewItem::contentSub, MyTreeNode< TreeViewItem >::elem, TreeView::GetTreePath(), Loading(), Timer::onTimer, MyTreeNode< TreeViewItem >::SuprChilds(), ControlEngine::timerRefresh, and TreeNode.

Referenced by TreeDirectory().

void TreeDirectory::Reset ( )

Definition at line 228 of file treeView.cpp.

References data, and Control::DeleteSub().

The documentation for this class was generated from the following files:
  • treeView.h
  • treeView.cpp
Generated on Fri Aug 20 19:21:57 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

TreeDirectory Member List

This is the complete list of members for TreeDirectory, including all inherited members.
ChangeDirection() | Control |
Config(BOOL _addFile, BOOL _addDirectory, char *_filter=NULL) | TreeDirectory |
ConfigFacesPlus(Control *control, BOOL isCollaps) | TreeView |
Control() | Control |
controls | Control | [static]
Create() | TreeView | [virtual]
data | TreeView |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
Draw() | TreeView |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
FindOnData(int idControl) | TreeView |
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
GetTreePath(TreeNode *treeNode, MyString &result, BOOL isFirst=TRUE) | TreeView |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
Loading(char *name, BOOL isCollaps=TRUE) | TreeDirectory |
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick() | TreeView |
Control::OnClick(StateMouse *mouse, int face) | Control |
OnClickDirectory(TreeNode *treeNode) | TreeDirectory |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnNextFrame(Timer *timer) | TreeView |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
onTreeView | TreeView |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
Reset() | TreeDirectory |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Control |
TreeDirectory() | TreeDirectory |
TreeView() | TreeView |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
Generated on Fri Aug 20 19:21:57 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TreeView class Reference

TreeView Class Reference

Class de parametre et d'evenement d'une "TreeView". More...

#include <treeView.h>

Inheritance diagram for TreeView:

Control TreeDirectory List of all members.

Public Member Functions

TreeView ()
void | Create ()
void | Draw ()
TreeNode * | FindOnData (int idControl)
Trouve le noeud data qui est utilisé dans un control donnée.

void | GetTreePath (TreeNode *treeNode, MyString &result, BOOL isFirst=TRUE)
void | ConfigFacesPlus (Control *control, BOOL isCollaps)
int | OnNextFrame (Timer *timer)
int | OnClick ()

Public Attributes

MyTree< TreeViewItem > data
EventTreeView onTreeView

Detailed Description

Class de parametre et d'evenement d'une "TreeView".

Definition at line 59 of file treeView.h.

Constructor & Destructor Documentation

TreeView::TreeView ( )

Definition at line 26 of file treeView.cpp.

Member Function Documentation

void TreeView::ConfigFacesPlus | ( | Control * | control,
 |  | BOOL | isCollaps
 | ) |

Definition at line 169 of file treeView.cpp.

References ce, MyTreeNode< T >::childs, Control::faceNode, MyListIterator< T >::GetElem(), Textures::minus, MyListIterator< T >::More(), Textures::plus, ControlEngine::texture, and Face::texture.

void TreeView::Create ( ) [virtual]

Reimplemented from Control.

Definition at line 31 of file treeView.cpp.

References Primitive::AddBox(), ce, and ControlEngine::primitive.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo().

void TreeView::Draw ( )

Definition at line 36 of file treeView.cpp.

References ce, Primitive::ComputeLayout(), data, MyTreeNode< T >::elem, FACE_FRONT, Primitive::GoTo(), ControlEngine::Pop(), ControlEngine::primitive, and ControlEngine::Push().

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), and OnNextFrame().

TreeNode * TreeView::FindOnData ( int idControl )

Trouve le noeud data qui est utilisé dans un control donnée.

Definition at line 102 of file treeView.cpp.

References data, and TreeNode.

void TreeView::GetTreePath | ( | TreeNode * | treeNode,
 |  | MyString & | result,
 |  | BOOL | isFirst = TRUE
 | ) |

Definition at line 148 of file treeView.cpp.

References MyTreeNode< TreeViewItem >::elem, MyTreeNode< TreeViewItem >::parent, TreeViewItem::text, and TreeNode.

Referenced by TreeDirectory::OnClickDirectory(), Tutorial::ApplicationDemo::OnSelectBkg(), and Tutorial::ApplicationDemo::OnSelectExplorer().

int TreeView::OnClick ( )

Definition at line 121 of file treeView.cpp.

References ce, Picking::controlHover, and ControlEngine::pickingCursor.

int TreeView::OnNextFrame ( Timer * timer )

Definition at line 160 of file treeView.cpp.

References ce, Control::DeleteSub(), Draw(), Timer::onTimer, ControlEngine::pickingCursor, and Picking::ResetCurrent().

Member Data Documentation

MyTree<TreeViewItem> TreeView::data

Definition at line 70 of file treeView.h.

EventTreeView TreeView::onTreeView

Definition at line 71 of file treeView.h.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo().

The documentation for this class was generated from the following files:
  • treeView.h
  • treeView.cpp
Generated on Fri Aug 20 19:21:57 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

TreeView Member List

This is the complete list of members for TreeView, including all inherited members.
ChangeDirection() | Control |
ConfigFacesPlus(Control *control, BOOL isCollaps) | TreeView |
Control() | Control |
controls | Control | [static]
Create() | TreeView | [virtual]
data | TreeView |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
Draw() | TreeView |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
FindOnData(int idControl) | TreeView |
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
GetTreePath(TreeNode *treeNode, MyString &result, BOOL isFirst=TRUE) | TreeView |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick() | TreeView |
Control::OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Control |
OnNextFrame(Timer *timer) | TreeView |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
onTreeView | TreeView |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Control |
TreeView() | TreeView |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
Generated on Fri Aug 20 19:21:57 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TreeViewItem class Reference

TreeViewItem Class Reference

#include <treeView.h>

List of all members.

Public Member Functions

TreeViewItem ()

Public Attributes

MyString text
BOOL | isCollaps
BOOL | contentSub
BOOL | askSubData
int | idControl

Constructor & Destructor Documentation

TreeViewItem::TreeViewItem ( ) [inline]

Definition at line 37 of file treeView.h.

References askSubData, contentSub, and isCollaps.

Member Data Documentation

BOOL TreeViewItem::askSubData

Definition at line 34 of file treeView.h.

Referenced by TreeViewItem().

BOOL TreeViewItem::contentSub

Definition at line 33 of file treeView.h.

Referenced by TreeDirectory::OnClickDirectory(), and TreeViewItem().

int TreeViewItem::idControl

Definition at line 35 of file treeView.h.

BOOL TreeViewItem::isCollaps

Definition at line 32 of file treeView.h.

Referenced by TreeViewItem().

MyString TreeViewItem::text

Definition at line 31 of file treeView.h.

Referenced by TreeView::GetTreePath(), and TreeDirectory::Loading().

The documentation for this class was generated from the following file:
  • treeView.h
Generated on Fri Aug 20 19:21:57 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

TreeViewItem Member List

This is the complete list of members for TreeViewItem, including all inherited members.
askSubData | TreeViewItem |
contentSub | TreeViewItem |
idControl | TreeViewItem |
isCollaps | TreeViewItem |
text | TreeViewItem |
TreeViewItem() | TreeViewItem | [inline]
Generated on Fri Aug 20 19:21:57 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tutorial class Reference

Tutorial Class Reference

Evenement de parametre et d'evenement de l'application. More...

Inheritance diagram for Tutorial:

Window ResizingAndRotateControl Control List of all members.

Public Member Functions

Tutorial ()
~Tutorial ()
void | Create ()
void | SetTutorialTipText ()
void | DestroyDemos ()
int | OnUniversDemo ()
int | OnFaceDemo ()
int | OnBaseDemo ()
int | OnLayoutDemo ()
int | OnWindowDemo ()
int | OnApplicationDemo ()
void | OnUniversDemoStart ()
void | OnFaceDemoStart ()
void | OnBaseDemoStart ()
void | OnLayoutDemoStart ()
void | OnWindowDemoStart ()
void | OnApplicationDemoStart ()
int | OnEnd ()

Public Attributes

TextBox info
Button btnReturn
EffectApparition effect
Tip tip
Button btnUniversDemo
Button btnFaceDemo
Button btnBaseDemo
Button btnLayoutDemo
Button btnWindowDemo
Button btnApplicationDemo
FaceDemo * fd
UniversDemo * ud
BaseDemo * db
LayoutDemo * ld
WindowDemo * wd
ApplicationDemo * ad

Detailed Description

Evenement de parametre et d'evenement de l'application.

Definition at line 57 of file 3dcontrols.cpp.

Constructor & Destructor Documentation

Tutorial::Tutorial ( ) [inline]

Definition at line 1053 of file 3dcontrols.cpp.

References ad, align_center, align_justify, btnApplicationDemo, btnBaseDemo, btnFaceDemo, btnLayoutDemo, btnUniversDemo, btnWindowDemo, ce, EventButton::click, db, fd, info, ld, OnApplicationDemo(), OnBaseDemo(), Button::onButton, OnFaceDemo(), OnLayoutDemo(), Title::OnMin(), OnUniversDemo(), OnWindowDemo(), Text3D::SetAlign(), ControlEngine::taskWindow, Button::text, TextBox::text, Window::title, ud, Title::useClose, Title::useMax, Title::useMin, and wd.

Tutorial::~Tutorial ( ) [inline]

Definition at line 1097 of file 3dcontrols.cpp.

References ce, Title::OnOriginal(), ControlEngine::taskWindow, and Window::title.

Member Function Documentation

void Tutorial::Create ( ) [inline, virtual]

Reimplemented from Window.

Definition at line 1102 of file 3dcontrols.cpp.

References Effect::Bind(), btnApplicationDemo, btnBaseDemo, btnFaceDemo, btnLayoutDemo, btnReturn, btnUniversDemo, btnWindowDemo, ce, EventButton::click, Tip::Create(), Button::Create(), TextBox::Create(), Window::Create(), effect, FACE_FRONT, Primitive::GoTo(), info, ControlEngine::masterContainer, Button::onButton, OnEnd(), ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Button::SetText(), SetTutorialTipText(), EffectApparition::Start(), tip, Control::XDockCenter(), Control::XDockRight(), Control::YDockBottom(), Control::YDockCenter(), and Control::YDockTop().

Referenced by WinMain().

void Tutorial::DestroyDemos ( ) [inline]

Definition at line 1175 of file 3dcontrols.cpp.

References ad, db, fd, ld, ud, and wd.

Referenced by OnApplicationDemoStart(), OnBaseDemoStart(), OnFaceDemoStart(), OnLayoutDemoStart(), OnUniversDemoStart(), and OnWindowDemoStart().

int Tutorial::OnApplicationDemo ( ) [inline]

Definition at line 1225 of file 3dcontrols.cpp.

References OnApplicationDemoStart().

Referenced by Tutorial().

void Tutorial::OnApplicationDemoStart ( ) [inline]

Definition at line 1262 of file 3dcontrols.cpp.

References ad, and DestroyDemos().

Referenced by OnApplicationDemo().

int Tutorial::OnBaseDemo ( ) [inline]

Definition at line 1201 of file 3dcontrols.cpp.

References OnBaseDemoStart().

Referenced by Tutorial().

void Tutorial::OnBaseDemoStart ( ) [inline]

Definition at line 1244 of file 3dcontrols.cpp.

References DestroyDemos().

Referenced by OnBaseDemo().

int Tutorial::OnEnd ( ) [inline]

Definition at line 1267 of file 3dcontrols.cpp.

References ce, Univers::ExitQuestion(), and ControlEngine::univers.

Referenced by Create(), and Tutorial::Demo::Ending().

int Tutorial::OnFaceDemo ( ) [inline]

Definition at line 1193 of file 3dcontrols.cpp.

References OnFaceDemoStart().

Referenced by Tutorial().

void Tutorial::OnFaceDemoStart ( ) [inline]

Definition at line 1238 of file 3dcontrols.cpp.

References DestroyDemos(), and fd.

Referenced by OnFaceDemo().

int Tutorial::OnLayoutDemo ( ) [inline]

Definition at line 1209 of file 3dcontrols.cpp.

References OnLayoutDemoStart().

Referenced by Tutorial().

void Tutorial::OnLayoutDemoStart ( ) [inline]

Definition at line 1250 of file 3dcontrols.cpp.

References DestroyDemos(), and ld.

Referenced by OnLayoutDemo().

int Tutorial::OnUniversDemo ( ) [inline]

Definition at line 1185 of file 3dcontrols.cpp.

References OnUniversDemoStart().

Referenced by Tutorial().

void Tutorial::OnUniversDemoStart ( ) [inline]

Definition at line 1232 of file 3dcontrols.cpp.

References DestroyDemos(), and ud.

Referenced by OnUniversDemo().

int Tutorial::OnWindowDemo ( ) [inline]

Definition at line 1217 of file 3dcontrols.cpp.

References OnWindowDemoStart().

Referenced by Tutorial().

void Tutorial::OnWindowDemoStart ( ) [inline]

Definition at line 1256 of file 3dcontrols.cpp.

References DestroyDemos(), and wd.

Referenced by OnWindowDemo().

void Tutorial::SetTutorialTipText ( ) [inline]

Definition at line 1170 of file 3dcontrols.cpp.

References Tip::SetText(), and tip.

Referenced by Create(), and Tutorial::Demo::Ending().

Member Data Documentation

ApplicationDemo* Tutorial::ad

Definition at line 1051 of file 3dcontrols.cpp.

Referenced by DestroyDemos(), OnApplicationDemoStart(), and Tutorial().

Button Tutorial::btnApplicationDemo

Definition at line 70 of file 3dcontrols.cpp.

Referenced by Create(), and Tutorial().

Button Tutorial::btnBaseDemo

Definition at line 67 of file 3dcontrols.cpp.

Referenced by Create(), and Tutorial().

Button Tutorial::btnFaceDemo

Definition at line 66 of file 3dcontrols.cpp.

Referenced by Create(), and Tutorial().

Button Tutorial::btnLayoutDemo

Definition at line 68 of file 3dcontrols.cpp.

Referenced by Create(), and Tutorial().

Button Tutorial::btnReturn

Definition at line 61 of file 3dcontrols.cpp.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Create(), Tutorial::Demo::Demo(), Tutorial::Demo::Ending(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

Button Tutorial::btnUniversDemo

Definition at line 65 of file 3dcontrols.cpp.

Referenced by Create(), and Tutorial().

Button Tutorial::btnWindowDemo

Definition at line 69 of file 3dcontrols.cpp.

Referenced by Create(), and Tutorial().

BaseDemo* Tutorial::db

Definition at line 1048 of file 3dcontrols.cpp.

Referenced by DestroyDemos(), and Tutorial().

EffectApparition Tutorial::effect

Definition at line 62 of file 3dcontrols.cpp.

Referenced by Create(), and Tutorial::Demo::Ending().

FaceDemo* Tutorial::fd

Definition at line 1046 of file 3dcontrols.cpp.

Referenced by DestroyDemos(), OnFaceDemoStart(), and Tutorial().

TextBox Tutorial::info

Definition at line 60 of file 3dcontrols.cpp.

Referenced by Create(), and Tutorial().

LayoutDemo* Tutorial::ld

Definition at line 1049 of file 3dcontrols.cpp.

Referenced by DestroyDemos(), OnLayoutDemoStart(), and Tutorial().

Tip Tutorial::tip

Definition at line 63 of file 3dcontrols.cpp.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Create(), Tutorial::FaceDemo::FaceDemo(), Tutorial::LayoutDemo::LayoutDemo(), SetTutorialTipText(), Tutorial::UniversDemo::UniversDemo(), and Tutorial::WindowDemo::WindowDemo().

UniversDemo* Tutorial::ud

Definition at line 1047 of file 3dcontrols.cpp.

Referenced by DestroyDemos(), OnUniversDemoStart(), and Tutorial().

WindowDemo* Tutorial::wd

Definition at line 1050 of file 3dcontrols.cpp.

Referenced by DestroyDemos(), OnWindowDemoStart(), and Tutorial().

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:21:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tutorial Member List

This is the complete list of members for Tutorial, including all inherited members.
ad | Tutorial |
btnApplicationDemo | Tutorial |
btnBaseDemo | Tutorial |
btnFaceDemo | Tutorial |
btnLayoutDemo | Tutorial |
btnReturn | Tutorial |
btnUniversDemo | Tutorial |
btnWindowDemo | Tutorial |
canResize | ResizingAndRotateControl |
canRotate | ResizingAndRotateControl |
ChangeDirection() | Control |
client | Window |
Control() | Control |
controls | Control | [static]
Create() | Tutorial | [inline, virtual]
Window::Create(double depth) | Window |
db | Tutorial |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
DestroyDemos() | Tutorial | [inline]
effect | Tutorial |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
fd | Tutorial |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
info | Tutorial |
isEnable | Control |
isView | Control |
ld | Tutorial |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnApplicationDemo() | Tutorial | [inline]
OnApplicationDemoStart() | Tutorial | [inline]
OnBaseDemo() | Tutorial | [inline]
OnBaseDemoStart() | Tutorial | [inline]
OnClick(StateMouse *mouse, int face) | Control |
OnClose() | Window |
onControl | Control |
OnEnd() | Tutorial | [inline]
OnFaceDemo() | Tutorial | [inline]
OnFaceDemoStart() | Tutorial | [inline]
OnHover(StateMouse *mouse, int deltaX, int deltaY, int numFace) | ResizingAndRotateControl |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLayoutDemo() | Tutorial | [inline]
OnLayoutDemoStart() | Tutorial | [inline]
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnLMRButton(StateMouse *, int) | Window |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Window |
OnOver(StateMouse *mouse, int face) | Window |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
OnUniversDemo() | Tutorial | [inline]
OnUniversDemoStart() | Tutorial | [inline]
OnWindowDemo() | Tutorial | [inline]
OnWindowDemoStart() | Tutorial | [inline]
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
ResizingAndRotateControl() | ResizingAndRotateControl |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
SetTutorialTipText() | Tutorial | [inline]
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
tip | Tutorial |
title | Window |
titleDock | Window |
ToString(MyString &str) | Window |
Tutorial() | Tutorial | [inline]
ud | Tutorial |
wd | Tutorial |
Window() | Window |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~ResizingAndRotateControl() | ResizingAndRotateControl |
~Tutorial() | Tutorial | [inline]
~Window() | Window |
Generated on Fri Aug 20 19:21:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tutorial::ApplicationDemo class Reference

Tutorial::ApplicationDemo Class Reference

Inheritance diagram for Tutorial::ApplicationDemo:

Tutorial::Demo List of all members.

Public Member Functions

ApplicationDemo (Tutorial *_parent)
int | OnSelectBkg (TreeNode *treeNode)
int | OnSelectExplorer (TreeNode *treeNode)
int | OnEnd ()

Public Attributes

Calculator * calc
Window * winExplorer
Window * winBackground
TreeDirectory * tdBkg
TreeDirectory * tdExplorer
TextBox pathBox

Constructor & Destructor Documentation

Tutorial::ApplicationDemo::ApplicationDemo ( Tutorial * _parent ) [inline]

Definition at line 963 of file 3dcontrols.cpp.

References align_begin, Tutorial::btnReturn, calc, ce, EventButton::click, Window::client, TreeDirectory::Config(), TextBox::Create(), TreeView::Create(), Window::Create(), Calculator::Create(), TreeView::Draw(), TreeDirectory::Loading(), Button::onButton, OnEnd(), Title::OnOriginal(), OnSelectBkg(), OnSelectExplorer(), TreeView::onTreeView, pathBox, ControlEngine::Pop(), ControlEngine::Push(), EventTreeView::select, Text3D::SetAlign(), Title::SetText(), Tip::SetText(), Text3D::SetWrapping(), ControlEngine::taskWindow, tdBkg, tdExplorer, TextBox::text, Tutorial::tip, Window::title, ControlEngine::univers, winBackground, winExplorer, Control::XDockCenter(), Control::XDockLeft(), Control::XDockRight(), Control::YDockBottom(), Control::YDockCenter(), and Control::YDockTop().

Member Function Documentation

int Tutorial::ApplicationDemo::OnEnd ( ) [inline]

Definition at line 1037 of file 3dcontrols.cpp.

References calc, ce, Tutorial::Demo::Ending(), Title::OnMin(), ControlEngine::taskWindow, and Window::title.

Referenced by ApplicationDemo().

int Tutorial::ApplicationDemo::OnSelectBkg ( TreeNode * treeNode ) [inline]

Definition at line 1019 of file 3dcontrols.cpp.

References Textures::background, ce, Texture::FromFile(), TreeView::GetTreePath(), tdBkg, ControlEngine::texture, and TreeNode.

Referenced by ApplicationDemo().

int Tutorial::ApplicationDemo::OnSelectExplorer ( TreeNode * treeNode ) [inline]

Definition at line 1027 of file 3dcontrols.cpp.

References TreeView::GetTreePath(), pathBox, Text3D::SetText(), tdExplorer, TextBox::text, and TreeNode.

Referenced by ApplicationDemo().

Member Data Documentation

Calculator* Tutorial::ApplicationDemo::calc

Definition at line 956 of file 3dcontrols.cpp.

Referenced by ApplicationDemo(), and OnEnd().

TextBox Tutorial::ApplicationDemo::pathBox

Definition at line 961 of file 3dcontrols.cpp.

Referenced by ApplicationDemo(), and OnSelectExplorer().

TreeDirectory* Tutorial::ApplicationDemo::tdBkg

Definition at line 959 of file 3dcontrols.cpp.

Referenced by ApplicationDemo(), and OnSelectBkg().

TreeDirectory* Tutorial::ApplicationDemo::tdExplorer

Definition at line 960 of file 3dcontrols.cpp.

Referenced by ApplicationDemo(), and OnSelectExplorer().

Window* Tutorial::ApplicationDemo::winBackground

Definition at line 958 of file 3dcontrols.cpp.

Referenced by ApplicationDemo().

Window* Tutorial::ApplicationDemo::winExplorer

Definition at line 957 of file 3dcontrols.cpp.

Referenced by ApplicationDemo().

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:21:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tutorial::ApplicationDemo Member List

This is the complete list of members for Tutorial::ApplicationDemo, including all inherited members.
ApplicationDemo(Tutorial *_parent) | Tutorial::ApplicationDemo | [inline]
calc | Tutorial::ApplicationDemo |
Demo(Tutorial *_parent) | Tutorial::Demo | [inline]
Ending() | Tutorial::Demo | [inline]
OnEnd() | Tutorial::ApplicationDemo | [inline]
OnSelectBkg(TreeNode *treeNode) | Tutorial::ApplicationDemo | [inline]
OnSelectExplorer(TreeNode *treeNode) | Tutorial::ApplicationDemo | [inline]
parent | Tutorial::Demo |
pathBox | Tutorial::ApplicationDemo |
tdBkg | Tutorial::ApplicationDemo |
tdExplorer | Tutorial::ApplicationDemo |
winBackground | Tutorial::ApplicationDemo |
winExplorer | Tutorial::ApplicationDemo |
Generated on Fri Aug 20 19:21:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tutorial::BaseDemo class Reference

Tutorial::BaseDemo Class Reference

Inheritance diagram for Tutorial::BaseDemo:

Tutorial::Demo List of all members.

Public Member Functions

BaseDemo (Tutorial *_parent)
int | OnXSliderMove (double min, double max, double percent)
int | OnYSliderMove (double min, double max, double percent)
int | OnWinOut (Control *, int)
int | OnWinMove (StateMouse *mouse, int, int, int numFace)
int | OnEnd ()

Public Attributes

Button * button
Title * title
TextBox * textBox
Window * winInfo
Window * winSlider
MsgBox * msgBox
Slider * xSlider
Slider * ySlider
Tip * tipSlider
double | xPercent
double | yPercent

Constructor & Destructor Documentation

Tutorial::BaseDemo::BaseDemo ( Tutorial * _parent ) [inline]

Definition at line 495 of file 3dcontrols.cpp.

References align_begin, align_center, align_justify, Face::blending, Tutorial::btnReturn, ce, EventButton::click, Window::client, MsgBox::Create(), Tip::Create(), Slider::Create(), Window::Create(), TextBox::Create(), Title::Create(), Button::Create(), MyTreeNode< T >::Elems(), f, FACE_FRONT, Control::faceNode, ControlEngine::fontTexture, Primitive::GoTo(), BasicText3D::material, Face::material, EventControl::mouse, EventMouse::move, Control::Move(), Control::MoveTo(), EventSlider::moving, msgBox, Button::onButton, Control::onControl, OnEnd(), Title::OnOriginal(), Slider::onSlidder, OnWinMove(), OnXSliderMove(), OnYSliderMove(), ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Control::RotateTo(), Text3D::SetAlign(), Material::SetDS(), Text3D::SetText(), TextBox::SetText(), Title::SetText(), Button::SetText(), Tip::SetText(), Text3D::Setup(), Text3D::SetWrapping(), Control::Size(), ControlEngine::taskWindow, Face::text, Tip::text, Button::text, textBox, ControlEngine::texture, Tutorial::tip, tipSlider, title, Window::title, Textures::tropique, MsgBox::txtInfo, MsgBox::txtTranche, ControlEngine::univers, winInfo, winSlider, Control::XDockCenter(), xPercent, xSlider, Control::YDockBottom(), Control::YDockCenter(), yPercent, and ySlider.

Member Function Documentation

int Tutorial::BaseDemo::OnEnd ( ) [inline]

Definition at line 621 of file 3dcontrols.cpp.

References ce, Tutorial::Demo::Ending(), msgBox, Title::OnMin(), ControlEngine::taskWindow, textBox, tipSlider, title, Window::title, winInfo, winSlider, xSlider, and ySlider.

Referenced by BaseDemo().

int Tutorial::BaseDemo::OnWinMove | ( | StateMouse * | mouse,
 |  | int | ,
 |  | int | ,
 |  | int | numFace
 | ) | [inline]

Definition at line 607 of file 3dcontrols.cpp.

References Window::client, MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, MyString::Format(), Control::GetCorners(), Control::GetLocalPos(), StateMouse::pos, winInfo, Point2D< T >::x, Point2D< int >::x, Point2D< T >::y, and Point2D< int >::y.

Referenced by BaseDemo().

int Tutorial::BaseDemo::OnWinOut | ( | Control * | ,
 |  | int |
 | ) | [inline]

Definition at line 600 of file 3dcontrols.cpp.

References Window::client, MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, Text3D::SetText(), Face::text, and winInfo.

int Tutorial::BaseDemo::OnXSliderMove | ( | double | min,
 |  | double | max,
 |  | double | percent
 | ) | [inline]

Definition at line 582 of file 3dcontrols.cpp.

References MyString::Format(), Tip::SetText(), tipSlider, xPercent, and yPercent.

Referenced by BaseDemo().

int Tutorial::BaseDemo::OnYSliderMove | ( | double | min,
 |  | double | max,
 |  | double | percent
 | ) | [inline]

Definition at line 591 of file 3dcontrols.cpp.

References MyString::Format(), Tip::SetText(), tipSlider, xPercent, and yPercent.

Referenced by BaseDemo().

Member Data Documentation

Button* Tutorial::BaseDemo::button

Definition at line 485 of file 3dcontrols.cpp.

MsgBox* Tutorial::BaseDemo::msgBox

Definition at line 490 of file 3dcontrols.cpp.

Referenced by BaseDemo(), and OnEnd().

TextBox* Tutorial::BaseDemo::textBox

Definition at line 487 of file 3dcontrols.cpp.

Referenced by BaseDemo(), and OnEnd().

Tip* Tutorial::BaseDemo::tipSlider

Definition at line 492 of file 3dcontrols.cpp.

Referenced by BaseDemo(), OnEnd(), OnXSliderMove(), and OnYSliderMove().

Title* Tutorial::BaseDemo::title

Definition at line 486 of file 3dcontrols.cpp.

Referenced by BaseDemo(), and OnEnd().

Window* Tutorial::BaseDemo::winInfo

Definition at line 488 of file 3dcontrols.cpp.

Referenced by BaseDemo(), OnEnd(), OnWinMove(), and OnWinOut().

Window* Tutorial::BaseDemo::winSlider

Definition at line 489 of file 3dcontrols.cpp.

Referenced by BaseDemo(), and OnEnd().

double Tutorial::BaseDemo::xPercent

Definition at line 493 of file 3dcontrols.cpp.

Referenced by BaseDemo(), OnXSliderMove(), and OnYSliderMove().

Slider* Tutorial::BaseDemo::xSlider

Definition at line 491 of file 3dcontrols.cpp.

Referenced by BaseDemo(), and OnEnd().

double Tutorial::BaseDemo::yPercent

Definition at line 493 of file 3dcontrols.cpp.

Referenced by BaseDemo(), OnXSliderMove(), and OnYSliderMove().

Slider * Tutorial::BaseDemo::ySlider

Definition at line 491 of file 3dcontrols.cpp.

Referenced by BaseDemo(), and OnEnd().

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:21:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tutorial::BaseDemo Member List

This is the complete list of members for Tutorial::BaseDemo, including all inherited members.
BaseDemo(Tutorial *_parent) | Tutorial::BaseDemo | [inline]
button | Tutorial::BaseDemo |
Demo(Tutorial *_parent) | Tutorial::Demo | [inline]
Ending() | Tutorial::Demo | [inline]
msgBox | Tutorial::BaseDemo |
OnEnd() | Tutorial::BaseDemo | [inline]
OnWinMove(StateMouse *mouse, int, int, int numFace) | Tutorial::BaseDemo | [inline]
OnWinOut(Control *, int) | Tutorial::BaseDemo | [inline]
OnXSliderMove(double min, double max, double percent) | Tutorial::BaseDemo | [inline]
OnYSliderMove(double min, double max, double percent) | Tutorial::BaseDemo | [inline]
parent | Tutorial::Demo |
textBox | Tutorial::BaseDemo |
tipSlider | Tutorial::BaseDemo |
title | Tutorial::BaseDemo |
winInfo | Tutorial::BaseDemo |
winSlider | Tutorial::BaseDemo |
xPercent | Tutorial::BaseDemo |
xSlider | Tutorial::BaseDemo |
yPercent | Tutorial::BaseDemo |
ySlider | Tutorial::BaseDemo |
Generated on Fri Aug 20 19:21:58 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tutorial::Demo class Reference

Tutorial::Demo Class Reference

Inheritance diagram for Tutorial::Demo:

Tutorial::ApplicationDemo Tutorial::BaseDemo Tutorial::FaceDemo Tutorial::LayoutDemo Tutorial::UniversDemo Tutorial::WindowDemo List of all members.

Public Member Functions

Demo (Tutorial *_parent)
void Ending ()

Public Attributes

Tutorial * parent

Constructor & Destructor Documentation

Tutorial::Demo::Demo ( Tutorial * _parent ) [inline]

Definition at line 77 of file 3dcontrols.cpp.

References Tutorial::btnReturn, ce, EventButton::click, Univers::HomePosition(), Button::onButton, Title::OnMin(), parent, Window::title, and ControlEngine::univers.

Member Function Documentation

void Tutorial::Demo::Ending ( ) [inline]

Definition at line 85 of file 3dcontrols.cpp.

References Effect::Bind(), Tutorial::btnReturn, EventButton::click, Tutorial::effect, Control::faceNode, Button::onButton, Tutorial::OnEnd(), Title::OnOriginal(), parent, Tutorial::SetTutorialTipText(), EffectApparition::Start(), and Window::title.

Referenced by Tutorial::ApplicationDemo::OnEnd(), Tutorial::WindowDemo::OnEnd(), Tutorial::LayoutDemo::OnEnd(), Tutorial::BaseDemo::OnEnd(), Tutorial::UniversDemo::OnEnd(), and Tutorial::FaceDemo::OnEnd().

Member Data Documentation

Tutorial* Tutorial::Demo::parent

Definition at line 75 of file 3dcontrols.cpp.

Referenced by Demo(), and Ending().

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:21:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tutorial::Demo Member List

This is the complete list of members for Tutorial::Demo, including all inherited members.
Demo(Tutorial *_parent) | Tutorial::Demo | [inline]
Ending() | Tutorial::Demo | [inline]
parent | Tutorial::Demo |
Generated on Fri Aug 20 19:21:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tutorial::FaceDemo class Reference

Tutorial::FaceDemo Class Reference

Inheritance diagram for Tutorial::FaceDemo:

Tutorial::Demo List of all members.

Public Member Functions

FaceDemo (Tutorial *_parent)
int | OnTimer (Timer *timer)
int | OnEnd ()

Public Attributes

Title * titleBasic
Control * controlBasic
Title * titleText
Control * controlText
Title * titleCurving
Control * controlCurving
Timer timer
MyList< FaceNode * > nodes

Constructor & Destructor Documentation

Tutorial::FaceDemo::FaceDemo ( Tutorial * _parent ) [inline]

Definition at line 109 of file 3dcontrols.cpp.

References Primitive::AddFace(), Face::angle, BindTimer, Face::blending, Tutorial::btnReturn, ce, Curve::center, clear(), EventButton::click, controlBasic, controlCurving, controlText, Title::Create(), Face::curve, MyTreeNode< T >::elem, Control::faceNode, FaceNode, ControlEngine::fontTexture, ft_texture, MyList< FaceNode * >::i, Textures::iconBase, Control::id, Face::line, Face::lineMaterial, BasicText3D::material, Face::material, nodes, num, Button::onButton, OnEnd(), OnTimer(), ControlEngine::Pop(), Face::position, ControlEngine::primitive, ControlEngine::Push(), Curve::Set(), Point3D< GLdouble >::Set(), Text3D::SetAlign(), Material::SetDS(), Text3D::SetJustifyLimit(), Text3D::SetText(), Title::SetText(), Tip::SetText(), Text3D::Setup(), Title::SetUses(), Text3D::SetWrapping(), Face::size, Face::text, TextAlign, ControlEngine::texture, Face::texture, timer, Tutorial::tip, titleBasic, titleCurving, titleText, ControlEngine::univers, Coordonate< GLdouble >::x, Point2D< LayoutDouble >::x, Point3D< LayoutDouble >::x, Control::XDockCenter(), Coordonate< GLdouble >::y, Point2D< LayoutDouble >::y, Point3D< LayoutDouble >::y, Control::YDockTop(), and Point3D< LayoutDouble >::z.

Member Function Documentation

int Tutorial::FaceDemo::OnEnd ( ) [inline]

Definition at line 327 of file 3dcontrols.cpp.

References controlBasic, controlCurving, controlText, Tutorial::Demo::Ending(), Timer::onTimer, timer, titleBasic, titleCurving, and titleText.

Referenced by FaceDemo().

int Tutorial::FaceDemo::OnTimer ( Timer * timer ) [inline]

Definition at line 302 of file 3dcontrols.cpp.

References decal, MyTreeNode< T >::elem, FaceNode, Timer::GetDeltaTime(), MyListIterator< FaceNode * >::GetElem(), MyList< FaceNode * >::i, MyListIterator< FaceNode * >::More(), nodes, num, and PI.

Referenced by FaceDemo().

Member Data Documentation

Control* Tutorial::FaceDemo::controlBasic

Definition at line 100 of file 3dcontrols.cpp.

Referenced by FaceDemo(), and OnEnd().

Control* Tutorial::FaceDemo::controlCurving

Definition at line 104 of file 3dcontrols.cpp.

Referenced by FaceDemo(), and OnEnd().

Control* Tutorial::FaceDemo::controlText

Definition at line 102 of file 3dcontrols.cpp.

Referenced by FaceDemo(), and OnEnd().

MyList<FaceNode *> Tutorial::FaceDemo::nodes

Definition at line 107 of file 3dcontrols.cpp.

Referenced by FaceDemo(), and OnTimer().

Timer Tutorial::FaceDemo::timer

Definition at line 106 of file 3dcontrols.cpp.

Referenced by FaceDemo(), and OnEnd().

Title* Tutorial::FaceDemo::titleBasic

Definition at line 99 of file 3dcontrols.cpp.

Referenced by FaceDemo(), and OnEnd().

Title* Tutorial::FaceDemo::titleCurving

Definition at line 103 of file 3dcontrols.cpp.

Referenced by FaceDemo(), and OnEnd().

Title* Tutorial::FaceDemo::titleText

Definition at line 101 of file 3dcontrols.cpp.

Referenced by FaceDemo(), and OnEnd().

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:21:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tutorial::FaceDemo Member List

This is the complete list of members for Tutorial::FaceDemo, including all inherited members.
controlBasic | Tutorial::FaceDemo |
controlCurving | Tutorial::FaceDemo |
controlText | Tutorial::FaceDemo |
Demo(Tutorial *_parent) | Tutorial::Demo | [inline]
Ending() | Tutorial::Demo | [inline]
FaceDemo(Tutorial *_parent) | Tutorial::FaceDemo | [inline]
nodes | Tutorial::FaceDemo |
OnEnd() | Tutorial::FaceDemo | [inline]
OnTimer(Timer *timer) | Tutorial::FaceDemo | [inline]
parent | Tutorial::Demo |
timer | Tutorial::FaceDemo |
titleBasic | Tutorial::FaceDemo |
titleCurving | Tutorial::FaceDemo |
titleText | Tutorial::FaceDemo |
Generated on Fri Aug 20 19:21:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tutorial::LayoutDemo class Reference

Tutorial::LayoutDemo Class Reference

Inheritance diagram for Tutorial::LayoutDemo:

Tutorial::Demo List of all members.

Public Member Functions

LayoutDemo (Tutorial *_parent)
void | CreateTreeButton (int level)
void | ConfigTreeButton (Button *button, int num)
void | ConfigTextFace (Text3D *text, char *textValue)
int | OnTreeButtonClick (Control *sender)
int | OnToogle ()
int | OnToogleAll ()
int | OnReset ()
int | OnResetAll ()
int | OnSet ()
int | OnSetAll ()
int | OnEnd ()

Public Attributes

Button btnToogleAll
Button btnToogle
Button btnResetAll
Button btnReset
Button btnSetAll
Button btnSet
Window window
TextBox text
Button btnTree
Button * lastSelected
MyList< Button > buttons

Constructor & Destructor Documentation

Tutorial::LayoutDemo::LayoutDemo ( Tutorial * _parent ) [inline]

Definition at line 653 of file 3dcontrols.cpp.

References align_begin, align_center, btnReset, btnResetAll, Tutorial::btnReturn, btnSet, btnSetAll, btnToogle, btnToogleAll, btnTree, ce, EventButton::click, Window::client, TextBox::Create(), Window::Create(), Button::Create(), CreateTreeButton(), Button::depth_max, Button::depth_min, MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, Primitive::GoTo(), lastSelected, Button::ModeAllButtons(), Button::ModePushLike(), Button::onButton, OnEnd(), Title::OnMax(), OnReset(), OnResetAll(), OnSet(), OnSetAll(), OnToogle(), OnToogleAll(), ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Text3D::SetAlign(), TextBox::SetText(), Title::SetText(), Tip::SetText(), Button::text, TextBox::text, text, Tutorial::tip, Window::title, ControlEngine::univers, window, Control::XDockCenter(), Control::XDockLeft(), Control::XDockRight(), Control::YDockBottom(), Control::YDockCenter(), and Control::YDockTop().

Member Function Documentation

void Tutorial::LayoutDemo::ConfigTextFace | ( | Text3D * | text,
 |  | char * | textValue
 | ) | [inline]

Definition at line 793 of file 3dcontrols.cpp.

References align_center, ce, ControlEngine::fontTexture, BasicText3D::material, BasicText3D::scale, Text3D::SetAlign(), Material::SetDS(), Text3D::SetText(), Text3D::Setup(), and Text3D::SetWrapping().

Referenced by ConfigTreeButton().

void Tutorial::LayoutDemo::ConfigTreeButton | ( | Button * | button,
 |  | int | num
 | ) | [inline]

Definition at line 770 of file 3dcontrols.cpp.

References ConfigTextFace(), Button::Create(), MyTreeNode< T >::Elems(), FACE_BACK, Control::faceNode, Button::ModeAllButtons(), Button::ModePushLike(), NB_MATERIAL, num, Control::SetBlending(), text, Button::text, TypeMaterial, Control::XDockCenter(), and Control::YDockCenter().

Referenced by CreateTreeButton().

void Tutorial::LayoutDemo::CreateTreeButton ( int level ) [inline]

Definition at line 740 of file 3dcontrols.cpp.

References MyListIterator< Button >::AddNewLast(), buttons, ce, ConfigTreeButton(), FACE_FRONT, Primitive::GoTo(), Primitive::GoToParent(), MyList< Button >::i, level, ControlEngine::Pop(), ControlEngine::primitive, and ControlEngine::Push().

Referenced by LayoutDemo().

int Tutorial::LayoutDemo::OnEnd ( ) [inline]

Definition at line 854 of file 3dcontrols.cpp.

References btnTree, Control::Delete(), Tutorial::Demo::Ending(), and window.

Referenced by LayoutDemo().

int Tutorial::LayoutDemo::OnReset ( ) [inline]

Definition at line 826 of file 3dcontrols.cpp.

References lastSelected, and Button::SetPush().

Referenced by LayoutDemo().

int Tutorial::LayoutDemo::OnResetAll ( ) [inline]

Definition at line 833 of file 3dcontrols.cpp.

References buttons, MyListIterator< Button >::GetElemPtr(), MyList< Button >::i, MyListIterator< Button >::More(), and Button::SetPush().

Referenced by LayoutDemo().

int Tutorial::LayoutDemo::OnSet ( ) [inline]

Definition at line 840 of file 3dcontrols.cpp.

References lastSelected, and Button::SetPush().

Referenced by LayoutDemo().

int Tutorial::LayoutDemo::OnSetAll ( ) [inline]

Definition at line 847 of file 3dcontrols.cpp.

References buttons, MyListIterator< Button >::GetElemPtr(), MyList< Button >::i, MyListIterator< Button >::More(), and Button::SetPush().

Referenced by LayoutDemo().

int Tutorial::LayoutDemo::OnToogle ( ) [inline]

Definition at line 810 of file 3dcontrols.cpp.

References lastSelected, and Button::SetPushToogle().

Referenced by LayoutDemo().

int Tutorial::LayoutDemo::OnToogleAll ( ) [inline]

Definition at line 817 of file 3dcontrols.cpp.

References buttons, MyListIterator< Button >::GetElemPtr(), MyList< Button >::i, MyListIterator< Button >::More(), and Button::SetPushToogle().

Referenced by LayoutDemo().

int Tutorial::LayoutDemo::OnTreeButtonClick ( Control * sender ) [inline]

Definition at line 803 of file 3dcontrols.cpp.

References lastSelected.

Member Data Documentation

Button Tutorial::LayoutDemo::btnReset

Definition at line 644 of file 3dcontrols.cpp.

Referenced by LayoutDemo().

Button Tutorial::LayoutDemo::btnResetAll

Definition at line 643 of file 3dcontrols.cpp.

Referenced by LayoutDemo().

Button Tutorial::LayoutDemo::btnSet

Definition at line 646 of file 3dcontrols.cpp.

Referenced by LayoutDemo().

Button Tutorial::LayoutDemo::btnSetAll

Definition at line 645 of file 3dcontrols.cpp.

Referenced by LayoutDemo().

Button Tutorial::LayoutDemo::btnToogle

Definition at line 642 of file 3dcontrols.cpp.

Referenced by LayoutDemo().

Button Tutorial::LayoutDemo::btnToogleAll

Definition at line 641 of file 3dcontrols.cpp.

Referenced by LayoutDemo().

Button Tutorial::LayoutDemo::btnTree

Definition at line 649 of file 3dcontrols.cpp.

Referenced by LayoutDemo(), and OnEnd().

MyList<Button> Tutorial::LayoutDemo::buttons

Definition at line 651 of file 3dcontrols.cpp.

Referenced by CreateTreeButton(), OnResetAll(), OnSetAll(), and OnToogleAll().

Button* Tutorial::LayoutDemo::lastSelected

Definition at line 650 of file 3dcontrols.cpp.

Referenced by LayoutDemo(), OnReset(), OnSet(), OnToogle(), and OnTreeButtonClick().

TextBox Tutorial::LayoutDemo::text

Definition at line 648 of file 3dcontrols.cpp.

Referenced by ConfigTreeButton(), and LayoutDemo().

Window Tutorial::LayoutDemo::window

Definition at line 647 of file 3dcontrols.cpp.

Referenced by LayoutDemo(), and OnEnd().

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:21:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tutorial::LayoutDemo Member List

This is the complete list of members for Tutorial::LayoutDemo, including all inherited members.
btnReset | Tutorial::LayoutDemo |
btnResetAll | Tutorial::LayoutDemo |
btnSet | Tutorial::LayoutDemo |
btnSetAll | Tutorial::LayoutDemo |
btnToogle | Tutorial::LayoutDemo |
btnToogleAll | Tutorial::LayoutDemo |
btnTree | Tutorial::LayoutDemo |
buttons | Tutorial::LayoutDemo |
ConfigTextFace(Text3D *text, char *textValue) | Tutorial::LayoutDemo | [inline]
ConfigTreeButton(Button *button, int num) | Tutorial::LayoutDemo | [inline]
CreateTreeButton(int level) | Tutorial::LayoutDemo | [inline]
Demo(Tutorial *_parent) | Tutorial::Demo | [inline]
Ending() | Tutorial::Demo | [inline]
lastSelected | Tutorial::LayoutDemo |
LayoutDemo(Tutorial *_parent) | Tutorial::LayoutDemo | [inline]
OnEnd() | Tutorial::LayoutDemo | [inline]
OnReset() | Tutorial::LayoutDemo | [inline]
OnResetAll() | Tutorial::LayoutDemo | [inline]
OnSet() | Tutorial::LayoutDemo | [inline]
OnSetAll() | Tutorial::LayoutDemo | [inline]
OnToogle() | Tutorial::LayoutDemo | [inline]
OnToogleAll() | Tutorial::LayoutDemo | [inline]
OnTreeButtonClick(Control *sender) | Tutorial::LayoutDemo | [inline]
parent | Tutorial::Demo |
text | Tutorial::LayoutDemo |
window | Tutorial::LayoutDemo |
Generated on Fri Aug 20 19:21:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tutorial::UniversDemo class Reference

Tutorial::UniversDemo Class Reference

Inheritance diagram for Tutorial::UniversDemo:

Tutorial::Demo List of all members.

Public Member Functions

UniversDemo (Tutorial *_parent)
void | SetFace (int numFace, float r, float g, float b, char *text)
int | OnTimer (Timer *timer)
int | OnLeft ()
int | OnRight ()
int | OnTop ()
int | OnBottom ()
void | ConfigSlide (DockPos direction)
int | OnEnd ()

Public Attributes

Control * control
Button * | button [4 *6]
Timer timer
DockPos slideDirection
double | countDirection

Constructor & Destructor Documentation

Tutorial::UniversDemo::UniversDemo ( Tutorial * _parent ) [inline]

Definition at line 350 of file 3dcontrols.cpp.

References Primitive::AddBox(), Tutorial::btnReturn, ce, EventButton::click, control, MyTreeNode< T >::elem, FACE_BACK, FACE_BOTTOM, FACE_FRONT, FACE_LEFT, FACE_RIGHT, FACE_TOP, Control::faceNode, Control::id, Button::onButton, OnEnd(), ControlEngine::Pop(), Face::position, ControlEngine::primitive, ControlEngine::Push(), SetFace(), Tip::SetText(), Face::size, Tutorial::tip, ControlEngine::univers, Point2D< LayoutDouble >::x, Point2D< LayoutDouble >::y, and Point3D< LayoutDouble >::z.

Member Function Documentation

void Tutorial::UniversDemo::ConfigSlide ( DockPos direction ) [inline]

Definition at line 465 of file 3dcontrols.cpp.

References BindTimer, countDirection, Timer::onTimer, and slideDirection.

Referenced by OnBottom(), OnLeft(), OnRight(), and OnTop().

int Tutorial::UniversDemo::OnBottom ( ) [inline]

Definition at line 459 of file 3dcontrols.cpp.

References bottom, and ConfigSlide().

Referenced by SetFace().

int Tutorial::UniversDemo::OnEnd ( ) [inline]

Definition at line 473 of file 3dcontrols.cpp.

References control, and Tutorial::Demo::Ending().

Referenced by UniversDemo().

int Tutorial::UniversDemo::OnLeft ( ) [inline]

Definition at line 441 of file 3dcontrols.cpp.

References ConfigSlide().

Referenced by SetFace().

int Tutorial::UniversDemo::OnRight ( ) [inline]

Definition at line 447 of file 3dcontrols.cpp.

References ConfigSlide().

Referenced by SetFace().

int Tutorial::UniversDemo::OnTimer ( Timer * timer ) [inline]

Definition at line 420 of file 3dcontrols.cpp.

References bottom, control, countDirection, MyTreeNode< T >::elem, Control::faceNode, Timer::onTimer, Control::RotateQuaternion(), slideDirection, and top.

int Tutorial::UniversDemo::OnTop ( ) [inline]

Definition at line 453 of file 3dcontrols.cpp.

References ConfigSlide(), and top.

Referenced by SetFace().

void Tutorial::UniversDemo::SetFace | ( | int | numFace,
 |  | float | r,
 |  | float | g,
 |  | float | b,
 |  | char * | text
 | ) | [inline]

Definition at line 373 of file 3dcontrols.cpp.

References align_center, Textures::arrow, button, ce, EventButton::click, control, Button::Create(), MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, ControlEngine::fontTexture, Primitive::GoTo(), BasicText3D::material, Face::material, Button::materialOnDown, Button::materialOnUp, Control::MoveTo(), OnBottom(), Button::onButton, OnLeft(), OnRight(), OnTop(), ControlEngine::primitive, Control::RotateTo(), Text3D::SetAlign(), Control::SetBlending(), Material::SetDS(), Text3D::SetText(), Text3D::Setup(), Face::text, ControlEngine::texture, Control::XDockCenter(), Control::XDockLeft(), Control::XDockRight(), Control::YDockBottom(), Control::YDockCenter(), and Control::YDockTop().

Referenced by UniversDemo().

Member Data Documentation

Button* Tutorial::UniversDemo::button[4*6]

Definition at line 345 of file 3dcontrols.cpp.

Referenced by SetFace().

Control* Tutorial::UniversDemo::control

Definition at line 344 of file 3dcontrols.cpp.

Referenced by OnEnd(), OnTimer(), SetFace(), and UniversDemo().

double Tutorial::UniversDemo::countDirection

Definition at line 348 of file 3dcontrols.cpp.

Referenced by ConfigSlide(), and OnTimer().

DockPos Tutorial::UniversDemo::slideDirection

Definition at line 347 of file 3dcontrols.cpp.

Referenced by ConfigSlide(), and OnTimer().

Timer Tutorial::UniversDemo::timer

Definition at line 346 of file 3dcontrols.cpp.

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:22:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tutorial::UniversDemo Member List

This is the complete list of members for Tutorial::UniversDemo, including all inherited members.
button | Tutorial::UniversDemo |
ConfigSlide(DockPos direction) | Tutorial::UniversDemo | [inline]
control | Tutorial::UniversDemo |
countDirection | Tutorial::UniversDemo |
Demo(Tutorial *_parent) | Tutorial::Demo | [inline]
Ending() | Tutorial::Demo | [inline]
OnBottom() | Tutorial::UniversDemo | [inline]
OnEnd() | Tutorial::UniversDemo | [inline]
OnLeft() | Tutorial::UniversDemo | [inline]
OnRight() | Tutorial::UniversDemo | [inline]
OnTimer(Timer *timer) | Tutorial::UniversDemo | [inline]
OnTop() | Tutorial::UniversDemo | [inline]
parent | Tutorial::Demo |
SetFace(int numFace, float r, float g, float b, char *text) | Tutorial::UniversDemo | [inline]
slideDirection | Tutorial::UniversDemo |
timer | Tutorial::UniversDemo |
UniversDemo(Tutorial *_parent) | Tutorial::UniversDemo | [inline]
Generated on Fri Aug 20 19:22:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Tutorial::WindowDemo class Reference

Tutorial::WindowDemo Class Reference

Inheritance diagram for Tutorial::WindowDemo:

Tutorial::Demo List of all members.

Public Member Functions

WindowDemo (Tutorial *_parent)
int OnEnd ()

Public Attributes

Window * windowLeft
Window * windowRight
Window * windowTop
Window * windowBottom

Constructor & Destructor Documentation

Tutorial::WindowDemo::WindowDemo ( Tutorial * _parent ) [inline]

Definition at line 871 of file 3dcontrols.cpp.

References bottom, Tutorial::btnReturn, ce, EventButton::click, Window::client, Window::Create(), MyTreeNode< T >::Elems(), FACE_FRONT, Control::faceNode, ControlEngine::fontTexture, BasicText3D::material, Button::onButton, OnEnd(), Title::OnOriginal(), Primitive::Pop(), ControlEngine::primitive, ControlEngine::Push(), Control::RotateTo(), Text3D::SetAlign(), Material::SetDS(), Text3D::SetText(), Title::SetText(), Tip::SetText(), Text3D::Setup(), ControlEngine::taskWindow, Face::text, Tutorial::tip, Window::title, Window::titleDock, top, ControlEngine::univers, windowBottom, windowLeft, windowRight, windowTop, Control::XDockCenter(), Control::XDockLeft(), Control::XDockRight(), Control::YDockBottom(), Control::YDockCenter(), and Control::YDockTop().

Member Function Documentation

int Tutorial::WindowDemo::OnEnd ( ) [inline]

Definition at line 941 of file 3dcontrols.cpp.

References ce, Tutorial::Demo::Ending(), Title::OnMin(), ControlEngine::taskWindow, Window::title, windowBottom, windowLeft, windowRight, and windowTop.

Referenced by WindowDemo().

Member Data Documentation

Window* Tutorial::WindowDemo::windowBottom

Definition at line 869 of file 3dcontrols.cpp.

Referenced by OnEnd(), and WindowDemo().

Window* Tutorial::WindowDemo::windowLeft

Definition at line 866 of file 3dcontrols.cpp.

Referenced by OnEnd(), and WindowDemo().

Window* Tutorial::WindowDemo::windowRight

Definition at line 867 of file 3dcontrols.cpp.

Referenced by OnEnd(), and WindowDemo().

Window* Tutorial::WindowDemo::windowTop

Definition at line 868 of file 3dcontrols.cpp.

Referenced by OnEnd(), and WindowDemo().

The documentation for this class was generated from the following file:
  • 3dcontrols.cpp
Generated on Fri Aug 20 19:22:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Tutorial::WindowDemo Member List

This is the complete list of members for Tutorial::WindowDemo, including all inherited members.
Demo(Tutorial *_parent) | Tutorial::Demo | [inline]
Ending() | Tutorial::Demo | [inline]
OnEnd() | Tutorial::WindowDemo | [inline]
parent | Tutorial::Demo |
windowBottom | Tutorial::WindowDemo |
WindowDemo(Tutorial *_parent) | Tutorial::WindowDemo | [inline]
windowLeft | Tutorial::WindowDemo |
windowRight | Tutorial::WindowDemo |
windowTop | Tutorial::WindowDemo |
Generated on Fri Aug 20 19:22:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Univers class Reference

Univers Class Reference

L'univers est le conteneur 3D general (le desktop en 3D). More...

#include <univers.h>

Inheritance diagram for Univers:

Control List of all members.

Public Member Functions

Univers ()
~Univers ()
virtual void | Create ()
void | ToString (MyString &str)
Pour le debugage.

void | ExitQuestion ()
void | HomePosition ()
int | OnKeyDown (StateKey *key, int face)
int | OnKeyUp (StateKey *key, int face)
int | OnMouseMove (StateMouse *mouse, int deltaX, int deltaY, int face)
int | OnMouseWheel (StateMouse *mouse, int face)
int | OnLButtonDown (StateMouse *mouse, int face)
Un simple click.

int | OnLButtonUp (StateMouse *mouse, int face)
int | OnMButtonDown (StateMouse *mouse, int face)
int | OnMButtonUp (StateMouse *mouse, int face)
int | OnRefresh (Timer *)
A chaque rafraichisement graphique, verifie s'il y a des deplacements rapides.

int | OnOverIn (Control *, int)
int | OnOverOut (Control *, int)
int | OnExit ()

Public Attributes

BOOL | isOnMenu
est on dans le menu F11 ?

BOOL | isMenuUsing
y a t'il eut un element du menu utilisée ?

StateMouse oldMouse

Detailed Description

L'univers est le conteneur 3D general (le desktop en 3D).

Definition at line 32 of file univers.h.

Constructor & Destructor Documentation

Univers::Univers ( )

Definition at line 33 of file univers.cpp.

References EventMouseButton::down, EventKey::down, EventOver::in, isMenuUsing, isOnMenu, EventControl::key, EventMouse::left, EventMouse::mid, EventControl::mouse, EventMouse::move, EventOver::out, EventControl::over, EventMouseButton::up, EventKey::up, and EventMouse::wheel.

Univers::~Univers ( )

Definition at line 54 of file univers.cpp.

References ce, Timer::onTimer, and ControlEngine::timerRefresh.

Member Function Documentation

void Univers::Create ( ) [virtual]

Reimplemented from Control.

Definition at line 61 of file univers.cpp.

References Primitive::AddFace(), ce, ControlEngine::primitive, and Control::SetParent().

Referenced by ControlEngine::ControlEngine().

void Univers::ExitQuestion ( )

Definition at line 158 of file univers.cpp.

References MsgBox::btnCancel, MsgBox::btnOk, ce, EventButton::click, MsgBox::Create(), ControlEngine::masterContainer, Control::Move(), Button::onButton, OnExit(), ControlEngine::Pop(), ControlEngine::Push(), Button::SetText(), TextBox::SetText(), MsgBox::txtInfo, Control::XDockCenter(), and Control::YDockCenter().

Referenced by Tutorial::OnEnd(), and OnKeyUp().

void Univers::HomePosition ( )

Definition at line 252 of file univers.cpp.

References MyTreeNode< T >::elem.

Referenced by Tutorial::Demo::Demo(), and OnKeyUp().

int Univers::OnExit ( )

Definition at line 173 of file univers.cpp.

References ce, Debug0Param, Timer::onTimer, and ControlEngine::timerRefresh.

Referenced by ExitQuestion().

int Univers::OnKeyDown | ( | StateKey * | key,
 |  | int | face
 | ) |

Reimplemented from Control.

Definition at line 69 of file univers.cpp.

References PolygonMode::back, BOOL(), ce, StateKey::code, DebugKey2, DebugStructProc(), Region::enable, ControlEngine::enableAntiAliasing, ControlEngine::enableBackGround, ControlEngine::enableFPS, Screen::enableFullScreen, ControlEngine::enableLightView, ControlEngine::enablePicking, ControlEngine::enableRepere, Screen::enableTitle, fill, PolygonMode::front, StateKey::GetState(), ControlEngine::hInst, IDD_DEBUG_STRUCT, isMenuUsing, isOnMenu, point, ControlEngine::polygonMode, PolygonModeType, ControlEngine::primitive, Screen::region, Control::RotateQuaternion(), ControlEngine::screenMain, Screen::Update(), PolygonMode::Use(), and Primitive::ViewDebug().

int Univers::OnKeyUp | ( | StateKey * | key,
 |  | int | face
 | ) |

Reimplemented from Control.

Definition at line 188 of file univers.cpp.

References align_begin, align_center, ce, StateKey::code, Tip::Create(), DebugKey2, ExitQuestion(), HomePosition(), isMenuUsing, isOnMenu, ControlEngine::masterContainer, ControlEngine::Pop(), ControlEngine::Push(), ControlEngine::ScreenShot(), Text3D::SetAlign(), ssBlending, ssDepth, ssLuminance, ssRGB, Tip::text, Control::XDockRight(), and Control::YDockCenter().

int Univers::OnLButtonDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Un simple click.

Reimplemented from Control.

Definition at line 278 of file univers.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, and DebugMouse2.

int Univers::OnLButtonUp | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented from Control.

Definition at line 286 of file univers.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, Cursor::curType, DebugMouse2, and Cursor::leftType.

int Univers::OnMButtonDown | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented from Control.

Definition at line 294 of file univers.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorNoChange, cursorRepere, and DebugMouse2.

int Univers::OnMButtonUp | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented from Control.

Definition at line 308 of file univers.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorRepere, Cursor::curType, DebugMouse2, and Cursor::midType.

int Univers::OnMouseMove | ( | StateMouse * | mouse,
 |  | int | deltaX,
 |  | int | deltaY,
 |  | int | face
 | ) |

Definition at line 258 of file univers.cpp.

References StateMouse::GetNbButtonPush(), StateMouse::leftBtn, StateMouse::midBtn, Control::Move(), and Control::RotateQuaternion().

int Univers::OnMouseWheel | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented from Control.

Definition at line 271 of file univers.cpp.

References DebugMouse2, Control::Move(), and StateMouse::wheelDelta.

int Univers::OnOverIn | ( | Control * | ,
 |  | int |
 | ) |

Definition at line 337 of file univers.cpp.

References Cursor::ApplyTypes(), ce, ControlEngine::cursor, cursorNothing, cursorRepere, Debug2Param, Control::name, Timer::onTimer, and ControlEngine::timerRefresh.

int Univers::OnOverOut | ( | Control * | ,
 |  | int |
 | ) |

Definition at line 345 of file univers.cpp.

References ce, Debug2Param, Control::name, Timer::onTimer, and ControlEngine::timerRefresh.

int Univers::OnRefresh ( Timer * )

A chaque rafraichisement graphique, verifie s'il y a des deplacements rapides.

Definition at line 319 of file univers.cpp.

References Timer::GetDeltaTime(), StateKey::GetState(), and Control::Move().

void Univers::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 354 of file univers.cpp.

References MyString::AddFormat().

Member Data Documentation

BOOL Univers::isMenuUsing

y a t'il eut un element du menu utilisée ?

Definition at line 42 of file univers.h.

Referenced by OnKeyDown(), OnKeyUp(), and Univers().

BOOL Univers::isOnMenu

est on dans le menu F11 ?

Definition at line 41 of file univers.h.

Referenced by OnKeyDown(), OnKeyUp(), and Univers().

StateMouse Univers::oldMouse

Definition at line 43 of file univers.h.

The documentation for this class was generated from the following files:
  • univers.h
  • univers.cpp
Generated on Fri Aug 20 19:22:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Univers Member List

This is the complete list of members for Univers, including all inherited members.
ChangeDirection() | Control |
Control() | Control |
controls | Control | [static]
Create() | Univers | [virtual]
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
ExitQuestion() | Univers |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
HomePosition() | Univers |
id | Control |
inertia | Control | [static]
isEnable | Control |
isMenuUsing | Univers |
isOnMenu | Univers |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
oldMouse | Univers |
OnClick(StateMouse *mouse, int face) | Control |
onControl | Control |
OnExit() | Univers |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Univers |
OnKeyUp(StateKey *key, int face) | Univers |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Univers |
OnLButtonUp(StateMouse *mouse, int face) | Univers |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Univers |
OnMButtonUp(StateMouse *mouse, int face) | Univers |
OnMouseMove(StateMouse *mouse, int deltaX, int deltaY, int face) | Univers |
Control::OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Univers |
OnOverIn(Control *, int) | Univers |
OnOverOut(Control *, int) | Univers |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
OnRefresh(Timer *) | Univers |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
ToString(MyString &str) | Univers |
Univers() | Univers |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~Univers() | Univers |
Generated on Fri Aug 20 19:22:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateValueEditor< T > class Reference

ValueEditor< T > Class Template Reference

valeur de l'element en saisie More...

#include <valueEditor.h>

List of all members.

Public Types

typedef ValueNamed< T > | ValueNamedCour

Public Member Functions

ValueEditor ()
void | Zero ()
void | operator= (ValueEditor &source)
ValueEditor< T > * | GetCopy ()
void | InterpretedText (MyString &interpretedText, char *_valueText=NULL, T *_value=NULL)
void | Set (char *_variable, char *_info, T _minValue, T _maxValue, HTREEITEM _hItem)
void | MAJ_TreeItem (HWND hWnd)
void | AddSpecial (T special, char *description)
void | MAJ_ValueMin (HWND hWnd)
void | MAJ_ValueMax (HWND hWnd)
void | MAJ_ValueMids (HWND hWnd)
void | MAJ_Value (HWND hWnd, T _value, BOOL refresh=TRUE)
void | MAJ_Value (HWND hWnd)
void | Get_Value (HWND hWnd)
void | MAJ_Slider (HWND hWnd)
void | MAJ_Specials (HWND hWnd, int num=-1)
void | MAJ (HWND hWnd)

Public Attributes

MyString valueText
MyString info
MyString variable
T | minValue
T | maxValue
T * | value
HTREEITEM | hItem
MyList< ValueNamedCour > specials

Detailed Description

template<class T>
class ValueEditor< T >

valeur de l'element en saisie

Definition at line 77 of file valueEditor.h.

Member Typedef Documentation

template<class T>
typedef ValueNamed<T> ValueEditor< T >::ValueNamedCour

Definition at line 88 of file valueEditor.h.

Constructor & Destructor Documentation

template<class T>
ValueEditor< T >::ValueEditor ( )

Definition at line 97 of file valueEditor.cpp.

References ValueEditor< T >::Zero().

Member Function Documentation

template<class T>
void ValueEditor< T >::AddSpecial | ( | T | special,
 |  | char * | description
 | ) |

Definition at line 172 of file valueEditor.cpp.

References MyList< ValueNamedCour >::i, ValueNamed< T >::Set(), and ValueEditor< T >::specials.

template<class T>
void ValueEditor< T >::Get_Value ( HWND hWnd )

Definition at line 218 of file valueEditor.cpp.

References IDC_EDIT_VALUE, ValueEditor< T >::MAJ_Value(), and MyString::ToDouble().

template<class T>
ValueEditor< T > * ValueEditor< T >::GetCopy ( )

Definition at line 129 of file valueEditor.cpp.

template<class T>
void ValueEditor< T >::InterpretedText | ( | MyString & | interpretedText,
 |  | char * | _valueText = NULL,
 |  | T * | _value = NULL
 | ) |

Definition at line 137 of file valueEditor.cpp.

References MyString::GetSize(), and ValueEditor< T >::valueText.

Referenced by ValueEditor< T >::MAJ_TreeItem().

template<class T>
void ValueEditor< T >::MAJ ( HWND hWnd )

Definition at line 273 of file valueEditor.cpp.

References BOOL(), IDC_BUTTON_MAX, IDC_BUTTON_MIDS, IDC_BUTTON_MIN, IDC_EDIT_VALUE, IDC_STATIC1, IDC_STATIC_VARIABLE, ValueEditor< T >::MAJ_Slider(), ValueEditor< T >::MAJ_Specials(), ValueEditor< T >::MAJ_Value(), ValueEditor< T >::maxValue, and ValueEditor< T >::minValue.

Referenced by DebugStructProc().

template<class T>
void ValueEditor< T >::MAJ_Slider ( HWND hWnd )

Definition at line 228 of file valueEditor.cpp.

References BOOL(), IDC_SLIDER_PAD, ValueEditor< T >::maxValue, and ValueEditor< T >::minValue.

Referenced by ValueEditor< T >::MAJ(), and ValueEditor< T >::MAJ_Value().

template<class T>
void ValueEditor< T >::MAJ_Specials | ( | HWND | hWnd,
 |  | int | num = -1
 | ) |

Definition at line 239 of file valueEditor.cpp.

References BOOL(), MyList< ValueNamedCour >::GetNbElem(), MyList< ValueNamedCour >::i, IDC_COMBO_SPECIALS, ValueEditor< T >::MAJ_Value(), MyListIterator< ValueNamedCour >::More(), num, and ValueEditor< T >::specials.

Referenced by ValueEditor< T >::MAJ(), and ValueEditor< T >::MAJ_Value().

template<class T>
void ValueEditor< T >::MAJ_TreeItem ( HWND hWnd )

Definition at line 160 of file valueEditor.cpp.

References ValueEditor< T >::hItem, IDC_TREE_ELEM, and ValueEditor< T >::InterpretedText().

template<class T>
void ValueEditor< T >::MAJ_Value ( HWND hWnd )

Definition at line 210 of file valueEditor.cpp.

References IDC_EDIT_VALUE.

template<class T>
void ValueEditor< T >::MAJ_Value | ( | HWND | hWnd,
 |  | T | _value,
 |  | BOOL | refresh = TRUE
 | ) |

Definition at line 198 of file valueEditor.cpp.

References ValueEditor< T >::MAJ_Slider(), and ValueEditor< T >::MAJ_Specials().

Referenced by ValueEditor< T >::Get_Value(), ValueEditor< T >::MAJ(), ValueEditor< T >::MAJ_Specials(), ValueEditor< T >::MAJ_ValueMax(), ValueEditor< T >::MAJ_ValueMids(), and ValueEditor< T >::MAJ_ValueMin().

template<class T>
void ValueEditor< T >::MAJ_ValueMax ( HWND hWnd )

Definition at line 186 of file valueEditor.cpp.

References ValueEditor< T >::MAJ_Value(), and ValueEditor< T >::maxValue.

template<class T>
void ValueEditor< T >::MAJ_ValueMids ( HWND hWnd )

Definition at line 192 of file valueEditor.cpp.

References ValueEditor< T >::MAJ_Value(), ValueEditor< T >::maxValue, and ValueEditor< T >::minValue.

template<class T>
void ValueEditor< T >::MAJ_ValueMin ( HWND hWnd )

Definition at line 180 of file valueEditor.cpp.

References ValueEditor< T >::MAJ_Value(), and ValueEditor< T >::minValue.

template<class T>
void ValueEditor< T >::operator= ( ValueEditor< T > & source )

Definition at line 116 of file valueEditor.cpp.

References ValueEditor< T >::hItem, ValueEditor< T >::info, ValueEditor< T >::maxValue, ValueEditor< T >::minValue, ValueEditor< T >::specials, ValueEditor< T >::value, ValueEditor< T >::valueText, ValueEditor< T >::variable, and variable.

template<class T>
void ValueEditor< T >::Set | ( | char * | _variable,
 |  | char * | _info,
 |  | T | _minValue,
 |  | T | _maxValue,
 |  | HTREEITEM | _hItem
 | ) |

Definition at line 150 of file valueEditor.cpp.

References ValueEditor< T >::hItem, ValueEditor< T >::maxValue, ValueEditor< T >::minValue, and variable.

template<class T>
void ValueEditor< T >::Zero ( )

Definition at line 103 of file valueEditor.cpp.

References ValueEditor< T >::hItem, MyList< ValueNamedCour >::i, ValueEditor< T >::maxValue, ValueEditor< T >::minValue, ValueEditor< T >::specials, MyListIterator< ValueNamedCour >::SuprAll(), ValueEditor< T >::valueText, and variable.

Referenced by ValueEditor< T >::ValueEditor().

Member Data Documentation

template<class T>
HTREEITEM ValueEditor< T >::hItem

Definition at line 86 of file valueEditor.h.

Referenced by ValueEditor< T >::MAJ_TreeItem(), ValueEditor< T >::operator=(), ValueEditor< T >::Set(), and ValueEditor< T >::Zero().

template<class T>
MyString ValueEditor< T >::info

Definition at line 81 of file valueEditor.h.

Referenced by ValueEditor< T >::operator=().

template<class T>
T ValueEditor< T >::maxValue

Definition at line 84 of file valueEditor.h.

Referenced by ValueEditor< T >::MAJ(), ValueEditor< T >::MAJ_Slider(), ValueEditor< T >::MAJ_ValueMax(), ValueEditor< T >::MAJ_ValueMids(), ValueEditor< T >::operator=(), ValueEditor< T >::Set(), and ValueEditor< T >::Zero().

template<class T>
T ValueEditor< T >::minValue

Definition at line 83 of file valueEditor.h.

Referenced by ValueEditor< T >::MAJ(), ValueEditor< T >::MAJ_Slider(), ValueEditor< T >::MAJ_ValueMids(), ValueEditor< T >::MAJ_ValueMin(), ValueEditor< T >::operator=(), ValueEditor< T >::Set(), and ValueEditor< T >::Zero().

template<class T>
MyList<ValueNamedCour> ValueEditor< T >::specials

Definition at line 89 of file valueEditor.h.

Referenced by ValueEditor< T >::AddSpecial(), ValueEditor< T >::MAJ_Specials(), ValueEditor< T >::operator=(), and ValueEditor< T >::Zero().

template<class T>
T* ValueEditor< T >::value

Definition at line 85 of file valueEditor.h.

Referenced by ValueEditor< T >::operator=().

template<class T>
MyString ValueEditor< T >::valueText

Definition at line 80 of file valueEditor.h.

Referenced by ValueEditor< T >::InterpretedText(), ValueEditor< T >::operator=(), and ValueEditor< T >::Zero().

template<class T>
MyString ValueEditor< T >::variable

Definition at line 82 of file valueEditor.h.

Referenced by ValueEditor< T >::operator=().

The documentation for this class was generated from the following files:
  • valueEditor.h
  • valueEditor.cpp
Generated on Fri Aug 20 19:22:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ValueEditor< T > Member List

This is the complete list of members for ValueEditor< T >, including all inherited members.
AddSpecial(T special, char *description) | ValueEditor< T >
Get_Value(HWND hWnd) | ValueEditor< T >
GetCopy() | ValueEditor< T >
hItem | ValueEditor< T >
info | ValueEditor< T >
InterpretedText(MyString &interpretedText, char *_valueText=NULL, T *_value=NULL) | ValueEditor< T >
MAJ(HWND hWnd) | ValueEditor< T >
MAJ_Slider(HWND hWnd) | ValueEditor< T >
MAJ_Specials(HWND hWnd, int num=-1) | ValueEditor< T >
MAJ_TreeItem(HWND hWnd) | ValueEditor< T >
MAJ_Value(HWND hWnd, T _value, BOOL refresh=TRUE) | ValueEditor< T >
MAJ_Value(HWND hWnd) | ValueEditor< T >
MAJ_ValueMax(HWND hWnd) | ValueEditor< T >
MAJ_ValueMids(HWND hWnd) | ValueEditor< T >
MAJ_ValueMin(HWND hWnd) | ValueEditor< T >
maxValue | ValueEditor< T >
minValue | ValueEditor< T >
operator=(ValueEditor &source) | ValueEditor< T >
Set(char *_variable, char *_info, T _minValue, T _maxValue, HTREEITEM _hItem) | ValueEditor< T >
specials | ValueEditor< T >
value | ValueEditor< T >
ValueEditor() | ValueEditor< T >
ValueNamedCour typedef | ValueEditor< T >
valueText | ValueEditor< T >
variable | ValueEditor< T >
Zero() | ValueEditor< T >
Generated on Fri Aug 20 19:22:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: ValueEditors class Reference

ValueEditors Class Reference

Gestion des l'ensemble de ValueEditor. More...

#include <valueEditor.h>

List of all members.

Public Member Functions

ValueEditors ()
~ValueEditors ()
void | Update (Object *object)
void | Zero ()
void | MakeDebugStruct (HWND hWnd)
void | MakeDebugFaceStruct (HWND hWnd)
void | MakeDebugFaceStruct (HWND hWnd, HTREEITEM hParentItem, FaceNode *node)
void | MakeDebugControlStruct (HWND hWnd)
void | MakeDebugControlStruct (HWND hWnd, HTREEITEM hParentItem, FaceNode *node, int oldIdControl)
void | MakeRenderStruct (HWND hWnd)
void | MakeLightsStruct (HWND hWnd)
void | MakeTexturesStruct (HWND hWnd)
void | MakeFontsStruct (HWND hWnd)
BOOL | MakeElemFaceStruct (HWND hWnd, FaceNode *node)
void | MakeElemControlStruct (HWND hWnd, Control *control)

Public Attributes

MyList< Object > list
CBase_VE_double * | VE_double
CBase_VE_int * | VE_int
CBase_VE_float * | VE_float

Detailed Description

Gestion des l'ensemble de ValueEditor.

Definition at line 122 of file valueEditor.h.

Constructor & Destructor Documentation

ValueEditors::ValueEditors ( )

Definition at line 317 of file valueEditor.cpp.

ValueEditors::~ValueEditors ( )

Definition at line 321 of file valueEditor.cpp.

References Zero().

Member Function Documentation

void ValueEditors::MakeDebugControlStruct | ( | HWND | hWnd,
 |  | HTREEITEM | hParentItem,
 |  | FaceNode * | node,
 |  | int | oldIdControl
 | ) |

Definition at line 445 of file valueEditor.cpp.

References MyTreeNode< T >::childs, MyTreeNode< T >::elem, FaceNode, Control::Find(), MyListIterator< MyTreeNode * >::GetElem(), MyList< MyTreeNode * >::i, MakeDebugControlStruct(), MyListIterator< MyTreeNode * >::More(), and Control::name.

void ValueEditors::MakeDebugControlStruct ( HWND hWnd )

Definition at line 430 of file valueEditor.cpp.

References ce, MyTree< Face >::GetRoot(), INSERT_ITEM_NUM, MakeDebugStruct(), NUM_SELECTED_TRASH, ControlEngine::primitive, ControlEngine::trash, and Primitive::tree.

Referenced by DebugStructProc(), and MakeDebugControlStruct().

void ValueEditors::MakeDebugFaceStruct | ( | HWND | hWnd,
 |  | HTREEITEM | hParentItem,
 |  | FaceNode * | node
 | ) |

Definition at line 417 of file valueEditor.cpp.

References MyTreeNode< T >::childs, MyTreeNode< T >::elem, FaceNode, MyListIterator< MyTreeNode * >::GetElem(), MyList< MyTreeNode * >::i, INSERT_ITEM_NUM, MakeDebugFaceStruct(), and MyListIterator< MyTreeNode * >::More().

void ValueEditors::MakeDebugFaceStruct ( HWND hWnd )

Definition at line 410 of file valueEditor.cpp.

References ce, MyTree< Face >::GetRoot(), MakeDebugStruct(), ControlEngine::primitive, ControlEngine::trash, and Primitive::tree.

Referenced by DebugStructProc(), and MakeDebugFaceStruct().

void ValueEditors::MakeDebugStruct ( HWND hWnd )

Definition at line 382 of file valueEditor.cpp.

References INSERT_ITEM_NUM, NUM_SELECTED_FONT, NUM_SELECTED_LIGHT, NUM_SELECTED_NOTHING, NUM_SELECTED_PICKING, NUM_SELECTED_RENDER, and NUM_SELECTED_TEXTURE.

Referenced by MakeDebugControlStruct(), and MakeDebugFaceStruct().

void ValueEditors::MakeElemControlStruct | ( | HWND | hWnd,
 |  | Control * | control
 | ) |

Definition at line 467 of file valueEditor.cpp.

References CBase_VE_double, CBase_VE_float, CBase_VE_int, EventKey::click, EventMouseButton::click, EventKey::doubleClick, EventMouseButton::doubleClick, EventKey::down, EventMouseButton::down, EventControl::faceOver, MyString::Format(), EventFaceOver::GetNbLinks(), EventOver::GetNbLinks(), EventKey::GetNbLinks(), EventMouseButton::GetNbLinks(), EventMouse::GetNbLinks(), EventControl::GetNbLinks(), Control::id, EventFaceOver::in, EventOver::in, INSERT_INT, INSERT_ITEM, INSERT_ITEM_INT, Control::isEnable, Control::isView, EventControl::key, EventMouse::left, EventMouse::mid, EventControl::mouse, EventMouse::move, Control::name, num, Control::onControl, EventFaceOver::out, EventOver::out, EventControl::over, Control::parent, Control::parentFace, EventMouse::right, EventControl::sleeped, Control::sleepedDelay, EventKey::up, EventMouseButton::up, EventMouse::wheel, and Zero().

Referenced by DebugStructProc().

BOOL ValueEditors::MakeElemFaceStruct | ( | HWND | hWnd,
 |  | FaceNode * | node
 | ) |

Definition at line 1241 of file valueEditor.cpp.

References Color::a, align_begin, align_center, align_end, align_justify, Material::ambient, Face::angle, Face::antialias, Color::b, Layout< T >::baseValue, Face::blending, BOOL(), CBase_VE_double, CBase_VE_float, CBase_VE_int, Face::center, Curve::center, clear(), Face::computeCenter, Face::computePosition, Face::computeSize, Layout< T >::constValue, Face::curve, BasicText3D::depth, Material::diffuse, Enabling< GLint >::elem, MyTreeNode< T >::elem, Material::emission, FaceNode, Face::fog, MyString::Format(), Color::g, Texture::id, Face::idControl, Face::idFace, INSERT_DOUBLE, INSERT_FLOAT, INSERT_INT, INSERT_ITEM, INSERT_ITEM_DOUBLE, INSERT_ITEM_FLOAT, INSERT_ITEM_INT, IS_TEXTURE, Layout< T >::IsDynamic(), Enabling< GLint >::isEnable, Color::isEnable, Text3D::letterWrap, Face::line, Face::lineMaterial, Text3D::lineWrap, Face::material, BasicText3D::material, Texture::name, Face::name, Curve::nbCut, num, Layout< T >::percentValue, Face::position, Color::r, Face::ratioXY, Face::scale, BasicText3D::scale, Material::shiness, Face::size, Material::specular, Face::text, Face::texture, Color::ToString(), Material::typeFace, Face::view, Text3D::wordWrap, Point2D< LayoutDouble >::x, Point3D< LayoutDouble >::x, Point2D< GLdouble >::x, Point2D< int >::x, Coordonate< GLdouble >::x, Point3D< GLdouble >::x, Text3D::xAlign, Text3D::xJustifyLimit, Point2D< LayoutDouble >::y, Point3D< LayoutDouble >::y, Point2D< GLdouble >::y, Point2D< int >::y, Coordonate< GLdouble >::y, Point3D< GLdouble >::y, Text3D::yAlign, Text3D::yJustifyLimit, Point3D< LayoutDouble >::z, Coordonate< GLdouble >::z, Point3D< GLdouble >::z, and Zero().

Referenced by DebugStructProc().

void ValueEditors::MakeFontsStruct ( HWND hWnd )

Todo:
Ajouter le nom du fichier ttf, type, taille etc ...

Definition at line 1191 of file valueEditor.cpp.

References CBase_VE_double, CBase_VE_float, CBase_VE_int, ce, ControlEngine::fontBitmap, ControlEngine::fontExtrude, ControlEngine::fontOutline, ControlEngine::fontPixmap, ControlEngine::fontPolygon, ControlEngine::fontTexture, MyString::Format(), MyList< T >::i, INSERT_ITEM, num, and Zero().

Referenced by DebugStructProc().

void ValueEditors::MakeLightsStruct ( HWND hWnd )

Definition at line 749 of file valueEditor.cpp.

References Color::a, Material::ambient, Light::attenuationCst, Light::attenuationLin, Light::attenuationQuad, Color::b, BOOL(), CBase_VE_double, CBase_VE_float, CBase_VE_int, ce, clear(), Light::cutoff, Material::diffuse, Light::direction, Enabling< GLfloat >::elem, Light::exponent, Color::g, INSERT_FLOAT, INSERT_INT, INSERT_ITEM, INSERT_ITEM_FLOAT, INSERT_ITEM_INT, IS_LIGHT, Enabling< GLfloat >::isEnable, Coordonate< GLfloat >::isEnable, Color::isEnable, Light::isEnable, ControlEngine::lights, ControlEngine::lightsMove, Light::material, num, Light::position, Color::r, Material::specular, Enabling< GLfloat >::ToString(), Coordonate< GLfloat >::ToString(), Color::ToString(), Coordonate< GLfloat >::w, Coordonate< GLfloat >::x, Coordonate< GLfloat >::y, Coordonate< GLfloat >::z, and Zero().

Referenced by DebugStructProc().

void ValueEditors::MakeRenderStruct ( HWND hWnd )

Definition at line 625 of file valueEditor.cpp.

References Color::a, ControlEngine::antiAliasingQuality, Color::b, CBase_VE_double, CBase_VE_float, CBase_VE_int, ce, clear(), Fog::color, Fog::density, Region::enable, ControlEngine::enableAntiAliasing, ControlEngine::enableBackGround, ControlEngine::enableCursor, Screen::enableFullScreen, ControlEngine::enableInertia, ControlEngine::enableLightView, ControlEngine::enableRepere, Screen::enableTitle, ControlEngine::enableViewInertia, Fog::end, ControlEngine::fog, Color::g, MyList< Pt_3D_Double >::GetNbElem(), INSERT_FLOAT, INSERT_INT, INSERT_ITEM, INSERT_ITEM_FLOAT, INSERT_ITEM_INT, IS_FOG, Color::isEnable, Fog::isEnable, Fog::mode, ControlEngine::monitor, Region::nbOr, num, Region::points, Color::r, Screen::region, ControlEngine::screenMain, Fog::start, Color::ToString(), Region::xMax, Region::xMin, Region::yMax, Region::yMin, and Zero().

Referenced by DebugStructProc().

void ValueEditors::MakeTexturesStruct ( HWND hWnd )

Definition at line 1037 of file valueEditor.cpp.

References CBase_VE_double, CBase_VE_float, CBase_VE_int, clear(), MyString::Format(), MyListIterator< Texture * >::GetElem(), MyList< Texture * >::i, INSERT_DOUBLE, INSERT_FLOAT, INSERT_INT, INSERT_ITEM, INSERT_ITEM_DOUBLE, INSERT_ITEM_FLOAT, INSERT_ITEM_INT, IS_TEXTURE, MyListIterator< Texture * >::More(), num, and Zero().

Referenced by DebugStructProc().

void ValueEditors::Update ( Object * object )

Definition at line 326 of file valueEditor.cpp.

References CBase_VE_double, CBase_VE_float, CBase_VE_int, Object::thisParent, VE_double, VE_float, and VE_int.

Referenced by DebugStructProc(), and ValueEditorProc().

void ValueEditors::Zero ( )

Definition at line 336 of file valueEditor.cpp.

References MyList< Object >::i, MyListIterator< Object >::SuprAll(), VE_double, VE_float, and VE_int.

Referenced by MakeElemControlStruct(), MakeElemFaceStruct(), MakeFontsStruct(), MakeLightsStruct(), MakeRenderStruct(), MakeTexturesStruct(), and ~ValueEditors().

Member Data Documentation

MyList<Object> ValueEditors::list

Definition at line 125 of file valueEditor.h.

Referenced by DebugStructProc().

CBase_VE_double* ValueEditors::VE_double

Definition at line 126 of file valueEditor.h.

Referenced by DebugStructProc(), Update(), ValueEditorProc(), and Zero().

CBase_VE_float* ValueEditors::VE_float

Definition at line 128 of file valueEditor.h.

Referenced by DebugStructProc(), Update(), ValueEditorProc(), and Zero().

CBase_VE_int* ValueEditors::VE_int

Definition at line 127 of file valueEditor.h.

Referenced by DebugStructProc(), Update(), ValueEditorProc(), and Zero().

The documentation for this class was generated from the following files:
  • valueEditor.h
  • valueEditor.cpp
Generated on Fri Aug 20 19:22:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ValueEditors Member List

This is the complete list of members for ValueEditors, including all inherited members.
list | ValueEditors
MakeDebugControlStruct(HWND hWnd) | ValueEditors
MakeDebugControlStruct(HWND hWnd, HTREEITEM hParentItem, FaceNode *node, int oldIdControl) | ValueEditors
MakeDebugFaceStruct(HWND hWnd) | ValueEditors
MakeDebugFaceStruct(HWND hWnd, HTREEITEM hParentItem, FaceNode *node) | ValueEditors
MakeDebugStruct(HWND hWnd) | ValueEditors
MakeElemControlStruct(HWND hWnd, Control *control) | ValueEditors
MakeElemFaceStruct(HWND hWnd, FaceNode *node) | ValueEditors
MakeFontsStruct(HWND hWnd) | ValueEditors
MakeLightsStruct(HWND hWnd) | ValueEditors
MakeRenderStruct(HWND hWnd) | ValueEditors
MakeTexturesStruct(HWND hWnd) | ValueEditors
Update(Object *object) | ValueEditors
ValueEditors() | ValueEditors
VE_double | ValueEditors
VE_float | ValueEditors
VE_int | ValueEditors
Zero() | ValueEditors
~ValueEditors() | ValueEditors
Generated on Fri Aug 20 19:22:01 2004 for 3d Controls by doxygen 1.3.6


3d Controls: TemplateValueNamed< T > class Reference

ValueNamed< T > Class Template Reference

Valeur nomée pour le mode Editor. More...

#include <valueEditor.h>

List of all members.

Public Member Functions

ValueNamed ()
void | Zero ()
void | operator= (ValueNamed &source)
void | Set (T _value, char *_desciption)

Public Attributes

T | value
MyString description

Detailed Description

template<class T>
class ValueNamed< T >

Valeur nomée pour le mode Editor.

Definition at line 60 of file valueEditor.h.

Constructor & Destructor Documentation

template<class T>
ValueNamed< T >::ValueNamed ( )

Definition at line 68 of file valueEditor.cpp.

References ValueNamed< T >::Zero().

Member Function Documentation

template<class T>
void ValueNamed< T >::operator= ( ValueNamed< T > & source )

Definition at line 81 of file valueEditor.cpp.

References ValueNamed< T >::description, and ValueNamed< T >::value.

template<class T>
void ValueNamed< T >::Set | ( | T | _value,
 |  | char * | _desciption
 | ) |

Definition at line 88 of file valueEditor.cpp.

References ValueNamed< T >::description.

Referenced by ValueEditor< T >::AddSpecial().

template<class T>
void ValueNamed< T >::Zero ( )

Definition at line 74 of file valueEditor.cpp.

References ValueNamed< T >::description.

Referenced by ValueNamed< T >::ValueNamed().

Member Data Documentation

template<class T>
MyString ValueNamed< T >::description

Definition at line 64 of file valueEditor.h.

Referenced by ValueNamed< T >::operator=(), ValueNamed< T >::Set(), and ValueNamed< T >::Zero().

template<class T>
T ValueNamed< T >::value

Definition at line 63 of file valueEditor.h.

Referenced by ValueNamed< T >::operator=().

The documentation for this class was generated from the following files:
  • valueEditor.h
  • valueEditor.cpp
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

ValueNamed< T > Member List

This is the complete list of members for ValueNamed< T >, including all inherited members.
description | ValueNamed< T >
operator=(ValueNamed &source) | ValueNamed< T >
Set(T _value, char *_desciption) | ValueNamed< T >
value | ValueNamed< T >
ValueNamed() | ValueNamed< T >
Zero() | ValueNamed< T >
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Window class Reference

Window Class Reference

Une "Window" est formé d'un Title et d'un zone Cliente. More...

#include <window.h>

Inheritance diagram for Window:

ResizingAndRotateControl Control Calculator MsgBox TaskWindow Tutorial List of all members.

Public Member Functions

Window ()
~Window ()
virtual void | Create ()
void | Create (double depth)
Creation de l'aspect graphique.

void | ToString (MyString &str)
Pour le debugage.

int | OnMouseWheel (StateMouse *mouse, int face)
int | OnClose ()
int | OnOver (StateMouse *mouse, int face)
int | OnLMRButton (StateMouse *, int)

Public Attributes

DockPos titleDock
Ou est placé le titre: haut,bas, gauche, droit ?

Title title
Container client

Detailed Description

Une "Window" est formé d'un Title et d'un zone Cliente.

Todo:
TrackButton control a faire

Definition at line 71 of file window.h.

Constructor & Destructor Documentation

Window::Window ( )

Definition at line 29 of file window.cpp.

References EventTitle::close, EventMouseButton::down, EventMouse::left, EventMouse::mid, EventControl::mouse, OnLMRButton(), Title::onTitle, EventMouse::right, titleDock, and top.

Window::~Window ( )

Definition at line 45 of file window.cpp.

Member Function Documentation

void Window::Create ( double depth )

Creation de l'aspect graphique.

Ex.:

// crée un container de 400*300*10 au centre
faceNode = ce.primitive.AddFace(debugInfo,id,0,0,0.5,0,0.5,0,400,0,300,0,FALSE);
ce.primitive.Push(0);
Window window;
window.Create(10);
ce.primitive.Pop();

Definition at line 68 of file window.cpp.

References Primitive::AddBox(), bottom, ce, client, Container::Create(), Title::Create(), MyTreeNode< T >::elem, FACE_FRONT, Control::faceNode, Primitive::GoTo(), ControlEngine::Pop(), ControlEngine::primitive, ControlEngine::Push(), Control::SetParent(), titleDock, and top.

virtual void Window::Create ( ) [inline, virtual]

Reimplemented from Control.

Reimplemented in Tutorial, Calculator, MsgBox, and TaskWindow.

Definition at line 80 of file window.h.

References DEFAULT_DEPTH_WINDOW.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), TaskWindow::Create(), MsgBox::Create(), Calculator::Create(), Tutorial::Create(), Tutorial::LayoutDemo::LayoutDemo(), and Tutorial::WindowDemo::WindowDemo().

int Window::OnClose ( )

Reimplemented in MsgBox.

Definition at line 138 of file window.cpp.

References Debug0Param, and Control::Delete().

Referenced by MsgBox::OnClose(), and Calculator::OnOk().

int Window::OnLMRButton | ( | StateMouse * | ,
 |  | int |
 | ) |

Definition at line 145 of file window.cpp.

References DebugMouse2, and Title::GotFocus().

Referenced by Window().

int Window::OnMouseWheel | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

Reimplemented from Control.

int Window::OnOver | ( | StateMouse * | mouse,
 |  | int | face
 | ) |

void Window::ToString ( MyString & str )

Pour le debugage.

Reimplemented from Control.

Definition at line 152 of file window.cpp.

References MyString::AddFormat().

Member Data Documentation

Container Window::client

Definition at line 76 of file window.h.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Create(), Tutorial::LayoutDemo::LayoutDemo(), Tutorial::BaseDemo::OnWinMove(), Tutorial::BaseDemo::OnWinOut(), and Tutorial::WindowDemo::WindowDemo().

Title Window::title

Definition at line 75 of file window.h.

Referenced by Tutorial::ApplicationDemo::ApplicationDemo(), Tutorial::BaseDemo::BaseDemo(), Demo::Demo(), Tutorial::Demo::Demo(), Tutorial::Demo::Ending(), Tutorial::LayoutDemo::LayoutDemo(), Tutorial::ApplicationDemo::OnEnd(), Tutorial::WindowDemo::OnEnd(), Tutorial::BaseDemo::OnEnd(), Tutorial::Tutorial(), Tutorial::WindowDemo::WindowDemo(), and Tutorial::~Tutorial().

DockPos Window::titleDock

Ou est placé le titre: haut,bas, gauche, droit ?

Definition at line 74 of file window.h.

Referenced by Create(), Window(), and Tutorial::WindowDemo::WindowDemo().

The documentation for this class was generated from the following files:
  • window.h
  • window.cpp
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Window Member List

This is the complete list of members for Window, including all inherited members.
canResize | ResizingAndRotateControl |
canRotate | ResizingAndRotateControl |
ChangeDirection() | Control |
client | Window |
Control() | Control |
controls | Control | [static]
Create() | Window | [inline, virtual]
Create(double depth) | Window |
Delete() | Control |
DeleteFaces() | Control |
DeleteSub() | Control |
faceNode | Control |
FaceOverIn(int oldFace) | Control |
FaceOverOut(int newFace) | Control |
Find(int _idControl) | Control | [static]
GetCorners(int face, Point3D< double > *points) | Control |
GetLocalPos(int face, Point2D< double > absolutePos) | Control |
id | Control |
inertia | Control | [static]
isEnable | Control |
isView | Control |
leftDown | Control | [static]
midDown | Control | [static]
Move(double x, double y, double z) | Control |
MoveTo(double x, double y, double z) | Control |
name | Control |
nextId | Control | [static]
OnClick(StateMouse *mouse, int face) | Control |
OnClose() | Window |
onControl | Control |
OnHover(StateMouse *mouse, int deltaX, int deltaY, int numFace) | ResizingAndRotateControl |
OnKeyDouble(StateKey *key, int face) | Control |
OnKeyDown(StateKey *key, int face) | Control |
OnKeyUp(StateKey *key, int face) | Control |
OnLButtonDouble(StateMouse *mouse, int face) | Control |
OnLButtonDown(StateMouse *mouse, int face) | Control |
OnLButtonUp(StateMouse *mouse, int face) | Control |
OnLMRButton(StateMouse *, int) | Window |
OnMButtonDouble(StateMouse *mouse, int face) | Control |
OnMButtonDown(StateMouse *mouse, int face) | Control |
OnMButtonUp(StateMouse *mouse, int face) | Control |
OnMouseMove(StateMouse *mouse, int face) | Control |
OnMouseWheel(StateMouse *mouse, int face) | Window |
OnOver(StateMouse *mouse, int face) | Window |
OnRButtonDouble(StateMouse *mouse, int face) | Control |
OnRButtonDown(StateMouse *mouse, int face) | Control |
OnRButtonUp(StateMouse *mouse, int face) | Control |
operator=(Control &src) | Control |
OverIn(Control *oldControl, int face) | Control |
OverOut(Control *newControl, int face) | Control |
parent | Control |
parentFace | Control |
ReSize(double dx, double dy) | Control |
ResizingAndRotateControl() | ResizingAndRotateControl |
rightDown | Control | [static]
Rotate(double x, double y, double z) | Control |
RotateQuaternion(double x, double y, double z) | Control |
RotateTo(double x, double y, double z) | Control |
ScreenMove(double x, double y, double z) | Control |
ScreenMoveTo(double x, double y, double z) | Control |
SetAlphaBlending(float alpha) | Control |
SetBlending(BOOL enable) | Control |
SetLines(Color color, float size) | Control |
SetParent() | Control |
Size(double x, double y) | Control |
sleepedDelay | Control |
timerAutoWheel | Control | [static]
timerSleeped | Control | [static]
title | Window |
titleDock | Window |
ToString(MyString &str) | Window |
Window() | Window |
XDockCenter(double sizeX) | Control |
XDockCenter(double margeLeft, double margeRight) | Control |
XDockLeft(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
XDockRight(double margeX, double sizeX, BOOL isCenter=FALSE) | Control |
YDockBottom(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
YDockCenter(double sizeY) | Control |
YDockCenter(double margeTop, double margeBottom) | Control |
YDockTop(double margeY, double sizeY, BOOL isCenter=FALSE) | Control |
~Control() | Control |
~ResizingAndRotateControl() | ResizingAndRotateControl |
~Window() | Window |
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Hierarchical Index

3d Controls Class Hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
  • Angles
  • Array< T >
  • AsMaterial
  • BasicText3D
    • Text3D
  • Box3D
  • CMsgBox
  • CMyMenu
  • Color
  • Control
    • Button
    • Container
    • Dock
    • LineDock
    • MasterContainer
    • ResizingAndRotateControl
      • Window
        • Calculator
        • MsgBox
        • TaskWindow
        • Tutorial
    • Slider
    • TextBox
    • Tip
    • Title
    • TrackButton
    • TreeView
      • TreeDirectory
    • Univers
  • ControlEngine
  • Coordonate< T >
  • CubeDock
  • Cursor
  • Curve
  • Demo
  • Effect
    • EffectApparition
  • ElemStack
  • ElemTaskWindow
  • Enabling< T >
  • EventButton
  • EventContainer
  • EventControl
  • EventFaceOver
  • EventInertia
  • EventKey
  • EventMouse
  • EventMouseButton
  • EventOver
  • EventSlider
  • EventTextBox
  • EventTitle
  • EventTrackButton
  • EventTreeView
  • Face
  • Fog
  • Inertia
  • Layout< T >
  • Light
  • LinearEqu2D< T >
  • Material
  • MyDebug
  • MyException
    • MyExceptionMemory
  • MyList< T >
    • MyStack< T >
  • MyListItem< T >
  • MyListIterator< T >
  • MyRegistry
  • MyString
  • MyTree< T >
  • MyTreeNode< T >
  • Object
    • BaseObj< T, V >
  • Object3D
  • Opperation
  • ParamValueEditor
  • ParsingElem
    • ParsingLine
    • ParsingWord
  • Picking
  • Point1D< T >
  • Point2D< T >
  • Point3D< T >
  • PolygonMode
  • Primitive
  • Recorder
  • Region
  • RGBA
  • Screen
  • StateKey
  • StateMouse
  • TextTexture
  • Texture
  • Textures
  • Timer
  • TreeViewItem
  • Tutorial::Demo
    • Tutorial::ApplicationDemo
    • Tutorial::BaseDemo
    • Tutorial::FaceDemo
    • Tutorial::LayoutDemo
    • Tutorial::UniversDemo
    • Tutorial::WindowDemo
  • ValueEditor< T >
  • ValueEditors
  • ValueNamed< T >
Generated on Fri Aug 20 19:20:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Compound Member Index

Here is a list of all class members with links to the classes they belong to:

- a -

  • a : Color, RGBA
  • ad : Tutorial
  • Add() : Point3D< T >, TaskWindow, MyTree< T >, MyString, Inertia, Angles
  • AddAfter() : MyListIterator< T >
  • AddBefore() : MyListIterator< T >
  • AddBox() : Primitive
  • AddElem() : Region
  • AddFace() : Primitive
  • AddFirst() : MyListIterator< T >
  • AddFormat() : MyString
  • AddLast() : MyListIterator< T >
  • AddNewAfter() : MyListIterator< T >
  • AddNewBefore() : MyListIterator< T >
  • AddNewFirst() : MyListIterator< T >
  • AddNewLast() : MyListIterator< T >
  • AddRepetitiveFormat() : MyString
  • AddSpecial() : ValueEditor< T >
  • AddText() : Texture
  • AddTitle() : CMyMenu
  • after : MyListItem< T >
  • align : ParsingLine
  • ambient : Material, AsMaterial
  • AnalyseGram() : Text3D
  • AnalyseLex() : Text3D
  • angle : Face
  • Angles() : Angles
  • antialias : Face
  • antiAliasingQuality : ControlEngine
  • ApplicationDemo() : Tutorial::ApplicationDemo
  • ApplyRealClipping() : Text3D
  • ApplyScaleView() : ControlEngine
  • ApplySize() : Screen
  • ApplyStyle() : Screen
  • ApplyStyleEx() : Screen
  • ApplyStyles() : Screen
  • ApplyType() : Cursor
  • ApplyTypes() : Cursor
  • Array() : Array< T >
  • arrow : Textures
  • arrowOblique : Textures
  • As() : Material
  • askSubData : TreeViewItem
  • aspect : ControlEngine
  • attenuationCst : Light
  • attenuationLin : Light
  • attenuationQuad : Light

- b -

  • b : Color, RGBA
  • back : PolygonMode
  • backBottom : CubeDock
  • backBottomLeft : CubeDock
  • backBottomRight : CubeDock
  • background : TextTexture, Textures
  • backLeft : CubeDock
  • backRight : CubeDock
  • backTop : CubeDock
  • backTopLeft : CubeDock
  • backTopRight : CubeDock
  • BaseDemo() : Tutorial::BaseDemo
  • BaseObj() : BaseObj< T, V >
  • baseValue : Layout< T >
  • BasicText3D() : BasicText3D
  • bDrawEdge : CMyMenu
  • before : MyListItem< T >
  • Begin() : Texture
  • BeginContainer() : Primitive
  • BeginEnumKey() : MyRegistry
  • BeginEnumValue() : MyRegistry
  • BeginRecord() : Recorder
  • beginTime : Timer, Effect
  • Bind() : MyListIterator< T >, Effect
  • BindOpenGL() : Screen
  • BindTexture() : TextTexture
  • blending : Face
  • body : Slider
  • border : Texture
  • Box3D() : Box3D
  • boxLights : ControlEngine
  • btnApplicationDemo : Tutorial
  • btnBaseDemo : Tutorial
  • btnCancel : MsgBox
  • btnClose : Title
  • btnFaceDemo : Tutorial
  • btnIcon : Title
  • btnLayoutDemo : Tutorial
  • btnMax : Title
  • btnMin : Title
  • btnMinus : Slider
  • btnOk : MsgBox
  • btnPlus : Slider
  • btnReset : Tutorial::LayoutDemo
  • btnResetAll : Tutorial::LayoutDemo
  • btnReturn : Tutorial
  • btnSet : Tutorial::LayoutDemo
  • btnSetAll : Tutorial::LayoutDemo
  • btnToogle : Tutorial::LayoutDemo
  • btnToogleAll : Tutorial::LayoutDemo
  • btnTree : Tutorial::LayoutDemo
  • btnUniversDemo : Tutorial
  • btnWindowDemo : Tutorial
  • Button() : Button
  • button : ElemTaskWindow, Tutorial::BaseDemo, Tutorial::UniversDemo
  • buttons : Tutorial::LayoutDemo

- c -

  • calc : Tutorial::ApplicationDemo
  • Calculator() : Calculator
  • Call() : Timer
  • callBackAlloc : Object
  • canResize : ResizingAndRotateControl
  • canRotate : ResizingAndRotateControl
  • caption : Title, Button
  • center : Face, Curve
  • CenterIt() : Box3D
  • change : EventTextBox
  • ChangeDirection() : Control
  • ChangeStyle() : Screen
  • ChangeStyleEx() : Screen
  • checked : EventButton
  • childRecorder : Face
  • childs : MyTreeNode< T >
  • click : EventKey, EventMouseButton, EventButton
  • client : Window
  • clLeft : CMyMenu
  • Clone() : MyTree< T >
  • close : EventTitle, Textures
  • clRight : CMyMenu
  • clText : CMyMenu
  • CMsgBox() : CMsgBox
  • CMyMenu() : CMyMenu
  • code : StateKey
  • color : TextTexture, Fog
  • Color() : Color
  • Compute() : Region, Layout< T >, Opperation
  • computeCenter : Face
  • ComputeLayout() : Text3D, Primitive, Face
  • ComputeLineSize() : Text3D
  • computeMinMax : Region
  • computePosition : Face
  • ComputeRealZ() : ControlEngine
  • computeSize : Face
  • ComputeSize() : Text3D
  • Config() : TreeDirectory, Texture, CubeDock
  • ConfigCenter() : Face
  • ConfigDynamicLayout() : Face
  • ConfigFacesPlus() : TreeView
  • ConfigPixelStore() : Texture
  • ConfigSize() : Texture
  • ConfigSlide() : Tutorial::UniversDemo
  • ConfigStaticLayout() : Face
  • ConfigTextFace() : Tutorial::LayoutDemo
  • ConfigTreeButton() : Tutorial::LayoutDemo
  • constValue : Layout< T >
  • Container() : Container
  • container : Title
  • contentSub : TreeViewItem
  • Control() : Control
  • control : Tutorial::UniversDemo
  • controlBasic : Tutorial::FaceDemo
  • controlContainer : Picking
  • controlCurving : Tutorial::FaceDemo
  • ControlEngine() : ControlEngine
  • controlHover : Picking
  • controls : Control
  • controlText : Tutorial::FaceDemo
  • coor : Box3D
  • Coordonate() : Coordonate< T >
  • CopyTo() : MyString
  • countDirection : Tutorial::UniversDemo
  • cpuLimit : ControlEngine
  • Create() : Window, Univers, TreeView, TrackButton, Title, Tip, TextBox, TaskWindow, Slider, Screen, MyRegistry, MsgBox, MasterContainer, Cursor, Control, Container, Calculator, Button, Tutorial
  • CreatePopupMenuTitleFont() : CMyMenu
  • CreateTreeButton() : Tutorial::LayoutDemo
  • CubeDock() : CubeDock
  • curFace : Cursor
  • Current() : Slider
  • cursor : Slider, ControlEngine
  • Cursor() : Cursor
  • cursorArrow : Textures
  • cursorMoving : Textures
  • cursorPush : Textures
  • cursorText : Textures
  • cursorWait : Textures
  • curType : Cursor
  • curve : Face
  • Curve() : Curve
  • cutoff : Light

- d -

  • data : TreeView
  • db : Tutorial
  • degradeeFocus : Textures
  • degradeeUnFocus : Textures
  • Delete() : Texture, Recorder, MyString, MyListItem< T >, Control, Array< T >
  • DeleteFaces() : Control
  • DeleteKey() : MyRegistry
  • DeleteSub() : Control
  • DeleteValue() : MyRegistry
  • delta : Box3D
  • deltaX : ParsingElem
  • deltaY : ParsingLine
  • Demo() : Demo, Tutorial::Demo
  • density : Fog
  • depth : BasicText3D, ControlEngine
  • depth_cur : Button
  • depth_max : Button
  • depth_min : Button
  • description : ValueNamed< T >
  • Destroy() : Screen
  • DestroyDemos() : Tutorial
  • diffuse : Material, AsMaterial
  • direction : Light
  • dllfunc_GradientFill : CMyMenu
  • Dock() : Dock
  • doubleClick : EventKey, EventMouseButton
  • down : EventKey, EventMouseButton
  • Draw() : TreeView, Text3D, BasicText3D, Primitive, Face, Curve, Cursor, ControlEngine, Box3D
  • Draw2DText() : ControlEngine
  • DrawArrow() : Object3D, Cursor
  • DrawBackGround() : ControlEngine
  • DrawCursor() : ControlEngine
  • DrawCursors() : ControlEngine
  • DrawFPS() : ControlEngine
  • DrawItem() : CMyMenu
  • DrawLight() : ControlEngine
  • DrawOrigineRepere() : ControlEngine
  • DrawPicking() : Text3D, BasicText3D
  • DrawRepere() : Object3D, Cursor
  • DrawScene() : ControlEngine
  • DrawText() : Object3D, Cursor
  • DrawVector() : Object3D, Cursor
  • DrawVectorMinMax() : Object3D, Cursor
  • Duplicate() : BaseObj< T, V >
  • dxNormal : Screen
  • dxWin : ControlEngine
  • dyNormal : Screen
  • dyWin : ControlEngine

- e -

  • Effect() : Effect
  • effect : Tutorial
  • EffectApparition() : EffectApparition
  • elem : Enabling< T >, MyTreeNode< T >, BaseObj< T, V >, MyListItem< T >, ElemStack
  • elemNull : MyList< T >
  • Elems() : MyTreeNode< T >
  • emission : Material
  • enable : Region, EventInertia
  • Enable() : Light, Fog
  • enableAntiAliasing : ControlEngine
  • enableBackGround : ControlEngine
  • enableCursor : ControlEngine
  • enableDelta : ControlEngine
  • enableFPS : ControlEngine
  • enableFullScreen : Screen
  • enableInertia : ControlEngine
  • enableLightView : ControlEngine
  • enablePicking : ControlEngine
  • enableRepere : ControlEngine
  • enableTitle : Screen
  • enableViewInertia : ControlEngine
  • Enabling() : Enabling< T >
  • end : Fog
  • End() : Texture
  • EndContainer() : Primitive
  • EndFont() : ControlEngine
  • Ending() : Tutorial::Demo
  • EndRecord() : Recorder
  • EnterBinNumber() : MyString
  • EnterHexaNumber() : MyString
  • envColor : Texture
  • envMode : Texture
  • EventInertia() : EventInertia
  • eventInertia : ControlEngine
  • ExitQuestion() : Univers
  • exponent : Light

- f -

  • Face() : Face
  • faceContainer : Picking
  • FaceDemo() : Tutorial::FaceDemo
  • faceHover : Picking
  • faceNode : Effect, Control
  • faceOver : EventControl
  • FaceOverIn() : Control
  • FaceOverOut() : Control
  • faceText : TextTexture
  • fd : Tutorial
  • Find() : Texture, Primitive, Timer, Control
  • FindContainer() : Picking
  • FindLetter() : MyString
  • FindOnData() : TreeView
  • FindOnParent() : MyTreeNode< T >
  • FindServer() : MyDebug
  • first : MyList< T >
  • flag_edge : CMyMenu
  • focused : Title
  • fog : Face, ControlEngine
  • Fog() : Fog
  • font : BasicText3D
  • fontBitmap : ControlEngine
  • fontExtrude : ControlEngine
  • fontOutline : ControlEngine
  • fontPixmap : ControlEngine
  • fontPolygon : ControlEngine
  • fontTexture : ControlEngine
  • Format() : MyString
  • FormatToLower() : MyString
  • FormatToNoCtrl() : MyString
  • FormatToUpper() : MyString
  • frecTimer : Timer
  • frequency : Timer
  • FromBitmap() : Texture
  • FromFile() : Texture
  • FromNull() : Texture
  • FromText() : Texture
  • front : PolygonMode
  • frontBottom : CubeDock
  • frontBottomLeft : CubeDock
  • frontBottomRight : CubeDock
  • frontLeft : CubeDock
  • FrontPeek() : MyStack< T >
  • FrontPop() : MyStack< T >
  • FrontPush() : MyStack< T >
  • frontRight : CubeDock
  • frontTop : CubeDock
  • frontTopLeft : CubeDock
  • frontTopRight : CubeDock

- g -

  • g : Color, RGBA
  • Get_Value() : ValueEditor< T >
  • GetAscender() : BasicText3D
  • GetBox() : BasicText3D
  • GetChild() : MyTree< T >
  • GetColor() : CMyMenu
  • GetCopy() : ValueEditor< T >, ParamValueEditor
  • GetCorners() : Primitive, Face, Control
  • GetCrossPtFromHorizontal() : LinearEqu2D< T >
  • GetCrossPtFromLine() : LinearEqu2D< T >
  • GetCrossPtFromVertical() : LinearEqu2D< T >
  • GetCurrent() : MyTree< T >, MyListIterator< T >
  • GetDelta() : StateMouse
  • GetDeltaTime() : Timer
  • GetDescender() : BasicText3D
  • GetEdge() : CMyMenu
  • GetElem() : MyListIterator< T >
  • GetElemPtr() : MyListIterator< T >
  • GetEuler() : Angles
  • GetGradientColor() : CMyMenu
  • GetHeight() : BasicText3D
  • GetHotSpot() : Cursor
  • GetIndex() : MyListIterator< T >
  • GetIndexMode() : Fog
  • GetKeyName() : MyRegistry
  • GetLastError() : MyRegistry
  • GetLocalPos() : Primitive, Control
  • GetMoyValue() : Inertia
  • GetNbButtonPush() : StateMouse
  • GetNbElem() : MyList< T >
  • GetNbLinks() : EventControl, EventFaceOver, EventOver, EventMouse, EventKey, EventMouseButton
  • GetParent() : MyTree< T >
  • GetPixel() : Texture
  • GetPositionFromLeft() : MyString
  • GetPositionFromRight() : MyString
  • GetPush() : Button
  • GetRelativePtOn2Lines() : Point2D< T >
  • GetRelativePtOnQuadrilatere() : Point2D< T >
  • GetRoot() : MyTree< T >
  • GetSize() : MyString
  • GetState() : StateKey
  • GetStringMode() : Fog
  • GetText() : Text3D, Opperation
  • GetTextColor() : CMyMenu
  • GetTreePath() : TreeView
  • GetValue() : MyString, MyRegistry
  • GetValueExpand() : MyRegistry
  • GetValueMulti() : MyRegistry
  • GetValueSize() : MyRegistry
  • GetValueType() : MyRegistry
  • GetWidth() : BasicText3D
  • GetXCoord() : Texture
  • GetYCoord() : Texture
  • GiveFPS() : ControlEngine
  • glRasterPos() : Point3D< T >
  • glRotated() : Point3D< T >
  • glScale() : Point3D< T >
  • glTranslated() : Point3D< T >
  • GoAfter() : MyListIterator< T >
  • GoBefore() : MyListIterator< T >
  • GoFirst() : MyListIterator< T >
  • GoIndex() : MyListIterator< T >
  • GoLast() : MyListIterator< T >
  • GotFocus() : Title
  • gotFocus : EventTitle
  • GoTo() : Primitive, MyTree< T >, MyListIterator< T >
  • GoToChild() : MyTree< T >
  • GoToParent() : Primitive, MyTree< T >
  • GradientFill() : CMyMenu
  • grip : Textures

- h -

  • hDC : Screen, Object3D
  • hGLRC : Screen
  • hInst : ControlEngine
  • hinst_msimg32 : CMyMenu
  • hItem : ValueEditor< T >
  • HomePosition() : Univers
  • hRgnBase : Region
  • hWnd : Screen, Timer
  • hWndParent : ParamValueEditor
  • hWndServer : MyDebug

- i -

  • i : MyList< T >
  • iconBase : Textures
  • id : Texture, Light, Timer, Control
  • idControl : TreeViewItem, Face
  • idFace : Face
  • in : EventFaceOver, EventOver
  • independant : ParamValueEditor
  • Inertia() : Inertia
  • inertia : Control
  • info : ValueEditor< T >, Tutorial
  • Init() : MyException, Timer, EventInertia, Array< T >
  • InitFont() : ControlEngine
  • InitLights() : ControlEngine
  • InitMonitor() : ControlEngine
  • InitTextures() : ControlEngine
  • InitViewPort() : ControlEngine
  • insideList : Timer
  • InterpretedText() : ValueEditor< T >
  • IsActive() : Curve
  • IsAutoCreate() : MyRegistry
  • IsBeginWith() : MyString
  • isCollaps : TreeViewItem
  • IsDynamic() : Layout< T >
  • IsEmpty() : MyString
  • isEnable : Enabling< T >, Light, Fog, Coordonate< T >, Control, Color
  • IsEnabled() : Light
  • IsEqual() : Point3D< T >
  • isFadeIn : Effect
  • IsHorizontal() : LinearEqu2D< T >
  • IsLighting() : Light
  • isMenuUsing : Univers
  • isMoving : Picking
  • IsNotNull() : Point3D< T >
  • IsOnFirst() : MyListIterator< T >
  • IsOnLast() : MyListIterator< T >
  • IsOnLine() : Point2D< T >
  • isOnMenu : Univers
  • IsOnQuadrilatere() : Point2D< T >
  • IsOnRectangle() : Point2D< T >
  • IsOnSegment() : Point2D< T >
  • IsOnTriangle() : Point3D< T >, Point2D< T >
  • IsPoint() : LinearEqu2D< T >
  • isPush : StateKey
  • isPushed : Button
  • isReadOnly : TextBox
  • isRuning : Timer
  • IsRuning() : Timer
  • isRunning : Effect
  • IsVertical() : LinearEqu2D< T >
  • isView : Control
  • IsVisibleText() : MyString
  • isWord : ParsingElem

- k -

  • key : ControlEngine, EventControl

- l -

  • last : MyList< T >
  • lastControlContainer : Picking
  • lastControlHover : Picking
  • lastFaceContainer : Picking
  • lastFaceHover : Picking
  • lastSelected : Tutorial::LayoutDemo
  • Layout() : Layout< T >
  • LayoutDemo() : Tutorial::LayoutDemo
  • ld : Tutorial
  • left : EventMouse
  • leftBtn : StateMouse
  • leftDown : Control
  • leftFace : Cursor
  • leftType : Cursor
  • letter : StateKey
  • letterWrap : Text3D
  • Light() : Light
  • lights : ControlEngine
  • lightsMove : ControlEngine
  • line : Face
  • LinearEqu2D() : LinearEqu2D< T >
  • LinearInterpolation() : Point1D< T >
  • LineDock() : LineDock
  • lineMaterial : Face
  • lineWrap : Text3D
  • list : ValueEditors, Texture, Timer
  • Load() : MyList< T >
  • Loading() : TreeDirectory
  • Loop() : ControlEngine
  • LostFocus() : Title
  • lostFocus : EventTitle

- m -

  • m_bCanDoGradientFill : CMyMenu
  • m_hFont : CMyMenu
  • m_hMenu : CMyMenu
  • m_message : CMsgBox
  • m_style : CMsgBox
  • m_title : CMyMenu, CMsgBox
  • magFilter : Texture
  • MAJ() : ValueEditor< T >
  • MAJ_Slider() : ValueEditor< T >
  • MAJ_Specials() : ValueEditor< T >
  • MAJ_TreeItem() : ValueEditor< T >
  • MAJ_Value() : ValueEditor< T >
  • MAJ_ValueMax() : ValueEditor< T >
  • MAJ_ValueMids() : ValueEditor< T >
  • MAJ_ValueMin() : ValueEditor< T >
  • MajLights() : ControlEngine
  • MajTexture() : TextTexture
  • MakeDebugControlStruct() : ValueEditors
  • MakeDebugFaceStruct() : ValueEditors
  • MakeDebugStruct() : ValueEditors
  • MakeElemControlStruct() : ValueEditors
  • MakeElemFaceStruct() : ValueEditors
  • MakeFontsStruct() : ValueEditors
  • MakeLightsStruct() : ValueEditors
  • MakeRenderStruct() : ValueEditors
  • MakeTexturesStruct() : ValueEditors
  • masterContainer : ControlEngine
  • MasterContainer() : MasterContainer
  • material : BasicText3D, Light, Face, Box3D
  • Material() : Material
  • materialCurrent : Button
  • materialOnDown : Button
  • materialOnUp : Button
  • Max() : Slider
  • max : Textures
  • maxAlternate : Textures
  • maximize : EventTitle
  • maxValue : ValueEditor< T >
  • MeasureItem() : CMyMenu
  • MessageBox() : CMsgBox, MyException
  • mid : EventMouse
  • midBtn : StateMouse
  • midDown : Control
  • midFace : Cursor
  • Mids() : MyString
  • midType : Cursor
  • min : Textures
  • Min() : Slider
  • minFilter : Texture
  • minimize : EventTitle
  • minus : Textures
  • minValue : ValueEditor< T >
  • mode : Fog
  • ModeAllButtons() : Button
  • modelMatrix : ControlEngine
  • ModePushLike() : Button
  • monitor : ControlEngine
  • More() : MyListIterator< T >
  • mouse : Picking, EventControl
  • Move() : Face, Control
  • move : EventMouse
  • MoveFirst() : MyListIterator< T >
  • MoveLast() : MyListIterator< T >
  • MoveTo() : MyTreeNode< T >, Face, Control
  • MoveToFirstChild() : MyTreeNode< T >
  • MoveToLastChild() : MyTreeNode< T >
  • moving : EventSlider
  • MovingInside() : Face
  • MsgBox() : MsgBox
  • msgBox : Tutorial::BaseDemo
  • MsgInfoType() : Screen
  • MyDebug() : MyDebug
  • MyException() : MyException
  • MyExceptionMemory() : MyExceptionMemory
  • MyList() : MyList< T >
  • MyListItem() : MyListItem< T >
  • MyListIterator() : MyListIterator< T >
  • MyRegistry() : MyRegistry
  • MyStack() : MyStack< T >
  • MyString() : MyString
  • MyTree() : MyTree< T >
  • MyTreeNode() : MyTreeNode< T >
  • MyTreeNodeItem : MyTreeNode< T >

- n -

  • name : Texture, AsMaterial, Face, Control
  • nbChar : ParsingLine
  • nbCut : Curve
  • nbElem : MyList< T >
  • nbOr : Region
  • New() : MyListItem< T >, Array< T >
  • NextEnumKey() : MyRegistry
  • NextEnumValue() : MyRegistry
  • nextFreeId : Timer
  • nextId : Control
  • nodes : Tutorial::FaceDemo
  • noPicking : Face
  • NormalizeSens() : Region
  • number : Opperation

- o -

  • object : ParamValueEditor
  • Object() : Object
  • oldMouse : Univers, Title, Picking
  • oldTree : Effect
  • OnAdd() : Calculator
  • OnApplicationDemo() : Tutorial
  • OnApplicationDemoStart() : Tutorial
  • OnAutoMinus() : Slider
  • OnAutoPlus() : Slider
  • OnBaseDemo() : Tutorial
  • OnBaseDemoStart() : Tutorial
  • OnBottom() : Tutorial::UniversDemo
  • onButton : Button
  • OnButtonClick() : TrackButton
  • OnButtonOk() : MsgBox
  • OnButtonsLMouseUp() : Slider
  • OnButtonsOverOut() : Slider
  • OnClear() : Calculator
  • OnClick() : TreeView, Title, Control
  • OnClickBottom() : TrackButton
  • OnClickDirectory() : TreeDirectory
  • OnClickLeft() : TrackButton
  • OnClickLeftBottom() : TrackButton
  • OnClickLeftTop() : TrackButton
  • OnClickRight() : TrackButton
  • OnClickRightBottom() : TrackButton
  • OnClickRightTop() : TrackButton
  • OnClickTop() : TrackButton
  • OnClose() : Window, Title, MsgBox
  • onContainer : Container
  • onControl : Control
  • OnDiv() : Calculator
  • OnDot() : Calculator
  • OnEnd() : Tutorial, Tutorial::ApplicationDemo, Tutorial::WindowDemo, Tutorial::LayoutDemo, Tutorial::BaseDemo, Tutorial::UniversDemo, Tutorial::FaceDemo
  • onEnding : Effect
  • OnEqual() : Calculator
  • OnExit() : Univers
  • OnFaceDemo() : Tutorial
  • OnFaceDemoStart() : Tutorial
  • OnHover() : ResizingAndRotateControl
  • OnInertia() : EventInertia
  • OnKey() : Calculator
  • OnKeyDouble() : Control
  • OnKeyDown() : Univers, Title, Control
  • OnKeyUp() : Univers, Title, Control
  • OnLayoutDemo() : Tutorial
  • OnLayoutDemoStart() : Tutorial
  • OnLButtonDouble() : Control
  • OnLButtonDown() : Univers, Title, TextBox, Control
  • OnLButtonUp() : Univers, TextBox, Picking, Control
  • OnLeft() : Tutorial::UniversDemo
  • OnLMButtonUp() : Title
  • OnLMouseDown() : Slider
  • OnLMRButton() : Window
  • OnMax() : Title
  • OnMaxOrOriginal() : Title
  • OnMButtonDouble() : Control
  • OnMButtonDown() : Univers, Title, Control
  • OnMButtonUp() : Univers, Picking, Control
  • OnMin() : Title
  • OnMinusLMouseDown() : Slider
  • OnMouseMove() : Univers, TrackButton, Title, Slider, Picking, Control
  • OnMouseWheel() : Window, Univers, Title, Picking, Control
  • OnMult() : Calculator
  • OnNextFrame() : TreeView
  • OnNum() : Calculator
  • OnNum0() : Calculator
  • OnNum1() : Calculator
  • OnNum2() : Calculator
  • OnNum3() : Calculator
  • OnNum4() : Calculator
  • OnNum5() : Calculator
  • OnNum6() : Calculator
  • OnNum7() : Calculator
  • OnNum8() : Calculator
  • OnNum9() : Calculator
  • OnOk() : Calculator
  • OnOriginal() : Title
  • OnOver() : Window
  • OnOverIn() : Univers, Title, TextBox, Button
  • OnOverOut() : Univers, TrackButton, Title, Button
  • OnPlusLMouseDown() : Slider
  • OnPushDown() : Button
  • OnPushUp() : Button
  • OnRButtonDouble() : Control
  • OnRButtonDown() : Control
  • OnRButtonUp() : Picking, Control
  • OnRefresh() : Univers, Title, ControlEngine
  • OnReset() : Tutorial::LayoutDemo
  • OnResetAll() : Tutorial::LayoutDemo
  • OnRight() : Tutorial::UniversDemo
  • OnSelectBkg() : Tutorial::ApplicationDemo
  • OnSelectExplorer() : Tutorial::ApplicationDemo
  • OnSet() : Tutorial::LayoutDemo
  • OnSetAll() : Tutorial::LayoutDemo
  • onSlidder : Slider
  • OnSub() : Calculator
  • onTextBox : TextBox
  • OnTimer() : Demo, Tutorial::UniversDemo, Tutorial::FaceDemo
  • onTimer : Timer
  • onTitle : Title
  • OnToogle() : Tutorial::LayoutDemo
  • OnToogleAll() : Tutorial::LayoutDemo
  • OnTop() : Tutorial::UniversDemo
  • onTrackButton : TrackButton
  • OnTreeButtonClick() : Tutorial::LayoutDemo
  • onTreeView : TreeView
  • OnUniversDemo() : Tutorial
  • OnUniversDemoStart() : Tutorial
  • OnWindowDemo() : Tutorial
  • OnWindowDemoStart() : Tutorial
  • OnWinMove() : Tutorial::BaseDemo
  • OnWinOut() : Tutorial::BaseDemo
  • OnXSliderMove() : Tutorial::BaseDemo
  • OnYSliderMove() : Tutorial::BaseDemo
  • op : Opperation
  • opacity : Material
  • Open() : MyRegistry
  • operator *() : Point2D< T >, Point1D< T >
  • operator *=() : Point2D< T >
  • operator char *() : MyString
  • operator float *() : Color
  • operator GLuint() : Texture
  • operator T() : Point1D< T >
  • operator T *() : Coordonate< T >
  • operator!=() : Point2D< T >, MyString, Coordonate< T >
  • operator()() : MyListIterator< T >
  • operator+ : Point2D< T >, Point1D< T >, MyString
  • operator++() : MyListIterator< T >
  • operator+=() : Point3D< T >, Point2D< T >, MyTree< T >, MyString, MyList< T >, MyListIterator< T >
  • operator-() : Point2D< T >, Point1D< T >
  • operator--() : MyListIterator< T >
  • operator/() : Point2D< T >, Point1D< T >
  • operator/=() : Point3D< T >, Point2D< T >
  • operator<< : MyString
  • operator=() : Enabling< T >, ValueEditor< T >, ValueNamed< T >, ParamValueEditor, Point3D< T >, Point2D< T >, Point1D< T >, Title, Tip, Texture, TextTexture, TextBox, Text3D, BasicText3D, ParsingLine, ParsingWord, ParsingElem, Recorder, Picking, MyTree< T >, MyTreeNode< T >, MyString, MyRegistry, BaseObj< T, V >, Object, CMyMenu, MyList< T >, MyListIterator< T >, Material, Light, Layout< T >, StateKey, StateMouse, EventInertia, ElemStack, Face, Curve, Coordonate< T >, Control, Color, Opperation, Button, Box3D, Array< T >, Angles
  • operator==() : Point3D< T >, Point2D< T >, Point1D< T >, MyString, Coordonate< T >
  • operator[]() : MyTreeNode< T >, MyString, MyListIterator< T >
  • Opperation() : Opperation
  • orientation : TrackButton
  • original : EventTitle
  • originalAngle : Title
  • originalSize : Title
  • out : EventFaceOver, EventOver
  • over : EventControl
  • OverIn() : Control
  • OverOut() : Control

- p -

  • param : Object
  • ParamValueEditor() : ParamValueEditor
  • parent : MyTreeNode< T >, CubeDock, Control, Tutorial::Demo
  • parentFace : Control
  • ParsingElem() : ParsingElem
  • ParsingLine() : ParsingLine
  • ParsingWord() : ParsingWord
  • pathBox : Tutorial::ApplicationDemo
  • Pause() : Timer
  • Peek() : Primitive, MyStack< T >, ControlEngine
  • percentValue : Layout< T >
  • Picking() : Picking
  • pickingCursor : ControlEngine
  • pickingInertia : ControlEngine
  • Play() : Recorder, Material
  • plus : Textures
  • Point1D() : Point1D< T >
  • Point2D() : Point2D< T >
  • Point3D() : Point3D< T >
  • points : Region
  • polygonMode : ControlEngine
  • PolygonMode() : PolygonMode
  • Pop() : Primitive, MyStack< T >, ControlEngine
  • pos : StateMouse
  • position : Light, Face
  • Power() : Point3D< T >, Point2D< T >
  • Primitive() : Primitive
  • primitive : ControlEngine
  • Proc() : ControlEngine
  • ProjectObjectToWindow() : ControlEngine
  • ProjectWindowToObject() : ControlEngine
  • projMatrix : ControlEngine
  • Push() : Primitive, MyStack< T >, ControlEngine
  • PushUp() : Button

- q -

  • QuaternionRotate() : Point3D< T >

- r -

  • r : Color, RGBA
  • ratioXY : BasicText3D, Face
  • ratioYX : BasicText3D
  • Record() : Material
  • recorder : Material
  • Recorder() : Recorder
  • recorderRepere : Cursor
  • rect : ParamValueEditor
  • Refresh() : TaskWindow, Slider, Curve, ControlEngine
  • RefreshText() : TextTexture
  • refreshTime : ControlEngine
  • region : Screen
  • Region() : Region
  • RegionAdd() : ControlEngine
  • RegionGet() : ControlEngine
  • RegionReset() : Screen
  • RegionUse() : Screen
  • ReOrderForBlending() : Primitive
  • Reset() : TreeDirectory, Region
  • ResetCurrent() : Picking
  • ResetLast() : Picking
  • ReSize() : Control
  • resize : EventTrackButton
  • ResizingAndRotateControl() : ResizingAndRotateControl
  • Restore() : TaskWindow
  • RestoreDelayAndRepeate() : StateKey
  • Resume() : Timer
  • Reverse() : MyString
  • right : EventMouse
  • rightBtn : StateMouse
  • rightDown : Control
  • rightFace : Cursor
  • rightType : Cursor
  • rotate : EventTrackButton
  • Rotate() : Cursor, Control, Angles
  • rotateFace : Textures
  • RotateQuaternion() : Control
  • RotateTo() : Control

- s -

  • Save() : MyList< T >
  • SaveDelayAndRepeate() : StateKey
  • scale : BasicText3D, Face
  • Screen() : Screen
  • screenConfig : ControlEngine
  • screenMain : ControlEngine
  • ScreenMove() : Control
  • ScreenMoveTo() : Control
  • ScreenShot() : ControlEngine
  • screenSystray : ControlEngine
  • select : EventTreeView
  • selfUnAlloc : MyListItem< T >
  • Send() : MyDebug
  • SendEvent() : MyDebug
  • SendLine() : MyDebug
  • Set() : Enabling< T >, ValueEditor< T >, ValueNamed< T >, LinearEqu2D< T >, Point3D< T >, Point2D< T >, LineDock, Layout< T >, Face, Dock, Curve, Coordonate< T >, Color, Array< T >, Angles
  • SetAlign() : Text3D
  • SetAlpha() : Material
  • SetAlphaBlending() : Control
  • SetAutoCreate() : MyRegistry
  • SetBlending() : Control
  • SetClipping() : Text3D
  • SetColor() : CMyMenu
  • SetCompareFunction() : MyList< T >
  • SetCoord() : Texture
  • SetCursor() : TextBox
  • setCursor : EventTextBox
  • SetDelayAndRepeate() : StateKey
  • SetDeltaWheel() : Picking
  • SetDS() : Material
  • SetEdge() : CMyMenu
  • SetFace() : Tutorial::UniversDemo
  • SetFull() : Material, Color
  • SetFullScreen() : Screen
  • SetGradientColor() : CMyMenu
  • SetIndexMode() : Fog
  • SetJustifyLimit() : Text3D
  • SetLighting() : Light
  • SetLines() : Control
  • SetMinMax() : Region
  • SetMode() : TrackButton
  • SetMousePos() : Picking
  • SetNull() : Material, Color
  • SetParent() : Control
  • SetPercent() : Layout< T >
  • SetPerspective() : ControlEngine
  • SetPixel() : Texture
  • SetPush() : Button
  • SetPushToogle() : Button
  • SetRatioXY() : BasicText3D
  • SetResizeAndRotate() : TrackButton
  • SetSize() : Screen
  • SetStyle() : Screen
  • SetText() : Title, Tip, TextTexture, TextBox, Text3D, Button
  • SetTextColor() : CMyMenu
  • SetTimerRefresh() : ControlEngine
  • SetTitle() : Screen
  • SetTopMost() : Screen
  • SetTutorialTipText() : Tutorial
  • Setup() : Text3D, BasicText3D, Slider, Screen, ControlEngine
  • SetUses() : Title
  • SetValue() : MyRegistry
  • SetValueBigEndian() : MyRegistry
  • SetValueExpand() : MyRegistry
  • SetValueLittleEndian() : MyRegistry
  • SetValueMulti() : MyRegistry
  • SetWrapping() : Text3D
  • SetXYFormat() : TextTexture
  • shiness : Material
  • shininess : AsMaterial
  • Show() : Screen
  • Size() : Control
  • size : Face, Array< T >
  • sleeped : EventControl
  • sleepedDelay : Control
  • slideDirection : Tutorial::UniversDemo
  • Slider() : Slider
  • source : Texture
  • specials : ValueEditor< T >
  • specular : Material, AsMaterial
  • SplitPath() : MyString
  • Start() : MyDebug, Timer, EventInertia, Inertia, EffectApparition, ControlEngine
  • start : Fog
  • state : Title
  • StateKey() : StateKey
  • StateMouse() : StateMouse
  • Step() : Slider
  • Stop() : Timer, EventInertia, EffectApparition, ControlEngine
  • StopAndUnBind() : Timer
  • SubStringBeforToken() : MyString
  • Supr() : MyListIterator< T >
  • SuprAll() : MyTree< T >, MyListIterator< T >
  • SuprChilds() : MyTreeNode< T >
  • SuprFirst() : MyListIterator< T >
  • SuprIndex() : MyListIterator< T >
  • SuprLast() : MyListIterator< T >
  • SuprNode() : MyTree< T >
  • SuprOnParent() : MyTreeNode< T >
  • SwapBuffers() : Screen
  • SwitchButton() : EventInertia

- t -

  • target : Texture
  • TaskWindow() : TaskWindow
  • taskWindow : ControlEngine
  • tdBkg : Tutorial::ApplicationDemo
  • tdExplorer : Tutorial::ApplicationDemo
  • tempNode : Title
  • Test() : Picking
  • TestKey() : MyRegistry
  • TestSubString() : MyString
  • TestValue() : MyRegistry
  • text : TreeViewItem, Tip, TextTexture, TextBox, ParsingWord, Face, Button, Tutorial::LayoutDemo
  • Text3D() : Text3D
  • textBox : Tutorial::BaseDemo
  • TextBox() : TextBox
  • TextTexture() : TextTexture
  • Texture() : Texture
  • texture : TextTexture, Face, ControlEngine
  • thisParent : Object
  • timeOut : Button
  • timer : Demo, Tutorial::UniversDemo, Tutorial::FaceDemo
  • Timer() : Timer
  • timerAutoButton : Slider
  • timerAutoWheel : Control
  • timerClick : EventMouseButton
  • timerPushDown : Button
  • timerRefresh : ControlEngine
  • timerSleeped : Control
  • timing : ElemStack
  • tip : Demo, Tutorial
  • Tip() : Tip
  • tipCaption : Title
  • tipFPS : ControlEngine
  • tipSlider : Tutorial::BaseDemo
  • Title() : Title
  • title : Window, ElemTaskWindow, Tutorial::BaseDemo
  • titleBasic : Tutorial::FaceDemo
  • titleCurving : Tutorial::FaceDemo
  • titleDock : Window
  • titleText : Tutorial::FaceDemo
  • ToDouble() : MyString
  • ToFloat() : MyString
  • Toggle() : Light
  • ToInteger() : MyString
  • ToNormalVector() : Point2D< T >
  • ToString() : Window, Enabling< T >, Univers, TrackButton, Title, Tip, TextBox, Slider, PolygonMode, MasterContainer, StateKey, StateMouse, Coordonate< T >, Control, Container, Color, Button
  • TrackButton() : TrackButton
  • Traduce() : PolygonMode
  • translate : EventTrackButton
  • trash : ControlEngine
  • tree : Primitive
  • TreeDirectory() : TreeDirectory
  • TreeView() : TreeView
  • TreeViewItem() : TreeViewItem
  • tropique : Textures
  • Tutorial() : Tutorial
  • txtHelp : MsgBox
  • txtInfo : MsgBox
  • txtTranche : TaskWindow, MsgBox
  • type : BasicText3D, Object
  • typeFace : Material

- u -

  • ud : Tutorial
  • Univers() : Univers
  • univers : ControlEngine
  • UniversDemo() : Tutorial::UniversDemo
  • up : EventKey, EventMouseButton
  • Update() : ValueEditors, Screen
  • UpdateLast() : Picking
  • Use() : Region, PolygonMode, Material, Light, Fog
  • useCancel : MsgBox
  • useClose : Title
  • useIcon : Title
  • useLighting : Light
  • useMax : Title
  • useMin : Title
  • usePicking : BasicText3D
  • useResizing : Texture
  • usingInertia : ControlEngine

- v -

  • value : ValueEditor< T >, ValueNamed< T >, Point1D< T >, Coordonate< T >, Color
  • ValueEditor() : ValueEditor< T >
  • ValueEditors() : ValueEditors
  • ValueNamed() : ValueNamed< T >
  • ValueNamedCour : ValueEditor< T >
  • values : Array< T >
  • valueText : ValueEditor< T >
  • variable : ValueEditor< T >
  • VE_double : ValueEditors
  • VE_float : ValueEditors
  • VE_int : ValueEditors
  • VerifyId() : Texture
  • view : Face
  • ViewDebug() : Primitive
  • viewPort : ControlEngine

- w -

  • w : Coordonate< T >
  • wd : Tutorial
  • wheel : EventMouse
  • wheelDelta : StateMouse
  • wheelVal : StateMouse
  • width : LineDock, Dock
  • winBackground : Tutorial::ApplicationDemo
  • window : Tutorial::LayoutDemo
  • Window() : Window
  • windowBottom : Tutorial::WindowDemo
  • WindowDemo() : Tutorial::WindowDemo
  • windowLeft : Tutorial::WindowDemo
  • windowRight : Tutorial::WindowDemo
  • windowTop : Tutorial::WindowDemo
  • winExplorer : Tutorial::ApplicationDemo
  • winInfo : Tutorial::BaseDemo
  • winSlider : Tutorial::BaseDemo
  • words : ParsingLine
  • wordWrap : Text3D
  • wrapS : Texture
  • wrapT : Texture

- x -

  • x : Point3D< T >, Point2D< T >, Dock, Coordonate< T >
  • xAlign : Text3D
  • xCenter : BasicText3D
  • xDeb : LineDock
  • XDockCenter() : Control
  • XDockLeft() : Control
  • XDockRight() : Control
  • xFin : LineDock
  • xFormat : TextTexture
  • xJustify : ParsingLine
  • xJustifyLimit : Text3D
  • xMax : Region
  • xMin : Region
  • xPercent : Tutorial::BaseDemo
  • xPos : ParsingLine
  • xScale : Texture
  • xSize : Texture
  • xSlider : Tutorial::BaseDemo

- y -

  • y : Point3D< T >, Point2D< T >, Dock, Coordonate< T >
  • yAlign : Text3D
  • yCenter : BasicText3D
  • yDeb : LineDock
  • YDockBottom() : Control
  • YDockCenter() : Control
  • YDockTop() : Control
  • yFin : LineDock
  • yFormat : TextTexture
  • yJustifyLimit : Text3D
  • yMax : Region
  • yMin : Region
  • yPercent : Tutorial::BaseDemo
  • yScale : Texture
  • ySize : Texture
  • ySlider : Tutorial::BaseDemo

- z -

  • z : Point3D< T >, Dock, Coordonate< T >
  • zCenter : BasicText3D
  • zDeb : LineDock
  • zDist : Picking
  • Zero() : ValueEditors, ValueEditor< T >, ValueNamed< T >, ParamValueEditor, LinearEqu2D< T >, Point3D< T >, Point2D< T >, Point1D< T >, Texture, Recorder, MyString, MyList< T >, MyListIterator< T >, Material, Light, Layout< T >, Face, Curve, Coordonate< T >, Color, Box3D, Array< T >
  • ZeroLink() : MyListItem< T >
  • zFin : LineDock
  • zMax : Region
  • zMin : Region

- ~ -

  • ~Array() : Array< T >
  • ~Button() : Button
  • ~CMyMenu() : CMyMenu
  • ~Container() : Container
  • ~Control() : Control
  • ~ControlEngine() : ControlEngine
  • ~CubeDock() : CubeDock
  • ~Curve() : Curve
  • ~Dock() : Dock
  • ~EffectApparition() : EffectApparition
  • ~Face() : Face
  • ~LineDock() : LineDock
  • ~MasterContainer() : MasterContainer
  • ~MsgBox() : MsgBox
  • ~MyDebug() : MyDebug
  • ~MyList() : MyList< T >
  • ~MyListItem() : MyListItem< T >
  • ~MyString() : MyString
  • ~MyTree() : MyTree< T >
  • ~MyTreeNode() : MyTreeNode< T >
  • ~Primitive() : Primitive
  • ~Recorder() : Recorder
  • ~ResizingAndRotateControl() : ResizingAndRotateControl
  • ~Screen() : Screen
  • ~Slider() : Slider
  • ~StateKey() : StateKey
  • ~TaskWindow() : TaskWindow
  • ~Text3D() : Text3D
  • ~TextBox() : TextBox
  • ~Texture() : Texture
  • ~Timer() : Timer
  • ~Tip() : Tip
  • ~Title() : Title
  • ~TrackButton() : TrackButton
  • ~Tutorial() : Tutorial
  • ~Univers() : Univers
  • ~ValueEditors() : ValueEditors
  • ~Window() : Window
Generated on Fri Aug 20 19:20:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Compound Member Index

- a -

  • Add() : Point3D< T >, TaskWindow, MyTree< T >, MyString, Inertia, Angles
  • AddAfter() : MyListIterator< T >
  • AddBefore() : MyListIterator< T >
  • AddBox() : Primitive
  • AddElem() : Region
  • AddFace() : Primitive
  • AddFirst() : MyListIterator< T >
  • AddFormat() : MyString
  • AddLast() : MyListIterator< T >
  • AddNewAfter() : MyListIterator< T >
  • AddNewBefore() : MyListIterator< T >
  • AddNewFirst() : MyListIterator< T >
  • AddNewLast() : MyListIterator< T >
  • AddRepetitiveFormat() : MyString
  • AddSpecial() : ValueEditor< T >
  • AddText() : Texture
  • AddTitle() : CMyMenu
  • AnalyseGram() : Text3D
  • AnalyseLex() : Text3D
  • Angles() : Angles
  • ApplicationDemo() : Tutorial::ApplicationDemo
  • ApplyRealClipping() : Text3D
  • ApplyScaleView() : ControlEngine
  • ApplySize() : Screen
  • ApplyStyle() : Screen
  • ApplyStyleEx() : Screen
  • ApplyStyles() : Screen
  • ApplyType() : Cursor
  • ApplyTypes() : Cursor
  • Array() : Array< T >
  • As() : Material

- b -

  • BaseDemo() : Tutorial::BaseDemo
  • BaseObj() : BaseObj< T, V >
  • BasicText3D() : BasicText3D
  • Begin() : Texture
  • BeginContainer() : Primitive
  • BeginEnumKey() : MyRegistry
  • BeginEnumValue() : MyRegistry
  • BeginRecord() : Recorder
  • Bind() : MyListIterator< T >, Effect
  • BindOpenGL() : Screen
  • BindTexture() : TextTexture
  • Box3D() : Box3D
  • Button() : Button

- c -

  • Calculator() : Calculator
  • Call() : Timer
  • CenterIt() : Box3D
  • ChangeDirection() : Control
  • ChangeStyle() : Screen
  • ChangeStyleEx() : Screen
  • Clone() : MyTree< T >
  • CMsgBox() : CMsgBox
  • CMyMenu() : CMyMenu
  • Color() : Color
  • Compute() : Region, Layout< T >, Opperation
  • ComputeLayout() : Text3D, Primitive, Face
  • ComputeLineSize() : Text3D
  • ComputeRealZ() : ControlEngine
  • ComputeSize() : Text3D
  • Config() : TreeDirectory, Texture, CubeDock
  • ConfigCenter() : Face
  • ConfigDynamicLayout() : Face
  • ConfigFacesPlus() : TreeView
  • ConfigPixelStore() : Texture
  • ConfigSize() : Texture
  • ConfigSlide() : Tutorial::UniversDemo
  • ConfigStaticLayout() : Face
  • ConfigTextFace() : Tutorial::LayoutDemo
  • ConfigTreeButton() : Tutorial::LayoutDemo
  • Container() : Container
  • Control() : Control
  • ControlEngine() : ControlEngine
  • Coordonate() : Coordonate< T >
  • CopyTo() : MyString
  • Create() : Window, Univers, TreeView, TrackButton, Title, Tip, TextBox, TaskWindow, Slider, Screen, MyRegistry, MsgBox, MasterContainer, Cursor, Control, Container, Calculator, Button, Tutorial
  • CreatePopupMenuTitleFont() : CMyMenu
  • CreateTreeButton() : Tutorial::LayoutDemo
  • CubeDock() : CubeDock
  • Current() : Slider
  • Cursor() : Cursor
  • Curve() : Curve

- d -

  • Delete() : Texture, Recorder, MyString, MyListItem< T >, Control, Array< T >
  • DeleteFaces() : Control
  • DeleteKey() : MyRegistry
  • DeleteSub() : Control
  • DeleteValue() : MyRegistry
  • Demo() : Demo, Tutorial::Demo
  • Destroy() : Screen
  • DestroyDemos() : Tutorial
  • Dock() : Dock
  • Draw() : TreeView, Text3D, BasicText3D, Primitive, Face, Curve, Cursor, ControlEngine, Box3D
  • Draw2DText() : ControlEngine
  • DrawArrow() : Object3D, Cursor
  • DrawBackGround() : ControlEngine
  • DrawCursor() : ControlEngine
  • DrawCursors() : ControlEngine
  • DrawFPS() : ControlEngine
  • DrawItem() : CMyMenu
  • DrawLight() : ControlEngine
  • DrawOrigineRepere() : ControlEngine
  • DrawPicking() : Text3D, BasicText3D
  • DrawRepere() : Object3D, Cursor
  • DrawScene() : ControlEngine
  • DrawText() : Object3D, Cursor
  • DrawVector() : Object3D, Cursor
  • DrawVectorMinMax() : Object3D, Cursor
  • Duplicate() : BaseObj< T, V >

- e -

  • Effect() : Effect
  • EffectApparition() : EffectApparition
  • Elems() : MyTreeNode< T >
  • Enable() : Light, Fog
  • Enabling() : Enabling< T >
  • End() : Texture
  • EndContainer() : Primitive
  • EndFont() : ControlEngine
  • Ending() : Tutorial::Demo
  • EndRecord() : Recorder
  • EnterBinNumber() : MyString
  • EnterHexaNumber() : MyString
  • EventInertia() : EventInertia
  • ExitQuestion() : Univers

- f -

  • Face() : Face
  • FaceDemo() : Tutorial::FaceDemo
  • FaceOverIn() : Control
  • FaceOverOut() : Control
  • Find() : Texture, Primitive, Timer, Control
  • FindContainer() : Picking
  • FindLetter() : MyString
  • FindOnData() : TreeView
  • FindOnParent() : MyTreeNode< T >
  • FindServer() : MyDebug
  • Fog() : Fog
  • Format() : MyString
  • FormatToLower() : MyString
  • FormatToNoCtrl() : MyString
  • FormatToUpper() : MyString
  • FromBitmap() : Texture
  • FromFile() : Texture
  • FromNull() : Texture
  • FromText() : Texture
  • FrontPeek() : MyStack< T >
  • FrontPop() : MyStack< T >
  • FrontPush() : MyStack< T >

- g -

  • Get_Value() : ValueEditor< T >
  • GetAscender() : BasicText3D
  • GetBox() : BasicText3D
  • GetChild() : MyTree< T >
  • GetColor() : CMyMenu
  • GetCopy() : ValueEditor< T >, ParamValueEditor
  • GetCorners() : Primitive, Face, Control
  • GetCrossPtFromHorizontal() : LinearEqu2D< T >
  • GetCrossPtFromLine() : LinearEqu2D< T >
  • GetCrossPtFromVertical() : LinearEqu2D< T >
  • GetCurrent() : MyTree< T >, MyListIterator< T >
  • GetDelta() : StateMouse
  • GetDeltaTime() : Timer
  • GetDescender() : BasicText3D
  • GetEdge() : CMyMenu
  • GetElem() : MyListIterator< T >
  • GetElemPtr() : MyListIterator< T >
  • GetEuler() : Angles
  • GetGradientColor() : CMyMenu
  • GetHeight() : BasicText3D
  • GetHotSpot() : Cursor
  • GetIndex() : MyListIterator< T >
  • GetIndexMode() : Fog
  • GetKeyName() : MyRegistry
  • GetLastError() : MyRegistry
  • GetLocalPos() : Primitive, Control
  • GetMoyValue() : Inertia
  • GetNbButtonPush() : StateMouse
  • GetNbElem() : MyList< T >
  • GetNbLinks() : EventControl, EventFaceOver, EventOver, EventMouse, EventKey, EventMouseButton
  • GetParent() : MyTree< T >
  • GetPixel() : Texture
  • GetPositionFromLeft() : MyString
  • GetPositionFromRight() : MyString
  • GetPush() : Button
  • GetRelativePtOn2Lines() : Point2D< T >
  • GetRelativePtOnQuadrilatere() : Point2D< T >
  • GetRoot() : MyTree< T >
  • GetSize() : MyString
  • GetState() : StateKey
  • GetStringMode() : Fog
  • GetText() : Text3D, Opperation
  • GetTextColor() : CMyMenu
  • GetTreePath() : TreeView
  • GetValue() : MyString, MyRegistry
  • GetValueExpand() : MyRegistry
  • GetValueMulti() : MyRegistry
  • GetValueSize() : MyRegistry
  • GetValueType() : MyRegistry
  • GetWidth() : BasicText3D
  • GetXCoord() : Texture
  • GetYCoord() : Texture
  • GiveFPS() : ControlEngine
  • glRasterPos() : Point3D< T >
  • glRotated() : Point3D< T >
  • glScale() : Point3D< T >
  • glTranslated() : Point3D< T >
  • GoAfter() : MyListIterator< T >
  • GoBefore() : MyListIterator< T >
  • GoFirst() : MyListIterator< T >
  • GoIndex() : MyListIterator< T >
  • GoLast() : MyListIterator< T >
  • GotFocus() : Title
  • GoTo() : Primitive, MyTree< T >, MyListIterator< T >
  • GoToChild() : MyTree< T >
  • GoToParent() : Primitive, MyTree< T >
  • GradientFill() : CMyMenu

- h -

  • HomePosition() : Univers

- i -

  • Inertia() : Inertia
  • Init() : MyException, Timer, EventInertia, Array< T >
  • InitFont() : ControlEngine
  • InitLights() : ControlEngine
  • InitMonitor() : ControlEngine
  • InitTextures() : ControlEngine
  • InitViewPort() : ControlEngine
  • InterpretedText() : ValueEditor< T >
  • IsActive() : Curve
  • IsAutoCreate() : MyRegistry
  • IsBeginWith() : MyString
  • IsDynamic() : Layout< T >
  • IsEmpty() : MyString
  • IsEnabled() : Light
  • IsEqual() : Point3D< T >
  • IsHorizontal() : LinearEqu2D< T >
  • IsLighting() : Light
  • IsNotNull() : Point3D< T >
  • IsOnFirst() : MyListIterator< T >
  • IsOnLast() : MyListIterator< T >
  • IsOnLine() : Point2D< T >
  • IsOnQuadrilatere() : Point2D< T >
  • IsOnRectangle() : Point2D< T >
  • IsOnSegment() : Point2D< T >
  • IsOnTriangle() : Point3D< T >, Point2D< T >
  • IsPoint() : LinearEqu2D< T >
  • IsRuning() : Timer
  • IsVertical() : LinearEqu2D< T >
  • IsVisibleText() : MyString

- l -

  • Layout() : Layout< T >
  • LayoutDemo() : Tutorial::LayoutDemo
  • Light() : Light
  • LinearEqu2D() : LinearEqu2D< T >
  • LinearInterpolation() : Point1D< T >
  • LineDock() : LineDock
  • Load() : MyList< T >
  • Loading() : TreeDirectory
  • Loop() : ControlEngine
  • LostFocus() : Title

- m -

  • MAJ() : ValueEditor< T >
  • MAJ_Slider() : ValueEditor< T >
  • MAJ_Specials() : ValueEditor< T >
  • MAJ_TreeItem() : ValueEditor< T >
  • MAJ_Value() : ValueEditor< T >
  • MAJ_ValueMax() : ValueEditor< T >
  • MAJ_ValueMids() : ValueEditor< T >
  • MAJ_ValueMin() : ValueEditor< T >
  • MajLights() : ControlEngine
  • MajTexture() : TextTexture
  • MakeDebugControlStruct() : ValueEditors
  • MakeDebugFaceStruct() : ValueEditors
  • MakeDebugStruct() : ValueEditors
  • MakeElemControlStruct() : ValueEditors
  • MakeElemFaceStruct() : ValueEditors
  • MakeFontsStruct() : ValueEditors
  • MakeLightsStruct() : ValueEditors
  • MakeRenderStruct() : ValueEditors
  • MakeTexturesStruct() : ValueEditors
  • MasterContainer() : MasterContainer
  • Material() : Material
  • Max() : Slider
  • MeasureItem() : CMyMenu
  • MessageBox() : CMsgBox, MyException
  • Mids() : MyString
  • Min() : Slider
  • ModeAllButtons() : Button
  • ModePushLike() : Button
  • More() : MyListIterator< T >
  • Move() : Face, Control
  • MoveFirst() : MyListIterator< T >
  • MoveLast() : MyListIterator< T >
  • MoveTo() : MyTreeNode< T >, Face, Control
  • MoveToFirstChild() : MyTreeNode< T >
  • MoveToLastChild() : MyTreeNode< T >
  • MovingInside() : Face
  • MsgBox() : MsgBox
  • MsgInfoType() : Screen
  • MyDebug() : MyDebug
  • MyException() : MyException
  • MyExceptionMemory() : MyExceptionMemory
  • MyList() : MyList< T >
  • MyListItem() : MyListItem< T >
  • MyListIterator() : MyListIterator< T >
  • MyRegistry() : MyRegistry
  • MyStack() : MyStack< T >
  • MyString() : MyString
  • MyTree() : MyTree< T >
  • MyTreeNode() : MyTreeNode< T >

- n -

  • New() : MyListItem< T >, Array< T >
  • NextEnumKey() : MyRegistry
  • NextEnumValue() : MyRegistry
  • NormalizeSens() : Region

- o -

  • Object() : Object
  • OnAdd() : Calculator
  • OnApplicationDemo() : Tutorial
  • OnApplicationDemoStart() : Tutorial
  • OnAutoMinus() : Slider
  • OnAutoPlus() : Slider
  • OnBaseDemo() : Tutorial
  • OnBaseDemoStart() : Tutorial
  • OnBottom() : Tutorial::UniversDemo
  • OnButtonClick() : TrackButton
  • OnButtonOk() : MsgBox
  • OnButtonsLMouseUp() : Slider
  • OnButtonsOverOut() : Slider
  • OnClear() : Calculator
  • OnClick() : TreeView, Title, Control
  • OnClickBottom() : TrackButton
  • OnClickDirectory() : TreeDirectory
  • OnClickLeft() : TrackButton
  • OnClickLeftBottom() : TrackButton
  • OnClickLeftTop() : TrackButton
  • OnClickRight() : TrackButton
  • OnClickRightBottom() : TrackButton
  • OnClickRightTop() : TrackButton
  • OnClickTop() : TrackButton
  • OnClose() : Window, Title, MsgBox
  • OnDiv() : Calculator
  • OnDot() : Calculator
  • OnEnd() : Tutorial, Tutorial::ApplicationDemo, Tutorial::WindowDemo, Tutorial::LayoutDemo, Tutorial::BaseDemo, Tutorial::UniversDemo, Tutorial::FaceDemo
  • OnEqual() : Calculator
  • OnExit() : Univers
  • OnFaceDemo() : Tutorial
  • OnFaceDemoStart() : Tutorial
  • OnHover() : ResizingAndRotateControl
  • OnInertia() : EventInertia
  • OnKey() : Calculator
  • OnKeyDouble() : Control
  • OnKeyDown() : Univers, Title, Control
  • OnKeyUp() : Univers, Title, Control
  • OnLayoutDemo() : Tutorial
  • OnLayoutDemoStart() : Tutorial
  • OnLButtonDouble() : Control
  • OnLButtonDown() : Univers, Title, TextBox, Control
  • OnLButtonUp() : Univers, TextBox, Picking, Control
  • OnLeft() : Tutorial::UniversDemo
  • OnLMButtonUp() : Title
  • OnLMouseDown() : Slider
  • OnLMRButton() : Window
  • OnMax() : Title
  • OnMaxOrOriginal() : Title
  • OnMButtonDouble() : Control
  • OnMButtonDown() : Univers, Title, Control
  • OnMButtonUp() : Univers, Picking, Control
  • OnMin() : Title
  • OnMinusLMouseDown() : Slider
  • OnMouseMove() : Univers, TrackButton, Title, Slider, Picking, Control
  • OnMouseWheel() : Window, Univers, Title, Picking, Control
  • OnMult() : Calculator
  • OnNextFrame() : TreeView
  • OnNum() : Calculator
  • OnNum0() : Calculator
  • OnNum1() : Calculator
  • OnNum2() : Calculator
  • OnNum3() : Calculator
  • OnNum4() : Calculator
  • OnNum5() : Calculator
  • OnNum6() : Calculator
  • OnNum7() : Calculator
  • OnNum8() : Calculator
  • OnNum9() : Calculator
  • OnOk() : Calculator
  • OnOriginal() : Title
  • OnOver() : Window
  • OnOverIn() : Univers, Title, TextBox, Button
  • OnOverOut() : Univers, TrackButton, Title, Button
  • OnPlusLMouseDown() : Slider
  • OnPushDown() : Button
  • OnPushUp() : Button
  • OnRButtonDouble() : Control
  • OnRButtonDown() : Control
  • OnRButtonUp() : Picking, Control
  • OnRefresh() : Univers, Title, ControlEngine
  • OnReset() : Tutorial::LayoutDemo
  • OnResetAll() : Tutorial::LayoutDemo
  • OnRight() : Tutorial::UniversDemo
  • OnSelectBkg() : Tutorial::ApplicationDemo
  • OnSelectExplorer() : Tutorial::ApplicationDemo
  • OnSet() : Tutorial::LayoutDemo
  • OnSetAll() : Tutorial::LayoutDemo
  • OnSub() : Calculator
  • OnTimer() : Demo, Tutorial::UniversDemo, Tutorial::FaceDemo
  • OnToogle() : Tutorial::LayoutDemo
  • OnToogleAll() : Tutorial::LayoutDemo
  • OnTop() : Tutorial::UniversDemo
  • OnTreeButtonClick() : Tutorial::LayoutDemo
  • OnUniversDemo() : Tutorial
  • OnUniversDemoStart() : Tutorial
  • OnWindowDemo() : Tutorial
  • OnWindowDemoStart() : Tutorial
  • OnWinMove() : Tutorial::BaseDemo
  • OnWinOut() : Tutorial::BaseDemo
  • OnXSliderMove() : Tutorial::BaseDemo
  • OnYSliderMove() : Tutorial::BaseDemo
  • Open() : MyRegistry
  • operator *() : Point2D< T >, Point1D< T >
  • operator *=() : Point2D< T >
  • operator char *() : MyString
  • operator float *() : Color
  • operator GLuint() : Texture
  • operator T() : Point1D< T >
  • operator T *() : Coordonate< T >
  • operator!=() : Point2D< T >, MyString, Coordonate< T >
  • operator()() : MyListIterator< T >
  • operator+() : Point2D< T >, Point1D< T >, MyString
  • operator++() : MyListIterator< T >
  • operator+=() : Point3D< T >, Point2D< T >, MyTree< T >, MyString, MyList< T >, MyListIterator< T >
  • operator-() : Point2D< T >, Point1D< T >
  • operator--() : MyListIterator< T >
  • operator/() : Point2D< T >, Point1D< T >
  • operator/=() : Point3D< T >, Point2D< T >
  • operator=() : Enabling< T >, ValueEditor< T >, ValueNamed< T >, ParamValueEditor, Point3D< T >, Point2D< T >, Point1D< T >, Title, Tip, Texture, TextTexture, TextBox, Text3D, BasicText3D, ParsingLine, ParsingWord, ParsingElem, Recorder, Picking, MyTree< T >, MyTreeNode< T >, MyString, MyRegistry, BaseObj< T, V >, Object, CMyMenu, MyList< T >, MyListIterator< T >, Material, Light, Layout< T >, StateKey, StateMouse, EventInertia, ElemStack, Face, Curve, Coordonate< T >, Control, Color, Opperation, Button, Box3D, Array< T >, Angles
  • operator==() : Point3D< T >, Point2D< T >, Point1D< T >, MyString, Coordonate< T >
  • operator[]() : MyTreeNode< T >, MyString, MyListIterator< T >
  • Opperation() : Opperation
  • OverIn() : Control
  • OverOut() : Control

- p -

  • ParamValueEditor() : ParamValueEditor
  • ParsingElem() : ParsingElem
  • ParsingLine() : ParsingLine
  • ParsingWord() : ParsingWord
  • Pause() : Timer
  • Peek() : Primitive, MyStack< T >, ControlEngine
  • Picking() : Picking
  • Play() : Recorder, Material
  • Point1D() : Point1D< T >
  • Point2D() : Point2D< T >
  • Point3D() : Point3D< T >
  • PolygonMode() : PolygonMode
  • Pop() : Primitive, MyStack< T >, ControlEngine
  • Power() : Point3D< T >, Point2D< T >
  • Primitive() : Primitive
  • Proc() : ControlEngine
  • ProjectObjectToWindow() : ControlEngine
  • ProjectWindowToObject() : ControlEngine
  • Push() : Primitive, MyStack< T >, ControlEngine
  • PushUp() : Button

- q -

  • QuaternionRotate() : Point3D< T >

- r -

  • Record() : Material
  • Recorder() : Recorder
  • Refresh() : TaskWindow, Slider, Curve, ControlEngine
  • RefreshText() : TextTexture
  • Region() : Region
  • RegionAdd() : ControlEngine
  • RegionGet() : ControlEngine
  • RegionReset() : Screen
  • RegionUse() : Screen
  • ReOrderForBlending() : Primitive
  • Reset() : TreeDirectory, Region
  • ResetCurrent() : Picking
  • ResetLast() : Picking
  • ReSize() : Control
  • ResizingAndRotateControl() : ResizingAndRotateControl
  • Restore() : TaskWindow
  • RestoreDelayAndRepeate() : StateKey
  • Resume() : Timer
  • Reverse() : MyString
  • Rotate() : Cursor, Control, Angles
  • RotateQuaternion() : Control
  • RotateTo() : Control

- s -

  • Save() : MyList< T >
  • SaveDelayAndRepeate() : StateKey
  • Screen() : Screen
  • ScreenMove() : Control
  • ScreenMoveTo() : Control
  • ScreenShot() : ControlEngine
  • Send() : MyDebug
  • SendEvent() : MyDebug
  • SendLine() : MyDebug
  • Set() : Enabling< T >, ValueEditor< T >, ValueNamed< T >, LinearEqu2D< T >, Point3D< T >, Point2D< T >, LineDock, Layout< T >, Face, Dock, Curve, Coordonate< T >, Color, Array< T >, Angles
  • SetAlign() : Text3D
  • SetAlpha() : Material
  • SetAlphaBlending() : Control
  • SetAutoCreate() : MyRegistry
  • SetBlending() : Control
  • SetClipping() : Text3D
  • SetColor() : CMyMenu
  • SetCompareFunction() : MyList< T >
  • SetCoord() : Texture
  • SetCursor() : TextBox
  • SetDelayAndRepeate() : StateKey
  • SetDeltaWheel() : Picking
  • SetDS() : Material
  • SetEdge() : CMyMenu
  • SetFace() : Tutorial::UniversDemo
  • SetFull() : Material, Color
  • SetFullScreen() : Screen
  • SetGradientColor() : CMyMenu
  • SetIndexMode() : Fog
  • SetJustifyLimit() : Text3D
  • SetLighting() : Light
  • SetLines() : Control
  • SetMinMax() : Region
  • SetMode() : TrackButton
  • SetMousePos() : Picking
  • SetNull() : Material, Color
  • SetParent() : Control
  • SetPercent() : Layout< T >
  • SetPerspective() : ControlEngine
  • SetPixel() : Texture
  • SetPush() : Button
  • SetPushToogle() : Button
  • SetRatioXY() : BasicText3D
  • SetResizeAndRotate() : TrackButton
  • SetSize() : Screen
  • SetStyle() : Screen
  • SetText() : Title, Tip, TextTexture, TextBox, Text3D, Button
  • SetTextColor() : CMyMenu
  • SetTimerRefresh() : ControlEngine
  • SetTitle() : Screen
  • SetTopMost() : Screen
  • SetTutorialTipText() : Tutorial
  • Setup() : Text3D, BasicText3D, Slider, Screen, ControlEngine
  • SetUses() : Title
  • SetValue() : MyRegistry
  • SetValueBigEndian() : MyRegistry
  • SetValueExpand() : MyRegistry
  • SetValueLittleEndian() : MyRegistry
  • SetValueMulti() : MyRegistry
  • SetWrapping() : Text3D
  • SetXYFormat() : TextTexture
  • Show() : Screen
  • Size() : Control
  • Slider() : Slider
  • SplitPath() : MyString
  • Start() : MyDebug, Timer, EventInertia, Inertia, EffectApparition, ControlEngine
  • StateKey() : StateKey
  • StateMouse() : StateMouse
  • Step() : Slider
  • Stop() : Timer, EventInertia, EffectApparition, ControlEngine
  • StopAndUnBind() : Timer
  • SubStringBeforToken() : MyString
  • Supr() : MyListIterator< T >
  • SuprAll() : MyTree< T >, MyListIterator< T >
  • SuprChilds() : MyTreeNode< T >
  • SuprFirst() : MyListIterator< T >
  • SuprIndex() : MyListIterator< T >
  • SuprLast() : MyListIterator< T >
  • SuprNode() : MyTree< T >
  • SuprOnParent() : MyTreeNode< T >
  • SwapBuffers() : Screen
  • SwitchButton() : EventInertia

- t -

  • TaskWindow() : TaskWindow
  • Test() : Picking
  • TestKey() : MyRegistry
  • TestSubString() : MyString
  • TestValue() : MyRegistry
  • Text3D() : Text3D
  • TextBox() : TextBox
  • TextTexture() : TextTexture
  • Texture() : Texture
  • Timer() : Timer
  • Tip() : Tip
  • Title() : Title
  • ToDouble() : MyString
  • ToFloat() : MyString
  • Toggle() : Light
  • ToInteger() : MyString
  • ToNormalVector() : Point2D< T >
  • ToString() : Window, Enabling< T >, Univers, TrackButton, Title, Tip, TextBox, Slider, PolygonMode, MasterContainer, StateKey, StateMouse, Coordonate< T >, Control, Container, Color, Button
  • TrackButton() : TrackButton
  • Traduce() : PolygonMode
  • TreeDirectory() : TreeDirectory
  • TreeView() : TreeView
  • TreeViewItem() : TreeViewItem
  • Tutorial() : Tutorial

- u -

  • Univers() : Univers
  • UniversDemo() : Tutorial::UniversDemo
  • Update() : ValueEditors, Screen
  • UpdateLast() : Picking
  • Use() : Region, PolygonMode, Material, Light, Fog

- v -

  • ValueEditor() : ValueEditor< T >
  • ValueEditors() : ValueEditors
  • ValueNamed() : ValueNamed< T >
  • VerifyId() : Texture
  • ViewDebug() : Primitive

- w -

  • Window() : Window
  • WindowDemo() : Tutorial::WindowDemo

- x -

  • XDockCenter() : Control
  • XDockLeft() : Control
  • XDockRight() : Control

- y -

  • YDockBottom() : Control
  • YDockCenter() : Control
  • YDockTop() : Control

- z -

  • Zero() : ValueEditors, ValueEditor< T >, ValueNamed< T >, ParamValueEditor, LinearEqu2D< T >, Point3D< T >, Point2D< T >, Point1D< T >, Texture, Recorder, MyString, MyList< T >, MyListIterator< T >, Material, Light, Layout< T >, Face, Curve, Coordonate< T >, Color, Box3D, Array< T >
  • ZeroLink() : MyListItem< T >

- ~ -

  • ~Array() : Array< T >
  • ~Button() : Button
  • ~CMyMenu() : CMyMenu
  • ~Container() : Container
  • ~Control() : Control
  • ~ControlEngine() : ControlEngine
  • ~CubeDock() : CubeDock
  • ~Curve() : Curve
  • ~Dock() : Dock
  • ~EffectApparition() : EffectApparition
  • ~Face() : Face
  • ~LineDock() : LineDock
  • ~MasterContainer() : MasterContainer
  • ~MsgBox() : MsgBox
  • ~MyDebug() : MyDebug
  • ~MyList() : MyList< T >
  • ~MyListItem() : MyListItem< T >
  • ~MyString() : MyString
  • ~MyTree() : MyTree< T >
  • ~MyTreeNode() : MyTreeNode< T >
  • ~Primitive() : Primitive
  • ~Recorder() : Recorder
  • ~ResizingAndRotateControl() : ResizingAndRotateControl
  • ~Screen() : Screen
  • ~Slider() : Slider
  • ~StateKey() : StateKey
  • ~TaskWindow() : TaskWindow
  • ~Text3D() : Text3D
  • ~TextBox() : TextBox
  • ~Texture() : Texture
  • ~Timer() : Timer
  • ~Tip() : Tip
  • ~Title() : Title
  • ~TrackButton() : TrackButton
  • ~Tutorial() : Tutorial
  • ~Univers() : Univers
  • ~ValueEditors() : ValueEditors
  • ~Window() : Window
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Compound Member Index

  • operator+ : Point2D< T >, Point1D< T >, MyString
  • operator<< : MyString
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Compound Member Index

  • MyTreeNodeItem : MyTreeNode< T >
  • ValueNamedCour : ValueEditor< T >
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Compound Member Index

- a -

  • a : Color, RGBA
  • ad : Tutorial
  • after : MyListItem< T >
  • align : ParsingLine
  • ambient : Material, AsMaterial
  • angle : Face
  • antialias : Face
  • antiAliasingQuality : ControlEngine
  • arrow : Textures
  • arrowOblique : Textures
  • askSubData : TreeViewItem
  • aspect : ControlEngine
  • attenuationCst : Light
  • attenuationLin : Light
  • attenuationQuad : Light

- b -

  • b : Color, RGBA
  • back : PolygonMode
  • backBottom : CubeDock
  • backBottomLeft : CubeDock
  • backBottomRight : CubeDock
  • background : TextTexture, Textures
  • backLeft : CubeDock
  • backRight : CubeDock
  • backTop : CubeDock
  • backTopLeft : CubeDock
  • backTopRight : CubeDock
  • baseValue : Layout< T >
  • bDrawEdge : CMyMenu
  • before : MyListItem< T >
  • beginTime : Timer, Effect
  • blending : Face
  • body : Slider
  • border : Texture
  • boxLights : ControlEngine
  • btnApplicationDemo : Tutorial
  • btnBaseDemo : Tutorial
  • btnCancel : MsgBox
  • btnClose : Title
  • btnFaceDemo : Tutorial
  • btnIcon : Title
  • btnLayoutDemo : Tutorial
  • btnMax : Title
  • btnMin : Title
  • btnMinus : Slider
  • btnOk : MsgBox
  • btnPlus : Slider
  • btnReset : Tutorial::LayoutDemo
  • btnResetAll : Tutorial::LayoutDemo
  • btnReturn : Tutorial
  • btnSet : Tutorial::LayoutDemo
  • btnSetAll : Tutorial::LayoutDemo
  • btnToogle : Tutorial::LayoutDemo
  • btnToogleAll : Tutorial::LayoutDemo
  • btnTree : Tutorial::LayoutDemo
  • btnUniversDemo : Tutorial
  • btnWindowDemo : Tutorial
  • button : ElemTaskWindow, Tutorial::BaseDemo, Tutorial::UniversDemo
  • buttons : Tutorial::LayoutDemo

- c -

  • calc : Tutorial::ApplicationDemo
  • callBackAlloc : Object
  • canResize : ResizingAndRotateControl
  • canRotate : ResizingAndRotateControl
  • caption : Title, Button
  • center : Face, Curve
  • change : EventTextBox
  • checked : EventButton
  • childRecorder : Face
  • childs : MyTreeNode< T >
  • click : EventKey, EventMouseButton, EventButton
  • client : Window
  • clLeft : CMyMenu
  • close : EventTitle, Textures
  • clRight : CMyMenu
  • clText : CMyMenu
  • code : StateKey
  • color : TextTexture, Fog
  • computeCenter : Face
  • computeMinMax : Region
  • computePosition : Face
  • computeSize : Face
  • constValue : Layout< T >
  • container : Title
  • contentSub : TreeViewItem
  • control : Tutorial::UniversDemo
  • controlBasic : Tutorial::FaceDemo
  • controlContainer : Picking
  • controlCurving : Tutorial::FaceDemo
  • controlHover : Picking
  • controls : Control
  • controlText : Tutorial::FaceDemo
  • coor : Box3D
  • countDirection : Tutorial::UniversDemo
  • cpuLimit : ControlEngine
  • curFace : Cursor
  • cursor : Slider, ControlEngine
  • cursorArrow : Textures
  • cursorMoving : Textures
  • cursorPush : Textures
  • cursorText : Textures
  • cursorWait : Textures
  • curType : Cursor
  • curve : Face
  • cutoff : Light

- d -

  • data : TreeView
  • db : Tutorial
  • degradeeFocus : Textures
  • degradeeUnFocus : Textures
  • delta : Box3D
  • deltaX : ParsingElem
  • deltaY : ParsingLine
  • density : Fog
  • depth : BasicText3D, ControlEngine
  • depth_cur : Button
  • depth_max : Button
  • depth_min : Button
  • description : ValueNamed< T >
  • diffuse : Material, AsMaterial
  • direction : Light
  • dllfunc_GradientFill : CMyMenu
  • doubleClick : EventKey, EventMouseButton
  • down : EventKey, EventMouseButton
  • dxNormal : Screen
  • dxWin : ControlEngine
  • dyNormal : Screen
  • dyWin : ControlEngine

- e -

  • effect : Tutorial
  • elem : Enabling< T >, MyTreeNode< T >, BaseObj< T, V >, MyListItem< T >, ElemStack
  • elemNull : MyList< T >
  • emission : Material
  • enable : Region, EventInertia
  • enableAntiAliasing : ControlEngine
  • enableBackGround : ControlEngine
  • enableCursor : ControlEngine
  • enableDelta : ControlEngine
  • enableFPS : ControlEngine
  • enableFullScreen : Screen
  • enableInertia : ControlEngine
  • enableLightView : ControlEngine
  • enablePicking : ControlEngine
  • enableRepere : ControlEngine
  • enableTitle : Screen
  • enableViewInertia : ControlEngine
  • end : Fog
  • envColor : Texture
  • envMode : Texture
  • eventInertia : ControlEngine
  • exponent : Light

- f -

  • faceContainer : Picking
  • faceHover : Picking
  • faceNode : Effect, Control
  • faceOver : EventControl
  • faceText : TextTexture
  • fd : Tutorial
  • first : MyList< T >
  • flag_edge : CMyMenu
  • focused : Title
  • fog : Face, ControlEngine
  • font : BasicText3D
  • fontBitmap : ControlEngine
  • fontExtrude : ControlEngine
  • fontOutline : ControlEngine
  • fontPixmap : ControlEngine
  • fontPolygon : ControlEngine
  • fontTexture : ControlEngine
  • frecTimer : Timer
  • frequency : Timer
  • front : PolygonMode
  • frontBottom : CubeDock
  • frontBottomLeft : CubeDock
  • frontBottomRight : CubeDock
  • frontLeft : CubeDock
  • frontRight : CubeDock
  • frontTop : CubeDock
  • frontTopLeft : CubeDock
  • frontTopRight : CubeDock

- g -

  • g : Color, RGBA
  • gotFocus : EventTitle
  • grip : Textures

- h -

  • hDC : Screen, Object3D
  • hGLRC : Screen
  • hInst : ControlEngine
  • hinst_msimg32 : CMyMenu
  • hItem : ValueEditor< T >
  • hRgnBase : Region
  • hWnd : Screen, Timer
  • hWndParent : ParamValueEditor
  • hWndServer : MyDebug

- i -

  • i : MyList< T >
  • iconBase : Textures
  • id : Texture, Light, Timer, Control
  • idControl : TreeViewItem, Face
  • idFace : Face
  • in : EventFaceOver, EventOver
  • independant : ParamValueEditor
  • inertia : Control
  • info : ValueEditor< T >, Tutorial
  • insideList : Timer
  • isCollaps : TreeViewItem
  • isEnable : Enabling< T >, Light, Fog, Coordonate< T >, Control, Color
  • isFadeIn : Effect
  • isMenuUsing : Univers
  • isMoving : Picking
  • isOnMenu : Univers
  • isPush : StateKey
  • isPushed : Button
  • isReadOnly : TextBox
  • isRuning : Timer
  • isRunning : Effect
  • isView : Control
  • isWord : ParsingElem

- k -

  • key : ControlEngine, EventControl

- l -

  • last : MyList< T >
  • lastControlContainer : Picking
  • lastControlHover : Picking
  • lastFaceContainer : Picking
  • lastFaceHover : Picking
  • lastSelected : Tutorial::LayoutDemo
  • ld : Tutorial
  • left : EventMouse
  • leftBtn : StateMouse
  • leftDown : Control
  • leftFace : Cursor
  • leftType : Cursor
  • letter : StateKey
  • letterWrap : Text3D
  • lights : ControlEngine
  • lightsMove : ControlEngine
  • line : Face
  • lineMaterial : Face
  • lineWrap : Text3D
  • list : ValueEditors, Texture, Timer
  • lostFocus : EventTitle

- m -

  • m_bCanDoGradientFill : CMyMenu
  • m_hFont : CMyMenu
  • m_hMenu : CMyMenu
  • m_message : CMsgBox
  • m_style : CMsgBox
  • m_title : CMyMenu, CMsgBox
  • magFilter : Texture
  • masterContainer : ControlEngine
  • material : BasicText3D, Light, Face, Box3D
  • materialCurrent : Button
  • materialOnDown : Button
  • materialOnUp : Button
  • max : Textures
  • maxAlternate : Textures
  • maximize : EventTitle
  • maxValue : ValueEditor< T >
  • mid : EventMouse
  • midBtn : StateMouse
  • midDown : Control
  • midFace : Cursor
  • midType : Cursor
  • min : Textures
  • minFilter : Texture
  • minimize : EventTitle
  • minus : Textures
  • minValue : ValueEditor< T >
  • mode : Fog
  • modelMatrix : ControlEngine
  • monitor : ControlEngine
  • mouse : Picking, EventControl
  • move : EventMouse
  • moving : EventSlider
  • msgBox : Tutorial::BaseDemo

- n -

  • name : Texture, AsMaterial, Face, Control
  • nbChar : ParsingLine
  • nbCut : Curve
  • nbElem : MyList< T >
  • nbOr : Region
  • nextFreeId : Timer
  • nextId : Control
  • nodes : Tutorial::FaceDemo
  • noPicking : Face
  • number : Opperation

- o -

  • object : ParamValueEditor
  • oldMouse : Univers, Title, Picking
  • oldTree : Effect
  • onButton : Button
  • onContainer : Container
  • onControl : Control
  • onEnding : Effect
  • onSlidder : Slider
  • onTextBox : TextBox
  • onTimer : Timer
  • onTitle : Title
  • onTrackButton : TrackButton
  • onTreeView : TreeView
  • op : Opperation
  • opacity : Material
  • orientation : TrackButton
  • original : EventTitle
  • originalAngle : Title
  • originalSize : Title
  • out : EventFaceOver, EventOver
  • over : EventControl

- p -

  • param : Object
  • parent : MyTreeNode< T >, CubeDock, Control, Tutorial::Demo
  • parentFace : Control
  • pathBox : Tutorial::ApplicationDemo
  • percentValue : Layout< T >
  • pickingCursor : ControlEngine
  • pickingInertia : ControlEngine
  • plus : Textures
  • points : Region
  • polygonMode : ControlEngine
  • pos : StateMouse
  • position : Light, Face
  • primitive : ControlEngine
  • projMatrix : ControlEngine

- r -

  • r : Color, RGBA
  • ratioXY : BasicText3D, Face
  • ratioYX : BasicText3D
  • recorder : Material
  • recorderRepere : Cursor
  • rect : ParamValueEditor
  • refreshTime : ControlEngine
  • region : Screen
  • resize : EventTrackButton
  • right : EventMouse
  • rightBtn : StateMouse
  • rightDown : Control
  • rightFace : Cursor
  • rightType : Cursor
  • rotate : EventTrackButton
  • rotateFace : Textures

- s -

  • scale : BasicText3D, Face
  • screenConfig : ControlEngine
  • screenMain : ControlEngine
  • screenSystray : ControlEngine
  • select : EventTreeView
  • selfUnAlloc : MyListItem< T >
  • setCursor : EventTextBox
  • shiness : Material
  • shininess : AsMaterial
  • size : Face, Array< T >
  • sleeped : EventControl
  • sleepedDelay : Control
  • slideDirection : Tutorial::UniversDemo
  • source : Texture
  • specials : ValueEditor< T >
  • specular : Material, AsMaterial
  • start : Fog
  • state : Title

- t -

  • target : Texture
  • taskWindow : ControlEngine
  • tdBkg : Tutorial::ApplicationDemo
  • tdExplorer : Tutorial::ApplicationDemo
  • tempNode : Title
  • text : TreeViewItem, Tip, TextTexture, TextBox, ParsingWord, Face, Button, Tutorial::LayoutDemo
  • textBox : Tutorial::BaseDemo
  • texture : TextTexture, Face, ControlEngine
  • thisParent : Object
  • timeOut : Button
  • timer : Demo, Tutorial::UniversDemo, Tutorial::FaceDemo
  • timerAutoButton : Slider
  • timerAutoWheel : Control
  • timerClick : EventMouseButton
  • timerPushDown : Button
  • timerRefresh : ControlEngine
  • timerSleeped : Control
  • timing : ElemStack
  • tip : Demo, Tutorial
  • tipCaption : Title
  • tipFPS : ControlEngine
  • tipSlider : Tutorial::BaseDemo
  • title : Window, ElemTaskWindow, Tutorial::BaseDemo
  • titleBasic : Tutorial::FaceDemo
  • titleCurving : Tutorial::FaceDemo
  • titleDock : Window
  • titleText : Tutorial::FaceDemo
  • translate : EventTrackButton
  • trash : ControlEngine
  • tree : Primitive
  • tropique : Textures
  • txtHelp : MsgBox
  • txtInfo : MsgBox
  • txtTranche : TaskWindow, MsgBox
  • type : BasicText3D, Object
  • typeFace : Material

- u -

  • ud : Tutorial
  • univers : ControlEngine
  • up : EventKey, EventMouseButton
  • useCancel : MsgBox
  • useClose : Title
  • useIcon : Title
  • useLighting : Light
  • useMax : Title
  • useMin : Title
  • usePicking : BasicText3D
  • useResizing : Texture
  • usingInertia : ControlEngine

- v -

  • value : ValueEditor< T >, ValueNamed< T >, Point1D< T >, Coordonate< T >, Color
  • values : Array< T >
  • valueText : ValueEditor< T >
  • variable : ValueEditor< T >
  • VE_double : ValueEditors
  • VE_float : ValueEditors
  • VE_int : ValueEditors
  • view : Face
  • viewPort : ControlEngine

- w -

  • w : Coordonate< T >
  • wd : Tutorial
  • wheel : EventMouse
  • wheelDelta : StateMouse
  • wheelVal : StateMouse
  • width : LineDock, Dock
  • winBackground : Tutorial::ApplicationDemo
  • window : Tutorial::LayoutDemo
  • windowBottom : Tutorial::WindowDemo
  • windowLeft : Tutorial::WindowDemo
  • windowRight : Tutorial::WindowDemo
  • windowTop : Tutorial::WindowDemo
  • winExplorer : Tutorial::ApplicationDemo
  • winInfo : Tutorial::BaseDemo
  • winSlider : Tutorial::BaseDemo
  • words : ParsingLine
  • wordWrap : Text3D
  • wrapS : Texture
  • wrapT : Texture

- x -

  • x : Point3D< T >, Point2D< T >, Dock, Coordonate< T >
  • xAlign : Text3D
  • xCenter : BasicText3D
  • xDeb : LineDock
  • xFin : LineDock
  • xFormat : TextTexture
  • xJustify : ParsingLine
  • xJustifyLimit : Text3D
  • xMax : Region
  • xMin : Region
  • xPercent : Tutorial::BaseDemo
  • xPos : ParsingLine
  • xScale : Texture
  • xSize : Texture
  • xSlider : Tutorial::BaseDemo

- y -

  • y : Point3D< T >, Point2D< T >, Dock, Coordonate< T >
  • yAlign : Text3D
  • yCenter : BasicText3D
  • yDeb : LineDock
  • yFin : LineDock
  • yFormat : TextTexture
  • yJustifyLimit : Text3D
  • yMax : Region
  • yMin : Region
  • yPercent : Tutorial::BaseDemo
  • yScale : Texture
  • ySize : Texture
  • ySlider : Tutorial::BaseDemo

- z -

  • z : Point3D< T >, Dock, Coordonate< T >
  • zCenter : BasicText3D
  • zDeb : LineDock
  • zDist : Picking
  • zFin : LineDock
  • zMax : Region
  • zMin : Region
Generated on Fri Aug 20 19:21:00 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Namespace Index

3d Controls Namespace List

Here is a list of all namespaces with brief descriptions:
sigslot
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: sigslot Namespace Reference

sigslot Namespace Reference

Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: File Member Index

Here is a list of all file members with links to the files they belong to:

- _ -

  • _ETypeStart : MyList.h

- a -

  • a : glext.h
  • abDotProduct : glext.h
  • AboutProc() : systray.h, systray.cpp
  • abOutput : glext.h
  • accFrustum() : openGL_tools.h, openGL_tools.cpp
  • accPerspective() : openGL_tools.h, openGL_tools.cpp
  • addr : glext.h
  • address : glext.h
  • AFX_MYEXCEPTION_H__70AB5B86_0239_4F62_B3F5_61A033D526AF__INCLUDED_ : MyException.h
  • AFX_TITLEMENU_H__E69DD9C2_0FDA_11D6_9385_0060086FAC36__INCLUDED_ : MyMenu.h
  • align_begin : text3d.h
  • align_center : text3d.h
  • align_end : text3d.h
  • align_justify : text3d.h
  • alpha : glext.h
  • ApplyParamObj() : valueEditor.cpp
  • arbMultisampleFormat : ARB_Multisample.h, ARB_Multisample.cpp
  • arbMultisampleSupported : ARB_Multisample.h, ARB_Multisample.cpp
  • arg1 : glext.h
  • arg1Mod : glext.h
  • arg1Rep : glext.h
  • arg2 : glext.h
  • arg2Mod : glext.h
  • arg2Rep : glext.h
  • arg3 : glext.h
  • arg3Mod : glext.h
  • arg3Rep : glext.h
  • arrays : glext.h

- b -

  • b : glext.h
  • backfunc : glext.h
  • bias : glext.h
  • BindTimer : input.h
  • blend : texture.h
  • blue : glext.h
  • BOOL() : wglext.h
  • border : glext.h
  • bottom : 3d.h
  • Bound2_PI() : trigo.h, trigo.cpp
  • buffer : glext.h
  • buffers : glext.h
  • bufferSelect : picking.cpp
  • bufs : glext.h
  • buttonLeft : control.h
  • buttonMid : control.h
  • buttonRight : control.h
  • by : glext.h
  • bz : glext.h

- c -

  • c : glext.h
  • cap : glext.h
  • CBase_double : MyObject.h
  • CBase_float : MyObject.h
  • CBASE_INDEX_CUSTOM : MyObject.h
  • CBASE_INDEX_DOUBLE : MyObject.h
  • CBASE_INDEX_FLOAT : MyObject.h
  • CBASE_INDEX_INT : MyObject.h
  • CBASE_INDEX_STRING : MyObject.h
  • CBase_int : MyObject.h
  • CBase_string : MyObject.h
  • CBase_VE_double : valueEditor.h
  • CBase_VE_float : valueEditor.h
  • CBase_VE_int : valueEditor.h
  • cdDotProduct : glext.h
  • cdOutput : glext.h
  • ce : window.cpp, valueEditor.cpp, univers.cpp, treeView.cpp, trackButton.cpp, title.cpp, tip.cpp, TextTexture.cpp, textBox.cpp, text3d.cpp, taskWindow.cpp, systray.cpp, slider.cpp, primitive.cpp, picking.cpp, Object3D.cpp, msgBox.cpp, masterContainer.cpp, Inertia.cpp, face.cpp, effect.cpp, cursor.cpp, controlEngine.cpp, control.cpp, container.cpp, calculator.cpp, button.cpp, 3dcontrols.cpp
  • ChangeTrigoSens() : trigo.h, trigo.cpp
  • CHECK_FOR_MULTISAMPLE : ARB_Multisample.h
  • clamp : texture.h
  • clear() : MyString.h, MyString.cpp
  • column : glext.h
  • components : glext.h
  • componentUsage : glext.h
  • condition : glext.h
  • Config() : cursor.cpp
  • ConfigProc() : systray.h, systray.cpp
  • ControlEngineProc() : controlEngine.h, controlEngine.cpp
  • coord : glext.h
  • coords : glext.h
  • count : wglext.h, glext.h
  • cursorArrow : cursor.h
  • cursorMoving : cursor.h
  • cursorNoChange : cursor.h
  • cursorNothing : cursor.h
  • cursorPush : cursor.h
  • cursorRepere : cursor.h
  • cursorText : cursor.h
  • CursorType : cursor.h
  • cursorWait : cursor.h

- d -

  • data : glext.h
  • Debug0Param : control.h
  • Debug1Param : control.h
  • Debug2Param : control.h
  • Debug3Param : control.h
  • DEBUG_SCREEN : screen.cpp
  • DebugKey : input.h
  • DebugKey2 : input.h
  • DebugMouse : input.h
  • DebugMouse2 : input.h
  • DebugStructProc() : valueEditor.h, valueEditor.cpp
  • decal : texture.h
  • DECLARE_HANDLE() : wglext.h
  • DEFAULT_ANTIALIASING : controlEngine.h
  • DEFAULT_ANTIALIASING_QUALITY : controlEngine.h
  • DEFAULT_CPU_LIMIT : controlEngine.h
  • DEFAULT_DELTA : controlEngine.h
  • DEFAULT_DEPTH_CONTAINER : control.h
  • DEFAULT_DEPTH_MAX_BUTTON : control.h
  • DEFAULT_DEPTH_MIN_BUTTON : control.h
  • DEFAULT_DEPTH_TEXTBOX : control.h
  • DEFAULT_DEPTH_TITLE : control.h
  • DEFAULT_DEPTH_WINDOW : control.h
  • DEFAULT_DOUBLE_CLICK : controlEngine.h
  • DEFAULT_FOG_DENSITY : controlEngine.h
  • DEFAULT_FOG_ENABLE : controlEngine.h
  • DEFAULT_FOG_END : controlEngine.h
  • DEFAULT_FOG_MODE : controlEngine.h
  • DEFAULT_FOG_START : controlEngine.h
  • DEFAULT_FULLSCREEN : controlEngine.h
  • DEFAULT_INERTIA : controlEngine.h
  • DEFAULT_LIGHT_ENABLE0 : controlEngine.h
  • DEFAULT_LIGHT_ENABLE1 : controlEngine.h
  • DEFAULT_LIGHT_ENABLE2 : controlEngine.h
  • DEFAULT_LIGHT_MOVE0 : controlEngine.h
  • DEFAULT_LIGHT_MOVE1 : controlEngine.h
  • DEFAULT_LIGHT_MOVE2 : controlEngine.h
  • DEFAULT_MONITOR : controlEngine.h
  • DEFAULT_PICKING : controlEngine.h
  • DEFAULT_POLYGON_BACK : controlEngine.h
  • DEFAULT_POLYGON_FRONT : controlEngine.h
  • DEFAULT_SIZE_TRACK_BUTTON : control.h
  • DEFAULT_TIMER_REFRESH : controlEngine.h
  • DEFAULT_TITLED : controlEngine.h
  • DEFAULT_VIEW_BACKGROUND : controlEngine.h
  • DEFAULT_VIEW_FPS : controlEngine.h
  • DEFAULT_VIEW_INERTIA : controlEngine.h
  • DEFAULT_VIEW_LIGHT : controlEngine.h
  • DEFAULT_VIEW_REGION : controlEngine.h
  • DEFAULT_VIEW_REPERE : controlEngine.h
  • DEFAULT_WIDTH : linedock.h, dock.h
  • DEFAULT_XSIZE : controlEngine.h
  • DEFAULT_XSIZE_WINDOW : window.cpp
  • DEFAULT_YSIZE : controlEngine.h
  • DEFAULT_YSIZE_WINDOW : window.cpp
  • DefaultFoncCompare() : MyList.h
  • DEGTORAD : trigo.h
  • DELTA_FOG : valueEditor.h
  • deltaXwin : controlEngine.h
  • deltaYwin : controlEngine.h
  • denominator : wglext.h
  • depth : glext.h
  • dfactorAlpha : glext.h
  • dfactorRGB : glext.h
  • divisor : wglext.h
  • DOCK_INIT : control.cpp
  • DockPos : 3d.h
  • DOUBLE_PI : trigo.h
  • dpfail : glext.h
  • dppass : glext.h
  • DrawTextOnFirstPlan() : communTools.h, communTools.cpp
  • dst : glext.h
  • dstMask : glext.h
  • dstMod : glext.h
  • dwSize : wglext.h

- e -

  • end : glext.h
  • Equ_1SURX() : equations.h, equations.cpp
  • ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB : wglext.h
  • ERROR_INVALID_PIXEL_TYPE_ARB : wglext.h
  • ERROR_INVALID_PIXEL_TYPE_EXT : wglext.h
  • ErrorMessage() : communTools.h, communTools.cpp
  • ETypeStart : MyList.h

- f -

  • f : curve.cpp
  • FACE_BACK : 3d.h
  • FACE_BOTTOM : 3d.h
  • FACE_FRONT : 3d.h
  • FACE_LEFT : 3d.h
  • FACE_RIGHT : 3d.h
  • FACE_TOP : 3d.h
  • FaceNode : face.h
  • fences : glext.h
  • fill : polygonMode.h
  • filter : glext.h
  • first : glext.h
  • FncManipulateur : MyString.h
  • fogExponential : fog.h
  • fogExponential2 : fog.h
  • fogLinear : fog.h
  • FogMode : fog.h
  • FONT_FILE : 3d.h
  • FontType : text3d.h
  • format : glext.h
  • fsize : glext.h
  • ft_bitmap : text3d.h
  • ft_extrude : text3d.h
  • ft_outline : text3d.h
  • ft_pixmap : text3d.h
  • ft_polygon : text3d.h
  • ft_texture : text3d.h
  • ft_unknown : text3d.h
  • FTLibraryFree() : controlEngine.h, controlEngine.cpp
  • FTLibraryInit() : controlEngine.h, controlEngine.cpp
  • fuPlanes : wglext.h
  • fx : curve.cpp
  • fxy : curve.cpp
  • fy : curve.cpp

- g -

  • g : glext.h
  • GET_WHEEL_DELTA_WPARAM : 3d.h
  • GetDeltaWindow() : windowTools.h, windowTools.cpp
  • GetNearExp2() : trigo.h, trigo.cpp
  • GetSpinPos() : systray.cpp
  • GetTrigoSens() : trigo.h, trigo.cpp
  • GetWindowPos() : windowTools.h, windowTools.cpp
  • GetWindowSize() : windowTools.h, windowTools.cpp
  • GL_1PASS_EXT : glext.h
  • GL_1PASS_SGIS : glext.h
  • GL_2PASS_0_EXT : glext.h
  • GL_2PASS_0_SGIS : glext.h
  • GL_2PASS_1_EXT : glext.h
  • GL_2PASS_1_SGIS : glext.h
  • GL_2X_BIT_ATI : glext.h
  • GL_3DFX_multisample : glext.h
  • GL_3DFX_tbuffer : glext.h
  • GL_3DFX_texture_compression_FXT1 : glext.h
  • GL_422_AVERAGE_EXT : glext.h
  • GL_422_EXT : glext.h
  • GL_422_REV_AVERAGE_EXT : glext.h
  • GL_422_REV_EXT : glext.h
  • GL_4PASS_0_EXT : glext.h
  • GL_4PASS_0_SGIS : glext.h
  • GL_4PASS_1_EXT : glext.h
  • GL_4PASS_1_SGIS : glext.h
  • GL_4PASS_2_EXT : glext.h
  • GL_4PASS_2_SGIS : glext.h
  • GL_4PASS_3_EXT : glext.h
  • GL_4PASS_3_SGIS : glext.h
  • GL_4X_BIT_ATI : glext.h
  • GL_8X_BIT_ATI : glext.h
  • GL_ABGR_EXT : glext.h
  • GL_ACTIVE_STENCIL_FACE_EXT : glext.h
  • GL_ACTIVE_TEXTURE : glext.h
  • GL_ACTIVE_TEXTURE_ARB : glext.h
  • GL_ACTIVE_VERTEX_UNITS_ARB : glext.h
  • GL_ADD_ATI : glext.h
  • GL_ADD_SIGNED : glext.h
  • GL_ADD_SIGNED_ARB : glext.h
  • GL_ADD_SIGNED_EXT : glext.h
  • GL_ALIASED_LINE_WIDTH_RANGE : glext.h
  • GL_ALIASED_POINT_SIZE_RANGE : glext.h
  • GL_ALL_COMPLETED_NV : glext.h
  • GL_ALLOW_DRAW_FRG_HINT_PGI : glext.h
  • GL_ALLOW_DRAW_MEM_HINT_PGI : glext.h
  • GL_ALLOW_DRAW_OBJ_HINT_PGI : glext.h
  • GL_ALLOW_DRAW_WIN_HINT_PGI : glext.h
  • GL_ALPHA12_EXT : glext.h
  • GL_ALPHA16_EXT : glext.h
  • GL_ALPHA4_EXT : glext.h
  • GL_ALPHA8_EXT : glext.h
  • GL_ALPHA_FLOAT16_ATI : glext.h
  • GL_ALPHA_FLOAT32_ATI : glext.h
  • GL_ALPHA_MAX_CLAMP_INGR : glext.h
  • GL_ALPHA_MAX_SGIX : glext.h
  • GL_ALPHA_MIN_CLAMP_INGR : glext.h
  • GL_ALPHA_MIN_SGIX : glext.h
  • GL_ALWAYS_FAST_HINT_PGI : glext.h
  • GL_ALWAYS_SOFT_HINT_PGI : glext.h
  • GL_APPLE_client_storage : glext.h
  • GL_APPLE_element_array : glext.h
  • GL_APPLE_fence : glext.h
  • GL_APPLE_specular_vector : glext.h
  • GL_APPLE_transform_hint : glext.h
  • GL_APPLE_vertex_array_object : glext.h
  • GL_APPLE_vertex_array_range : glext.h
  • GL_APPLE_ycbcr_422 : glext.h
  • GL_ARB_depth_texture : glext.h
  • GL_ARB_fragment_program : glext.h
  • GL_ARB_matrix_palette : glext.h
  • GL_ARB_multisample : glext.h
  • GL_ARB_multitexture : glext.h
  • GL_ARB_point_parameters : glext.h
  • GL_ARB_shadow : glext.h
  • GL_ARB_shadow_ambient : glext.h
  • GL_ARB_texture_border_clamp : glext.h
  • GL_ARB_texture_compression : glext.h
  • GL_ARB_texture_cube_map : glext.h
  • GL_ARB_texture_env_add : glext.h
  • GL_ARB_texture_env_combine : glext.h
  • GL_ARB_texture_env_crossbar : glext.h
  • GL_ARB_texture_env_dot3 : glext.h
  • GL_ARB_texture_mirror_repeat : glext.h
  • GL_ARB_transpose_matrix : glext.h
  • GL_ARB_vertex_blend : glext.h
  • GL_ARB_vertex_buffer_object : glext.h
  • GL_ARB_vertex_program : glext.h
  • GL_ARB_window_pos : glext.h
  • GL_ARRAY_BUFFER_ARB : glext.h
  • GL_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_ARRAY_ELEMENT_LOCK_COUNT_EXT : glext.h
  • GL_ARRAY_ELEMENT_LOCK_FIRST_EXT : glext.h
  • GL_ARRAY_OBJECT_BUFFER_ATI : glext.h
  • GL_ARRAY_OBJECT_OFFSET_ATI : glext.h
  • GL_ASYNC_DRAW_PIXELS_SGIX : glext.h
  • GL_ASYNC_HISTOGRAM_SGIX : glext.h
  • GL_ASYNC_MARKER_SGIX : glext.h
  • GL_ASYNC_READ_PIXELS_SGIX : glext.h
  • GL_ASYNC_TEX_IMAGE_SGIX : glext.h
  • GL_ATI_draw_buffers : glext.h
  • GL_ATI_element_array : glext.h
  • GL_ATI_envmap_bumpmap : glext.h
  • GL_ATI_fragment_shader : glext.h
  • GL_ATI_map_object_buffer : glext.h
  • GL_ATI_pn_triangles : glext.h
  • GL_ATI_separate_stencil : glext.h
  • GL_ATI_text_fragment_shader : glext.h
  • GL_ATI_texture_env_combine3 : glext.h
  • GL_ATI_texture_float : glext.h
  • GL_ATI_texture_mirror_once : glext.h
  • GL_ATI_vertex_array_object : glext.h
  • GL_ATI_vertex_attrib_array_object : glext.h
  • GL_ATI_vertex_streams : glext.h
  • GL_ATTENUATION_EXT : glext.h
  • GL_ATTRIB_ARRAY_POINTER_NV : glext.h
  • GL_ATTRIB_ARRAY_SIZE_NV : glext.h
  • GL_ATTRIB_ARRAY_STRIDE_NV : glext.h
  • GL_ATTRIB_ARRAY_TYPE_NV : glext.h
  • GL_AVERAGE_EXT : glext.h
  • GL_AVERAGE_HP : glext.h
  • GL_BACK_NORMALS_HINT_PGI : glext.h
  • GL_BGR : glext.h
  • GL_BGR_EXT : glext.h
  • GL_BGRA : glext.h
  • GL_BGRA_EXT : glext.h
  • GL_BIAS_BIT_ATI : glext.h
  • GL_BIAS_BY_NEGATIVE_ONE_HALF_NV : glext.h
  • GL_BINORMAL_ARRAY_EXT : glext.h
  • GL_BINORMAL_ARRAY_POINTER_EXT : glext.h
  • GL_BINORMAL_ARRAY_STRIDE_EXT : glext.h
  • GL_BINORMAL_ARRAY_TYPE_EXT : glext.h
  • GL_BLEND_COLOR : glext.h
  • GL_BLEND_COLOR_EXT : glext.h
  • GL_BLEND_DST_ALPHA : glext.h
  • GL_BLEND_DST_ALPHA_EXT : glext.h
  • GL_BLEND_DST_RGB : glext.h
  • GL_BLEND_DST_RGB_EXT : glext.h
  • GL_BLEND_EQUATION : glext.h
  • GL_BLEND_EQUATION_EXT : glext.h
  • GL_BLEND_SRC_ALPHA : glext.h
  • GL_BLEND_SRC_ALPHA_EXT : glext.h
  • GL_BLEND_SRC_RGB : glext.h
  • GL_BLEND_SRC_RGB_EXT : glext.h
  • GL_BLUE_BIT_ATI : glext.h
  • GL_BLUE_MAX_CLAMP_INGR : glext.h
  • GL_BLUE_MIN_CLAMP_INGR : glext.h
  • GL_BUFFER_ACCESS_ARB : glext.h
  • GL_BUFFER_MAP_POINTER_ARB : glext.h
  • GL_BUFFER_MAPPED_ARB : glext.h
  • GL_BUFFER_SIZE_ARB : glext.h
  • GL_BUFFER_USAGE_ARB : glext.h
  • GL_BUMP_ENVMAP_ATI : glext.h
  • GL_BUMP_NUM_TEX_UNITS_ATI : glext.h
  • GL_BUMP_ROT_MATRIX_ATI : glext.h
  • GL_BUMP_ROT_MATRIX_SIZE_ATI : glext.h
  • GL_BUMP_TARGET_ATI : glext.h
  • GL_BUMP_TEX_UNITS_ATI : glext.h
  • GL_CALLIGRAPHIC_FRAGMENT_SGIX : glext.h
  • GL_CLAMP_TO_BORDER : glext.h
  • GL_CLAMP_TO_BORDER_ARB : glext.h
  • GL_CLAMP_TO_BORDER_SGIS : glext.h
  • GL_CLAMP_TO_EDGE : glext.h
  • GL_CLAMP_TO_EDGE_SGIS : glext.h
  • GL_CLIENT_ACTIVE_TEXTURE : glext.h
  • GL_CLIENT_ACTIVE_TEXTURE_ARB : glext.h
  • GL_CLIP_FAR_HINT_PGI : glext.h
  • GL_CLIP_NEAR_HINT_PGI : glext.h
  • GL_CLIP_VOLUME_CLIPPING_HINT_EXT : glext.h
  • GL_CMYK_EXT : glext.h
  • GL_CMYKA_EXT : glext.h
  • GL_CND0_ATI : glext.h
  • GL_CND_ATI : glext.h
  • GL_COLOR3_BIT_PGI : glext.h
  • GL_COLOR4_BIT_PGI : glext.h
  • GL_COLOR_ALPHA_PAIRING_ATI : glext.h
  • GL_COLOR_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_COLOR_ARRAY_COUNT_EXT : glext.h
  • GL_COLOR_ARRAY_EXT : glext.h
  • GL_COLOR_ARRAY_LIST_IBM : glext.h
  • GL_COLOR_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL : glext.h
  • GL_COLOR_ARRAY_POINTER_EXT : glext.h
  • GL_COLOR_ARRAY_SIZE_EXT : glext.h
  • GL_COLOR_ARRAY_STRIDE_EXT : glext.h
  • GL_COLOR_ARRAY_TYPE_EXT : glext.h
  • GL_COLOR_INDEX12_EXT : glext.h
  • GL_COLOR_INDEX16_EXT : glext.h
  • GL_COLOR_INDEX1_EXT : glext.h
  • GL_COLOR_INDEX2_EXT : glext.h
  • GL_COLOR_INDEX4_EXT : glext.h
  • GL_COLOR_INDEX8_EXT : glext.h
  • GL_COLOR_MATRIX : glext.h
  • GL_COLOR_MATRIX_SGI : glext.h
  • GL_COLOR_MATRIX_STACK_DEPTH : glext.h
  • GL_COLOR_MATRIX_STACK_DEPTH_SGI : glext.h
  • GL_COLOR_SUM : glext.h
  • GL_COLOR_SUM_ARB : glext.h
  • GL_COLOR_SUM_CLAMP_NV : glext.h
  • GL_COLOR_SUM_EXT : glext.h
  • GL_COLOR_TABLE : glext.h
  • GL_COLOR_TABLE_ALPHA_SIZE : glext.h
  • GL_COLOR_TABLE_ALPHA_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_BIAS : glext.h
  • GL_COLOR_TABLE_BIAS_SGI : glext.h
  • GL_COLOR_TABLE_BLUE_SIZE : glext.h
  • GL_COLOR_TABLE_BLUE_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_FORMAT : glext.h
  • GL_COLOR_TABLE_FORMAT_SGI : glext.h
  • GL_COLOR_TABLE_GREEN_SIZE : glext.h
  • GL_COLOR_TABLE_GREEN_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_INTENSITY_SIZE : glext.h
  • GL_COLOR_TABLE_INTENSITY_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_LUMINANCE_SIZE : glext.h
  • GL_COLOR_TABLE_LUMINANCE_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_RED_SIZE : glext.h
  • GL_COLOR_TABLE_RED_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_SCALE : glext.h
  • GL_COLOR_TABLE_SCALE_SGI : glext.h
  • GL_COLOR_TABLE_SGI : glext.h
  • GL_COLOR_TABLE_WIDTH : glext.h
  • GL_COLOR_TABLE_WIDTH_SGI : glext.h
  • GL_COMBINE : glext.h
  • GL_COMBINE4_NV : glext.h
  • GL_COMBINE_ALPHA : glext.h
  • GL_COMBINE_ALPHA_ARB : glext.h
  • GL_COMBINE_ALPHA_EXT : glext.h
  • GL_COMBINE_ARB : glext.h
  • GL_COMBINE_EXT : glext.h
  • GL_COMBINE_RGB : glext.h
  • GL_COMBINE_RGB_ARB : glext.h
  • GL_COMBINE_RGB_EXT : glext.h
  • GL_COMBINER0_NV : glext.h
  • GL_COMBINER1_NV : glext.h
  • GL_COMBINER2_NV : glext.h
  • GL_COMBINER3_NV : glext.h
  • GL_COMBINER4_NV : glext.h
  • GL_COMBINER5_NV : glext.h
  • GL_COMBINER6_NV : glext.h
  • GL_COMBINER7_NV : glext.h
  • GL_COMBINER_AB_DOT_PRODUCT_NV : glext.h
  • GL_COMBINER_AB_OUTPUT_NV : glext.h
  • GL_COMBINER_BIAS_NV : glext.h
  • GL_COMBINER_CD_DOT_PRODUCT_NV : glext.h
  • GL_COMBINER_CD_OUTPUT_NV : glext.h
  • GL_COMBINER_COMPONENT_USAGE_NV : glext.h
  • GL_COMBINER_INPUT_NV : glext.h
  • GL_COMBINER_MAPPING_NV : glext.h
  • GL_COMBINER_MUX_SUM_NV : glext.h
  • GL_COMBINER_SCALE_NV : glext.h
  • GL_COMBINER_SUM_OUTPUT_NV : glext.h
  • GL_COMP_BIT_ATI : glext.h
  • GL_COMPARE_R_TO_TEXTURE : glext.h
  • GL_COMPARE_R_TO_TEXTURE_ARB : glext.h
  • GL_COMPRESSED_ALPHA : glext.h
  • GL_COMPRESSED_ALPHA_ARB : glext.h
  • GL_COMPRESSED_INTENSITY : glext.h
  • GL_COMPRESSED_INTENSITY_ARB : glext.h
  • GL_COMPRESSED_LUMINANCE : glext.h
  • GL_COMPRESSED_LUMINANCE_ALPHA : glext.h
  • GL_COMPRESSED_LUMINANCE_ALPHA_ARB : glext.h
  • GL_COMPRESSED_LUMINANCE_ARB : glext.h
  • GL_COMPRESSED_RGB : glext.h
  • GL_COMPRESSED_RGB_ARB : glext.h
  • GL_COMPRESSED_RGB_FXT1_3DFX : glext.h
  • GL_COMPRESSED_RGB_S3TC_DXT1_EXT : glext.h
  • GL_COMPRESSED_RGBA : glext.h
  • GL_COMPRESSED_RGBA_ARB : glext.h
  • GL_COMPRESSED_RGBA_FXT1_3DFX : glext.h
  • GL_COMPRESSED_RGBA_S3TC_DXT1_EXT : glext.h
  • GL_COMPRESSED_RGBA_S3TC_DXT3_EXT : glext.h
  • GL_COMPRESSED_RGBA_S3TC_DXT5_EXT : glext.h
  • GL_COMPRESSED_TEXTURE_FORMATS : glext.h
  • GL_COMPRESSED_TEXTURE_FORMATS_ARB : glext.h
  • GL_CON_0_ATI : glext.h
  • GL_CON_10_ATI : glext.h
  • GL_CON_11_ATI : glext.h
  • GL_CON_12_ATI : glext.h
  • GL_CON_13_ATI : glext.h
  • GL_CON_14_ATI : glext.h
  • GL_CON_15_ATI : glext.h
  • GL_CON_16_ATI : glext.h
  • GL_CON_17_ATI : glext.h
  • GL_CON_18_ATI : glext.h
  • GL_CON_19_ATI : glext.h
  • GL_CON_1_ATI : glext.h
  • GL_CON_20_ATI : glext.h
  • GL_CON_21_ATI : glext.h
  • GL_CON_22_ATI : glext.h
  • GL_CON_23_ATI : glext.h
  • GL_CON_24_ATI : glext.h
  • GL_CON_25_ATI : glext.h
  • GL_CON_26_ATI : glext.h
  • GL_CON_27_ATI : glext.h
  • GL_CON_28_ATI : glext.h
  • GL_CON_29_ATI : glext.h
  • GL_CON_2_ATI : glext.h
  • GL_CON_30_ATI : glext.h
  • GL_CON_31_ATI : glext.h
  • GL_CON_3_ATI : glext.h
  • GL_CON_4_ATI : glext.h
  • GL_CON_5_ATI : glext.h
  • GL_CON_6_ATI : glext.h
  • GL_CON_7_ATI : glext.h
  • GL_CON_8_ATI : glext.h
  • GL_CON_9_ATI : glext.h
  • GL_CONSERVE_MEMORY_HINT_PGI : glext.h
  • GL_CONST_EYE_NV : glext.h
  • GL_CONSTANT : glext.h
  • GL_CONSTANT_ALPHA : glext.h
  • GL_CONSTANT_ALPHA_EXT : glext.h
  • GL_CONSTANT_ARB : glext.h
  • GL_CONSTANT_BORDER : glext.h
  • GL_CONSTANT_BORDER_HP : glext.h
  • GL_CONSTANT_COLOR : glext.h
  • GL_CONSTANT_COLOR0_NV : glext.h
  • GL_CONSTANT_COLOR1_NV : glext.h
  • GL_CONSTANT_COLOR_EXT : glext.h
  • GL_CONSTANT_EXT : glext.h
  • GL_CONVOLUTION_1D : glext.h
  • GL_CONVOLUTION_1D_EXT : glext.h
  • GL_CONVOLUTION_2D : glext.h
  • GL_CONVOLUTION_2D_EXT : glext.h
  • GL_CONVOLUTION_BORDER_COLOR : glext.h
  • GL_CONVOLUTION_BORDER_COLOR_HP : glext.h
  • GL_CONVOLUTION_BORDER_MODE : glext.h
  • GL_CONVOLUTION_BORDER_MODE_EXT : glext.h
  • GL_CONVOLUTION_FILTER_BIAS : glext.h
  • GL_CONVOLUTION_FILTER_BIAS_EXT : glext.h
  • GL_CONVOLUTION_FILTER_SCALE : glext.h
  • GL_CONVOLUTION_FILTER_SCALE_EXT : glext.h
  • GL_CONVOLUTION_FORMAT : glext.h
  • GL_CONVOLUTION_FORMAT_EXT : glext.h
  • GL_CONVOLUTION_HEIGHT : glext.h
  • GL_CONVOLUTION_HEIGHT_EXT : glext.h
  • GL_CONVOLUTION_HINT_SGIX : glext.h
  • GL_CONVOLUTION_WIDTH : glext.h
  • GL_CONVOLUTION_WIDTH_EXT : glext.h
  • GL_COORD_REPLACE_NV : glext.h
  • GL_CUBIC_EXT : glext.h
  • GL_CUBIC_HP : glext.h
  • GL_CULL_FRAGMENT_NV : glext.h
  • GL_CULL_MODES_NV : glext.h
  • GL_CULL_VERTEX_EXT : glext.h
  • GL_CULL_VERTEX_EYE_POSITION_EXT : glext.h
  • GL_CULL_VERTEX_IBM : glext.h
  • GL_CULL_VERTEX_OBJECT_POSITION_EXT : glext.h
  • GL_CURRENT_ATTRIB_NV : glext.h
  • GL_CURRENT_BINORMAL_EXT : glext.h
  • GL_CURRENT_FOG_COORDINATE : glext.h
  • GL_CURRENT_FOG_COORDINATE_EXT : glext.h
  • GL_CURRENT_MATRIX_ARB : glext.h
  • GL_CURRENT_MATRIX_INDEX_ARB : glext.h
  • GL_CURRENT_MATRIX_NV : glext.h
  • GL_CURRENT_MATRIX_STACK_DEPTH_ARB : glext.h
  • GL_CURRENT_MATRIX_STACK_DEPTH_NV : glext.h
  • GL_CURRENT_OCCLUSION_QUERY_ID_NV : glext.h
  • GL_CURRENT_PALETTE_MATRIX_ARB : glext.h
  • GL_CURRENT_RASTER_NORMAL_SGIX : glext.h
  • GL_CURRENT_SECONDARY_COLOR : glext.h
  • GL_CURRENT_SECONDARY_COLOR_EXT : glext.h
  • GL_CURRENT_TANGENT_EXT : glext.h
  • GL_CURRENT_VERTEX_ATTRIB_ARB : glext.h
  • GL_CURRENT_VERTEX_EXT : glext.h
  • GL_CURRENT_VERTEX_WEIGHT_EXT : glext.h
  • GL_CURRENT_WEIGHT_ARB : glext.h
  • GL_DECR_WRAP : glext.h
  • GL_DECR_WRAP_EXT : glext.h
  • GL_DEFORMATIONS_MASK_SGIX : glext.h
  • GL_DEPENDENT_AR_TEXTURE_2D_NV : glext.h
  • GL_DEPENDENT_GB_TEXTURE_2D_NV : glext.h
  • GL_DEPENDENT_HILO_TEXTURE_2D_NV : glext.h
  • GL_DEPENDENT_RGB_TEXTURE_3D_NV : glext.h
  • GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV : glext.h
  • GL_DEPTH_CLAMP_NV : glext.h
  • GL_DEPTH_COMPONENT16 : glext.h
  • GL_DEPTH_COMPONENT16_ARB : glext.h
  • GL_DEPTH_COMPONENT16_SGIX : glext.h
  • GL_DEPTH_COMPONENT24 : glext.h
  • GL_DEPTH_COMPONENT24_ARB : glext.h
  • GL_DEPTH_COMPONENT24_SGIX : glext.h
  • GL_DEPTH_COMPONENT32 : glext.h
  • GL_DEPTH_COMPONENT32_ARB : glext.h
  • GL_DEPTH_COMPONENT32_SGIX : glext.h
  • GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX : glext.h
  • GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX : glext.h
  • GL_DEPTH_PASS_INSTRUMENT_SGIX : glext.h
  • GL_DEPTH_STENCIL_NV : glext.h
  • GL_DEPTH_STENCIL_TO_BGRA_NV : glext.h
  • GL_DEPTH_STENCIL_TO_RGBA_NV : glext.h
  • GL_DEPTH_TEXTURE_MODE : glext.h
  • GL_DEPTH_TEXTURE_MODE_ARB : glext.h
  • GL_DETAIL_TEXTURE_2D_BINDING_SGIS : glext.h
  • GL_DETAIL_TEXTURE_2D_SGIS : glext.h
  • GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS : glext.h
  • GL_DETAIL_TEXTURE_LEVEL_SGIS : glext.h
  • GL_DETAIL_TEXTURE_MODE_SGIS : glext.h
  • GL_DISCARD_ATI : glext.h
  • GL_DISCARD_NV : glext.h
  • GL_DISTANCE_ATTENUATION_EXT : glext.h
  • GL_DISTANCE_ATTENUATION_SGIS : glext.h
  • GL_DOT2_ADD_ATI : glext.h
  • GL_DOT3_ATI : glext.h
  • GL_DOT3_RGB : glext.h
  • GL_DOT3_RGB_ARB : glext.h
  • GL_DOT3_RGB_EXT : glext.h
  • GL_DOT3_RGBA : glext.h
  • GL_DOT3_RGBA_ARB : glext.h
  • GL_DOT3_RGBA_EXT : glext.h
  • GL_DOT4_ATI : glext.h
  • GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV : glext.h
  • GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV : glext.h
  • GL_DOT_PRODUCT_DEPTH_REPLACE_NV : glext.h
  • GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV : glext.h
  • GL_DOT_PRODUCT_NV : glext.h
  • GL_DOT_PRODUCT_PASS_THROUGH_NV : glext.h
  • GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_1D_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_2D_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_3D_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV : glext.h
  • GL_DRAW_BUFFER0_ATI : glext.h
  • GL_DRAW_BUFFER10_ATI : glext.h
  • GL_DRAW_BUFFER11_ATI : glext.h
  • GL_DRAW_BUFFER12_ATI : glext.h
  • GL_DRAW_BUFFER13_ATI : glext.h
  • GL_DRAW_BUFFER14_ATI : glext.h
  • GL_DRAW_BUFFER15_ATI : glext.h
  • GL_DRAW_BUFFER1_ATI : glext.h
  • GL_DRAW_BUFFER2_ATI : glext.h
  • GL_DRAW_BUFFER3_ATI : glext.h
  • GL_DRAW_BUFFER4_ATI : glext.h
  • GL_DRAW_BUFFER5_ATI : glext.h
  • GL_DRAW_BUFFER6_ATI : glext.h
  • GL_DRAW_BUFFER7_ATI : glext.h
  • GL_DRAW_BUFFER8_ATI : glext.h
  • GL_DRAW_BUFFER9_ATI : glext.h
  • GL_DRAW_PIXELS_APPLE : glext.h
  • GL_DS_BIAS_NV : glext.h
  • GL_DS_SCALE_NV : glext.h
  • GL_DSDT8_MAG8_INTENSITY8_NV : glext.h
  • GL_DSDT8_MAG8_NV : glext.h
  • GL_DSDT8_NV : glext.h
  • GL_DSDT_MAG_INTENSITY_NV : glext.h
  • GL_DSDT_MAG_NV : glext.h
  • GL_DSDT_MAG_VIB_NV : glext.h
  • GL_DSDT_NV : glext.h
  • GL_DT_BIAS_NV : glext.h
  • GL_DT_SCALE_NV : glext.h
  • GL_DU8DV8_ATI : glext.h
  • GL_DUAL_ALPHA12_SGIS : glext.h
  • GL_DUAL_ALPHA16_SGIS : glext.h
  • GL_DUAL_ALPHA4_SGIS : glext.h
  • GL_DUAL_ALPHA8_SGIS : glext.h
  • GL_DUAL_INTENSITY12_SGIS : glext.h
  • GL_DUAL_INTENSITY16_SGIS : glext.h
  • GL_DUAL_INTENSITY4_SGIS : glext.h
  • GL_DUAL_INTENSITY8_SGIS : glext.h
  • GL_DUAL_LUMINANCE12_SGIS : glext.h
  • GL_DUAL_LUMINANCE16_SGIS : glext.h
  • GL_DUAL_LUMINANCE4_SGIS : glext.h
  • GL_DUAL_LUMINANCE8_SGIS : glext.h
  • GL_DUAL_LUMINANCE_ALPHA4_SGIS : glext.h
  • GL_DUAL_LUMINANCE_ALPHA8_SGIS : glext.h
  • GL_DUAL_TEXTURE_SELECT_SGIS : glext.h
  • GL_DUDV_ATI : glext.h
  • GL_DYNAMIC_ATI : glext.h
  • GL_DYNAMIC_COPY_ARB : glext.h
  • GL_DYNAMIC_DRAW_ARB : glext.h
  • GL_DYNAMIC_READ_ARB : glext.h
  • GL_E_TIMES_F_NV : glext.h
  • GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_EDGE_FLAG_ARRAY_COUNT_EXT : glext.h
  • GL_EDGE_FLAG_ARRAY_EXT : glext.h
  • GL_EDGE_FLAG_ARRAY_LIST_IBM : glext.h
  • GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_EDGE_FLAG_ARRAY_POINTER_EXT : glext.h
  • GL_EDGE_FLAG_ARRAY_STRIDE_EXT : glext.h
  • GL_EDGEFLAG_BIT_PGI : glext.h
  • GL_EIGHTH_BIT_ATI : glext.h
  • GL_ELEMENT_ARRAY_APPLE : glext.h
  • GL_ELEMENT_ARRAY_ATI : glext.h
  • GL_ELEMENT_ARRAY_BUFFER_ARB : glext.h
  • GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_ELEMENT_ARRAY_POINTER_APPLE : glext.h
  • GL_ELEMENT_ARRAY_POINTER_ATI : glext.h
  • GL_ELEMENT_ARRAY_TYPE_APPLE : glext.h
  • GL_ELEMENT_ARRAY_TYPE_ATI : glext.h
  • GL_EMBOSS_CONSTANT_NV : glext.h
  • GL_EMBOSS_LIGHT_NV : glext.h
  • GL_EMBOSS_MAP_NV : glext.h
  • GL_EVAL_2D_NV : glext.h
  • GL_EVAL_FRACTIONAL_TESSELLATION_NV : glext.h
  • GL_EVAL_TRIANGULAR_2D_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB0_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB10_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB11_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB12_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB13_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB14_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB15_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB1_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB2_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB3_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB4_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB5_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB6_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB7_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB8_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB9_NV : glext.h
  • GL_EXPAND_NEGATE_NV : glext.h
  • GL_EXPAND_NORMAL_NV : glext.h
  • GL_EXT_422_pixels : glext.h
  • GL_EXT_abgr : glext.h
  • GL_EXT_bgra : glext.h
  • GL_EXT_blend_color : glext.h
  • GL_EXT_blend_func_separate : glext.h
  • GL_EXT_blend_logic_op : glext.h
  • GL_EXT_blend_minmax : glext.h
  • GL_EXT_blend_subtract : glext.h
  • GL_EXT_clip_volume_hint : glext.h
  • GL_EXT_cmyka : glext.h
  • GL_EXT_color_matrix : glext.h
  • GL_EXT_color_subtable : glext.h
  • GL_EXT_compiled_vertex_array : glext.h
  • GL_EXT_convolution : glext.h
  • GL_EXT_coordinate_frame : glext.h
  • GL_EXT_copy_texture : glext.h
  • GL_EXT_cull_vertex : glext.h
  • GL_EXT_draw_range_elements : glext.h
  • GL_EXT_fog_coord : glext.h
  • GL_EXT_histogram : glext.h
  • GL_EXT_index_array_formats : glext.h
  • GL_EXT_index_func : glext.h
  • GL_EXT_index_material : glext.h
  • GL_EXT_index_texture : glext.h
  • GL_EXT_light_texture : glext.h
  • GL_EXT_misc_attribute : glext.h
  • GL_EXT_multi_draw_arrays : glext.h
  • GL_EXT_multisample : glext.h
  • GL_EXT_packed_pixels : glext.h
  • GL_EXT_paletted_texture : glext.h
  • GL_EXT_pixel_transform : glext.h
  • GL_EXT_pixel_transform_color_table : glext.h
  • GL_EXT_point_parameters : glext.h
  • GL_EXT_polygon_offset : glext.h
  • GL_EXT_rescale_normal : glext.h
  • GL_EXT_secondary_color : glext.h
  • GL_EXT_separate_specular_color : glext.h
  • GL_EXT_shadow_funcs : glext.h
  • GL_EXT_shared_texture_palette : glext.h
  • GL_EXT_stencil_two_side : glext.h
  • GL_EXT_stencil_wrap : glext.h
  • GL_EXT_subtexture : glext.h
  • GL_EXT_texture : glext.h
  • GL_EXT_texture3D : glext.h
  • GL_EXT_texture_env_add : glext.h
  • GL_EXT_texture_env_combine : glext.h
  • GL_EXT_texture_env_dot3 : glext.h
  • GL_EXT_texture_filter_anisotropic : glext.h
  • GL_EXT_texture_lod_bias : glext.h
  • GL_EXT_texture_object : glext.h
  • GL_EXT_texture_perturb_normal : glext.h
  • GL_EXT_vertex_array : glext.h
  • GL_EXT_vertex_shader : glext.h
  • GL_EXT_vertex_weighting : glext.h
  • GL_EYE_DISTANCE_TO_LINE_SGIS : glext.h
  • GL_EYE_DISTANCE_TO_POINT_SGIS : glext.h
  • GL_EYE_LINE_SGIS : glext.h
  • GL_EYE_PLANE_ABSOLUTE_NV : glext.h
  • GL_EYE_POINT_SGIS : glext.h
  • GL_EYE_RADIAL_NV : glext.h
  • GL_FENCE_APPLE : glext.h
  • GL_FENCE_CONDITION_NV : glext.h
  • GL_FENCE_STATUS_NV : glext.h
  • GL_FILTER4_SGIS : glext.h
  • GL_FLOAT_CLEAR_COLOR_VALUE_NV : glext.h
  • GL_FLOAT_R16_NV : glext.h
  • GL_FLOAT_R32_NV : glext.h
  • GL_FLOAT_R_NV : glext.h
  • GL_FLOAT_RG16_NV : glext.h
  • GL_FLOAT_RG32_NV : glext.h
  • GL_FLOAT_RG_NV : glext.h
  • GL_FLOAT_RGB16_NV : glext.h
  • GL_FLOAT_RGB32_NV : glext.h
  • GL_FLOAT_RGB_NV : glext.h
  • GL_FLOAT_RGBA16_NV : glext.h
  • GL_FLOAT_RGBA32_NV : glext.h
  • GL_FLOAT_RGBA_MODE_NV : glext.h
  • GL_FLOAT_RGBA_NV : glext.h
  • GL_FOG_COORDINATE : glext.h
  • GL_FOG_COORDINATE_ARRAY : glext.h
  • GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_FOG_COORDINATE_ARRAY_EXT : glext.h
  • GL_FOG_COORDINATE_ARRAY_LIST_IBM : glext.h
  • GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_FOG_COORDINATE_ARRAY_POINTER : glext.h
  • GL_FOG_COORDINATE_ARRAY_POINTER_EXT : glext.h
  • GL_FOG_COORDINATE_ARRAY_STRIDE : glext.h
  • GL_FOG_COORDINATE_ARRAY_STRIDE_EXT : glext.h
  • GL_FOG_COORDINATE_ARRAY_TYPE : glext.h
  • GL_FOG_COORDINATE_ARRAY_TYPE_EXT : glext.h
  • GL_FOG_COORDINATE_EXT : glext.h
  • GL_FOG_COORDINATE_SOURCE : glext.h
  • GL_FOG_COORDINATE_SOURCE_EXT : glext.h
  • GL_FOG_DISTANCE_MODE_NV : glext.h
  • GL_FOG_FUNC_POINTS_SGIS : glext.h
  • GL_FOG_FUNC_SGIS : glext.h
  • GL_FOG_OFFSET_SGIX : glext.h
  • GL_FOG_OFFSET_VALUE_SGIX : glext.h
  • GL_FOG_SCALE_SGIX : glext.h
  • GL_FOG_SCALE_VALUE_SGIX : glext.h
  • GL_FOG_SPECULAR_TEXTURE_WIN : glext.h
  • GL_FORCE_BLUE_TO_ONE_NV : glext.h
  • GL_FORMAT_SUBSAMPLE_244_244_OML : glext.h
  • GL_FORMAT_SUBSAMPLE_24_24_OML : glext.h
  • GL_FRAGMENT_COLOR_EXT : glext.h
  • GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX : glext.h
  • GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX : glext.h
  • GL_FRAGMENT_COLOR_MATERIAL_SGIX : glext.h
  • GL_FRAGMENT_DEPTH : glext.h
  • GL_FRAGMENT_DEPTH_EXT : glext.h
  • GL_FRAGMENT_LIGHT0_SGIX : glext.h
  • GL_FRAGMENT_LIGHT1_SGIX : glext.h
  • GL_FRAGMENT_LIGHT2_SGIX : glext.h
  • GL_FRAGMENT_LIGHT3_SGIX : glext.h
  • GL_FRAGMENT_LIGHT4_SGIX : glext.h
  • GL_FRAGMENT_LIGHT5_SGIX : glext.h
  • GL_FRAGMENT_LIGHT6_SGIX : glext.h
  • GL_FRAGMENT_LIGHT7_SGIX : glext.h
  • GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX : glext.h
  • GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX : glext.h
  • GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX : glext.h
  • GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX : glext.h
  • GL_FRAGMENT_LIGHTING_SGIX : glext.h
  • GL_FRAGMENT_MATERIAL_EXT : glext.h
  • GL_FRAGMENT_NORMAL_EXT : glext.h
  • GL_FRAGMENT_PROGRAM_ARB : glext.h
  • GL_FRAGMENT_PROGRAM_BINDING_NV : glext.h
  • GL_FRAGMENT_PROGRAM_NV : glext.h
  • GL_FRAGMENT_SHADER_ATI : glext.h
  • GL_FRAMEZOOM_FACTOR_SGIX : glext.h
  • GL_FRAMEZOOM_SGIX : glext.h
  • GL_FULL_RANGE_EXT : glext.h
  • GL_FULL_STIPPLE_HINT_PGI : glext.h
  • GL_FUNC_ADD : glext.h
  • GL_FUNC_ADD_EXT : glext.h
  • GL_FUNC_REVERSE_SUBTRACT : glext.h
  • GL_FUNC_REVERSE_SUBTRACT_EXT : glext.h
  • GL_FUNC_SUBTRACT : glext.h
  • GL_FUNC_SUBTRACT_EXT : glext.h
  • GL_GENERATE_MIPMAP : glext.h
  • GL_GENERATE_MIPMAP_HINT : glext.h
  • GL_GENERATE_MIPMAP_HINT_SGIS : glext.h
  • GL_GENERATE_MIPMAP_SGIS : glext.h
  • GL_GEOMETRY_DEFORMATION_BIT_SGIX : glext.h
  • GL_GEOMETRY_DEFORMATION_SGIX : glext.h
  • GL_GLEXT_VERSION : glext.h
  • GL_GLOBAL_ALPHA_FACTOR_SUN : glext.h
  • GL_GLOBAL_ALPHA_SUN : glext.h
  • GL_GREEN_BIT_ATI : glext.h
  • GL_GREEN_MAX_CLAMP_INGR : glext.h
  • GL_GREEN_MIN_CLAMP_INGR : glext.h
  • GL_HALF_BIAS_NEGATE_NV : glext.h
  • GL_HALF_BIAS_NORMAL_NV : glext.h
  • GL_HALF_BIT_ATI : glext.h
  • GL_HALF_FLOAT_NV : glext.h
  • GL_HI_BIAS_NV : glext.h
  • GL_HI_SCALE_NV : glext.h
  • GL_HILO16_NV : glext.h
  • GL_HILO8_NV : glext.h
  • GL_HILO_NV : glext.h
  • GL_HISTOGRAM : glext.h
  • GL_HISTOGRAM_ALPHA_SIZE : glext.h
  • GL_HISTOGRAM_ALPHA_SIZE_EXT : glext.h
  • GL_HISTOGRAM_BLUE_SIZE : glext.h
  • GL_HISTOGRAM_BLUE_SIZE_EXT : glext.h
  • GL_HISTOGRAM_EXT : glext.h
  • GL_HISTOGRAM_FORMAT : glext.h
  • GL_HISTOGRAM_FORMAT_EXT : glext.h
  • GL_HISTOGRAM_GREEN_SIZE : glext.h
  • GL_HISTOGRAM_GREEN_SIZE_EXT : glext.h
  • GL_HISTOGRAM_LUMINANCE_SIZE : glext.h
  • GL_HISTOGRAM_LUMINANCE_SIZE_EXT : glext.h
  • GL_HISTOGRAM_RED_SIZE : glext.h
  • GL_HISTOGRAM_RED_SIZE_EXT : glext.h
  • GL_HISTOGRAM_SINK : glext.h
  • GL_HISTOGRAM_SINK_EXT : glext.h
  • GL_HISTOGRAM_WIDTH : glext.h
  • GL_HISTOGRAM_WIDTH_EXT : glext.h
  • GL_HP_convolution_border_modes : glext.h
  • GL_HP_image_transform : glext.h
  • GL_HP_occlusion_test : glext.h
  • GL_HP_texture_lighting : glext.h
  • GL_IBM_cull_vertex : glext.h
  • GL_IBM_multimode_draw_arrays : glext.h
  • GL_IBM_rasterpos_clip : glext.h
  • GL_IBM_vertex_array_lists : glext.h
  • GL_IDENTITY_NV : glext.h
  • GL_IGNORE_BORDER_HP : glext.h
  • GL_IMAGE_CUBIC_WEIGHT_HP : glext.h
  • GL_IMAGE_MAG_FILTER_HP : glext.h
  • GL_IMAGE_MIN_FILTER_HP : glext.h
  • GL_IMAGE_ROTATE_ANGLE_HP : glext.h
  • GL_IMAGE_ROTATE_ORIGIN_X_HP : glext.h
  • GL_IMAGE_ROTATE_ORIGIN_Y_HP : glext.h
  • GL_IMAGE_SCALE_X_HP : glext.h
  • GL_IMAGE_SCALE_Y_HP : glext.h
  • GL_IMAGE_TRANSFORM_2D_HP : glext.h
  • GL_IMAGE_TRANSLATE_X_HP : glext.h
  • GL_IMAGE_TRANSLATE_Y_HP : glext.h
  • GL_INCR_WRAP : glext.h
  • GL_INCR_WRAP_EXT : glext.h
  • GL_INDEX_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_INDEX_ARRAY_COUNT_EXT : glext.h
  • GL_INDEX_ARRAY_EXT : glext.h
  • GL_INDEX_ARRAY_LIST_IBM : glext.h
  • GL_INDEX_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_INDEX_ARRAY_POINTER_EXT : glext.h
  • GL_INDEX_ARRAY_STRIDE_EXT : glext.h
  • GL_INDEX_ARRAY_TYPE_EXT : glext.h
  • GL_INDEX_BIT_PGI : glext.h
  • GL_INDEX_MATERIAL_EXT : glext.h
  • GL_INDEX_MATERIAL_FACE_EXT : glext.h
  • GL_INDEX_MATERIAL_PARAMETER_EXT : glext.h
  • GL_INDEX_TEST_EXT : glext.h
  • GL_INDEX_TEST_FUNC_EXT : glext.h
  • GL_INDEX_TEST_REF_EXT : glext.h
  • GL_INGR_blend_func_separate : glext.h
  • GL_INGR_color_clamp : glext.h
  • GL_INGR_interlace_read : glext.h
  • GL_INSTRUMENT_BUFFER_POINTER_SGIX : glext.h
  • GL_INSTRUMENT_MEASUREMENTS_SGIX : glext.h
  • GL_INTEL_parallel_arrays : glext.h
  • GL_INTENSITY12_EXT : glext.h
  • GL_INTENSITY16_EXT : glext.h
  • GL_INTENSITY4_EXT : glext.h
  • GL_INTENSITY8_EXT : glext.h
  • GL_INTENSITY_EXT : glext.h
  • GL_INTENSITY_FLOAT16_ATI : glext.h
  • GL_INTENSITY_FLOAT32_ATI : glext.h
  • GL_INTERLACE_OML : glext.h
  • GL_INTERLACE_READ_INGR : glext.h
  • GL_INTERLACE_READ_OML : glext.h
  • GL_INTERLACE_SGIX : glext.h
  • GL_INTERPOLATE : glext.h
  • GL_INTERPOLATE_ARB : glext.h
  • GL_INTERPOLATE_EXT : glext.h
  • GL_INVARIANT_DATATYPE_EXT : glext.h
  • GL_INVARIANT_EXT : glext.h
  • GL_INVARIANT_VALUE_EXT : glext.h
  • GL_INVERSE_NV : glext.h
  • GL_INVERSE_TRANSPOSE_NV : glext.h
  • GL_INVERTED_SCREEN_W_REND : glext.h
  • GL_IR_INSTRUMENT1_SGIX : glext.h
  • GL_IUI_N3F_V2F_EXT : glext.h
  • GL_IUI_N3F_V3F_EXT : glext.h
  • GL_IUI_V2F_EXT : glext.h
  • GL_IUI_V3F_EXT : glext.h
  • GL_LERP_ATI : glext.h
  • GL_LIGHT_ENV_MODE_SGIX : glext.h
  • GL_LIGHT_MODEL_COLOR_CONTROL : glext.h
  • GL_LIGHT_MODEL_COLOR_CONTROL_EXT : glext.h
  • GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE : glext.h
  • GL_LINEAR_CLIPMAP_LINEAR_SGIX : glext.h
  • GL_LINEAR_CLIPMAP_NEAREST_SGIX : glext.h
  • GL_LINEAR_DETAIL_ALPHA_SGIS : glext.h
  • GL_LINEAR_DETAIL_COLOR_SGIS : glext.h
  • GL_LINEAR_DETAIL_SGIS : glext.h
  • GL_LINEAR_SHARPEN_ALPHA_SGIS : glext.h
  • GL_LINEAR_SHARPEN_COLOR_SGIS : glext.h
  • GL_LINEAR_SHARPEN_SGIS : glext.h
  • GL_LIST_PRIORITY_SGIX : glext.h
  • GL_LO_BIAS_NV : glext.h
  • GL_LO_SCALE_NV : glext.h
  • GL_LOCAL_CONSTANT_DATATYPE_EXT : glext.h
  • GL_LOCAL_CONSTANT_EXT : glext.h
  • GL_LOCAL_CONSTANT_VALUE_EXT : glext.h
  • GL_LOCAL_EXT : glext.h
  • GL_LUMINANCE12_ALPHA12_EXT : glext.h
  • GL_LUMINANCE12_ALPHA4_EXT : glext.h
  • GL_LUMINANCE12_EXT : glext.h
  • GL_LUMINANCE16_ALPHA16_EXT : glext.h
  • GL_LUMINANCE16_EXT : glext.h
  • GL_LUMINANCE4_ALPHA4_EXT : glext.h
  • GL_LUMINANCE4_EXT : glext.h
  • GL_LUMINANCE6_ALPHA2_EXT : glext.h
  • GL_LUMINANCE8_ALPHA8_EXT : glext.h
  • GL_LUMINANCE8_EXT : glext.h
  • GL_LUMINANCE_ALPHA_FLOAT16_ATI : glext.h
  • GL_LUMINANCE_ALPHA_FLOAT32_ATI : glext.h
  • GL_LUMINANCE_FLOAT16_ATI : glext.h
  • GL_LUMINANCE_FLOAT32_ATI : glext.h
  • GL_MAD_ATI : glext.h
  • GL_MAGNITUDE_BIAS_NV : glext.h
  • GL_MAGNITUDE_SCALE_NV : glext.h
  • GL_MAP1_BINORMAL_EXT : glext.h
  • GL_MAP1_TANGENT_EXT : glext.h
  • GL_MAP1_VERTEX_ATTRIB0_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB10_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB11_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB12_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB13_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB14_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB15_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB1_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB2_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB3_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB4_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB5_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB6_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB7_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB8_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB9_4_NV : glext.h
  • GL_MAP2_BINORMAL_EXT : glext.h
  • GL_MAP2_TANGENT_EXT : glext.h
  • GL_MAP2_VERTEX_ATTRIB0_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB10_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB11_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB12_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB13_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB14_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB15_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB1_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB2_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB3_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB4_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB5_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB6_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB7_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB8_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB9_4_NV : glext.h
  • GL_MAP_ATTRIB_U_ORDER_NV : glext.h
  • GL_MAP_ATTRIB_V_ORDER_NV : glext.h
  • GL_MAP_TESSELLATION_NV : glext.h
  • GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI : glext.h
  • GL_MAT_AMBIENT_BIT_PGI : glext.h
  • GL_MAT_COLOR_INDEXES_BIT_PGI : glext.h
  • GL_MAT_DIFFUSE_BIT_PGI : glext.h
  • GL_MAT_EMISSION_BIT_PGI : glext.h
  • GL_MAT_SHININESS_BIT_PGI : glext.h
  • GL_MAT_SPECULAR_BIT_PGI : glext.h
  • GL_MATERIAL_SIDE_HINT_PGI : glext.h
  • GL_MATRIX0_ARB : glext.h
  • GL_MATRIX0_NV : glext.h
  • GL_MATRIX10_ARB : glext.h
  • GL_MATRIX11_ARB : glext.h
  • GL_MATRIX12_ARB : glext.h
  • GL_MATRIX13_ARB : glext.h
  • GL_MATRIX14_ARB : glext.h
  • GL_MATRIX15_ARB : glext.h
  • GL_MATRIX16_ARB : glext.h
  • GL_MATRIX17_ARB : glext.h
  • GL_MATRIX18_ARB : glext.h
  • GL_MATRIX19_ARB : glext.h
  • GL_MATRIX1_ARB : glext.h
  • GL_MATRIX1_NV : glext.h
  • GL_MATRIX20_ARB : glext.h
  • GL_MATRIX21_ARB : glext.h
  • GL_MATRIX22_ARB : glext.h
  • GL_MATRIX23_ARB : glext.h
  • GL_MATRIX24_ARB : glext.h
  • GL_MATRIX25_ARB : glext.h
  • GL_MATRIX26_ARB : glext.h
  • GL_MATRIX27_ARB : glext.h
  • GL_MATRIX28_ARB : glext.h
  • GL_MATRIX29_ARB : glext.h
  • GL_MATRIX2_ARB : glext.h
  • GL_MATRIX2_NV : glext.h
  • GL_MATRIX30_ARB : glext.h
  • GL_MATRIX31_ARB : glext.h
  • GL_MATRIX3_ARB : glext.h
  • GL_MATRIX3_NV : glext.h
  • GL_MATRIX4_ARB : glext.h
  • GL_MATRIX4_NV : glext.h
  • GL_MATRIX5_ARB : glext.h
  • GL_MATRIX5_NV : glext.h
  • GL_MATRIX6_ARB : glext.h
  • GL_MATRIX6_NV : glext.h
  • GL_MATRIX7_ARB : glext.h
  • GL_MATRIX7_NV : glext.h
  • GL_MATRIX8_ARB : glext.h
  • GL_MATRIX9_ARB : glext.h
  • GL_MATRIX_EXT : glext.h
  • GL_MATRIX_INDEX_ARRAY_ARB : glext.h
  • GL_MATRIX_INDEX_ARRAY_POINTER_ARB : glext.h
  • GL_MATRIX_INDEX_ARRAY_SIZE_ARB : glext.h
  • GL_MATRIX_INDEX_ARRAY_STRIDE_ARB : glext.h
  • GL_MATRIX_INDEX_ARRAY_TYPE_ARB : glext.h
  • GL_MATRIX_PALETTE_ARB : glext.h
  • GL_MAX : glext.h
  • GL_MAX_3D_TEXTURE_SIZE : glext.h
  • GL_MAX_3D_TEXTURE_SIZE_EXT : glext.h
  • GL_MAX_4D_TEXTURE_SIZE_SGIS : glext.h
  • GL_MAX_ACTIVE_LIGHTS_SGIX : glext.h
  • GL_MAX_ASYNC_DRAW_PIXELS_SGIX : glext.h
  • GL_MAX_ASYNC_HISTOGRAM_SGIX : glext.h
  • GL_MAX_ASYNC_READ_PIXELS_SGIX : glext.h
  • GL_MAX_ASYNC_TEX_IMAGE_SGIX : glext.h
  • GL_MAX_CLIPMAP_DEPTH_SGIX : glext.h
  • GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX : glext.h
  • GL_MAX_COLOR_MATRIX_STACK_DEPTH : glext.h
  • GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI : glext.h
  • GL_MAX_CONVOLUTION_HEIGHT : glext.h
  • GL_MAX_CONVOLUTION_HEIGHT_EXT : glext.h
  • GL_MAX_CONVOLUTION_WIDTH : glext.h
  • GL_MAX_CONVOLUTION_WIDTH_EXT : glext.h
  • GL_MAX_CUBE_MAP_TEXTURE_SIZE : glext.h
  • GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB : glext.h
  • GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT : glext.h
  • GL_MAX_DEFORMATION_ORDER_SGIX : glext.h
  • GL_MAX_DRAW_BUFFERS_ATI : glext.h
  • GL_MAX_ELEMENTS_INDICES : glext.h
  • GL_MAX_ELEMENTS_INDICES_EXT : glext.h
  • GL_MAX_ELEMENTS_VERTICES : glext.h
  • GL_MAX_ELEMENTS_VERTICES_EXT : glext.h
  • GL_MAX_EXT : glext.h
  • GL_MAX_FOG_FUNC_POINTS_SGIS : glext.h
  • GL_MAX_FRAGMENT_LIGHTS_SGIX : glext.h
  • GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV : glext.h
  • GL_MAX_FRAMEZOOM_FACTOR_SGIX : glext.h
  • GL_MAX_GENERAL_COMBINERS_NV : glext.h
  • GL_MAX_MAP_TESSELLATION_NV : glext.h
  • GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT : glext.h
  • GL_MAX_PALETTE_MATRICES_ARB : glext.h
  • GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT : glext.h
  • GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI : glext.h
  • GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB : glext.h
  • GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_ATTRIBS_ARB : glext.h
  • GL_MAX_PROGRAM_ENV_PARAMETERS_ARB : glext.h
  • GL_MAX_PROGRAM_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB : glext.h
  • GL_MAX_PROGRAM_MATRICES_ARB : glext.h
  • GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_PARAMETERS_ARB : glext.h
  • GL_MAX_PROGRAM_TEMPORARIES_ARB : glext.h
  • GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_RATIONAL_EVAL_ORDER_NV : glext.h
  • GL_MAX_RECTANGLE_TEXTURE_SIZE_NV : glext.h
  • GL_MAX_SHININESS_NV : glext.h
  • GL_MAX_SPOT_EXPONENT_NV : glext.h
  • GL_MAX_TEXTURE_COORDS_ARB : glext.h
  • GL_MAX_TEXTURE_COORDS_NV : glext.h
  • GL_MAX_TEXTURE_IMAGE_UNITS_ARB : glext.h
  • GL_MAX_TEXTURE_IMAGE_UNITS_NV : glext.h
  • GL_MAX_TEXTURE_LOD_BIAS : glext.h
  • GL_MAX_TEXTURE_LOD_BIAS_EXT : glext.h
  • GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT : glext.h
  • GL_MAX_TEXTURE_UNITS : glext.h
  • GL_MAX_TEXTURE_UNITS_ARB : glext.h
  • GL_MAX_TRACK_MATRICES_NV : glext.h
  • GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV : glext.h
  • GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV : glext.h
  • GL_MAX_VERTEX_ATTRIBS_ARB : glext.h
  • GL_MAX_VERTEX_HINT_PGI : glext.h
  • GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT : glext.h
  • GL_MAX_VERTEX_SHADER_INVARIANTS_EXT : glext.h
  • GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT : glext.h
  • GL_MAX_VERTEX_SHADER_LOCALS_EXT : glext.h
  • GL_MAX_VERTEX_SHADER_VARIANTS_EXT : glext.h
  • GL_MAX_VERTEX_STREAMS_ATI : glext.h
  • GL_MAX_VERTEX_UNITS_ARB : glext.h
  • GL_MESA_resize_buffers : glext.h
  • GL_MESA_window_pos : glext.h
  • GL_MIN : glext.h
  • GL_MIN_EXT : glext.h
  • GL_MINMAX : glext.h
  • GL_MINMAX_EXT : glext.h
  • GL_MINMAX_FORMAT : glext.h
  • GL_MINMAX_FORMAT_EXT : glext.h
  • GL_MINMAX_SINK : glext.h
  • GL_MINMAX_SINK_EXT : glext.h
  • GL_MIRROR_CLAMP_ATI : glext.h
  • GL_MIRROR_CLAMP_TO_EDGE_ATI : glext.h
  • GL_MIRRORED_REPEAT : glext.h
  • GL_MIRRORED_REPEAT_ARB : glext.h
  • GL_MIRRORED_REPEAT_IBM : glext.h
  • GL_MODELVIEW0_ARB : glext.h
  • GL_MODELVIEW0_EXT : glext.h
  • GL_MODELVIEW0_MATRIX_EXT : glext.h
  • GL_MODELVIEW0_STACK_DEPTH_EXT : glext.h
  • GL_MODELVIEW10_ARB : glext.h
  • GL_MODELVIEW11_ARB : glext.h
  • GL_MODELVIEW12_ARB : glext.h
  • GL_MODELVIEW13_ARB : glext.h
  • GL_MODELVIEW14_ARB : glext.h
  • GL_MODELVIEW15_ARB : glext.h
  • GL_MODELVIEW16_ARB : glext.h
  • GL_MODELVIEW17_ARB : glext.h
  • GL_MODELVIEW18_ARB : glext.h
  • GL_MODELVIEW19_ARB : glext.h
  • GL_MODELVIEW1_ARB : glext.h
  • GL_MODELVIEW1_EXT : glext.h
  • GL_MODELVIEW1_MATRIX_EXT : glext.h
  • GL_MODELVIEW1_STACK_DEPTH_EXT : glext.h
  • GL_MODELVIEW20_ARB : glext.h
  • GL_MODELVIEW21_ARB : glext.h
  • GL_MODELVIEW22_ARB : glext.h
  • GL_MODELVIEW23_ARB : glext.h
  • GL_MODELVIEW24_ARB : glext.h
  • GL_MODELVIEW25_ARB : glext.h
  • GL_MODELVIEW26_ARB : glext.h
  • GL_MODELVIEW27_ARB : glext.h
  • GL_MODELVIEW28_ARB : glext.h
  • GL_MODELVIEW29_ARB : glext.h
  • GL_MODELVIEW2_ARB : glext.h
  • GL_MODELVIEW30_ARB : glext.h
  • GL_MODELVIEW31_ARB : glext.h
  • GL_MODELVIEW3_ARB : glext.h
  • GL_MODELVIEW4_ARB : glext.h
  • GL_MODELVIEW5_ARB : glext.h
  • GL_MODELVIEW6_ARB : glext.h
  • GL_MODELVIEW7_ARB : glext.h
  • GL_MODELVIEW8_ARB : glext.h
  • GL_MODELVIEW9_ARB : glext.h
  • GL_MODELVIEW_PROJECTION_NV : glext.h
  • GL_MODULATE_ADD_ATI : glext.h
  • GL_MODULATE_SIGNED_ADD_ATI : glext.h
  • GL_MODULATE_SUBTRACT_ATI : glext.h
  • GL_MOV_ATI : glext.h
  • GL_MUL_ATI : glext.h
  • GL_MULTISAMPLE : glext.h
  • GL_MULTISAMPLE_3DFX : glext.h
  • GL_MULTISAMPLE_ARB : glext.h
  • GL_MULTISAMPLE_BIT : glext.h
  • GL_MULTISAMPLE_BIT_3DFX : glext.h
  • GL_MULTISAMPLE_BIT_ARB : glext.h
  • GL_MULTISAMPLE_BIT_EXT : glext.h
  • GL_MULTISAMPLE_EXT : glext.h
  • GL_MULTISAMPLE_FILTER_HINT_NV : glext.h
  • GL_MULTISAMPLE_SGIS : glext.h
  • GL_MVP_MATRIX_EXT : glext.h
  • GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI : glext.h
  • GL_NATIVE_GRAPHICS_END_HINT_PGI : glext.h
  • GL_NATIVE_GRAPHICS_HANDLE_PGI : glext.h
  • GL_NEAREST_CLIPMAP_LINEAR_SGIX : glext.h
  • GL_NEAREST_CLIPMAP_NEAREST_SGIX : glext.h
  • GL_NEGATE_BIT_ATI : glext.h
  • GL_NEGATIVE_ONE_EXT : glext.h
  • GL_NEGATIVE_W_EXT : glext.h
  • GL_NEGATIVE_X_EXT : glext.h
  • GL_NEGATIVE_Y_EXT : glext.h
  • GL_NEGATIVE_Z_EXT : glext.h
  • GL_NORMAL_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_NORMAL_ARRAY_COUNT_EXT : glext.h
  • GL_NORMAL_ARRAY_EXT : glext.h
  • GL_NORMAL_ARRAY_LIST_IBM : glext.h
  • GL_NORMAL_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL : glext.h
  • GL_NORMAL_ARRAY_POINTER_EXT : glext.h
  • GL_NORMAL_ARRAY_STRIDE_EXT : glext.h
  • GL_NORMAL_ARRAY_TYPE_EXT : glext.h
  • GL_NORMAL_BIT_PGI : glext.h
  • GL_NORMAL_MAP : glext.h
  • GL_NORMAL_MAP_ARB : glext.h
  • GL_NORMAL_MAP_EXT : glext.h
  • GL_NORMAL_MAP_NV : glext.h
  • GL_NORMALIZED_RANGE_EXT : glext.h
  • GL_NUM_COMPRESSED_TEXTURE_FORMATS : glext.h
  • GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB : glext.h
  • GL_NUM_FRAGMENT_CONSTANTS_ATI : glext.h
  • GL_NUM_FRAGMENT_REGISTERS_ATI : glext.h
  • GL_NUM_GENERAL_COMBINERS_NV : glext.h
  • GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI : glext.h
  • GL_NUM_INSTRUCTIONS_PER_PASS_ATI : glext.h
  • GL_NUM_INSTRUCTIONS_TOTAL_ATI : glext.h
  • GL_NUM_LOOPBACK_COMPONENTS_ATI : glext.h
  • GL_NUM_PASSES_ATI : glext.h
  • GL_NV_blend_square : glext.h
  • GL_NV_copy_depth_to_color : glext.h
  • GL_NV_depth_clamp : glext.h
  • GL_NV_evaluators : glext.h
  • GL_NV_fence : glext.h
  • GL_NV_float_buffer : glext.h
  • GL_NV_fog_distance : glext.h
  • GL_NV_fragment_program : glext.h
  • GL_NV_half_float : glext.h
  • GL_NV_light_max_exponent : glext.h
  • GL_NV_multisample_filter_hint : glext.h
  • GL_NV_occlusion_query : glext.h
  • GL_NV_packed_depth_stencil : glext.h
  • GL_NV_pixel_data_range : glext.h
  • GL_NV_point_sprite : glext.h
  • GL_NV_primitive_restart : glext.h
  • GL_NV_register_combiners : glext.h
  • GL_NV_register_combiners2 : glext.h
  • GL_NV_texgen_emboss : glext.h
  • GL_NV_texgen_reflection : glext.h
  • GL_NV_texture_compression_vtc : glext.h
  • GL_NV_texture_env_combine4 : glext.h
  • GL_NV_texture_expand_normal : glext.h
  • GL_NV_texture_rectangle : glext.h
  • GL_NV_texture_shader : glext.h
  • GL_NV_texture_shader2 : glext.h
  • GL_NV_texture_shader3 : glext.h
  • GL_NV_vertex_array_range : glext.h
  • GL_NV_vertex_array_range2 : glext.h
  • GL_NV_vertex_program : glext.h
  • GL_NV_vertex_program1_1 : glext.h
  • GL_NV_vertex_program2 : glext.h
  • GL_OBJECT_BUFFER_SIZE_ATI : glext.h
  • GL_OBJECT_BUFFER_USAGE_ATI : glext.h
  • GL_OBJECT_DISTANCE_TO_LINE_SGIS : glext.h
  • GL_OBJECT_DISTANCE_TO_POINT_SGIS : glext.h
  • GL_OBJECT_LINE_SGIS : glext.h
  • GL_OBJECT_POINT_SGIS : glext.h
  • GL_OCCLUSION_TEST_HP : glext.h
  • GL_OCCLUSION_TEST_RESULT_HP : glext.h
  • GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV : glext.h
  • GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV : glext.h
  • GL_OFFSET_HILO_TEXTURE_2D_NV : glext.h
  • GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV : glext.h
  • GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV : glext.h
  • GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV : glext.h
  • GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV : glext.h
  • GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV : glext.h
  • GL_OFFSET_TEXTURE_2D_BIAS_NV : glext.h
  • GL_OFFSET_TEXTURE_2D_MATRIX_NV : glext.h
  • GL_OFFSET_TEXTURE_2D_NV : glext.h
  • GL_OFFSET_TEXTURE_2D_SCALE_NV : glext.h
  • GL_OFFSET_TEXTURE_BIAS_NV : glext.h
  • GL_OFFSET_TEXTURE_MATRIX_NV : glext.h
  • GL_OFFSET_TEXTURE_RECTANGLE_NV : glext.h
  • GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV : glext.h
  • GL_OFFSET_TEXTURE_SCALE_NV : glext.h
  • GL_OML_interlace : glext.h
  • GL_OML_resample : glext.h
  • GL_OML_subsample : glext.h
  • GL_ONE_EXT : glext.h
  • GL_ONE_MINUS_CONSTANT_ALPHA : glext.h
  • GL_ONE_MINUS_CONSTANT_ALPHA_EXT : glext.h
  • GL_ONE_MINUS_CONSTANT_COLOR : glext.h
  • GL_ONE_MINUS_CONSTANT_COLOR_EXT : glext.h
  • GL_OP_ADD_EXT : glext.h
  • GL_OP_CLAMP_EXT : glext.h
  • GL_OP_CROSS_PRODUCT_EXT : glext.h
  • GL_OP_DOT3_EXT : glext.h
  • GL_OP_DOT4_EXT : glext.h
  • GL_OP_EXP_BASE_2_EXT : glext.h
  • GL_OP_FLOOR_EXT : glext.h
  • GL_OP_FRAC_EXT : glext.h
  • GL_OP_INDEX_EXT : glext.h
  • GL_OP_LOG_BASE_2_EXT : glext.h
  • GL_OP_MADD_EXT : glext.h
  • GL_OP_MAX_EXT : glext.h
  • GL_OP_MIN_EXT : glext.h
  • GL_OP_MOV_EXT : glext.h
  • GL_OP_MUL_EXT : glext.h
  • GL_OP_MULTIPLY_MATRIX_EXT : glext.h
  • GL_OP_NEGATE_EXT : glext.h
  • GL_OP_POWER_EXT : glext.h
  • GL_OP_RECIP_EXT : glext.h
  • GL_OP_RECIP_SQRT_EXT : glext.h
  • GL_OP_ROUND_EXT : glext.h
  • GL_OP_SET_GE_EXT : glext.h
  • GL_OP_SET_LT_EXT : glext.h
  • GL_OP_SUB_EXT : glext.h
  • GL_OPERAND0_ALPHA : glext.h
  • GL_OPERAND0_ALPHA_ARB : glext.h
  • GL_OPERAND0_ALPHA_EXT : glext.h
  • GL_OPERAND0_RGB : glext.h
  • GL_OPERAND0_RGB_ARB : glext.h
  • GL_OPERAND0_RGB_EXT : glext.h
  • GL_OPERAND1_ALPHA : glext.h
  • GL_OPERAND1_ALPHA_ARB : glext.h
  • GL_OPERAND1_ALPHA_EXT : glext.h
  • GL_OPERAND1_RGB : glext.h
  • GL_OPERAND1_RGB_ARB : glext.h
  • GL_OPERAND1_RGB_EXT : glext.h
  • GL_OPERAND2_ALPHA : glext.h
  • GL_OPERAND2_ALPHA_ARB : glext.h
  • GL_OPERAND2_ALPHA_EXT : glext.h
  • GL_OPERAND2_RGB : glext.h
  • GL_OPERAND2_RGB_ARB : glext.h
  • GL_OPERAND2_RGB_EXT : glext.h
  • GL_OPERAND3_ALPHA_NV : glext.h
  • GL_OPERAND3_RGB_NV : glext.h
  • GL_OUTPUT_COLOR0_EXT : glext.h
  • GL_OUTPUT_COLOR1_EXT : glext.h
  • GL_OUTPUT_FOG_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD0_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD10_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD11_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD12_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD13_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD14_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD15_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD16_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD17_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD18_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD19_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD1_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD20_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD21_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD22_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD23_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD24_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD25_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD26_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD27_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD28_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD29_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD2_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD30_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD31_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD3_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD4_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD5_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD6_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD7_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD8_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD9_EXT : glext.h
  • GL_OUTPUT_VERTEX_EXT : glext.h
  • GL_PACK_CMYK_HINT_EXT : glext.h
  • GL_PACK_IMAGE_DEPTH_SGIS : glext.h
  • GL_PACK_IMAGE_HEIGHT : glext.h
  • GL_PACK_IMAGE_HEIGHT_EXT : glext.h
  • GL_PACK_RESAMPLE_OML : glext.h
  • GL_PACK_RESAMPLE_SGIX : glext.h
  • GL_PACK_SKIP_IMAGES : glext.h
  • GL_PACK_SKIP_IMAGES_EXT : glext.h
  • GL_PACK_SKIP_VOLUMES_SGIS : glext.h
  • GL_PACK_SUBSAMPLE_RATE_SGIX : glext.h
  • GL_PARALLEL_ARRAYS_INTEL : glext.h
  • GL_PASS_THROUGH_NV : glext.h
  • GL_PER_STAGE_CONSTANTS_NV : glext.h
  • GL_PERTURB_EXT : glext.h
  • GL_PGI_misc_hints : glext.h
  • GL_PGI_vertex_hints : glext.h
  • GL_PHONG_HINT_WIN : glext.h
  • GL_PHONG_WIN : glext.h
  • GL_PIXEL_COUNT_AVAILABLE_NV : glext.h
  • GL_PIXEL_COUNT_NV : glext.h
  • GL_PIXEL_COUNTER_BITS_NV : glext.h
  • GL_PIXEL_CUBIC_WEIGHT_EXT : glext.h
  • GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS : glext.h
  • GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS : glext.h
  • GL_PIXEL_GROUP_COLOR_SGIS : glext.h
  • GL_PIXEL_MAG_FILTER_EXT : glext.h
  • GL_PIXEL_MIN_FILTER_EXT : glext.h
  • GL_PIXEL_SUBSAMPLE_2424_SGIX : glext.h
  • GL_PIXEL_SUBSAMPLE_4242_SGIX : glext.h
  • GL_PIXEL_SUBSAMPLE_4444_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_MODE_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_Q_CEILING_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_Q_ROUND_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_SGIX : glext.h
  • GL_PIXEL_TEXTURE_SGIS : glext.h
  • GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX : glext.h
  • GL_PIXEL_TILE_CACHE_INCREMENT_SGIX : glext.h
  • GL_PIXEL_TILE_CACHE_SIZE_SGIX : glext.h
  • GL_PIXEL_TILE_GRID_DEPTH_SGIX : glext.h
  • GL_PIXEL_TILE_GRID_HEIGHT_SGIX : glext.h
  • GL_PIXEL_TILE_GRID_WIDTH_SGIX : glext.h
  • GL_PIXEL_TILE_HEIGHT_SGIX : glext.h
  • GL_PIXEL_TILE_WIDTH_SGIX : glext.h
  • GL_PIXEL_TRANSFORM_2D_EXT : glext.h
  • GL_PIXEL_TRANSFORM_2D_MATRIX_EXT : glext.h
  • GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT : glext.h
  • GL_PN_TRIANGLES_ATI : glext.h
  • GL_PN_TRIANGLES_NORMAL_MODE_ATI : glext.h
  • GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI : glext.h
  • GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI : glext.h
  • GL_PN_TRIANGLES_POINT_MODE_ATI : glext.h
  • GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI : glext.h
  • GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI : glext.h
  • GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI : glext.h
  • GL_POINT_DISTANCE_ATTENUATION : glext.h
  • GL_POINT_DISTANCE_ATTENUATION_ARB : glext.h
  • GL_POINT_FADE_THRESHOLD_SIZE : glext.h
  • GL_POINT_FADE_THRESHOLD_SIZE_ARB : glext.h
  • GL_POINT_FADE_THRESHOLD_SIZE_EXT : glext.h
  • GL_POINT_FADE_THRESHOLD_SIZE_SGIS : glext.h
  • GL_POINT_SIZE_MAX : glext.h
  • GL_POINT_SIZE_MAX_ARB : glext.h
  • GL_POINT_SIZE_MAX_EXT : glext.h
  • GL_POINT_SIZE_MAX_SGIS : glext.h
  • GL_POINT_SIZE_MIN : glext.h
  • GL_POINT_SIZE_MIN_ARB : glext.h
  • GL_POINT_SIZE_MIN_EXT : glext.h
  • GL_POINT_SIZE_MIN_SGIS : glext.h
  • GL_POINT_SPRITE_NV : glext.h
  • GL_POINT_SPRITE_R_MODE_NV : glext.h
  • GL_POLYGON_OFFSET_BIAS_EXT : glext.h
  • GL_POLYGON_OFFSET_EXT : glext.h
  • GL_POLYGON_OFFSET_FACTOR_EXT : glext.h
  • GL_POST_COLOR_MATRIX_ALPHA_BIAS : glext.h
  • GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI : glext.h
  • GL_POST_COLOR_MATRIX_ALPHA_SCALE : glext.h
  • GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI : glext.h
  • GL_POST_COLOR_MATRIX_BLUE_BIAS : glext.h
  • GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI : glext.h
  • GL_POST_COLOR_MATRIX_BLUE_SCALE : glext.h
  • GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI : glext.h
  • GL_POST_COLOR_MATRIX_COLOR_TABLE : glext.h
  • GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI : glext.h
  • GL_POST_COLOR_MATRIX_GREEN_BIAS : glext.h
  • GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI : glext.h
  • GL_POST_COLOR_MATRIX_GREEN_SCALE : glext.h
  • GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI : glext.h
  • GL_POST_COLOR_MATRIX_RED_BIAS : glext.h
  • GL_POST_COLOR_MATRIX_RED_BIAS_SGI : glext.h
  • GL_POST_COLOR_MATRIX_RED_SCALE : glext.h
  • GL_POST_COLOR_MATRIX_RED_SCALE_SGI : glext.h
  • GL_POST_CONVOLUTION_ALPHA_BIAS : glext.h
  • GL_POST_CONVOLUTION_ALPHA_BIAS_EXT : glext.h
  • GL_POST_CONVOLUTION_ALPHA_SCALE : glext.h
  • GL_POST_CONVOLUTION_ALPHA_SCALE_EXT : glext.h
  • GL_POST_CONVOLUTION_BLUE_BIAS : glext.h
  • GL_POST_CONVOLUTION_BLUE_BIAS_EXT : glext.h
  • GL_POST_CONVOLUTION_BLUE_SCALE : glext.h
  • GL_POST_CONVOLUTION_BLUE_SCALE_EXT : glext.h
  • GL_POST_CONVOLUTION_COLOR_TABLE : glext.h
  • GL_POST_CONVOLUTION_COLOR_TABLE_SGI : glext.h
  • GL_POST_CONVOLUTION_GREEN_BIAS : glext.h
  • GL_POST_CONVOLUTION_GREEN_BIAS_EXT : glext.h
  • GL_POST_CONVOLUTION_GREEN_SCALE : glext.h
  • GL_POST_CONVOLUTION_GREEN_SCALE_EXT : glext.h
  • GL_POST_CONVOLUTION_RED_BIAS : glext.h
  • GL_POST_CONVOLUTION_RED_BIAS_EXT : glext.h
  • GL_POST_CONVOLUTION_RED_SCALE : glext.h
  • GL_POST_CONVOLUTION_RED_SCALE_EXT : glext.h
  • GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP : glext.h
  • GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX : glext.h
  • GL_POST_TEXTURE_FILTER_BIAS_SGIX : glext.h
  • GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX : glext.h
  • GL_POST_TEXTURE_FILTER_SCALE_SGIX : glext.h
  • GL_PREFER_DOUBLEBUFFER_HINT_PGI : glext.h
  • GL_PRESERVE_ATI : glext.h
  • GL_PREVIOUS : glext.h
  • GL_PREVIOUS_ARB : glext.h
  • GL_PREVIOUS_EXT : glext.h
  • GL_PREVIOUS_TEXTURE_INPUT_NV : glext.h
  • GL_PRIMARY_COLOR : glext.h
  • GL_PRIMARY_COLOR_ARB : glext.h
  • GL_PRIMARY_COLOR_EXT : glext.h
  • GL_PRIMARY_COLOR_NV : glext.h
  • GL_PRIMITIVE_RESTART_INDEX_NV : glext.h
  • GL_PRIMITIVE_RESTART_NV : glext.h
  • GL_PROGRAM_ADDRESS_REGISTERS_ARB : glext.h
  • GL_PROGRAM_ALU_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_ATTRIBS_ARB : glext.h
  • GL_PROGRAM_BINDING_ARB : glext.h
  • GL_PROGRAM_ERROR_POSITION_ARB : glext.h
  • GL_PROGRAM_ERROR_POSITION_NV : glext.h
  • GL_PROGRAM_ERROR_STRING_ARB : glext.h
  • GL_PROGRAM_ERROR_STRING_NV : glext.h
  • GL_PROGRAM_FORMAT_ARB : glext.h
  • GL_PROGRAM_FORMAT_ASCII_ARB : glext.h
  • GL_PROGRAM_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_LENGTH_ARB : glext.h
  • GL_PROGRAM_LENGTH_NV : glext.h
  • GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB : glext.h
  • GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_NATIVE_ATTRIBS_ARB : glext.h
  • GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_NATIVE_PARAMETERS_ARB : glext.h
  • GL_PROGRAM_NATIVE_TEMPORARIES_ARB : glext.h
  • GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB : glext.h
  • GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_PARAMETER_NV : glext.h
  • GL_PROGRAM_PARAMETERS_ARB : glext.h
  • GL_PROGRAM_RESIDENT_NV : glext.h
  • GL_PROGRAM_STRING_ARB : glext.h
  • GL_PROGRAM_STRING_NV : glext.h
  • GL_PROGRAM_TARGET_NV : glext.h
  • GL_PROGRAM_TEMPORARIES_ARB : glext.h
  • GL_PROGRAM_TEX_INDIRECTIONS_ARB : glext.h
  • GL_PROGRAM_TEX_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB : glext.h
  • GL_PROXY_COLOR_TABLE : glext.h
  • GL_PROXY_COLOR_TABLE_SGI : glext.h
  • GL_PROXY_HISTOGRAM : glext.h
  • GL_PROXY_HISTOGRAM_EXT : glext.h
  • GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE : glext.h
  • GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI : glext.h
  • GL_PROXY_POST_CONVOLUTION_COLOR_TABLE : glext.h
  • GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI : glext.h
  • GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP : glext.h
  • GL_PROXY_TEXTURE_1D_EXT : glext.h
  • GL_PROXY_TEXTURE_2D_EXT : glext.h
  • GL_PROXY_TEXTURE_3D : glext.h
  • GL_PROXY_TEXTURE_3D_EXT : glext.h
  • GL_PROXY_TEXTURE_4D_SGIS : glext.h
  • GL_PROXY_TEXTURE_COLOR_TABLE_SGI : glext.h
  • GL_PROXY_TEXTURE_CUBE_MAP : glext.h
  • GL_PROXY_TEXTURE_CUBE_MAP_ARB : glext.h
  • GL_PROXY_TEXTURE_CUBE_MAP_EXT : glext.h
  • GL_PROXY_TEXTURE_RECTANGLE_NV : glext.h
  • GL_QUAD_ALPHA4_SGIS : glext.h
  • GL_QUAD_ALPHA8_SGIS : glext.h
  • GL_QUAD_INTENSITY4_SGIS : glext.h
  • GL_QUAD_INTENSITY8_SGIS : glext.h
  • GL_QUAD_LUMINANCE4_SGIS : glext.h
  • GL_QUAD_LUMINANCE8_SGIS : glext.h
  • GL_QUAD_MESH_SUN : glext.h
  • GL_QUAD_TEXTURE_SELECT_SGIS : glext.h
  • GL_QUARTER_BIT_ATI : glext.h
  • GL_R1UI_C3F_V3F_SUN : glext.h
  • GL_R1UI_C4F_N3F_V3F_SUN : glext.h
  • GL_R1UI_C4UB_V3F_SUN : glext.h
  • GL_R1UI_N3F_V3F_SUN : glext.h
  • GL_R1UI_T2F_C4F_N3F_V3F_SUN : glext.h
  • GL_R1UI_T2F_N3F_V3F_SUN : glext.h
  • GL_R1UI_T2F_V3F_SUN : glext.h
  • GL_R1UI_V3F_SUN : glext.h
  • GL_RASTER_POSITION_UNCLIPPED_IBM : glext.h
  • GL_READ_ONLY_ARB : glext.h
  • GL_READ_PIXEL_DATA_RANGE_LENGTH_NV : glext.h
  • GL_READ_PIXEL_DATA_RANGE_NV : glext.h
  • GL_READ_PIXEL_DATA_RANGE_POINTER_NV : glext.h
  • GL_READ_WRITE_ARB : glext.h
  • GL_RECLAIM_MEMORY_HINT_PGI : glext.h
  • GL_RED_BIT_ATI : glext.h
  • GL_RED_MAX_CLAMP_INGR : glext.h
  • GL_RED_MIN_CLAMP_INGR : glext.h
  • GL_REDUCE : glext.h
  • GL_REDUCE_EXT : glext.h
  • GL_REFERENCE_PLANE_EQUATION_SGIX : glext.h
  • GL_REFERENCE_PLANE_SGIX : glext.h
  • GL_REFLECTION_MAP : glext.h
  • GL_REFLECTION_MAP_ARB : glext.h
  • GL_REFLECTION_MAP_EXT : glext.h
  • GL_REFLECTION_MAP_NV : glext.h
  • GL_REG_0_ATI : glext.h
  • GL_REG_10_ATI : glext.h
  • GL_REG_11_ATI : glext.h
  • GL_REG_12_ATI : glext.h
  • GL_REG_13_ATI : glext.h
  • GL_REG_14_ATI : glext.h
  • GL_REG_15_ATI : glext.h
  • GL_REG_16_ATI : glext.h
  • GL_REG_17_ATI : glext.h
  • GL_REG_18_ATI : glext.h
  • GL_REG_19_ATI : glext.h
  • GL_REG_1_ATI : glext.h
  • GL_REG_20_ATI : glext.h
  • GL_REG_21_ATI : glext.h
  • GL_REG_22_ATI : glext.h
  • GL_REG_23_ATI : glext.h
  • GL_REG_24_ATI : glext.h
  • GL_REG_25_ATI : glext.h
  • GL_REG_26_ATI : glext.h
  • GL_REG_27_ATI : glext.h
  • GL_REG_28_ATI : glext.h
  • GL_REG_29_ATI : glext.h
  • GL_REG_2_ATI : glext.h
  • GL_REG_30_ATI : glext.h
  • GL_REG_31_ATI : glext.h
  • GL_REG_3_ATI : glext.h
  • GL_REG_4_ATI : glext.h
  • GL_REG_5_ATI : glext.h
  • GL_REG_6_ATI : glext.h
  • GL_REG_7_ATI : glext.h
  • GL_REG_8_ATI : glext.h
  • GL_REG_9_ATI : glext.h
  • GL_REGISTER_COMBINERS_NV : glext.h
  • GL_REND_screen_coordinates : glext.h
  • GL_REPLACE_EXT : glext.h
  • GL_REPLACE_MIDDLE_SUN : glext.h
  • GL_REPLACE_OLDEST_SUN : glext.h
  • GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN : glext.h
  • GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN : glext.h
  • GL_REPLACEMENT_CODE_ARRAY_SUN : glext.h
  • GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN : glext.h
  • GL_REPLACEMENT_CODE_SUN : glext.h
  • GL_REPLICATE_BORDER : glext.h
  • GL_REPLICATE_BORDER_HP : glext.h
  • GL_RESAMPLE_AVERAGE_OML : glext.h
  • GL_RESAMPLE_DECIMATE_OML : glext.h
  • GL_RESAMPLE_DECIMATE_SGIX : glext.h
  • GL_RESAMPLE_REPLICATE_OML : glext.h
  • GL_RESAMPLE_REPLICATE_SGIX : glext.h
  • GL_RESAMPLE_ZERO_FILL_OML : glext.h
  • GL_RESAMPLE_ZERO_FILL_SGIX : glext.h
  • GL_RESCALE_NORMAL : glext.h
  • GL_RESCALE_NORMAL_EXT : glext.h
  • GL_RESTART_SUN : glext.h
  • GL_RGB10_A2_EXT : glext.h
  • GL_RGB10_EXT : glext.h
  • GL_RGB12_EXT : glext.h
  • GL_RGB16_EXT : glext.h
  • GL_RGB2_EXT : glext.h
  • GL_RGB4_EXT : glext.h
  • GL_RGB4_S3TC : glext.h
  • GL_RGB5_A1_EXT : glext.h
  • GL_RGB5_EXT : glext.h
  • GL_RGB8_EXT : glext.h
  • GL_RGB_FLOAT16_ATI : glext.h
  • GL_RGB_FLOAT32_ATI : glext.h
  • GL_RGB_S3TC : glext.h
  • GL_RGB_SCALE : glext.h
  • GL_RGB_SCALE_ARB : glext.h
  • GL_RGB_SCALE_EXT : glext.h
  • GL_RGBA12_EXT : glext.h
  • GL_RGBA16_EXT : glext.h
  • GL_RGBA2_EXT : glext.h
  • GL_RGBA4_EXT : glext.h
  • GL_RGBA4_S3TC : glext.h
  • GL_RGBA8_EXT : glext.h
  • GL_RGBA_FLOAT16_ATI : glext.h
  • GL_RGBA_FLOAT32_ATI : glext.h
  • GL_RGBA_S3TC : glext.h
  • GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV : glext.h
  • GL_S3_s3tc : glext.h
  • GL_SAMPLE_ALPHA_TO_COVERAGE : glext.h
  • GL_SAMPLE_ALPHA_TO_COVERAGE_ARB : glext.h
  • GL_SAMPLE_ALPHA_TO_MASK_EXT : glext.h
  • GL_SAMPLE_ALPHA_TO_MASK_SGIS : glext.h
  • GL_SAMPLE_ALPHA_TO_ONE : glext.h
  • GL_SAMPLE_ALPHA_TO_ONE_ARB : glext.h
  • GL_SAMPLE_ALPHA_TO_ONE_EXT : glext.h
  • GL_SAMPLE_ALPHA_TO_ONE_SGIS : glext.h
  • GL_SAMPLE_BUFFERS : glext.h
  • GL_SAMPLE_BUFFERS_3DFX : glext.h
  • GL_SAMPLE_BUFFERS_ARB : glext.h
  • GL_SAMPLE_BUFFERS_EXT : glext.h
  • GL_SAMPLE_BUFFERS_SGIS : glext.h
  • GL_SAMPLE_COVERAGE : glext.h
  • GL_SAMPLE_COVERAGE_ARB : glext.h
  • GL_SAMPLE_COVERAGE_INVERT : glext.h
  • GL_SAMPLE_COVERAGE_INVERT_ARB : glext.h
  • GL_SAMPLE_COVERAGE_VALUE : glext.h
  • GL_SAMPLE_COVERAGE_VALUE_ARB : glext.h
  • GL_SAMPLE_MASK_EXT : glext.h
  • GL_SAMPLE_MASK_INVERT_EXT : glext.h
  • GL_SAMPLE_MASK_INVERT_SGIS : glext.h
  • GL_SAMPLE_MASK_SGIS : glext.h
  • GL_SAMPLE_MASK_VALUE_EXT : glext.h
  • GL_SAMPLE_MASK_VALUE_SGIS : glext.h
  • GL_SAMPLE_PATTERN_EXT : glext.h
  • GL_SAMPLE_PATTERN_SGIS : glext.h
  • GL_SAMPLES : glext.h
  • GL_SAMPLES_3DFX : glext.h
  • GL_SAMPLES_ARB : glext.h
  • GL_SAMPLES_EXT : glext.h
  • GL_SAMPLES_SGIS : glext.h
  • GL_SATURATE_BIT_ATI : glext.h
  • GL_SCALAR_EXT : glext.h
  • GL_SCALE_BY_FOUR_NV : glext.h
  • GL_SCALE_BY_ONE_HALF_NV : glext.h
  • GL_SCALE_BY_TWO_NV : glext.h
  • GL_SCALEBIAS_HINT_SGIX : glext.h
  • GL_SCREEN_COORDINATES_REND : glext.h
  • GL_SECONDARY_COLOR_ARRAY : glext.h
  • GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_SECONDARY_COLOR_ARRAY_EXT : glext.h
  • GL_SECONDARY_COLOR_ARRAY_LIST_IBM : glext.h
  • GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_SECONDARY_COLOR_ARRAY_POINTER : glext.h
  • GL_SECONDARY_COLOR_ARRAY_POINTER_EXT : glext.h
  • GL_SECONDARY_COLOR_ARRAY_SIZE : glext.h
  • GL_SECONDARY_COLOR_ARRAY_SIZE_EXT : glext.h
  • GL_SECONDARY_COLOR_ARRAY_STRIDE : glext.h
  • GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT : glext.h
  • GL_SECONDARY_COLOR_ARRAY_TYPE : glext.h
  • GL_SECONDARY_COLOR_ARRAY_TYPE_EXT : glext.h
  • GL_SECONDARY_COLOR_NV : glext.h
  • GL_SECONDARY_INTERPOLATOR_ATI : glext.h
  • GL_SEPARABLE_2D : glext.h
  • GL_SEPARABLE_2D_EXT : glext.h
  • GL_SEPARATE_SPECULAR_COLOR : glext.h
  • GL_SEPARATE_SPECULAR_COLOR_EXT : glext.h
  • GL_SGI_color_table : glext.h
  • GL_SGI_texture_color_table : glext.h
  • GL_SGIS_detail_texture : glext.h
  • GL_SGIS_fog_function : glext.h
  • GL_SGIS_generate_mipmap : glext.h
  • GL_SGIS_multisample : glext.h
  • GL_SGIS_pixel_texture : glext.h
  • GL_SGIS_point_line_texgen : glext.h
  • GL_SGIS_point_parameters : glext.h
  • GL_SGIS_sharpen_texture : glext.h
  • GL_SGIS_texture4D : glext.h
  • GL_SGIS_texture_border_clamp : glext.h
  • GL_SGIS_texture_color_mask : glext.h
  • GL_SGIS_texture_edge_clamp : glext.h
  • GL_SGIS_texture_filter4 : glext.h
  • GL_SGIS_texture_lod : glext.h
  • GL_SGIX_async : glext.h
  • GL_SGIX_async_histogram : glext.h
  • GL_SGIX_async_pixel : glext.h
  • GL_SGIX_blend_alpha_minmax : glext.h
  • GL_SGIX_calligraphic_fragment : glext.h
  • GL_SGIX_clipmap : glext.h
  • GL_SGIX_convolution_accuracy : glext.h
  • GL_SGIX_depth_pass_instrument : glext.h
  • GL_SGIX_depth_texture : glext.h
  • GL_SGIX_flush_raster : glext.h
  • GL_SGIX_fog_offset : glext.h
  • GL_SGIX_fog_scale : glext.h
  • GL_SGIX_fragment_lighting : glext.h
  • GL_SGIX_framezoom : glext.h
  • GL_SGIX_igloo_interface : glext.h
  • GL_SGIX_instruments : glext.h
  • GL_SGIX_interlace : glext.h
  • GL_SGIX_ir_instrument1 : glext.h
  • GL_SGIX_list_priority : glext.h
  • GL_SGIX_pixel_texture : glext.h
  • GL_SGIX_pixel_tiles : glext.h
  • GL_SGIX_polynomial_ffd : glext.h
  • GL_SGIX_reference_plane : glext.h
  • GL_SGIX_resample : glext.h
  • GL_SGIX_scalebias_hint : glext.h
  • GL_SGIX_shadow : glext.h
  • GL_SGIX_shadow_ambient : glext.h
  • GL_SGIX_sprite : glext.h
  • GL_SGIX_subsample : glext.h
  • GL_SGIX_tag_sample_buffer : glext.h
  • GL_SGIX_texture_add_env : glext.h
  • GL_SGIX_texture_coordinate_clamp : glext.h
  • GL_SGIX_texture_lod_bias : glext.h
  • GL_SGIX_texture_multi_buffer : glext.h
  • GL_SGIX_texture_scale_bias : glext.h
  • GL_SGIX_texture_select : glext.h
  • GL_SGIX_vertex_preclip : glext.h
  • GL_SGIX_ycrcb : glext.h
  • GL_SGIX_ycrcb_subsample : glext.h
  • GL_SGIX_ycrcba : glext.h
  • GL_SHADER_CONSISTENT_NV : glext.h
  • GL_SHADER_OPERATION_NV : glext.h
  • GL_SHADOW_AMBIENT_SGIX : glext.h
  • GL_SHADOW_ATTENUATION_EXT : glext.h
  • GL_SHARED_TEXTURE_PALETTE_EXT : glext.h
  • GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS : glext.h
  • GL_SIGNED_ALPHA8_NV : glext.h
  • GL_SIGNED_ALPHA_NV : glext.h
  • GL_SIGNED_HILO16_NV : glext.h
  • GL_SIGNED_HILO8_NV : glext.h
  • GL_SIGNED_HILO_NV : glext.h
  • GL_SIGNED_IDENTITY_NV : glext.h
  • GL_SIGNED_INTENSITY8_NV : glext.h
  • GL_SIGNED_INTENSITY_NV : glext.h
  • GL_SIGNED_LUMINANCE8_ALPHA8_NV : glext.h
  • GL_SIGNED_LUMINANCE8_NV : glext.h
  • GL_SIGNED_LUMINANCE_ALPHA_NV : glext.h
  • GL_SIGNED_LUMINANCE_NV : glext.h
  • GL_SIGNED_NEGATE_NV : glext.h
  • GL_SIGNED_RGB8_NV : glext.h
  • GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV : glext.h
  • GL_SIGNED_RGB_NV : glext.h
  • GL_SIGNED_RGB_UNSIGNED_ALPHA_NV : glext.h
  • GL_SIGNED_RGBA8_NV : glext.h
  • GL_SIGNED_RGBA_NV : glext.h
  • GL_SINGLE_COLOR : glext.h
  • GL_SINGLE_COLOR_EXT : glext.h
  • GL_SLICE_ACCUM_SUN : glext.h
  • GL_SMOOTH_LINE_WIDTH_GRANULARITY : glext.h
  • GL_SMOOTH_LINE_WIDTH_RANGE : glext.h
  • GL_SMOOTH_POINT_SIZE_GRANULARITY : glext.h
  • GL_SMOOTH_POINT_SIZE_RANGE : glext.h
  • GL_SOURCE0_ALPHA : glext.h
  • GL_SOURCE0_ALPHA_ARB : glext.h
  • GL_SOURCE0_ALPHA_EXT : glext.h
  • GL_SOURCE0_RGB : glext.h
  • GL_SOURCE0_RGB_ARB : glext.h
  • GL_SOURCE0_RGB_EXT : glext.h
  • GL_SOURCE1_ALPHA : glext.h
  • GL_SOURCE1_ALPHA_ARB : glext.h
  • GL_SOURCE1_ALPHA_EXT : glext.h
  • GL_SOURCE1_RGB : glext.h
  • GL_SOURCE1_RGB_ARB : glext.h
  • GL_SOURCE1_RGB_EXT : glext.h
  • GL_SOURCE2_ALPHA : glext.h
  • GL_SOURCE2_ALPHA_ARB : glext.h
  • GL_SOURCE2_ALPHA_EXT : glext.h
  • GL_SOURCE2_RGB : glext.h
  • GL_SOURCE2_RGB_ARB : glext.h
  • GL_SOURCE2_RGB_EXT : glext.h
  • GL_SOURCE3_ALPHA_NV : glext.h
  • GL_SOURCE3_RGB_NV : glext.h
  • GL_SPARE0_NV : glext.h
  • GL_SPARE0_PLUS_SECONDARY_COLOR_NV : glext.h
  • GL_SPARE1_NV : glext.h
  • GL_SPRITE_AXIAL_SGIX : glext.h
  • GL_SPRITE_AXIS_SGIX : glext.h
  • GL_SPRITE_EYE_ALIGNED_SGIX : glext.h
  • GL_SPRITE_MODE_SGIX : glext.h
  • GL_SPRITE_OBJECT_ALIGNED_SGIX : glext.h
  • GL_SPRITE_SGIX : glext.h
  • GL_SPRITE_TRANSLATION_SGIX : glext.h
  • GL_STATIC_ATI : glext.h
  • GL_STATIC_COPY_ARB : glext.h
  • GL_STATIC_DRAW_ARB : glext.h
  • GL_STATIC_READ_ARB : glext.h
  • GL_STENCIL_BACK_FAIL_ATI : glext.h
  • GL_STENCIL_BACK_FUNC_ATI : glext.h
  • GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI : glext.h
  • GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI : glext.h
  • GL_STENCIL_TEST_TWO_SIDE_EXT : glext.h
  • GL_STORAGE_CACHED_APPLE : glext.h
  • GL_STORAGE_SHARED_APPLE : glext.h
  • GL_STREAM_COPY_ARB : glext.h
  • GL_STREAM_DRAW_ARB : glext.h
  • GL_STREAM_READ_ARB : glext.h
  • GL_STRICT_DEPTHFUNC_HINT_PGI : glext.h
  • GL_STRICT_LIGHTING_HINT_PGI : glext.h
  • GL_STRICT_SCISSOR_HINT_PGI : glext.h
  • GL_SUB_ATI : glext.h
  • GL_SUBTRACT : glext.h
  • GL_SUBTRACT_ARB : glext.h
  • GL_SUN_convolution_border_modes : glext.h
  • GL_SUN_global_alpha : glext.h
  • GL_SUN_mesh_array : glext.h
  • GL_SUN_slice_accum : glext.h
  • GL_SUN_triangle_list : glext.h
  • GL_SUN_vertex : glext.h
  • GL_SUNX_constant_data : glext.h
  • GL_SWIZZLE_STQ_ATI : glext.h
  • GL_SWIZZLE_STQ_DQ_ATI : glext.h
  • GL_SWIZZLE_STR_ATI : glext.h
  • GL_SWIZZLE_STR_DR_ATI : glext.h
  • GL_SWIZZLE_STRQ_ATI : glext.h
  • GL_SWIZZLE_STRQ_DQ_ATI : glext.h
  • GL_T2F_IUI_N3F_V2F_EXT : glext.h
  • GL_T2F_IUI_N3F_V3F_EXT : glext.h
  • GL_T2F_IUI_V2F_EXT : glext.h
  • GL_T2F_IUI_V3F_EXT : glext.h
  • GL_TABLE_TOO_LARGE : glext.h
  • GL_TABLE_TOO_LARGE_EXT : glext.h
  • GL_TANGENT_ARRAY_EXT : glext.h
  • GL_TANGENT_ARRAY_POINTER_EXT : glext.h
  • GL_TANGENT_ARRAY_STRIDE_EXT : glext.h
  • GL_TANGENT_ARRAY_TYPE_EXT : glext.h
  • GL_TEXCOORD1_BIT_PGI : glext.h
  • GL_TEXCOORD2_BIT_PGI : glext.h
  • GL_TEXCOORD3_BIT_PGI : glext.h
  • GL_TEXCOORD4_BIT_PGI : glext.h
  • GL_TEXT_FRAGMENT_SHADER_ATI : glext.h
  • GL_TEXTURE0 : glext.h
  • GL_TEXTURE0_ARB : glext.h
  • GL_TEXTURE1 : glext.h
  • GL_TEXTURE10 : glext.h
  • GL_TEXTURE10_ARB : glext.h
  • GL_TEXTURE11 : glext.h
  • GL_TEXTURE11_ARB : glext.h
  • GL_TEXTURE12 : glext.h
  • GL_TEXTURE12_ARB : glext.h
  • GL_TEXTURE13 : glext.h
  • GL_TEXTURE13_ARB : glext.h
  • GL_TEXTURE14 : glext.h
  • GL_TEXTURE14_ARB : glext.h
  • GL_TEXTURE15 : glext.h
  • GL_TEXTURE15_ARB : glext.h
  • GL_TEXTURE16 : glext.h
  • GL_TEXTURE16_ARB : glext.h
  • GL_TEXTURE17 : glext.h
  • GL_TEXTURE17_ARB : glext.h
  • GL_TEXTURE18 : glext.h
  • GL_TEXTURE18_ARB : glext.h
  • GL_TEXTURE19 : glext.h
  • GL_TEXTURE19_ARB : glext.h
  • GL_TEXTURE1_ARB : glext.h
  • GL_TEXTURE2 : glext.h
  • GL_TEXTURE20 : glext.h
  • GL_TEXTURE20_ARB : glext.h
  • GL_TEXTURE21 : glext.h
  • GL_TEXTURE21_ARB : glext.h
  • GL_TEXTURE22 : glext.h
  • GL_TEXTURE22_ARB : glext.h
  • GL_TEXTURE23 : glext.h
  • GL_TEXTURE23_ARB : glext.h
  • GL_TEXTURE24 : glext.h
  • GL_TEXTURE24_ARB : glext.h
  • GL_TEXTURE25 : glext.h
  • GL_TEXTURE25_ARB : glext.h
  • GL_TEXTURE26 : glext.h
  • GL_TEXTURE26_ARB : glext.h
  • GL_TEXTURE27 : glext.h
  • GL_TEXTURE27_ARB : glext.h
  • GL_TEXTURE28 : glext.h
  • GL_TEXTURE28_ARB : glext.h
  • GL_TEXTURE29 : glext.h
  • GL_TEXTURE29_ARB : glext.h
  • GL_TEXTURE2_ARB : glext.h
  • GL_TEXTURE3 : glext.h
  • GL_TEXTURE30 : glext.h
  • GL_TEXTURE30_ARB : glext.h
  • GL_TEXTURE31 : glext.h
  • GL_TEXTURE31_ARB : glext.h
  • GL_TEXTURE3_ARB : glext.h
  • GL_TEXTURE4 : glext.h
  • GL_TEXTURE4_ARB : glext.h
  • GL_TEXTURE5 : glext.h
  • GL_TEXTURE5_ARB : glext.h
  • GL_TEXTURE6 : glext.h
  • GL_TEXTURE6_ARB : glext.h
  • GL_TEXTURE7 : glext.h
  • GL_TEXTURE7_ARB : glext.h
  • GL_TEXTURE8 : glext.h
  • GL_TEXTURE8_ARB : glext.h
  • GL_TEXTURE9 : glext.h
  • GL_TEXTURE9_ARB : glext.h
  • GL_TEXTURE_1D_BINDING_EXT : glext.h
  • GL_TEXTURE_2D_BINDING_EXT : glext.h
  • GL_TEXTURE_3D : glext.h
  • GL_TEXTURE_3D_BINDING_EXT : glext.h
  • GL_TEXTURE_3D_EXT : glext.h
  • GL_TEXTURE_4D_BINDING_SGIS : glext.h
  • GL_TEXTURE_4D_SGIS : glext.h
  • GL_TEXTURE_4DSIZE_SGIS : glext.h
  • GL_TEXTURE_ALPHA_SIZE_EXT : glext.h
  • GL_TEXTURE_APPLICATION_MODE_EXT : glext.h
  • GL_TEXTURE_BASE_LEVEL : glext.h
  • GL_TEXTURE_BASE_LEVEL_SGIS : glext.h
  • GL_TEXTURE_BINDING_3D : glext.h
  • GL_TEXTURE_BINDING_CUBE_MAP : glext.h
  • GL_TEXTURE_BINDING_CUBE_MAP_ARB : glext.h
  • GL_TEXTURE_BINDING_CUBE_MAP_EXT : glext.h
  • GL_TEXTURE_BINDING_RECTANGLE_NV : glext.h
  • GL_TEXTURE_BLUE_SIZE_EXT : glext.h
  • GL_TEXTURE_BORDER_VALUES_NV : glext.h
  • GL_TEXTURE_CLIPMAP_CENTER_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_DEPTH_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_FRAME_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_OFFSET_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX : glext.h
  • GL_TEXTURE_COLOR_TABLE_SGI : glext.h
  • GL_TEXTURE_COLOR_WRITEMASK_SGIS : glext.h
  • GL_TEXTURE_COMPARE_FAIL_VALUE_ARB : glext.h
  • GL_TEXTURE_COMPARE_FUNC : glext.h
  • GL_TEXTURE_COMPARE_FUNC_ARB : glext.h
  • GL_TEXTURE_COMPARE_MODE : glext.h
  • GL_TEXTURE_COMPARE_MODE_ARB : glext.h
  • GL_TEXTURE_COMPARE_OPERATOR_SGIX : glext.h
  • GL_TEXTURE_COMPARE_SGIX : glext.h
  • GL_TEXTURE_COMPRESSED : glext.h
  • GL_TEXTURE_COMPRESSED_ARB : glext.h
  • GL_TEXTURE_COMPRESSED_IMAGE_SIZE : glext.h
  • GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB : glext.h
  • GL_TEXTURE_COMPRESSION_HINT : glext.h
  • GL_TEXTURE_COMPRESSION_HINT_ARB : glext.h
  • GL_TEXTURE_CONSTANT_DATA_SUNX : glext.h
  • GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_TEXTURE_COORD_ARRAY_COUNT_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_LIST_IBM : glext.h
  • GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL : glext.h
  • GL_TEXTURE_COORD_ARRAY_POINTER_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_SIZE_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_STRIDE_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_TYPE_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP : glext.h
  • GL_TEXTURE_CUBE_MAP_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_X : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Y : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Z : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_X : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Y : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Z : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT : glext.h
  • GL_TEXTURE_DEFORMATION_BIT_SGIX : glext.h
  • GL_TEXTURE_DEFORMATION_SGIX : glext.h
  • GL_TEXTURE_DEPTH : glext.h
  • GL_TEXTURE_DEPTH_EXT : glext.h
  • GL_TEXTURE_DEPTH_SIZE : glext.h
  • GL_TEXTURE_DEPTH_SIZE_ARB : glext.h
  • GL_TEXTURE_DS_SIZE_NV : glext.h
  • GL_TEXTURE_DT_SIZE_NV : glext.h
  • GL_TEXTURE_ENV_BIAS_SGIX : glext.h
  • GL_TEXTURE_FILTER4_SIZE_SGIS : glext.h
  • GL_TEXTURE_FILTER_CONTROL : glext.h
  • GL_TEXTURE_FILTER_CONTROL_EXT : glext.h
  • GL_TEXTURE_FLOAT_COMPONENTS_NV : glext.h
  • GL_TEXTURE_GEQUAL_R_SGIX : glext.h
  • GL_TEXTURE_GREEN_SIZE_EXT : glext.h
  • GL_TEXTURE_HI_SIZE_NV : glext.h
  • GL_TEXTURE_INDEX_SIZE_EXT : glext.h
  • GL_TEXTURE_INTENSITY_SIZE_EXT : glext.h
  • GL_TEXTURE_LEQUAL_R_SGIX : glext.h
  • GL_TEXTURE_LIGHT_EXT : glext.h
  • GL_TEXTURE_LIGHTING_MODE_HP : glext.h
  • GL_TEXTURE_LO_SIZE_NV : glext.h
  • GL_TEXTURE_LOD_BIAS : glext.h
  • GL_TEXTURE_LOD_BIAS_EXT : glext.h
  • GL_TEXTURE_LOD_BIAS_R_SGIX : glext.h
  • GL_TEXTURE_LOD_BIAS_S_SGIX : glext.h
  • GL_TEXTURE_LOD_BIAS_T_SGIX : glext.h
  • GL_TEXTURE_LUMINANCE_SIZE_EXT : glext.h
  • GL_TEXTURE_MAG_SIZE_NV : glext.h
  • GL_TEXTURE_MATERIAL_FACE_EXT : glext.h
  • GL_TEXTURE_MATERIAL_PARAMETER_EXT : glext.h
  • GL_TEXTURE_MAX_ANISOTROPY_EXT : glext.h
  • GL_TEXTURE_MAX_CLAMP_R_SGIX : glext.h
  • GL_TEXTURE_MAX_CLAMP_S_SGIX : glext.h
  • GL_TEXTURE_MAX_CLAMP_T_SGIX : glext.h
  • GL_TEXTURE_MAX_LEVEL : glext.h
  • GL_TEXTURE_MAX_LEVEL_SGIS : glext.h
  • GL_TEXTURE_MAX_LOD : glext.h
  • GL_TEXTURE_MAX_LOD_SGIS : glext.h
  • GL_TEXTURE_MIN_LOD : glext.h
  • GL_TEXTURE_MIN_LOD_SGIS : glext.h
  • GL_TEXTURE_MULTI_BUFFER_HINT_SGIX : glext.h
  • GL_TEXTURE_NORMAL_EXT : glext.h
  • GL_TEXTURE_POST_SPECULAR_HP : glext.h
  • GL_TEXTURE_PRE_SPECULAR_HP : glext.h
  • GL_TEXTURE_PRIORITY_EXT : glext.h
  • GL_TEXTURE_RECTANGLE_NV : glext.h
  • GL_TEXTURE_RED_SIZE_EXT : glext.h
  • GL_TEXTURE_RESIDENT_EXT : glext.h
  • GL_TEXTURE_SHADER_NV : glext.h
  • GL_TEXTURE_TOO_LARGE_EXT : glext.h
  • GL_TEXTURE_UNSIGNED_REMAP_MODE_NV : glext.h
  • GL_TEXTURE_WRAP_Q_SGIS : glext.h
  • GL_TEXTURE_WRAP_R : glext.h
  • GL_TEXTURE_WRAP_R_EXT : glext.h
  • GL_TRACK_MATRIX_NV : glext.h
  • GL_TRACK_MATRIX_TRANSFORM_NV : glext.h
  • GL_TRANSFORM_HINT_APPLE : glext.h
  • GL_TRANSPOSE_COLOR_MATRIX : glext.h
  • GL_TRANSPOSE_COLOR_MATRIX_ARB : glext.h
  • GL_TRANSPOSE_CURRENT_MATRIX_ARB : glext.h
  • GL_TRANSPOSE_MODELVIEW_MATRIX : glext.h
  • GL_TRANSPOSE_MODELVIEW_MATRIX_ARB : glext.h
  • GL_TRANSPOSE_NV : glext.h
  • GL_TRANSPOSE_PROJECTION_MATRIX : glext.h
  • GL_TRANSPOSE_PROJECTION_MATRIX_ARB : glext.h
  • GL_TRANSPOSE_TEXTURE_MATRIX : glext.h
  • GL_TRANSPOSE_TEXTURE_MATRIX_ARB : glext.h
  • GL_TRIANGLE_LIST_SUN : glext.h
  • GL_TRIANGLE_MESH_SUN : glext.h
  • GL_UNPACK_CLIENT_STORAGE_APPLE : glext.h
  • GL_UNPACK_CMYK_HINT_EXT : glext.h
  • GL_UNPACK_CONSTANT_DATA_SUNX : glext.h
  • GL_UNPACK_IMAGE_DEPTH_SGIS : glext.h
  • GL_UNPACK_IMAGE_HEIGHT : glext.h
  • GL_UNPACK_IMAGE_HEIGHT_EXT : glext.h
  • GL_UNPACK_RESAMPLE_OML : glext.h
  • GL_UNPACK_RESAMPLE_SGIX : glext.h
  • GL_UNPACK_SKIP_IMAGES : glext.h
  • GL_UNPACK_SKIP_IMAGES_EXT : glext.h
  • GL_UNPACK_SKIP_VOLUMES_SGIS : glext.h
  • GL_UNPACK_SUBSAMPLE_RATE_SGIX : glext.h
  • GL_UNSIGNED_BYTE_2_3_3_REV : glext.h
  • GL_UNSIGNED_BYTE_3_3_2 : glext.h
  • GL_UNSIGNED_BYTE_3_3_2_EXT : glext.h
  • GL_UNSIGNED_IDENTITY_NV : glext.h
  • GL_UNSIGNED_INT_10_10_10_2 : glext.h
  • GL_UNSIGNED_INT_10_10_10_2_EXT : glext.h
  • GL_UNSIGNED_INT_24_8_NV : glext.h
  • GL_UNSIGNED_INT_2_10_10_10_REV : glext.h
  • GL_UNSIGNED_INT_8_8_8_8 : glext.h
  • GL_UNSIGNED_INT_8_8_8_8_EXT : glext.h
  • GL_UNSIGNED_INT_8_8_8_8_REV : glext.h
  • GL_UNSIGNED_INT_8_8_S8_S8_REV_NV : glext.h
  • GL_UNSIGNED_INT_S8_S8_8_8_NV : glext.h
  • GL_UNSIGNED_INVERT_NV : glext.h
  • GL_UNSIGNED_SHORT_1_5_5_5_REV : glext.h
  • GL_UNSIGNED_SHORT_4_4_4_4 : glext.h
  • GL_UNSIGNED_SHORT_4_4_4_4_EXT : glext.h
  • GL_UNSIGNED_SHORT_4_4_4_4_REV : glext.h
  • GL_UNSIGNED_SHORT_5_5_5_1 : glext.h
  • GL_UNSIGNED_SHORT_5_5_5_1_EXT : glext.h
  • GL_UNSIGNED_SHORT_5_6_5 : glext.h
  • GL_UNSIGNED_SHORT_5_6_5_REV : glext.h
  • GL_UNSIGNED_SHORT_8_8_APPLE : glext.h
  • GL_UNSIGNED_SHORT_8_8_REV_APPLE : glext.h
  • GL_VARIABLE_A_NV : glext.h
  • GL_VARIABLE_B_NV : glext.h
  • GL_VARIABLE_C_NV : glext.h
  • GL_VARIABLE_D_NV : glext.h
  • GL_VARIABLE_E_NV : glext.h
  • GL_VARIABLE_F_NV : glext.h
  • GL_VARIABLE_G_NV : glext.h
  • GL_VARIANT_ARRAY_EXT : glext.h
  • GL_VARIANT_ARRAY_POINTER_EXT : glext.h
  • GL_VARIANT_ARRAY_STRIDE_EXT : glext.h
  • GL_VARIANT_ARRAY_TYPE_EXT : glext.h
  • GL_VARIANT_DATATYPE_EXT : glext.h
  • GL_VARIANT_EXT : glext.h
  • GL_VARIANT_VALUE_EXT : glext.h
  • GL_VECTOR_EXT : glext.h
  • GL_VERSION_1_2 : glext.h
  • GL_VERSION_1_3 : glext.h
  • GL_VERSION_1_4 : glext.h
  • GL_VERTEX23_BIT_PGI : glext.h
  • GL_VERTEX4_BIT_PGI : glext.h
  • GL_VERTEX_ARRAY_BINDING_APPLE : glext.h
  • GL_VERTEX_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_VERTEX_ARRAY_COUNT_EXT : glext.h
  • GL_VERTEX_ARRAY_EXT : glext.h
  • GL_VERTEX_ARRAY_LIST_IBM : glext.h
  • GL_VERTEX_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL : glext.h
  • GL_VERTEX_ARRAY_POINTER_EXT : glext.h
  • GL_VERTEX_ARRAY_RANGE_APPLE : glext.h
  • GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE : glext.h
  • GL_VERTEX_ARRAY_RANGE_LENGTH_NV : glext.h
  • GL_VERTEX_ARRAY_RANGE_NV : glext.h
  • GL_VERTEX_ARRAY_RANGE_POINTER_APPLE : glext.h
  • GL_VERTEX_ARRAY_RANGE_POINTER_NV : glext.h
  • GL_VERTEX_ARRAY_RANGE_VALID_NV : glext.h
  • GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV : glext.h
  • GL_VERTEX_ARRAY_SIZE_EXT : glext.h
  • GL_VERTEX_ARRAY_STORAGE_HINT_APPLE : glext.h
  • GL_VERTEX_ARRAY_STRIDE_EXT : glext.h
  • GL_VERTEX_ARRAY_TYPE_EXT : glext.h
  • GL_VERTEX_ATTRIB_ARRAY0_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY10_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY11_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY12_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY13_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY14_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY15_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY1_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY2_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY3_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY4_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY5_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY6_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY7_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY8_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY9_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB : glext.h
  • GL_VERTEX_BLEND_ARB : glext.h
  • GL_VERTEX_CONSISTENT_HINT_PGI : glext.h
  • GL_VERTEX_DATA_HINT_PGI : glext.h
  • GL_VERTEX_PRECLIP_HINT_SGIX : glext.h
  • GL_VERTEX_PRECLIP_SGIX : glext.h
  • GL_VERTEX_PROGRAM_ARB : glext.h
  • GL_VERTEX_PROGRAM_BINDING_NV : glext.h
  • GL_VERTEX_PROGRAM_NV : glext.h
  • GL_VERTEX_PROGRAM_POINT_SIZE_ARB : glext.h
  • GL_VERTEX_PROGRAM_POINT_SIZE_NV : glext.h
  • GL_VERTEX_PROGRAM_TWO_SIDE_ARB : glext.h
  • GL_VERTEX_PROGRAM_TWO_SIDE_NV : glext.h
  • GL_VERTEX_SHADER_BINDING_EXT : glext.h
  • GL_VERTEX_SHADER_EXT : glext.h
  • GL_VERTEX_SHADER_INSTRUCTIONS_EXT : glext.h
  • GL_VERTEX_SHADER_INVARIANTS_EXT : glext.h
  • GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT : glext.h
  • GL_VERTEX_SHADER_LOCALS_EXT : glext.h
  • GL_VERTEX_SHADER_OPTIMIZED_EXT : glext.h
  • GL_VERTEX_SHADER_VARIANTS_EXT : glext.h
  • GL_VERTEX_SOURCE_ATI : glext.h
  • GL_VERTEX_STATE_PROGRAM_NV : glext.h
  • GL_VERTEX_STREAM0_ATI : glext.h
  • GL_VERTEX_STREAM1_ATI : glext.h
  • GL_VERTEX_STREAM2_ATI : glext.h
  • GL_VERTEX_STREAM3_ATI : glext.h
  • GL_VERTEX_STREAM4_ATI : glext.h
  • GL_VERTEX_STREAM5_ATI : glext.h
  • GL_VERTEX_STREAM6_ATI : glext.h
  • GL_VERTEX_STREAM7_ATI : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_EXT : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT : glext.h
  • GL_VERTEX_WEIGHTING_EXT : glext.h
  • GL_VIBRANCE_BIAS_NV : glext.h
  • GL_VIBRANCE_SCALE_NV : glext.h
  • GL_W_EXT : glext.h
  • GL_WEIGHT_ARRAY_ARB : glext.h
  • GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_WEIGHT_ARRAY_POINTER_ARB : glext.h
  • GL_WEIGHT_ARRAY_SIZE_ARB : glext.h
  • GL_WEIGHT_ARRAY_STRIDE_ARB : glext.h
  • GL_WEIGHT_ARRAY_TYPE_ARB : glext.h
  • GL_WEIGHT_SUM_UNITY_ARB : glext.h
  • GL_WIDE_LINE_HINT_PGI : glext.h
  • GL_WIN_phong_shading : glext.h
  • GL_WIN_specular_fog : glext.h
  • GL_WRAP_BORDER_SUN : glext.h
  • GL_WRITE_ONLY_ARB : glext.h
  • GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV : glext.h
  • GL_WRITE_PIXEL_DATA_RANGE_NV : glext.h
  • GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV : glext.h
  • GL_X_EXT : glext.h
  • GL_Y_EXT : glext.h
  • GL_YCBCR_422_APPLE : glext.h
  • GL_YCRCB_422_SGIX : glext.h
  • GL_YCRCB_444_SGIX : glext.h
  • GL_YCRCB_SGIX : glext.h
  • GL_YCRCBA_SGIX : glext.h
  • GL_Z_EXT : glext.h
  • GL_ZERO_EXT : glext.h
  • GLAPI : wglext.h, glext.h
  • GLboolean() : wglext.h, glext.h
  • GLhalfNV : glext.h
  • GLint() : glext.h
  • GLintptrARB : glext.h
  • GLsizeiptrARB : glext.h
  • GLuint() : glext.h
  • green : glext.h

- h -

  • HALF_PI : trigo.h
  • HANDLE() : wglext.h
  • hDC : wglext.h
  • HDC() : wglext.h
  • height : wglext.h, glext.h
  • hglrc : wglext.h
  • HPBUFFERARB() : wglext.h
  • HPBUFFEREXT() : wglext.h
  • hReadDC : wglext.h

- i -

  • iAttribute : wglext.h
  • iBuffer : wglext.h
  • id : glext.h
  • ID_POPUP_ABOUT : resource.h
  • ID_POPUP_CONFIG : resource.h
  • ID_POPUP_DEBUGER : resource.h
  • ID_POPUP_EXIT : resource.h
  • ID_POPUP_HELP : resource.h
  • IDC_BUTTON_CENTER : resource.h
  • IDC_BUTTON_DEBASE : resource.h
  • IDC_BUTTON_DEFAULT : resource.h
  • IDC_BUTTON_DOWN : resource.h
  • IDC_BUTTON_FOG_DENSITY_ADD : resource.h
  • IDC_BUTTON_FOG_DENSITY_SUB : resource.h
  • IDC_BUTTON_FOG_START_ADD : resource.h
  • IDC_BUTTON_FOG_START_SUB : resource.h
  • IDC_BUTTON_FOG_STOP_ADD : resource.h
  • IDC_BUTTON_FOG_STOP_SUB : resource.h
  • IDC_BUTTON_FORUM : resource.h
  • IDC_BUTTON_LEFT : resource.h
  • IDC_BUTTON_LICENCE : resource.h
  • IDC_BUTTON_MAILME : resource.h
  • IDC_BUTTON_MAX : resource.h
  • IDC_BUTTON_MIDS : resource.h
  • IDC_BUTTON_MIN : resource.h
  • IDC_BUTTON_MOVE : resource.h
  • IDC_BUTTON_RIGHT : resource.h
  • IDC_BUTTON_RLEFT : resource.h
  • IDC_BUTTON_RRIGHT : resource.h
  • IDC_BUTTON_TEXTURE : resource.h
  • IDC_BUTTON_URL : resource.h
  • IDC_BUTTON_ZOOM_IN : resource.h
  • IDC_BUTTON_ZOOM_OUT : resource.h
  • IDC_CHECK_A_A : resource.h
  • IDC_CHECK_A_B : resource.h
  • IDC_CHECK_A_G : resource.h
  • IDC_CHECK_A_R : resource.h
  • IDC_CHECK_AMBIENT : resource.h
  • IDC_CHECK_BACKGROUND : resource.h
  • IDC_CHECK_BLENDING : resource.h
  • IDC_CHECK_D_A : resource.h
  • IDC_CHECK_D_B : resource.h
  • IDC_CHECK_D_G : resource.h
  • IDC_CHECK_D_R : resource.h
  • IDC_CHECK_DELTA : resource.h
  • IDC_CHECK_DIFFUSE : resource.h
  • IDC_CHECK_E_A : resource.h
  • IDC_CHECK_E_B : resource.h
  • IDC_CHECK_E_G : resource.h
  • IDC_CHECK_E_R : resource.h
  • IDC_CHECK_EMISSION : resource.h
  • IDC_CHECK_FACE : resource.h
  • IDC_CHECK_FOG : resource.h
  • IDC_CHECK_FPS : resource.h
  • IDC_CHECK_INERTIA : resource.h
  • IDC_CHECK_LIGHT : resource.h
  • IDC_CHECK_LIGHT0 : resource.h
  • IDC_CHECK_LIGHT0_MOVE : resource.h
  • IDC_CHECK_LIGHT1 : resource.h
  • IDC_CHECK_LIGHT1_MOVE : resource.h
  • IDC_CHECK_LIGHT2 : resource.h
  • IDC_CHECK_LIGHT2_MOVE : resource.h
  • IDC_CHECK_LIGHT_VIEW : resource.h
  • IDC_CHECK_MONITOR : resource.h
  • IDC_CHECK_PICKING : resource.h
  • IDC_CHECK_REGION : resource.h
  • IDC_CHECK_REPERE : resource.h
  • IDC_CHECK_S_A : resource.h
  • IDC_CHECK_S_B : resource.h
  • IDC_CHECK_S_G : resource.h
  • IDC_CHECK_S_R : resource.h
  • IDC_CHECK_SPECULAR : resource.h
  • IDC_CHECK_TITLED : resource.h
  • IDC_CHECK_VIEW_BACKGROUND : resource.h
  • IDC_CHECK_VIEW_FPS : resource.h
  • IDC_CHECK_VIEW_INERTIA : resource.h
  • IDC_CHECK_VIEW_LIGHT : resource.h
  • IDC_CHECK_VIEW_REGION : resource.h
  • IDC_CHECK_VIEW_REPERE : resource.h
  • IDC_COMBO_FOG_MODE : resource.h
  • IDC_COMBO_POLYGONE_BACK : resource.h
  • IDC_COMBO_POLYGONE_FRONT : resource.h
  • IDC_COMBO_SPECIALS : resource.h
  • IDC_DCONTROLS : resource.h
  • IDC_EDIT_VALUE : resource.h
  • IDC_MENU : resource.h
  • IDC_MYICON : resource.h
  • IDC_RADIO_CONTROLS_MODE : resource.h
  • IDC_RADIO_CUSTOMSCREEN : resource.h
  • IDC_RADIO_FACE_MODE : resource.h
  • IDC_RADIO_FACEMODE : resource.h
  • IDC_RADIO_FULLSCREEN : resource.h
  • IDC_RICHEDIT_CPU : resource.h
  • IDC_RICHEDIT_FOG_DENSITY : resource.h
  • IDC_RICHEDIT_FOG_END : resource.h
  • IDC_RICHEDIT_FOG_START : resource.h
  • IDC_RICHEDIT_FRAMERATE : resource.h
  • IDC_RICHEDIT_XSIZE : resource.h
  • IDC_RICHEDIT_XWIN : resource.h
  • IDC_RICHEDIT_YSIZE : resource.h
  • IDC_RICHEDIT_YWIN : resource.h
  • IDC_SLIDER1 : resource.h
  • IDC_SLIDER_PAD : resource.h
  • IDC_SPIN_CPU : resource.h
  • IDC_SPIN_FOG_DENSITY : resource.h
  • IDC_SPIN_FOG_END : resource.h
  • IDC_SPIN_FOG_START : resource.h
  • IDC_SPIN_FRAMERATE : resource.h
  • IDC_SPIN_XSIZE : resource.h
  • IDC_SPIN_YSIZE : resource.h
  • IDC_STATIC : resource.h
  • IDC_STATIC1 : resource.h
  • IDC_STATIC2 : resource.h
  • IDC_STATIC_FOG : resource.h
  • IDC_STATIC_FOG_DENSITY : resource.h
  • IDC_STATIC_FOG_START : resource.h
  • IDC_STATIC_FOG_STOP : resource.h
  • IDC_STATIC_INFO : resource.h
  • IDC_STATIC_INFO1 : resource.h
  • IDC_STATIC_INFO10 : resource.h
  • IDC_STATIC_INFO11 : resource.h
  • IDC_STATIC_INFO12 : resource.h
  • IDC_STATIC_INFO13 : resource.h
  • IDC_STATIC_INFO14 : resource.h
  • IDC_STATIC_INFO15 : resource.h
  • IDC_STATIC_INFO16 : resource.h
  • IDC_STATIC_INFO17 : resource.h
  • IDC_STATIC_INFO18 : resource.h
  • IDC_STATIC_INFO19 : resource.h
  • IDC_STATIC_INFO2 : resource.h
  • IDC_STATIC_INFO3 : resource.h
  • IDC_STATIC_INFO4 : resource.h
  • IDC_STATIC_INFO5 : resource.h
  • IDC_STATIC_NAME : resource.h
  • IDC_STATIC_PAD : resource.h
  • IDC_STATIC_PICKING_FULL : resource.h
  • IDC_STATIC_PICKING_SELECTED : resource.h
  • IDC_STATIC_PICKING_SELECTED2 : resource.h
  • IDC_STATIC_PICKING_SELECTED_TITLE : resource.h
  • IDC_STATIC_STRUCTURE : resource.h
  • IDC_STATIC_VALUE : resource.h
  • IDC_STATIC_VARIABLE : resource.h
  • IDC_STATIC_VERSION : resource.h
  • IDC_TREE_ELEM : resource.h
  • IDC_TREE_STRUCT : resource.h
  • IDD_ABOUT : resource.h
  • IDD_ABOUTBOX : resource.h
  • IDD_CONFIG : resource.h
  • IDD_DCONTROLS_DIALOG : resource.h
  • IDD_DEBUG_STRUCT : resource.h
  • IDD_PARAMETRE : resource.h
  • IDD_VALUE_EDITOR : resource.h
  • IDI_DCONTROLS : resource.h
  • IDI_ICON_SYSTRAY : resource.h
  • IDM_ABOUT : resource.h
  • IDM_EXIT : resource.h
  • IDR_MAINFRAME : resource.h
  • ids : glext.h
  • IDS_APP_TITLE : resource.h
  • iEntries : wglext.h
  • iHeight : wglext.h
  • iLayerPlane : wglext.h
  • image : glext.h
  • imageSize : glext.h
  • img : glext.h
  • in : glext.h
  • index : glext.h
  • indices : glext.h
  • InitMultisample() : ARB_Multisample.h, ARB_Multisample.cpp
  • input : glext.h
  • INSERT_DOUBLE : valueEditor.cpp
  • INSERT_FLOAT : valueEditor.cpp
  • INSERT_INT : valueEditor.cpp
  • INSERT_ITEM : valueEditor.cpp
  • INSERT_ITEM_DOUBLE : valueEditor.cpp
  • INSERT_ITEM_FLOAT : valueEditor.cpp
  • INSERT_ITEM_INT : valueEditor.cpp
  • INSERT_ITEM_NUM : valueEditor.cpp
  • INSERT_ITEM_TYPED : valueEditor.cpp
  • int() : wglext.h
  • INT64() : wglext.h
  • internalFormat : glext.h
  • internalformat : glext.h
  • interp : glext.h
  • IntFloorLog2() : trigo.cpp
  • invert : glext.h
  • iPixelFormat : wglext.h
  • IS_FOG : valueEditor.cpp
  • IS_LIGHT : valueEditor.cpp
  • IS_NOTHING : valueEditor.cpp
  • IS_TEXTURE : valueEditor.cpp
  • IsPow2() : trigo.cpp
  • iWidth : wglext.h

- l -

  • LayoutDouble : face.h
  • left : 3d.h
  • len : glext.h
  • length : wglext.h, glext.h
  • level : glext.h
  • line : polygonMode.h
  • linear : texture.h
  • list_after : MyList.h
  • list_before : MyList.h
  • list_current : MyList.h
  • list_first : MyList.h
  • list_last : MyList.h
  • LPVOID() : wglext.h

- m -

  • MAIL_ADRESS : systray.h
  • MailTo() : communTools.h, communTools.cpp
  • mapping : glext.h
  • mask : glext.h
  • mat_black_plastic : material.h
  • mat_black_rubber : material.h
  • mat_brass : material.h
  • mat_bronze : material.h
  • mat_chrome : material.h
  • mat_copper : material.h
  • mat_cyan_rubber : material.h
  • mat_emerald : material.h
  • mat_gold : material.h
  • mat_green_rubber : material.h
  • mat_jade : material.h
  • mat_obsidian : material.h
  • mat_pearl : material.h
  • mat_pewter : material.h
  • mat_polished_bronze : material.h
  • mat_polished_copper : material.h
  • mat_polished_gold : material.h
  • mat_polished_silver : material.h
  • mat_red_rubber : material.h
  • mat_ruby : material.h
  • mat_silver : material.h
  • mat_turquoise : material.h
  • mat_white_rubber : material.h
  • mat_yellow_rubber : material.h
  • matrix : glext.h
  • MAX_BUFFER_SELECT : picking.h
  • maximize : title.h
  • MIN_SIZE_CURSOR : slider.h
  • minimize : title.h
  • mode : glext.h
  • modestride : glext.h
  • modulate : texture.h
  • MoveToBorderTask() : windowTools.h, windowTools.cpp
  • msc : wglext.h
  • muxSum : glext.h
  • MyOpenBrowser() : communTools.h, communTools.cpp

- n -

  • n : glext.h
  • name : glext.h
  • nAttributes : wglext.h
  • NB_MATERIAL : material.h
  • nearest : texture.h
  • NextSubKey() : MyRegistry.H, MyRegistry.CPP
  • nMaxFormats : wglext.h
  • nNumFormats : wglext.h
  • normalized : glext.h
  • num : glext.h
  • NUM_SELECTED_FONT : valueEditor.cpp
  • NUM_SELECTED_LIGHT : valueEditor.cpp
  • NUM_SELECTED_NOTHING : valueEditor.cpp
  • NUM_SELECTED_PICKING : valueEditor.cpp
  • NUM_SELECTED_RENDER : valueEditor.cpp
  • NUM_SELECTED_TEXTURE : valueEditor.cpp
  • NUM_SELECTED_TRASH : valueEditor.cpp
  • numerator : wglext.h
  • nx : glext.h
  • ny : glext.h
  • nz : glext.h

- o -

  • Obj_CallBack : MyObject.h
  • offset : glext.h
  • Op_Add : calculator.h
  • Op_Div : calculator.h
  • Op_Mult : calculator.h
  • Op_Null : calculator.h
  • Op_Sub : calculator.h
  • OpenGL_ExtensionSupported() : openGL_tools.h, openGL_tools.cpp
  • OpenGL_InitMultisample() : openGL_tools.h, openGL_tools.cpp
  • OpenGL_TestError() : openGL_tools.h, openGL_tools.cpp
  • OpenGL_ViewVersion() : openGL_tools.h, openGL_tools.cpp
  • OpenGL_ViewVersionExtansions() : openGL_tools.h, openGL_tools.cpp
  • operator+() : MyString.cpp
  • operator<<() : MyString.cpp
  • original : title.h
  • outW : glext.h
  • outX : glext.h
  • outY : glext.h
  • outZ : glext.h

- p -

  • p : glext.h
  • packed : glext.h
  • pAddress : wglext.h
  • param : glext.h
  • params : glext.h
  • pEvent : wglext.h
  • pfAttribFList : wglext.h
  • pFlag : wglext.h
  • PFNGLMAPBUFFERARBPROC : glext.h
  • PFNGLMAPOBJECTBUFFERATIPROC : glext.h
  • PFNWGLALLOCATEMEMORYNVPROC : wglext.h
  • PFNWGLGETEXTENSIONSSTRINGARBPROC : wglext.h
  • PFNWGLGETEXTENSIONSSTRINGEXTPROC : wglext.h
  • pfValues : wglext.h
  • PI : trigo.h
  • PI_ : openGL_tools.cpp
  • piAttribIList : wglext.h
  • piAttribList : wglext.h
  • piAttributes : wglext.h
  • piFormats : wglext.h
  • piValue : wglext.h
  • piValues : wglext.h
  • pixels : glext.h
  • pLastMissedUsage : wglext.h
  • pMissedFrames : wglext.h
  • pname : glext.h
  • point : polygonMode.h
  • Point2D_double : control.h
  • Point2D_int : control.h
  • pointer : glext.h
  • points : glext.h
  • PolygonModeType : polygonMode.h
  • portion : glext.h
  • PRECISION : trigo.h
  • preserve : glext.h
  • primcount : glext.h
  • priorities : glext.h
  • program : glext.h
  • programs : glext.h
  • pSize : wglext.h
  • Pt_3D_Double : region.h
  • ptrstride : glext.h
  • puBlue : wglext.h
  • puGreen : wglext.h
  • puRed : wglext.h
  • PushButton() : windowTools.h, windowTools.cpp

- q -

  • q : glext.h

- r -

  • r : glext.h
  • RADTODEG : trigo.h
  • range : glext.h
  • ref : glext.h
  • remainder : wglext.h
  • repeat : texture.h
  • replace : texture.h
  • res : glext.h
  • reset : glext.h
  • residences : glext.h
  • ret() : MyString.cpp
  • right : 3d.h
  • row : glext.h
  • Run() : communTools.h, communTools.cpp

- s -

  • s : glext.h
  • sbc : wglext.h
  • scale : glext.h
  • ScreenShotProc() : controlEngine.cpp
  • SetDeltaWindowPos() : windowTools.h, windowTools.cpp
  • SetDeltaWindowSize() : windowTools.h, windowTools.cpp
  • SetFullScreen() : windowTools.h, windowTools.cpp
  • SetSpinPos() : systray.cpp
  • SetSpinRange() : systray.cpp
  • SetWindowSize() : windowTools.h, windowTools.cpp
  • SetWindowStyle() : windowTools.h, windowTools.cpp
  • SetWindowTitle() : windowTools.h, windowTools.cpp
  • SEUIL_MAX_INERTIA : controlEngine.h
  • SEUIL_MIN_INERTIA : controlEngine.h
  • sfactorAlpha : glext.h
  • sfail : glext.h
  • ShowMouse() : windowTools.h, windowTools.cpp
  • sink : glext.h
  • size : glext.h
  • size4d : glext.h
  • SIZE_BUTTON : slider.h
  • SIZE_LIST : controlEngine.cpp
  • span : glext.h
  • SPEED : valueEditor.h
  • SPEED_DELTA : valueEditor.h
  • SPEED_PAD : valueEditor.h
  • SPEED_PAD_DELTA : valueEditor.h
  • src : glext.h
  • ssBlending : controlEngine.h
  • ssDepth : controlEngine.h
  • ssLuminance : controlEngine.h
  • ssRGB : controlEngine.h
  • start : glext.h
  • StateTitle : title.h
  • storagetype : glext.h
  • stride : glext.h
  • string : glext.h
  • sumOutput : glext.h
  • swizzle : glext.h
  • SysTrayProc() : systray.h, systray.cpp

- t -

  • t : glext.h
  • table : glext.h
  • target_msc : wglext.h
  • target_sbc : wglext.h
  • tc : glext.h
  • TEST : screen.cpp
  • TEST_EX : screen.cpp
  • TextAlign : text3d.h
  • texture : glext.h
  • texture1D : texture.h
  • texture2D : texture.h
  • texture3D : texture.h
  • TextureEnvMode : texture.h
  • TextureFilter : texture.h
  • textures : glext.h
  • TextureTarget : texture.h
  • TextureWrap : texture.h
  • TIME_MOVE_ON_INERTIA : Inertia.cpp
  • TIME_OUT_PUSH_DOWN_BUTTON : control.h
  • TIME_TO_VIEW : controlEngine.cpp
  • TITLE_NAME : systray.h
  • ToggleCheck() : windowTools.h, windowTools.cpp
  • top : 3d.h
  • TOpperation : calculator.h
  • transform : glext.h
  • TreeNode : treeView.h
  • TreeView_ExpandAll() : windowTools.h, windowTools.cpp
  • TreeView_ExpandAll_Level() : windowTools.h, windowTools.cpp
  • ty : glext.h
  • type : glext.h
  • TypeButton : control.h
  • TypeMaterial : material.h
  • TypeScreenShot : controlEngine.h
  • tz : glext.h

- u -

  • u1 : glext.h
  • u2 : glext.h
  • uDelay : wglext.h
  • uEdge : wglext.h
  • uFlags : wglext.h
  • uMaxLineDelay : wglext.h
  • uMaxPixelDelay : wglext.h
  • uorder : glext.h
  • uRate : wglext.h
  • URL_3D_CONTROLS : systray.h
  • URL_FORUM : systray.h
  • URL_LICENCE : systray.h
  • usage : glext.h
  • uSource : wglext.h
  • ust : wglext.h
  • ustride : glext.h
  • uType : wglext.h

- v -

  • v : glext.h
  • v1 : glext.h
  • v2 : glext.h
  • value : glext.h
  • ValueEditor_double : valueEditor.h
  • ValueEditor_float : valueEditor.h
  • ValueEditor_int : valueEditor.h
  • ValueEditorProc() : valueEditor.h, valueEditor.cpp
  • valueEditors : valueEditor.cpp
  • values : glext.h
  • variable : glext.h
  • VERSION : 3d.h
  • VOID() : wglext.h
  • void() : wglext.h, glext.h
  • vorder : glext.h
  • vstride : glext.h

- w -

  • w : glext.h
  • w1 : glext.h
  • w2 : glext.h
  • weights : glext.h
  • WGL_3DFX_multisample : wglext.h
  • WGL_ACCELERATION_ARB : wglext.h
  • WGL_ACCELERATION_EXT : wglext.h
  • WGL_ACCUM_ALPHA_BITS_ARB : wglext.h
  • WGL_ACCUM_ALPHA_BITS_EXT : wglext.h
  • WGL_ACCUM_BITS_ARB : wglext.h
  • WGL_ACCUM_BITS_EXT : wglext.h
  • WGL_ACCUM_BLUE_BITS_ARB : wglext.h
  • WGL_ACCUM_BLUE_BITS_EXT : wglext.h
  • WGL_ACCUM_GREEN_BITS_ARB : wglext.h
  • WGL_ACCUM_GREEN_BITS_EXT : wglext.h
  • WGL_ACCUM_RED_BITS_ARB : wglext.h
  • WGL_ACCUM_RED_BITS_EXT : wglext.h
  • WGL_ALPHA_BITS_ARB : wglext.h
  • WGL_ALPHA_BITS_EXT : wglext.h
  • WGL_ALPHA_SHIFT_ARB : wglext.h
  • WGL_ALPHA_SHIFT_EXT : wglext.h
  • WGL_ARB_buffer_region : wglext.h
  • WGL_ARB_extensions_string : wglext.h
  • WGL_ARB_make_current_read : wglext.h
  • WGL_ARB_multisample : wglext.h
  • WGL_ARB_pbuffer : wglext.h
  • WGL_ARB_pixel_format : wglext.h
  • WGL_ARB_render_texture : wglext.h
  • WGL_AUX0_ARB : wglext.h
  • WGL_AUX1_ARB : wglext.h
  • WGL_AUX2_ARB : wglext.h
  • WGL_AUX3_ARB : wglext.h
  • WGL_AUX4_ARB : wglext.h
  • WGL_AUX5_ARB : wglext.h
  • WGL_AUX6_ARB : wglext.h
  • WGL_AUX7_ARB : wglext.h
  • WGL_AUX8_ARB : wglext.h
  • WGL_AUX9_ARB : wglext.h
  • WGL_AUX_BUFFERS_ARB : wglext.h
  • WGL_AUX_BUFFERS_EXT : wglext.h
  • WGL_BACK_COLOR_BUFFER_BIT_ARB : wglext.h
  • WGL_BACK_LEFT_ARB : wglext.h
  • WGL_BACK_RIGHT_ARB : wglext.h
  • WGL_BIND_TO_TEXTURE_DEPTH_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RGB_ARB : wglext.h
  • WGL_BIND_TO_TEXTURE_RGBA_ARB : wglext.h
  • WGL_BLUE_BITS_ARB : wglext.h
  • WGL_BLUE_BITS_EXT : wglext.h
  • WGL_BLUE_SHIFT_ARB : wglext.h
  • WGL_BLUE_SHIFT_EXT : wglext.h
  • WGL_COLOR_BITS_ARB : wglext.h
  • WGL_COLOR_BITS_EXT : wglext.h
  • WGL_CUBE_MAP_FACE_ARB : wglext.h
  • WGL_DEPTH_BITS_ARB : wglext.h
  • WGL_DEPTH_BITS_EXT : wglext.h
  • WGL_DEPTH_BUFFER_BIT_ARB : wglext.h
  • WGL_DEPTH_COMPONENT_NV : wglext.h
  • WGL_DEPTH_FLOAT_EXT : wglext.h
  • WGL_DEPTH_TEXTURE_FORMAT_NV : wglext.h
  • WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D : wglext.h
  • WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D : wglext.h
  • WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D : wglext.h
  • WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D : wglext.h
  • WGL_DOUBLE_BUFFER_ARB : wglext.h
  • WGL_DOUBLE_BUFFER_EXT : wglext.h
  • WGL_DRAW_TO_BITMAP_ARB : wglext.h
  • WGL_DRAW_TO_BITMAP_EXT : wglext.h
  • WGL_DRAW_TO_PBUFFER_ARB : wglext.h
  • WGL_DRAW_TO_PBUFFER_EXT : wglext.h
  • WGL_DRAW_TO_WINDOW_ARB : wglext.h
  • WGL_DRAW_TO_WINDOW_EXT : wglext.h
  • WGL_EXT_depth_float : wglext.h
  • WGL_EXT_display_color_table : wglext.h
  • WGL_EXT_extensions_string : wglext.h
  • WGL_EXT_make_current_read : wglext.h
  • WGL_EXT_multisample : wglext.h
  • WGL_EXT_pbuffer : wglext.h
  • WGL_EXT_pixel_format : wglext.h
  • WGL_EXT_swap_control : wglext.h
  • WGL_FLOAT_COMPONENTS_NV : wglext.h
  • WGL_FRONT_COLOR_BUFFER_BIT_ARB : wglext.h
  • WGL_FRONT_LEFT_ARB : wglext.h
  • WGL_FRONT_RIGHT_ARB : wglext.h
  • WGL_FULL_ACCELERATION_ARB : wglext.h
  • WGL_FULL_ACCELERATION_EXT : wglext.h
  • WGL_GAMMA_EXCLUDE_DESKTOP_I3D : wglext.h
  • WGL_GAMMA_TABLE_SIZE_I3D : wglext.h
  • WGL_GENERIC_ACCELERATION_ARB : wglext.h
  • WGL_GENERIC_ACCELERATION_EXT : wglext.h
  • WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EDGE_RISING_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_MULTIVIEW_I3D : wglext.h
  • WGL_GREEN_BITS_ARB : wglext.h
  • WGL_GREEN_BITS_EXT : wglext.h
  • WGL_GREEN_SHIFT_ARB : wglext.h
  • WGL_GREEN_SHIFT_EXT : wglext.h
  • WGL_I3D_digital_video_control : wglext.h
  • WGL_I3D_gamma : wglext.h
  • WGL_I3D_genlock : wglext.h
  • WGL_I3D_image_buffer : wglext.h
  • WGL_I3D_swap_frame_lock : wglext.h
  • WGL_I3D_swap_frame_usage : wglext.h
  • WGL_IMAGE_BUFFER_LOCK_I3D : wglext.h
  • WGL_IMAGE_BUFFER_MIN_ACCESS_I3D : wglext.h
  • WGL_MAX_PBUFFER_HEIGHT_ARB : wglext.h
  • WGL_MAX_PBUFFER_HEIGHT_EXT : wglext.h
  • WGL_MAX_PBUFFER_PIXELS_ARB : wglext.h
  • WGL_MAX_PBUFFER_PIXELS_EXT : wglext.h
  • WGL_MAX_PBUFFER_WIDTH_ARB : wglext.h
  • WGL_MAX_PBUFFER_WIDTH_EXT : wglext.h
  • WGL_MIPMAP_LEVEL_ARB : wglext.h
  • WGL_MIPMAP_TEXTURE_ARB : wglext.h
  • WGL_NEED_PALETTE_ARB : wglext.h
  • WGL_NEED_PALETTE_EXT : wglext.h
  • WGL_NEED_SYSTEM_PALETTE_ARB : wglext.h
  • WGL_NEED_SYSTEM_PALETTE_EXT : wglext.h
  • WGL_NO_ACCELERATION_ARB : wglext.h
  • WGL_NO_ACCELERATION_EXT : wglext.h
  • WGL_NO_TEXTURE_ARB : wglext.h
  • WGL_NUMBER_OVERLAYS_ARB : wglext.h
  • WGL_NUMBER_OVERLAYS_EXT : wglext.h
  • WGL_NUMBER_PIXEL_FORMATS_ARB : wglext.h
  • WGL_NUMBER_PIXEL_FORMATS_EXT : wglext.h
  • WGL_NUMBER_UNDERLAYS_ARB : wglext.h
  • WGL_NUMBER_UNDERLAYS_EXT : wglext.h
  • WGL_NV_vertex_array_range : wglext.h
  • WGL_OML_sync_control : wglext.h
  • WGL_OPTIMAL_PBUFFER_HEIGHT_EXT : wglext.h
  • WGL_OPTIMAL_PBUFFER_WIDTH_EXT : wglext.h
  • WGL_PBUFFER_HEIGHT_ARB : wglext.h
  • WGL_PBUFFER_HEIGHT_EXT : wglext.h
  • WGL_PBUFFER_LARGEST_ARB : wglext.h
  • WGL_PBUFFER_LARGEST_EXT : wglext.h
  • WGL_PBUFFER_LOST_ARB : wglext.h
  • WGL_PBUFFER_WIDTH_ARB : wglext.h
  • WGL_PBUFFER_WIDTH_EXT : wglext.h
  • WGL_PIXEL_TYPE_ARB : wglext.h
  • WGL_PIXEL_TYPE_EXT : wglext.h
  • WGL_RED_BITS_ARB : wglext.h
  • WGL_RED_BITS_EXT : wglext.h
  • WGL_RED_SHIFT_ARB : wglext.h
  • WGL_RED_SHIFT_EXT : wglext.h
  • WGL_SAMPLE_BUFFERS_3DFX : wglext.h
  • WGL_SAMPLE_BUFFERS_ARB : wglext.h, openGL_tools.cpp, ARB_Multisample.cpp
  • WGL_SAMPLE_BUFFERS_EXT : wglext.h
  • WGL_SAMPLES_3DFX : wglext.h
  • WGL_SAMPLES_ARB : wglext.h, openGL_tools.cpp, ARB_Multisample.cpp
  • WGL_SAMPLES_EXT : wglext.h
  • WGL_SHARE_ACCUM_ARB : wglext.h
  • WGL_SHARE_ACCUM_EXT : wglext.h
  • WGL_SHARE_DEPTH_ARB : wglext.h
  • WGL_SHARE_DEPTH_EXT : wglext.h
  • WGL_SHARE_STENCIL_ARB : wglext.h
  • WGL_SHARE_STENCIL_EXT : wglext.h
  • WGL_STENCIL_BITS_ARB : wglext.h
  • WGL_STENCIL_BITS_EXT : wglext.h
  • WGL_STENCIL_BUFFER_BIT_ARB : wglext.h
  • WGL_STEREO_ARB : wglext.h
  • WGL_STEREO_EXT : wglext.h
  • WGL_SUPPORT_GDI_ARB : wglext.h
  • WGL_SUPPORT_GDI_EXT : wglext.h
  • WGL_SUPPORT_OPENGL_ARB : wglext.h
  • WGL_SUPPORT_OPENGL_EXT : wglext.h
  • WGL_SWAP_COPY_ARB : wglext.h
  • WGL_SWAP_COPY_EXT : wglext.h
  • WGL_SWAP_EXCHANGE_ARB : wglext.h
  • WGL_SWAP_EXCHANGE_EXT : wglext.h
  • WGL_SWAP_LAYER_BUFFERS_ARB : wglext.h
  • WGL_SWAP_LAYER_BUFFERS_EXT : wglext.h
  • WGL_SWAP_METHOD_ARB : wglext.h
  • WGL_SWAP_METHOD_EXT : wglext.h
  • WGL_SWAP_UNDEFINED_ARB : wglext.h
  • WGL_SWAP_UNDEFINED_EXT : wglext.h
  • WGL_TEXTURE_1D_ARB : wglext.h
  • WGL_TEXTURE_2D_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB : wglext.h
  • WGL_TEXTURE_DEPTH_COMPONENT_NV : wglext.h
  • WGL_TEXTURE_FLOAT_R_NV : wglext.h
  • WGL_TEXTURE_FLOAT_RG_NV : wglext.h
  • WGL_TEXTURE_FLOAT_RGB_NV : wglext.h
  • WGL_TEXTURE_FLOAT_RGBA_NV : wglext.h
  • WGL_TEXTURE_FORMAT_ARB : wglext.h
  • WGL_TEXTURE_RECTANGLE_NV : wglext.h
  • WGL_TEXTURE_RGB_ARB : wglext.h
  • WGL_TEXTURE_RGBA_ARB : wglext.h
  • WGL_TEXTURE_TARGET_ARB : wglext.h
  • WGL_TRANSPARENT_ALPHA_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_ARB : wglext.h
  • WGL_TRANSPARENT_BLUE_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_EXT : wglext.h
  • WGL_TRANSPARENT_GREEN_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_INDEX_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_RED_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_VALUE_EXT : wglext.h
  • WGL_TYPE_COLORINDEX_ARB : wglext.h
  • WGL_TYPE_COLORINDEX_EXT : wglext.h
  • WGL_TYPE_RGBA_ARB : wglext.h
  • WGL_TYPE_RGBA_EXT : wglext.h
  • WGL_WGLEXT_VERSION : wglext.h
  • WGLisExtensionSupported() : ARB_Multisample.cpp
  • width : wglext.h, glext.h
  • WinMain() : 3dcontrols.cpp
  • WM_READ_FROM_EDIT : systray.cpp
  • WM_REFRESH : systray.cpp
  • WM_REFRESH_EDIT : systray.cpp
  • WM_REFRESH_SPIN : systray.cpp
  • woffset : glext.h
  • worder : glext.h
  • WS_EX_COMPOSITED : screen.cpp
  • WS_EX_LAYERED : screen.cpp
  • WS_EX_NOACTIVATE : screen.cpp
  • wstride : glext.h

- x -

  • x : wglext.h, glext.h
  • xoffset : glext.h
  • xSrc : wglext.h

- y -

  • y : wglext.h, glext.h
  • yoffset : glext.h
  • ySrc : wglext.h

- z -

  • z : glext.h
  • zoffset : glext.h
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: File Member Index

- a -

  • AFX_MYEXCEPTION_H__70AB5B86_0239_4F62_B3F5_61A033D526AF__INCLUDED_ : MyException.h
  • AFX_TITLEMENU_H__E69DD9C2_0FDA_11D6_9385_0060086FAC36__INCLUDED_ : MyMenu.h

- b -

  • BindTimer : input.h

- c -

  • CBase_double : MyObject.h
  • CBase_float : MyObject.h
  • CBASE_INDEX_CUSTOM : MyObject.h
  • CBASE_INDEX_DOUBLE : MyObject.h
  • CBASE_INDEX_FLOAT : MyObject.h
  • CBASE_INDEX_INT : MyObject.h
  • CBASE_INDEX_STRING : MyObject.h
  • CBase_int : MyObject.h
  • CBase_string : MyObject.h
  • CBase_VE_double : valueEditor.h
  • CBase_VE_float : valueEditor.h
  • CBase_VE_int : valueEditor.h
  • CHECK_FOR_MULTISAMPLE : ARB_Multisample.h

- d -

  • Debug0Param : control.h
  • Debug1Param : control.h
  • Debug2Param : control.h
  • Debug3Param : control.h
  • DEBUG_SCREEN : screen.cpp
  • DebugKey : input.h
  • DebugKey2 : input.h
  • DebugMouse : input.h
  • DebugMouse2 : input.h
  • DEFAULT_ANTIALIASING : controlEngine.h
  • DEFAULT_ANTIALIASING_QUALITY : controlEngine.h
  • DEFAULT_CPU_LIMIT : controlEngine.h
  • DEFAULT_DELTA : controlEngine.h
  • DEFAULT_DEPTH_CONTAINER : control.h
  • DEFAULT_DEPTH_MAX_BUTTON : control.h
  • DEFAULT_DEPTH_MIN_BUTTON : control.h
  • DEFAULT_DEPTH_TEXTBOX : control.h
  • DEFAULT_DEPTH_TITLE : control.h
  • DEFAULT_DEPTH_WINDOW : control.h
  • DEFAULT_DOUBLE_CLICK : controlEngine.h
  • DEFAULT_FOG_DENSITY : controlEngine.h
  • DEFAULT_FOG_ENABLE : controlEngine.h
  • DEFAULT_FOG_END : controlEngine.h
  • DEFAULT_FOG_MODE : controlEngine.h
  • DEFAULT_FOG_START : controlEngine.h
  • DEFAULT_FULLSCREEN : controlEngine.h
  • DEFAULT_INERTIA : controlEngine.h
  • DEFAULT_LIGHT_ENABLE0 : controlEngine.h
  • DEFAULT_LIGHT_ENABLE1 : controlEngine.h
  • DEFAULT_LIGHT_ENABLE2 : controlEngine.h
  • DEFAULT_LIGHT_MOVE0 : controlEngine.h
  • DEFAULT_LIGHT_MOVE1 : controlEngine.h
  • DEFAULT_LIGHT_MOVE2 : controlEngine.h
  • DEFAULT_MONITOR : controlEngine.h
  • DEFAULT_PICKING : controlEngine.h
  • DEFAULT_POLYGON_BACK : controlEngine.h
  • DEFAULT_POLYGON_FRONT : controlEngine.h
  • DEFAULT_SIZE_TRACK_BUTTON : control.h
  • DEFAULT_TIMER_REFRESH : controlEngine.h
  • DEFAULT_TITLED : controlEngine.h
  • DEFAULT_VIEW_BACKGROUND : controlEngine.h
  • DEFAULT_VIEW_FPS : controlEngine.h
  • DEFAULT_VIEW_INERTIA : controlEngine.h
  • DEFAULT_VIEW_LIGHT : controlEngine.h
  • DEFAULT_VIEW_REGION : controlEngine.h
  • DEFAULT_VIEW_REPERE : controlEngine.h
  • DEFAULT_WIDTH : linedock.h, dock.h
  • DEFAULT_XSIZE : controlEngine.h
  • DEFAULT_XSIZE_WINDOW : window.cpp
  • DEFAULT_YSIZE : controlEngine.h
  • DEFAULT_YSIZE_WINDOW : window.cpp
  • DEGTORAD : trigo.h
  • DELTA_FOG : valueEditor.h
  • deltaXwin : controlEngine.h
  • deltaYwin : controlEngine.h
  • DOCK_INIT : control.cpp
  • DOUBLE_PI : trigo.h

- e -

  • ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB : wglext.h
  • ERROR_INVALID_PIXEL_TYPE_ARB : wglext.h
  • ERROR_INVALID_PIXEL_TYPE_EXT : wglext.h

- f -

  • f : curve.cpp
  • FACE_BACK : 3d.h
  • FACE_BOTTOM : 3d.h
  • FACE_FRONT : 3d.h
  • FACE_LEFT : 3d.h
  • FACE_RIGHT : 3d.h
  • FACE_TOP : 3d.h
  • FONT_FILE : 3d.h
  • fx : curve.cpp
  • fxy : curve.cpp
  • fy : curve.cpp

- g -

  • GET_WHEEL_DELTA_WPARAM : 3d.h
  • GL_1PASS_EXT : glext.h
  • GL_1PASS_SGIS : glext.h
  • GL_2PASS_0_EXT : glext.h
  • GL_2PASS_0_SGIS : glext.h
  • GL_2PASS_1_EXT : glext.h
  • GL_2PASS_1_SGIS : glext.h
  • GL_2X_BIT_ATI : glext.h
  • GL_3DFX_multisample : glext.h
  • GL_3DFX_tbuffer : glext.h
  • GL_3DFX_texture_compression_FXT1 : glext.h
  • GL_422_AVERAGE_EXT : glext.h
  • GL_422_EXT : glext.h
  • GL_422_REV_AVERAGE_EXT : glext.h
  • GL_422_REV_EXT : glext.h
  • GL_4PASS_0_EXT : glext.h
  • GL_4PASS_0_SGIS : glext.h
  • GL_4PASS_1_EXT : glext.h
  • GL_4PASS_1_SGIS : glext.h
  • GL_4PASS_2_EXT : glext.h
  • GL_4PASS_2_SGIS : glext.h
  • GL_4PASS_3_EXT : glext.h
  • GL_4PASS_3_SGIS : glext.h
  • GL_4X_BIT_ATI : glext.h
  • GL_8X_BIT_ATI : glext.h
  • GL_ABGR_EXT : glext.h
  • GL_ACTIVE_STENCIL_FACE_EXT : glext.h
  • GL_ACTIVE_TEXTURE : glext.h
  • GL_ACTIVE_TEXTURE_ARB : glext.h
  • GL_ACTIVE_VERTEX_UNITS_ARB : glext.h
  • GL_ADD_ATI : glext.h
  • GL_ADD_SIGNED : glext.h
  • GL_ADD_SIGNED_ARB : glext.h
  • GL_ADD_SIGNED_EXT : glext.h
  • GL_ALIASED_LINE_WIDTH_RANGE : glext.h
  • GL_ALIASED_POINT_SIZE_RANGE : glext.h
  • GL_ALL_COMPLETED_NV : glext.h
  • GL_ALLOW_DRAW_FRG_HINT_PGI : glext.h
  • GL_ALLOW_DRAW_MEM_HINT_PGI : glext.h
  • GL_ALLOW_DRAW_OBJ_HINT_PGI : glext.h
  • GL_ALLOW_DRAW_WIN_HINT_PGI : glext.h
  • GL_ALPHA12_EXT : glext.h
  • GL_ALPHA16_EXT : glext.h
  • GL_ALPHA4_EXT : glext.h
  • GL_ALPHA8_EXT : glext.h
  • GL_ALPHA_FLOAT16_ATI : glext.h
  • GL_ALPHA_FLOAT32_ATI : glext.h
  • GL_ALPHA_MAX_CLAMP_INGR : glext.h
  • GL_ALPHA_MAX_SGIX : glext.h
  • GL_ALPHA_MIN_CLAMP_INGR : glext.h
  • GL_ALPHA_MIN_SGIX : glext.h
  • GL_ALWAYS_FAST_HINT_PGI : glext.h
  • GL_ALWAYS_SOFT_HINT_PGI : glext.h
  • GL_APPLE_client_storage : glext.h
  • GL_APPLE_element_array : glext.h
  • GL_APPLE_fence : glext.h
  • GL_APPLE_specular_vector : glext.h
  • GL_APPLE_transform_hint : glext.h
  • GL_APPLE_vertex_array_object : glext.h
  • GL_APPLE_vertex_array_range : glext.h
  • GL_APPLE_ycbcr_422 : glext.h
  • GL_ARB_depth_texture : glext.h
  • GL_ARB_fragment_program : glext.h
  • GL_ARB_matrix_palette : glext.h
  • GL_ARB_multisample : glext.h
  • GL_ARB_multitexture : glext.h
  • GL_ARB_point_parameters : glext.h
  • GL_ARB_shadow : glext.h
  • GL_ARB_shadow_ambient : glext.h
  • GL_ARB_texture_border_clamp : glext.h
  • GL_ARB_texture_compression : glext.h
  • GL_ARB_texture_cube_map : glext.h
  • GL_ARB_texture_env_add : glext.h
  • GL_ARB_texture_env_combine : glext.h
  • GL_ARB_texture_env_crossbar : glext.h
  • GL_ARB_texture_env_dot3 : glext.h
  • GL_ARB_texture_mirror_repeat : glext.h
  • GL_ARB_transpose_matrix : glext.h
  • GL_ARB_vertex_blend : glext.h
  • GL_ARB_vertex_buffer_object : glext.h
  • GL_ARB_vertex_program : glext.h
  • GL_ARB_window_pos : glext.h
  • GL_ARRAY_BUFFER_ARB : glext.h
  • GL_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_ARRAY_ELEMENT_LOCK_COUNT_EXT : glext.h
  • GL_ARRAY_ELEMENT_LOCK_FIRST_EXT : glext.h
  • GL_ARRAY_OBJECT_BUFFER_ATI : glext.h
  • GL_ARRAY_OBJECT_OFFSET_ATI : glext.h
  • GL_ASYNC_DRAW_PIXELS_SGIX : glext.h
  • GL_ASYNC_HISTOGRAM_SGIX : glext.h
  • GL_ASYNC_MARKER_SGIX : glext.h
  • GL_ASYNC_READ_PIXELS_SGIX : glext.h
  • GL_ASYNC_TEX_IMAGE_SGIX : glext.h
  • GL_ATI_draw_buffers : glext.h
  • GL_ATI_element_array : glext.h
  • GL_ATI_envmap_bumpmap : glext.h
  • GL_ATI_fragment_shader : glext.h
  • GL_ATI_map_object_buffer : glext.h
  • GL_ATI_pn_triangles : glext.h
  • GL_ATI_separate_stencil : glext.h
  • GL_ATI_text_fragment_shader : glext.h
  • GL_ATI_texture_env_combine3 : glext.h
  • GL_ATI_texture_float : glext.h
  • GL_ATI_texture_mirror_once : glext.h
  • GL_ATI_vertex_array_object : glext.h
  • GL_ATI_vertex_attrib_array_object : glext.h
  • GL_ATI_vertex_streams : glext.h
  • GL_ATTENUATION_EXT : glext.h
  • GL_ATTRIB_ARRAY_POINTER_NV : glext.h
  • GL_ATTRIB_ARRAY_SIZE_NV : glext.h
  • GL_ATTRIB_ARRAY_STRIDE_NV : glext.h
  • GL_ATTRIB_ARRAY_TYPE_NV : glext.h
  • GL_AVERAGE_EXT : glext.h
  • GL_AVERAGE_HP : glext.h
  • GL_BACK_NORMALS_HINT_PGI : glext.h
  • GL_BGR : glext.h
  • GL_BGR_EXT : glext.h
  • GL_BGRA : glext.h
  • GL_BGRA_EXT : glext.h
  • GL_BIAS_BIT_ATI : glext.h
  • GL_BIAS_BY_NEGATIVE_ONE_HALF_NV : glext.h
  • GL_BINORMAL_ARRAY_EXT : glext.h
  • GL_BINORMAL_ARRAY_POINTER_EXT : glext.h
  • GL_BINORMAL_ARRAY_STRIDE_EXT : glext.h
  • GL_BINORMAL_ARRAY_TYPE_EXT : glext.h
  • GL_BLEND_COLOR : glext.h
  • GL_BLEND_COLOR_EXT : glext.h
  • GL_BLEND_DST_ALPHA : glext.h
  • GL_BLEND_DST_ALPHA_EXT : glext.h
  • GL_BLEND_DST_RGB : glext.h
  • GL_BLEND_DST_RGB_EXT : glext.h
  • GL_BLEND_EQUATION : glext.h
  • GL_BLEND_EQUATION_EXT : glext.h
  • GL_BLEND_SRC_ALPHA : glext.h
  • GL_BLEND_SRC_ALPHA_EXT : glext.h
  • GL_BLEND_SRC_RGB : glext.h
  • GL_BLEND_SRC_RGB_EXT : glext.h
  • GL_BLUE_BIT_ATI : glext.h
  • GL_BLUE_MAX_CLAMP_INGR : glext.h
  • GL_BLUE_MIN_CLAMP_INGR : glext.h
  • GL_BUFFER_ACCESS_ARB : glext.h
  • GL_BUFFER_MAP_POINTER_ARB : glext.h
  • GL_BUFFER_MAPPED_ARB : glext.h
  • GL_BUFFER_SIZE_ARB : glext.h
  • GL_BUFFER_USAGE_ARB : glext.h
  • GL_BUMP_ENVMAP_ATI : glext.h
  • GL_BUMP_NUM_TEX_UNITS_ATI : glext.h
  • GL_BUMP_ROT_MATRIX_ATI : glext.h
  • GL_BUMP_ROT_MATRIX_SIZE_ATI : glext.h
  • GL_BUMP_TARGET_ATI : glext.h
  • GL_BUMP_TEX_UNITS_ATI : glext.h
  • GL_CALLIGRAPHIC_FRAGMENT_SGIX : glext.h
  • GL_CLAMP_TO_BORDER : glext.h
  • GL_CLAMP_TO_BORDER_ARB : glext.h
  • GL_CLAMP_TO_BORDER_SGIS : glext.h
  • GL_CLAMP_TO_EDGE : glext.h
  • GL_CLAMP_TO_EDGE_SGIS : glext.h
  • GL_CLIENT_ACTIVE_TEXTURE : glext.h
  • GL_CLIENT_ACTIVE_TEXTURE_ARB : glext.h
  • GL_CLIP_FAR_HINT_PGI : glext.h
  • GL_CLIP_NEAR_HINT_PGI : glext.h
  • GL_CLIP_VOLUME_CLIPPING_HINT_EXT : glext.h
  • GL_CMYK_EXT : glext.h
  • GL_CMYKA_EXT : glext.h
  • GL_CND0_ATI : glext.h
  • GL_CND_ATI : glext.h
  • GL_COLOR3_BIT_PGI : glext.h
  • GL_COLOR4_BIT_PGI : glext.h
  • GL_COLOR_ALPHA_PAIRING_ATI : glext.h
  • GL_COLOR_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_COLOR_ARRAY_COUNT_EXT : glext.h
  • GL_COLOR_ARRAY_EXT : glext.h
  • GL_COLOR_ARRAY_LIST_IBM : glext.h
  • GL_COLOR_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL : glext.h
  • GL_COLOR_ARRAY_POINTER_EXT : glext.h
  • GL_COLOR_ARRAY_SIZE_EXT : glext.h
  • GL_COLOR_ARRAY_STRIDE_EXT : glext.h
  • GL_COLOR_ARRAY_TYPE_EXT : glext.h
  • GL_COLOR_INDEX12_EXT : glext.h
  • GL_COLOR_INDEX16_EXT : glext.h
  • GL_COLOR_INDEX1_EXT : glext.h
  • GL_COLOR_INDEX2_EXT : glext.h
  • GL_COLOR_INDEX4_EXT : glext.h
  • GL_COLOR_INDEX8_EXT : glext.h
  • GL_COLOR_MATRIX : glext.h
  • GL_COLOR_MATRIX_SGI : glext.h
  • GL_COLOR_MATRIX_STACK_DEPTH : glext.h
  • GL_COLOR_MATRIX_STACK_DEPTH_SGI : glext.h
  • GL_COLOR_SUM : glext.h
  • GL_COLOR_SUM_ARB : glext.h
  • GL_COLOR_SUM_CLAMP_NV : glext.h
  • GL_COLOR_SUM_EXT : glext.h
  • GL_COLOR_TABLE : glext.h
  • GL_COLOR_TABLE_ALPHA_SIZE : glext.h
  • GL_COLOR_TABLE_ALPHA_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_BIAS : glext.h
  • GL_COLOR_TABLE_BIAS_SGI : glext.h
  • GL_COLOR_TABLE_BLUE_SIZE : glext.h
  • GL_COLOR_TABLE_BLUE_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_FORMAT : glext.h
  • GL_COLOR_TABLE_FORMAT_SGI : glext.h
  • GL_COLOR_TABLE_GREEN_SIZE : glext.h
  • GL_COLOR_TABLE_GREEN_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_INTENSITY_SIZE : glext.h
  • GL_COLOR_TABLE_INTENSITY_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_LUMINANCE_SIZE : glext.h
  • GL_COLOR_TABLE_LUMINANCE_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_RED_SIZE : glext.h
  • GL_COLOR_TABLE_RED_SIZE_SGI : glext.h
  • GL_COLOR_TABLE_SCALE : glext.h
  • GL_COLOR_TABLE_SCALE_SGI : glext.h
  • GL_COLOR_TABLE_SGI : glext.h
  • GL_COLOR_TABLE_WIDTH : glext.h
  • GL_COLOR_TABLE_WIDTH_SGI : glext.h
  • GL_COMBINE : glext.h
  • GL_COMBINE4_NV : glext.h
  • GL_COMBINE_ALPHA : glext.h
  • GL_COMBINE_ALPHA_ARB : glext.h
  • GL_COMBINE_ALPHA_EXT : glext.h
  • GL_COMBINE_ARB : glext.h
  • GL_COMBINE_EXT : glext.h
  • GL_COMBINE_RGB : glext.h
  • GL_COMBINE_RGB_ARB : glext.h
  • GL_COMBINE_RGB_EXT : glext.h
  • GL_COMBINER0_NV : glext.h
  • GL_COMBINER1_NV : glext.h
  • GL_COMBINER2_NV : glext.h
  • GL_COMBINER3_NV : glext.h
  • GL_COMBINER4_NV : glext.h
  • GL_COMBINER5_NV : glext.h
  • GL_COMBINER6_NV : glext.h
  • GL_COMBINER7_NV : glext.h
  • GL_COMBINER_AB_DOT_PRODUCT_NV : glext.h
  • GL_COMBINER_AB_OUTPUT_NV : glext.h
  • GL_COMBINER_BIAS_NV : glext.h
  • GL_COMBINER_CD_DOT_PRODUCT_NV : glext.h
  • GL_COMBINER_CD_OUTPUT_NV : glext.h
  • GL_COMBINER_COMPONENT_USAGE_NV : glext.h
  • GL_COMBINER_INPUT_NV : glext.h
  • GL_COMBINER_MAPPING_NV : glext.h
  • GL_COMBINER_MUX_SUM_NV : glext.h
  • GL_COMBINER_SCALE_NV : glext.h
  • GL_COMBINER_SUM_OUTPUT_NV : glext.h
  • GL_COMP_BIT_ATI : glext.h
  • GL_COMPARE_R_TO_TEXTURE : glext.h
  • GL_COMPARE_R_TO_TEXTURE_ARB : glext.h
  • GL_COMPRESSED_ALPHA : glext.h
  • GL_COMPRESSED_ALPHA_ARB : glext.h
  • GL_COMPRESSED_INTENSITY : glext.h
  • GL_COMPRESSED_INTENSITY_ARB : glext.h
  • GL_COMPRESSED_LUMINANCE : glext.h
  • GL_COMPRESSED_LUMINANCE_ALPHA : glext.h
  • GL_COMPRESSED_LUMINANCE_ALPHA_ARB : glext.h
  • GL_COMPRESSED_LUMINANCE_ARB : glext.h
  • GL_COMPRESSED_RGB : glext.h
  • GL_COMPRESSED_RGB_ARB : glext.h
  • GL_COMPRESSED_RGB_FXT1_3DFX : glext.h
  • GL_COMPRESSED_RGB_S3TC_DXT1_EXT : glext.h
  • GL_COMPRESSED_RGBA : glext.h
  • GL_COMPRESSED_RGBA_ARB : glext.h
  • GL_COMPRESSED_RGBA_FXT1_3DFX : glext.h
  • GL_COMPRESSED_RGBA_S3TC_DXT1_EXT : glext.h
  • GL_COMPRESSED_RGBA_S3TC_DXT3_EXT : glext.h
  • GL_COMPRESSED_RGBA_S3TC_DXT5_EXT : glext.h
  • GL_COMPRESSED_TEXTURE_FORMATS : glext.h
  • GL_COMPRESSED_TEXTURE_FORMATS_ARB : glext.h
  • GL_CON_0_ATI : glext.h
  • GL_CON_10_ATI : glext.h
  • GL_CON_11_ATI : glext.h
  • GL_CON_12_ATI : glext.h
  • GL_CON_13_ATI : glext.h
  • GL_CON_14_ATI : glext.h
  • GL_CON_15_ATI : glext.h
  • GL_CON_16_ATI : glext.h
  • GL_CON_17_ATI : glext.h
  • GL_CON_18_ATI : glext.h
  • GL_CON_19_ATI : glext.h
  • GL_CON_1_ATI : glext.h
  • GL_CON_20_ATI : glext.h
  • GL_CON_21_ATI : glext.h
  • GL_CON_22_ATI : glext.h
  • GL_CON_23_ATI : glext.h
  • GL_CON_24_ATI : glext.h
  • GL_CON_25_ATI : glext.h
  • GL_CON_26_ATI : glext.h
  • GL_CON_27_ATI : glext.h
  • GL_CON_28_ATI : glext.h
  • GL_CON_29_ATI : glext.h
  • GL_CON_2_ATI : glext.h
  • GL_CON_30_ATI : glext.h
  • GL_CON_31_ATI : glext.h
  • GL_CON_3_ATI : glext.h
  • GL_CON_4_ATI : glext.h
  • GL_CON_5_ATI : glext.h
  • GL_CON_6_ATI : glext.h
  • GL_CON_7_ATI : glext.h
  • GL_CON_8_ATI : glext.h
  • GL_CON_9_ATI : glext.h
  • GL_CONSERVE_MEMORY_HINT_PGI : glext.h
  • GL_CONST_EYE_NV : glext.h
  • GL_CONSTANT : glext.h
  • GL_CONSTANT_ALPHA : glext.h
  • GL_CONSTANT_ALPHA_EXT : glext.h
  • GL_CONSTANT_ARB : glext.h
  • GL_CONSTANT_BORDER : glext.h
  • GL_CONSTANT_BORDER_HP : glext.h
  • GL_CONSTANT_COLOR : glext.h
  • GL_CONSTANT_COLOR0_NV : glext.h
  • GL_CONSTANT_COLOR1_NV : glext.h
  • GL_CONSTANT_COLOR_EXT : glext.h
  • GL_CONSTANT_EXT : glext.h
  • GL_CONVOLUTION_1D : glext.h
  • GL_CONVOLUTION_1D_EXT : glext.h
  • GL_CONVOLUTION_2D : glext.h
  • GL_CONVOLUTION_2D_EXT : glext.h
  • GL_CONVOLUTION_BORDER_COLOR : glext.h
  • GL_CONVOLUTION_BORDER_COLOR_HP : glext.h
  • GL_CONVOLUTION_BORDER_MODE : glext.h
  • GL_CONVOLUTION_BORDER_MODE_EXT : glext.h
  • GL_CONVOLUTION_FILTER_BIAS : glext.h
  • GL_CONVOLUTION_FILTER_BIAS_EXT : glext.h
  • GL_CONVOLUTION_FILTER_SCALE : glext.h
  • GL_CONVOLUTION_FILTER_SCALE_EXT : glext.h
  • GL_CONVOLUTION_FORMAT : glext.h
  • GL_CONVOLUTION_FORMAT_EXT : glext.h
  • GL_CONVOLUTION_HEIGHT : glext.h
  • GL_CONVOLUTION_HEIGHT_EXT : glext.h
  • GL_CONVOLUTION_HINT_SGIX : glext.h
  • GL_CONVOLUTION_WIDTH : glext.h
  • GL_CONVOLUTION_WIDTH_EXT : glext.h
  • GL_COORD_REPLACE_NV : glext.h
  • GL_CUBIC_EXT : glext.h
  • GL_CUBIC_HP : glext.h
  • GL_CULL_FRAGMENT_NV : glext.h
  • GL_CULL_MODES_NV : glext.h
  • GL_CULL_VERTEX_EXT : glext.h
  • GL_CULL_VERTEX_EYE_POSITION_EXT : glext.h
  • GL_CULL_VERTEX_IBM : glext.h
  • GL_CULL_VERTEX_OBJECT_POSITION_EXT : glext.h
  • GL_CURRENT_ATTRIB_NV : glext.h
  • GL_CURRENT_BINORMAL_EXT : glext.h
  • GL_CURRENT_FOG_COORDINATE : glext.h
  • GL_CURRENT_FOG_COORDINATE_EXT : glext.h
  • GL_CURRENT_MATRIX_ARB : glext.h
  • GL_CURRENT_MATRIX_INDEX_ARB : glext.h
  • GL_CURRENT_MATRIX_NV : glext.h
  • GL_CURRENT_MATRIX_STACK_DEPTH_ARB : glext.h
  • GL_CURRENT_MATRIX_STACK_DEPTH_NV : glext.h
  • GL_CURRENT_OCCLUSION_QUERY_ID_NV : glext.h
  • GL_CURRENT_PALETTE_MATRIX_ARB : glext.h
  • GL_CURRENT_RASTER_NORMAL_SGIX : glext.h
  • GL_CURRENT_SECONDARY_COLOR : glext.h
  • GL_CURRENT_SECONDARY_COLOR_EXT : glext.h
  • GL_CURRENT_TANGENT_EXT : glext.h
  • GL_CURRENT_VERTEX_ATTRIB_ARB : glext.h
  • GL_CURRENT_VERTEX_EXT : glext.h
  • GL_CURRENT_VERTEX_WEIGHT_EXT : glext.h
  • GL_CURRENT_WEIGHT_ARB : glext.h
  • GL_DECR_WRAP : glext.h
  • GL_DECR_WRAP_EXT : glext.h
  • GL_DEFORMATIONS_MASK_SGIX : glext.h
  • GL_DEPENDENT_AR_TEXTURE_2D_NV : glext.h
  • GL_DEPENDENT_GB_TEXTURE_2D_NV : glext.h
  • GL_DEPENDENT_HILO_TEXTURE_2D_NV : glext.h
  • GL_DEPENDENT_RGB_TEXTURE_3D_NV : glext.h
  • GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV : glext.h
  • GL_DEPTH_CLAMP_NV : glext.h
  • GL_DEPTH_COMPONENT16 : glext.h
  • GL_DEPTH_COMPONENT16_ARB : glext.h
  • GL_DEPTH_COMPONENT16_SGIX : glext.h
  • GL_DEPTH_COMPONENT24 : glext.h
  • GL_DEPTH_COMPONENT24_ARB : glext.h
  • GL_DEPTH_COMPONENT24_SGIX : glext.h
  • GL_DEPTH_COMPONENT32 : glext.h
  • GL_DEPTH_COMPONENT32_ARB : glext.h
  • GL_DEPTH_COMPONENT32_SGIX : glext.h
  • GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX : glext.h
  • GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX : glext.h
  • GL_DEPTH_PASS_INSTRUMENT_SGIX : glext.h
  • GL_DEPTH_STENCIL_NV : glext.h
  • GL_DEPTH_STENCIL_TO_BGRA_NV : glext.h
  • GL_DEPTH_STENCIL_TO_RGBA_NV : glext.h
  • GL_DEPTH_TEXTURE_MODE : glext.h
  • GL_DEPTH_TEXTURE_MODE_ARB : glext.h
  • GL_DETAIL_TEXTURE_2D_BINDING_SGIS : glext.h
  • GL_DETAIL_TEXTURE_2D_SGIS : glext.h
  • GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS : glext.h
  • GL_DETAIL_TEXTURE_LEVEL_SGIS : glext.h
  • GL_DETAIL_TEXTURE_MODE_SGIS : glext.h
  • GL_DISCARD_ATI : glext.h
  • GL_DISCARD_NV : glext.h
  • GL_DISTANCE_ATTENUATION_EXT : glext.h
  • GL_DISTANCE_ATTENUATION_SGIS : glext.h
  • GL_DOT2_ADD_ATI : glext.h
  • GL_DOT3_ATI : glext.h
  • GL_DOT3_RGB : glext.h
  • GL_DOT3_RGB_ARB : glext.h
  • GL_DOT3_RGB_EXT : glext.h
  • GL_DOT3_RGBA : glext.h
  • GL_DOT3_RGBA_ARB : glext.h
  • GL_DOT3_RGBA_EXT : glext.h
  • GL_DOT4_ATI : glext.h
  • GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV : glext.h
  • GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV : glext.h
  • GL_DOT_PRODUCT_DEPTH_REPLACE_NV : glext.h
  • GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV : glext.h
  • GL_DOT_PRODUCT_NV : glext.h
  • GL_DOT_PRODUCT_PASS_THROUGH_NV : glext.h
  • GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_1D_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_2D_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_3D_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV : glext.h
  • GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV : glext.h
  • GL_DRAW_BUFFER0_ATI : glext.h
  • GL_DRAW_BUFFER10_ATI : glext.h
  • GL_DRAW_BUFFER11_ATI : glext.h
  • GL_DRAW_BUFFER12_ATI : glext.h
  • GL_DRAW_BUFFER13_ATI : glext.h
  • GL_DRAW_BUFFER14_ATI : glext.h
  • GL_DRAW_BUFFER15_ATI : glext.h
  • GL_DRAW_BUFFER1_ATI : glext.h
  • GL_DRAW_BUFFER2_ATI : glext.h
  • GL_DRAW_BUFFER3_ATI : glext.h
  • GL_DRAW_BUFFER4_ATI : glext.h
  • GL_DRAW_BUFFER5_ATI : glext.h
  • GL_DRAW_BUFFER6_ATI : glext.h
  • GL_DRAW_BUFFER7_ATI : glext.h
  • GL_DRAW_BUFFER8_ATI : glext.h
  • GL_DRAW_BUFFER9_ATI : glext.h
  • GL_DRAW_PIXELS_APPLE : glext.h
  • GL_DS_BIAS_NV : glext.h
  • GL_DS_SCALE_NV : glext.h
  • GL_DSDT8_MAG8_INTENSITY8_NV : glext.h
  • GL_DSDT8_MAG8_NV : glext.h
  • GL_DSDT8_NV : glext.h
  • GL_DSDT_MAG_INTENSITY_NV : glext.h
  • GL_DSDT_MAG_NV : glext.h
  • GL_DSDT_MAG_VIB_NV : glext.h
  • GL_DSDT_NV : glext.h
  • GL_DT_BIAS_NV : glext.h
  • GL_DT_SCALE_NV : glext.h
  • GL_DU8DV8_ATI : glext.h
  • GL_DUAL_ALPHA12_SGIS : glext.h
  • GL_DUAL_ALPHA16_SGIS : glext.h
  • GL_DUAL_ALPHA4_SGIS : glext.h
  • GL_DUAL_ALPHA8_SGIS : glext.h
  • GL_DUAL_INTENSITY12_SGIS : glext.h
  • GL_DUAL_INTENSITY16_SGIS : glext.h
  • GL_DUAL_INTENSITY4_SGIS : glext.h
  • GL_DUAL_INTENSITY8_SGIS : glext.h
  • GL_DUAL_LUMINANCE12_SGIS : glext.h
  • GL_DUAL_LUMINANCE16_SGIS : glext.h
  • GL_DUAL_LUMINANCE4_SGIS : glext.h
  • GL_DUAL_LUMINANCE8_SGIS : glext.h
  • GL_DUAL_LUMINANCE_ALPHA4_SGIS : glext.h
  • GL_DUAL_LUMINANCE_ALPHA8_SGIS : glext.h
  • GL_DUAL_TEXTURE_SELECT_SGIS : glext.h
  • GL_DUDV_ATI : glext.h
  • GL_DYNAMIC_ATI : glext.h
  • GL_DYNAMIC_COPY_ARB : glext.h
  • GL_DYNAMIC_DRAW_ARB : glext.h
  • GL_DYNAMIC_READ_ARB : glext.h
  • GL_E_TIMES_F_NV : glext.h
  • GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_EDGE_FLAG_ARRAY_COUNT_EXT : glext.h
  • GL_EDGE_FLAG_ARRAY_EXT : glext.h
  • GL_EDGE_FLAG_ARRAY_LIST_IBM : glext.h
  • GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_EDGE_FLAG_ARRAY_POINTER_EXT : glext.h
  • GL_EDGE_FLAG_ARRAY_STRIDE_EXT : glext.h
  • GL_EDGEFLAG_BIT_PGI : glext.h
  • GL_EIGHTH_BIT_ATI : glext.h
  • GL_ELEMENT_ARRAY_APPLE : glext.h
  • GL_ELEMENT_ARRAY_ATI : glext.h
  • GL_ELEMENT_ARRAY_BUFFER_ARB : glext.h
  • GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_ELEMENT_ARRAY_POINTER_APPLE : glext.h
  • GL_ELEMENT_ARRAY_POINTER_ATI : glext.h
  • GL_ELEMENT_ARRAY_TYPE_APPLE : glext.h
  • GL_ELEMENT_ARRAY_TYPE_ATI : glext.h
  • GL_EMBOSS_CONSTANT_NV : glext.h
  • GL_EMBOSS_LIGHT_NV : glext.h
  • GL_EMBOSS_MAP_NV : glext.h
  • GL_EVAL_2D_NV : glext.h
  • GL_EVAL_FRACTIONAL_TESSELLATION_NV : glext.h
  • GL_EVAL_TRIANGULAR_2D_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB0_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB10_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB11_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB12_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB13_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB14_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB15_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB1_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB2_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB3_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB4_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB5_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB6_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB7_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB8_NV : glext.h
  • GL_EVAL_VERTEX_ATTRIB9_NV : glext.h
  • GL_EXPAND_NEGATE_NV : glext.h
  • GL_EXPAND_NORMAL_NV : glext.h
  • GL_EXT_422_pixels : glext.h
  • GL_EXT_abgr : glext.h
  • GL_EXT_bgra : glext.h
  • GL_EXT_blend_color : glext.h
  • GL_EXT_blend_func_separate : glext.h
  • GL_EXT_blend_logic_op : glext.h
  • GL_EXT_blend_minmax : glext.h
  • GL_EXT_blend_subtract : glext.h
  • GL_EXT_clip_volume_hint : glext.h
  • GL_EXT_cmyka : glext.h
  • GL_EXT_color_matrix : glext.h
  • GL_EXT_color_subtable : glext.h
  • GL_EXT_compiled_vertex_array : glext.h
  • GL_EXT_convolution : glext.h
  • GL_EXT_coordinate_frame : glext.h
  • GL_EXT_copy_texture : glext.h
  • GL_EXT_cull_vertex : glext.h
  • GL_EXT_draw_range_elements : glext.h
  • GL_EXT_fog_coord : glext.h
  • GL_EXT_histogram : glext.h
  • GL_EXT_index_array_formats : glext.h
  • GL_EXT_index_func : glext.h
  • GL_EXT_index_material : glext.h
  • GL_EXT_index_texture : glext.h
  • GL_EXT_light_texture : glext.h
  • GL_EXT_misc_attribute : glext.h
  • GL_EXT_multi_draw_arrays : glext.h
  • GL_EXT_multisample : glext.h
  • GL_EXT_packed_pixels : glext.h
  • GL_EXT_paletted_texture : glext.h
  • GL_EXT_pixel_transform : glext.h
  • GL_EXT_pixel_transform_color_table : glext.h
  • GL_EXT_point_parameters : glext.h
  • GL_EXT_polygon_offset : glext.h
  • GL_EXT_rescale_normal : glext.h
  • GL_EXT_secondary_color : glext.h
  • GL_EXT_separate_specular_color : glext.h
  • GL_EXT_shadow_funcs : glext.h
  • GL_EXT_shared_texture_palette : glext.h
  • GL_EXT_stencil_two_side : glext.h
  • GL_EXT_stencil_wrap : glext.h
  • GL_EXT_subtexture : glext.h
  • GL_EXT_texture : glext.h
  • GL_EXT_texture3D : glext.h
  • GL_EXT_texture_env_add : glext.h
  • GL_EXT_texture_env_combine : glext.h
  • GL_EXT_texture_env_dot3 : glext.h
  • GL_EXT_texture_filter_anisotropic : glext.h
  • GL_EXT_texture_lod_bias : glext.h
  • GL_EXT_texture_object : glext.h
  • GL_EXT_texture_perturb_normal : glext.h
  • GL_EXT_vertex_array : glext.h
  • GL_EXT_vertex_shader : glext.h
  • GL_EXT_vertex_weighting : glext.h
  • GL_EYE_DISTANCE_TO_LINE_SGIS : glext.h
  • GL_EYE_DISTANCE_TO_POINT_SGIS : glext.h
  • GL_EYE_LINE_SGIS : glext.h
  • GL_EYE_PLANE_ABSOLUTE_NV : glext.h
  • GL_EYE_POINT_SGIS : glext.h
  • GL_EYE_RADIAL_NV : glext.h
  • GL_FENCE_APPLE : glext.h
  • GL_FENCE_CONDITION_NV : glext.h
  • GL_FENCE_STATUS_NV : glext.h
  • GL_FILTER4_SGIS : glext.h
  • GL_FLOAT_CLEAR_COLOR_VALUE_NV : glext.h
  • GL_FLOAT_R16_NV : glext.h
  • GL_FLOAT_R32_NV : glext.h
  • GL_FLOAT_R_NV : glext.h
  • GL_FLOAT_RG16_NV : glext.h
  • GL_FLOAT_RG32_NV : glext.h
  • GL_FLOAT_RG_NV : glext.h
  • GL_FLOAT_RGB16_NV : glext.h
  • GL_FLOAT_RGB32_NV : glext.h
  • GL_FLOAT_RGB_NV : glext.h
  • GL_FLOAT_RGBA16_NV : glext.h
  • GL_FLOAT_RGBA32_NV : glext.h
  • GL_FLOAT_RGBA_MODE_NV : glext.h
  • GL_FLOAT_RGBA_NV : glext.h
  • GL_FOG_COORDINATE : glext.h
  • GL_FOG_COORDINATE_ARRAY : glext.h
  • GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_FOG_COORDINATE_ARRAY_EXT : glext.h
  • GL_FOG_COORDINATE_ARRAY_LIST_IBM : glext.h
  • GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_FOG_COORDINATE_ARRAY_POINTER : glext.h
  • GL_FOG_COORDINATE_ARRAY_POINTER_EXT : glext.h
  • GL_FOG_COORDINATE_ARRAY_STRIDE : glext.h
  • GL_FOG_COORDINATE_ARRAY_STRIDE_EXT : glext.h
  • GL_FOG_COORDINATE_ARRAY_TYPE : glext.h
  • GL_FOG_COORDINATE_ARRAY_TYPE_EXT : glext.h
  • GL_FOG_COORDINATE_EXT : glext.h
  • GL_FOG_COORDINATE_SOURCE : glext.h
  • GL_FOG_COORDINATE_SOURCE_EXT : glext.h
  • GL_FOG_DISTANCE_MODE_NV : glext.h
  • GL_FOG_FUNC_POINTS_SGIS : glext.h
  • GL_FOG_FUNC_SGIS : glext.h
  • GL_FOG_OFFSET_SGIX : glext.h
  • GL_FOG_OFFSET_VALUE_SGIX : glext.h
  • GL_FOG_SCALE_SGIX : glext.h
  • GL_FOG_SCALE_VALUE_SGIX : glext.h
  • GL_FOG_SPECULAR_TEXTURE_WIN : glext.h
  • GL_FORCE_BLUE_TO_ONE_NV : glext.h
  • GL_FORMAT_SUBSAMPLE_244_244_OML : glext.h
  • GL_FORMAT_SUBSAMPLE_24_24_OML : glext.h
  • GL_FRAGMENT_COLOR_EXT : glext.h
  • GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX : glext.h
  • GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX : glext.h
  • GL_FRAGMENT_COLOR_MATERIAL_SGIX : glext.h
  • GL_FRAGMENT_DEPTH : glext.h
  • GL_FRAGMENT_DEPTH_EXT : glext.h
  • GL_FRAGMENT_LIGHT0_SGIX : glext.h
  • GL_FRAGMENT_LIGHT1_SGIX : glext.h
  • GL_FRAGMENT_LIGHT2_SGIX : glext.h
  • GL_FRAGMENT_LIGHT3_SGIX : glext.h
  • GL_FRAGMENT_LIGHT4_SGIX : glext.h
  • GL_FRAGMENT_LIGHT5_SGIX : glext.h
  • GL_FRAGMENT_LIGHT6_SGIX : glext.h
  • GL_FRAGMENT_LIGHT7_SGIX : glext.h
  • GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX : glext.h
  • GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX : glext.h
  • GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX : glext.h
  • GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX : glext.h
  • GL_FRAGMENT_LIGHTING_SGIX : glext.h
  • GL_FRAGMENT_MATERIAL_EXT : glext.h
  • GL_FRAGMENT_NORMAL_EXT : glext.h
  • GL_FRAGMENT_PROGRAM_ARB : glext.h
  • GL_FRAGMENT_PROGRAM_BINDING_NV : glext.h
  • GL_FRAGMENT_PROGRAM_NV : glext.h
  • GL_FRAGMENT_SHADER_ATI : glext.h
  • GL_FRAMEZOOM_FACTOR_SGIX : glext.h
  • GL_FRAMEZOOM_SGIX : glext.h
  • GL_FULL_RANGE_EXT : glext.h
  • GL_FULL_STIPPLE_HINT_PGI : glext.h
  • GL_FUNC_ADD : glext.h
  • GL_FUNC_ADD_EXT : glext.h
  • GL_FUNC_REVERSE_SUBTRACT : glext.h
  • GL_FUNC_REVERSE_SUBTRACT_EXT : glext.h
  • GL_FUNC_SUBTRACT : glext.h
  • GL_FUNC_SUBTRACT_EXT : glext.h
  • GL_GENERATE_MIPMAP : glext.h
  • GL_GENERATE_MIPMAP_HINT : glext.h
  • GL_GENERATE_MIPMAP_HINT_SGIS : glext.h
  • GL_GENERATE_MIPMAP_SGIS : glext.h
  • GL_GEOMETRY_DEFORMATION_BIT_SGIX : glext.h
  • GL_GEOMETRY_DEFORMATION_SGIX : glext.h
  • GL_GLEXT_VERSION : glext.h
  • GL_GLOBAL_ALPHA_FACTOR_SUN : glext.h
  • GL_GLOBAL_ALPHA_SUN : glext.h
  • GL_GREEN_BIT_ATI : glext.h
  • GL_GREEN_MAX_CLAMP_INGR : glext.h
  • GL_GREEN_MIN_CLAMP_INGR : glext.h
  • GL_HALF_BIAS_NEGATE_NV : glext.h
  • GL_HALF_BIAS_NORMAL_NV : glext.h
  • GL_HALF_BIT_ATI : glext.h
  • GL_HALF_FLOAT_NV : glext.h
  • GL_HI_BIAS_NV : glext.h
  • GL_HI_SCALE_NV : glext.h
  • GL_HILO16_NV : glext.h
  • GL_HILO8_NV : glext.h
  • GL_HILO_NV : glext.h
  • GL_HISTOGRAM : glext.h
  • GL_HISTOGRAM_ALPHA_SIZE : glext.h
  • GL_HISTOGRAM_ALPHA_SIZE_EXT : glext.h
  • GL_HISTOGRAM_BLUE_SIZE : glext.h
  • GL_HISTOGRAM_BLUE_SIZE_EXT : glext.h
  • GL_HISTOGRAM_EXT : glext.h
  • GL_HISTOGRAM_FORMAT : glext.h
  • GL_HISTOGRAM_FORMAT_EXT : glext.h
  • GL_HISTOGRAM_GREEN_SIZE : glext.h
  • GL_HISTOGRAM_GREEN_SIZE_EXT : glext.h
  • GL_HISTOGRAM_LUMINANCE_SIZE : glext.h
  • GL_HISTOGRAM_LUMINANCE_SIZE_EXT : glext.h
  • GL_HISTOGRAM_RED_SIZE : glext.h
  • GL_HISTOGRAM_RED_SIZE_EXT : glext.h
  • GL_HISTOGRAM_SINK : glext.h
  • GL_HISTOGRAM_SINK_EXT : glext.h
  • GL_HISTOGRAM_WIDTH : glext.h
  • GL_HISTOGRAM_WIDTH_EXT : glext.h
  • GL_HP_convolution_border_modes : glext.h
  • GL_HP_image_transform : glext.h
  • GL_HP_occlusion_test : glext.h
  • GL_HP_texture_lighting : glext.h
  • GL_IBM_cull_vertex : glext.h
  • GL_IBM_multimode_draw_arrays : glext.h
  • GL_IBM_rasterpos_clip : glext.h
  • GL_IBM_vertex_array_lists : glext.h
  • GL_IDENTITY_NV : glext.h
  • GL_IGNORE_BORDER_HP : glext.h
  • GL_IMAGE_CUBIC_WEIGHT_HP : glext.h
  • GL_IMAGE_MAG_FILTER_HP : glext.h
  • GL_IMAGE_MIN_FILTER_HP : glext.h
  • GL_IMAGE_ROTATE_ANGLE_HP : glext.h
  • GL_IMAGE_ROTATE_ORIGIN_X_HP : glext.h
  • GL_IMAGE_ROTATE_ORIGIN_Y_HP : glext.h
  • GL_IMAGE_SCALE_X_HP : glext.h
  • GL_IMAGE_SCALE_Y_HP : glext.h
  • GL_IMAGE_TRANSFORM_2D_HP : glext.h
  • GL_IMAGE_TRANSLATE_X_HP : glext.h
  • GL_IMAGE_TRANSLATE_Y_HP : glext.h
  • GL_INCR_WRAP : glext.h
  • GL_INCR_WRAP_EXT : glext.h
  • GL_INDEX_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_INDEX_ARRAY_COUNT_EXT : glext.h
  • GL_INDEX_ARRAY_EXT : glext.h
  • GL_INDEX_ARRAY_LIST_IBM : glext.h
  • GL_INDEX_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_INDEX_ARRAY_POINTER_EXT : glext.h
  • GL_INDEX_ARRAY_STRIDE_EXT : glext.h
  • GL_INDEX_ARRAY_TYPE_EXT : glext.h
  • GL_INDEX_BIT_PGI : glext.h
  • GL_INDEX_MATERIAL_EXT : glext.h
  • GL_INDEX_MATERIAL_FACE_EXT : glext.h
  • GL_INDEX_MATERIAL_PARAMETER_EXT : glext.h
  • GL_INDEX_TEST_EXT : glext.h
  • GL_INDEX_TEST_FUNC_EXT : glext.h
  • GL_INDEX_TEST_REF_EXT : glext.h
  • GL_INGR_blend_func_separate : glext.h
  • GL_INGR_color_clamp : glext.h
  • GL_INGR_interlace_read : glext.h
  • GL_INSTRUMENT_BUFFER_POINTER_SGIX : glext.h
  • GL_INSTRUMENT_MEASUREMENTS_SGIX : glext.h
  • GL_INTEL_parallel_arrays : glext.h
  • GL_INTENSITY12_EXT : glext.h
  • GL_INTENSITY16_EXT : glext.h
  • GL_INTENSITY4_EXT : glext.h
  • GL_INTENSITY8_EXT : glext.h
  • GL_INTENSITY_EXT : glext.h
  • GL_INTENSITY_FLOAT16_ATI : glext.h
  • GL_INTENSITY_FLOAT32_ATI : glext.h
  • GL_INTERLACE_OML : glext.h
  • GL_INTERLACE_READ_INGR : glext.h
  • GL_INTERLACE_READ_OML : glext.h
  • GL_INTERLACE_SGIX : glext.h
  • GL_INTERPOLATE : glext.h
  • GL_INTERPOLATE_ARB : glext.h
  • GL_INTERPOLATE_EXT : glext.h
  • GL_INVARIANT_DATATYPE_EXT : glext.h
  • GL_INVARIANT_EXT : glext.h
  • GL_INVARIANT_VALUE_EXT : glext.h
  • GL_INVERSE_NV : glext.h
  • GL_INVERSE_TRANSPOSE_NV : glext.h
  • GL_INVERTED_SCREEN_W_REND : glext.h
  • GL_IR_INSTRUMENT1_SGIX : glext.h
  • GL_IUI_N3F_V2F_EXT : glext.h
  • GL_IUI_N3F_V3F_EXT : glext.h
  • GL_IUI_V2F_EXT : glext.h
  • GL_IUI_V3F_EXT : glext.h
  • GL_LERP_ATI : glext.h
  • GL_LIGHT_ENV_MODE_SGIX : glext.h
  • GL_LIGHT_MODEL_COLOR_CONTROL : glext.h
  • GL_LIGHT_MODEL_COLOR_CONTROL_EXT : glext.h
  • GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE : glext.h
  • GL_LINEAR_CLIPMAP_LINEAR_SGIX : glext.h
  • GL_LINEAR_CLIPMAP_NEAREST_SGIX : glext.h
  • GL_LINEAR_DETAIL_ALPHA_SGIS : glext.h
  • GL_LINEAR_DETAIL_COLOR_SGIS : glext.h
  • GL_LINEAR_DETAIL_SGIS : glext.h
  • GL_LINEAR_SHARPEN_ALPHA_SGIS : glext.h
  • GL_LINEAR_SHARPEN_COLOR_SGIS : glext.h
  • GL_LINEAR_SHARPEN_SGIS : glext.h
  • GL_LIST_PRIORITY_SGIX : glext.h
  • GL_LO_BIAS_NV : glext.h
  • GL_LO_SCALE_NV : glext.h
  • GL_LOCAL_CONSTANT_DATATYPE_EXT : glext.h
  • GL_LOCAL_CONSTANT_EXT : glext.h
  • GL_LOCAL_CONSTANT_VALUE_EXT : glext.h
  • GL_LOCAL_EXT : glext.h
  • GL_LUMINANCE12_ALPHA12_EXT : glext.h
  • GL_LUMINANCE12_ALPHA4_EXT : glext.h
  • GL_LUMINANCE12_EXT : glext.h
  • GL_LUMINANCE16_ALPHA16_EXT : glext.h
  • GL_LUMINANCE16_EXT : glext.h
  • GL_LUMINANCE4_ALPHA4_EXT : glext.h
  • GL_LUMINANCE4_EXT : glext.h
  • GL_LUMINANCE6_ALPHA2_EXT : glext.h
  • GL_LUMINANCE8_ALPHA8_EXT : glext.h
  • GL_LUMINANCE8_EXT : glext.h
  • GL_LUMINANCE_ALPHA_FLOAT16_ATI : glext.h
  • GL_LUMINANCE_ALPHA_FLOAT32_ATI : glext.h
  • GL_LUMINANCE_FLOAT16_ATI : glext.h
  • GL_LUMINANCE_FLOAT32_ATI : glext.h
  • GL_MAD_ATI : glext.h
  • GL_MAGNITUDE_BIAS_NV : glext.h
  • GL_MAGNITUDE_SCALE_NV : glext.h
  • GL_MAP1_BINORMAL_EXT : glext.h
  • GL_MAP1_TANGENT_EXT : glext.h
  • GL_MAP1_VERTEX_ATTRIB0_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB10_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB11_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB12_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB13_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB14_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB15_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB1_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB2_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB3_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB4_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB5_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB6_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB7_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB8_4_NV : glext.h
  • GL_MAP1_VERTEX_ATTRIB9_4_NV : glext.h
  • GL_MAP2_BINORMAL_EXT : glext.h
  • GL_MAP2_TANGENT_EXT : glext.h
  • GL_MAP2_VERTEX_ATTRIB0_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB10_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB11_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB12_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB13_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB14_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB15_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB1_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB2_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB3_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB4_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB5_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB6_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB7_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB8_4_NV : glext.h
  • GL_MAP2_VERTEX_ATTRIB9_4_NV : glext.h
  • GL_MAP_ATTRIB_U_ORDER_NV : glext.h
  • GL_MAP_ATTRIB_V_ORDER_NV : glext.h
  • GL_MAP_TESSELLATION_NV : glext.h
  • GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI : glext.h
  • GL_MAT_AMBIENT_BIT_PGI : glext.h
  • GL_MAT_COLOR_INDEXES_BIT_PGI : glext.h
  • GL_MAT_DIFFUSE_BIT_PGI : glext.h
  • GL_MAT_EMISSION_BIT_PGI : glext.h
  • GL_MAT_SHININESS_BIT_PGI : glext.h
  • GL_MAT_SPECULAR_BIT_PGI : glext.h
  • GL_MATERIAL_SIDE_HINT_PGI : glext.h
  • GL_MATRIX0_ARB : glext.h
  • GL_MATRIX0_NV : glext.h
  • GL_MATRIX10_ARB : glext.h
  • GL_MATRIX11_ARB : glext.h
  • GL_MATRIX12_ARB : glext.h
  • GL_MATRIX13_ARB : glext.h
  • GL_MATRIX14_ARB : glext.h
  • GL_MATRIX15_ARB : glext.h
  • GL_MATRIX16_ARB : glext.h
  • GL_MATRIX17_ARB : glext.h
  • GL_MATRIX18_ARB : glext.h
  • GL_MATRIX19_ARB : glext.h
  • GL_MATRIX1_ARB : glext.h
  • GL_MATRIX1_NV : glext.h
  • GL_MATRIX20_ARB : glext.h
  • GL_MATRIX21_ARB : glext.h
  • GL_MATRIX22_ARB : glext.h
  • GL_MATRIX23_ARB : glext.h
  • GL_MATRIX24_ARB : glext.h
  • GL_MATRIX25_ARB : glext.h
  • GL_MATRIX26_ARB : glext.h
  • GL_MATRIX27_ARB : glext.h
  • GL_MATRIX28_ARB : glext.h
  • GL_MATRIX29_ARB : glext.h
  • GL_MATRIX2_ARB : glext.h
  • GL_MATRIX2_NV : glext.h
  • GL_MATRIX30_ARB : glext.h
  • GL_MATRIX31_ARB : glext.h
  • GL_MATRIX3_ARB : glext.h
  • GL_MATRIX3_NV : glext.h
  • GL_MATRIX4_ARB : glext.h
  • GL_MATRIX4_NV : glext.h
  • GL_MATRIX5_ARB : glext.h
  • GL_MATRIX5_NV : glext.h
  • GL_MATRIX6_ARB : glext.h
  • GL_MATRIX6_NV : glext.h
  • GL_MATRIX7_ARB : glext.h
  • GL_MATRIX7_NV : glext.h
  • GL_MATRIX8_ARB : glext.h
  • GL_MATRIX9_ARB : glext.h
  • GL_MATRIX_EXT : glext.h
  • GL_MATRIX_INDEX_ARRAY_ARB : glext.h
  • GL_MATRIX_INDEX_ARRAY_POINTER_ARB : glext.h
  • GL_MATRIX_INDEX_ARRAY_SIZE_ARB : glext.h
  • GL_MATRIX_INDEX_ARRAY_STRIDE_ARB : glext.h
  • GL_MATRIX_INDEX_ARRAY_TYPE_ARB : glext.h
  • GL_MATRIX_PALETTE_ARB : glext.h
  • GL_MAX : glext.h
  • GL_MAX_3D_TEXTURE_SIZE : glext.h
  • GL_MAX_3D_TEXTURE_SIZE_EXT : glext.h
  • GL_MAX_4D_TEXTURE_SIZE_SGIS : glext.h
  • GL_MAX_ACTIVE_LIGHTS_SGIX : glext.h
  • GL_MAX_ASYNC_DRAW_PIXELS_SGIX : glext.h
  • GL_MAX_ASYNC_HISTOGRAM_SGIX : glext.h
  • GL_MAX_ASYNC_READ_PIXELS_SGIX : glext.h
  • GL_MAX_ASYNC_TEX_IMAGE_SGIX : glext.h
  • GL_MAX_CLIPMAP_DEPTH_SGIX : glext.h
  • GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX : glext.h
  • GL_MAX_COLOR_MATRIX_STACK_DEPTH : glext.h
  • GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI : glext.h
  • GL_MAX_CONVOLUTION_HEIGHT : glext.h
  • GL_MAX_CONVOLUTION_HEIGHT_EXT : glext.h
  • GL_MAX_CONVOLUTION_WIDTH : glext.h
  • GL_MAX_CONVOLUTION_WIDTH_EXT : glext.h
  • GL_MAX_CUBE_MAP_TEXTURE_SIZE : glext.h
  • GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB : glext.h
  • GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT : glext.h
  • GL_MAX_DEFORMATION_ORDER_SGIX : glext.h
  • GL_MAX_DRAW_BUFFERS_ATI : glext.h
  • GL_MAX_ELEMENTS_INDICES : glext.h
  • GL_MAX_ELEMENTS_INDICES_EXT : glext.h
  • GL_MAX_ELEMENTS_VERTICES : glext.h
  • GL_MAX_ELEMENTS_VERTICES_EXT : glext.h
  • GL_MAX_EXT : glext.h
  • GL_MAX_FOG_FUNC_POINTS_SGIS : glext.h
  • GL_MAX_FRAGMENT_LIGHTS_SGIX : glext.h
  • GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV : glext.h
  • GL_MAX_FRAMEZOOM_FACTOR_SGIX : glext.h
  • GL_MAX_GENERAL_COMBINERS_NV : glext.h
  • GL_MAX_MAP_TESSELLATION_NV : glext.h
  • GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT : glext.h
  • GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT : glext.h
  • GL_MAX_PALETTE_MATRICES_ARB : glext.h
  • GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT : glext.h
  • GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI : glext.h
  • GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB : glext.h
  • GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_ATTRIBS_ARB : glext.h
  • GL_MAX_PROGRAM_ENV_PARAMETERS_ARB : glext.h
  • GL_MAX_PROGRAM_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB : glext.h
  • GL_MAX_PROGRAM_MATRICES_ARB : glext.h
  • GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_PARAMETERS_ARB : glext.h
  • GL_MAX_PROGRAM_TEMPORARIES_ARB : glext.h
  • GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB : glext.h
  • GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB : glext.h
  • GL_MAX_RATIONAL_EVAL_ORDER_NV : glext.h
  • GL_MAX_RECTANGLE_TEXTURE_SIZE_NV : glext.h
  • GL_MAX_SHININESS_NV : glext.h
  • GL_MAX_SPOT_EXPONENT_NV : glext.h
  • GL_MAX_TEXTURE_COORDS_ARB : glext.h
  • GL_MAX_TEXTURE_COORDS_NV : glext.h
  • GL_MAX_TEXTURE_IMAGE_UNITS_ARB : glext.h
  • GL_MAX_TEXTURE_IMAGE_UNITS_NV : glext.h
  • GL_MAX_TEXTURE_LOD_BIAS : glext.h
  • GL_MAX_TEXTURE_LOD_BIAS_EXT : glext.h
  • GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT : glext.h
  • GL_MAX_TEXTURE_UNITS : glext.h
  • GL_MAX_TEXTURE_UNITS_ARB : glext.h
  • GL_MAX_TRACK_MATRICES_NV : glext.h
  • GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV : glext.h
  • GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV : glext.h
  • GL_MAX_VERTEX_ATTRIBS_ARB : glext.h
  • GL_MAX_VERTEX_HINT_PGI : glext.h
  • GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT : glext.h
  • GL_MAX_VERTEX_SHADER_INVARIANTS_EXT : glext.h
  • GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT : glext.h
  • GL_MAX_VERTEX_SHADER_LOCALS_EXT : glext.h
  • GL_MAX_VERTEX_SHADER_VARIANTS_EXT : glext.h
  • GL_MAX_VERTEX_STREAMS_ATI : glext.h
  • GL_MAX_VERTEX_UNITS_ARB : glext.h
  • GL_MESA_resize_buffers : glext.h
  • GL_MESA_window_pos : glext.h
  • GL_MIN : glext.h
  • GL_MIN_EXT : glext.h
  • GL_MINMAX : glext.h
  • GL_MINMAX_EXT : glext.h
  • GL_MINMAX_FORMAT : glext.h
  • GL_MINMAX_FORMAT_EXT : glext.h
  • GL_MINMAX_SINK : glext.h
  • GL_MINMAX_SINK_EXT : glext.h
  • GL_MIRROR_CLAMP_ATI : glext.h
  • GL_MIRROR_CLAMP_TO_EDGE_ATI : glext.h
  • GL_MIRRORED_REPEAT : glext.h
  • GL_MIRRORED_REPEAT_ARB : glext.h
  • GL_MIRRORED_REPEAT_IBM : glext.h
  • GL_MODELVIEW0_ARB : glext.h
  • GL_MODELVIEW0_EXT : glext.h
  • GL_MODELVIEW0_MATRIX_EXT : glext.h
  • GL_MODELVIEW0_STACK_DEPTH_EXT : glext.h
  • GL_MODELVIEW10_ARB : glext.h
  • GL_MODELVIEW11_ARB : glext.h
  • GL_MODELVIEW12_ARB : glext.h
  • GL_MODELVIEW13_ARB : glext.h
  • GL_MODELVIEW14_ARB : glext.h
  • GL_MODELVIEW15_ARB : glext.h
  • GL_MODELVIEW16_ARB : glext.h
  • GL_MODELVIEW17_ARB : glext.h
  • GL_MODELVIEW18_ARB : glext.h
  • GL_MODELVIEW19_ARB : glext.h
  • GL_MODELVIEW1_ARB : glext.h
  • GL_MODELVIEW1_EXT : glext.h
  • GL_MODELVIEW1_MATRIX_EXT : glext.h
  • GL_MODELVIEW1_STACK_DEPTH_EXT : glext.h
  • GL_MODELVIEW20_ARB : glext.h
  • GL_MODELVIEW21_ARB : glext.h
  • GL_MODELVIEW22_ARB : glext.h
  • GL_MODELVIEW23_ARB : glext.h
  • GL_MODELVIEW24_ARB : glext.h
  • GL_MODELVIEW25_ARB : glext.h
  • GL_MODELVIEW26_ARB : glext.h
  • GL_MODELVIEW27_ARB : glext.h
  • GL_MODELVIEW28_ARB : glext.h
  • GL_MODELVIEW29_ARB : glext.h
  • GL_MODELVIEW2_ARB : glext.h
  • GL_MODELVIEW30_ARB : glext.h
  • GL_MODELVIEW31_ARB : glext.h
  • GL_MODELVIEW3_ARB : glext.h
  • GL_MODELVIEW4_ARB : glext.h
  • GL_MODELVIEW5_ARB : glext.h
  • GL_MODELVIEW6_ARB : glext.h
  • GL_MODELVIEW7_ARB : glext.h
  • GL_MODELVIEW8_ARB : glext.h
  • GL_MODELVIEW9_ARB : glext.h
  • GL_MODELVIEW_PROJECTION_NV : glext.h
  • GL_MODULATE_ADD_ATI : glext.h
  • GL_MODULATE_SIGNED_ADD_ATI : glext.h
  • GL_MODULATE_SUBTRACT_ATI : glext.h
  • GL_MOV_ATI : glext.h
  • GL_MUL_ATI : glext.h
  • GL_MULTISAMPLE : glext.h
  • GL_MULTISAMPLE_3DFX : glext.h
  • GL_MULTISAMPLE_ARB : glext.h
  • GL_MULTISAMPLE_BIT : glext.h
  • GL_MULTISAMPLE_BIT_3DFX : glext.h
  • GL_MULTISAMPLE_BIT_ARB : glext.h
  • GL_MULTISAMPLE_BIT_EXT : glext.h
  • GL_MULTISAMPLE_EXT : glext.h
  • GL_MULTISAMPLE_FILTER_HINT_NV : glext.h
  • GL_MULTISAMPLE_SGIS : glext.h
  • GL_MVP_MATRIX_EXT : glext.h
  • GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI : glext.h
  • GL_NATIVE_GRAPHICS_END_HINT_PGI : glext.h
  • GL_NATIVE_GRAPHICS_HANDLE_PGI : glext.h
  • GL_NEAREST_CLIPMAP_LINEAR_SGIX : glext.h
  • GL_NEAREST_CLIPMAP_NEAREST_SGIX : glext.h
  • GL_NEGATE_BIT_ATI : glext.h
  • GL_NEGATIVE_ONE_EXT : glext.h
  • GL_NEGATIVE_W_EXT : glext.h
  • GL_NEGATIVE_X_EXT : glext.h
  • GL_NEGATIVE_Y_EXT : glext.h
  • GL_NEGATIVE_Z_EXT : glext.h
  • GL_NORMAL_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_NORMAL_ARRAY_COUNT_EXT : glext.h
  • GL_NORMAL_ARRAY_EXT : glext.h
  • GL_NORMAL_ARRAY_LIST_IBM : glext.h
  • GL_NORMAL_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL : glext.h
  • GL_NORMAL_ARRAY_POINTER_EXT : glext.h
  • GL_NORMAL_ARRAY_STRIDE_EXT : glext.h
  • GL_NORMAL_ARRAY_TYPE_EXT : glext.h
  • GL_NORMAL_BIT_PGI : glext.h
  • GL_NORMAL_MAP : glext.h
  • GL_NORMAL_MAP_ARB : glext.h
  • GL_NORMAL_MAP_EXT : glext.h
  • GL_NORMAL_MAP_NV : glext.h
  • GL_NORMALIZED_RANGE_EXT : glext.h
  • GL_NUM_COMPRESSED_TEXTURE_FORMATS : glext.h
  • GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB : glext.h
  • GL_NUM_FRAGMENT_CONSTANTS_ATI : glext.h
  • GL_NUM_FRAGMENT_REGISTERS_ATI : glext.h
  • GL_NUM_GENERAL_COMBINERS_NV : glext.h
  • GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI : glext.h
  • GL_NUM_INSTRUCTIONS_PER_PASS_ATI : glext.h
  • GL_NUM_INSTRUCTIONS_TOTAL_ATI : glext.h
  • GL_NUM_LOOPBACK_COMPONENTS_ATI : glext.h
  • GL_NUM_PASSES_ATI : glext.h
  • GL_NV_blend_square : glext.h
  • GL_NV_copy_depth_to_color : glext.h
  • GL_NV_depth_clamp : glext.h
  • GL_NV_evaluators : glext.h
  • GL_NV_fence : glext.h
  • GL_NV_float_buffer : glext.h
  • GL_NV_fog_distance : glext.h
  • GL_NV_fragment_program : glext.h
  • GL_NV_half_float : glext.h
  • GL_NV_light_max_exponent : glext.h
  • GL_NV_multisample_filter_hint : glext.h
  • GL_NV_occlusion_query : glext.h
  • GL_NV_packed_depth_stencil : glext.h
  • GL_NV_pixel_data_range : glext.h
  • GL_NV_point_sprite : glext.h
  • GL_NV_primitive_restart : glext.h
  • GL_NV_register_combiners : glext.h
  • GL_NV_register_combiners2 : glext.h
  • GL_NV_texgen_emboss : glext.h
  • GL_NV_texgen_reflection : glext.h
  • GL_NV_texture_compression_vtc : glext.h
  • GL_NV_texture_env_combine4 : glext.h
  • GL_NV_texture_expand_normal : glext.h
  • GL_NV_texture_rectangle : glext.h
  • GL_NV_texture_shader : glext.h
  • GL_NV_texture_shader2 : glext.h
  • GL_NV_texture_shader3 : glext.h
  • GL_NV_vertex_array_range : glext.h
  • GL_NV_vertex_array_range2 : glext.h
  • GL_NV_vertex_program : glext.h
  • GL_NV_vertex_program1_1 : glext.h
  • GL_NV_vertex_program2 : glext.h
  • GL_OBJECT_BUFFER_SIZE_ATI : glext.h
  • GL_OBJECT_BUFFER_USAGE_ATI : glext.h
  • GL_OBJECT_DISTANCE_TO_LINE_SGIS : glext.h
  • GL_OBJECT_DISTANCE_TO_POINT_SGIS : glext.h
  • GL_OBJECT_LINE_SGIS : glext.h
  • GL_OBJECT_POINT_SGIS : glext.h
  • GL_OCCLUSION_TEST_HP : glext.h
  • GL_OCCLUSION_TEST_RESULT_HP : glext.h
  • GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV : glext.h
  • GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV : glext.h
  • GL_OFFSET_HILO_TEXTURE_2D_NV : glext.h
  • GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV : glext.h
  • GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV : glext.h
  • GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV : glext.h
  • GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV : glext.h
  • GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV : glext.h
  • GL_OFFSET_TEXTURE_2D_BIAS_NV : glext.h
  • GL_OFFSET_TEXTURE_2D_MATRIX_NV : glext.h
  • GL_OFFSET_TEXTURE_2D_NV : glext.h
  • GL_OFFSET_TEXTURE_2D_SCALE_NV : glext.h
  • GL_OFFSET_TEXTURE_BIAS_NV : glext.h
  • GL_OFFSET_TEXTURE_MATRIX_NV : glext.h
  • GL_OFFSET_TEXTURE_RECTANGLE_NV : glext.h
  • GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV : glext.h
  • GL_OFFSET_TEXTURE_SCALE_NV : glext.h
  • GL_OML_interlace : glext.h
  • GL_OML_resample : glext.h
  • GL_OML_subsample : glext.h
  • GL_ONE_EXT : glext.h
  • GL_ONE_MINUS_CONSTANT_ALPHA : glext.h
  • GL_ONE_MINUS_CONSTANT_ALPHA_EXT : glext.h
  • GL_ONE_MINUS_CONSTANT_COLOR : glext.h
  • GL_ONE_MINUS_CONSTANT_COLOR_EXT : glext.h
  • GL_OP_ADD_EXT : glext.h
  • GL_OP_CLAMP_EXT : glext.h
  • GL_OP_CROSS_PRODUCT_EXT : glext.h
  • GL_OP_DOT3_EXT : glext.h
  • GL_OP_DOT4_EXT : glext.h
  • GL_OP_EXP_BASE_2_EXT : glext.h
  • GL_OP_FLOOR_EXT : glext.h
  • GL_OP_FRAC_EXT : glext.h
  • GL_OP_INDEX_EXT : glext.h
  • GL_OP_LOG_BASE_2_EXT : glext.h
  • GL_OP_MADD_EXT : glext.h
  • GL_OP_MAX_EXT : glext.h
  • GL_OP_MIN_EXT : glext.h
  • GL_OP_MOV_EXT : glext.h
  • GL_OP_MUL_EXT : glext.h
  • GL_OP_MULTIPLY_MATRIX_EXT : glext.h
  • GL_OP_NEGATE_EXT : glext.h
  • GL_OP_POWER_EXT : glext.h
  • GL_OP_RECIP_EXT : glext.h
  • GL_OP_RECIP_SQRT_EXT : glext.h
  • GL_OP_ROUND_EXT : glext.h
  • GL_OP_SET_GE_EXT : glext.h
  • GL_OP_SET_LT_EXT : glext.h
  • GL_OP_SUB_EXT : glext.h
  • GL_OPERAND0_ALPHA : glext.h
  • GL_OPERAND0_ALPHA_ARB : glext.h
  • GL_OPERAND0_ALPHA_EXT : glext.h
  • GL_OPERAND0_RGB : glext.h
  • GL_OPERAND0_RGB_ARB : glext.h
  • GL_OPERAND0_RGB_EXT : glext.h
  • GL_OPERAND1_ALPHA : glext.h
  • GL_OPERAND1_ALPHA_ARB : glext.h
  • GL_OPERAND1_ALPHA_EXT : glext.h
  • GL_OPERAND1_RGB : glext.h
  • GL_OPERAND1_RGB_ARB : glext.h
  • GL_OPERAND1_RGB_EXT : glext.h
  • GL_OPERAND2_ALPHA : glext.h
  • GL_OPERAND2_ALPHA_ARB : glext.h
  • GL_OPERAND2_ALPHA_EXT : glext.h
  • GL_OPERAND2_RGB : glext.h
  • GL_OPERAND2_RGB_ARB : glext.h
  • GL_OPERAND2_RGB_EXT : glext.h
  • GL_OPERAND3_ALPHA_NV : glext.h
  • GL_OPERAND3_RGB_NV : glext.h
  • GL_OUTPUT_COLOR0_EXT : glext.h
  • GL_OUTPUT_COLOR1_EXT : glext.h
  • GL_OUTPUT_FOG_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD0_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD10_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD11_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD12_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD13_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD14_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD15_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD16_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD17_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD18_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD19_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD1_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD20_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD21_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD22_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD23_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD24_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD25_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD26_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD27_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD28_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD29_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD2_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD30_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD31_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD3_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD4_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD5_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD6_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD7_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD8_EXT : glext.h
  • GL_OUTPUT_TEXTURE_COORD9_EXT : glext.h
  • GL_OUTPUT_VERTEX_EXT : glext.h
  • GL_PACK_CMYK_HINT_EXT : glext.h
  • GL_PACK_IMAGE_DEPTH_SGIS : glext.h
  • GL_PACK_IMAGE_HEIGHT : glext.h
  • GL_PACK_IMAGE_HEIGHT_EXT : glext.h
  • GL_PACK_RESAMPLE_OML : glext.h
  • GL_PACK_RESAMPLE_SGIX : glext.h
  • GL_PACK_SKIP_IMAGES : glext.h
  • GL_PACK_SKIP_IMAGES_EXT : glext.h
  • GL_PACK_SKIP_VOLUMES_SGIS : glext.h
  • GL_PACK_SUBSAMPLE_RATE_SGIX : glext.h
  • GL_PARALLEL_ARRAYS_INTEL : glext.h
  • GL_PASS_THROUGH_NV : glext.h
  • GL_PER_STAGE_CONSTANTS_NV : glext.h
  • GL_PERTURB_EXT : glext.h
  • GL_PGI_misc_hints : glext.h
  • GL_PGI_vertex_hints : glext.h
  • GL_PHONG_HINT_WIN : glext.h
  • GL_PHONG_WIN : glext.h
  • GL_PIXEL_COUNT_AVAILABLE_NV : glext.h
  • GL_PIXEL_COUNT_NV : glext.h
  • GL_PIXEL_COUNTER_BITS_NV : glext.h
  • GL_PIXEL_CUBIC_WEIGHT_EXT : glext.h
  • GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS : glext.h
  • GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS : glext.h
  • GL_PIXEL_GROUP_COLOR_SGIS : glext.h
  • GL_PIXEL_MAG_FILTER_EXT : glext.h
  • GL_PIXEL_MIN_FILTER_EXT : glext.h
  • GL_PIXEL_SUBSAMPLE_2424_SGIX : glext.h
  • GL_PIXEL_SUBSAMPLE_4242_SGIX : glext.h
  • GL_PIXEL_SUBSAMPLE_4444_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_MODE_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_Q_CEILING_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_Q_ROUND_SGIX : glext.h
  • GL_PIXEL_TEX_GEN_SGIX : glext.h
  • GL_PIXEL_TEXTURE_SGIS : glext.h
  • GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX : glext.h
  • GL_PIXEL_TILE_CACHE_INCREMENT_SGIX : glext.h
  • GL_PIXEL_TILE_CACHE_SIZE_SGIX : glext.h
  • GL_PIXEL_TILE_GRID_DEPTH_SGIX : glext.h
  • GL_PIXEL_TILE_GRID_HEIGHT_SGIX : glext.h
  • GL_PIXEL_TILE_GRID_WIDTH_SGIX : glext.h
  • GL_PIXEL_TILE_HEIGHT_SGIX : glext.h
  • GL_PIXEL_TILE_WIDTH_SGIX : glext.h
  • GL_PIXEL_TRANSFORM_2D_EXT : glext.h
  • GL_PIXEL_TRANSFORM_2D_MATRIX_EXT : glext.h
  • GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT : glext.h
  • GL_PN_TRIANGLES_ATI : glext.h
  • GL_PN_TRIANGLES_NORMAL_MODE_ATI : glext.h
  • GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI : glext.h
  • GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI : glext.h
  • GL_PN_TRIANGLES_POINT_MODE_ATI : glext.h
  • GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI : glext.h
  • GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI : glext.h
  • GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI : glext.h
  • GL_POINT_DISTANCE_ATTENUATION : glext.h
  • GL_POINT_DISTANCE_ATTENUATION_ARB : glext.h
  • GL_POINT_FADE_THRESHOLD_SIZE : glext.h
  • GL_POINT_FADE_THRESHOLD_SIZE_ARB : glext.h
  • GL_POINT_FADE_THRESHOLD_SIZE_EXT : glext.h
  • GL_POINT_FADE_THRESHOLD_SIZE_SGIS : glext.h
  • GL_POINT_SIZE_MAX : glext.h
  • GL_POINT_SIZE_MAX_ARB : glext.h
  • GL_POINT_SIZE_MAX_EXT : glext.h
  • GL_POINT_SIZE_MAX_SGIS : glext.h
  • GL_POINT_SIZE_MIN : glext.h
  • GL_POINT_SIZE_MIN_ARB : glext.h
  • GL_POINT_SIZE_MIN_EXT : glext.h
  • GL_POINT_SIZE_MIN_SGIS : glext.h
  • GL_POINT_SPRITE_NV : glext.h
  • GL_POINT_SPRITE_R_MODE_NV : glext.h
  • GL_POLYGON_OFFSET_BIAS_EXT : glext.h
  • GL_POLYGON_OFFSET_EXT : glext.h
  • GL_POLYGON_OFFSET_FACTOR_EXT : glext.h
  • GL_POST_COLOR_MATRIX_ALPHA_BIAS : glext.h
  • GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI : glext.h
  • GL_POST_COLOR_MATRIX_ALPHA_SCALE : glext.h
  • GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI : glext.h
  • GL_POST_COLOR_MATRIX_BLUE_BIAS : glext.h
  • GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI : glext.h
  • GL_POST_COLOR_MATRIX_BLUE_SCALE : glext.h
  • GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI : glext.h
  • GL_POST_COLOR_MATRIX_COLOR_TABLE : glext.h
  • GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI : glext.h
  • GL_POST_COLOR_MATRIX_GREEN_BIAS : glext.h
  • GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI : glext.h
  • GL_POST_COLOR_MATRIX_GREEN_SCALE : glext.h
  • GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI : glext.h
  • GL_POST_COLOR_MATRIX_RED_BIAS : glext.h
  • GL_POST_COLOR_MATRIX_RED_BIAS_SGI : glext.h
  • GL_POST_COLOR_MATRIX_RED_SCALE : glext.h
  • GL_POST_COLOR_MATRIX_RED_SCALE_SGI : glext.h
  • GL_POST_CONVOLUTION_ALPHA_BIAS : glext.h
  • GL_POST_CONVOLUTION_ALPHA_BIAS_EXT : glext.h
  • GL_POST_CONVOLUTION_ALPHA_SCALE : glext.h
  • GL_POST_CONVOLUTION_ALPHA_SCALE_EXT : glext.h
  • GL_POST_CONVOLUTION_BLUE_BIAS : glext.h
  • GL_POST_CONVOLUTION_BLUE_BIAS_EXT : glext.h
  • GL_POST_CONVOLUTION_BLUE_SCALE : glext.h
  • GL_POST_CONVOLUTION_BLUE_SCALE_EXT : glext.h
  • GL_POST_CONVOLUTION_COLOR_TABLE : glext.h
  • GL_POST_CONVOLUTION_COLOR_TABLE_SGI : glext.h
  • GL_POST_CONVOLUTION_GREEN_BIAS : glext.h
  • GL_POST_CONVOLUTION_GREEN_BIAS_EXT : glext.h
  • GL_POST_CONVOLUTION_GREEN_SCALE : glext.h
  • GL_POST_CONVOLUTION_GREEN_SCALE_EXT : glext.h
  • GL_POST_CONVOLUTION_RED_BIAS : glext.h
  • GL_POST_CONVOLUTION_RED_BIAS_EXT : glext.h
  • GL_POST_CONVOLUTION_RED_SCALE : glext.h
  • GL_POST_CONVOLUTION_RED_SCALE_EXT : glext.h
  • GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP : glext.h
  • GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX : glext.h
  • GL_POST_TEXTURE_FILTER_BIAS_SGIX : glext.h
  • GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX : glext.h
  • GL_POST_TEXTURE_FILTER_SCALE_SGIX : glext.h
  • GL_PREFER_DOUBLEBUFFER_HINT_PGI : glext.h
  • GL_PRESERVE_ATI : glext.h
  • GL_PREVIOUS : glext.h
  • GL_PREVIOUS_ARB : glext.h
  • GL_PREVIOUS_EXT : glext.h
  • GL_PREVIOUS_TEXTURE_INPUT_NV : glext.h
  • GL_PRIMARY_COLOR : glext.h
  • GL_PRIMARY_COLOR_ARB : glext.h
  • GL_PRIMARY_COLOR_EXT : glext.h
  • GL_PRIMARY_COLOR_NV : glext.h
  • GL_PRIMITIVE_RESTART_INDEX_NV : glext.h
  • GL_PRIMITIVE_RESTART_NV : glext.h
  • GL_PROGRAM_ADDRESS_REGISTERS_ARB : glext.h
  • GL_PROGRAM_ALU_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_ATTRIBS_ARB : glext.h
  • GL_PROGRAM_BINDING_ARB : glext.h
  • GL_PROGRAM_ERROR_POSITION_ARB : glext.h
  • GL_PROGRAM_ERROR_POSITION_NV : glext.h
  • GL_PROGRAM_ERROR_STRING_ARB : glext.h
  • GL_PROGRAM_ERROR_STRING_NV : glext.h
  • GL_PROGRAM_FORMAT_ARB : glext.h
  • GL_PROGRAM_FORMAT_ASCII_ARB : glext.h
  • GL_PROGRAM_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_LENGTH_ARB : glext.h
  • GL_PROGRAM_LENGTH_NV : glext.h
  • GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB : glext.h
  • GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_NATIVE_ATTRIBS_ARB : glext.h
  • GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_NATIVE_PARAMETERS_ARB : glext.h
  • GL_PROGRAM_NATIVE_TEMPORARIES_ARB : glext.h
  • GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB : glext.h
  • GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_PARAMETER_NV : glext.h
  • GL_PROGRAM_PARAMETERS_ARB : glext.h
  • GL_PROGRAM_RESIDENT_NV : glext.h
  • GL_PROGRAM_STRING_ARB : glext.h
  • GL_PROGRAM_STRING_NV : glext.h
  • GL_PROGRAM_TARGET_NV : glext.h
  • GL_PROGRAM_TEMPORARIES_ARB : glext.h
  • GL_PROGRAM_TEX_INDIRECTIONS_ARB : glext.h
  • GL_PROGRAM_TEX_INSTRUCTIONS_ARB : glext.h
  • GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB : glext.h
  • GL_PROXY_COLOR_TABLE : glext.h
  • GL_PROXY_COLOR_TABLE_SGI : glext.h
  • GL_PROXY_HISTOGRAM : glext.h
  • GL_PROXY_HISTOGRAM_EXT : glext.h
  • GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE : glext.h
  • GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI : glext.h
  • GL_PROXY_POST_CONVOLUTION_COLOR_TABLE : glext.h
  • GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI : glext.h
  • GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP : glext.h
  • GL_PROXY_TEXTURE_1D_EXT : glext.h
  • GL_PROXY_TEXTURE_2D_EXT : glext.h
  • GL_PROXY_TEXTURE_3D : glext.h
  • GL_PROXY_TEXTURE_3D_EXT : glext.h
  • GL_PROXY_TEXTURE_4D_SGIS : glext.h
  • GL_PROXY_TEXTURE_COLOR_TABLE_SGI : glext.h
  • GL_PROXY_TEXTURE_CUBE_MAP : glext.h
  • GL_PROXY_TEXTURE_CUBE_MAP_ARB : glext.h
  • GL_PROXY_TEXTURE_CUBE_MAP_EXT : glext.h
  • GL_PROXY_TEXTURE_RECTANGLE_NV : glext.h
  • GL_QUAD_ALPHA4_SGIS : glext.h
  • GL_QUAD_ALPHA8_SGIS : glext.h
  • GL_QUAD_INTENSITY4_SGIS : glext.h
  • GL_QUAD_INTENSITY8_SGIS : glext.h
  • GL_QUAD_LUMINANCE4_SGIS : glext.h
  • GL_QUAD_LUMINANCE8_SGIS : glext.h
  • GL_QUAD_MESH_SUN : glext.h
  • GL_QUAD_TEXTURE_SELECT_SGIS : glext.h
  • GL_QUARTER_BIT_ATI : glext.h
  • GL_R1UI_C3F_V3F_SUN : glext.h
  • GL_R1UI_C4F_N3F_V3F_SUN : glext.h
  • GL_R1UI_C4UB_V3F_SUN : glext.h
  • GL_R1UI_N3F_V3F_SUN : glext.h
  • GL_R1UI_T2F_C4F_N3F_V3F_SUN : glext.h
  • GL_R1UI_T2F_N3F_V3F_SUN : glext.h
  • GL_R1UI_T2F_V3F_SUN : glext.h
  • GL_R1UI_V3F_SUN : glext.h
  • GL_RASTER_POSITION_UNCLIPPED_IBM : glext.h
  • GL_READ_ONLY_ARB : glext.h
  • GL_READ_PIXEL_DATA_RANGE_LENGTH_NV : glext.h
  • GL_READ_PIXEL_DATA_RANGE_NV : glext.h
  • GL_READ_PIXEL_DATA_RANGE_POINTER_NV : glext.h
  • GL_READ_WRITE_ARB : glext.h
  • GL_RECLAIM_MEMORY_HINT_PGI : glext.h
  • GL_RED_BIT_ATI : glext.h
  • GL_RED_MAX_CLAMP_INGR : glext.h
  • GL_RED_MIN_CLAMP_INGR : glext.h
  • GL_REDUCE : glext.h
  • GL_REDUCE_EXT : glext.h
  • GL_REFERENCE_PLANE_EQUATION_SGIX : glext.h
  • GL_REFERENCE_PLANE_SGIX : glext.h
  • GL_REFLECTION_MAP : glext.h
  • GL_REFLECTION_MAP_ARB : glext.h
  • GL_REFLECTION_MAP_EXT : glext.h
  • GL_REFLECTION_MAP_NV : glext.h
  • GL_REG_0_ATI : glext.h
  • GL_REG_10_ATI : glext.h
  • GL_REG_11_ATI : glext.h
  • GL_REG_12_ATI : glext.h
  • GL_REG_13_ATI : glext.h
  • GL_REG_14_ATI : glext.h
  • GL_REG_15_ATI : glext.h
  • GL_REG_16_ATI : glext.h
  • GL_REG_17_ATI : glext.h
  • GL_REG_18_ATI : glext.h
  • GL_REG_19_ATI : glext.h
  • GL_REG_1_ATI : glext.h
  • GL_REG_20_ATI : glext.h
  • GL_REG_21_ATI : glext.h
  • GL_REG_22_ATI : glext.h
  • GL_REG_23_ATI : glext.h
  • GL_REG_24_ATI : glext.h
  • GL_REG_25_ATI : glext.h
  • GL_REG_26_ATI : glext.h
  • GL_REG_27_ATI : glext.h
  • GL_REG_28_ATI : glext.h
  • GL_REG_29_ATI : glext.h
  • GL_REG_2_ATI : glext.h
  • GL_REG_30_ATI : glext.h
  • GL_REG_31_ATI : glext.h
  • GL_REG_3_ATI : glext.h
  • GL_REG_4_ATI : glext.h
  • GL_REG_5_ATI : glext.h
  • GL_REG_6_ATI : glext.h
  • GL_REG_7_ATI : glext.h
  • GL_REG_8_ATI : glext.h
  • GL_REG_9_ATI : glext.h
  • GL_REGISTER_COMBINERS_NV : glext.h
  • GL_REND_screen_coordinates : glext.h
  • GL_REPLACE_EXT : glext.h
  • GL_REPLACE_MIDDLE_SUN : glext.h
  • GL_REPLACE_OLDEST_SUN : glext.h
  • GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN : glext.h
  • GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN : glext.h
  • GL_REPLACEMENT_CODE_ARRAY_SUN : glext.h
  • GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN : glext.h
  • GL_REPLACEMENT_CODE_SUN : glext.h
  • GL_REPLICATE_BORDER : glext.h
  • GL_REPLICATE_BORDER_HP : glext.h
  • GL_RESAMPLE_AVERAGE_OML : glext.h
  • GL_RESAMPLE_DECIMATE_OML : glext.h
  • GL_RESAMPLE_DECIMATE_SGIX : glext.h
  • GL_RESAMPLE_REPLICATE_OML : glext.h
  • GL_RESAMPLE_REPLICATE_SGIX : glext.h
  • GL_RESAMPLE_ZERO_FILL_OML : glext.h
  • GL_RESAMPLE_ZERO_FILL_SGIX : glext.h
  • GL_RESCALE_NORMAL : glext.h
  • GL_RESCALE_NORMAL_EXT : glext.h
  • GL_RESTART_SUN : glext.h
  • GL_RGB10_A2_EXT : glext.h
  • GL_RGB10_EXT : glext.h
  • GL_RGB12_EXT : glext.h
  • GL_RGB16_EXT : glext.h
  • GL_RGB2_EXT : glext.h
  • GL_RGB4_EXT : glext.h
  • GL_RGB4_S3TC : glext.h
  • GL_RGB5_A1_EXT : glext.h
  • GL_RGB5_EXT : glext.h
  • GL_RGB8_EXT : glext.h
  • GL_RGB_FLOAT16_ATI : glext.h
  • GL_RGB_FLOAT32_ATI : glext.h
  • GL_RGB_S3TC : glext.h
  • GL_RGB_SCALE : glext.h
  • GL_RGB_SCALE_ARB : glext.h
  • GL_RGB_SCALE_EXT : glext.h
  • GL_RGBA12_EXT : glext.h
  • GL_RGBA16_EXT : glext.h
  • GL_RGBA2_EXT : glext.h
  • GL_RGBA4_EXT : glext.h
  • GL_RGBA4_S3TC : glext.h
  • GL_RGBA8_EXT : glext.h
  • GL_RGBA_FLOAT16_ATI : glext.h
  • GL_RGBA_FLOAT32_ATI : glext.h
  • GL_RGBA_S3TC : glext.h
  • GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV : glext.h
  • GL_S3_s3tc : glext.h
  • GL_SAMPLE_ALPHA_TO_COVERAGE : glext.h
  • GL_SAMPLE_ALPHA_TO_COVERAGE_ARB : glext.h
  • GL_SAMPLE_ALPHA_TO_MASK_EXT : glext.h
  • GL_SAMPLE_ALPHA_TO_MASK_SGIS : glext.h
  • GL_SAMPLE_ALPHA_TO_ONE : glext.h
  • GL_SAMPLE_ALPHA_TO_ONE_ARB : glext.h
  • GL_SAMPLE_ALPHA_TO_ONE_EXT : glext.h
  • GL_SAMPLE_ALPHA_TO_ONE_SGIS : glext.h
  • GL_SAMPLE_BUFFERS : glext.h
  • GL_SAMPLE_BUFFERS_3DFX : glext.h
  • GL_SAMPLE_BUFFERS_ARB : glext.h
  • GL_SAMPLE_BUFFERS_EXT : glext.h
  • GL_SAMPLE_BUFFERS_SGIS : glext.h
  • GL_SAMPLE_COVERAGE : glext.h
  • GL_SAMPLE_COVERAGE_ARB : glext.h
  • GL_SAMPLE_COVERAGE_INVERT : glext.h
  • GL_SAMPLE_COVERAGE_INVERT_ARB : glext.h
  • GL_SAMPLE_COVERAGE_VALUE : glext.h
  • GL_SAMPLE_COVERAGE_VALUE_ARB : glext.h
  • GL_SAMPLE_MASK_EXT : glext.h
  • GL_SAMPLE_MASK_INVERT_EXT : glext.h
  • GL_SAMPLE_MASK_INVERT_SGIS : glext.h
  • GL_SAMPLE_MASK_SGIS : glext.h
  • GL_SAMPLE_MASK_VALUE_EXT : glext.h
  • GL_SAMPLE_MASK_VALUE_SGIS : glext.h
  • GL_SAMPLE_PATTERN_EXT : glext.h
  • GL_SAMPLE_PATTERN_SGIS : glext.h
  • GL_SAMPLES : glext.h
  • GL_SAMPLES_3DFX : glext.h
  • GL_SAMPLES_ARB : glext.h
  • GL_SAMPLES_EXT : glext.h
  • GL_SAMPLES_SGIS : glext.h
  • GL_SATURATE_BIT_ATI : glext.h
  • GL_SCALAR_EXT : glext.h
  • GL_SCALE_BY_FOUR_NV : glext.h
  • GL_SCALE_BY_ONE_HALF_NV : glext.h
  • GL_SCALE_BY_TWO_NV : glext.h
  • GL_SCALEBIAS_HINT_SGIX : glext.h
  • GL_SCREEN_COORDINATES_REND : glext.h
  • GL_SECONDARY_COLOR_ARRAY : glext.h
  • GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_SECONDARY_COLOR_ARRAY_EXT : glext.h
  • GL_SECONDARY_COLOR_ARRAY_LIST_IBM : glext.h
  • GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_SECONDARY_COLOR_ARRAY_POINTER : glext.h
  • GL_SECONDARY_COLOR_ARRAY_POINTER_EXT : glext.h
  • GL_SECONDARY_COLOR_ARRAY_SIZE : glext.h
  • GL_SECONDARY_COLOR_ARRAY_SIZE_EXT : glext.h
  • GL_SECONDARY_COLOR_ARRAY_STRIDE : glext.h
  • GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT : glext.h
  • GL_SECONDARY_COLOR_ARRAY_TYPE : glext.h
  • GL_SECONDARY_COLOR_ARRAY_TYPE_EXT : glext.h
  • GL_SECONDARY_COLOR_NV : glext.h
  • GL_SECONDARY_INTERPOLATOR_ATI : glext.h
  • GL_SEPARABLE_2D : glext.h
  • GL_SEPARABLE_2D_EXT : glext.h
  • GL_SEPARATE_SPECULAR_COLOR : glext.h
  • GL_SEPARATE_SPECULAR_COLOR_EXT : glext.h
  • GL_SGI_color_table : glext.h
  • GL_SGI_texture_color_table : glext.h
  • GL_SGIS_detail_texture : glext.h
  • GL_SGIS_fog_function : glext.h
  • GL_SGIS_generate_mipmap : glext.h
  • GL_SGIS_multisample : glext.h
  • GL_SGIS_pixel_texture : glext.h
  • GL_SGIS_point_line_texgen : glext.h
  • GL_SGIS_point_parameters : glext.h
  • GL_SGIS_sharpen_texture : glext.h
  • GL_SGIS_texture4D : glext.h
  • GL_SGIS_texture_border_clamp : glext.h
  • GL_SGIS_texture_color_mask : glext.h
  • GL_SGIS_texture_edge_clamp : glext.h
  • GL_SGIS_texture_filter4 : glext.h
  • GL_SGIS_texture_lod : glext.h
  • GL_SGIX_async : glext.h
  • GL_SGIX_async_histogram : glext.h
  • GL_SGIX_async_pixel : glext.h
  • GL_SGIX_blend_alpha_minmax : glext.h
  • GL_SGIX_calligraphic_fragment : glext.h
  • GL_SGIX_clipmap : glext.h
  • GL_SGIX_convolution_accuracy : glext.h
  • GL_SGIX_depth_pass_instrument : glext.h
  • GL_SGIX_depth_texture : glext.h
  • GL_SGIX_flush_raster : glext.h
  • GL_SGIX_fog_offset : glext.h
  • GL_SGIX_fog_scale : glext.h
  • GL_SGIX_fragment_lighting : glext.h
  • GL_SGIX_framezoom : glext.h
  • GL_SGIX_igloo_interface : glext.h
  • GL_SGIX_instruments : glext.h
  • GL_SGIX_interlace : glext.h
  • GL_SGIX_ir_instrument1 : glext.h
  • GL_SGIX_list_priority : glext.h
  • GL_SGIX_pixel_texture : glext.h
  • GL_SGIX_pixel_tiles : glext.h
  • GL_SGIX_polynomial_ffd : glext.h
  • GL_SGIX_reference_plane : glext.h
  • GL_SGIX_resample : glext.h
  • GL_SGIX_scalebias_hint : glext.h
  • GL_SGIX_shadow : glext.h
  • GL_SGIX_shadow_ambient : glext.h
  • GL_SGIX_sprite : glext.h
  • GL_SGIX_subsample : glext.h
  • GL_SGIX_tag_sample_buffer : glext.h
  • GL_SGIX_texture_add_env : glext.h
  • GL_SGIX_texture_coordinate_clamp : glext.h
  • GL_SGIX_texture_lod_bias : glext.h
  • GL_SGIX_texture_multi_buffer : glext.h
  • GL_SGIX_texture_scale_bias : glext.h
  • GL_SGIX_texture_select : glext.h
  • GL_SGIX_vertex_preclip : glext.h
  • GL_SGIX_ycrcb : glext.h
  • GL_SGIX_ycrcb_subsample : glext.h
  • GL_SGIX_ycrcba : glext.h
  • GL_SHADER_CONSISTENT_NV : glext.h
  • GL_SHADER_OPERATION_NV : glext.h
  • GL_SHADOW_AMBIENT_SGIX : glext.h
  • GL_SHADOW_ATTENUATION_EXT : glext.h
  • GL_SHARED_TEXTURE_PALETTE_EXT : glext.h
  • GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS : glext.h
  • GL_SIGNED_ALPHA8_NV : glext.h
  • GL_SIGNED_ALPHA_NV : glext.h
  • GL_SIGNED_HILO16_NV : glext.h
  • GL_SIGNED_HILO8_NV : glext.h
  • GL_SIGNED_HILO_NV : glext.h
  • GL_SIGNED_IDENTITY_NV : glext.h
  • GL_SIGNED_INTENSITY8_NV : glext.h
  • GL_SIGNED_INTENSITY_NV : glext.h
  • GL_SIGNED_LUMINANCE8_ALPHA8_NV : glext.h
  • GL_SIGNED_LUMINANCE8_NV : glext.h
  • GL_SIGNED_LUMINANCE_ALPHA_NV : glext.h
  • GL_SIGNED_LUMINANCE_NV : glext.h
  • GL_SIGNED_NEGATE_NV : glext.h
  • GL_SIGNED_RGB8_NV : glext.h
  • GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV : glext.h
  • GL_SIGNED_RGB_NV : glext.h
  • GL_SIGNED_RGB_UNSIGNED_ALPHA_NV : glext.h
  • GL_SIGNED_RGBA8_NV : glext.h
  • GL_SIGNED_RGBA_NV : glext.h
  • GL_SINGLE_COLOR : glext.h
  • GL_SINGLE_COLOR_EXT : glext.h
  • GL_SLICE_ACCUM_SUN : glext.h
  • GL_SMOOTH_LINE_WIDTH_GRANULARITY : glext.h
  • GL_SMOOTH_LINE_WIDTH_RANGE : glext.h
  • GL_SMOOTH_POINT_SIZE_GRANULARITY : glext.h
  • GL_SMOOTH_POINT_SIZE_RANGE : glext.h
  • GL_SOURCE0_ALPHA : glext.h
  • GL_SOURCE0_ALPHA_ARB : glext.h
  • GL_SOURCE0_ALPHA_EXT : glext.h
  • GL_SOURCE0_RGB : glext.h
  • GL_SOURCE0_RGB_ARB : glext.h
  • GL_SOURCE0_RGB_EXT : glext.h
  • GL_SOURCE1_ALPHA : glext.h
  • GL_SOURCE1_ALPHA_ARB : glext.h
  • GL_SOURCE1_ALPHA_EXT : glext.h
  • GL_SOURCE1_RGB : glext.h
  • GL_SOURCE1_RGB_ARB : glext.h
  • GL_SOURCE1_RGB_EXT : glext.h
  • GL_SOURCE2_ALPHA : glext.h
  • GL_SOURCE2_ALPHA_ARB : glext.h
  • GL_SOURCE2_ALPHA_EXT : glext.h
  • GL_SOURCE2_RGB : glext.h
  • GL_SOURCE2_RGB_ARB : glext.h
  • GL_SOURCE2_RGB_EXT : glext.h
  • GL_SOURCE3_ALPHA_NV : glext.h
  • GL_SOURCE3_RGB_NV : glext.h
  • GL_SPARE0_NV : glext.h
  • GL_SPARE0_PLUS_SECONDARY_COLOR_NV : glext.h
  • GL_SPARE1_NV : glext.h
  • GL_SPRITE_AXIAL_SGIX : glext.h
  • GL_SPRITE_AXIS_SGIX : glext.h
  • GL_SPRITE_EYE_ALIGNED_SGIX : glext.h
  • GL_SPRITE_MODE_SGIX : glext.h
  • GL_SPRITE_OBJECT_ALIGNED_SGIX : glext.h
  • GL_SPRITE_SGIX : glext.h
  • GL_SPRITE_TRANSLATION_SGIX : glext.h
  • GL_STATIC_ATI : glext.h
  • GL_STATIC_COPY_ARB : glext.h
  • GL_STATIC_DRAW_ARB : glext.h
  • GL_STATIC_READ_ARB : glext.h
  • GL_STENCIL_BACK_FAIL_ATI : glext.h
  • GL_STENCIL_BACK_FUNC_ATI : glext.h
  • GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI : glext.h
  • GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI : glext.h
  • GL_STENCIL_TEST_TWO_SIDE_EXT : glext.h
  • GL_STORAGE_CACHED_APPLE : glext.h
  • GL_STORAGE_SHARED_APPLE : glext.h
  • GL_STREAM_COPY_ARB : glext.h
  • GL_STREAM_DRAW_ARB : glext.h
  • GL_STREAM_READ_ARB : glext.h
  • GL_STRICT_DEPTHFUNC_HINT_PGI : glext.h
  • GL_STRICT_LIGHTING_HINT_PGI : glext.h
  • GL_STRICT_SCISSOR_HINT_PGI : glext.h
  • GL_SUB_ATI : glext.h
  • GL_SUBTRACT : glext.h
  • GL_SUBTRACT_ARB : glext.h
  • GL_SUN_convolution_border_modes : glext.h
  • GL_SUN_global_alpha : glext.h
  • GL_SUN_mesh_array : glext.h
  • GL_SUN_slice_accum : glext.h
  • GL_SUN_triangle_list : glext.h
  • GL_SUN_vertex : glext.h
  • GL_SUNX_constant_data : glext.h
  • GL_SWIZZLE_STQ_ATI : glext.h
  • GL_SWIZZLE_STQ_DQ_ATI : glext.h
  • GL_SWIZZLE_STR_ATI : glext.h
  • GL_SWIZZLE_STR_DR_ATI : glext.h
  • GL_SWIZZLE_STRQ_ATI : glext.h
  • GL_SWIZZLE_STRQ_DQ_ATI : glext.h
  • GL_T2F_IUI_N3F_V2F_EXT : glext.h
  • GL_T2F_IUI_N3F_V3F_EXT : glext.h
  • GL_T2F_IUI_V2F_EXT : glext.h
  • GL_T2F_IUI_V3F_EXT : glext.h
  • GL_TABLE_TOO_LARGE : glext.h
  • GL_TABLE_TOO_LARGE_EXT : glext.h
  • GL_TANGENT_ARRAY_EXT : glext.h
  • GL_TANGENT_ARRAY_POINTER_EXT : glext.h
  • GL_TANGENT_ARRAY_STRIDE_EXT : glext.h
  • GL_TANGENT_ARRAY_TYPE_EXT : glext.h
  • GL_TEXCOORD1_BIT_PGI : glext.h
  • GL_TEXCOORD2_BIT_PGI : glext.h
  • GL_TEXCOORD3_BIT_PGI : glext.h
  • GL_TEXCOORD4_BIT_PGI : glext.h
  • GL_TEXT_FRAGMENT_SHADER_ATI : glext.h
  • GL_TEXTURE0 : glext.h
  • GL_TEXTURE0_ARB : glext.h
  • GL_TEXTURE1 : glext.h
  • GL_TEXTURE10 : glext.h
  • GL_TEXTURE10_ARB : glext.h
  • GL_TEXTURE11 : glext.h
  • GL_TEXTURE11_ARB : glext.h
  • GL_TEXTURE12 : glext.h
  • GL_TEXTURE12_ARB : glext.h
  • GL_TEXTURE13 : glext.h
  • GL_TEXTURE13_ARB : glext.h
  • GL_TEXTURE14 : glext.h
  • GL_TEXTURE14_ARB : glext.h
  • GL_TEXTURE15 : glext.h
  • GL_TEXTURE15_ARB : glext.h
  • GL_TEXTURE16 : glext.h
  • GL_TEXTURE16_ARB : glext.h
  • GL_TEXTURE17 : glext.h
  • GL_TEXTURE17_ARB : glext.h
  • GL_TEXTURE18 : glext.h
  • GL_TEXTURE18_ARB : glext.h
  • GL_TEXTURE19 : glext.h
  • GL_TEXTURE19_ARB : glext.h
  • GL_TEXTURE1_ARB : glext.h
  • GL_TEXTURE2 : glext.h
  • GL_TEXTURE20 : glext.h
  • GL_TEXTURE20_ARB : glext.h
  • GL_TEXTURE21 : glext.h
  • GL_TEXTURE21_ARB : glext.h
  • GL_TEXTURE22 : glext.h
  • GL_TEXTURE22_ARB : glext.h
  • GL_TEXTURE23 : glext.h
  • GL_TEXTURE23_ARB : glext.h
  • GL_TEXTURE24 : glext.h
  • GL_TEXTURE24_ARB : glext.h
  • GL_TEXTURE25 : glext.h
  • GL_TEXTURE25_ARB : glext.h
  • GL_TEXTURE26 : glext.h
  • GL_TEXTURE26_ARB : glext.h
  • GL_TEXTURE27 : glext.h
  • GL_TEXTURE27_ARB : glext.h
  • GL_TEXTURE28 : glext.h
  • GL_TEXTURE28_ARB : glext.h
  • GL_TEXTURE29 : glext.h
  • GL_TEXTURE29_ARB : glext.h
  • GL_TEXTURE2_ARB : glext.h
  • GL_TEXTURE3 : glext.h
  • GL_TEXTURE30 : glext.h
  • GL_TEXTURE30_ARB : glext.h
  • GL_TEXTURE31 : glext.h
  • GL_TEXTURE31_ARB : glext.h
  • GL_TEXTURE3_ARB : glext.h
  • GL_TEXTURE4 : glext.h
  • GL_TEXTURE4_ARB : glext.h
  • GL_TEXTURE5 : glext.h
  • GL_TEXTURE5_ARB : glext.h
  • GL_TEXTURE6 : glext.h
  • GL_TEXTURE6_ARB : glext.h
  • GL_TEXTURE7 : glext.h
  • GL_TEXTURE7_ARB : glext.h
  • GL_TEXTURE8 : glext.h
  • GL_TEXTURE8_ARB : glext.h
  • GL_TEXTURE9 : glext.h
  • GL_TEXTURE9_ARB : glext.h
  • GL_TEXTURE_1D_BINDING_EXT : glext.h
  • GL_TEXTURE_2D_BINDING_EXT : glext.h
  • GL_TEXTURE_3D : glext.h
  • GL_TEXTURE_3D_BINDING_EXT : glext.h
  • GL_TEXTURE_3D_EXT : glext.h
  • GL_TEXTURE_4D_BINDING_SGIS : glext.h
  • GL_TEXTURE_4D_SGIS : glext.h
  • GL_TEXTURE_4DSIZE_SGIS : glext.h
  • GL_TEXTURE_ALPHA_SIZE_EXT : glext.h
  • GL_TEXTURE_APPLICATION_MODE_EXT : glext.h
  • GL_TEXTURE_BASE_LEVEL : glext.h
  • GL_TEXTURE_BASE_LEVEL_SGIS : glext.h
  • GL_TEXTURE_BINDING_3D : glext.h
  • GL_TEXTURE_BINDING_CUBE_MAP : glext.h
  • GL_TEXTURE_BINDING_CUBE_MAP_ARB : glext.h
  • GL_TEXTURE_BINDING_CUBE_MAP_EXT : glext.h
  • GL_TEXTURE_BINDING_RECTANGLE_NV : glext.h
  • GL_TEXTURE_BLUE_SIZE_EXT : glext.h
  • GL_TEXTURE_BORDER_VALUES_NV : glext.h
  • GL_TEXTURE_CLIPMAP_CENTER_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_DEPTH_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_FRAME_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_OFFSET_SGIX : glext.h
  • GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX : glext.h
  • GL_TEXTURE_COLOR_TABLE_SGI : glext.h
  • GL_TEXTURE_COLOR_WRITEMASK_SGIS : glext.h
  • GL_TEXTURE_COMPARE_FAIL_VALUE_ARB : glext.h
  • GL_TEXTURE_COMPARE_FUNC : glext.h
  • GL_TEXTURE_COMPARE_FUNC_ARB : glext.h
  • GL_TEXTURE_COMPARE_MODE : glext.h
  • GL_TEXTURE_COMPARE_MODE_ARB : glext.h
  • GL_TEXTURE_COMPARE_OPERATOR_SGIX : glext.h
  • GL_TEXTURE_COMPARE_SGIX : glext.h
  • GL_TEXTURE_COMPRESSED : glext.h
  • GL_TEXTURE_COMPRESSED_ARB : glext.h
  • GL_TEXTURE_COMPRESSED_IMAGE_SIZE : glext.h
  • GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB : glext.h
  • GL_TEXTURE_COMPRESSION_HINT : glext.h
  • GL_TEXTURE_COMPRESSION_HINT_ARB : glext.h
  • GL_TEXTURE_CONSTANT_DATA_SUNX : glext.h
  • GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_TEXTURE_COORD_ARRAY_COUNT_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_LIST_IBM : glext.h
  • GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL : glext.h
  • GL_TEXTURE_COORD_ARRAY_POINTER_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_SIZE_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_STRIDE_EXT : glext.h
  • GL_TEXTURE_COORD_ARRAY_TYPE_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP : glext.h
  • GL_TEXTURE_CUBE_MAP_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_X : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Y : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Z : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_X : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Y : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Z : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB : glext.h
  • GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT : glext.h
  • GL_TEXTURE_DEFORMATION_BIT_SGIX : glext.h
  • GL_TEXTURE_DEFORMATION_SGIX : glext.h
  • GL_TEXTURE_DEPTH : glext.h
  • GL_TEXTURE_DEPTH_EXT : glext.h
  • GL_TEXTURE_DEPTH_SIZE : glext.h
  • GL_TEXTURE_DEPTH_SIZE_ARB : glext.h
  • GL_TEXTURE_DS_SIZE_NV : glext.h
  • GL_TEXTURE_DT_SIZE_NV : glext.h
  • GL_TEXTURE_ENV_BIAS_SGIX : glext.h
  • GL_TEXTURE_FILTER4_SIZE_SGIS : glext.h
  • GL_TEXTURE_FILTER_CONTROL : glext.h
  • GL_TEXTURE_FILTER_CONTROL_EXT : glext.h
  • GL_TEXTURE_FLOAT_COMPONENTS_NV : glext.h
  • GL_TEXTURE_GEQUAL_R_SGIX : glext.h
  • GL_TEXTURE_GREEN_SIZE_EXT : glext.h
  • GL_TEXTURE_HI_SIZE_NV : glext.h
  • GL_TEXTURE_INDEX_SIZE_EXT : glext.h
  • GL_TEXTURE_INTENSITY_SIZE_EXT : glext.h
  • GL_TEXTURE_LEQUAL_R_SGIX : glext.h
  • GL_TEXTURE_LIGHT_EXT : glext.h
  • GL_TEXTURE_LIGHTING_MODE_HP : glext.h
  • GL_TEXTURE_LO_SIZE_NV : glext.h
  • GL_TEXTURE_LOD_BIAS : glext.h
  • GL_TEXTURE_LOD_BIAS_EXT : glext.h
  • GL_TEXTURE_LOD_BIAS_R_SGIX : glext.h
  • GL_TEXTURE_LOD_BIAS_S_SGIX : glext.h
  • GL_TEXTURE_LOD_BIAS_T_SGIX : glext.h
  • GL_TEXTURE_LUMINANCE_SIZE_EXT : glext.h
  • GL_TEXTURE_MAG_SIZE_NV : glext.h
  • GL_TEXTURE_MATERIAL_FACE_EXT : glext.h
  • GL_TEXTURE_MATERIAL_PARAMETER_EXT : glext.h
  • GL_TEXTURE_MAX_ANISOTROPY_EXT : glext.h
  • GL_TEXTURE_MAX_CLAMP_R_SGIX : glext.h
  • GL_TEXTURE_MAX_CLAMP_S_SGIX : glext.h
  • GL_TEXTURE_MAX_CLAMP_T_SGIX : glext.h
  • GL_TEXTURE_MAX_LEVEL : glext.h
  • GL_TEXTURE_MAX_LEVEL_SGIS : glext.h
  • GL_TEXTURE_MAX_LOD : glext.h
  • GL_TEXTURE_MAX_LOD_SGIS : glext.h
  • GL_TEXTURE_MIN_LOD : glext.h
  • GL_TEXTURE_MIN_LOD_SGIS : glext.h
  • GL_TEXTURE_MULTI_BUFFER_HINT_SGIX : glext.h
  • GL_TEXTURE_NORMAL_EXT : glext.h
  • GL_TEXTURE_POST_SPECULAR_HP : glext.h
  • GL_TEXTURE_PRE_SPECULAR_HP : glext.h
  • GL_TEXTURE_PRIORITY_EXT : glext.h
  • GL_TEXTURE_RECTANGLE_NV : glext.h
  • GL_TEXTURE_RED_SIZE_EXT : glext.h
  • GL_TEXTURE_RESIDENT_EXT : glext.h
  • GL_TEXTURE_SHADER_NV : glext.h
  • GL_TEXTURE_TOO_LARGE_EXT : glext.h
  • GL_TEXTURE_UNSIGNED_REMAP_MODE_NV : glext.h
  • GL_TEXTURE_WRAP_Q_SGIS : glext.h
  • GL_TEXTURE_WRAP_R : glext.h
  • GL_TEXTURE_WRAP_R_EXT : glext.h
  • GL_TRACK_MATRIX_NV : glext.h
  • GL_TRACK_MATRIX_TRANSFORM_NV : glext.h
  • GL_TRANSFORM_HINT_APPLE : glext.h
  • GL_TRANSPOSE_COLOR_MATRIX : glext.h
  • GL_TRANSPOSE_COLOR_MATRIX_ARB : glext.h
  • GL_TRANSPOSE_CURRENT_MATRIX_ARB : glext.h
  • GL_TRANSPOSE_MODELVIEW_MATRIX : glext.h
  • GL_TRANSPOSE_MODELVIEW_MATRIX_ARB : glext.h
  • GL_TRANSPOSE_NV : glext.h
  • GL_TRANSPOSE_PROJECTION_MATRIX : glext.h
  • GL_TRANSPOSE_PROJECTION_MATRIX_ARB : glext.h
  • GL_TRANSPOSE_TEXTURE_MATRIX : glext.h
  • GL_TRANSPOSE_TEXTURE_MATRIX_ARB : glext.h
  • GL_TRIANGLE_LIST_SUN : glext.h
  • GL_TRIANGLE_MESH_SUN : glext.h
  • GL_UNPACK_CLIENT_STORAGE_APPLE : glext.h
  • GL_UNPACK_CMYK_HINT_EXT : glext.h
  • GL_UNPACK_CONSTANT_DATA_SUNX : glext.h
  • GL_UNPACK_IMAGE_DEPTH_SGIS : glext.h
  • GL_UNPACK_IMAGE_HEIGHT : glext.h
  • GL_UNPACK_IMAGE_HEIGHT_EXT : glext.h
  • GL_UNPACK_RESAMPLE_OML : glext.h
  • GL_UNPACK_RESAMPLE_SGIX : glext.h
  • GL_UNPACK_SKIP_IMAGES : glext.h
  • GL_UNPACK_SKIP_IMAGES_EXT : glext.h
  • GL_UNPACK_SKIP_VOLUMES_SGIS : glext.h
  • GL_UNPACK_SUBSAMPLE_RATE_SGIX : glext.h
  • GL_UNSIGNED_BYTE_2_3_3_REV : glext.h
  • GL_UNSIGNED_BYTE_3_3_2 : glext.h
  • GL_UNSIGNED_BYTE_3_3_2_EXT : glext.h
  • GL_UNSIGNED_IDENTITY_NV : glext.h
  • GL_UNSIGNED_INT_10_10_10_2 : glext.h
  • GL_UNSIGNED_INT_10_10_10_2_EXT : glext.h
  • GL_UNSIGNED_INT_24_8_NV : glext.h
  • GL_UNSIGNED_INT_2_10_10_10_REV : glext.h
  • GL_UNSIGNED_INT_8_8_8_8 : glext.h
  • GL_UNSIGNED_INT_8_8_8_8_EXT : glext.h
  • GL_UNSIGNED_INT_8_8_8_8_REV : glext.h
  • GL_UNSIGNED_INT_8_8_S8_S8_REV_NV : glext.h
  • GL_UNSIGNED_INT_S8_S8_8_8_NV : glext.h
  • GL_UNSIGNED_INVERT_NV : glext.h
  • GL_UNSIGNED_SHORT_1_5_5_5_REV : glext.h
  • GL_UNSIGNED_SHORT_4_4_4_4 : glext.h
  • GL_UNSIGNED_SHORT_4_4_4_4_EXT : glext.h
  • GL_UNSIGNED_SHORT_4_4_4_4_REV : glext.h
  • GL_UNSIGNED_SHORT_5_5_5_1 : glext.h
  • GL_UNSIGNED_SHORT_5_5_5_1_EXT : glext.h
  • GL_UNSIGNED_SHORT_5_6_5 : glext.h
  • GL_UNSIGNED_SHORT_5_6_5_REV : glext.h
  • GL_UNSIGNED_SHORT_8_8_APPLE : glext.h
  • GL_UNSIGNED_SHORT_8_8_REV_APPLE : glext.h
  • GL_VARIABLE_A_NV : glext.h
  • GL_VARIABLE_B_NV : glext.h
  • GL_VARIABLE_C_NV : glext.h
  • GL_VARIABLE_D_NV : glext.h
  • GL_VARIABLE_E_NV : glext.h
  • GL_VARIABLE_F_NV : glext.h
  • GL_VARIABLE_G_NV : glext.h
  • GL_VARIANT_ARRAY_EXT : glext.h
  • GL_VARIANT_ARRAY_POINTER_EXT : glext.h
  • GL_VARIANT_ARRAY_STRIDE_EXT : glext.h
  • GL_VARIANT_ARRAY_TYPE_EXT : glext.h
  • GL_VARIANT_DATATYPE_EXT : glext.h
  • GL_VARIANT_EXT : glext.h
  • GL_VARIANT_VALUE_EXT : glext.h
  • GL_VECTOR_EXT : glext.h
  • GL_VERSION_1_2 : glext.h
  • GL_VERSION_1_3 : glext.h
  • GL_VERSION_1_4 : glext.h
  • GL_VERTEX23_BIT_PGI : glext.h
  • GL_VERTEX4_BIT_PGI : glext.h
  • GL_VERTEX_ARRAY_BINDING_APPLE : glext.h
  • GL_VERTEX_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_VERTEX_ARRAY_COUNT_EXT : glext.h
  • GL_VERTEX_ARRAY_EXT : glext.h
  • GL_VERTEX_ARRAY_LIST_IBM : glext.h
  • GL_VERTEX_ARRAY_LIST_STRIDE_IBM : glext.h
  • GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL : glext.h
  • GL_VERTEX_ARRAY_POINTER_EXT : glext.h
  • GL_VERTEX_ARRAY_RANGE_APPLE : glext.h
  • GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE : glext.h
  • GL_VERTEX_ARRAY_RANGE_LENGTH_NV : glext.h
  • GL_VERTEX_ARRAY_RANGE_NV : glext.h
  • GL_VERTEX_ARRAY_RANGE_POINTER_APPLE : glext.h
  • GL_VERTEX_ARRAY_RANGE_POINTER_NV : glext.h
  • GL_VERTEX_ARRAY_RANGE_VALID_NV : glext.h
  • GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV : glext.h
  • GL_VERTEX_ARRAY_SIZE_EXT : glext.h
  • GL_VERTEX_ARRAY_STORAGE_HINT_APPLE : glext.h
  • GL_VERTEX_ARRAY_STRIDE_EXT : glext.h
  • GL_VERTEX_ARRAY_TYPE_EXT : glext.h
  • GL_VERTEX_ATTRIB_ARRAY0_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY10_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY11_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY12_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY13_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY14_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY15_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY1_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY2_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY3_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY4_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY5_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY6_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY7_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY8_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY9_NV : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB : glext.h
  • GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB : glext.h
  • GL_VERTEX_BLEND_ARB : glext.h
  • GL_VERTEX_CONSISTENT_HINT_PGI : glext.h
  • GL_VERTEX_DATA_HINT_PGI : glext.h
  • GL_VERTEX_PRECLIP_HINT_SGIX : glext.h
  • GL_VERTEX_PRECLIP_SGIX : glext.h
  • GL_VERTEX_PROGRAM_ARB : glext.h
  • GL_VERTEX_PROGRAM_BINDING_NV : glext.h
  • GL_VERTEX_PROGRAM_NV : glext.h
  • GL_VERTEX_PROGRAM_POINT_SIZE_ARB : glext.h
  • GL_VERTEX_PROGRAM_POINT_SIZE_NV : glext.h
  • GL_VERTEX_PROGRAM_TWO_SIDE_ARB : glext.h
  • GL_VERTEX_PROGRAM_TWO_SIDE_NV : glext.h
  • GL_VERTEX_SHADER_BINDING_EXT : glext.h
  • GL_VERTEX_SHADER_EXT : glext.h
  • GL_VERTEX_SHADER_INSTRUCTIONS_EXT : glext.h
  • GL_VERTEX_SHADER_INVARIANTS_EXT : glext.h
  • GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT : glext.h
  • GL_VERTEX_SHADER_LOCALS_EXT : glext.h
  • GL_VERTEX_SHADER_OPTIMIZED_EXT : glext.h
  • GL_VERTEX_SHADER_VARIANTS_EXT : glext.h
  • GL_VERTEX_SOURCE_ATI : glext.h
  • GL_VERTEX_STATE_PROGRAM_NV : glext.h
  • GL_VERTEX_STREAM0_ATI : glext.h
  • GL_VERTEX_STREAM1_ATI : glext.h
  • GL_VERTEX_STREAM2_ATI : glext.h
  • GL_VERTEX_STREAM3_ATI : glext.h
  • GL_VERTEX_STREAM4_ATI : glext.h
  • GL_VERTEX_STREAM5_ATI : glext.h
  • GL_VERTEX_STREAM6_ATI : glext.h
  • GL_VERTEX_STREAM7_ATI : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_EXT : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT : glext.h
  • GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT : glext.h
  • GL_VERTEX_WEIGHTING_EXT : glext.h
  • GL_VIBRANCE_BIAS_NV : glext.h
  • GL_VIBRANCE_SCALE_NV : glext.h
  • GL_W_EXT : glext.h
  • GL_WEIGHT_ARRAY_ARB : glext.h
  • GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB : glext.h
  • GL_WEIGHT_ARRAY_POINTER_ARB : glext.h
  • GL_WEIGHT_ARRAY_SIZE_ARB : glext.h
  • GL_WEIGHT_ARRAY_STRIDE_ARB : glext.h
  • GL_WEIGHT_ARRAY_TYPE_ARB : glext.h
  • GL_WEIGHT_SUM_UNITY_ARB : glext.h
  • GL_WIDE_LINE_HINT_PGI : glext.h
  • GL_WIN_phong_shading : glext.h
  • GL_WIN_specular_fog : glext.h
  • GL_WRAP_BORDER_SUN : glext.h
  • GL_WRITE_ONLY_ARB : glext.h
  • GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV : glext.h
  • GL_WRITE_PIXEL_DATA_RANGE_NV : glext.h
  • GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV : glext.h
  • GL_X_EXT : glext.h
  • GL_Y_EXT : glext.h
  • GL_YCBCR_422_APPLE : glext.h
  • GL_YCRCB_422_SGIX : glext.h
  • GL_YCRCB_444_SGIX : glext.h
  • GL_YCRCB_SGIX : glext.h
  • GL_YCRCBA_SGIX : glext.h
  • GL_Z_EXT : glext.h
  • GL_ZERO_EXT : glext.h
  • GLAPI : wglext.h, glext.h

- h -

  • HALF_PI : trigo.h

- i -

  • ID_POPUP_ABOUT : resource.h
  • ID_POPUP_CONFIG : resource.h
  • ID_POPUP_DEBUGER : resource.h
  • ID_POPUP_EXIT : resource.h
  • ID_POPUP_HELP : resource.h
  • IDC_BUTTON_CENTER : resource.h
  • IDC_BUTTON_DEBASE : resource.h
  • IDC_BUTTON_DEFAULT : resource.h
  • IDC_BUTTON_DOWN : resource.h
  • IDC_BUTTON_FOG_DENSITY_ADD : resource.h
  • IDC_BUTTON_FOG_DENSITY_SUB : resource.h
  • IDC_BUTTON_FOG_START_ADD : resource.h
  • IDC_BUTTON_FOG_START_SUB : resource.h
  • IDC_BUTTON_FOG_STOP_ADD : resource.h
  • IDC_BUTTON_FOG_STOP_SUB : resource.h
  • IDC_BUTTON_FORUM : resource.h
  • IDC_BUTTON_LEFT : resource.h
  • IDC_BUTTON_LICENCE : resource.h
  • IDC_BUTTON_MAILME : resource.h
  • IDC_BUTTON_MAX : resource.h
  • IDC_BUTTON_MIDS : resource.h
  • IDC_BUTTON_MIN : resource.h
  • IDC_BUTTON_MOVE : resource.h
  • IDC_BUTTON_RIGHT : resource.h
  • IDC_BUTTON_RLEFT : resource.h
  • IDC_BUTTON_RRIGHT : resource.h
  • IDC_BUTTON_TEXTURE : resource.h
  • IDC_BUTTON_URL : resource.h
  • IDC_BUTTON_ZOOM_IN : resource.h
  • IDC_BUTTON_ZOOM_OUT : resource.h
  • IDC_CHECK_A_A : resource.h
  • IDC_CHECK_A_B : resource.h
  • IDC_CHECK_A_G : resource.h
  • IDC_CHECK_A_R : resource.h
  • IDC_CHECK_AMBIENT : resource.h
  • IDC_CHECK_BACKGROUND : resource.h
  • IDC_CHECK_BLENDING : resource.h
  • IDC_CHECK_D_A : resource.h
  • IDC_CHECK_D_B : resource.h
  • IDC_CHECK_D_G : resource.h
  • IDC_CHECK_D_R : resource.h
  • IDC_CHECK_DELTA : resource.h
  • IDC_CHECK_DIFFUSE : resource.h
  • IDC_CHECK_E_A : resource.h
  • IDC_CHECK_E_B : resource.h
  • IDC_CHECK_E_G : resource.h
  • IDC_CHECK_E_R : resource.h
  • IDC_CHECK_EMISSION : resource.h
  • IDC_CHECK_FACE : resource.h
  • IDC_CHECK_FOG : resource.h
  • IDC_CHECK_FPS : resource.h
  • IDC_CHECK_INERTIA : resource.h
  • IDC_CHECK_LIGHT : resource.h
  • IDC_CHECK_LIGHT0 : resource.h
  • IDC_CHECK_LIGHT0_MOVE : resource.h
  • IDC_CHECK_LIGHT1 : resource.h
  • IDC_CHECK_LIGHT1_MOVE : resource.h
  • IDC_CHECK_LIGHT2 : resource.h
  • IDC_CHECK_LIGHT2_MOVE : resource.h
  • IDC_CHECK_LIGHT_VIEW : resource.h
  • IDC_CHECK_MONITOR : resource.h
  • IDC_CHECK_PICKING : resource.h
  • IDC_CHECK_REGION : resource.h
  • IDC_CHECK_REPERE : resource.h
  • IDC_CHECK_S_A : resource.h
  • IDC_CHECK_S_B : resource.h
  • IDC_CHECK_S_G : resource.h
  • IDC_CHECK_S_R : resource.h
  • IDC_CHECK_SPECULAR : resource.h
  • IDC_CHECK_TITLED : resource.h
  • IDC_CHECK_VIEW_BACKGROUND : resource.h
  • IDC_CHECK_VIEW_FPS : resource.h
  • IDC_CHECK_VIEW_INERTIA : resource.h
  • IDC_CHECK_VIEW_LIGHT : resource.h
  • IDC_CHECK_VIEW_REGION : resource.h
  • IDC_CHECK_VIEW_REPERE : resource.h
  • IDC_COMBO_FOG_MODE : resource.h
  • IDC_COMBO_POLYGONE_BACK : resource.h
  • IDC_COMBO_POLYGONE_FRONT : resource.h
  • IDC_COMBO_SPECIALS : resource.h
  • IDC_DCONTROLS : resource.h
  • IDC_EDIT_VALUE : resource.h
  • IDC_MENU : resource.h
  • IDC_MYICON : resource.h
  • IDC_RADIO_CONTROLS_MODE : resource.h
  • IDC_RADIO_CUSTOMSCREEN : resource.h
  • IDC_RADIO_FACE_MODE : resource.h
  • IDC_RADIO_FACEMODE : resource.h
  • IDC_RADIO_FULLSCREEN : resource.h
  • IDC_RICHEDIT_CPU : resource.h
  • IDC_RICHEDIT_FOG_DENSITY : resource.h
  • IDC_RICHEDIT_FOG_END : resource.h
  • IDC_RICHEDIT_FOG_START : resource.h
  • IDC_RICHEDIT_FRAMERATE : resource.h
  • IDC_RICHEDIT_XSIZE : resource.h
  • IDC_RICHEDIT_XWIN : resource.h
  • IDC_RICHEDIT_YSIZE : resource.h
  • IDC_RICHEDIT_YWIN : resource.h
  • IDC_SLIDER1 : resource.h
  • IDC_SLIDER_PAD : resource.h
  • IDC_SPIN_CPU : resource.h
  • IDC_SPIN_FOG_DENSITY : resource.h
  • IDC_SPIN_FOG_END : resource.h
  • IDC_SPIN_FOG_START : resource.h
  • IDC_SPIN_FRAMERATE : resource.h
  • IDC_SPIN_XSIZE : resource.h
  • IDC_SPIN_YSIZE : resource.h
  • IDC_STATIC : resource.h
  • IDC_STATIC1 : resource.h
  • IDC_STATIC2 : resource.h
  • IDC_STATIC_FOG : resource.h
  • IDC_STATIC_FOG_DENSITY : resource.h
  • IDC_STATIC_FOG_START : resource.h
  • IDC_STATIC_FOG_STOP : resource.h
  • IDC_STATIC_INFO : resource.h
  • IDC_STATIC_INFO1 : resource.h
  • IDC_STATIC_INFO10 : resource.h
  • IDC_STATIC_INFO11 : resource.h
  • IDC_STATIC_INFO12 : resource.h
  • IDC_STATIC_INFO13 : resource.h
  • IDC_STATIC_INFO14 : resource.h
  • IDC_STATIC_INFO15 : resource.h
  • IDC_STATIC_INFO16 : resource.h
  • IDC_STATIC_INFO17 : resource.h
  • IDC_STATIC_INFO18 : resource.h
  • IDC_STATIC_INFO19 : resource.h
  • IDC_STATIC_INFO2 : resource.h
  • IDC_STATIC_INFO3 : resource.h
  • IDC_STATIC_INFO4 : resource.h
  • IDC_STATIC_INFO5 : resource.h
  • IDC_STATIC_NAME : resource.h
  • IDC_STATIC_PAD : resource.h
  • IDC_STATIC_PICKING_FULL : resource.h
  • IDC_STATIC_PICKING_SELECTED : resource.h
  • IDC_STATIC_PICKING_SELECTED2 : resource.h
  • IDC_STATIC_PICKING_SELECTED_TITLE : resource.h
  • IDC_STATIC_STRUCTURE : resource.h
  • IDC_STATIC_VALUE : resource.h
  • IDC_STATIC_VARIABLE : resource.h
  • IDC_STATIC_VERSION : resource.h
  • IDC_TREE_ELEM : resource.h
  • IDC_TREE_STRUCT : resource.h
  • IDD_ABOUT : resource.h
  • IDD_ABOUTBOX : resource.h
  • IDD_CONFIG : resource.h
  • IDD_DCONTROLS_DIALOG : resource.h
  • IDD_DEBUG_STRUCT : resource.h
  • IDD_PARAMETRE : resource.h
  • IDD_VALUE_EDITOR : resource.h
  • IDI_DCONTROLS : resource.h
  • IDI_ICON_SYSTRAY : resource.h
  • IDM_ABOUT : resource.h
  • IDM_EXIT : resource.h
  • IDR_MAINFRAME : resource.h
  • IDS_APP_TITLE : resource.h
  • INSERT_DOUBLE : valueEditor.cpp
  • INSERT_FLOAT : valueEditor.cpp
  • INSERT_INT : valueEditor.cpp
  • INSERT_ITEM : valueEditor.cpp
  • INSERT_ITEM_DOUBLE : valueEditor.cpp
  • INSERT_ITEM_FLOAT : valueEditor.cpp
  • INSERT_ITEM_INT : valueEditor.cpp
  • INSERT_ITEM_NUM : valueEditor.cpp
  • INSERT_ITEM_TYPED : valueEditor.cpp
  • IS_FOG : valueEditor.cpp
  • IS_LIGHT : valueEditor.cpp
  • IS_NOTHING : valueEditor.cpp
  • IS_TEXTURE : valueEditor.cpp

- m -

  • MAIL_ADRESS : systray.h
  • MAX_BUFFER_SELECT : picking.h
  • MIN_SIZE_CURSOR : slider.h

- n -

  • NB_MATERIAL : material.h
  • NUM_SELECTED_FONT : valueEditor.cpp
  • NUM_SELECTED_LIGHT : valueEditor.cpp
  • NUM_SELECTED_NOTHING : valueEditor.cpp
  • NUM_SELECTED_PICKING : valueEditor.cpp
  • NUM_SELECTED_RENDER : valueEditor.cpp
  • NUM_SELECTED_TEXTURE : valueEditor.cpp
  • NUM_SELECTED_TRASH : valueEditor.cpp

- p -

  • PI : trigo.h
  • PI_ : openGL_tools.cpp
  • PRECISION : trigo.h

- r -

  • RADTODEG : trigo.h

- s -

  • SEUIL_MAX_INERTIA : controlEngine.h
  • SEUIL_MIN_INERTIA : controlEngine.h
  • SIZE_BUTTON : slider.h
  • SIZE_LIST : controlEngine.cpp
  • SPEED : valueEditor.h
  • SPEED_DELTA : valueEditor.h
  • SPEED_PAD : valueEditor.h
  • SPEED_PAD_DELTA : valueEditor.h

- t -

  • TEST : screen.cpp
  • TEST_EX : screen.cpp
  • TIME_MOVE_ON_INERTIA : Inertia.cpp
  • TIME_OUT_PUSH_DOWN_BUTTON : control.h
  • TIME_TO_VIEW : controlEngine.cpp
  • TITLE_NAME : systray.h

- u -

  • URL_3D_CONTROLS : systray.h
  • URL_FORUM : systray.h
  • URL_LICENCE : systray.h

- v -

  • VERSION : 3d.h

- w -

  • WGL_3DFX_multisample : wglext.h
  • WGL_ACCELERATION_ARB : wglext.h
  • WGL_ACCELERATION_EXT : wglext.h
  • WGL_ACCUM_ALPHA_BITS_ARB : wglext.h
  • WGL_ACCUM_ALPHA_BITS_EXT : wglext.h
  • WGL_ACCUM_BITS_ARB : wglext.h
  • WGL_ACCUM_BITS_EXT : wglext.h
  • WGL_ACCUM_BLUE_BITS_ARB : wglext.h
  • WGL_ACCUM_BLUE_BITS_EXT : wglext.h
  • WGL_ACCUM_GREEN_BITS_ARB : wglext.h
  • WGL_ACCUM_GREEN_BITS_EXT : wglext.h
  • WGL_ACCUM_RED_BITS_ARB : wglext.h
  • WGL_ACCUM_RED_BITS_EXT : wglext.h
  • WGL_ALPHA_BITS_ARB : wglext.h
  • WGL_ALPHA_BITS_EXT : wglext.h
  • WGL_ALPHA_SHIFT_ARB : wglext.h
  • WGL_ALPHA_SHIFT_EXT : wglext.h
  • WGL_ARB_buffer_region : wglext.h
  • WGL_ARB_extensions_string : wglext.h
  • WGL_ARB_make_current_read : wglext.h
  • WGL_ARB_multisample : wglext.h
  • WGL_ARB_pbuffer : wglext.h
  • WGL_ARB_pixel_format : wglext.h
  • WGL_ARB_render_texture : wglext.h
  • WGL_AUX0_ARB : wglext.h
  • WGL_AUX1_ARB : wglext.h
  • WGL_AUX2_ARB : wglext.h
  • WGL_AUX3_ARB : wglext.h
  • WGL_AUX4_ARB : wglext.h
  • WGL_AUX5_ARB : wglext.h
  • WGL_AUX6_ARB : wglext.h
  • WGL_AUX7_ARB : wglext.h
  • WGL_AUX8_ARB : wglext.h
  • WGL_AUX9_ARB : wglext.h
  • WGL_AUX_BUFFERS_ARB : wglext.h
  • WGL_AUX_BUFFERS_EXT : wglext.h
  • WGL_BACK_COLOR_BUFFER_BIT_ARB : wglext.h
  • WGL_BACK_LEFT_ARB : wglext.h
  • WGL_BACK_RIGHT_ARB : wglext.h
  • WGL_BIND_TO_TEXTURE_DEPTH_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV : wglext.h
  • WGL_BIND_TO_TEXTURE_RGB_ARB : wglext.h
  • WGL_BIND_TO_TEXTURE_RGBA_ARB : wglext.h
  • WGL_BLUE_BITS_ARB : wglext.h
  • WGL_BLUE_BITS_EXT : wglext.h
  • WGL_BLUE_SHIFT_ARB : wglext.h
  • WGL_BLUE_SHIFT_EXT : wglext.h
  • WGL_COLOR_BITS_ARB : wglext.h
  • WGL_COLOR_BITS_EXT : wglext.h
  • WGL_CUBE_MAP_FACE_ARB : wglext.h
  • WGL_DEPTH_BITS_ARB : wglext.h
  • WGL_DEPTH_BITS_EXT : wglext.h
  • WGL_DEPTH_BUFFER_BIT_ARB : wglext.h
  • WGL_DEPTH_COMPONENT_NV : wglext.h
  • WGL_DEPTH_FLOAT_EXT : wglext.h
  • WGL_DEPTH_TEXTURE_FORMAT_NV : wglext.h
  • WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D : wglext.h
  • WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D : wglext.h
  • WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D : wglext.h
  • WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D : wglext.h
  • WGL_DOUBLE_BUFFER_ARB : wglext.h
  • WGL_DOUBLE_BUFFER_EXT : wglext.h
  • WGL_DRAW_TO_BITMAP_ARB : wglext.h
  • WGL_DRAW_TO_BITMAP_EXT : wglext.h
  • WGL_DRAW_TO_PBUFFER_ARB : wglext.h
  • WGL_DRAW_TO_PBUFFER_EXT : wglext.h
  • WGL_DRAW_TO_WINDOW_ARB : wglext.h
  • WGL_DRAW_TO_WINDOW_EXT : wglext.h
  • WGL_EXT_depth_float : wglext.h
  • WGL_EXT_display_color_table : wglext.h
  • WGL_EXT_extensions_string : wglext.h
  • WGL_EXT_make_current_read : wglext.h
  • WGL_EXT_multisample : wglext.h
  • WGL_EXT_pbuffer : wglext.h
  • WGL_EXT_pixel_format : wglext.h
  • WGL_EXT_swap_control : wglext.h
  • WGL_FLOAT_COMPONENTS_NV : wglext.h
  • WGL_FRONT_COLOR_BUFFER_BIT_ARB : wglext.h
  • WGL_FRONT_LEFT_ARB : wglext.h
  • WGL_FRONT_RIGHT_ARB : wglext.h
  • WGL_FULL_ACCELERATION_ARB : wglext.h
  • WGL_FULL_ACCELERATION_EXT : wglext.h
  • WGL_GAMMA_EXCLUDE_DESKTOP_I3D : wglext.h
  • WGL_GAMMA_TABLE_SIZE_I3D : wglext.h
  • WGL_GENERIC_ACCELERATION_ARB : wglext.h
  • WGL_GENERIC_ACCELERATION_EXT : wglext.h
  • WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EDGE_RISING_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D : wglext.h
  • WGL_GENLOCK_SOURCE_MULTIVIEW_I3D : wglext.h
  • WGL_GREEN_BITS_ARB : wglext.h
  • WGL_GREEN_BITS_EXT : wglext.h
  • WGL_GREEN_SHIFT_ARB : wglext.h
  • WGL_GREEN_SHIFT_EXT : wglext.h
  • WGL_I3D_digital_video_control : wglext.h
  • WGL_I3D_gamma : wglext.h
  • WGL_I3D_genlock : wglext.h
  • WGL_I3D_image_buffer : wglext.h
  • WGL_I3D_swap_frame_lock : wglext.h
  • WGL_I3D_swap_frame_usage : wglext.h
  • WGL_IMAGE_BUFFER_LOCK_I3D : wglext.h
  • WGL_IMAGE_BUFFER_MIN_ACCESS_I3D : wglext.h
  • WGL_MAX_PBUFFER_HEIGHT_ARB : wglext.h
  • WGL_MAX_PBUFFER_HEIGHT_EXT : wglext.h
  • WGL_MAX_PBUFFER_PIXELS_ARB : wglext.h
  • WGL_MAX_PBUFFER_PIXELS_EXT : wglext.h
  • WGL_MAX_PBUFFER_WIDTH_ARB : wglext.h
  • WGL_MAX_PBUFFER_WIDTH_EXT : wglext.h
  • WGL_MIPMAP_LEVEL_ARB : wglext.h
  • WGL_MIPMAP_TEXTURE_ARB : wglext.h
  • WGL_NEED_PALETTE_ARB : wglext.h
  • WGL_NEED_PALETTE_EXT : wglext.h
  • WGL_NEED_SYSTEM_PALETTE_ARB : wglext.h
  • WGL_NEED_SYSTEM_PALETTE_EXT : wglext.h
  • WGL_NO_ACCELERATION_ARB : wglext.h
  • WGL_NO_ACCELERATION_EXT : wglext.h
  • WGL_NO_TEXTURE_ARB : wglext.h
  • WGL_NUMBER_OVERLAYS_ARB : wglext.h
  • WGL_NUMBER_OVERLAYS_EXT : wglext.h
  • WGL_NUMBER_PIXEL_FORMATS_ARB : wglext.h
  • WGL_NUMBER_PIXEL_FORMATS_EXT : wglext.h
  • WGL_NUMBER_UNDERLAYS_ARB : wglext.h
  • WGL_NUMBER_UNDERLAYS_EXT : wglext.h
  • WGL_NV_vertex_array_range : wglext.h
  • WGL_OML_sync_control : wglext.h
  • WGL_OPTIMAL_PBUFFER_HEIGHT_EXT : wglext.h
  • WGL_OPTIMAL_PBUFFER_WIDTH_EXT : wglext.h
  • WGL_PBUFFER_HEIGHT_ARB : wglext.h
  • WGL_PBUFFER_HEIGHT_EXT : wglext.h
  • WGL_PBUFFER_LARGEST_ARB : wglext.h
  • WGL_PBUFFER_LARGEST_EXT : wglext.h
  • WGL_PBUFFER_LOST_ARB : wglext.h
  • WGL_PBUFFER_WIDTH_ARB : wglext.h
  • WGL_PBUFFER_WIDTH_EXT : wglext.h
  • WGL_PIXEL_TYPE_ARB : wglext.h
  • WGL_PIXEL_TYPE_EXT : wglext.h
  • WGL_RED_BITS_ARB : wglext.h
  • WGL_RED_BITS_EXT : wglext.h
  • WGL_RED_SHIFT_ARB : wglext.h
  • WGL_RED_SHIFT_EXT : wglext.h
  • WGL_SAMPLE_BUFFERS_3DFX : wglext.h
  • WGL_SAMPLE_BUFFERS_ARB : wglext.h, openGL_tools.cpp, ARB_Multisample.cpp
  • WGL_SAMPLE_BUFFERS_EXT : wglext.h
  • WGL_SAMPLES_3DFX : wglext.h
  • WGL_SAMPLES_ARB : wglext.h, openGL_tools.cpp, ARB_Multisample.cpp
  • WGL_SAMPLES_EXT : wglext.h
  • WGL_SHARE_ACCUM_ARB : wglext.h
  • WGL_SHARE_ACCUM_EXT : wglext.h
  • WGL_SHARE_DEPTH_ARB : wglext.h
  • WGL_SHARE_DEPTH_EXT : wglext.h
  • WGL_SHARE_STENCIL_ARB : wglext.h
  • WGL_SHARE_STENCIL_EXT : wglext.h
  • WGL_STENCIL_BITS_ARB : wglext.h
  • WGL_STENCIL_BITS_EXT : wglext.h
  • WGL_STENCIL_BUFFER_BIT_ARB : wglext.h
  • WGL_STEREO_ARB : wglext.h
  • WGL_STEREO_EXT : wglext.h
  • WGL_SUPPORT_GDI_ARB : wglext.h
  • WGL_SUPPORT_GDI_EXT : wglext.h
  • WGL_SUPPORT_OPENGL_ARB : wglext.h
  • WGL_SUPPORT_OPENGL_EXT : wglext.h
  • WGL_SWAP_COPY_ARB : wglext.h
  • WGL_SWAP_COPY_EXT : wglext.h
  • WGL_SWAP_EXCHANGE_ARB : wglext.h
  • WGL_SWAP_EXCHANGE_EXT : wglext.h
  • WGL_SWAP_LAYER_BUFFERS_ARB : wglext.h
  • WGL_SWAP_LAYER_BUFFERS_EXT : wglext.h
  • WGL_SWAP_METHOD_ARB : wglext.h
  • WGL_SWAP_METHOD_EXT : wglext.h
  • WGL_SWAP_UNDEFINED_ARB : wglext.h
  • WGL_SWAP_UNDEFINED_EXT : wglext.h
  • WGL_TEXTURE_1D_ARB : wglext.h
  • WGL_TEXTURE_2D_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB : wglext.h
  • WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB : wglext.h
  • WGL_TEXTURE_DEPTH_COMPONENT_NV : wglext.h
  • WGL_TEXTURE_FLOAT_R_NV : wglext.h
  • WGL_TEXTURE_FLOAT_RG_NV : wglext.h
  • WGL_TEXTURE_FLOAT_RGB_NV : wglext.h
  • WGL_TEXTURE_FLOAT_RGBA_NV : wglext.h
  • WGL_TEXTURE_FORMAT_ARB : wglext.h
  • WGL_TEXTURE_RECTANGLE_NV : wglext.h
  • WGL_TEXTURE_RGB_ARB : wglext.h
  • WGL_TEXTURE_RGBA_ARB : wglext.h
  • WGL_TEXTURE_TARGET_ARB : wglext.h
  • WGL_TRANSPARENT_ALPHA_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_ARB : wglext.h
  • WGL_TRANSPARENT_BLUE_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_EXT : wglext.h
  • WGL_TRANSPARENT_GREEN_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_INDEX_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_RED_VALUE_ARB : wglext.h
  • WGL_TRANSPARENT_VALUE_EXT : wglext.h
  • WGL_TYPE_COLORINDEX_ARB : wglext.h
  • WGL_TYPE_COLORINDEX_EXT : wglext.h
  • WGL_TYPE_RGBA_ARB : wglext.h
  • WGL_TYPE_RGBA_EXT : wglext.h
  • WGL_WGLEXT_VERSION : wglext.h
  • WM_READ_FROM_EDIT : systray.cpp
  • WM_REFRESH : systray.cpp
  • WM_REFRESH_EDIT : systray.cpp
  • WM_REFRESH_SPIN : systray.cpp
  • WS_EX_COMPOSITED : screen.cpp
  • WS_EX_LAYERED : screen.cpp
  • WS_EX_NOACTIVATE : screen.cpp
Generated on Fri Aug 20 19:22:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: File Member Index

  • _ETypeStart : MyList.h
  • CursorType : cursor.h
  • DockPos : 3d.h
  • FogMode : fog.h
  • FontType : text3d.h
  • PolygonModeType : polygonMode.h
  • StateTitle : title.h
  • TextAlign : text3d.h
  • TextureEnvMode : texture.h
  • TextureFilter : texture.h
  • TextureTarget : texture.h
  • TextureWrap : texture.h
  • TOpperation : calculator.h
  • TypeButton : control.h
  • TypeMaterial : material.h
  • TypeScreenShot : controlEngine.h
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: File Member Index

- a -

  • align_begin : text3d.h
  • align_center : text3d.h
  • align_end : text3d.h
  • align_justify : text3d.h

- b -

  • blend : texture.h
  • bottom : 3d.h
  • buttonLeft : control.h
  • buttonMid : control.h
  • buttonRight : control.h

- c -

  • clamp : texture.h
  • cursorArrow : cursor.h
  • cursorMoving : cursor.h
  • cursorNoChange : cursor.h
  • cursorNothing : cursor.h
  • cursorPush : cursor.h
  • cursorRepere : cursor.h
  • cursorText : cursor.h
  • cursorWait : cursor.h

- d -

  • decal : texture.h

- f -

  • fill : polygonMode.h
  • fogExponential : fog.h
  • fogExponential2 : fog.h
  • fogLinear : fog.h
  • ft_bitmap : text3d.h
  • ft_extrude : text3d.h
  • ft_outline : text3d.h
  • ft_pixmap : text3d.h
  • ft_polygon : text3d.h
  • ft_texture : text3d.h
  • ft_unknown : text3d.h

- l -

  • left : 3d.h
  • line : polygonMode.h
  • linear : texture.h
  • list_after : MyList.h
  • list_before : MyList.h
  • list_current : MyList.h
  • list_first : MyList.h
  • list_last : MyList.h

- m -

  • mat_black_plastic : material.h
  • mat_black_rubber : material.h
  • mat_brass : material.h
  • mat_bronze : material.h
  • mat_chrome : material.h
  • mat_copper : material.h
  • mat_cyan_rubber : material.h
  • mat_emerald : material.h
  • mat_gold : material.h
  • mat_green_rubber : material.h
  • mat_jade : material.h
  • mat_obsidian : material.h
  • mat_pearl : material.h
  • mat_pewter : material.h
  • mat_polished_bronze : material.h
  • mat_polished_copper : material.h
  • mat_polished_gold : material.h
  • mat_polished_silver : material.h
  • mat_red_rubber : material.h
  • mat_ruby : material.h
  • mat_silver : material.h
  • mat_turquoise : material.h
  • mat_white_rubber : material.h
  • mat_yellow_rubber : material.h
  • maximize : title.h
  • minimize : title.h
  • modulate : texture.h

- n -

  • nearest : texture.h

- o -

  • Op_Add : calculator.h
  • Op_Div : calculator.h
  • Op_Mult : calculator.h
  • Op_Null : calculator.h
  • Op_Sub : calculator.h
  • original : title.h

- p -

  • point : polygonMode.h

- r -

  • repeat : texture.h
  • replace : texture.h
  • right : 3d.h

- s -

  • ssBlending : controlEngine.h
  • ssDepth : controlEngine.h
  • ssLuminance : controlEngine.h
  • ssRGB : controlEngine.h

- t -

  • texture1D : texture.h
  • texture2D : texture.h
  • texture3D : texture.h
  • top : 3d.h
Generated on Fri Aug 20 19:22:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: File Member Index

- a -

  • AboutProc() : systray.h, systray.cpp
  • accFrustum() : openGL_tools.h, openGL_tools.cpp
  • accPerspective() : openGL_tools.h, openGL_tools.cpp
  • ApplyParamObj() : valueEditor.cpp

- b -

  • BOOL() : wglext.h
  • Bound2_PI() : trigo.h, trigo.cpp

- c -

  • ChangeTrigoSens() : trigo.h, trigo.cpp
  • clear() : MyString.h, MyString.cpp
  • Config() : cursor.cpp
  • ConfigProc() : systray.h, systray.cpp
  • ControlEngineProc() : controlEngine.h, controlEngine.cpp

- d -

  • DebugStructProc() : valueEditor.h, valueEditor.cpp
  • DECLARE_HANDLE() : wglext.h
  • DefaultFoncCompare() : MyList.h
  • DrawTextOnFirstPlan() : communTools.h, communTools.cpp

- e -

  • Equ_1SURX() : equations.h, equations.cpp
  • ErrorMessage() : communTools.h, communTools.cpp

- f -

  • FTLibraryFree() : controlEngine.h, controlEngine.cpp
  • FTLibraryInit() : controlEngine.h, controlEngine.cpp

- g -

  • GetDeltaWindow() : windowTools.h, windowTools.cpp
  • GetNearExp2() : trigo.h, trigo.cpp
  • GetSpinPos() : systray.cpp
  • GetTrigoSens() : trigo.h, trigo.cpp
  • GetWindowPos() : windowTools.h, windowTools.cpp
  • GetWindowSize() : windowTools.h, windowTools.cpp
  • GLboolean() : wglext.h, glext.h
  • GLint() : glext.h
  • GLuint() : glext.h

- h -

  • HANDLE() : wglext.h
  • HDC() : wglext.h
  • HPBUFFERARB() : wglext.h
  • HPBUFFEREXT() : wglext.h

- i -

  • InitMultisample() : ARB_Multisample.h, ARB_Multisample.cpp
  • int() : wglext.h
  • INT64() : wglext.h
  • IntFloorLog2() : trigo.cpp
  • IsPow2() : trigo.cpp

- l -

  • LPVOID() : wglext.h

- m -

  • MailTo() : communTools.h, communTools.cpp
  • MoveToBorderTask() : windowTools.h, windowTools.cpp
  • MyOpenBrowser() : communTools.h, communTools.cpp

- n -

  • NextSubKey() : MyRegistry.H, MyRegistry.CPP

- o -

  • OpenGL_ExtensionSupported() : openGL_tools.h, openGL_tools.cpp
  • OpenGL_InitMultisample() : openGL_tools.h, openGL_tools.cpp
  • OpenGL_TestError() : openGL_tools.h, openGL_tools.cpp
  • OpenGL_ViewVersion() : openGL_tools.h, openGL_tools.cpp
  • OpenGL_ViewVersionExtansions() : openGL_tools.h, openGL_tools.cpp
  • operator+() : MyString.cpp
  • operator<<() : MyString.cpp

- p -

  • PushButton() : windowTools.h, windowTools.cpp

- r -

  • ret() : MyString.cpp
  • Run() : communTools.h, communTools.cpp

- s -

  • ScreenShotProc() : controlEngine.cpp
  • SetDeltaWindowPos() : windowTools.h, windowTools.cpp
  • SetDeltaWindowSize() : windowTools.h, windowTools.cpp
  • SetFullScreen() : windowTools.h, windowTools.cpp
  • SetSpinPos() : systray.cpp
  • SetSpinRange() : systray.cpp
  • SetWindowSize() : windowTools.h, windowTools.cpp
  • SetWindowStyle() : windowTools.h, windowTools.cpp
  • SetWindowTitle() : windowTools.h, windowTools.cpp
  • ShowMouse() : windowTools.h, windowTools.cpp
  • SysTrayProc() : systray.h, systray.cpp

- t -

  • ToggleCheck() : windowTools.h, windowTools.cpp
  • TreeView_ExpandAll() : windowTools.h, windowTools.cpp
  • TreeView_ExpandAll_Level() : windowTools.h, windowTools.cpp

- v -

  • ValueEditorProc() : valueEditor.h, valueEditor.cpp
  • VOID() : wglext.h
  • void() : wglext.h, glext.h

- w -

  • WGLisExtensionSupported() : ARB_Multisample.cpp
  • WinMain() : 3dcontrols.cpp
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: File Member Index

- a -

  • a : glext.h
  • abDotProduct : glext.h
  • abOutput : glext.h
  • addr : glext.h
  • address : glext.h
  • alpha : glext.h
  • arg1 : glext.h
  • arg1Mod : glext.h
  • arg1Rep : glext.h
  • arg2 : glext.h
  • arg2Mod : glext.h
  • arg2Rep : glext.h
  • arg3 : glext.h
  • arg3Mod : glext.h
  • arg3Rep : glext.h
  • arrays : glext.h

- b -

  • b : glext.h
  • backfunc : glext.h
  • bias : glext.h
  • blue : glext.h
  • border : glext.h
  • buffer : glext.h
  • buffers : glext.h
  • bufs : glext.h
  • by : glext.h
  • bz : glext.h

- c -

  • c : glext.h
  • cap : glext.h
  • cdDotProduct : glext.h
  • cdOutput : glext.h
  • column : glext.h
  • components : glext.h
  • componentUsage : glext.h
  • condition : glext.h
  • coord : glext.h
  • coords : glext.h
  • count : wglext.h, glext.h

- d -

  • data : glext.h
  • denominator : wglext.h
  • depth : glext.h
  • dfactorAlpha : glext.h
  • dfactorRGB : glext.h
  • divisor : wglext.h
  • dpfail : glext.h
  • dppass : glext.h
  • dst : glext.h
  • dstMask : glext.h
  • dstMod : glext.h
  • dwSize : wglext.h

- e -

  • end : glext.h
  • ETypeStart : MyList.h

- f -

  • FaceNode : face.h
  • fences : glext.h
  • filter : glext.h
  • first : glext.h
  • FncManipulateur : MyString.h
  • format : glext.h
  • fsize : glext.h
  • fuPlanes : wglext.h

- g -

  • g : glext.h
  • GLhalfNV : glext.h
  • GLintptrARB : glext.h
  • GLsizeiptrARB : glext.h
  • green : glext.h

- h -

  • hDC : wglext.h
  • height : wglext.h, glext.h
  • hglrc : wglext.h
  • hReadDC : wglext.h

- i -

  • iAttribute : wglext.h
  • iBuffer : wglext.h
  • id : glext.h
  • ids : glext.h
  • iEntries : wglext.h
  • iHeight : wglext.h
  • iLayerPlane : wglext.h
  • image : glext.h
  • imageSize : glext.h
  • img : glext.h
  • in : glext.h
  • index : glext.h
  • indices : glext.h
  • input : glext.h
  • internalFormat : glext.h
  • internalformat : glext.h
  • interp : glext.h
  • invert : glext.h
  • iPixelFormat : wglext.h
  • iWidth : wglext.h

- l -

  • LayoutDouble : face.h
  • len : glext.h
  • length : wglext.h, glext.h
  • level : glext.h

- m -

  • mapping : glext.h
  • mask : glext.h
  • matrix : glext.h
  • mode : glext.h
  • modestride : glext.h
  • msc : wglext.h
  • muxSum : glext.h

- n -

  • n : glext.h
  • name : glext.h
  • nAttributes : wglext.h
  • nMaxFormats : wglext.h
  • nNumFormats : wglext.h
  • normalized : glext.h
  • num : glext.h
  • numerator : wglext.h
  • nx : glext.h
  • ny : glext.h
  • nz : glext.h

- o -

  • Obj_CallBack : MyObject.h
  • offset : glext.h
  • outW : glext.h
  • outX : glext.h
  • outY : glext.h
  • outZ : glext.h

- p -

  • p : glext.h
  • packed : glext.h
  • pAddress : wglext.h
  • param : glext.h
  • params : glext.h
  • pEvent : wglext.h
  • pfAttribFList : wglext.h
  • pFlag : wglext.h
  • PFNGLMAPBUFFERARBPROC : glext.h
  • PFNGLMAPOBJECTBUFFERATIPROC : glext.h
  • PFNWGLALLOCATEMEMORYNVPROC : wglext.h
  • PFNWGLGETEXTENSIONSSTRINGARBPROC : wglext.h
  • PFNWGLGETEXTENSIONSSTRINGEXTPROC : wglext.h
  • pfValues : wglext.h
  • piAttribIList : wglext.h
  • piAttribList : wglext.h
  • piAttributes : wglext.h
  • piFormats : wglext.h
  • piValue : wglext.h
  • piValues : wglext.h
  • pixels : glext.h
  • pLastMissedUsage : wglext.h
  • pMissedFrames : wglext.h
  • pname : glext.h
  • Point2D_double : control.h
  • Point2D_int : control.h
  • pointer : glext.h
  • points : glext.h
  • portion : glext.h
  • preserve : glext.h
  • primcount : glext.h
  • priorities : glext.h
  • program : glext.h
  • programs : glext.h
  • pSize : wglext.h
  • Pt_3D_Double : region.h
  • ptrstride : glext.h
  • puBlue : wglext.h
  • puGreen : wglext.h
  • puRed : wglext.h

- q -

  • q : glext.h

- r -

  • r : glext.h
  • range : glext.h
  • ref : glext.h
  • remainder : wglext.h
  • res : glext.h
  • reset : glext.h
  • residences : glext.h
  • row : glext.h

- s -

  • s : glext.h
  • sbc : wglext.h
  • scale : glext.h
  • sfactorAlpha : glext.h
  • sfail : glext.h
  • sink : glext.h
  • size : glext.h
  • size4d : glext.h
  • span : glext.h
  • src : glext.h
  • start : glext.h
  • storagetype : glext.h
  • stride : glext.h
  • string : glext.h
  • sumOutput : glext.h
  • swizzle : glext.h

- t -

  • t : glext.h
  • table : glext.h
  • target_msc : wglext.h
  • target_sbc : wglext.h
  • tc : glext.h
  • texture : glext.h
  • textures : glext.h
  • transform : glext.h
  • TreeNode : treeView.h
  • ty : glext.h
  • type : glext.h
  • tz : glext.h

- u -

  • u1 : glext.h
  • u2 : glext.h
  • uDelay : wglext.h
  • uEdge : wglext.h
  • uFlags : wglext.h
  • uMaxLineDelay : wglext.h
  • uMaxPixelDelay : wglext.h
  • uorder : glext.h
  • uRate : wglext.h
  • usage : glext.h
  • uSource : wglext.h
  • ust : wglext.h
  • ustride : glext.h
  • uType : wglext.h

- v -

  • v : glext.h
  • v1 : glext.h
  • v2 : glext.h
  • value : glext.h
  • ValueEditor_double : valueEditor.h
  • ValueEditor_float : valueEditor.h
  • ValueEditor_int : valueEditor.h
  • values : glext.h
  • variable : glext.h
  • vorder : glext.h
  • vstride : glext.h

- w -

  • w : glext.h
  • w1 : glext.h
  • w2 : glext.h
  • weights : glext.h
  • width : wglext.h, glext.h
  • woffset : glext.h
  • worder : glext.h
  • wstride : glext.h

- x -

  • x : wglext.h, glext.h
  • xoffset : glext.h
  • xSrc : wglext.h

- y -

  • y : wglext.h, glext.h
  • yoffset : glext.h
  • ySrc : wglext.h

- z -

  • z : glext.h
  • zoffset : glext.h
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: File Member Index

  • arbMultisampleFormat : ARB_Multisample.h, ARB_Multisample.cpp
  • arbMultisampleSupported : ARB_Multisample.h, ARB_Multisample.cpp
  • bufferSelect : picking.cpp
  • ce : window.cpp, valueEditor.cpp, univers.cpp, treeView.cpp, trackButton.cpp, title.cpp, tip.cpp, TextTexture.cpp, textBox.cpp, text3d.cpp, taskWindow.cpp, systray.cpp, slider.cpp, primitive.cpp, picking.cpp, Object3D.cpp, msgBox.cpp, masterContainer.cpp, Inertia.cpp, face.cpp, effect.cpp, cursor.cpp, controlEngine.cpp, control.cpp, container.cpp, calculator.cpp, button.cpp, 3dcontrols.cpp
  • valueEditors : valueEditor.cpp
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Page Index

3d Controls Related Pages

Here is a list of all related documentation pages:
  • Todo List
Generated on Fri Aug 20 19:22:03 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Todo List

Todo List

Member BasicText3D::DrawPicking (char *text)
Parametre:
  • asBoundBox, afficher just les boites englobantes ou caractere complet
  • differentier les lettre

Member ControlEngine::ControlEngine ()
Gestion multi univers (equivalent 2d: multi desktop), fair une class infinte ?

Member ControlEngine::cpuLimit
implementation du cpuLimit

Member Cursor::DrawText (char *text)
a implementer

Member Cursor::DrawVector (double x, double y)
blending, mais la j'ai pas reussi

Member Curve::Draw (Point2D< double > size, Texture *texture)
les 2 version de Curve::Draw on les meme performance pourkoi ?, meme test avec les list sans ammelioration

Member Curve::Draw (Point2D< double > size, Texture *texture)
on peut faire des optimisaiotn en testant au debut texture->useResising

Member Face::Draw (BOOL onPicking)
transposé tout dans le text->draw

Class Fog
template class class IVS { int index T value MyString description; }

Member Layout::Compute ()
a revoir completement void Move(T delta) { constValue+=delta; }

Class Material
gestion opacity a faire

Member Material::As (TypeMaterial mat)
shiness mistere

Member MsgBox::OnButtonOk ()
evenement a gerer pour differention Ok de Cancel (valeur de retour ?

Member MyList::SetCompareFunction (int(*fonction)(T *elem1, T *elem2))
fonctionnalité a implementé

Member MyString::CopyTo (MyString &result, int index, int size)
a verifier le calcul me parais suspect

Member Object3D::DrawVector (double x, double y)
blending, mais la j'ai pas reussi

Member Picking::OnMouseMove (int x, int y)
a gerer l'heritage tout comme dans WM_MOUSE_MOVE

Member StateKey::GetState (int code)
isTogged ne semble pas marcher, creuser la question

Member TaskWindow::Refresh ()
gerer les depassement de conteneur

Member Text3D::Draw ()
a optimiser: doit etre appeler uniquement si le text,font,scale ou clipping on changé

Member TextBox::OnLButtonDown (StateMouse *mouse, int face)
SetCursor, parametre reel a envoyer

Member Texture::AddText (char *text, COLORREF color, COLORREF background, int xFormat=0, int yFormat=0)
Ne pas effacer ce qu'il y avais avant

Member Title::GotFocus ()
Passer nouveau parametre a onTitle.GotFocus(oldSelected), gestion des selected control precedent et suivant

Member Title::OnMin ()
Seul l'univers pour le moment, mais dois etre etendu style fenetre MDI)

Member TrackButton::OnMouseMove (StateMouse *mouse, int deltaX, int deltaY, int face)
le parent peut etre docker en haut,bas etc ... ici le seul cas gerer est centré

Member ValueEditors::MakeFontsStruct (HWND hWnd)
Ajouter le nom du fichier ttf, type, taille etc ...

Class Window
TrackButton control a faire

File array.h
allocation par block pour optimiser les perfs

Member ScreenShotProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
gestion de HDC dans chaque instance de la callback pour gestion message WM_PAINT

Member OpenGL_TestError (BOOL resultOnMessageBox, BOOL resultOnMyDebug, HWND hWnd)
pause du timer puis reprise apresfin du MessageBox plutot que simple destruction

Member SetSpinRange (HWND hWnd, int id, int minPos, int maxPos, int delta)
delta de la fonction non implementé

Member ValueEditorProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
mecanisme de desalocation a faire (mais peut inportant pour le moment)
Generated on Fri Aug 20 19:22:02 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Alphabetical index

3d Controls Class Index

A | B | C | D | E | F | I | L | M | O | P | R | S | T | U | V | W

A
Effect Layout ParsingElem Textures
Angles EffectApparition Light ParsingLine Timer
Array ElemStack LinearEqu2D ParsingWord Tip
AsMaterial ElemTaskWindow LineDock Picking Title
B
Enabling
M
Point1D TrackButton
BaseObj EventButton MasterContainer Point2D TreeDirectory
BasicText3D EventContainer Material Point3D TreeView
Box3D EventControl MsgBox PolygonMode TreeViewItem
Button EventFaceOver MyDebug Primitive Tutorial
C
EventInertia MyException
R
Tutorial::ApplicationDemo
Calculator EventKey MyExceptionMemory Recorder Tutorial::BaseDemo
CMsgBox EventMouse MyList Region Tutorial::Demo
CMyMenu EventMouseButton MyListItem ResizingAndRotateControl Tutorial::FaceDemo
Color EventOver MyListIterator RGBA Tutorial::LayoutDemo
Container EventSlider MyRegistry
S
Tutorial::UniversDemo
Control EventTextBox MyStack Screen Tutorial::WindowDemo
ControlEngine EventTitle MyString Slider
U
Coordonate EventTrackButton MyTree StateKey Univers
CubeDock EventTreeView MyTreeNode StateMouse
V
Cursor
F
O
T
ValueEditor
Curve Face Object TaskWindow ValueEditors
D
Fog Object3D Text3D ValueNamed
Demo
I
Opperation TextBox
W
Dock Inertia
P
TextTexture Window
E
L
ParamValueEditor Texture

A | B | C | D | E | F | I | L | M | O | P | R | S | T | U | V | W

Generated on Fri Aug 20 19:20:59 2004 for 3d Controls by doxygen 1.3.6


3d Controls: Member List

Object Member List

This is the complete list of members for Object, including all inherited members.
callBackAlloc | Object |
Object() | Object | [inline]
Object(int _type, void *_thisParent) | Object | [inline]
operator=(Object &source) | Object | [inline]
param | Object |
thisParent | Object |
type | Object |
Generated on Fri Aug 20 19:21:28 2004 for 3d Controls by doxygen 1.3.6