GLUTCREATESUBWINDOW(3)           Local Manual           GLUTCREATESUBWINDOW(3)

NAME
     glutCreateSubWindow -- Create a subwindow

LIBRARY
     OpenGLUT - window

SYNOPSIS
     #include <openglut.h>

     int
     glutCreateSubWindow(int parentID, int x, int y, int w, int h);

PARAMETERS
      parentID    Parent window identifier

      x           Horizontal position of subwindow

      y           Vertical position of subwindow

      w           Width of subwindow

      h           Height of subwindow

DESCRIPTION
     In almost every regard that is important to you, a subwindow is like a
     top-level window.  It has a window id; it has its own set of event call-
     backs; you can render to it; you are notified of its creation; ...

     A subwindow lives inside of some other window (possibly a top-level win-
     dow, possibly another subwindow).  Because of this, it generally only
     interacts with other windows of your own creation, hence it is not sub-
     jected to a window manager.  This is the primary source for its differ-
     ences from a top-level window:

      - There are no borders or decorations.
      - There is no title bar, hence no title.
      - Requests tend to be acted on a little more directly, without interfer-
     ence from a window manager.
      - The subwindow inherits the display mode of its parent.

     Like a top-level window, you  must   register a display callback function
     if you wish to use glutMainloop().

     A notable case where this function can fail is for offscreen windows.  A
     coherent concept of a subwindow of an offscreen window would introduce
     more complication than is presently believed to be worthwhile.  Attempt-
     ing such a window presently just fails.  Failure is denoted by a 0  win-
     dow id   being returned.

     Subwindows can be very useful for partitioning a window into GUI ele-
     ments: They have their own input callbacks, so you don't have to figure
     out which window an event is for.  Graphics are clipped to the boundaries
     of your subwindows, so you do not need to worry much about where your
     drawing goes.  Because windows and subwindows work almost identically
     from the perspective of a GLUT program, it is relatively easy to move a
     cluster of related controls into a separate top-level window---or, con-
     versely, embed what was a top-level window inside of another window.
     OpenGLUT can also report some basic statistics about your (sub)window,
     relieving you of the duty of tracking all of that information for your-
     self.

SEE ALSO
     glutCreateWindow(3) glutDestroyWindow(3) glutCreateMenuWindow(3)


NetBSD 2.0                           Epoch                          NetBSD 2.0
