[goffice] Widgets: start adding css-name definitions for widgets.
- From: Morten Welinder <mortenw src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [goffice] Widgets: start adding css-name definitions for widgets.
- Date: Sun, 3 Dec 2017 18:31:23 +0000 (UTC)
commit 8da2b8300a9d807b9a733ba7074f7d31390a1e0b
Author: Morten Welinder <terra gnome org>
Date: Sun Dec 3 13:29:19 2017 -0500
Widgets: start adding css-name definitions for widgets.
This is for gtk+ 3.20+. It doesn't do much yet, but it is possible to
play with some thing, for example
rotationselector canvas {
font-size: 2pt;
}
configure.ac | 8 ++++++++
goffice/canvas/goc-canvas.c | 3 +++
goffice/gtk/go-3d-rotation-sel.c | 7 +++++--
goffice/gtk/go-arrow-sel.c | 4 ++++
goffice/gtk/go-charmap-sel.c | 4 ++++
goffice/gtk/go-font-sel.c | 8 ++++++--
goffice/gtk/go-format-sel.c | 4 ++++
goffice/gtk/go-locale-sel.c | 4 ++++
goffice/gtk/go-palette.c | 4 ++++
goffice/gtk/go-rotation-sel.c | 4 ++++
10 files changed, 46 insertions(+), 4 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index c8b68fb..ebcb5ee 100644
--- a/configure.ac
+++ b/configure.ac
@@ -676,6 +676,14 @@ AC_SUBST(EXTRA_LIBS)
AC_SUBST(EXTRA_INCLUDES)
AC_SUBST(EXTRA_DEPS)
+SAVE_CFLAGS=$CFLAGS
+SAVE_LIBS=$LIBS
+CFLAGS="$CFLAGS $GOFFICE_CFLAGS"
+LIBS="$GOFFICE_LIBS $LIBS"
+AC_CHECK_FUNCS(gtk_widget_class_set_css_name)
+CFLAGS=$SAVE_CFLAGS
+LIBS=$SAVE_LIBS
+
# GObject Introspection
GIR_REQ=1.0.0
AC_ARG_ENABLE(introspection,
diff --git a/goffice/canvas/goc-canvas.c b/goffice/canvas/goc-canvas.c
index 9f217a5..eac4c93 100644
--- a/goffice/canvas/goc-canvas.c
+++ b/goffice/canvas/goc-canvas.c
@@ -327,6 +327,9 @@ goc_canvas_class_init (GObjectClass *klass)
klass->dispose = goc_canvas_dispose;
#ifdef GOFFICE_WITH_GTK
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name (widget_klass, "canvas");
+#endif
widget_klass->draw = goc_canvas_draw;
widget_klass->realize = goc_canvas_realize;
widget_klass->unrealize = goc_canvas_unrealize;
diff --git a/goffice/gtk/go-3d-rotation-sel.c b/goffice/gtk/go-3d-rotation-sel.c
index 8819290..49f7d44 100644
--- a/goffice/gtk/go-3d-rotation-sel.c
+++ b/goffice/gtk/go-3d-rotation-sel.c
@@ -384,8 +384,7 @@ g3d_finalize (GObject *obj)
static void
g3d_class_init (GObjectClass *klass)
{
- GObjectClass *gobj_class = (GObjectClass *) klass;
- gobj_class->finalize = g3d_finalize;
+ klass->finalize = g3d_finalize;
g3d_parent_class = g_type_class_peek (gtk_box_get_type ());
g3d_signals [MATRIX_CHANGED] = g_signal_new ("matrix-changed",
@@ -418,6 +417,10 @@ g3d_class_init (GObjectClass *klass)
NULL, NULL,
g_cclosure_marshal_VOID__INT,
G_TYPE_NONE, 1, G_TYPE_INT);
+
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name ((GtkWidgetClass *)klass, "rotation3dselector");
+#endif
}
GSF_CLASS (GO3DRotationSel, go_3d_rotation_sel,
diff --git a/goffice/gtk/go-arrow-sel.c b/goffice/gtk/go-arrow-sel.c
index b4b499a..089611a 100644
--- a/goffice/gtk/go-arrow-sel.c
+++ b/goffice/gtk/go-arrow-sel.c
@@ -210,6 +210,10 @@ go_arrow_sel_class_init (GObjectClass *klass)
_("The currently selected arrow"),
GO_ARROW_TYPE,
GSF_PARAM_STATIC | G_PARAM_READWRITE));
+
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name ((GtkWidgetClass *)klass, "arrowselector");
+#endif
}
GSF_CLASS (GOArrowSel, go_arrow_sel,
diff --git a/goffice/gtk/go-charmap-sel.c b/goffice/gtk/go-charmap-sel.c
index 97dc0f4..b227f66 100644
--- a/goffice/gtk/go-charmap-sel.c
+++ b/goffice/gtk/go-charmap-sel.c
@@ -555,6 +555,10 @@ cs_class_init (GtkWidgetClass *widget_klass)
g_free (autoaliases);
}
+
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name (widget_klass, "charmapselector");
+#endif
}
GSF_CLASS (GOCharmapSel, go_charmap_sel,
diff --git a/goffice/gtk/go-font-sel.c b/goffice/gtk/go-font-sel.c
index 1f45634..d3440db 100644
--- a/goffice/gtk/go-font-sel.c
+++ b/goffice/gtk/go-font-sel.c
@@ -1168,7 +1168,7 @@ gfs_set_property (GObject *object,
static void
gfs_class_init (GObjectClass *klass)
{
- GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
+ GtkWidgetClass *widget_klass = GTK_WIDGET_CLASS (klass);
klass->constructor = gfs_constructor;
klass->finalize = gfs_finalize;
@@ -1176,7 +1176,7 @@ gfs_class_init (GObjectClass *klass)
klass->get_property = gfs_get_property;
klass->set_property = gfs_set_property;
- widget_class->screen_changed = gfs_screen_changed;
+ widget_klass->screen_changed = gfs_screen_changed;
gfs_parent_class = g_type_class_peek_parent (klass);
@@ -1285,6 +1285,10 @@ gfs_class_init (GObjectClass *klass)
NULL, NULL,
g_cclosure_marshal_VOID__POINTER,
G_TYPE_NONE, 1, G_TYPE_POINTER);
+
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name (widget_klass, "fontselector");
+#endif
}
static void
diff --git a/goffice/gtk/go-format-sel.c b/goffice/gtk/go-format-sel.c
index fc10d35..4e2ecdb 100644
--- a/goffice/gtk/go-format-sel.c
+++ b/goffice/gtk/go-format-sel.c
@@ -1767,6 +1767,10 @@ nfs_class_init (GObjectClass *klass)
accumulate_first_string, NULL,
go__STRING__POINTER,
G_TYPE_STRING, 1, G_TYPE_POINTER);
+
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name ((GtkWidgetClass *)klass, "formatselector");
+#endif
}
GSF_CLASS (GOFormatSel, go_format_sel,
diff --git a/goffice/gtk/go-locale-sel.c b/goffice/gtk/go-locale-sel.c
index 2378327..36a3e75 100644
--- a/goffice/gtk/go-locale-sel.c
+++ b/goffice/gtk/go-locale-sel.c
@@ -650,6 +650,10 @@ ls_class_init (GtkWidgetClass *widget_klass)
setlocale (LC_ALL, oldlocale);
g_free (oldlocale);
+
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name (widget_klass, "localeselector");
+#endif
}
GSF_CLASS (GOLocaleSel, go_locale_sel,
diff --git a/goffice/gtk/go-palette.c b/goffice/gtk/go-palette.c
index 33da1a7..966a93a 100644
--- a/goffice/gtk/go-palette.c
+++ b/goffice/gtk/go-palette.c
@@ -184,6 +184,10 @@ go_palette_class_init (GOPaletteClass *class)
G_TYPE_NONE, 0);
g_type_class_add_private (object_class, sizeof (GOPalettePrivate));
+
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name (widget_class, "palette");
+#endif
}
static void
diff --git a/goffice/gtk/go-rotation-sel.c b/goffice/gtk/go-rotation-sel.c
index 3537d38..4c89123 100644
--- a/goffice/gtk/go-rotation-sel.c
+++ b/goffice/gtk/go-rotation-sel.c
@@ -265,6 +265,10 @@ grs_class_init (GObjectClass *klass)
NULL, NULL,
g_cclosure_marshal_VOID__INT,
G_TYPE_NONE, 1, G_TYPE_INT);
+
+#ifdef HAVE_GTK_WIDGET_CLASS_SET_CSS_NAME
+ gtk_widget_class_set_css_name ((GtkWidgetClass *)klass, "rotationselector");
+#endif
}
GSF_CLASS (GORotationSel, go_rotation_sel,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]