UNTITLED LOCAL UNTITLED
NAME
glutCreateWindow -- Create a new top-level window
LIBRARY
OpenGLUT - window
SYNOPSIS
#include <openglut.h>
int
glutCreateWindow(const char* title);
PARAMETERS
title Title for created window
DESCRIPTION
This function sends a request for a window to be constructed. OpenGLUT immediately constructs a data structure to track further events with
the window, on the theory that eventually the window manager will get back to us with a real window. This allows us to begin registering
callbacks immediately.
In fact, you must register a display callback via glutDisplayFunc() before you enter glutMainLoop().
For onscreen windows, you should not depend upon the window concretely existing or being visibile until you are told that it exists and is
visible via a registered callback.
The return value is an int. It should be positive for valid windows or 0 if failure occurred for some reason (Though traditional GLUT
tends to bail out and abort rather than returning errors.) The integer is your window id . Old GLUT promises that these integers are
``small''; we do not reuse old id s, but do produce them sequentially.
You can change the title later via glutSetWindowTitle().
SEE ALSO glutDestroyWindow(3)glutCreateSubWindow(3)glutSetWindowTitle(3)glutCreateMenuWindow(3)
Epoch
Check Out this Related Man Page
UNTITLED LOCAL UNTITLED
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
callbacks; you can render to it; you are notified of its creation; ...
A subwindow lives inside of some other window (possibly a top-level window, possibly another subwindow). Because of this, it generally only
interacts with other windows of your own creation, hence it is not subjected 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 interference 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 intro-
duce more complication than is presently believed to be worthwhile. Attempting such a window presently just fails. Failure is denoted by a
0 window id being returned.
Subwindows can be very useful for partitioning a window into GUI elements: 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, conversely, 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 yourself.
SEE ALSO glutCreateWindow(3)glutDestroyWindow(3)glutCreateMenuWindow(3)
Epoch