/*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ /* Author: Christian Hubinger , (C) 2001-2008 */ #ifndef KMFTRANSACTION_H #define KMFTRANSACTION_H #include "tqdict.h" #include "tqvaluelist.h" #include "tqptrlist.h" #include "tqstring.h" #include "tqobject.h" #include "tquuid.h" #include "tqguardedptr.h" namespace KMF { class NetfilterObject; /** @author Christian Hubinger */ class KMFTransaction{ friend class KMFUndoEngine; public: KMFTransaction( const TQString& transactionName, NetfilterObject* ); ~KMFTransaction(); const TQString& name() const { return m_transactionName; }; const TQUuid& objectUuid() const { return m_objectUuid; }; const TQUuid& uuid() const { return m_uuID; }; const TQString& toString(); const TQString& undoXML() const { return m_undoXML; }; const TQString& redoXML() const { return m_redoXML; }; private: KMFTransaction(); void commit(); NetfilterObject* undo(); NetfilterObject* redo(); private: TQString m_transactionName; // int m_objectID; TQUuid m_objectUuid; TQUuid m_uuID; TQString m_undoXML; TQString m_redoXML; }; } #endif