index 2de64898b75e7b5b5a0d9a0b47fdab981265ec3a..e24561ace61ca5467887c77fea9b2f2227ea4258 100644 (file)
this->_observer.notifyUndoCommitEvent(log);
}
+ /**
+ * Issue a clear undo event to the UndoStackObserver
+ * that is associated with this
+ * UndoStackObserverRecord.
+ */
+ void issueClearUndo()
+ {
+ this->_observer.notifyClearUndoEvent();
+ }
+
+ /**
+ * Issue a clear redo event to the UndoStackObserver
+ * that is associated with this
+ * UndoStackObserverRecord.
+ */
+ void issueClearRedo()
+ {
+ this->_observer.notifyClearRedoEvent();
+ }
+
private:
UndoStackObserver& _observer;
};
/// A list of UndoStackObserverRecords, used to aggregate multiple UndoStackObservers.
- typedef std::list< UndoStackObserverRecord > UndoObserverRecordList;
+ typedef std::list< UndoStackObserverRecord, GC::Alloc< UndoStackObserverRecord, GC::MANUAL > > UndoObserverRecordList;
/**
* Constructor.
*/
void notifyUndoCommitEvent(Event* log);
+ virtual void notifyClearUndoEvent();
+ virtual void notifyClearRedoEvent();
+
private:
// Remove an observer from a given list
bool _remove_one(UndoObserverRecordList& list, UndoStackObserver& rec);