Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

glutcreatemenu(3glut) [suse man page]

glutCreateMenu(3GLUT)						       GLUT						     glutCreateMenu(3GLUT)

NAME
glutCreateMenu - creates a new pop-up menu. SYNTAX
int glutCreateMenu(void (*func)(int value)); ARGUMENTS
func The callback function for the menu that is called when a menu entry from the menu is selected. The value passed to the callback is determined by the value for the selected menu entry. DESCRIPTION
glutCreateMenu creates a new pop-up menu and returns a unique small integer identifier. The range of allocated identifiers starts at one. The menu identifier range is separate from the window identifier range. Implicitly, the current menu is set to the newly created menu. This menu identifier can be used when calling glutSetMenu. When the menu callback is called because a menu entry is selected for the menu, the current menu will be implicitly set to the menu with the selected entry before the callback is made. EXAMPLE
Here is a quick example of how to create a GLUT popup menu with two submenus and attach it to the right button of the current window: int submenu1, submenu2; submenu1 = glutCreateMenu(selectMessage); glutAddMenuEntry("abc", 1); glutAddMenuEntry("ABC", 2); submenu2 = glutCreateMenu(selectColor); glutAddMenuEntry("Green", 1); glutAddMenuEntry("Red", 2); glutAddMenuEntry("White", 3); glutCreateMenu(selectFont); glutAddMenuEntry("9 by 15", 0); glutAddMenuEntry("Times Roman 10", 1); glutAddMenuEntry("Times Roman 24", 2); glutAddSubMenu("Messages", submenu1); glutAddSubMenu("Color", submenu2); glutAttachMenu(GLUT_RIGHT_BUTTON); X IMPLEMENTATION NOTES
If available, GLUT for X will take advantage of overlay planes for implementing pop-up menus. The use of overlay planes can eliminate dis- play callbacks when pop-up menus are deactivated. The SERVER_OVERLAY_VISUALS convention is used to determine if overlay visuals are avail- able. SEE ALSO
glutCreateWindow, glutDestroyMenu, glutSetMenu, glutAttachMenu AUTHOR
Mark J. Kilgard (mjk@nvidia.com) GLUT
3.7 glutCreateMenu(3GLUT)

Check Out this Related Man Page

glutDisplayFunc(3GLUT)						       GLUT						    glutDisplayFunc(3GLUT)

NAME
glutDisplayFunc - sets the display callback for the current window. SYNTAX
void glutDisplayFunc(void (*func)(void)); ARGUMENTS
func The new display callback function. DESCRIPTION
glutDisplayFunc sets the display callback for the current window. When GLUT determines that the normal plane for the window needs to be redisplayed, the display callback for the window is called. Before the callback, the current window is set to the window needing to be redisplayed and (if no overlay display callback is registered) the layer in use is set to the normal plane. The display callback is called with no parameters. The entire normal plane region should be redisplayed in response to the callback (this includes ancillary buffers if your program depends on their state). GLUT determines when the display callback should be triggered based on the window's redisplay state. The redisplay state for a window can be either set explicitly by calling glutPostRedisplay or implicitly as the result of window damage reported by the window system. Multiple posted redisplays for a window are coalesced by GLUT to minimize the number of display callbacks called. When an overlay is established for a window, but there is no overlay display callback registered, the display callback is used for redis- playing both the overlay and normal plane (that is, it will be called if either the redisplay state or overlay redisplay state is set). In this case, the layer in use is not implicitly changed on entry to the display callback. See glutOverlayDisplayFunc to understand how distinct callbacks for the overlay and normal plane of a window may be established. When a window is created, no display callback exists for the window. It is the responsibility of the programmer to install a display call- back for the window before the window is shown. A display callback must be registered for any window that is shown. If a window becomes displayed without a display callback being registered, a fatal error occurs. Passing NULL to glutDisplayFunc is illegal as of GLUT 3.0; there is no way to ``deregister'' a display callback (though another callback routine can always be registered). Upon return from the display callback, the normal damaged state of the window (returned by calling glutLayerGet(GLUT_NORMAL_DAMAGED) is cleared. If there is no overlay display callback registered the overlay damaged state of the window (returned by calling glutLayer- Get(GLUT_OVERLAY_DAMAGED) is also cleared. SEE ALSO
glutCreateMenu, glutPostRedisplay, glutOverlayDisplayFunc AUTHOR
Mark J. Kilgard (mjk@nvidia.com) GLUT
3.7 glutDisplayFunc(3GLUT)
Man Page