summaryrefslogtreecommitdiffstats
path: root/src/sp-image.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-image.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-image.cpp')
-rw-r--r--src/sp-image.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/sp-image.cpp b/src/sp-image.cpp
index ab3a1ac1b..ecae573e6 100644
--- a/src/sp-image.cpp
+++ b/src/sp-image.cpp
@@ -499,7 +499,7 @@ GdkPixbuf* pixbuf_new_from_file( const char *filename, GError **error )
}
}
-G_DEFINE_TYPE(SPImage, sp_image, SP_TYPE_ITEM);
+G_DEFINE_TYPE(SPImage, sp_image, G_TYPE_OBJECT);
static void sp_image_class_init( SPImageClass * klass )
{
@@ -512,8 +512,9 @@ CImage::CImage(SPImage* image) : CItem(image) {
CImage::~CImage() {
}
-static void sp_image_init( SPImage *image )
-{
+SPImage::SPImage() : SPItem() {
+ SPImage* image = this;
+
image->cimage = new CImage(image);
image->typeHierarchy.insert(typeid(SPImage));
@@ -521,6 +522,8 @@ static void sp_image_init( SPImage *image )
image->citem = image->cimage;
image->cobject = image->cimage;
+ image->aspect_clip = 0;
+
image->x.unset();
image->y.unset();
image->width.unset();
@@ -541,6 +544,11 @@ static void sp_image_init( SPImage *image )
image->lastMod = 0;
}
+static void sp_image_init( SPImage *image )
+{
+ new (image) SPImage();
+}
+
void CImage::build(SPDocument *document, Inkscape::XML::Node *repr) {
SPImage* object = this->spimage;