2
* Undo / redo / undo log commit listener
5
* David Yip <yipdw@rose-hulman.edu>
7
* Copyright (c) 2005 Authors
9
* Released under GNU GPL, read the file 'COPYING' for more information
12
#ifndef __WHITEBOARD_UNDO_COMMIT_OBSERVER_H__
13
#define __WHITEBOARD_UNDO_COMMIT_OBSERVER_H__
16
#include "../undo-stack-observer.h"
17
#include "jabber_whiteboard/typedefs.h"
21
namespace Whiteboard {
26
* Inkboard implementation of Inkscape::UndoStackObserver.
28
class UndoStackObserver : public Inkscape::UndoStackObserver {
36
UndoStackObserver(SessionManager* sm);
38
void notifyUndoEvent(XML::Event* log);
39
void notifyRedoEvent(XML::Event* log);
40
void notifyUndoCommitEvent(XML::Event* log);
42
void lockObserverFromSending(ObserverType type);
43
void unlockObserverFromSending(ObserverType type);
48
// common action handler
49
void _doAction(XML::Event* log);
51
// noncopyable, nonassignable
52
UndoStackObserver(UndoStackObserver const& other);
53
UndoStackObserver& operator=(UndoStackObserver const& other);
55
unsigned int _undoSendEventLocks;
56
unsigned int _redoSendEventLocks;
57
unsigned int _undoCommitSendEventLocks;
69
c-file-style:"stroustrup"
70
c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
75
// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :