X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=doc%2Ffreeglut_user_interface.html;h=20d1e42e596c50df39712a4decce82b0c5a8612b;hb=4f4c33c357f3dae74ac98fbdb450b3f624026049;hp=6a633823d3ca19310d9c127c9bb1c20cd3dd66ba;hpb=bec227f153f60b8a314bd7defddd5e549b72bfa0;p=freeglut
diff --git a/doc/freeglut_user_interface.html b/doc/freeglut_user_interface.html
index 6a63382..20d1e42 100644
--- a/doc/freeglut_user_interface.html
+++ b/doc/freeglut_user_interface.html
@@ -19,7 +19,7 @@
OpenGL Utility Toolkit
- (freeglut)
+ (freeglut 2.0.0)
Application Programming Interface
@@ -31,11 +31,11 @@
- The freeglut Programming Consortium
+ The freeglut Programming Consortium
- November, 2002
+ July, 2003
@@ -323,7 +323,7 @@ There was no way for an application to loop in GLUT for a while, possibly
as a subloop while a specific window was open, and then return to the calling
function. A new function, "glutMainLoopEvent", has been added
to allow this functionality. Another function, "glutLeaveMainLoop
-", has also been added to allow the application to tell freeglut to clean
+", has also been added to allow the application to tell freeglut to clean
up and close down.
3.4.2 Action on Window Closure
Another difficulty with GLUT, especially with multiple-window programs,
@@ -339,11 +339,10 @@ GLUT should simply exit (the default).
to Silicon Graphics hardware have not been implemented. Most or all
of the new callbacks are listed in the GLUT Version 4 "glut.h" header file
but did not make it into the documentation. The new callbacks consist
-of regular and special key release callbacks, a joystick callback, a menu
-state callback (with one argument, distinct from the menu status callback
-which has three arguments), and a window status callback
- (also with one argument). Unsupported callbacks are the three Spaceball
-callbacks, the ButtonBox callback, the Dials callback, and the two Tablet
+of regular and special key release callbacks, a joystick callback, a window
+status callback, window closure callbacks, a menu closure callback, and a
+mouse wheel callback. Unsupported callbacks are the three Spaceball
+callbacks, the ButtonBox callback, and the two Tablet
callbacks. If the user has a need for an unsupported callback he should
contact the freeglut development team.
@@ -356,8 +355,8 @@ pixels for bitmapped fonts and in OpenGL units for the stroke fonts.
3.4.5 Geometry Rendering
- Two functions have been added to render a wireframe and a solid rhombic
-dodecahedron.
+ Functions have been added to render a wireframe and a solid rhombic
+dodecahedron, a cylinder, and a Sierpinski sponge.
3.4.5 Extension Function Queries
glutGetProcAddress is a wrapper for the glXGetProcAddressARB and wglGetProcAddress
functions.
@@ -1063,6 +1062,67 @@ is not implemented in freeglut.
13.2 glutGet
+
+
+The following state variables may be queried with "glutGet".
+The returned value is an integer.
+
+
+
+These queries are with respect to the current window:
+
+
+
+- GLUT_WINDOW_X - window X position
+
- GLUT_WINDOW_Y - window Y position
+
- GLUT_WINDOW_WIDTH - window width
+
- GLUT_WINDOW_HEIGHT - window height
+
- GLUT_WINDOW_BUFFER_SIZE - number of color or color index bits per pixel
+
- GLUT_WINDOW_STENCIL_SIZE - number of bits per stencil value
+
- GLUT_WINDOW_DEPTH_SIZE - number of bits per depth value
+
- GLUT_WINDOW_RED_SIZE - number of bits per red value
+
- GLUT_WINDOW_GREEN_SIZE - number of bits per green value
+
- GLUT_WINDOW_BLUE_SIZE - number of bits per blue value
+
- GLUT_WINDOW_ALPHA_SIZE - number of bits per alpha value
+
- GLUT_WINDOW_ACCUM_RED_SIZE - number of red bits in the accumulation buffer
+
- GLUT_WINDOW_ACCUM_GREEN_SIZE - number of green bits in the accumulation buffer
+
- GLUT_WINDOW_ACCUM_BLUE_SIZE - number of blue bits in the accumulation buffer
+
- GLUT_WINDOW_ACCUM_ALPHA_SIZE - number of alpha bits in the accumulation buffer
+
- GLUT_WINDOW_DOUBLEBUFFER - 1 if the color buffer is double buffered, 0 otherwise
+
- GLUT_WINDOW_RGBA - 1 if the color buffers are RGB[A], 0 for color index
+
- GLUT_WINDOW_PARENT - parent window ID
+
- GLUT_WINDOW_NUM_CHILDREN - number of child windows
+
- GLUT_WINDOW_COLORMAP_SIZE - number of entries in the window's colormap
+
- GLUT_WINDOW_NUM_SAMPLES - number of samples per pixel if using multisampling
+
- GLUT_WINDOW_STEREO - 1 if the window supports stereo, 0 otherwise
+
- GLUT_WINDOW_CURSOR - current cursor
+
- GLUT_WINDOW_FORMAT_ID - on Windows, return the pixel format number of the current window
+
+
+
+These queries do not depend on the current window.
+
+
+
+- GLUT_SCREEN_WIDTH - width of the screen in pixels
+
- GLUT_SCREEN_HEIGHT - height of the screen in pixels
+
- GLUT_SCREEN_WIDTH_MM - width of the screen in millimeters
+
- GLUT_SCREEN_HEIGHT_MM - height of the screen in millimeters
+
- GLUT_MENU_NUM_ITEMS - number of items in the current menu
+
- GLUT_DISPLAY_MODE_POSSIBLE - return 1 if the current display mode is supported, 0 otherwise
+
- GLUT_INIT_WINDOW_X - X position last set by glutInitWindowPosition
+
- GLUT_INIT_WINDOW_Y - Y position last set by glutInitWindowPosition
+
- GLUT_INIT_WINDOW_WIDTH - width last set by glutInitWindowSize
+
- GLUT_INIT_WINDOW_HEIGHT - height last set by glutInitWindowSize
+
- GLUT_INIT_DISPLAY_MODE - display mode last set by glutInitDisplayMode
+
- GLUT_ELAPSED_TIME - time (in milliseconds) elapsed since glutInit or glutGet(GLUT_ELAPSED_TIME) was first called
+
- GLUT_INIT_STATE - ?
+
- GLUT_VERSION - Return value will be X*10000+Y*100+Z where X is the
+ major version, Y is the minor version and Z is the patch level.
+ This query is only supported in freeglut (version 2.0.0 or later).
+
+
+
13.3 glutDeviceGet
13.4 glutGetModifiers
@@ -1073,7 +1133,7 @@ is not implemented in freeglut.
13.7 glutGetProcAddress
glutGetProcAddress returns
-a pointer to a named GL or FreeGLUT function.
+a pointer to a named GL or freeglut function.
Usage
void *glutGetProcAddress ( const
char *procName ) ;
@@ -1087,10 +1147,13 @@ functions directly, that application will only link/run with an OpenGL library
that supports the extension. By using a function pointer returned from glutGetProcAddress(),
the application will avoid this hard dependency and be more portable and interoperate
better with various implementations of OpenGL.
- Both OpenGL functions and FreeGLUT
+
Both OpenGL functions and freeglut
functions can be queried with this function.
- NOTE: this function is not supported
-in GLUT.
+ Changes From GLUT
+
+ GLUT does not include this function.
+
+
14.0
Font Rendering Functions
Freeglut supports two types of font rendering: bitmap fonts,
@@ -1803,19 +1866,69 @@ goes in the upper left-hand corner of the freeglut windows
21.0
Implementation Notes
- 22.0
- GLUT State
-
- 23.0
- "freeglut.h" Header File
-
- 24.0
- References
-
- 25.0
- Index
-
-
+
22.0
+GLUT State
+
+ 23.0
+"freeglut.h" Header File
+
+
+
+Application programmers who are porting their GLUT programs to freeglut may continue
+to include <GL/glut.h> in their programs.
+Programs which use the freeglut-specific extensions to GLUT should include
+<GL/freeglut.h>. One possible arrangement is as follows:
+
+
+
+#ifdef FREEGLUT
+#include <GL/freeglut_ext.h>
+#else
+#include <GL/glut.h>
+#endif
+
+
+
+Compile-time freeglut version testing can be done as follows:
+
+
+
+#ifdef FREEGLUT_VERSION_2_0
+ code specific to freeglut 2.0 or later here
+#endif
+
+
+
+In future releases, FREEGLUT_VERSION_2_1, FREEGLUT_VERSION_2_2, etc will
+be defined. This scheme mimics OpenGL conventions.
+
+
+
+The freeglut version can be queried at runtime by calling
+glutGet(GLUT_VERSION).
+The result will be X*10000+Y*100+Z where X is the major version, Y is the
+minor version and Z is the patch level.
+
+
+This may be used as follows:
+
+
+
+if (glutGet(GLUT_VERSION) < 20001) {
+ printf("Sorry, you need freeglut version 2.0.1 or later to run this program.\n");
+ exit(1);
+}
+
+
+
+
+ 24.0
+References
+
+ 25.0
+Index
+
+