| 118 return ui_add_headerbar_item(headerbar, box, (UiToolbarItem*)i, obj, pos); |
118 return ui_add_headerbar_item(headerbar, box, (UiToolbarItem*)i, obj, pos); |
| 119 } |
119 } |
| 120 case UI_TOOLBAR_TOGGLEITEM: { |
120 case UI_TOOLBAR_TOGGLEITEM: { |
| 121 return ui_add_headerbar_toggleitem(headerbar, box, (UiToolbarToggleItem*)i, obj, pos); |
121 return ui_add_headerbar_toggleitem(headerbar, box, (UiToolbarToggleItem*)i, obj, pos); |
| 122 } |
122 } |
| |
123 case UI_TOOLBAR_CONTENT_TOGGLEITEM: { |
| |
124 return ui_add_headerbar_content_toggleitem(headerbar, box, (UiToolbarContentToggleItem*)i, obj, pos); |
| |
125 } |
| 123 case UI_TOOLBAR_MENU: { |
126 case UI_TOOLBAR_MENU: { |
| 124 return ui_add_headerbar_menu(headerbar, box, (UiToolbarMenuItem*)i, obj, pos); |
127 return ui_add_headerbar_menu(headerbar, box, (UiToolbarMenuItem*)i, obj, pos); |
| 125 } |
128 } |
| 126 default: fprintf(stderr, "toolbar item type unimplemented: %d\n", (int)i->type); |
129 default: fprintf(stderr, "toolbar item type unimplemented: %d\n", (int)i->type); |
| 127 } |
130 } |
| 204 ui_setup_togglebutton(obj, button, item->args.label, item->args.icon, item->args.tooltip, item->args.varname, NULL, item->args.onchange, item->args.onchangedata, item->args.action, 0); |
207 ui_setup_togglebutton(obj, button, item->args.label, item->args.icon, item->args.tooltip, item->args.varname, NULL, item->args.onchange, item->args.onchangedata, item->args.action, 0); |
| 205 headerbar_add(headerbar, box, button, pos); |
208 headerbar_add(headerbar, box, button, pos); |
| 206 return button; |
209 return button; |
| 207 } |
210 } |
| 208 |
211 |
| |
212 GtkWidget* ui_add_headerbar_content_toggleitem( |
| |
213 GtkWidget *headerbar, |
| |
214 GtkWidget *box, |
| |
215 UiToolbarContentToggleItem *item, |
| |
216 UiObject *obj, |
| |
217 enum UiToolbarPos pos) |
| |
218 { |
| |
219 UiContentToggleArgs args = { 0 }; |
| |
220 args.label0 = item->args.label0; |
| |
221 args.icon0 = item->args.icon0; |
| |
222 args.tooltip0 = item->args.tooltip0; |
| |
223 args.label1 = item->args.label1; |
| |
224 args.icon1 = item->args.icon1; |
| |
225 args.tooltip1 = item->args.tooltip1; |
| |
226 args.varname = item->args.varname; |
| |
227 args.onchange = item->args.onchange; |
| |
228 args.onchangedata = item->args.onchangedata; |
| |
229 args.action = item->args.action; |
| |
230 args.istogglebutton = item->args.istogglebutton; |
| |
231 args.toggled_by_state = item->args.toggled_by_state; |
| |
232 |
| |
233 GtkWidget *button = ui_create_content_togglebutton(obj, &args); |
| |
234 WIDGET_ADD_CSS_CLASS(button, "flat"); |
| |
235 headerbar_add(headerbar, box, button, pos); |
| |
236 return button; |
| |
237 } |
| |
238 |
| 209 GtkWidget* ui_add_headerbar_menu( |
239 GtkWidget* ui_add_headerbar_menu( |
| 210 GtkWidget *headerbar, |
240 GtkWidget *headerbar, |
| 211 GtkWidget *box, |
241 GtkWidget *box, |
| 212 UiToolbarMenuItem *item, |
242 UiToolbarMenuItem *item, |
| 213 UiObject *obj, |
243 UiObject *obj, |