Commit 41469960 authored by Victor Ananjevsky's avatar Victor Ananjevsky

implement yad stock items. remove some deprecations

parent b626f0db
...@@ -420,6 +420,7 @@ create_dialog (void) ...@@ -420,6 +420,7 @@ create_dialog (void)
GtkWidget *btn; GtkWidget *btn;
/* create buttons container */ /* create buttons container */
GtkWidget *bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); GtkWidget *bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL);
gtk_box_set_homogeneous (GTK_BOX (bbox), TRUE);
gtk_container_set_border_width (GTK_CONTAINER (bbox), 2); gtk_container_set_border_width (GTK_CONTAINER (bbox), 2);
gtk_box_set_spacing (GTK_BOX (bbox), 5); gtk_box_set_spacing (GTK_BOX (bbox), 5);
gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), options.data.buttons_layout); gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), options.data.buttons_layout);
...@@ -434,11 +435,11 @@ create_dialog (void) ...@@ -434,11 +435,11 @@ create_dialog (void)
btn = gtk_button_new (); btn = gtk_button_new ();
gtk_container_add (GTK_CONTAINER (btn), get_label (b->name, 2)); gtk_container_add (GTK_CONTAINER (btn), get_label (b->name, 2));
gtk_widget_set_halign (btn, 0.5); //gtk_widget_set_halign (btn, GTK_ALIGN_FILL);
gtk_widget_set_valign (btn, 0.5); //gtk_widget_set_valign (btn, GTK_ALIGN_FILL);
g_object_set_data (G_OBJECT (btn), "resp", GINT_TO_POINTER (b->response)); g_object_set_data (G_OBJECT (btn), "resp", GINT_TO_POINTER (b->response));
g_signal_connect (G_OBJECT (btn), "clicked", G_CALLBACK (btn_cb), b->cmd); g_signal_connect (G_OBJECT (btn), "clicked", G_CALLBACK (btn_cb), b->cmd);
gtk_box_pack_start (GTK_BOX (bbox), btn, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (bbox), btn, TRUE, TRUE, 0);
tmp = tmp->next; tmp = tmp->next;
} }
...@@ -450,25 +451,34 @@ create_dialog (void) ...@@ -450,25 +451,34 @@ create_dialog (void)
options.mode == YAD_MODE_DND || options.mode == YAD_MODE_PICTURE) options.mode == YAD_MODE_DND || options.mode == YAD_MODE_PICTURE)
{ {
/* add close button */ /* add close button */
btn = gtk_button_new_from_stock (GTK_STOCK_CLOSE); btn = gtk_button_new ();
gtk_container_add (GTK_CONTAINER (btn), get_label ("yad-close", 2));
//gtk_widget_set_halign (btn, GTK_ALIGN_FILL);
//gtk_widget_set_valign (btn, GTK_ALIGN_FILL);
g_object_set_data (G_OBJECT (btn), "resp", GINT_TO_POINTER (YAD_RESPONSE_OK)); g_object_set_data (G_OBJECT (btn), "resp", GINT_TO_POINTER (YAD_RESPONSE_OK));
g_signal_connect (G_OBJECT (btn), "clicked", G_CALLBACK (btn_cb), NULL); g_signal_connect (G_OBJECT (btn), "clicked", G_CALLBACK (btn_cb), NULL);
gtk_box_pack_start (GTK_BOX (bbox), btn, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (bbox), btn, TRUE, TRUE, 0);
} }
else else
{ {
/* add cancel button */ /* add cancel button */
btn = gtk_button_new_from_stock (GTK_STOCK_CANCEL); btn = gtk_button_new ();
gtk_container_add (GTK_CONTAINER (btn), get_label ("yad-cancel", 2));
//gtk_widget_set_halign (btn, GTK_ALIGN_FILL);
//gtk_widget_set_valign (btn, GTK_ALIGN_FILL);
g_object_set_data (G_OBJECT (btn), "resp", GINT_TO_POINTER (YAD_RESPONSE_CANCEL)); g_object_set_data (G_OBJECT (btn), "resp", GINT_TO_POINTER (YAD_RESPONSE_CANCEL));
g_signal_connect (G_OBJECT (btn), "clicked", G_CALLBACK (btn_cb), NULL); g_signal_connect (G_OBJECT (btn), "clicked", G_CALLBACK (btn_cb), NULL);
gtk_box_pack_start (GTK_BOX (bbox), btn, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (bbox), btn, TRUE, TRUE, 0);
/*add ok button */ /*add ok button */
btn = gtk_button_new_from_stock (GTK_STOCK_OK); btn = gtk_button_new ();
gtk_container_add (GTK_CONTAINER (btn), get_label ("yad-ok", 2));
//gtk_widget_set_halign (btn, GTK_ALIGN_FILL);
//gtk_widget_set_valign (btn, GTK_ALIGN_FILL);
g_object_set_data (G_OBJECT (btn), "resp", GINT_TO_POINTER (YAD_RESPONSE_OK)); g_object_set_data (G_OBJECT (btn), "resp", GINT_TO_POINTER (YAD_RESPONSE_OK));
g_signal_connect (G_OBJECT (btn), "clicked", G_CALLBACK (btn_cb), NULL); g_signal_connect (G_OBJECT (btn), "clicked", G_CALLBACK (btn_cb), NULL);
gtk_box_pack_start (GTK_BOX (bbox), btn, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (bbox), btn, TRUE, TRUE, 0);
} }
} }
/* add buttons box to main window */ /* add buttons box to main window */
......
...@@ -29,7 +29,7 @@ typedef struct { ...@@ -29,7 +29,7 @@ typedef struct {
gchar *icon; gchar *icon;
} YadStock; } YadStock;
YadStock yad_stock_items[] = { const YadStock yad_stock_items[] = {
{ "yad-about", N_("About"), "help-about" }, { "yad-about", N_("About"), "help-about" },
{ "yad-add", N_("Add"), "list-add" }, { "yad-add", N_("Add"), "list-add" },
{ "yad-apply", N_("Apply"), "gtk-apply" }, { "yad-apply", N_("Apply"), "gtk-apply" },
......
...@@ -154,7 +154,25 @@ write_settings (void) ...@@ -154,7 +154,25 @@ write_settings (void)
static gboolean static gboolean
stock_lookup (gchar *key, YadStock *it) stock_lookup (gchar *key, YadStock *it)
{ {
gint i;
gboolean found = FALSE;
if (key == NULL || strncmp (key, "yad-", 4) != 0)
return FALSE; return FALSE;
for (i = 0; i < YAD_STOCK_COUNT; i++)
{
if (strcmp (key, yad_stock_items[i].key) == 0)
{
it->key = yad_stock_items[i].key;
it->label = yad_stock_items[i].label;
it->icon = yad_stock_items[i].icon;
found = TRUE;
break;
}
}
return found;
} }
GdkPixbuf * GdkPixbuf *
...@@ -363,7 +381,7 @@ get_tabs (key_t key, gboolean create) ...@@ -363,7 +381,7 @@ get_tabs (key_t key, gboolean create)
} }
GtkWidget * GtkWidget *
get_label (gchar * str, guint border) get_label (gchar *str, guint border)
{ {
GtkWidget *t, *i, *l; GtkWidget *t, *i, *l;
YadStock it; YadStock it;
...@@ -377,6 +395,9 @@ get_label (gchar * str, guint border) ...@@ -377,6 +395,9 @@ get_label (gchar * str, guint border)
t = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); t = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (t), border); gtk_container_set_border_width (GTK_CONTAINER (t), border);
gtk_widget_set_halign (t, GTK_ALIGN_CENTER);
gtk_widget_set_valign (t, GTK_ALIGN_CENTER);
vals = g_strsplit_set (str, options.common_data.item_separator, 3); vals = g_strsplit_set (str, options.common_data.item_separator, 3);
if (stock_lookup (vals[0], &it)) if (stock_lookup (vals[0], &it))
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment