337 } |
337 } |
338 |
338 |
339 void UiContextMenuHandler::contextMenuEvent(const QPoint & pos) { |
339 void UiContextMenuHandler::contextMenuEvent(const QPoint & pos) { |
340 menu->popup(widget->mapToGlobal(pos)); |
340 menu->popup(widget->mapToGlobal(pos)); |
341 } |
341 } |
342 |
342 UIMENU ui_contextmenu(UiObject *obj) { |
343 void ui_contextmenu(UiObject *obj) { |
|
344 UiContainer *ct = uic_get_current_container(obj); |
343 UiContainer *ct = uic_get_current_container(obj); |
345 ui_contextmenu_w(obj, ct->current); |
344 return ui_contextmenu_w(obj, ct->current); |
346 } |
345 } |
347 |
346 |
348 void ui_contextmenu_w(UiObject *obj, UIWIDGET widget) { |
347 UIMENU ui_contextmenu_w(UiObject *obj, UIWIDGET widget) { |
349 UiContainer *ct = uic_get_current_container(obj); |
348 UiContainer *ct = uic_get_current_container(obj); |
350 |
349 |
351 QMenu *menu = new QMenu(widget); |
350 QMenu *menu = new QMenu(widget); |
352 widget->setContextMenuPolicy(Qt::CustomContextMenu); |
351 widget->setContextMenuPolicy(Qt::CustomContextMenu); |
353 |
352 |
357 SIGNAL(customContextMenuRequested(QPoint)), |
356 SIGNAL(customContextMenuRequested(QPoint)), |
358 handler, |
357 handler, |
359 SLOT(contextMenuEvent(QPoint))); |
358 SLOT(contextMenuEvent(QPoint))); |
360 |
359 |
361 ct->menu = menu; |
360 ct->menu = menu; |
|
361 |
|
362 return menu; |
|
363 } |
|
364 |
|
365 void ui_contextmenu_popup(UIMENU menu) { |
|
366 |
362 } |
367 } |
363 |
368 |
364 void ui_widget_menuitem(UiObject *obj, char *label, ui_callback f, void *userdata) { |
369 void ui_widget_menuitem(UiObject *obj, char *label, ui_callback f, void *userdata) { |
365 ui_widget_menuitem_gr(obj, label, f, userdata, -1); |
370 ui_widget_menuitem_gr(obj, label, f, userdata, -1); |
366 } |
371 } |