2 * CDE - Common Desktop Environment
4 * Copyright (c) 1993-2012, The Open Group. All rights reserved.
6 * These libraries and programs are free software; you can
7 * redistribute them and/or modify them under the terms of the GNU
8 * Lesser General Public License as published by the Free Software
9 * Foundation; either version 2 of the License, or (at your option)
12 * These libraries and programs are distributed in the hope that
13 * they will be useful, but WITHOUT ANY WARRANTY; without even the
14 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 * PURPOSE. See the GNU Lesser General Public License for more
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with these librararies and programs; if not, write
20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21 * Floor, Boston, MA 02110-1301 USA
23 /* $XConsortium: MenuButtonP.h /main/3 1995/10/26 09:33:17 rswiston $ */
25 * Copyright (C) 1986,1991 Sun Microsystems, Inc
26 * All rights reserved.
27 * Notice of copyright on this source code
28 * product does not indicate publication.
30 * RESTRICTED RIGHTS LEGEND: Use, duplication, or disclosure by
31 * the U.S. Government is subject to restrictions as set forth
32 * in subparagraph (c)(1)(ii) of the Rights in Technical Data
33 * and Computer Software Clause at DFARS 252.227-7013 (Oct. 1988)
34 * and FAR 52.227-19 (c) (June 1987).
36 * Sun Microsystems, Inc., 2550 Garcia Avenue,
37 * Mountain View, California 94043.
41 #ifndef _DtMenuButtonP_h
42 #define _DtMenuButtonP_h
44 #include "MenuButton.h"
45 #include <Xm/LabelP.h>
51 /****************************************************************
55 ****************************************************************/
57 #define MB_POST DTWIDGET_GETMESSAGE( \
58 MS_MenuButton, MENU_POST, _DtMsgMenuButton_0000)
60 #define MB_PARENT DTWIDGET_GETMESSAGE( \
61 MS_MenuButton, MENU_PARENT, _DtMsgMenuButton_0001)
63 #define MB_SUBMENU DTWIDGET_GETMESSAGE( \
64 MS_MenuButton, MENU_SUBMENU, _DtMsgMenuButton_0002)
67 /* The MenuButton instance record */
71 XtCallbackList cascading_callback; /* Cascading callback */
72 Widget submenu; /* the menu to pull down */
73 Pixmap menu_pixmap; /* pixmap for the menu */
77 Boolean armed; /* armed flag */
78 Boolean popped_up; /* submenu popped up flag*/
79 XRectangle menu_rect; /* location of menu*/
80 Time last_timestamp; /* last time submenu popped down */
81 Boolean private_submenu;
86 /* Full instance record declaration */
88 typedef struct _DtMenuButtonRec
91 XmPrimitivePart primitive;
93 DtMenuButtonPart menu_button;
97 /* MenuButton class structure */
100 XtPointer extension; /* Pointer to extension record */
101 } DtMenuButtonClassPart;
104 /* Full class record declaration for MenuButton class */
106 typedef struct _DtMenuButtonClassRec {
107 CoreClassPart core_class;
108 XmPrimitiveClassPart primitive_class;
109 XmLabelClassPart label_class;
110 DtMenuButtonClassPart menu_button_class;
111 } DtMenuButtonClassRec;
114 extern DtMenuButtonClassRec dtMenuButtonClassRec;
118 } /* Close scope of 'extern "C"' declaration which encloses file. */
121 #endif /* _DtMenuButtonP_h */
122 /* DON'T ADD STUFF AFTER THIS #endif */