]> SALOME platform Git repositories - modules/shaper.git/commitdiff
Salome HOME
Make ModuleBase_ModelWidget::restoreValue() non-virtual and create virtual ModuleBase...
authorspo <sergey.pokhodenko@opencascade.com>
Mon, 27 Jul 2015 10:56:41 +0000 (13:56 +0300)
committerspo <sergey.pokhodenko@opencascade.com>
Tue, 4 Aug 2015 12:22:35 +0000 (15:22 +0300)
Also ModuleBase_ModelWidget::restoreValue() emits signals beforeValuesRestored() and afterValuesRestored().

30 files changed:
src/ModuleBase/ModuleBase_ModelWidget.cpp
src/ModuleBase/ModuleBase_ModelWidget.h
src/ModuleBase/ModuleBase_PagedContainer.cpp
src/ModuleBase/ModuleBase_PagedContainer.h
src/ModuleBase/ModuleBase_WidgetBoolValue.cpp
src/ModuleBase/ModuleBase_WidgetBoolValue.h
src/ModuleBase/ModuleBase_WidgetChoice.cpp
src/ModuleBase/ModuleBase_WidgetChoice.h
src/ModuleBase/ModuleBase_WidgetDoubleValue.cpp
src/ModuleBase/ModuleBase_WidgetDoubleValue.h
src/ModuleBase/ModuleBase_WidgetExprEditor.cpp
src/ModuleBase/ModuleBase_WidgetExprEditor.h
src/ModuleBase/ModuleBase_WidgetFileSelector.cpp
src/ModuleBase/ModuleBase_WidgetFileSelector.h
src/ModuleBase/ModuleBase_WidgetIntValue.cpp
src/ModuleBase/ModuleBase_WidgetIntValue.h
src/ModuleBase/ModuleBase_WidgetLabel.h
src/ModuleBase/ModuleBase_WidgetLineEdit.cpp
src/ModuleBase/ModuleBase_WidgetLineEdit.h
src/ModuleBase/ModuleBase_WidgetMultiSelector.cpp
src/ModuleBase/ModuleBase_WidgetMultiSelector.h
src/ModuleBase/ModuleBase_WidgetShapeSelector.cpp
src/ModuleBase/ModuleBase_WidgetShapeSelector.h
src/PartSet/PartSet_WidgetFileSelector.cpp
src/PartSet/PartSet_WidgetFileSelector.h
src/PartSet/PartSet_WidgetPoint2d.cpp
src/PartSet/PartSet_WidgetPoint2d.h
src/PartSet/PartSet_WidgetSketchCreator.cpp
src/PartSet/PartSet_WidgetSketchCreator.h
src/PartSet/PartSet_WidgetSketchLabel.h

index 057b2936c687b3fc584ea1dd20e2918d8a0a1b5a..63d8095fcc206036af95483e000fb618a4d20c3b 100644 (file)
@@ -139,6 +139,15 @@ bool ModuleBase_ModelWidget::storeValue()
   return isDone;
 }
 
+bool ModuleBase_ModelWidget::restoreValue()
+{
+  emit beforeValuesRestored();
+  bool isDone = restoreValueCustom();
+  emit afterValuesRestored();
+
+  return isDone;
+}
+
 void ModuleBase_ModelWidget::updateObject(ObjectPtr theObj)
 {
   Events_Loop::loop()->flush(Events_Loop::eventByName(EVENT_OBJECT_UPDATED));
index 031c5dd421bd24cb9af75dfcb1581db2e2bd9fd5..cad3f174ca4166c214b8571c2c3f58b31d409789 100644 (file)
@@ -90,8 +90,9 @@ Q_OBJECT
     return false;
   }
 
-  /// Restore value from attribute data to the widget's control
-  virtual bool restoreValue() = 0;
+  /// Restore value from attribute data to the widget's control. Emits signals before and after store
+  /// \return True in success
+  bool restoreValue();
 
   /// Set focus to the first control of the current widget. The focus policy of the control is checked.
   /// If the widget has the NonFocus focus policy, it is skipped.
@@ -164,6 +165,11 @@ signals:
   /// The signal about widget values are to be changed
   void afterValuesChanged();
 
+  /// The signal about widget values are to be restored
+  void beforeValuesRestored();
+  /// The signal about widget values are to be restored
+  void afterValuesRestored();
+
   /// The signal about key release on the control, that corresponds to the attribute
   /// \param theEvent key release event
   void keyReleased(QKeyEvent* theEvent);
@@ -176,7 +182,7 @@ signals:
   /// \param theWidget the model base widget
   void focusOutWidget(ModuleBase_ModelWidget* theWidget);
 
