summaryrefslogtreecommitdiffstats
path: root/src/sp-pattern.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-pattern.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-pattern.cpp')
-rw-r--r--src/sp-pattern.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/sp-pattern.cpp b/src/sp-pattern.cpp
index f04ba3f0a..a9b8ae2ed 100644
--- a/src/sp-pattern.cpp
+++ b/src/sp-pattern.cpp
@@ -43,7 +43,7 @@
static void pattern_ref_changed(SPObject *old_ref, SPObject *ref, SPPattern *pat);
static void pattern_ref_modified (SPObject *ref, guint flags, SPPattern *pattern);
-G_DEFINE_TYPE(SPPattern, sp_pattern, SP_TYPE_PAINT_SERVER);
+G_DEFINE_TYPE(SPPattern, sp_pattern, G_TYPE_OBJECT);
static void
sp_pattern_class_init (SPPatternClass *klass)
@@ -57,9 +57,9 @@ CPattern::CPattern(SPPattern* pattern) : CPaintServer(pattern) {
CPattern::~CPattern() {
}
-static void
-sp_pattern_init (SPPattern *pat)
-{
+SPPattern::SPPattern() : SPPaintServer() {
+ SPPattern* pat = this;
+
pat->cpattern = new CPattern(pat);
pat->typeHierarchy.insert(typeid(SPPattern));
@@ -67,6 +67,8 @@ sp_pattern_init (SPPattern *pat)
pat->cpaintserver = pat->cpattern;
pat->cobject = pat->cpattern;
+ pat->href = NULL;
+
pat->ref = new SPPatternReference(pat);
pat->ref->changedSignal().connect(sigc::bind(sigc::ptr_fun(pattern_ref_changed), pat));
@@ -89,6 +91,12 @@ sp_pattern_init (SPPattern *pat)
new (&pat->modified_connection) sigc::connection();
}
+static void
+sp_pattern_init (SPPattern *pat)
+{
+ new (pat) SPPattern();
+}
+
void CPattern::build(SPDocument* doc, Inkscape::XML::Node* repr) {
SPPattern* object = this->sppattern;