aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/extras/ogl-sample/main/doc/man/manglw/glwdrawingarea.gl
diff options
context:
space:
mode:
authorMike Gabriel <mike.gabriel@das-netzwerkteam.de>2015-02-02 15:02:49 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2015-02-02 15:02:49 +0100
commitb16b9e4656e7199c2aec74a4c8ebc7a875d3ba73 (patch)
tree4361edef0d42d5bf5ac984ef72b4fac35426eae7 /nx-X11/extras/ogl-sample/main/doc/man/manglw/glwdrawingarea.gl
parent0d5a83e986f39982c0924652a3662e60b1f23162 (diff)
downloadnx-libs-b16b9e4656e7199c2aec74a4c8ebc7a875d3ba73.tar.gz
nx-libs-b16b9e4656e7199c2aec74a4c8ebc7a875d3ba73.tar.bz2
nx-libs-b16b9e4656e7199c2aec74a4c8ebc7a875d3ba73.zip
massive reduction of unneeded files
Diffstat (limited to 'nx-X11/extras/ogl-sample/main/doc/man/manglw/glwdrawingarea.gl')
-rw-r--r--nx-X11/extras/ogl-sample/main/doc/man/manglw/glwdrawingarea.gl485
1 files changed, 0 insertions, 485 deletions
diff --git a/nx-X11/extras/ogl-sample/main/doc/man/manglw/glwdrawingarea.gl b/nx-X11/extras/ogl-sample/main/doc/man/manglw/glwdrawingarea.gl
deleted file mode 100644
index f25a4f5c6..000000000
--- a/nx-X11/extras/ogl-sample/main/doc/man/manglw/glwdrawingarea.gl
+++ /dev/null
@@ -1,485 +0,0 @@
-.\" **
-.\" ** (c) Copyright 1993, 1994, 1995, 1996 Silicon Graphics, Inc.
-.\" **
-.\" ** (c) Copyright 1989, 1990, 1991 Open Software Foundation, Inc.
-.\" ** All Rights Reserved.
-.\" **
-.\" ** (c) Copyright 1987, 1988, 1989, by Hewlett-Packard Company
-.\" **
-.\" ** (c) Copyright 1987, 1988 by Digital Equipment Corporation,
-.\" ** Maynard, MA. All Rights Reserved.
-.\" **
-.\" **
-.TH GLwDrawingArea 3X "" "" "" ""
-.SH NAME
-\fBGLwDrawingArea, GLwMDrawingArea \(em OpenGL drawing widgets.\fP
-.iX "GLwDrawingArea" "GLwMDrawingArea"
-.iX "widget class" "OpenGL" "Draw"
-.sp 1
-.SH SYNOPSIS
-\fB#include <X11/GLw/GLwDrawA.h>
-.br
-\fBld ... -lGLw -lGL -l<anywidgetlibrary> -lXext -lXt -lX11 -lm
-.sp
-\fB#include <X11/GLw/GLwMDrawA.h>
-.br
-\fBld ... -lGLw -lGL -lXm -lXext -lXt -lX11 -lm
-.sp 1
-.SH DESCRIPTION
-\fBGLwDrawingArea\fP and \fBGLwMDrawingArea\fP are widgets suitable
-for OpenGL drawing. They
-provide a window with the appropriate visual and colormaps needed for
-OpenGL, based on supplied parameters. GLwDrawingArea and
-GLwMDrawingArea also provide
-callbacks for redraw, resize, input, and initialization.
-.PP
-GLwDrawingArea is not a part of any widget set, but depends only on Xt.
-GLwDrawingArea can be used with any widget set. GLwMDrawingArea
-is identical to
-GLwDrawingArea except that it is a subclass of the Motif\(Tm widget
-class XmPrimitive and
-has resources and defaults suitable for use with Motif. For example,
-GLwMDrawingArea provides the default Motif background and foreground colors
-for resources, and deals better with keyboard traversal. Although the
-GLwDrawingArea widget can be used in a Motif program, it is recommended that
-GLwMDrawingArea be used instead.
-.PP
-Since both GLwDrawingArea and GLwMDrawingArea
-widgets behave almost identically, the
-remainder of this manual page will refer only to GLwDrawingArea, except when
-the behaviors differ. Unless explicitly stated, all statements
-about GLwDrawingArea also apply to GLwMDrawingArea.
-.PP
-Among the information provided when creating a GLwDrawingArea is
-information necessary to determine the visual. This may be provided
-in three ways, all of them through resources. A specific visualInfo
-structure may be passed in. (This visualInfo must have been obtained
-elsewhere; it is the application designer's responsibility to make
-sure that it is compatible with the OpenGL rendering done by the
-application). Alternatively, an attribute list may be provided. This
-attribute list is formatted identically to that used for direct open
-GL programming. Finally, each attribute can be specified as an
-individual resource. The latter method is the simplest, and is the
-only method that works from resource files.
-.PP
-In addition to allocating the visual, the GLwDrawingArea will also
-allocate the colormap unless one is provided by the application. (If
-one is provided it is the application writer's responsibility to
-guarantee compatibility between the colormap and the visual). If
-an application creates multiple GLwDrawingAreas with the same visual,
-the same colormap will be used. (However the colormap
-will not be shared among separate applications).
-.PP
-Creating the widget does not actually create the window until it is
-realized, and consequently, the application should not perform any
-OpenGL operations
-to the window immediately after creation. Instead the application
-must wait until after it has realized the window. Alternatively, the
-\fBginit\fP callback may be used to indicate when the window has been
-created. Upon receiving this callback, the application can perform
-all OpenGL initialization for the window, and can subsequently perform
-other operations on it. The initialization is discussed in more
-detail below.
-.PP
-Applications select which GLwDrawingArea they are accessing using either
-\fBglXMakeCurrent\fP or the convenience function
-\fBGLwDrawingAreaMakeCurrent\fP which uses a widget instead of a
-display and window. If there is only one GLwDrawingArea this need
-only be called once, however if there is more than one GLwDrawingArea
-it should be called at the start of each callback.
-Callbacks in this case include not only
-callbacks provided by the widget itself, but any other callback that
-leads to GL activity such as a timeout or a workproc.
-.PP
-If an application is using double buffering, it may call
-\fBGLwDrawingAreaSwapBuffers\fP instead of \fBglXSwapBuffers\fP. This
-allows the use of the widget instead of the display and window.
-.ne 5
-.SS "GLwDrawingArea Classes"
-GLwDrawingArea inherits behavior and resources from the \fBCore\fP class.
-.br
-The class pointer is \fBglwDrawingAreaWidgetClass\fP.
-.br
-The class name is \fBGLwDrawingArea\fP.
-.PP
-.ne 5
-.SS "GLwMDrawingArea Classes"
-GLwMDrawingArea inherits behavior and resources from the
-\fBXmPrimitive\fP and \fBCore\fP classes.
-.br
-The class pointer is \fBglwMDrawingAreaWidgetClass\fP.
-.br
-The class name is \fBGLwMDrawingArea\fP.
-.sp 1
-.SS "New Resources"
-The following tables define a set of widget resources used by the programmer
-to specify data. The programmer can also set the resource values for the
-inherited classes to set attributes for this widget. To reference a
-resource by name or by class in a .Xdefaults file, remove the \fBGLwN\fP or
-\fBGLwC\fP prefix and use the remaining letters.
-There are two tables included. The first table includes resources
-that correspond directly to the attributes used by \fBglXChooseVisual\fP.
-As with \fBglXChooseVisual\fP, all Boolean resources default to FALSE
-and all integer resources default to 0, except redSize, greenSize and
-blueSize which default to 1. These resources can all be
-set only at creation time, and are used to determine the visual. If
-either the \fIGLwNattribList\fP or \fIGLwNvisualInfo\fP resource is
-set, these resources are ignored. The specific meaning of these
-resources is discussed in the \fBglXChooseVisual\fP manual page and
-will not be discussed here.
-.sp 1
-.ne 18
-.TS
-center allbox;
-lBp8 lBp8 lBp8 lBp8
-lp8 lp8 lp8 lp8.
-Name Class Type OpenGL attribute
-GLwNbufferSize GLwCBufferSize int GLX_BUFFER_SIZE
-GLwNlevel GLwCLevel int GLX_LEVEL
-GLwNrgba GLwCRgba Boolean GLX_RGBA
-GLwNdoublebuffer GLwCDoublebuffer Boolean GLX_DOUBLEBUFFER
-GLwNstereo GLwCStereo Boolean GLX_STEREO
-GLwNauxBuffers GLwCAuxBuffers Boolean GLX_AUX_BUFFERS
-GLwNredSize GLwCColorSize int GLX_RED_SIZE
-GLwNgreenSize GLwCColorSize int GLX_GREEN_SIZE
-GLwNblueSize GLwCColorSize int GLX_BLUE_SIZE
-GLwNalphaSize GLwCAlphaSize int GLX_ALPHA_SIZE
-GLwNdepthSize GLwCDepthSize int GLX_DEPTH_SIZE
-GLwNstencilSize GLwCStencilSize int GLX_STENCIL_SIZE
-GLwNaccumRedSize GLwCAccumColorSize int GLX_ACCUM_RED_SIZE
-GLwNaccumGreenSize GLwCAccumColorSize int GLX_ACCUM_GREEN_SIZE
-GLwNaccumBlueSize GLwCAccumColorSize int GLX_ACCUM_BLUE_SIZE
-GLwNaccumAlphaSize GLwCAccumAlphaSize int GLX_ACCUM_ALPHA_SIZE
-.TE
-.sp 1
-.PP
-The following table lists other resources of the GLwDrawingArea
-widget. each of these will be described subsequently.
-The codes in the access column indicate if the given resource can be
-set at creation time (\fBC\fP),
-set by using \fBXtSetValues\fP (\fBS\fP),
-retrieved by using \fBXtGetValues\fP (\fBG\fP), or is not applicable
-(\fBN/A\fP).
-.sp 1
-.ne 12
-.TS
-center;
-lp8B lp8B lp8B lp8B lp8B
-lp8 lp8 lp8 lp8 lp8.
-Name Class Type Def Acc
-_
-GLwNallocateBackground GLwCAllocateColors Boolean F CG
-GLwNallocateOtherColors GLwCAllocateColors Boolean F CG
-GLwNattribList GLwCAttribList int * NULL CG
-GLwNexposeCallback GLwCCallback XtCallbackList NULL C
-GLwNginitCallback GLwCCallback XtCallbackList NULL C
-GLwNinputCallback GLwCCallback XtCallbackList NULL C
-GLwNinstallBackground GLwCInstallBackground Boolean T CG
-GLwNinstallColormap GLwCInstallColormap Boolean T CG
-GLwNresizeCallback GLwCCallback XtCallbackList NULL C
-GLwNvisualInfo GLwCVisualInfo XVisualInfo* NULL CG
-.TE
-.sp 1
-.IP "\fBGLwNallocateBackground\fP"
-If TRUE, the background pixel and pixmap will be allocated if
-appropriate using the newly calculated colormap and visual. If FALSE,
-they will retain values calculated using the parent's colormap and
-visual. Applications which wish to have X clear their background for
-them will usually set this to TRUE. Applications clearing their own
-background will often set this to FALSE, although they may set this to
-TRUE if they query the background for their own use. One reason to
-leave this resource FALSE is that if color index mode is in use this
-avoid using up a pixel from the newly allocated colormap. Also, on
-hardware that supports only one colormap, the application may need to
-do more careful color allocation to avoid flashing between the OpenGL
-colormap and the default X colormap.
-(Note that because of the way Xt works, the background colors
-are originally calculated using the default colormap; if this resource
-is set they can be recalculated correctly. If a colormap was
-explicitly supplied to the widget rather than being dynamically
-calculated, these resources are always calculated using that colormap.)
-.IP "\fBGLwNallocateOtherColors\fP"
-This is similar to \fBGLwNallocateBackground\fP, but allocates other
-colors normally allocated by widgets. Although the GLwDrawingArea
-and GLwMDrawingArea widget do not make use of these colors the
-application may choose to query them. For the non-Motif
-GLwDrawingArea widget there are no other colors allocated, so this
-resource is a no-op. For the Motif GLwMDrawingArea are widget, the
-XmPrimitive resources \fBXmNforeground\fP, \fBXmNhighlightColor\fP,
-and \fBXmNhighlightPixmap\fP are calculated.
-.IP "\fBGLwNattribList\fP"
-Contains the list of attributes suitable for a call to
-\fBglXChooseVisual\fP. If this resource is NULL, it is calculated
-based on the attribute resources. If it is not NULL, the attribute
-resources are ignored.
-.IP "\fBGLwNexposeCallback\fP"
-Specifies the list of callbacks that is
-called when the widget receives an exposure event.
-The callback reason is \fBGLwCR_EXPOSE\fP.
-The callback structure also includes the exposure event. The
-application will generally want to redraw the scene.
-.IP "\fBGLwNginitCallback\fP"
-Specifies the list of callbacks that is
-called when the widget is first realized. Since no OpenGL operations can
-be done before the widget is realized, this callback can be used to
-perform any appropriate OpenGL initialization such as creating a context.
-The callback reason is \fBGLwCR_GINIT\fP.
-.IP "\fBGLwNinputCallback\fP"
-Specifies the list of callbacks that is
-called when the widget receives a keyboard
-or mouse event. By default, the input callback is called on each key
-press and key release, on each mouse button press and release, and
-whenever the mouse is moved while a button is pressed. However this
-can be changed by providing a different translation table.
-The callback structure also includes the input event.
-The callback reason is \fBGLwCR_INPUT\fP.
-.IP ""
-The input callback is provided as a programming convenience, as it
-provides a convenient way to catch all input events. However, a more
-modular program can often be obtained by providing specific actions and
-translations in the application rather than using a single catch all
-callback. Use of explicit translations can also provide for more
-customization.
-.IP "\fBGLwNinstallBackground\fP"
-If set to TRUE, the background is installed on the window. If set to
-FALSE, the window has no background. This resource has no effect
-unless \fBGLwNallocateBackground\fP is also TRUE.
-.IP "\fBGLwNinstallColormap\fP"
-If set to TRUE, the widget will call \fIXSetWMColormapWindows\fP to
-tell the window manager to install the colormap when the window's
-shell has focus. If set to FALSE, this will not be called. For
-applications with multiple GLwDrawingAreas sharing a single colormap,
-it is most efficient to set this resource to TRUE for exactly one
-GLwDrawingArea with each colormap. If an application needs
-additional control over the order of colormaps, this resource can be
-set to FALSE, with the application calling \fIXSetWMColormapWindows\fP
-explicitly.
-.IP "\fBGLwNresizeCallback\fP"
-Specifies the list of callbacks that is
-called when the GLwDrawingArea is resized.
-The callback reason is \fBGLwCR_RESIZE\fP.
-.IP "\fBGLwNvisualInfo\fP"
-Contains a pointer to the window's visual info structure. If NULL,
-the visualInfo is calculated at widget creation time based on the
-\fIGLwNattributeList\fP resource (which is itself calculated from the
-various resources). If \fBGLwNvisualInfo\fP is not NULL the
-\fIGLwNattributList\fP and the attribute resources are ignored.
-.sp 1
-.SS "Inherited Resources"
-Both GLwDrawingArea and GLwMDrawingArea inherit behavior and resources
-from the core superclass. Other than the behavior of the colormap and
-background resources described previously, all defaults are the same as
-for core.
-.PP
-In addition, the Motif version GLwMDrawingArea also inherits from XmPrimitive.
-The behavior of the color resources has been described previously.
-The \fITraversalOn\fP resource is disabled for this widget, but if
-keyboard input is required it should be enabled. (Also, the
-application should call \fBXmProcessTraversal(widget, XmTRAVERSE_CURRENT)\fP
-whenever mouse button 1 is clicked in the widget. This is similar to
-the requirements of the Motif Drawing area.) Because Motif gets
-confused by having multiple visuals in one top level shell,
-\fBXmNhighlightOnEnter\fP has been disabled, and
-\fBXmNhighlightThickness\fP has been set to 0.
-.SS "Callback Information"
-A pointer to the following structure is passed to each callback:
-.sp 1
-.ne 6
-.nf
-.ta .25i 1.3i
-\fBtypedef struct\fP
-{
- \fBint\fP \fIreason\fP;
- \fBXEvent\fP \fI*event\fP;
- \fBDimension\fP \fIwidth, height\fP;
-} \fBGLwDrawingAreaCallbackStruct\fP;
-.fi
-.sp 1
-.IP "\fIreason\fP" .75i
-Indicates why the callback was invoked. Appropriate values are
-stated in the above resource descriptions. For Motif programmers, the
-values \fBGLwCR_EXPOSE\fP, \fBGLwCR_RESIZE\fP, and \fBGLwCR_INPUT\fP
-are equal to \fBXmCR_EXPOSE\fP, \fBXmCR_RESIZE\fP, and
-\fBXmCR_INPUT\fP respectively. \fBGLwCR_GINIT\fP does not have a
-Motif equivalent.
-.IP "\fIevent\fP" .75i
-Points to the \fBXEvent\fP that triggered the callback.
-This is NULL for \fBGLwNginitCallback and \fBGLwNresizeCallback\fP.
-.IP "\fIwidth\fP and \fIheight\fP" .75i
-Are set to the width and height of the window.
-.br
-.ne 10
-.sp 1 \"Adds space before the SS
-.SS "Translations"
-GLwDrawingArea has the translations listed below.
-\fB
-.nf
-.ta 1.5i
-.ne 5
-<KeyDown>: glwInput()
-<KeyUp>: glwInput()
-<BtnDown>: glwInput()
-<BtnUp>: glwInput()
-<BtnMotion>: glwInput()
-.fi
-.PP
-GLwMDrawingArea has the following additional translation:
-\fB
-.nf
-.ta 1.5i
-<Key>osfHelp: PrimitiveHelp()
-.fi
-.PP
-An application wishing to catch other events than these defaults can
-do so by installing a different translation table.
-\fP
-.sp 1 \"Adds space before the SS
-.SS "Action Routines"
-The GLwDrawingArea has the following action routine:
-.IP "\fBglwInput()\fP:"
-Called whenever one of the above translations specifies that input has
-occurred. Its sole purpose is to call the input callback.
-.sp 1
-.SH INITIALIZATION
-.PP
-When the widget is initially created (e.g. through
-\fBXtCreateWidget(3X)\fP) the associated window is not actually
-created. Instead, window creation is delayed until the widget is
-realized. However, \fBglXchooseVisual\fP is called immediately, so
-information based on its results is available.
-.PP
-Between the time the widget is created and it is realized,
-the following apply:
-.TP
-\(bu
-No OpenGL operations can be done to the window
-.TP
-\(bu
-No resize callbacks are generated.
-.TP
-\(bu
-The normal window is available (XtWindow returns NULL).
-.TP
-\(bu
-\fBGLwDrawingAreaMakeCurrent\fP (and \fBglXMakeCurrent\fP) should not
-be called.
-.PP
-When the widget is realized, the following actions take place:
-.PP
-.TP
-\(bu
-The window is created.
-.TP
-\(bu
-The \fBginit\fP callback is called. The user may use this callback to
-perform any needed OpenGL initialization to the window.
-.sp 1
-.SH NOTES
-.PP
-When using the input callback to receive keyboard input, the keycode
-in the event must be converted to a KeySym. Use
-\fBXLookupKeysym(3X)\fP or \fBXLookupString(3X)\fP to do the
-conversion. Keyboard input can also be dealt using translations, in
-which case no such conversion is required.
-.PP
-Motif programmers should keep in mind that OSF uses virtual
-bindings and replaces some of the key bindings. As a common example,
-if the ESC key is to be used to exit the program (as it often is in GL
-programs), the translation should specify <key>osfCancel instead of
-<key>Escape.
-.PP
-Motif programmers may also create a GLwMDrawingArea widget with the Motif
-style \fBGLwCreateMDrawingArea\fP.
-.sp 1
-.ne 10
-.SH EXAMPLE
-Here are some code fragments that create a GLwDrawingArea widget, and manage
-the appropriate callbacks.
-.sp
-.nf
-\f(CW
- #include <stdlib.h>
- #include <X11/GLw/GLwDrawA.h>
- static GLXContext glx_context; /* assume only one context */
- . . .
-
- main()
- {
- Arg args[10];
- int n;
-
- Widget parent; /* The parent of the gl widget */
- Widget glw; /* The GLwDrawingArea widget */
- . . .
-
- /* Create the widget using RGB mode. This can also be set
- * in an X Defaults file
- */
- n = 0;
- XtSetArg(args[n], GLwNrgba, True); n++;
- glw = XtCreateManagedWidget("glw", glwDrawingAreaWidgetClass,
- parent, args, n);
- XtAddCallback(glw, GLwNexposeCallback, exposeCB, NULL);
- XtAddCallback(glw, GLwNresizeCallback, resizeCB, NULL);
- XtAddCallback(glw, GLwNginitCallback, ginitCB, NULL);
- /* Also add input callback if needed */
- . . .
- }
-
- static void
- exposeCB(Widget w, XtPointer client_data,
- GLwDrawingAreaCallbackStruct *call_data)
- {
- GLwDrawingAreaMakeCurrent(w, glx_context);
- /* redraw the display */
- }
-
- static void
- resizeCB(Widget w, XtPointer client_data,
- GLwDrawingAreaCallbackStruct *call_data)
- {
- GLwDrawingAreaMakeCurrent(w, glx_context);
- /* perform any resize actions */
- }
-
- static void
- ginitCB(Widget w, XtPointer client_data,
- GLwDrawingAreaCallbackStruct *call_data)
- {
- Arg args[1];
- XVisualInfo *vi;
-
- XtSetArg(args[0], GLwNvisualInfo, &vi);
- XtGetValues(w, args, 1);
-
- /* create a visual context */
- glx_context = glXCreateContext(XtDisplay(w), vi,
- NULL, GL_FALSE);
- GLwDrawingAreaMakeCurrent(w, glx_context);
- /* Perform any necessary graphics initialization.*/
- }
-\fP
-.fi
-.P
-The Motif program need only differ by including
-\fBGLwMDrawingArea.h\fP instead of \fBGLwDrawingArea.h\fP and by creating a widget of type
-\fBGLwMDrawingAreaWidgetClass\fP instead of \fBGLwDrawingAreaWidgetClass\fP. As an
-alternative, the Motif program could use \fBGLwCreateMDraw(3X)\fP instead.
-.sp 1
-.SH WARNINGS
-.PP
-If a GLwDrawingArea widget is created as a child of an already realized
-widget, the GLwDrawingArea widget will be created immediately, without giving
-the user an opportunity to add the \fBginit\fP callback. In such a
-case, initialization should be done immediately after creating the
-widget rather than by using the callback.
-.PP
-If the non-Motif GLwDrawingArea widget is used in a Motif program and
-keyboard traversal is attempted, the behavior is undefined if the user
-traverses into the GLwDrawingArea widget.
-.SH SEE ALSO
-\fBglXChooseVisual(3G)\fP, \fBGLwDrawingAreaMakeCurrent(3X)\fP,
-\fBglXMakeCurrent(3G)\fP, \fBGLwDrawingAreaSwapBuffers(3X)\fP
-\fBGLwCreateMDraw(3X)\fP, \fBCore(3X)\fP, \fBXmPrimitive(3X)\fP,
-\fBVirtualBindings(3X)\fP, \fBXSetWMColormapWindows(3X11)\fP
-and the OpenGL spec.