45
46
AffinityApp *app = frame->window->app;
46
GtkWidget *label_widget;
47
GtkWidget *hbox = GTK_FRAME(frame)->label_widget;
48
GtkWidget *label_widget = frame->label;
48
49
gchar *markup, *text_color;
50
label = gtk_frame_get_label(GTK_FRAME(frame));
52
label_widget = gtk_frame_get_label_widget(GTK_FRAME(frame));
54
51
if (label_widget && app)
56
53
//Get the text color
57
54
if (app->settings->gtk_colors)
59
56
markup = g_strdup_printf("<span size='larger' weight='bold'>%s</span>",
65
62
markup = g_strdup_printf("<span foreground='%s' size='larger' weight='bold'>%s</span>",
66
63
app->settings->text_color,
70
67
gtk_label_set_markup(GTK_LABEL(label_widget), markup);
68
gtk_widget_show_all(GTK_WIDGET(frame));
73
printf("not label widget or app\n");
74
74
gtk_widget_hide(label_widget);
78
79
on_notify(GObject *frame, GParamSpec *spec, gpointer null)
80
if (strcmp("label", g_param_spec_get_name(spec)) == 0)
81
if (strcmp("text", g_param_spec_get_name(spec)) == 0)
81
82
update_label(AFF_FRAME(frame));
99
100
return frame->block_drawing;
104
aff_frame_set_text(AffFrame *frame, gchar *text)
106
g_object_set((gpointer)frame, "text", text, NULL);
110
aff_frame_get_text(AffFrame *frame)
103
116
aff_frame_set_property(GObject *object, guint prop_id, const GValue *value,
104
117
GParamSpec *pspec)
125
142
g_value_set_boolean(value, AFF_FRAME(object)->block_drawing);
146
g_value_set_string(value, AFF_FRAME(object)->text);
129
150
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
148
169
"Whether or not to block the drawing of the frame.",
150
171
G_PARAM_CONSTRUCT | G_PARAM_READWRITE));
173
g_object_class_install_property
176
g_param_spec_string("text",
178
"The text to display.",
180
G_PARAM_CONSTRUCT | G_PARAM_READWRITE));
154
184
aff_frame_init(AffFrame *frame)
188
frame->block_drawing = FALSE;
189
frame->label = gtk_label_new("");
190
hbox = gtk_hbox_new(FALSE, 1);
191
gtk_box_pack_start(GTK_BOX(hbox), frame->label, TRUE, TRUE, 0);
193
gtk_frame_set_label_widget(GTK_FRAME(frame), hbox);
156
194
gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_NONE);
157
frame->block_drawing = FALSE;
159
196
g_signal_connect(G_OBJECT(frame), "notify", G_CALLBACK(on_notify), NULL);
163
aff_frame_new(gchar *label, GtkWidget *window)
200
aff_frame_new(gchar *text, GtkWidget *window)
165
202
GtkWidget *frame;
167
frame = g_object_new(AFF_TYPE_FRAME,
204
frame = g_object_new(AFF_TYPE_FRAME, "text", text, NULL);
171
206
AFF_FRAME(frame)->window = AFF_WINDOW(window);