#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
#include <map>\r
\r
class QAction;\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 XML information by the feature index\r
+ /// \param theFeatureId a feature id\r
+ /// \param theXmlCfg XML configuration\r
+ /// \param theDescription feature description\r
+ void getXMLRepresentation(const std::string& theFeatureId, std::string& theXmlCfg,\r
+ std::string& theDescription);\r
+\r
signals:\r
/// Signal which is emitted when operation is launched\r
void operationLaunched();\r
virtual ModuleBase_Operation* getNewOperation(const std::string& theFeatureId);\r
\r
protected:\r
-\r
/// Reference to workshop\r
ModuleBase_IWorkshop* myWorkshop;\r
\r