]> Pileus Git - ~andy/gtk/commitdiff
toolbutton: don't force the icon widget to be a GtkMisc
authorCosimo Cecchi <cosimoc@gnome.org>
Tue, 27 Sep 2011 21:06:59 +0000 (17:06 -0400)
committerCosimo Cecchi <cosimoc@gnome.org>
Tue, 27 Sep 2011 21:31:11 +0000 (17:31 -0400)
There's really no reason the icon widget must be a GtkMisc. You might
want to use e.g. a GtkSpinner.

gtk/gtktoolbutton.c
tests/testtoolbar.c

index 8ee5fdf0e371c8a1fa31a9342c6a4d38dc851cd8..934ca6132124209071d0b7d74459dabd44ad0ea7 100644 (file)
@@ -972,9 +972,9 @@ gtk_tool_button_new_from_stock (const gchar *stock_id)
 /**
  * gtk_tool_button_new:
  * @label: (allow-none): a string that will be used as label, or %NULL
- * @icon_widget: (allow-none): a #GtkMisc widget that will be used as icon widget, or %NULL
+ * @icon_widget: (allow-none): a widget that will be used as the button contents, or %NULL
  *
- * Creates a new %GtkToolButton using @icon_widget as icon and @label as
+ * Creates a new %GtkToolButton using @icon_widget as contents and @label as
  * label.
  *
  * Return value: A new #GtkToolButton
@@ -987,7 +987,7 @@ gtk_tool_button_new (GtkWidget       *icon_widget,
 {
   GtkToolButton *button;
 
-  g_return_val_if_fail (icon_widget == NULL || GTK_IS_MISC (icon_widget), NULL);
+  g_return_val_if_fail (icon_widget == NULL || GTK_IS_WIDGET (icon_widget), NULL);
 
   button = g_object_new (GTK_TYPE_TOOL_BUTTON,
                          "label", label,
index 16d847a853aa66fa38886c5f3358ad39f640c7b7..aafac3d9249d31d346529cfc01a306a66fdfa47b 100644 (file)
@@ -680,6 +680,12 @@ main (gint argc, gchar **argv)
   add_item_to_list (store, item, "Terminal");
   gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1);
 
+  image = gtk_spinner_new ();
+  gtk_spinner_start (GTK_SPINNER (image));
+  item = gtk_tool_button_new (image, "Spinner");
+  add_item_to_list (store, item, "Spinner");
+  gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1);
+
   hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5);
   gtk_container_set_border_width (GTK_CONTAINER (hbox), 5);
   gtk_container_add (GTK_CONTAINER (vbox), hbox);