7 #if GTK_MAJOR_VERSION == 2
20 girara_statusbar_item_t*
23 g_return_val_if_fail(session != NULL && session->elements.statusbar_items, FALSE);
25 girara_statusbar_item_t* item = g_slice_new(girara_statusbar_item_t);
27 item->box = gtk_event_box_new();
28 item->text = GTK_LABEL(gtk_label_new(NULL));
31 gtk_widget_override_background_color(GTK_WIDGET(item->box), GTK_STATE_NORMAL, &(session->style.statusbar_background));
32 gtk_widget_override_color(GTK_WIDGET(item->text), GTK_STATE_NORMAL, &(session->style.statusbar_foreground));
33 gtk_widget_override_font(GTK_WIDGET(item->text), session->style.font);
36 gtk_misc_set_alignment(GTK_MISC(item->text), left ? 0.0 : 1.0, 0.0);
37 gtk_misc_set_padding(GTK_MISC(item->text), 2, 4);
38 gtk_label_set_use_markup(item->text, TRUE);
40 if (callback != NULL) {
41 g_signal_connect(G_OBJECT(item->box),
"button-press-event", G_CALLBACK(callback), session);
45 gtk_container_add(GTK_CONTAINER(item->box), GTK_WIDGET(item->text));
46 gtk_box_pack_start(session->gtk.statusbar_entries, GTK_WIDGET(item->box), expand, fill, 2);
47 gtk_widget_show_all(GTK_WIDGET(item->box));
56 g_slice_free(girara_statusbar_item_t, item);
62 g_return_val_if_fail(session != NULL,
false);
63 g_return_val_if_fail(item != NULL,
false);
65 char* escaped_text = g_markup_escape_text(text, -1);
66 gtk_label_set_markup((GtkLabel*) item->text, escaped_text);
75 g_return_val_if_fail(session != NULL,
false);
76 g_return_val_if_fail(item != NULL,
false);
79 gdk_color_parse(color, &gdk_color);
80 gtk_widget_modify_fg(GTK_WIDGET(item->text), GTK_STATE_NORMAL, &gdk_color);
88 g_return_val_if_fail(session != NULL,
false);
91 gdk_rgba_parse(&gdk_color, color);
92 gtk_widget_override_background_color(GTK_WIDGET(session->gtk.statusbar), GTK_STATE_NORMAL, &gdk_color);