Salome HOME
updated copyright message
[modules/gui.git] / src / Qtx / QtxPreferenceMgr.cxx
index 2aefece23c649fd222ff7b63c1eb9d5114a7b45a..6a37bef59205d709dddb8788d8259295f41f9fe6 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2023  CEA, EDF, OPEN CASCADE
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -132,7 +132,8 @@ void QtxPreferenceItem::Updater::customEvent( QEvent* /*e*/ )
 */
 QtxPreferenceItem::QtxPreferenceItem( QtxPreferenceItem* parent )
 : myParent( 0 ),
-myEval( true )
+  myEval( true ),
+  myRestartNeeded( false )
 {
   myId = generateId();
 
@@ -147,6 +148,8 @@ myEval( true )
 */
 QtxPreferenceItem::QtxPreferenceItem( const QString& title, QtxPreferenceItem* parent )
 : myParent( 0 ),
+  myEval( true ),
+  myRestartNeeded( false ),
   myTitle( title )
 {
   myId = generateId();
@@ -165,6 +168,8 @@ QtxPreferenceItem::QtxPreferenceItem( const QString& title, QtxPreferenceItem* p
 QtxPreferenceItem::QtxPreferenceItem( const QString& title, const QString& sect,
                                       const QString& param, QtxPreferenceItem* parent )
 : myParent( 0 ),
+  myEval( true ),
+  myRestartNeeded( false ),
   myTitle( title ),
   mySection( sect ),
   myParameter( param )
@@ -386,7 +391,7 @@ void QtxPreferenceItem::resource( QString& sec, QString& param ) const
 */
 void QtxPreferenceItem::setIcon( const QIcon& ico )
 {
-  if ( myIcon.serialNumber() == ico.serialNumber() )
+  if ( myIcon.cacheKey() == ico.cacheKey() )
     return;
 
   myIcon = ico;
@@ -452,16 +457,42 @@ void QtxPreferenceItem::setOption( const QString& name, const QVariant& val )
     sendItemChanges();
 }
 
+/*!
+  \brief Get variables auto-conversion option value
+  \return option value
+*/
 bool QtxPreferenceItem::isEvaluateValues() const
 {
   return myEval;
 }
 
+/*!
+  \brief Switch variables auto-conversion option on/off
+  \param on option value
+*/
 void QtxPreferenceItem::setEvaluateValues( const bool on )
 {
   myEval = on;
 }
 
+/*!
+  \brief Get restart needed option value
+  \return option value
+*/
+bool QtxPreferenceItem::isRestartRequired() const
+{
+  return myRestartNeeded;
+}
+
+/*!
+  \brief Switch restart needed option on/off
+  \param on option value
+*/
+void QtxPreferenceItem::setRestartRequired( const bool on )
+{
+  myRestartNeeded = on;
+}
+
 /*!
   \fn void QtxPreferenceItem::store();
   \brief Save preference item (for example, to the resource file).
@@ -807,6 +838,8 @@ QVariant QtxPreferenceItem::optionValue( const QString& name ) const
   QVariant val;
   if ( name == "eval" || name == "evaluation" || name == "subst" || name == "substitution" )
     val = isEvaluateValues();
+  else if ( name == "restart" )
+    val = isRestartRequired();
   else if ( name == "title" )
     val = title();
   return val;
@@ -829,6 +862,11 @@ void QtxPreferenceItem::setOptionValue( const QString& name, const QVariant& val
     if ( val.canConvert( QVariant::Bool ) )
       setEvaluateValues( val.toBool() );
   }
+  if ( name == "restart" )
+  {
+    if ( val.canConvert( QVariant::Bool ) )
+      setRestartRequired( val.toBool() );
+  }
   else if ( name == "title" )
   {
     if ( val.canConvert( QVariant::String ) )