diff options
Diffstat (limited to 'src/sp-image.cpp')
| -rw-r--r-- | src/sp-image.cpp | 14 |
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; |
