summaryrefslogtreecommitdiffstats
path: root/src/sp-root.cpp
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2010-12-15 16:19:28 +0000
committerKrzysztof KosiƄski <tweenk.pl@gmail.com>2010-12-15 16:19:28 +0000
commit70201e92aa1e700d49279871f2b84082750b8ed8 (patch)
tree1886fcdf8ad20d73b92bf4f4bfd3ab1406ba4c66 /src/sp-root.cpp
parentFix mask luminance calculation, so the coeffs add up to 1 (diff)
parentWin32 post-GSoC fixups. (diff)
downloadinkscape-70201e92aa1e700d49279871f2b84082750b8ed8.tar.gz
inkscape-70201e92aa1e700d49279871f2b84082750b8ed8.zip
Merge from trunk (again)
(bzr r9508.1.72)
Diffstat (limited to 'src/sp-root.cpp')
-rw-r--r--src/sp-root.cpp51
1 files changed, 26 insertions, 25 deletions
diff --git a/src/sp-root.cpp b/src/sp-root.cpp
index 9cde3a656..40287f3d8 100644
--- a/src/sp-root.cpp
+++ b/src/sp-root.cpp
@@ -1,11 +1,11 @@
-#define __SP_ROOT_C__
-
/** \file
* SVG \<svg\> implementation.
*/
/*
* Authors:
* Lauris Kaplinski <lauris@kaplinski.com>
+ * Jon A. Cruz <jon@joncruz.org>
+ * Abhishek Sharma
*
* Copyright (C) 1999-2002 Lauris Kaplinski
* Copyright (C) 2000-2001 Ximian, Inc.
@@ -141,26 +141,27 @@ sp_root_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr)
SPGroup *group = (SPGroup *) object;
SPRoot *root = (SPRoot *) object;
- if ( !object->repr->attribute("version") ) {
+ //XML Tree being used directly here while it shouldn't be.
+ if ( !object->getRepr()->attribute("version") ) {
repr->setAttribute("version", SVG_VERSION);
}
- sp_object_read_attr(object, "version");
- sp_object_read_attr(object, "inkscape:version");
+ object->readAttr( "version" );
+ object->readAttr( "inkscape:version" );
/* It is important to parse these here, so objects will have viewport build-time */
- sp_object_read_attr(object, "x");
- sp_object_read_attr(object, "y");
- sp_object_read_attr(object, "width");
- sp_object_read_attr(object, "height");
- sp_object_read_attr(object, "viewBox");
- sp_object_read_attr(object, "preserveAspectRatio");
- sp_object_read_attr(object, "onload");
+ object->readAttr( "x" );
+ object->readAttr( "y" );
+ object->readAttr( "width" );
+ object->readAttr( "height" );
+ object->readAttr( "viewBox" );
+ object->readAttr( "preserveAspectRatio" );
+ object->readAttr( "onload" );
if (((SPObjectClass *) parent_class)->build)
(* ((SPObjectClass *) parent_class)->build) (object, document, repr);
- /* Search for first <defs> node */
- for (SPObject *o = sp_object_first_child(SP_OBJECT(group)) ; o != NULL; o = SP_OBJECT_NEXT(o) ) {
+ // Search for first <defs> node
+ for (SPObject *o = group->firstChild() ; o ; o = o->getNext() ) {
if (SP_IS_DEFS(o)) {
root->defs = SP_DEFS(o);
break;
@@ -340,22 +341,21 @@ sp_root_set(SPObject *object, unsigned int key, gchar const *value)
* This routine is for adding a child SVG object to an SPRoot object.
* The SPRoot object is taken to be an SPGroup.
*/
-static void
-sp_root_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref)
+static void sp_root_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref)
{
SPRoot *root = (SPRoot *) object;
SPGroup *group = (SPGroup *) object;
- if (((SPObjectClass *) (parent_class))->child_added)
+ if (((SPObjectClass *) (parent_class))->child_added) {
(* ((SPObjectClass *) (parent_class))->child_added)(object, child, ref);
+ }
SPObject *co = object->document->getObjectByRepr(child);
g_assert (co != NULL || !strcmp("comment", child->name())); // comment repr node has no object
if (co && SP_IS_DEFS(co)) {
- SPObject *c;
- /* We search for first <defs> node - it is not beautiful, but works */
- for (c = sp_object_first_child(SP_OBJECT(group)) ; c != NULL; c = SP_OBJECT_NEXT(c) ) {
+ // We search for first <defs> node - it is not beautiful, but works
+ for (SPObject *c = group->firstChild() ; c ; c = c->getNext() ) {
if (SP_IS_DEFS(c)) {
root->defs = SP_DEFS(c);
break;
@@ -372,9 +372,9 @@ static void sp_root_remove_child(SPObject *object, Inkscape::XML::Node *child)
SPRoot *root = (SPRoot *) object;
if ( root->defs && SP_OBJECT_REPR(root->defs) == child ) {
- SPObject *iter;
- /* We search for first remaining <defs> node - it is not beautiful, but works */
- for ( iter = sp_object_first_child(object) ; iter ; iter = SP_OBJECT_NEXT(iter) ) {
+ SPObject *iter = 0;
+ // We search for first remaining <defs> node - it is not beautiful, but works
+ for ( iter = object->firstChild() ; iter ; iter = iter->getNext() ) {
if ( SP_IS_DEFS(iter) && (SPDefs *)iter != root->defs ) {
root->defs = (SPDefs *)iter;
break;
@@ -386,8 +386,9 @@ static void sp_root_remove_child(SPObject *object, Inkscape::XML::Node *child)
}
}
- if (((SPObjectClass *) (parent_class))->remove_child)
+ if (((SPObjectClass *) (parent_class))->remove_child) {
(* ((SPObjectClass *) (parent_class))->remove_child)(object, child);
+ }
}
/**
@@ -561,7 +562,7 @@ sp_root_modified(SPObject *object, guint flags)
/* fixme: (Lauris) */
if (!object->parent && (flags & SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) {
- sp_document_resized_signal_emit (SP_OBJECT_DOCUMENT(root), root->width.computed, root->height.computed);
+ SP_OBJECT_DOCUMENT(root)->emitResizedSignal(root->width.computed, root->height.computed);
}
}