Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:26:36

0001 /*
0002  *
0003 Copyright 1989, 1994, 1998  The Open Group
0004 
0005 Permission to use, copy, modify, distribute, and sell this software and its
0006 documentation for any purpose is hereby granted without fee, provided that
0007 the above copyright notice appear in all copies and that both that
0008 copyright notice and this permission notice appear in supporting
0009 documentation.
0010 
0011 The above copyright notice and this permission notice shall be included in
0012 all copies or substantial portions of the Software.
0013 
0014 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
0015 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
0016 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
0017 OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
0018 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
0019 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
0020 
0021 Except as contained in this notice, the name of The Open Group shall not be
0022 used in advertising or otherwise to promote the sale, use or other dealings
0023 in this Software without prior written authorization from The Open Group.
0024  *
0025  */
0026 
0027 /*
0028  * SimpleMenuP.h - Private Header file for SimpleMenu widget.
0029  *
0030  * Date:    April 3, 1989
0031  *
0032  * By:      Chris D. Peterson
0033  *          MIT X Consortium
0034  *          kit@expo.lcs.mit.edu
0035  */
0036 
0037 #ifndef _SimpleMenuP_h
0038 #define _SimpleMenuP_h
0039 
0040 #include <X11/Xaw/SimpleMenu.h>
0041 #include <X11/Xaw/SmeP.h>
0042 #include <X11/ShellP.h>
0043 #include <X11/Xaw/XawInit.h>
0044 
0045 typedef struct {
0046     XtPointer extension;        /* For future needs */
0047 } SimpleMenuClassPart;
0048 
0049 typedef struct _SimpleMenuClassRec {
0050     CoreClassPart       core_class;
0051     CompositeClassPart      composite_class;
0052     ShellClassPart      shell_class;
0053     OverrideShellClassPart  override_shell_class;
0054     SimpleMenuClassPart     simpleMenu_class;
0055 } SimpleMenuClassRec;
0056 
0057 extern SimpleMenuClassRec simpleMenuClassRec;
0058 
0059 typedef struct _SimpleMenuPart {
0060   /* resources */
0061     String  label_string;   /* The string for the label or NULL */
0062     SmeObject   label;      /* If label_string is non-NULL then this is
0063                    the label widget */
0064     WidgetClass label_class;    /* Widget Class of the menu label object */
0065     Dimension   top_margin; /* Top and bottom margins */
0066     Dimension   bottom_margin;
0067     Dimension   row_height; /* height of each row (menu entry) */
0068     Cursor  cursor;     /* The menu's cursor */
0069     SmeObject   popup_entry;    /* The entry to position the cursor on for
0070                    when using XawPositionSimpleMenu */
0071     Boolean menu_on_screen; /* Force the menus to be fully on the screen*/
0072     int     backing_store;  /* What type of backing store to use */
0073 
0074     /* private */
0075     Boolean recursive_set_values; /* contain a possible infinite loop */
0076     Boolean menu_width; /* If true then force width to remain
0077                    core.width */
0078     Boolean menu_height;    /* Just like menu_width, but for height */
0079     SmeObject   entry_set;  /* The entry that is currently set or
0080                    highlighted */
0081 #ifndef OLDXAW
0082     Dimension   left_margin;
0083     Dimension   right_margin;
0084     XawDisplayList *display_list;
0085     Widget  sub_menu;
0086     unsigned    char state;
0087     XtPointer pad[4];   /* for future use and keep binary compatibility */
0088 #endif
0089 } SimpleMenuPart;
0090 
0091 typedef struct _SimpleMenuRec {
0092     CorePart        core;
0093     CompositePart   composite;
0094     ShellPart       shell;
0095     OverrideShellPart   override;
0096     SimpleMenuPart  simple_menu;
0097 } SimpleMenuRec;
0098 
0099 #endif /* _SimpleMenuP_h */