- protected:
+protected:
   /// Sets default value of widget. Normally, widget should fetch this value
   /// from the xml. However, some widgets derived widgets could define it
   void setDefaultValue(const std::string& theValue);
@@ -195,6 +201,9 @@ signals:
   /// \return True in success
   virtual bool storeValueCustom() const = 0;
 
+  /// Restore value from attribute data to the widget's control
+  virtual bool restoreValueCustom() = 0;
+
   /// The method called when widget is activated
   virtual void activateCustom() {};
 
index b4e8b5690604a1e99bf607ec79cbb0a8b704d06d..c4c3623ccd898aae53e8248bfdcce3e4d67c46a8 100644 (file)
@@ -69,7 +69,7 @@ void ModuleBase_PagedContainer::enableFocusProcessing()
   myIsFocusOnCurrentPage = true;
 }
 
-bool ModuleBase_PagedContainer::restoreValue()
+bool ModuleBase_PagedContainer::restoreValueCustom()
 {
   // A rare case when plugin was not loaded.
   if(!myFeature)
index d0677d3c0d4ef500dce61cdb6bb6afcbba8e224d..74bf703c2c7aecc6455f46a03bdf2b5c5ef42091 100644 (file)
@@ -28,7 +28,6 @@ class MODULEBASE_EXPORT ModuleBase_PagedContainer : public ModuleBase_ModelWidge
   virtual bool focusTo();
   virtual void setHighlighted(bool isHighlighted);
   virtual void enableFocusProcessing();
-  virtual bool restoreValue();
 
  protected:
   virtual int currentPageIndex() const = 0;
@@ -36,6 +35,7 @@ class MODULEBASE_EXPORT ModuleBase_PagedContainer : public ModuleBase_ModelWidge
   // ModuleBase_ModelWidget
   virtual void activateCustom();
   virtual bool storeValueCustom() const;
+  virtual bool restoreValueCustom();
 
  protected slots:
   void onPageChanged();
index 854a93a4801bf4c1ce7c5b0add5bacbf8b01f078..f260939e540c9a26a2c522e1a48d85322eb5f9d7 100644 (file)
@@ -54,7 +54,7 @@ bool ModuleBase_WidgetBoolValue::storeValueCustom() const
   return true;
 }
 
-bool ModuleBase_WidgetBoolValue::restoreValue()
+bool ModuleBase_WidgetBoolValue::restoreValueCustom()
 {
   DataPtr aData = myFeature->data();
   std::shared_ptr<ModelAPI_AttributeBoolean> aRef = aData->boolean(attributeID());
index 1c13e0458ce9b5d998eedce6e638b2a485e558e1..b100c4ffe4cd43b6886a42aeb93c75f12fb36372 100644 (file)
@@ -31,8 +31,6 @@ Q_OBJECT
 
   virtual ~ModuleBase_WidgetBoolValue();
 
-  virtual bool restoreValue();
-
   virtual QList<QWidget*> getControls() const;
 
   virtual void setHighlighted(bool isHighlighted);
@@ -42,6 +40,8 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
  private:
    /// The check box
   QCheckBox* myCheckBox;
index 83537b71d3bcf293047252fea682769153a22c48..3bb748f63f6f69f6a2d06a564474ed3e21f3acb4 100644 (file)
@@ -55,7 +55,7 @@ bool ModuleBase_WidgetChoice::storeValueCustom() const
   return true;
 }
 
-bool ModuleBase_WidgetChoice::restoreValue()
+bool ModuleBase_WidgetChoice::restoreValueCustom()
 {
   DataPtr aData = myFeature->data();
   std::shared_ptr<ModelAPI_AttributeInteger> aIntAttr = aData->integer(attributeID());
index 412821d2c475ef3865f089b2bda411f99a93cfb5..72f6df4cd2e15eebbe100559cd7b8e4d6f7ba0d8 100644 (file)
@@ -39,8 +39,6 @@ Q_OBJECT
 
   virtual ~ModuleBase_WidgetChoice();
   
-  virtual bool restoreValue();
-
   virtual bool focusTo();
 
   /// Returns list of widget controls
@@ -52,6 +50,8 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
 private slots:
   /// Slot called on combo box index change
   void onCurrentIndexChanged(int theIndex);
index 82a8800b3232b435e0ee7ca6928ffc0aa83a0b13..a576ad31ba2c3e4eef8693fe819d991f3bd6f52b 100644 (file)
@@ -104,7 +104,7 @@ bool ModuleBase_WidgetDoubleValue::reset()
     // if the double value can not be found by the default value, do nothing
     if (isOk) {
       ModuleBase_Tools::setSpinValue(mySpinBox, aDefValue);
-      storeValueCustom();
+      storeValue();
       aDone = true;
     }
   }
