9 #if GTK_MAJOR_VERSION == 2
13 girara_statusbar_item_t*
18 girara_statusbar_item_t* item = g_slice_new(girara_statusbar_item_t);
20 item->box = gtk_event_box_new();
21 item->text = GTK_LABEL(gtk_label_new(NULL));
24 gtk_widget_override_background_color(GTK_WIDGET(item->box), GTK_STATE_NORMAL, &(session->style.statusbar_background));
25 gtk_widget_override_color(GTK_WIDGET(item->box), GTK_STATE_NORMAL, &(session->style.statusbar_foreground));
26 gtk_widget_override_background_color(GTK_WIDGET(item->text), GTK_STATE_NORMAL, &(session->style.statusbar_background));
27 gtk_widget_override_color(GTK_WIDGET(item->text), GTK_STATE_NORMAL, &(session->style.statusbar_foreground));
29 gtk_widget_override_font(GTK_WIDGET(item->text), session->style.font);
32 gtk_misc_set_alignment(GTK_MISC(item->text), left ? 0.0 : 1.0, 0.5);
33 gtk_label_set_use_markup(item->text, TRUE);
35 #if (GTK_MAJOR_VERSION == 3)
37 gtk_widget_set_name(GTK_WIDGET(item->text),
"bottom_box");
45 gtk_misc_set_padding(GTK_MISC(item->text), xpadding/2, ypadding/2);
48 if (callback != NULL) {
49 g_signal_connect(G_OBJECT(item->box),
"button-press-event", G_CALLBACK(callback), session);
53 gtk_container_add(GTK_CONTAINER(item->box), GTK_WIDGET(item->text));
54 gtk_box_pack_start(session->gtk.statusbar_entries, GTK_WIDGET(item->box), expand, fill, 2);
55 gtk_widget_show_all(GTK_WIDGET(item->box));
64 g_slice_free(girara_statusbar_item_t, item);
73 char* escaped_text = g_markup_escape_text(text, -1);
74 gtk_label_set_markup((GtkLabel*) item->text, escaped_text);
86 #if (GTK_MAJOR_VERSION == 3)
88 gdk_rgba_parse(&gdk_color, color);
89 gtk_widget_override_color(GTK_WIDGET(session->gtk.inputbar_entry),
90 GTK_STATE_NORMAL, &(session->style.inputbar_foreground));
93 gdk_color_parse(color, &gdk_color);
94 gtk_widget_modify_fg(GTK_WIDGET(item->text), GTK_STATE_NORMAL, &gdk_color);
106 gdk_rgba_parse(&gdk_color, color);
107 gtk_widget_override_background_color(GTK_WIDGET(session->gtk.statusbar), GTK_STATE_NORMAL, &gdk_color);
bool(* girara_statusbar_event_t)(GtkWidget *widget, GdkEvent *event, girara_session_t *session)
bool girara_statusbar_item_set_text(girara_session_t *session, girara_statusbar_item_t *item, const char *text)
girara_session_t * session
HIDDEN void girara_statusbar_item_free(girara_statusbar_item_t *statusbaritem)
bool girara_statusbar_item_set_foreground(girara_session_t *session, girara_statusbar_item_t *item, const char *color)
bool girara_statusbar_set_background(girara_session_t *session, const char *color)
bool girara_setting_get(girara_session_t *session, const char *name, void *dest)
void girara_list_prepend(girara_list_t *list, void *data)
girara_statusbar_item_t * girara_statusbar_item_add(girara_session_t *session, bool expand, bool fill, bool left, girara_statusbar_event_t callback)
g_return_val_if_fail(button!=NULL, false)