[Goodies-commits] r5134 - xfburn/trunk/xfburn
Jean-Francois Wauthy
pollux at xfce.org
Fri Jul 18 14:28:17 CEST 2008
Author: pollux
Date: 2008-07-18 12:28:17 +0000 (Fri, 18 Jul 2008)
New Revision: 5134
Modified:
xfburn/trunk/xfburn/xfburn-compositions-notebook.c
xfburn/trunk/xfburn/xfburn-device-list.c
xfburn/trunk/xfburn/xfburn-notebook-tab.c
xfburn/trunk/xfburn/xfburn-notebook-tab.h
Log:
add support for adding/showing close button of a composition tab
Modified: xfburn/trunk/xfburn/xfburn-compositions-notebook.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-compositions-notebook.c 2008-07-18 11:39:51 UTC (rev 5133)
+++ xfburn/trunk/xfburn/xfburn-compositions-notebook.c 2008-07-18 12:28:17 UTC (rev 5134)
@@ -180,7 +180,7 @@
guint page_num;
- tab = xfburn_notebook_tab_new (label_text);
+ tab = xfburn_notebook_tab_new (label_text, TRUE);
gtk_widget_show (tab);
menu_label = gtk_label_new (label_text);
Modified: xfburn/trunk/xfburn/xfburn-device-list.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-device-list.c 2008-07-18 11:39:51 UTC (rev 5133)
+++ xfburn/trunk/xfburn/xfburn-device-list.c 2008-07-18 12:28:17 UTC (rev 5134)
@@ -160,7 +160,7 @@
}
burn_drive_free_speedlist (&speed_list);
- device->supported_cdr_speeds g_warning ("no profile could be retrieved"); = g_slist_sort (device->supported_cdr_speeds, &cmp_ints);
+ device->supported_cdr_speeds = g_slist_sort (device->supported_cdr_speeds, &cmp_ints);
} else if (ret == 0 || speed_list == NULL) {
g_warning ("reported speed list is empty for device:");
g_warning (DEVICE_INFO_PRINTF);
Modified: xfburn/trunk/xfburn/xfburn-notebook-tab.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-notebook-tab.c 2008-07-18 11:39:51 UTC (rev 5133)
+++ xfburn/trunk/xfburn/xfburn-notebook-tab.c 2008-07-18 12:28:17 UTC (rev 5134)
@@ -37,6 +37,7 @@
enum {
PROP_0,
PROP_LABEL,
+ PROP_SHOW_BUTTON_CLOSE,
};
/* private members */
@@ -105,7 +106,10 @@
g_object_class_install_property (object_class, PROP_LABEL,
g_param_spec_string ("label", _("Label"), _("The text of the label"),
- NULL, G_PARAM_READWRITE));
+ NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));
+ g_object_class_install_property (object_class, PROP_SHOW_BUTTON_CLOSE,
+ g_param_spec_boolean ("show-button-close", _("Show close button"), _("Determine whether the close button is visible"),
+ TRUE, G_PARAM_READWRITE | G_PARAM_CONSTRUCT));
}
static void
@@ -137,13 +141,15 @@
XfburnNotebookTabPrivate *priv = XFBURN_NOTEBOOK_TAB_GET_PRIVATE (object);
switch (prop_id) {
- case PROP_LABEL:
- g_value_set_string (value, gtk_label_get_text (GTK_LABEL (priv->label)));
- break;
-
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
+ case PROP_LABEL:
+ g_value_set_string (value, gtk_label_get_text (GTK_LABEL (priv->label)));
+ break;
+ case PROP_SHOW_BUTTON_CLOSE:
+ g_object_get_property (G_OBJECT (priv->button_close), "visible", value);
+ break;
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
}
}
@@ -153,13 +159,19 @@
XfburnNotebookTabPrivate *priv = XFBURN_NOTEBOOK_TAB_GET_PRIVATE (object);
switch (prop_id) {
- case PROP_LABEL:
- gtk_label_set_text (GTK_LABEL (priv->label), g_value_get_string (value));
- break;
-
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
+ case PROP_LABEL:
+ gtk_label_set_text (GTK_LABEL (priv->label), g_value_get_string (value));
+ break;
+ case PROP_SHOW_BUTTON_CLOSE:
+ if (g_value_get_boolean (value))
+ gtk_widget_show (priv->button_close);
+ else
+ gtk_widget_hide (priv->button_close);
+
+ break;
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
}
}
@@ -176,11 +188,12 @@
/* public */
/**********/
GtkWidget *
-xfburn_notebook_tab_new (const gchar *label)
+xfburn_notebook_tab_new (const gchar *label, gboolean show_button_close)
{
GtkWidget *obj;
- obj = GTK_WIDGET (g_object_new (XFBURN_TYPE_NOTEBOOK_TAB, "homogeneous", FALSE, "label", label, NULL));
+ obj = GTK_WIDGET (g_object_new (XFBURN_TYPE_NOTEBOOK_TAB, "homogeneous", FALSE,
+ "label", label, "show-button-close", show_button_close, NULL));
return obj;
}
@@ -192,3 +205,19 @@
gtk_label_set_text (GTK_LABEL (priv->label), label);
}
+
+void
+xfburn_notebook_tab_show_button_close (XfburnNotebookTab *tab)
+{
+ XfburnNotebookTabPrivate *priv = XFBURN_NOTEBOOK_TAB_GET_PRIVATE (tab);
+
+ gtk_widget_show (priv->button_close);
+}
+
+void
+xfburn_notebook_tab_show_button_hide (XfburnNotebookTab *tab)
+{
+ XfburnNotebookTabPrivate *priv = XFBURN_NOTEBOOK_TAB_GET_PRIVATE (tab);
+
+ gtk_widget_hide (priv->button_close);
+}
Modified: xfburn/trunk/xfburn/xfburn-notebook-tab.h
===================================================================
--- xfburn/trunk/xfburn/xfburn-notebook-tab.h 2008-07-18 11:39:51 UTC (rev 5133)
+++ xfburn/trunk/xfburn/xfburn-notebook-tab.h 2008-07-18 12:28:17 UTC (rev 5134)
@@ -45,9 +45,12 @@
GtkType xfburn_notebook_tab_get_type ();
-GtkWidget *xfburn_notebook_tab_new (const gchar *label);
+GtkWidget *xfburn_notebook_tab_new (const gchar *label, gboolean show_button_close);
void xfburn_notebook_tab_set_label (XfburnNotebookTab *tab, const gchar *label);
+void xfburn_notebook_tab_show_button_close (XfburnNotebookTab *tab);
+void xfburn_notebook_tab_show_button_hide (XfburnNotebookTab *tab);
+
G_END_DECLS
#endif /* XFBURN_NOTEBOOK_TAB_H */
More information about the Goodies-commits
mailing list