@@ -130,7 +130,7 @@ bool ModuleBase_WidgetDoubleValue::storeValueCustom() const
   return true;
 }
 
-bool ModuleBase_WidgetDoubleValue::restoreValue()
+bool ModuleBase_WidgetDoubleValue::restoreValueCustom()
 {
   DataPtr aData = myFeature->data();
   AttributeDoublePtr aRef = aData->real(attributeID());
index 186ae90a3f7fceefd4a9e326d091d2672e646ae9..81052981c140812c610bed898e3e47f30d6e3da7 100644 (file)
@@ -40,10 +40,6 @@ Q_OBJECT
   /// Fills the widget with default values
   virtual bool reset();
 
-  //! Read value of corresponded attribute from data model to the input control
-  // \return True in success
-  virtual bool restoreValue();
-
   /// Returns list of widget controls
   /// \return a control list
   virtual QList<QWidget*> getControls() const;
@@ -58,6 +54,10 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  //! Read value of corresponded attribute from data model to the input control
+  // \return True in success
+  virtual bool restoreValueCustom();
+
 protected:
   /// Label of the widget
   QLabel* myLabel;
index 346b324c810e66a937512785773a0ca3b7d9f66f..20d8c8298ac095dbc657b11a141f3184d4a16923 100644 (file)
@@ -202,7 +202,7 @@ bool ModuleBase_WidgetExprEditor::storeValueCustom() const
   return true;
 }
 
-bool ModuleBase_WidgetExprEditor::restoreValue()
+bool ModuleBase_WidgetExprEditor::restoreValueCustom()
 {
   // A rare case when plugin was not loaded. 
   if(!myFeature)
index b234364f738143c852c272355463230171329c7b..54262288ec20017fcfa6e4d48619e17b37bc780f 100644 (file)
@@ -65,8 +65,6 @@ class MODULEBASE_EXPORT ModuleBase_WidgetExprEditor : public ModuleBase_ModelWid
                                 const std::string& theParentId);
   virtual ~ModuleBase_WidgetExprEditor();
 
-  virtual bool restoreValue();
-
   virtual QList<QWidget*> getControls() const;
 
  public slots:
@@ -78,6 +76,8 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
 private:
    /// A line edit control
   QLabel* myResultLabel;
index ee47d10c944c7cdcb58992f9c0617337fbb0b3d3..a18f059399419bb5d9d2d2f351e17270a628eef3 100644 (file)
@@ -79,7 +79,7 @@ bool ModuleBase_WidgetFileSelector::storeValueCustom() const
   return true;
 }
 
-bool ModuleBase_WidgetFileSelector::restoreValue()
+bool ModuleBase_WidgetFileSelector::restoreValueCustom()
 {
   // A rare case when plugin was not loaded. 
   if (!myFeature)
index 8b5987fa086a9e27c58fd559a7ba23754277d8ec..e1f402b03b862dae284cc433c4f6bf486d50c812 100644 (file)
@@ -50,8 +50,6 @@ class MODULEBASE_EXPORT ModuleBase_WidgetFileSelector : public ModuleBase_ModelW
                                 const std::string& theParentId);
   virtual ~ModuleBase_WidgetFileSelector();
 
-  virtual bool restoreValue();
-
   virtual QList<QWidget*> getControls() const;
 
   /// Returns true if a file on the current path in the line edit
@@ -70,6 +68,8 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
 protected:
   /// Converts format to filter string
   static QString formatToFilter(const QString & theFormat);
index 45f3e7d94c17fe7344a4f21b95f7bdac43eddabf..6778b372c0212a0480dd77a3bde924a7bd761df7 100644 (file)
@@ -122,7 +122,7 @@ bool ModuleBase_WidgetIntValue::storeValueCustom() const
   return true;
 }
 
