X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_WidgetMultiSelector.h;h=cc702f6a129f0da3763c4e498e26bb4c6e84eeab;hb=872ac5e3e0196ad70c2a01a79bd070c9a7d4a2e6;hp=bdb1a46eddf75f4409a19db057d769d27cb9b214;hpb=a4702753c7da76a6434c9458f11ffce426be6e75;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_WidgetMultiSelector.h b/src/ModuleBase/ModuleBase_WidgetMultiSelector.h index bdb1a46ed..cc702f6a1 100644 --- a/src/ModuleBase/ModuleBase_WidgetMultiSelector.h +++ b/src/ModuleBase/ModuleBase_WidgetMultiSelector.h @@ -12,7 +12,6 @@ #include #include -#include #include #include @@ -73,12 +72,16 @@ class MODULEBASE_EXPORT ModuleBase_WidgetMultiSelector : public ModuleBase_Widge /// The methiod called when widget is deactivated virtual void deactivate(); + /// Fills the attribute with the value of the selected owner + /// \param theOwner a selected owner + virtual bool setSelectionCustom(const ModuleBase_ViewerPrs& thePrs); + public slots: /// Slot is called on selection type changed void onSelectionTypeChanged(); /// Slot is called on selection changed - void onSelectionChanged(); + virtual void onSelectionChanged(); protected slots: /// Slot for copy command in a list pop-up menu @@ -95,13 +98,24 @@ protected slots: /// \return True in success virtual bool storeValueCustom() const; + /// Creates a backup of the current values of the attribute + /// It should be realized in the specific widget because of different + /// parameters of the current attribute + virtual void storeAttributeValue(); + + /// Creates a backup of the current values of the attribute + /// It should be realized in the specific widget because of different + /// parameters of the current attribute + /// \param theValid a boolean flag, if restore happens for valid parameters + virtual void restoreAttributeValue(const bool theValid); + /// Set current shape type for selection void setCurrentShapeType(const TopAbs_ShapeEnum theShapeType); /// Start shape selection void activateShapeSelection(); - private: + protected: /// Update selection list void updateSelectionList(AttributeSelectionListPtr); @@ -120,14 +134,17 @@ protected slots: /// Provides correspondance between Result object and its shape typedef QPair GeomSelection; - /// Variable of GeomSelection type - QList mySelection; - /// An action for pop-up menu in a list control QAction* myCopyAction; - /// A filter for the Edges type, which avoid the generated edges selection - Handle(ModuleBase_FilterNoDegeneratedEdge) myEdgesTypeFilter; + /// backup parameters of the model attribute. The class processes three types of attribute: + /// Reference, RefAttr and Selection. Depending on the attribute type, only the attribute parameter + /// values are reserved in the backup + /// Variable of selection type + std::string mySelectionType; + + /// Variable of GeomSelection + QList mySelection; }; #endif /* MODULEBASE_WIDGETFILESELECTOR_H_ */