Salome HOME
Merge branch 'master' of newgeom:newgeom
[modules/shaper.git] / src / ModuleBase / ModuleBase_Operation.h
index 8d23908316fc47207c8415c63c69ad8a82546770..818476d6faf073a3eafc05bd01a95373f7600482 100644 (file)
@@ -14,7 +14,7 @@
 #include <QObject>
 #include <QString>
 
-#include <memory>
+#include <boost/shared_ptr.hpp>
 
 class SUIT_Study;
 class XGUI_Workshop;
@@ -76,9 +76,7 @@ public:
   // Operation processing.
   virtual QString operationId() const;
 
-  virtual bool isPerformedImmediately() const;
-
-  std::shared_ptr<ModelAPI_Feature> feature() const;
+  boost::shared_ptr<ModelAPI_Feature> feature() const;
 
   OperationState state() const;
   bool isRunning() const;
@@ -93,10 +91,6 @@ public:
 
   int execStatus() const;
 
-  // Widget processing.
-  const QString& xmlRepresentation() const;
-  void setXmlRepresentation(const QString& xmlRepr);
-
 signals:
   void started();
   void aborted();
@@ -110,9 +104,16 @@ public slots:
   void abort();
   void commit();
 
+  //true = do nothing, false = abort()
+  //Provided for S/S compatibility with QAction's toggle(bool)
+  void setRunning(bool);
+
   // Data model operations.
   void storeReal(double);
 
+  // Data model operations.
+  void storeCustomValue();
+
 protected:
   virtual bool isReadyToStart() const;
 
@@ -124,7 +125,7 @@ protected:
   void setExecStatus(const int);
   void setState(const OperationState);
 
-  std::shared_ptr<ModelAPI_Document> document() const;
+  boost::shared_ptr<ModelAPI_Document> document() const;
 
 private:
   int myFlags;               //!< Operation flags
@@ -133,8 +134,7 @@ private:
 
   //!< Next fields could be extracted into a subclass;
   QString myOperationId;
-  QString myXmlRepr;
-  std::shared_ptr<ModelAPI_Feature> myFeature;
+  boost::shared_ptr<ModelAPI_Feature> myFeature;
 };
 
 #endif