summaryrefslogtreecommitdiffstats
path: root/src/sp-line.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-line.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-line.cpp')
-rw-r--r--src/sp-line.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/sp-line.cpp b/src/sp-line.cpp
index 588e4f375..b6677baf3 100644
--- a/src/sp-line.cpp
+++ b/src/sp-line.cpp
@@ -25,7 +25,7 @@
#include "inkscape.h"
-G_DEFINE_TYPE(SPLine, sp_line, SP_TYPE_SHAPE);
+G_DEFINE_TYPE(SPLine, sp_line, G_TYPE_OBJECT);
static void
sp_line_class_init(SPLineClass *klass)
@@ -39,9 +39,9 @@ CLine::CLine(SPLine* line) : CShape(line) {
CLine::~CLine() {
}
-static void
-sp_line_init(SPLine * line)
-{
+SPLine::SPLine() : SPShape() {
+ SPLine* line = this;
+
line->cline = new CLine(line);
line->typeHierarchy.insert(typeid(SPLine));
@@ -57,6 +57,12 @@ sp_line_init(SPLine * line)
line->y2.unset();
}
+static void
+sp_line_init(SPLine * line)
+{
+ new (line) SPLine();
+}
+
void CLine::build(SPDocument * document, Inkscape::XML::Node * repr) {
SPLine* object = this->spline;