summaryrefslogtreecommitdiffstats
path: root/src/xml/document.h
diff options
context:
space:
mode:
authorMenTaLguY <mental@rydia.net>2007-01-20 05:49:10 +0000
committermental <mental@users.sourceforge.net>2007-01-20 05:49:10 +0000
commit25634c65d6e34ae67e6249543d81abef9f151d80 (patch)
tree0d2943021ed291d1464b466e00012ba2ac4cf99e /src/xml/document.h
parentUpdate. (diff)
downloadinkscape-25634c65d6e34ae67e6249543d81abef9f151d80.tar.gz
inkscape-25634c65d6e34ae67e6249543d81abef9f151d80.zip
merge XML::Session into XML::Document
(bzr r2248)
Diffstat (limited to 'src/xml/document.h')
-rw-r--r--src/xml/document.h25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/xml/document.h b/src/xml/document.h
index 8dc286a38..eeb16e74f 100644
--- a/src/xml/document.h
+++ b/src/xml/document.h
@@ -16,22 +16,27 @@
#define SEEN_INKSCAPE_XML_SP_REPR_DOC_H
#include "xml/node.h"
-#include "xml/session.h"
namespace Inkscape {
namespace XML {
+class Event;
+class NodeObserver;
+
struct Document : virtual public Node {
public:
- Node *createElementNode(char const *name) {
- return session()->createElementNode(name);
- }
- Node *createTextNode(char const *content) {
- return session()->createTextNode(content);
- }
- Node *createCommentNode(char const *content) {
- return session()->createCommentNode(content);
- }
+ virtual NodeObserver *logger()=0;
+
+ virtual bool inTransaction()=0;
+
+ virtual void beginTransaction()=0;
+ virtual void rollback()=0;
+ virtual void commit()=0;
+ virtual Inkscape::XML::Event *commitUndoable()=0;
+
+ virtual Node *createElementNode(char const *name)=0;
+ virtual Node *createTextNode(char const *content)=0;
+ virtual Node *createCommentNode(char const *content)=0;
};
}