{
public:
virtual void release() = 0;
+virtual ~UndoMemento() {
+}
};
class Undoable
public:
virtual UndoMemento* exportState() const = 0;
virtual void importState( const UndoMemento* state ) = 0;
+virtual ~Undoable() {
+}
};
class UndoObserver
{
public:
virtual void save( Undoable* undoable ) = 0;
+virtual ~UndoObserver() {
+}
};
class UndoTracker
virtual void begin() = 0;
virtual void undo() = 0;
virtual void redo() = 0;
+virtual ~UndoTracker() {
+}
};
class UndoSystem
virtual void trackerAttach( UndoTracker& tracker ) = 0;
virtual void trackerDetach( UndoTracker& tracker ) = 0;
+
+virtual ~UndoSystem() {
+}
};
#include "modulesystem.h"
{
public:
virtual void release() = 0;
+virtual ~Symbiot(){
+}
};
private:
bool excluded(){
return ( m_state & eExcluded ) != 0;
}
+bool operator<( const scene::Node& other ){
+ return this < &other;
+}
+bool operator==( const scene::Node& other ){
+ return this == &other;
+}
+bool operator!=( const scene::Node& other ){
+ return this != &other;
+}
};
+
class NullNode : public Node::Symbiot
{
NodeTypeCastTable m_casts;
return NodeTypeCast<TransformNode>::cast( node );
}
-inline bool operator<( scene::Node& node, scene::Node& other ){
- return &node < &other;
-}
-inline bool operator==( scene::Node& node, scene::Node& other ){
- return &node == &other;
-}
-inline bool operator!=( scene::Node& node, scene::Node& other ){
- return !::operator==( node, other );
-}
-
inline scene::Node& NewNullNode(){
return ( new scene::NullNode )->node();