Code

c74027de2c9a3bad0f8758adf38b68ab70e12287
[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/typedefs.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, gchar const* key, ustring const* value);
34         static Glib::ustring const nodeTypeToString(XML::Node const& node);
35         static XML::NodeType stringToNodeType(Glib::ustring const& type);
37         // Node key search utility method
38         static std::string const findNodeID(XML::Node const& node, XMLNodeTracker* tracker, NodeToKeyMap const& newnodes);
40 private:
41         // noncopyable, nonassignable
42         NodeUtilities(NodeUtilities const&);
43         NodeUtilities& operator=(NodeUtilities const&);
44 };
46 }
48 }
50 #endif
52 /*
53   Local Variables:
54   mode:c++
55   c-file-style:"stroustrup"
56   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
57   indent-tabs-mode:nil
58   fill-column:99
59   End:
60 */
61 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :