summaryrefslogtreecommitdiffstats
path: root/src/widgets/font-selector.cpp
diff options
context:
space:
mode:
authorDenis Declara <declara91@gmail.com>2012-04-15 12:29:45 +0000
committerDenis Declara <declara91@gmail.com>2012-04-15 12:29:45 +0000
commit6b5ff661a46ea1779c86f6947006c5ed32926117 (patch)
treea5b170f0830854e99ad065055ee2a3996933e614 /src/widgets/font-selector.cpp
parentImproved User interface. (diff)
parenti18n. Fix for Bug #980518 (Please use c-format). (diff)
downloadinkscape-6b5ff661a46ea1779c86f6947006c5ed32926117.tar.gz
inkscape-6b5ff661a46ea1779c86f6947006c5ed32926117.zip
Trunk merge
(bzr r11073.1.15)
Diffstat (limited to 'src/widgets/font-selector.cpp')
-rw-r--r--src/widgets/font-selector.cpp39
1 files changed, 34 insertions, 5 deletions
diff --git a/src/widgets/font-selector.cpp b/src/widgets/font-selector.cpp
index 5aa8d3d00..ff361a6b8 100644
--- a/src/widgets/font-selector.cpp
+++ b/src/widgets/font-selector.cpp
@@ -176,7 +176,12 @@ static void sp_font_selector_init(SPFontSelector *fsel)
gtk_widget_show(f);
gtk_box_pack_start(GTK_BOX (fsel), f, TRUE, TRUE, 0);
+#if GTK_CHECK_VERSION(3,0,0)
+ GtkWidget *vb = gtk_box_new(GTK_ORIENTATION_VERTICAL, 4);
+ gtk_box_new(GTK_BOX(vb), FALSE);
+#else
GtkWidget *vb = gtk_vbox_new(FALSE, 4);
+#endif
gtk_widget_show(vb);
gtk_container_set_border_width(GTK_CONTAINER (vb), 4);
gtk_container_add(GTK_CONTAINER(f), vb);
@@ -201,11 +206,26 @@ static void sp_font_selector_init(SPFontSelector *fsel)
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(fsel->style_treeview));
g_signal_connect (G_OBJECT(selection), "changed", G_CALLBACK (sp_font_selector_style_select_row), fsel);
+#if GTK_CHECK_VERSION(3,0,0)
+ GtkWidget *hb = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 4);
+ gtk_box_set_homogeneous(GTK_BOX(hb), FALSE);
+#else
GtkWidget *hb = gtk_hbox_new(FALSE, 4);
+#endif
gtk_widget_show(hb);
gtk_box_pack_start(GTK_BOX(vb), hb, FALSE, FALSE, 0);
+/*
+This would introduce dependency on gtk version 2.24 which is currently not available in
+Trisquel GNU/Linux 4.5.1 (released on May 25th, 2011)
+This conditional and its #else block can be deleted in the future.
+*/
+#if GTK_CHECK_VERSION(2, 24,0)
+ fsel->size = gtk_combo_box_text_new_with_entry ();
+#else
fsel->size = gtk_combo_box_entry_new_text ();
+#endif
+
gtk_widget_set_tooltip_text (fsel->size, _("Font size (px)"));
gtk_widget_set_size_request(fsel->size, 90, -1);
g_signal_connect (G_OBJECT(fsel->size), "changed", G_CALLBACK (sp_font_selector_size_changed), fsel);
@@ -216,9 +236,13 @@ static void sp_font_selector_init(SPFontSelector *fsel)
gtk_box_pack_end(GTK_BOX (hb), l, FALSE, FALSE, 0);
for (unsigned int n = 0; sizes[n]; ++n)
- {
- gtk_combo_box_append_text (GTK_COMBO_BOX(fsel->size), sizes[n]);
- }
+ {
+#if GTK_CHECK_VERSION(2, 24,0)
+ gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT(fsel->size), sizes[n]);
+#else
+ gtk_combo_box_append_text (GTK_COMBO_BOX(fsel->size), sizes[n]);
+#endif
+ }
gtk_widget_show_all (fsel->size);
@@ -304,7 +328,12 @@ static void sp_font_selector_style_select_row (GtkTreeSelection *selection,
static void sp_font_selector_size_changed( GtkComboBox */*cbox*/, SPFontSelector *fsel )
{
- char *text = gtk_combo_box_get_active_text (GTK_COMBO_BOX (fsel->size));
+ char *text = NULL;
+#if GTK_CHECK_VERSION(2, 24,0)
+ text = gtk_combo_box_text_get_active_text (GTK_COMBO_BOX_TEXT (fsel->size));
+#else
+ text = gtk_combo_box_get_active_text (GTK_COMBO_BOX (fsel->size));
+#endif
gfloat old_size = fsel->fontsize;
gchar *endptr;
@@ -375,7 +404,7 @@ static void sp_font_selector_emit_set (SPFontSelector *fsel)
fsel->font->Unref();
}
fsel->font = font;
- gtk_signal_emit(GTK_OBJECT(fsel), fs_signals[FONT_SET], fsel->font);
+ g_signal_emit(GTK_OBJECT(fsel), fs_signals[FONT_SET], 0, fsel->font);
}
fsel->fontsize_dirty = false;
if (font) {