]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
0020709: EDF GUI : Changes the font with qtconfig, no effect ?
authordmv <dmv@opencascade.com>
Sat, 27 Feb 2010 08:55:32 +0000 (08:55 +0000)
committerdmv <dmv@opencascade.com>
Sat, 27 Feb 2010 08:55:32 +0000 (08:55 +0000)
src/Style/Style_Model.cxx
src/Style/Style_Salome.cxx

index e3f8fd6cab6a184407c1ad6ba0e54cd79a9f93cb..a4d680c05d027a6a1fe5b8e83d208212625a4156 100644 (file)
@@ -23,6 +23,7 @@
 // Author : Vadim SANDLER, Open CASCADE S.A.S (vadim.sandler@opencascade.com)
 //
 #include "Style_Model.h"
+#include "Style_Salome.h"
 
 #include <QtxResourceMgr.h>
 
@@ -106,10 +107,11 @@ void Style_Model::fromApplication( bool reset )
   if ( !QApplication::instance() )  // application object is not created yet
     return;
 
-  if ( !myAppData )  {
-    // if not yes initialized from the application,
-    // store current application's style, palette, etc
+  if ( !myAppData ) // if not yes initialized from the application init myAppData
     myAppData = new AppData;
+
+  // store original application's style, palette, etc
+  if ( !Style_Salome::isActive() ) {
     myAppData->myStyle   = QApplication::style();
     myAppData->myPalette = QApplication::palette();
     myAppData->myFont    = QApplication::font();
index 82d58ff717390342549d985385f4a325ccf47d25..aa430602e33a658d42f21d57a4bf7b12ee53b829 100644 (file)
@@ -259,6 +259,7 @@ void Style_Salome::apply()
     // set SALOME style
     QApplication::style()->setParent( 0 );           // avoid deleting original application style
     QApplication::setStyle( new Style_Salome() );    // set style
+    QApplication::setDesktopSettingsAware(false);    // prevent the style changing from another tools
   }
   update();                                          // update style
 }
@@ -275,6 +276,9 @@ void Style_Salome::restore()
   // check if SALOME style is set to the application
   if ( !isActive() )
     return;
+
+  QApplication::setDesktopSettingsAware(true);
+
   // restore previous style
   model()->restore();
 }