-bool ModuleBase_WidgetIntValue::restoreValue()
+bool ModuleBase_WidgetIntValue::restoreValueCustom()
 {
   DataPtr aData = myFeature->data();
   AttributeIntegerPtr aRef = aData->integer(attributeID());
index aa7958b9bf21fe9a62a50d50a3874c70bca9f576..255e716035b009b31f9403eb45e8371320dbff52 100644 (file)
@@ -40,10 +40,6 @@ Q_OBJECT
   /// Fills the widget with default values
   virtual bool reset();
 
-  //! Read value of corresponded attribute from data model to the input control
-  // \return True in success
-  virtual bool restoreValue();
-
   /// Returns list of widget controls
   /// \return a control list
   virtual QList<QWidget*> getControls() const;
@@ -54,6 +50,10 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  //! Read value of corresponded attribute from data model to the input control
+  // \return True in success
+  virtual bool restoreValueCustom();
+
 protected:
   /// Label of the widget
   QLabel* myLabel;
index 62fb2d2e82d57eb3b292f4318d8efa2536e03280..9f74e614bd06f877ed10c9a29d66907d953b7c4e 100644 (file)
@@ -33,7 +33,7 @@ Q_OBJECT
   /// It returns false because this is an info widget
   virtual bool canSetValue() const { return false; };
 
-  virtual bool restoreValue()
+  virtual bool restoreValueCustom()
   {
     return true;
   }
index 1f1dbd5349d34d63f97060c31ba924cdd8075f1d..f2f5034b8c380051a6055b77eddcb92b51353656 100644 (file)
@@ -64,7 +64,7 @@ bool ModuleBase_WidgetLineEdit::storeValueCustom() const
   return true;
 }
 
-bool ModuleBase_WidgetLineEdit::restoreValue()
+bool ModuleBase_WidgetLineEdit::restoreValueCustom()
 {
   // A rare case when plugin was not loaded. 
   if(!myFeature)
index 067185cdd2ee565a70355eb7698a403237150ba9..624bdf9175f54c10b5af6feb2fc7b13005f979c6 100644 (file)
@@ -38,8 +38,6 @@ class MODULEBASE_EXPORT ModuleBase_WidgetLineEdit : public ModuleBase_ModelWidge
                                 const std::string& theParentId);
   virtual ~ModuleBase_WidgetLineEdit();
 
-  virtual bool restoreValue();
-
   virtual QList<QWidget*> getControls() const;
 
  public slots:
@@ -51,6 +49,8 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
 private:
    /// A line edit control
   QLineEdit* myLineEdit;
index a0e85e14c2c0342d8722d39e45da41ce28945546..faaaebdba4cc4861611023456908e9000536d652 100644 (file)
@@ -124,7 +124,7 @@ bool ModuleBase_WidgetMultiSelector::storeValueCustom() const
 }
 
 //********************************************************************
-bool ModuleBase_WidgetMultiSelector::restoreValue()
+bool ModuleBase_WidgetMultiSelector::restoreValueCustom()
 {
   // A rare case when plugin was not loaded. 
   if(!myFeature)
index 11f9023a4d54c6161e2deda816e83b74b5837bba..693572f4e087f6a90ba039bb5d05ab99693e82fa 100644 (file)
@@ -63,8 +63,6 @@ class MODULEBASE_EXPORT ModuleBase_WidgetMultiSelector : public ModuleBase_Widge
                                  const std::string& theParentId);
   virtual ~ModuleBase_WidgetMultiSelector();
 
-  virtual bool restoreValue();
-
   /// Returns list of widget controls
   /// \return a control list
   virtual QList<QWidget*> getControls() const;
@@ -96,6 +94,8 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
   /// 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
index a697080947295db2a8d61800cd8504386322719f..6d47be32c6aa52f2ded96d5afad18bacc366fd93 100644 (file)
@@ -163,7 +163,7 @@ void ModuleBase_WidgetShapeSelector::clearAttribute()
 }
 
 //********************************************************************
