ui/gtk/toolbar.h

changeset 167
161511838ea6
parent 157
0b33b9396851
child 174
0358f1d9c506
--- a/ui/gtk/toolbar.h	Tue Dec 08 15:19:31 2020 +0100
+++ b/ui/gtk/toolbar.h	Thu Dec 10 13:42:25 2020 +0100
@@ -40,9 +40,10 @@
 extern "C" {
 #endif
 
-typedef struct UiToolItemI    UiToolItemI;
-typedef struct UiToolItem     UiToolItem;
-typedef struct UiStToolItem   UiStToolItem;
+typedef struct UiToolItemI      UiToolItemI;
+typedef struct UiToolItem       UiToolItem;
+typedef struct UiStToolItem     UiStToolItem;
+typedef struct UiToggleToolItem UiToggleToolItem;
 
 typedef struct UiToolbarComboBox   UiToolbarComboBox;
 typedef struct UiToolbarComboBoxNV UiToolbarComboBoxNV;
@@ -55,19 +56,32 @@
 
 struct UiToolItem {
     UiToolItemI    item;
-    char           *label;
-    char           *image;
+    const char     *label;
+    const char     *image;
     ui_callback    callback;
     void           *userdata;
+    const char     *varname;
     UcxList        *groups;
     int            isimportant;
 };
 
 struct UiStToolItem {
     UiToolItemI    item;
-    char           *stockid;
+    const char     *stockid;
     ui_callback    callback;
     void           *userdata;
+    const char     *varname;
+    UcxList        *groups;
+    int            isimportant;
+};
+
+struct UiToggleToolItem {
+    UiToolItemI    item;
+    const char     *label;
+    const char     *image;
+    const char     *stockid;
+    UiInteger      *value;
+    const char     *var;
     UcxList        *groups;
     int            isimportant;
 };
@@ -102,14 +116,17 @@
 
 void add_toolitem_widget(GtkToolbar *tb, UiToolItem *item, UiObject *obj);
 void add_toolitem_st_widget(GtkToolbar *tb, UiStToolItem *item, UiObject *obj);
-void add_toolitem_toggle_widget(GtkToolbar *tb, UiToolItem *item, UiObject *obj);
-void add_toolitem_toggle_st_widget(GtkToolbar *tb, UiStToolItem *item, UiObject *obj);
+void add_toolitem_toggle_widget(GtkToolbar *tb, UiToggleToolItem *item, UiObject *obj);
 
 void add_toolbar_combobox(GtkToolbar *tb, UiToolbarComboBox *cb, UiObject *obj);
 void add_toolbar_combobox_nv(GtkToolbar *tb, UiToolbarComboBoxNV *cb, UiObject *obj);
 void ui_combobox_change_event(GtkComboBox *widget, UiEventData *e);
 void ui_combobox_update(UiEvent *event, void *combobox);
 
+void ui_tool_button_toggled(GtkToggleToolButton *widget, UiEventData *event);
+int64_t ui_tool_toggle_button_get(UiInteger *integer);
+void ui_tool_toggle_button_set(UiInteger *integer, int64_t value);
+
 #ifdef	__cplusplus
 }
 #endif

mercurial