From d592e23254943e7406ce83f66dab1c2af09b6b03 Mon Sep 17 00:00:00 2001 From: Stephen Silver Date: Mon, 30 Jun 2008 12:22:10 +0000 Subject: Prevent 'title', 'desc' and 'metadata' elements being moved to 'defs' when ungrouping (fixes bug 243720). (bzr r6098) --- src/xml/repr-util.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/xml/repr-util.cpp') diff --git a/src/xml/repr-util.cpp b/src/xml/repr-util.cpp index 97676bebe..193c1125c 100644 --- a/src/xml/repr-util.cpp +++ b/src/xml/repr-util.cpp @@ -445,6 +445,22 @@ sp_repr_lookup_name( Inkscape::XML::Node *repr, gchar const *name, gint maxdepth return found; } +/** + * Determine if the node is a 'title', 'desc' or 'metadata' element. + */ +bool +sp_repr_is_meta_element(const Inkscape::XML::Node *node) +{ + if (node == NULL) return false; + if (node->type() != Inkscape::XML::ELEMENT_NODE) return false; + gchar const *name = node->name(); + if (name == NULL) return false; + if (!std::strcmp(name, "svg:title")) return true; + if (!std::strcmp(name, "svg:desc")) return true; + if (!std::strcmp(name, "svg:metadata")) return true; + return false; +} + /** * Parses the boolean value of an attribute "key" in repr and sets val accordingly, or to FALSE if * the attr is not set. -- cgit v1.2.3