diff options
| author | Markus Engel <markus.engel@tum.de> | 2013-04-01 23:41:30 +0000 |
|---|---|---|
| committer | Markus Engel <markus.engel@tum.de> | 2013-04-01 23:41:30 +0000 |
| commit | 69f3b6f1abb2bb422935d43262e1e99aab359954 (patch) | |
| tree | e1e2d2b0504d22e81b04501155995f5694a4cd7b /src/sp-filter-primitive.cpp | |
| parent | Added experimental constructor to SPRect. Memory leaks because of non-virtual... (diff) | |
| download | inkscape-69f3b6f1abb2bb422935d43262e1e99aab359954.tar.gz inkscape-69f3b6f1abb2bb422935d43262e1e99aab359954.zip | |
Added constructors to SP classes.
(bzr r11608.1.67)
Diffstat (limited to 'src/sp-filter-primitive.cpp')
| -rw-r--r-- | src/sp-filter-primitive.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/sp-filter-primitive.cpp b/src/sp-filter-primitive.cpp index d788b4314..c7de36978 100644 --- a/src/sp-filter-primitive.cpp +++ b/src/sp-filter-primitive.cpp @@ -42,14 +42,14 @@ GType sp_filter_primitive_get_type() GTypeInfo filter_primitive_info = { sizeof(SPFilterPrimitiveClass), NULL, NULL, - (GClassInitFunc) sp_filter_primitive_class_init, + 0,//(GClassInitFunc) sp_filter_primitive_class_init, NULL, NULL, sizeof(SPFilterPrimitive), 16, (GInstanceInitFunc) sp_filter_primitive_init, NULL, /* value_table */ }; - filter_primitive_type = g_type_register_static(SP_TYPE_OBJECT, "SPFilterPrimitive", &filter_primitive_info, (GTypeFlags)0); + filter_primitive_type = g_type_register_static(G_TYPE_OBJECT, "SPFilterPrimitive", &filter_primitive_info, (GTypeFlags)0); } return filter_primitive_type; } @@ -72,8 +72,9 @@ void CFilterPrimitive::build_renderer(Inkscape::Filters::Filter* filter) { // throw; } -static void sp_filter_primitive_init(SPFilterPrimitive *filter_primitive) -{ +SPFilterPrimitive::SPFilterPrimitive() : SPObject() { + SPFilterPrimitive* filter_primitive = this; + filter_primitive->cfilterprimitive = new CFilterPrimitive(filter_primitive); filter_primitive->typeHierarchy.insert(typeid(SPFilterPrimitive)); @@ -94,6 +95,11 @@ static void sp_filter_primitive_init(SPFilterPrimitive *filter_primitive) filter_primitive->height.unset(SVGLength::PERCENT, 1, 0); } +static void sp_filter_primitive_init(SPFilterPrimitive *filter_primitive) +{ + new (filter_primitive) SPFilterPrimitive(); +} + /** * Reads the Inkscape::XML::Node, and initializes SPFilterPrimitive variables. For this to get called, * our name must be associated with a repr via "sp_object_type_register". Best done through |
