#include <ModelAPI_Attribute.h>\r
\r
#include <GeomAPI_Shape.h>\r
+#include <GeomAPI_ICustomPrs.h>\r
\r
#include <QString>\r
#include <QObject>\r
#include <QMap>\r
+#include <QList>\r
\r
#include <string>\r
#include <vector>\r
/// Remove default selection filters of the module from the current viewer\r
virtual void deactivateSelectionFilters() {};\r
\r
+ // Stores the current selection\r
+ virtual void storeSelection() {};\r
+\r
+ // Restores the current selection\r
+ virtual void restoreSelection() {};\r
+\r
/// Reads description of features from XML file \r
virtual void createFeatures();\r
\r
/// It is called as on clearing of property panel as on filling with new widgets\r
virtual void propertyPanelDefined(ModuleBase_Operation* theOperation) {}\r
\r
+ /// Have an opportunity to create widgets for the current operation instead of standard creation in workshop\r
+ /// \param theOperation a started operation\r
+ /// \param theWidgets a list of created widgets\r
+ /// \return boolean result, false by default\r
+ virtual bool createWidgets(ModuleBase_Operation* theOperation,\r
+ QList<ModuleBase_ModelWidget*>& theWidgets) const { return false; }\r
+\r
//! Returns True if there are available Undos and there is not an active operation\r
virtual bool canUndo() const;\r
\r
virtual void deactivateCustomPrs(const ModuleBase_CustomizeFlag& theFlag,\r
const bool theUpdateViewer) {}\r
\r
+ /// Modifies the given presentation in the custom way.\r
+ virtual bool customisePresentation(ResultPtr theResult, AISObjectPtr thePrs,\r
+ GeomCustomPrsPtr theCustomPrs) { return false; };\r
+\r
/// Update the object presentable properties such as color, lines width and other\r
/// If the object is result with the color attribute value set, it is used,\r
/// otherwise the customize is applyed to the object's feature if it is a custom prs\r
virtual AttributePtr findAttribute(const ObjectPtr& theObject,\r
const GeomShapePtr& theGeomShape) = 0;\r
\r
- /// Returns color of the object\r
- /// \param theObject a result of a feature object\r
- /// \param theColor a vector of three values in [0, 255] range\r
- virtual void getColor(const ObjectPtr& theObject, std::vector<int>& theColor) {}\r
-\r
/// Returns XML information by the feature index\r
/// \param theFeatureId a feature id\r
/// \param theXmlCfg XML configuration\r