X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModel%2FModel_Session.h;h=47e40262e3ae4cab165f84103d1467b9856724da;hb=6f77dfcd9833cdba0c583e6218350f1f7043eb8b;hp=fa94b8aae8588b8153a7086aff2d0a4c3c5879e3;hpb=5c861257d29de904a1418488b65e6100cd078433;p=modules%2Fshaper.git diff --git a/src/Model/Model_Session.h b/src/Model/Model_Session.h index fa94b8aae..47e40262e 100644 --- a/src/Model/Model_Session.h +++ b/src/Model/Model_Session.h @@ -48,7 +48,7 @@ class Model_Session : public ModelAPI_Session, public Events_Listener MODEL_EXPORT virtual void closeAll(); //! Starts a new operation (opens a tansaction) - MODEL_EXPORT virtual void startOperation(); + MODEL_EXPORT virtual void startOperation(const std::string& theId = ""); //! Finishes the previously started operation (closes the transaction) MODEL_EXPORT virtual void finishOperation(); //! Aborts the operation @@ -66,6 +66,10 @@ class Model_Session : public ModelAPI_Session, public Events_Listener MODEL_EXPORT virtual bool canRedo(); //! Redoes last operation MODEL_EXPORT virtual void redo(); + //! Returns stack of performed operations + MODEL_EXPORT virtual std::list undoList(); + //! Returns stack of rolled back operations + MODEL_EXPORT virtual std::list redoList(); /// Returns the root document of the application (that may contains sub-documents) MODEL_EXPORT virtual std::shared_ptr moduleDocument(); @@ -115,7 +119,9 @@ class Model_Session : public ModelAPI_Session, public Events_Listener void LoadPluginsInfo(); /// Creates the feature object using plugins functionality - virtual FeaturePtr createFeature(std::string theFeatureID); + FeaturePtr createFeature(std::string theFeatureID, Model_Document* theDocOwner); + + friend class Model_Document; }; #endif