196N/A/*
303N/A * $XConsortium: SimpleMenP.h,v 1.14 94/04/17 20:12:44 kaleb Exp $
196N/A *
196N/ACopyright (c) 1989, 1994 X Consortium
196N/A
388N/APermission is hereby granted, free of charge, to any person obtaining a copy
196N/Aof this software and associated documentation files (the "Software"), to deal
196N/Ain the Software without restriction, including without limitation the rights
196N/Ato use, copy, modify, merge, publish, distribute, sublicense, and/or sell
196N/Acopies of the Software, and to permit persons to whom the Software is
196N/Afurnished to do so, subject to the following conditions:
196N/A
196N/AThe above copyright notice and this permission notice shall be included in
196N/Aall copies or substantial portions of the Software.
196N/A
196N/ATHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
196N/AIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
196N/AFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
196N/AX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
196N/AAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
196N/ACONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
196N/A
196N/AExcept as contained in this notice, the name of the X Consortium shall not be
196N/Aused in advertising or otherwise to promote the sale, use or other dealings
196N/Ain this Software without prior written authorization from the X Consortium.
196N/A *
196N/A */
196N/A
196N/A/*
196N/A * SimpleMenuP.h - Private Header file for SimpleMenu widget.
196N/A *
196N/A * Date: April 3, 1989
196N/A *
196N/A * By: Chris D. Peterson
196N/A * MIT X Consortium
196N/A * kit@expo.lcs.mit.edu
196N/A */
196N/A
196N/A#ifndef _SimpleMenuP_h
196N/A#define _SimpleMenuP_h
196N/A
196N/A#include <X11/Xaw/SimpleMenu.h>
196N/A#include <X11/Xaw/SmeP.h>
196N/A#include <X11/ShellP.h>
196N/A
196N/Atypedef struct {
196N/A XtPointer extension; /* For future needs. */
196N/A} SimpleMenuClassPart;
196N/A
196N/Atypedef struct _SimpleMenuClassRec {
196N/A CoreClassPart core_class;
196N/A CompositeClassPart composite_class;
196N/A ShellClassPart shell_class;
196N/A OverrideShellClassPart override_shell_class;
196N/A SimpleMenuClassPart simpleMenu_class;
196N/A} SimpleMenuClassRec;
196N/A
196N/Aextern SimpleMenuClassRec simpleMenuClassRec;
196N/A
196N/Atypedef struct _SimpleMenuPart {
196N/A
196N/A /* resources */
196N/A
196N/A String label_string; /* The string for the label or NULL. */
196N/A SmeObject label; /* If label_string is non-NULL then this is
196N/A the label widget. */
196N/A WidgetClass label_class; /* Widget Class of the menu label object. */
196N/A
196N/A Dimension top_margin; /* Top and bottom margins. */
196N/A Dimension bottom_margin;
196N/A Dimension row_height; /* height of each row (menu entry) */
196N/A
196N/A Cursor cursor; /* The menu's cursor. */
196N/A SmeObject popup_entry; /* The entry to position the cursor on for
196N/A when using XawPositionSimpleMenu. */
196N/A Boolean menu_on_screen; /* Force the menus to be fully on the screen.*/
196N/A int backing_store; /* What type of backing store to use. */
196N/A
196N/A /* private state */
196N/A
196N/A Boolean recursive_set_values; /* contain a possible infinite loop. */
196N/A
196N/A Boolean menu_width; /* If true then force width to remain
196N/A core.width */
196N/A Boolean menu_height; /* Just like menu_width, but for height. */
196N/A
196N/A SmeObject entry_set; /* The entry that is currently set or
196N/A highlighted. */
196N/A} SimpleMenuPart;
196N/A
196N/Atypedef struct _SimpleMenuRec {
196N/A CorePart core;
196N/A CompositePart composite;
196N/A ShellPart shell;
196N/A OverrideShellPart override;
196N/A SimpleMenuPart simple_menu;
196N/A} SimpleMenuRec;
196N/A
196N/A#endif /* _SimpleMenuP_h */
196N/A