diff options
| author | Markus Engel <markus.engel@tum.de> | 2013-04-01 23:41:30 +0000 |
|---|---|---|
| committer | Markus Engel <markus.engel@tum.de> | 2013-04-01 23:41:30 +0000 |
| commit | 69f3b6f1abb2bb422935d43262e1e99aab359954 (patch) | |
| tree | e1e2d2b0504d22e81b04501155995f5694a4cd7b /src/sp-tspan.cpp | |
| parent | Added experimental constructor to SPRect. Memory leaks because of non-virtual... (diff) | |
| download | inkscape-69f3b6f1abb2bb422935d43262e1e99aab359954.tar.gz inkscape-69f3b6f1abb2bb422935d43262e1e99aab359954.zip | |
Added constructors to SP classes.
(bzr r11608.1.67)
Diffstat (limited to 'src/sp-tspan.cpp')
| -rw-r--r-- | src/sp-tspan.cpp | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/src/sp-tspan.cpp b/src/sp-tspan.cpp index 853966e46..e9cc6f161 100644 --- a/src/sp-tspan.cpp +++ b/src/sp-tspan.cpp @@ -47,7 +47,7 @@ /*##################################################### # SPTSPAN #####################################################*/ -G_DEFINE_TYPE(SPTSpan, sp_tspan, SP_TYPE_ITEM); +G_DEFINE_TYPE(SPTSpan, sp_tspan, G_TYPE_OBJECT); static void sp_tspan_class_init(SPTSpanClass *classname) @@ -61,9 +61,9 @@ CTSpan::CTSpan(SPTSpan* span) : CItem(span) { CTSpan::~CTSpan() { } -static void -sp_tspan_init(SPTSpan *tspan) -{ +SPTSpan::SPTSpan() : SPItem() { + SPTSpan* tspan = this; + tspan->ctspan = new CTSpan(tspan); tspan->typeHierarchy.insert(typeid(SPTSpan)); @@ -75,6 +75,12 @@ sp_tspan_init(SPTSpan *tspan) new (&tspan->attributes) TextTagAttributes; } +static void +sp_tspan_init(SPTSpan *tspan) +{ + new (tspan) SPTSpan(); +} + void CTSpan::release() { SPTSpan* object = this->sptspan; @@ -247,7 +253,7 @@ static void sp_textpath_finalize(GObject *obj); void refresh_textpath_source(SPTextPath* offset); -G_DEFINE_TYPE(SPTextPath, sp_textpath, SP_TYPE_ITEM); +G_DEFINE_TYPE(SPTextPath, sp_textpath, G_TYPE_OBJECT); static void sp_textpath_class_init(SPTextPathClass *classname) @@ -264,9 +270,9 @@ CTextPath::CTextPath(SPTextPath* textpath) : CItem(textpath) { CTextPath::~CTextPath() { } -static void -sp_textpath_init(SPTextPath *textpath) -{ +SPTextPath::SPTextPath() : SPItem() { + SPTextPath* textpath = this; + textpath->ctextpath = new CTextPath(textpath); textpath->typeHierarchy.insert(typeid(SPTextPath)); @@ -285,6 +291,12 @@ sp_textpath_init(SPTextPath *textpath) } static void +sp_textpath_init(SPTextPath *textpath) +{ + new (textpath) SPTextPath(); +} + +static void sp_textpath_finalize(GObject *obj) { SPTextPath *textpath = (SPTextPath *) obj; |
