Code

Split SPCanvasItem and SPCanvasGroup to individual .h files. Pruned forward header.
[inkscape.git] / src / jabber_whiteboard / node-utilities.h
1 /**
2  * Whiteboard session manager
3  * XML node manipulation / retrieval utilities
4  * 
5  * Authors:
6  * David Yip <yipdw@rose-hulman.edu>
7  *
8  * Released under GNU GPL, read the file 'COPYING' for more information
9  */
11 #ifndef __WHITEBOARD_NODE_UTILITIES_H__
12 #define __WHITEBOARD_NODE_UTILITIES_H__
14 #include "jabber_whiteboard/defines.h"
15 #include "xml/node.h"
16 #include <glibmm.h>
18 namespace Inkscape {
20 namespace XML {
22 class Node;
24 }
26 namespace Whiteboard {
28 class XMLNodeTracker;
30 class NodeUtilities {
31 public:
32         // Node utilities
33         //static Inkscape::XML::Node* lookupReprByValue(Inkscape::XML::Node* root,
34         //                      gchar const* key, Glib::ustring const* value);
35         static Glib::ustring nodeTypeToString(XML::Node const& node);
36         static XML::NodeType stringToNodeType(Glib::ustring const& type);
38         // Node key search utility method
39         static Glib::ustring findNodeID(XML::Node const& node, 
40                               XMLNodeTracker* tracker, 
41                               KeyNodeTable const& newnodes);
43 private:
44         // noncopyable, nonassignable
45         NodeUtilities(NodeUtilities const&);
46         NodeUtilities& operator=(NodeUtilities const&);
47 };
49 }
51 }
53 #endif
55 /*
56   Local Variables:
57   mode:c++
58   c-file-style:"stroustrup"
59   c-file-offsets:((innamespace . 0)(inline-open . 0))
60   indent-tabs-mode:nil
61   fill-column:99
62   End:
63 */
64 // vim: filetype=c++:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :