| 675 event.eventdatatype = 0; |
675 event.eventdatatype = 0; |
| 676 event.set = ui_get_setop(); |
676 event.set = ui_get_setop(); |
| 677 |
677 |
| 678 CxIterator iter = cxListIterator(group->callbacks); |
678 CxIterator iter = cxListIterator(group->callbacks); |
| 679 cx_foreach(UiCallbackData *, cb, iter) { |
679 cx_foreach(UiCallbackData *, cb, iter) { |
| 680 event.intval = intval == iter.index; |
680 event.intval = intval-1 == iter.index; |
| 681 if(cb->callback) { |
681 if(cb->callback) { |
| 682 cb->callback(&event, cb->userdata); |
682 cb->callback(&event, cb->userdata); |
| 683 } |
683 } |
| 684 } |
684 } |
| 685 |
685 |
| 799 cb.callback = i->callback; |
799 cb.callback = i->callback; |
| 800 cb.userdata = i->userdata; |
800 cb.userdata = i->userdata; |
| 801 cxListAdd(group->callbacks, &cb); |
801 cxListAdd(group->callbacks, &cb); |
| 802 |
802 |
| 803 |
803 |
| 804 cxmutstr action_name = cx_asprintf("win.%s::%d", i->varname, (int)item_index); |
804 cxmutstr action_name = cx_asprintf("win.%s::%d", i->varname, (int)item_index+1); |
| 805 g_menu_append(parent, i->label, action_name.ptr); |
805 g_menu_append(parent, i->label, action_name.ptr); |
| 806 free(action_name.ptr); |
806 free(action_name.ptr); |
| 807 } |
807 } |
| 808 |
808 |
| 809 static void menuitem_list_remove_binding(void *obj) { |
809 static void menuitem_list_remove_binding(void *obj) { |