summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2021-06-27 21:09:38 +0100
committerCaolán McNamara <caolanm@redhat.com>2021-06-28 09:53:43 +0200
commitf9514beb9bfed51aee69227797e74504afed31c6 (patch)
tree625bd149c6646eaac3bb585924dadcb18d7dd1ed
parentsplit out customcellrenderer code (diff)
downloadcore-f9514beb9bfed51aee69227797e74504afed31c6.tar.gz
core-f9514beb9bfed51aee69227797e74504afed31c6.zip
use the standard macros to generate custom_cell_renderer_get_type
Change-Id: Ie0c15c0d97616d1b5a6afcdc72cba7247e22d999 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117959 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--vcl/unx/gtk3/customcellrenderer.cxx37
1 files changed, 5 insertions, 32 deletions
diff --git a/vcl/unx/gtk3/customcellrenderer.cxx b/vcl/unx/gtk3/customcellrenderer.cxx
index 43c6a6f03dc1..69e2395df4de 100644
--- a/vcl/unx/gtk3/customcellrenderer.cxx
+++ b/vcl/unx/gtk3/customcellrenderer.cxx
@@ -25,40 +25,13 @@ enum
};
}
-static gpointer custom_cell_renderer_parent_class;
+G_DEFINE_TYPE(CustomCellRenderer, custom_cell_renderer, GTK_TYPE_CELL_RENDERER_TEXT)
-static void custom_cell_renderer_class_init(CustomCellRendererClass* klass);
-
-static void custom_cell_renderer_init(GTypeInstance* instance, gpointer)
-{
- new (&CUSTOM_CELL_RENDERER(instance)->device) VclPtr<VirtualDevice>;
-}
-
-GType custom_cell_renderer_get_type()
+static void custom_cell_renderer_init(CustomCellRenderer* self)
{
- static GType type = 0;
-
- if (!type)
- {
- static const GTypeInfo tinfo = {
- sizeof(CustomCellRendererClass),
- nullptr, /* base init */
- nullptr, /* base finalize */
- reinterpret_cast<GClassInitFunc>(custom_cell_renderer_class_init), /* class init */
- nullptr, /* class finalize */
- nullptr, /* class data */
- sizeof(CustomCellRenderer), /* instance size */
- 0, /* nb preallocs */
- &custom_cell_renderer_init, /* instance init */
- nullptr /* value table */
- };
-
- // inherit from GtkCellRendererText so we can set the "text" property and get a11y support for that
- type = g_type_register_static(GTK_TYPE_CELL_RENDERER_TEXT, "CustomCellRenderer", &tinfo,
- GTypeFlags(0));
- }
-
- return type;
+ new (&self->device) VclPtr<VirtualDevice>;
+ // prevent loplugin:unreffun firing on macro generated function
+ (void)custom_cell_renderer_get_instance_private(self);
}
static void custom_cell_renderer_get_property(GObject* object, guint param_id, GValue* value,