ui/motif/menu.h

changeset 17
db95c0104937
parent 0
1f419bd32da1
child 21
012418e7dc90
--- a/ui/motif/menu.h	Tue Apr 01 11:53:10 2014 +0200
+++ b/ui/motif/menu.h	Tue Apr 01 13:47:29 2014 +0200
@@ -42,6 +42,9 @@
 typedef struct UiStMenuItem     UiStMenuItem;
 typedef struct UiCheckItem      UiCheckItem;
 typedef struct UiCheckItemNV    UiCheckItemNV;
+typedef struct UiMenuItemList   UiMenuItemList;
+
+typedef struct UiActiveMenuItemList UiActiveMenuItemList;
 
 typedef int(*ui_menu_add_f)(Widget, int, UiMenuItemI*, UiObject*);
     
@@ -83,6 +86,23 @@
     char           *varname;
 };
 
+struct UiMenuItemList {
+    UiMenuItemI    item;
+    ui_callback    callback;
+    void           *userdata;
+    UiList         *list;
+};
+
+struct UiActiveMenuItemList {
+    UiObject     *object;
+    Widget       menu;
+    int          index;
+    int          oldcount;
+    UiList       *list;
+    ui_callback  callback;
+    void         *userdata;
+};
+
 void ui_create_menubar(UiObject *obj);
 
 int add_menu_widget(Widget parent, int i, UiMenuItemI *item, UiObject *obj);
@@ -91,8 +111,9 @@
 int add_menuseparator_widget(Widget parent, int i, UiMenuItemI *item, UiObject *obj);
 int add_checkitem_widget(Widget parent, int i, UiMenuItemI *item, UiObject *obj);
 int add_checkitemnv_widget(Widget parent, int i, UiMenuItemI *item, UiObject *obj);
+int add_menuitem_list_widget(Widget parent, int i, UiMenuItemI *item, UiObject *obj);
 
-
+void ui_update_menuitem_list(UiEvent *event, UiActiveMenuItemList *list);
 void ui_menu_event_wrapper(Widget widget, XtPointer udata, XtPointer cdata);
 
 

mercurial