summaryrefslogtreecommitdiffstats
path: root/src/sp-path.cpp
diff options
context:
space:
mode:
authorMarkus Engel <markus.engel@tum.de>2013-04-01 23:41:30 +0000
committerMarkus Engel <markus.engel@tum.de>2013-04-01 23:41:30 +0000
commit69f3b6f1abb2bb422935d43262e1e99aab359954 (patch)
treee1e2d2b0504d22e81b04501155995f5694a4cd7b /src/sp-path.cpp
parentAdded experimental constructor to SPRect. Memory leaks because of non-virtual... (diff)
downloadinkscape-69f3b6f1abb2bb422935d43262e1e99aab359954.tar.gz
inkscape-69f3b6f1abb2bb422935d43262e1e99aab359954.zip
Added constructors to SP classes.
(bzr r11608.1.67)
Diffstat (limited to 'src/sp-path.cpp')
-rw-r--r--src/sp-path.cpp22
1 files changed, 14 insertions, 8 deletions
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