Update of /cvsroot/htoolkit/port/src/cbits/GTK
In directory sc8-pr-cvs1:/tmp/cvs-serv17739/src/cbits/GTK
Modified Files:
ToolBar.c
Log Message:
ToolRadioButton for GNOME
Index: ToolBar.c
===================================================================
RCS file: /cvsroot/htoolkit/port/src/cbits/GTK/ToolBar.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** ToolBar.c 16 Aug 2003 07:59:42 -0000 1.4
--- ToolBar.c 16 Aug 2003 16:01:36 -0000 1.5
***************
*** 76,79 ****
--- 76,117 ----
}
+ static void tool_radio_button_clicked(GtkWidget *widget, gpointer user_data)
+ {
+ ToolHandle toolItem = (ToolHandle) user_data;
+
+ if (gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(toolItem)))
+ handleToolCommand(toolItem);
+ }
+
+ ToolHandle osInsertToolRadioButton(WindowHandle toolbar, int pos)
+ {
+ GtkToolItem *item = gtk_radio_tool_button_new(NULL);
+
+ gtk_signal_connect (GTK_OBJECT(GTK_TOOL_BUTTON(item)->button), "clicked",
+ GTK_SIGNAL_FUNC(tool_radio_button_clicked),
+ item);
+ gtk_signal_connect (GTK_OBJECT(item), "destroy",
+ GTK_SIGNAL_FUNC(handleToolDestroy),
+ NULL);
+ gtk_tool_button_set_label_widget(GTK_TOOL_BUTTON(item), gtk_label_new(""));
+ gtk_tool_button_set_icon_widget(GTK_TOOL_BUTTON(item), gtk_image_new());
+
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), item, pos);
+ gtk_widget_show_all(GTK_WIDGET(item));
+ return GTK_WIDGET(item);
+ }
+
+ void osSetToolRadioGroup(ToolHandle *handles)
+ {
+ ToolHandle *phandle;
+ GSList *group = NULL;
+
+ for (phandle = handles; *phandle; phandle++)
+ {
+ gtk_radio_tool_button_set_group(GTK_RADIO_TOOL_BUTTON(*phandle), group);
+ group = gtk_radio_tool_button_get_group(GTK_RADIO_TOOL_BUTTON(*phandle));
+ }
+ }
+
ToolHandle osInsertToolLine(WindowHandle toolbar, int pos)
{
|