Mercurial > emacs
changeset 7359:6ab8e21b9b7c
Initial revision
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 06 May 1994 17:28:42 +0000 |
parents | 06cc85ac10fb |
children | cfb65c58eb9a |
files | lwlib/xlwmenuP.h |
diffstat | 1 files changed, 91 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lwlib/xlwmenuP.h Fri May 06 17:28:42 1994 +0000 @@ -0,0 +1,91 @@ +#ifndef _XlwMenuP_h +#define _XlwMenuP_h + +#include "xlwmenu.h" +#include <X11/CoreP.h> + +/* Elements in the stack arrays. */ +typedef struct _window_state +{ + Window window; + Position x; + Position y; + Dimension width; + Dimension height; + Dimension label_width; +} window_state; + + +/* New fields for the XlwMenu widget instance record */ +typedef struct _XlwMenu_part +{ + /* slots set by the resources */ + XFontStruct* font; + int foreground; + Pixel button_foreground; + Dimension margin; + Dimension horizontal_spacing; + Dimension vertical_spacing; + Dimension arrow_spacing; + Dimension shadow_thickness; + Pixel top_shadow_color; + Pixel bottom_shadow_color; + Pixmap top_shadow_pixmap; + Pixmap bottom_shadow_pixmap; + int cursor_shape; + XtCallbackList open; + XtCallbackList select; + widget_value* contents; + int horizontal; + + /* State of the XlwMenu */ + int old_depth; + widget_value** old_stack; + int old_stack_length; + + /* New state after the user moved */ + int new_depth; + widget_value** new_stack; + int new_stack_length; + + /* Window resources */ + window_state* windows; + int windows_length; + + /* Internal part, set by the XlwMenu */ + GC foreground_gc; + GC button_gc; + GC background_gc; + GC inactive_gc; + GC inactive_button_gc; + GC shadow_top_gc; + GC shadow_bottom_gc; + Cursor cursor; + Boolean popped_up; + Pixmap gray_pixmap; +} XlwMenuPart; + +/* Full instance record declaration */ +typedef struct _XlwMenuRec +{ + CorePart core; + XlwMenuPart menu; +} XlwMenuRec; + +/* New fields for the XlwMenu widget class record */ +typedef struct +{ + int dummy; +} XlwMenuClassPart; + +/* Full class record declaration. */ +typedef struct _XlwMenuClassRec +{ + CoreClassPart core_class; + XlwMenuClassPart menu_class; +} XlwMenuClassRec; + +/* Class pointer. */ +extern XlwMenuClassRec xlwMenuClassRec; + +#endif /* _XlwMenuP_h */