summaryrefslogtreecommitdiffstats
path: root/src/sp-root.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-root.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-root.cpp')
-rw-r--r--src/sp-root.cpp23
1 files changed, 17 insertions, 6 deletions
diff --git a/src/sp-root.cpp b/src/sp-root.cpp
index 1767c4cd2..ac2ffdbf7 100644
--- a/src/sp-root.cpp
+++ b/src/sp-root.cpp
@@ -31,7 +31,7 @@
#include "svg/svg.h"
#include "xml/repr.h"
-G_DEFINE_TYPE(SPRoot, sp_root, SP_TYPE_GROUP);
+G_DEFINE_TYPE(SPRoot, sp_root, G_TYPE_OBJECT);
/**
* Initializes an SPRootClass object by setting its class and parent class objects, and registering
@@ -48,11 +48,9 @@ CRoot::CRoot(SPRoot* root) : CGroup(root) {
CRoot::~CRoot() {
}
-/**
- * Initializes an SPRoot object by setting its default parameter values.
- */
-static void sp_root_init(SPRoot *root)
-{
+SPRoot::SPRoot() : SPGroup() {
+ SPRoot* root = this;
+
root->croot = new CRoot(root);
root->typeHierarchy.insert(typeid(SPRoot));
@@ -62,6 +60,11 @@ static void sp_root_init(SPRoot *root)
root->citem = root->croot;
root->cobject = root->croot;
+ root->aspect_set = 0;
+ root->aspect_align = 0;
+ root->onload = NULL;
+ root->aspect_clip = 0;
+
static Inkscape::Version const zero_version(0, 0);
sp_version_from_string(SVG_VERSION, &root->original.svg);
@@ -82,6 +85,14 @@ static void sp_root_init(SPRoot *root)
root->defs = NULL;
}
+/**
+ * Initializes an SPRoot object by setting its default parameter values.
+ */
+static void sp_root_init(SPRoot *root)
+{
+ new (root) SPRoot();
+}
+
void CRoot::build(SPDocument *document, Inkscape::XML::Node *repr) {
SPRoot* object = this->sproot;