From 69f3b6f1abb2bb422935d43262e1e99aab359954 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Tue, 2 Apr 2013 01:41:30 +0200 Subject: Added constructors to SP classes. (bzr r11608.1.67) --- src/sp-path.cpp | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'src/sp-path.cpp') diff --git a/src/sp-path.cpp b/src/sp-path.cpp index 43bf0a6a2..132415e51 100644 --- a/src/sp-path.cpp +++ b/src/sp-path.cpp @@ -53,7 +53,7 @@ static void sp_path_finalize(GObject *obj); -G_DEFINE_TYPE(SPPath, sp_path, SP_TYPE_SHAPE); +G_DEFINE_TYPE(SPPath, sp_path, G_TYPE_OBJECT); /** * Does the object-oriented work of initializing the class structure @@ -134,12 +134,9 @@ CPath::CPath(SPPath* path) : CShape(path) { CPath::~CPath() { } -/** - * Initializes an SPPath. - */ -static void -sp_path_init(SPPath *path) -{ +SPPath::SPPath() : SPShape(), connEndPair(this) { + SPPath* path = this; + path->cpath = new CPath(path); path->typeHierarchy.insert(typeid(SPPath)); @@ -149,7 +146,16 @@ sp_path_init(SPPath *path) path->citem = path->cpath; path->cobject = path->cpath; - new (&path->connEndPair) SPConnEndPair(path); + //new (&path->connEndPair) SPConnEndPair(path); +} + +/** + * Initializes an SPPath. + */ +static void +sp_path_init(SPPath *path) +{ + new (path) SPPath(); } static void -- cgit v1.2.3