X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fpbd%2Fpbd%2Fstateful_diff_command.h;h=2a213d7a17e7fcea73be991cf6d3316e2d921727;hb=a1a8794dadc0ab972f441481594b53117df1ca92;hp=cab1ae40cfb742554034bedfbbdaf5430793aeb0;hpb=db8b575c30845bafc34b87bacd52129c95d1c478;p=ardour.git diff --git a/libs/pbd/pbd/stateful_diff_command.h b/libs/pbd/pbd/stateful_diff_command.h index cab1ae40cf..2a213d7a17 100644 --- a/libs/pbd/pbd/stateful_diff_command.h +++ b/libs/pbd/pbd/stateful_diff_command.h @@ -27,7 +27,7 @@ namespace PBD { -class Stateful; +class StatefulDestructible; class PropertyList; /** A Command which stores its action as the differences between the before and after @@ -36,19 +36,20 @@ class PropertyList; class StatefulDiffCommand : public Command { public: - StatefulDiffCommand (boost::shared_ptr); - StatefulDiffCommand (boost::shared_ptr, XMLNode const &); + StatefulDiffCommand (boost::shared_ptr); + StatefulDiffCommand (boost::shared_ptr, XMLNode const &); ~StatefulDiffCommand (); void operator() (); void undo (); - + XMLNode& get_state (); + bool empty () const; + private: boost::weak_ptr _object; ///< the object in question - PBD::PropertyList* _before; ///< its (partial) state before the command - PBD::PropertyList* _after; ///< its (partial) state after the operation + PBD::PropertyList* _changes; ///< property changes to execute this command }; };