Salome HOME
Update copyrights
[modules/shaper.git] / src / ModuleBase / ModuleBase_ModelWidget.h
index d4ecf3f89986a5b336e37672eb53d6510023ad02..0e6514374c929724c59082a40929f8efe00805a1 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2017  CEA/DEN, EDF R&D
+// Copyright (C) 2014-2019  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 //
 // You should have received a copy of the GNU Lesser General Public
 // License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or
-// email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 
 #ifndef MODULEBASE_MODELWIDGET_H
@@ -94,7 +93,7 @@ Q_OBJECT
   /// Appends into container of workshop selection filters
   /// \param [out] theModuleSelectionFilters module additional modes, -1 means all default modes
   /// \param [out] theSelectionFilters selection filters
-  virtual void selectionFilters(int& theModuleSelectionFilters,
+  virtual void selectionFilters(QIntList& theModuleSelectionFilters,
                                 SelectMgr_ListOfFilter& theSelectionFilters);
 
   /// Returns true, if default value of the widget should be computed
@@ -200,6 +199,11 @@ Q_OBJECT
   /// The method called when widget is deactivated
   virtual void deactivate();
 
+  /// Opportunity to do something after the active widget of the property panel changed
+  virtual void updateAfterDeactivation() {}
+  /// Opportunity to do something after the active widget of the property panel changed
+  virtual void updateAfterActivation() {}
+
   /// The method called if widget should be activated always
   virtual bool needToBeActiated() { return false; }
 
@@ -290,6 +294,15 @@ Q_OBJECT
   /// \return a model widget or NULL
   static ModuleBase_ModelWidget* findModelWidget(ModuleBase_IPropertyPanel* theProp,
                                                  QWidget* theWidget);
+
+  /// Returns True if the widget uses feature attribute.
+  /// If not then it means that the widget do not need attribute at all.
+  virtual bool usesAttribute() const { return true; }
+
+  /// It is called when user press Ok or OkPlus buttons in the parent property panel
+  /// By default this slot does nothing
+  virtual void onFeatureAccepted() {}
+
 signals:
   /// The signal about widget values are to be changed
   void beforeValuesChanged();