summaryrefslogtreecommitdiffstats
path: root/src/xml
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2015-03-18 18:07:14 +0000
committerJabiertxof <jtx@jtx.marker.es>2015-03-18 18:07:14 +0000
commite77956b4dbd029c9f6949f81fe083606f995c624 (patch)
tree74adda4df8986d65f70efb341c6235277361fd35 /src/xml
parentupdated code to work on 0.92 code (diff)
parentLatvian translation update (diff)
downloadinkscape-e77956b4dbd029c9f6949f81fe083606f995c624.tar.gz
inkscape-e77956b4dbd029c9f6949f81fe083606f995c624.zip
update to trunk
(bzr r12588.1.39)
Diffstat (limited to 'src/xml')
-rw-r--r--src/xml/attribute-record.h2
-rw-r--r--src/xml/composite-node-observer.h2
-rw-r--r--src/xml/event.h2
-rw-r--r--src/xml/log-builder.h2
-rw-r--r--src/xml/node.h2
-rw-r--r--src/xml/repr-util.cpp15
-rw-r--r--src/xml/repr.h2
-rw-r--r--src/xml/simple-node.cpp20
-rw-r--r--src/xml/simple-node.h3
-rw-r--r--src/xml/subtree.h2
10 files changed, 47 insertions, 5 deletions
diff --git a/src/xml/attribute-record.h b/src/xml/attribute-record.h
index a61329b83..7caeab6b6 100644
--- a/src/xml/attribute-record.h
+++ b/src/xml/attribute-record.h
@@ -6,7 +6,7 @@
#define SEEN_XML_SP_REPR_ATTR_H
#include <glib.h>
-#include "gc-managed.h"
+#include "inkgc/gc-managed.h"
#include "util/share.h"
#define SP_REPR_ATTRIBUTE_KEY(a) g_quark_to_string((a)->key)
diff --git a/src/xml/composite-node-observer.h b/src/xml/composite-node-observer.h
index 3e4b1673a..6e93a57da 100644
--- a/src/xml/composite-node-observer.h
+++ b/src/xml/composite-node-observer.h
@@ -15,7 +15,7 @@
#ifndef SEEN_INKSCAPE_XML_COMPOSITE_NODE_OBSERVER_H
#define SEEN_INKSCAPE_XML_COMPOSITE_NODE_OBSERVER_H
-#include "gc-managed.h"
+#include "inkgc/gc-managed.h"
#include "xml/node-observer.h"
#include "util/list-container.h"
diff --git a/src/xml/event.h b/src/xml/event.h
index d25ea0e07..73e68daeb 100644
--- a/src/xml/event.h
+++ b/src/xml/event.h
@@ -24,7 +24,7 @@ typedef unsigned int GQuark;
#include <iterator>
#include "util/share.h"
#include "util/forward-pointer-iterator.h"
-#include "gc-managed.h"
+#include "inkgc/gc-managed.h"
#include "xml/node.h"
namespace Inkscape {
diff --git a/src/xml/log-builder.h b/src/xml/log-builder.h
index aa8f2c1c6..e94dd1daa 100644
--- a/src/xml/log-builder.h
+++ b/src/xml/log-builder.h
@@ -14,7 +14,7 @@
#ifndef SEEN_INKSCAPE_XML_LOG_BUILDER_H
#define SEEN_INKSCAPE_XML_LOG_BUILDER_H
-#include "gc-managed.h"
+#include "inkgc/gc-managed.h"
#include "xml/node-observer.h"
namespace Inkscape {
diff --git a/src/xml/node.h b/src/xml/node.h
index 8bb70acc0..29cfdab46 100644
--- a/src/xml/node.h
+++ b/src/xml/node.h
@@ -469,6 +469,8 @@ public:
* @deprecated Use synthesizeEvents(NodeObserver &) instead
*/
virtual void synthesizeEvents(NodeEventVector const *vector, void *data)=0;
+
+ virtual void recursivePrintTree(unsigned level)=0;
/*@}*/
diff --git a/src/xml/repr-util.cpp b/src/xml/repr-util.cpp
index 12280ea5a..7c5d2d6fc 100644
--- a/src/xml/repr-util.cpp
+++ b/src/xml/repr-util.cpp
@@ -32,6 +32,7 @@
#include <2geom/point.h>
#include "svg/stringstream.h"
#include "svg/css-ostringstream.h"
+#include "svg/svg-length.h"
#include "xml/repr.h"
#include "xml/repr-sorting.h"
@@ -502,6 +503,20 @@ unsigned int sp_repr_set_svg_double(Inkscape::XML::Node *repr, gchar const *key,
return true;
}
+/**
+ * For attributes where an exponent is allowed.
+ *
+ * Not suitable for property attributes.
+ */
+unsigned int sp_repr_set_svg_length(Inkscape::XML::Node *repr, gchar const *key, SVGLength &val)
+{
+ g_return_val_if_fail(repr != NULL, FALSE);
+ g_return_val_if_fail(key != NULL, FALSE);
+
+ repr->setAttribute(key, val.write());
+ return true;
+}
+
unsigned sp_repr_set_point(Inkscape::XML::Node *repr, gchar const *key, Geom::Point const & val)
{
g_return_val_if_fail(repr != NULL, FALSE);
diff --git a/src/xml/repr.h b/src/xml/repr.h
index e1d7fdfd6..c3ba40e45 100644
--- a/src/xml/repr.h
+++ b/src/xml/repr.h
@@ -30,6 +30,7 @@
#define SP_DC_NS_URI "http://purl.org/dc/elements/1.1/"
class SPCSSAttr;
+class SVGLength;
namespace Inkscape {
namespace IO {
@@ -115,6 +116,7 @@ unsigned sp_repr_set_boolean(Inkscape::XML::Node *repr, char const *key, unsigne
unsigned sp_repr_set_int(Inkscape::XML::Node *repr, char const *key, int val);
unsigned sp_repr_set_css_double(Inkscape::XML::Node *repr, char const *key, double val);
unsigned sp_repr_set_svg_double(Inkscape::XML::Node *repr, char const *key, double val);
+unsigned sp_repr_set_svg_length(Inkscape::XML::Node *repr, char const *key, SVGLength &val);
unsigned sp_repr_set_point(Inkscape::XML::Node *repr, char const *key, Geom::Point const & val);
unsigned sp_repr_get_point(Inkscape::XML::Node *repr, char const *key, Geom::Point *val);
diff --git a/src/xml/simple-node.cpp b/src/xml/simple-node.cpp
index 4965f81c8..3cbedc80b 100644
--- a/src/xml/simple-node.cpp
+++ b/src/xml/simple-node.cpp
@@ -606,6 +606,26 @@ void SimpleNode::synthesizeEvents(NodeObserver &observer) {
synthesizeEvents(&OBSERVER_EVENT_VECTOR, &observer);
}
+void SimpleNode::recursivePrintTree(unsigned level) {
+
+ if (level == 0) {
+ std::cout << "XML Node Tree" << std::endl;
+ }
+ std::cout << "XML: ";
+ for (unsigned i = 0; i < level; ++i) {
+ std::cout << " ";
+ }
+ char const *id=attribute("id");
+ if (id) {
+ std::cout << id << std::endl;
+ } else {
+ std::cout << name() << std::endl;
+ }
+ for (SimpleNode *child = _first_child; child != NULL; child = child->_next) {
+ child->recursivePrintTree( level+1 );
+ }
+}
+
Node *SimpleNode::root() {
Node *parent=this;
while (parent->parent()) {
diff --git a/src/xml/simple-node.h b/src/xml/simple-node.h
index 1fcb9193b..d09392249 100644
--- a/src/xml/simple-node.h
+++ b/src/xml/simple-node.h
@@ -19,6 +19,7 @@
#define SEEN_INKSCAPE_XML_SIMPLE_NODE_H
#include <cassert>
+#include <iostream>
#include "xml/node.h"
#include "xml/attribute-record.h"
@@ -120,6 +121,8 @@ public:
_subtree_observers.remove(observer);
}
+ void recursivePrintTree(unsigned level = 0);
+
protected:
SimpleNode(int code, Document *document);
SimpleNode(SimpleNode const &repr, Document *document);
diff --git a/src/xml/subtree.h b/src/xml/subtree.h
index 11bf515f1..bc6ae913a 100644
--- a/src/xml/subtree.h
+++ b/src/xml/subtree.h
@@ -15,7 +15,7 @@
#ifndef SEEN_INKSCAPE_XML_SUBTREE_H
#define SEEN_INKSCAPE_XML_SUBTREE_H
-#include "gc-managed.h"
+#include "inkgc/gc-managed.h"
#include "xml/composite-node-observer.h"
namespace Inkscape {