+ /// Sets the operation feature
+ void setEditingFeature(FeaturePtr theFeature);
+
+ /// Returns True if the current operation works with the given object (feature or result)
+ virtual bool hasObject(ObjectPtr theObj) const;
+
+ virtual void keyReleased(const int theKey) {};
+
+ virtual void activateNextToCurrentWidget() {};
+
+ /// If operation needs to redisplay its result during operation
+ /// then this method has to return True
+ virtual bool hasPreview() const { return false; }
+
+ public slots:
+ /// Slots which listen the mode widget activation
+ /// \param theWidget the model widget
+ virtual void onWidgetActivated(ModuleBase_ModelWidget* theWidget);
+
+signals:
+ /// Signals about the activating of the next widget
+ /// \param theWidget the previous active widget
+ void activateNextWidget(ModuleBase_ModelWidget* theWidget);
+
+ protected: