diff options
| author | Alex Valavanis <valavanisalex@gmail.com> | 2013-01-24 11:43:26 +0000 |
|---|---|---|
| committer | Alex Valavanis <valavanisalex@gmail.com> | 2013-01-24 11:43:26 +0000 |
| commit | d5640b0cc2463ee3470d18891fbd8304ba3339ee (patch) | |
| tree | 4fa2ef155578458203eaa796d4145547f1893c91 /src/sp-tref.cpp | |
| parent | revert my revision 12053 (Bug #1103248 ) (diff) | |
| download | inkscape-d5640b0cc2463ee3470d18891fbd8304ba3339ee.tar.gz inkscape-d5640b0cc2463ee3470d18891fbd8304ba3339ee.zip | |
More GObject boilerplate cleanup
(bzr r12059)
Diffstat (limited to 'src/sp-tref.cpp')
| -rw-r--r-- | src/sp-tref.cpp | 47 |
1 files changed, 11 insertions, 36 deletions
diff --git a/src/sp-tref.cpp b/src/sp-tref.cpp index 938b7c7cc..deee590af 100644 --- a/src/sp-tref.cpp +++ b/src/sp-tref.cpp @@ -52,8 +52,6 @@ static void build_string_from_root(Inkscape::XML::Node *root, Glib::ustring *ret /* TRef base class */ -static void sp_tref_class_init(SPTRefClass *tref_class); -static void sp_tref_init(SPTRef *tref); static void sp_tref_finalize(GObject *obj); static void sp_tref_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr); @@ -69,28 +67,7 @@ static gchar *sp_tref_description(SPItem *item); static void sp_tref_href_changed(SPObject *old_ref, SPObject *ref, SPTRef *tref); static void sp_tref_delete_self(SPObject *deleted, SPTRef *self); -static SPObjectClass *tref_parent_class; - -GType -sp_tref_get_type() -{ - static GType tref_type = 0; - - if (!tref_type) { - GTypeInfo tref_info = { - sizeof(SPTRefClass), - NULL, NULL, - (GClassInitFunc) sp_tref_class_init, - NULL, NULL, - sizeof(SPTRef), - 16, - (GInstanceInitFunc) sp_tref_init, - NULL, /* value_table */ - }; - tref_type = g_type_register_static(SP_TYPE_ITEM, "SPTRef", &tref_info, (GTypeFlags)0); - } - return tref_type; -} +G_DEFINE_TYPE(SPTRef, sp_tref, SP_TYPE_ITEM); static void sp_tref_class_init(SPTRefClass *tref_class) @@ -98,8 +75,6 @@ sp_tref_class_init(SPTRefClass *tref_class) GObjectClass *gobject_class = (GObjectClass *) tref_class; SPObjectClass *sp_object_class = (SPObjectClass *)tref_class; - tref_parent_class = (SPObjectClass*)g_type_class_peek_parent(tref_class); - sp_object_class->build = sp_tref_build; sp_object_class->release = sp_tref_release; sp_object_class->write = sp_tref_write; @@ -148,8 +123,8 @@ sp_tref_finalize(GObject *obj) static void sp_tref_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - if (((SPObjectClass *) tref_parent_class)->build) { - ((SPObjectClass *) tref_parent_class)->build(object, document, repr); + if (((SPObjectClass *) sp_tref_parent_class)->build) { + ((SPObjectClass *) sp_tref_parent_class)->build(object, document, repr); } object->readAttr( "xlink:href" ); @@ -178,8 +153,8 @@ sp_tref_release(SPObject *object) tref->uriOriginalRef->detach(); - if (((SPObjectClass *) tref_parent_class)->release) - ((SPObjectClass *) tref_parent_class)->release(object); + if (((SPObjectClass *) sp_tref_parent_class)->release) + ((SPObjectClass *) sp_tref_parent_class)->release(object); } /** @@ -225,8 +200,8 @@ sp_tref_set(SPObject *object, unsigned int key, gchar const *value) } } else { // default - if (((SPObjectClass *) tref_parent_class)->set) { - ((SPObjectClass *) tref_parent_class)->set(object, key, value); + if (((SPObjectClass *) sp_tref_parent_class)->set) { + ((SPObjectClass *) sp_tref_parent_class)->set(object, key, value); } } @@ -243,8 +218,8 @@ sp_tref_update(SPObject *object, SPCtx *ctx, guint flags) SPTRef *tref = SP_TREF(object); - if (((SPObjectClass *) tref_parent_class)->update) { - ((SPObjectClass *) tref_parent_class)->update(object, ctx, flags); + if (((SPObjectClass *) sp_tref_parent_class)->update) { + ((SPObjectClass *) sp_tref_parent_class)->update(object, ctx, flags); } if (flags & SP_OBJECT_MODIFIED_FLAG) { @@ -307,8 +282,8 @@ sp_tref_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML: g_free(uri_string); } - if (((SPObjectClass *) tref_parent_class)->write) { - ((SPObjectClass *) tref_parent_class)->write(object, xml_doc, repr, flags); + if (((SPObjectClass *) sp_tref_parent_class)->write) { + ((SPObjectClass *) sp_tref_parent_class)->write(object, xml_doc, repr, flags); } return repr; |
