ui/gtk/headerbar.c

changeset 1206
4637da12bc6c
parent 1194
91696f7fa475
equal deleted inserted replaced
1205:749a32e91513 1206:4637da12bc6c
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,

mercurial