ui/motif/menu.c

changeset 115
102fc0b8fe3e
parent 98
efaae97bd95b
child 153
ee49d1852a5f
--- a/ui/motif/menu.c	Sun Jan 24 22:20:47 2016 +0100
+++ b/ui/motif/menu.c	Mon Jan 25 16:36:31 2016 +0100
@@ -540,18 +540,28 @@
     *c = FALSE;
 }
 
-void ui_contextmenu(UiObject *obj) {
+UIMENU ui_contextmenu(UiObject *obj) {
     UiContainer *ct = uic_get_current_container(obj);
-    ui_contextmenu_w(obj, ct->current);
+    if(ct->current) {
+        return ui_contextmenu_w(obj, ct->current);
+    } else {
+        return NULL; // TODO: warn
+    }
 }
 
-void ui_contextmenu_w(UiObject *obj, UIWIDGET widget) {
+UIMENU ui_contextmenu_w(UiObject *obj, UIWIDGET widget) {
     UiContainer *ct = uic_get_current_container(obj);
     
-    Widget menu = XmCreatePopupMenu(ct->current, "popup_menu", NULL, 0);
+    Widget menu = XmCreatePopupMenu(widget, "popup_menu", NULL, 0);
     ct->menu = menu;
     
     XtAddEventHandler(widget, ButtonPressMask, FALSE, ui_popup_handler, menu);
+    
+    return menu;
+}
+
+void ui_contextmenu_popup(UIMENU menu) {
+    
 }
 
 void ui_widget_menuitem(UiObject *obj, char *label, ui_callback f, void *userdata) {

mercurial