-bool ModuleBase_WidgetShapeSelector::restoreValue()
+bool ModuleBase_WidgetShapeSelector::restoreValueCustom()
 {
   bool isBlocked = this->blockSignals(true);
   updateSelectionName();
index 7cb2427d271c4ca73153d94906d6e7d32f309301..650d5b1e1848b617e314a13a33cf936c97da0eb5 100644 (file)
@@ -70,8 +70,6 @@ Q_OBJECT
 
   virtual ~ModuleBase_WidgetShapeSelector();
 
-  virtual bool restoreValue();
-
   /// Returns list of widget controls
   /// \return a control list
   virtual QList<QWidget*> getControls() const;
@@ -81,6 +79,8 @@ Q_OBJECT
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
   /// 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
index 4f4f9531d037cc52ed548532262fd76fafc80d4f..117a8c866fcda85762ecff8fbca710757e5f16b6 100644 (file)
@@ -20,7 +20,7 @@ PartSet_WidgetFileSelector::PartSet_WidgetFileSelector(QWidget* theParent,
 {
 }
 
-bool PartSet_WidgetFileSelector::restoreValue()
+bool PartSet_WidgetFileSelector::restoreValueCustom()
 {
   // A rare case when plugin was not loaded.
   if (!myFeature)
@@ -30,7 +30,7 @@ bool PartSet_WidgetFileSelector::restoreValue()
   AttributeStringPtr aStringAttr = aData->string("export_file_format");
   mySelectedFilter = formatToFilter(shortFormatToFullFormat(QString::fromStdString(aStringAttr->value())));
 
-  return ModuleBase_WidgetFileSelector::restoreValue();
+  return ModuleBase_WidgetFileSelector::restoreValueCustom();
 }
 
 bool PartSet_WidgetFileSelector::storeValueCustom() const
index 9c503090976d6df0a4d6461e6d169cf2658f2b3e..70207a0cddeece1b5e7ce265801992330f67912f 100644 (file)
@@ -37,13 +37,13 @@ public:
 
   virtual ~PartSet_WidgetFileSelector() {}
 
-  /// Reimplemented from ModuleBase_WidgetFileSelector::restoreValue()
-  virtual bool restoreValue();
-
 protected:
   /// Reimplemented from ModuleBase_WidgetFileSelector::storeValueCustom()
   virtual bool storeValueCustom() const;
 
+  /// Reimplemented from ModuleBase_WidgetFileSelector::restoreValue()
+  virtual bool restoreValueCustom();
+
   /// Returns a full format string for the short format
   QString shortFormatToFullFormat( const QString & theShortFormat ) const;
 
index 7bbb8545b1013cb0c3e45983f4c827fd5a08b5ab..fe147f51a9f3866f1306eef53cf9e4a1251254c2 100644 (file)
@@ -180,7 +180,7 @@ bool PartSet_WidgetPoint2D::storeValueCustom() const
   return true;
 }
 
-bool PartSet_WidgetPoint2D::restoreValue()
+bool PartSet_WidgetPoint2D::restoreValueCustom()
 {
   std::shared_ptr<ModelAPI_Data> aData = myFeature->data();
   std::shared_ptr<GeomDataAPI_Point2D> aPoint = std::dynamic_pointer_cast<GeomDataAPI_Point2D>(
index d42bd44fb4e1f1229cea95edf3b9a83c4519e507..d8b235c9c762a3d07b5fddb55e59f6e6ef47c589 100644 (file)
@@ -59,8 +59,6 @@ Q_OBJECT
   virtual bool setSelection(QList<ModuleBase_ViewerPrs>& theValues,
                             const bool theToValidate);
 
-  virtual bool restoreValue();
-
   /// Returns list of widget controls
   /// \return a control list
   virtual QList<QWidget*> getControls() const;
@@ -109,6 +107,8 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
   /// The methiod called when widget is activated
   virtual void activateCustom();
 
index 7f08fe33e3d90ac2f1da0f3789ce28e062d2417d..3579f6e93832a1722a6b3bbe8373dff5f1529689 100644 (file)
@@ -69,7 +69,7 @@ QList<QWidget*> PartSet_WidgetSketchCreator::getControls() const
   return aControls;
 }
 
-bool PartSet_WidgetSketchCreator::restoreValue()
+bool PartSet_WidgetSketchCreator::restoreValueCustom()
 {
   CompositeFeaturePtr aCompFeature = 
     std::dynamic_pointer_cast<ModelAPI_CompositeFeature>(myFeature);
index d90e4d7ce515aba1fdc3fb13a89f981d648b92b3..adb5a92be5522520cf29992d1ecc9f36f14a9c03 100644 (file)
@@ -29,8 +29,6 @@ Q_OBJECT
 
   virtual ~PartSet_WidgetSketchCreator();
 
-  virtual bool restoreValue();
-
   /// Returns list of widget controls
   /// \return a control list
   virtual QList<QWidget*> getControls() const;
@@ -45,6 +43,8 @@ protected:
   /// \return True in success
   virtual bool storeValueCustom() const;
 
+  virtual bool restoreValueCustom();
+
   /// The methiod called when widget is activated
   virtual void activateCustom();
 
index beaff58bec82b883e76ae7bb0741b3584fa9e21e..2bc8d85d682d04865b9e815d9adbdced64400b2f 100644 (file)
@@ -56,11 +56,6 @@ Q_OBJECT
   virtual bool setSelection(QList<ModuleBase_ViewerPrs>& theValues,
                             const bool theToValidate);
 
-  virtual bool restoreValue()
-  {
-    return true;
-  }
-
   /// Returns list of widget controls
   /// \return a control list
   virtual QList<QWidget*> getControls() const;
@@ -107,6 +102,11 @@ protected:
     return true;
   }
 
+  virtual bool restoreValueCustom()
+  {
+    return true;
+  }
+
   /// The methiod called when widget is activated
   virtual void activateCustom();