summaryrefslogtreecommitdiffstats
path: root/src/sp-clippath.cpp
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2013-02-06 08:19:53 +0000
committerJabiertxo Arraiza Cenoz <jtx@jtx.marker.es>2013-02-06 08:19:53 +0000
commit549a79b5367ffd259a23fbd18e93199d1c0149b7 (patch)
tree9c4ce4a0217afa63b59f32d02a60b848f43a9520 /src/sp-clippath.cpp
parentMerge from branch (diff)
parentSupress Pango error message. (diff)
downloadinkscape-549a79b5367ffd259a23fbd18e93199d1c0149b7.tar.gz
inkscape-549a79b5367ffd259a23fbd18e93199d1c0149b7.zip
Merge from branch
(bzr r11950.1.19)
Diffstat (limited to 'src/sp-clippath.cpp')
-rw-r--r--src/sp-clippath.cpp99
1 files changed, 47 insertions, 52 deletions
diff --git a/src/sp-clippath.cpp b/src/sp-clippath.cpp
index 47d9be2c1..059cbcf2b 100644
--- a/src/sp-clippath.cpp
+++ b/src/sp-clippath.cpp
@@ -37,46 +37,34 @@ struct SPClipPathView {
Geom::OptRect bbox;
};
-SPClipPathView *sp_clippath_view_new_prepend(SPClipPathView *list, unsigned int key, Inkscape::DrawingItem *arenaitem);
-SPClipPathView *sp_clippath_view_list_remove(SPClipPathView *list, SPClipPathView *view);
-
-SPObjectGroupClass * SPClipPathClass::static_parent_class = 0;
-
-GType
-SPClipPath::sp_clippath_get_type(void)
-{
- static GType type = 0;
- if (!type) {
- GTypeInfo info = {
- sizeof(SPClipPathClass),
- NULL, NULL,
- (GClassInitFunc) SPClipPathClass::sp_clippath_class_init,
- NULL, NULL,
- sizeof(SPClipPath),
- 16,
- (GInstanceInitFunc) SPClipPath::init,
- NULL, /* value_table */
- };
- type = g_type_register_static(SP_TYPE_OBJECTGROUP, "SPClipPath", &info, (GTypeFlags)0);
- }
- return type;
-}
-
-void SPClipPathClass::sp_clippath_class_init(SPClipPathClass *klass)
+static void sp_clippath_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr);
+static void sp_clippath_release(SPObject * object);
+static void sp_clippath_set(SPObject *object, unsigned int key, gchar const *value);
+static void sp_clippath_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref);
+static void sp_clippath_update(SPObject *object, SPCtx *ctx, guint flags);
+static void sp_clippath_modified(SPObject *object, guint flags);
+static Inkscape::XML::Node* sp_clippath_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags);
+static SPClipPathView* sp_clippath_view_new_prepend(SPClipPathView *list, unsigned int key, Inkscape::DrawingItem *arenaitem);
+static SPClipPathView* sp_clippath_view_list_remove(SPClipPathView *list, SPClipPathView *view);
+
+G_DEFINE_TYPE(SPClipPath, sp_clippath, SP_TYPE_OBJECTGROUP);
+
+static void
+sp_clippath_class_init(SPClipPathClass *klass)
{
SPObjectClass *sp_object_class = SP_OBJECT_CLASS(klass);
- static_parent_class = SP_OBJECTGROUP_CLASS(g_type_class_ref(SP_TYPE_OBJECTGROUP));
-
- sp_object_class->build = SPClipPath::build;
- sp_object_class->release = SPClipPath::release;
- sp_object_class->set = SPClipPath::set;
- sp_object_class->child_added = SPClipPath::childAdded;
- sp_object_class->update = SPClipPath::update;
- sp_object_class->modified = SPClipPath::modified;
- sp_object_class->write = SPClipPath::write;
+
+ sp_object_class->build = sp_clippath_build;
+ sp_object_class->release = sp_clippath_release;
+ sp_object_class->set = sp_clippath_set;
+ sp_object_class->child_added = sp_clippath_child_added;
+ sp_object_class->update = sp_clippath_update;
+ sp_object_class->modified = sp_clippath_modified;
+ sp_object_class->write = sp_clippath_write;
}
-void SPClipPath::init(SPClipPath *cp)
+static void
+sp_clippath_init(SPClipPath *cp)
{
cp->clipPathUnits_set = FALSE;
cp->clipPathUnits = SP_CONTENT_UNITS_USERSPACEONUSE;
@@ -84,10 +72,11 @@ void SPClipPath::init(SPClipPath *cp)
cp->display = NULL;
}
-void SPClipPath::build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr)
+static void
+sp_clippath_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr)
{
- if (((SPObjectClass *) SPClipPathClass::static_parent_class)->build)
- ((SPObjectClass *) SPClipPathClass::static_parent_class)->build(object, document, repr);
+ if (((SPObjectClass *) sp_clippath_parent_class)->build)
+ ((SPObjectClass *) sp_clippath_parent_class)->build(object, document, repr);
object->readAttr( "style" );
object->readAttr( "clipPathUnits" );
@@ -96,7 +85,8 @@ void SPClipPath::build(SPObject *object, SPDocument *document, Inkscape::XML::No
document->addResource("clipPath", object);
}
-void SPClipPath::release(SPObject * object)
+static void
+sp_clippath_release(SPObject * object)
{
if (object->document) {
// Unregister ourselves
@@ -109,12 +99,13 @@ void SPClipPath::release(SPObject * object)
cp->display = sp_clippath_view_list_remove(cp->display, cp->display);
}
- if (((SPObjectClass *) (SPClipPathClass::static_parent_class))->release) {
- ((SPObjectClass *) SPClipPathClass::static_parent_class)->release(object);
+ if (((SPObjectClass *) (sp_clippath_parent_class))->release) {
+ ((SPObjectClass *) sp_clippath_parent_class)->release(object);
}
}
-void SPClipPath::set(SPObject *object, unsigned int key, gchar const *value)
+static void
+sp_clippath_set(SPObject *object, unsigned int key, gchar const *value)
{
SPClipPath *cp = SP_CLIPPATH(object);
@@ -137,18 +128,19 @@ void SPClipPath::set(SPObject *object, unsigned int key, gchar const *value)
sp_style_read_from_object(object->style, object);
object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG);
} else {
- if (((SPObjectClass *) SPClipPathClass::static_parent_class)->set) {
- ((SPObjectClass *) SPClipPathClass::static_parent_class)->set(object, key, value);
+ if (((SPObjectClass *) sp_clippath_parent_class)->set) {
+ ((SPObjectClass *) sp_clippath_parent_class)->set(object, key, value);
}
}
break;
}
}
-void SPClipPath::childAdded(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref)
+static void
+sp_clippath_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref)
{
/* Invoke SPObjectGroup implementation */
- ((SPObjectClass *) (SPClipPathClass::static_parent_class))->child_added(object, child, ref);
+ ((SPObjectClass *) (sp_clippath_parent_class))->child_added(object, child, ref);
/* Show new object */
SPObject *ochild = object->document->getObjectByRepr(child);
@@ -165,7 +157,8 @@ void SPClipPath::childAdded(SPObject *object, Inkscape::XML::Node *child, Inksca
}
}
-void SPClipPath::update(SPObject *object, SPCtx *ctx, guint flags)
+static void
+sp_clippath_update(SPObject *object, SPCtx *ctx, guint flags)
{
if (flags & SP_OBJECT_MODIFIED_FLAG) {
flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
@@ -202,7 +195,8 @@ void SPClipPath::update(SPObject *object, SPCtx *ctx, guint flags)
}
}
-void SPClipPath::modified(SPObject *object, guint flags)
+static void
+sp_clippath_modified(SPObject *object, guint flags)
{
if (flags & SP_OBJECT_MODIFIED_FLAG) {
flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
@@ -227,14 +221,15 @@ void SPClipPath::modified(SPObject *object, guint flags)
}
}
-Inkscape::XML::Node *SPClipPath::write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags)
+static Inkscape::XML::Node*
+sp_clippath_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags)
{
if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) {
repr = xml_doc->createElement("svg:clipPath");
}
- if (((SPObjectClass *) (SPClipPathClass::static_parent_class))->write) {
- ((SPObjectClass *) (SPClipPathClass::static_parent_class))->write(object, xml_doc, repr, flags);
+ if (((SPObjectClass *) (sp_clippath_parent_class))->write) {
+ ((SPObjectClass *) (sp_clippath_parent_class))->write(object, xml_doc, repr, flags);
}
return repr;