]> SALOME platform Git repositories - modules/visu.git/commitdiff
Salome HOME
To improve calculation of "aLimitedMemoryMax"
authorapo <apo@opencascade.com>
Tue, 19 Dec 2006 14:56:14 +0000 (14:56 +0000)
committerapo <apo@opencascade.com>
Tue, 19 Dec 2006 14:56:14 +0000 (14:56 +0000)
src/VISUGUI/VisuGUI_CacheDlg.cxx

index a17535f2fdd7460111ebc7c17f9c2871847b1012..70007bb2dff806fc0a6d877ef81c16a567c63150 100644 (file)
@@ -65,7 +65,9 @@ VisuGUI_CacheDlg::VisuGUI_CacheDlg( VISU::ColoredPrs3dCache_var theCache,
   long aMb = 1024 * 1024;
   bool isLimitedMemory = myCache->GetMemoryMode() == VISU::ColoredPrs3dCache::LIMITED;
   double aLimitedMemory = myCache->GetLimitedMemory();
-  double aLimitedMemoryMax = (double)VISU_PipeLine::GetAvailableMemory( 2048 * aMb ) / (double)aMb;
+  double aFreeMemory = (double)VISU_PipeLine::GetAvailableMemory( 2048 * aMb ) / (double)aMb;
+  double anUsedMemory = myCache->GetMemorySize();
+  double aLimitedMemoryMax = std::max(anUsedMemory + aFreeMemory, aLimitedMemory);
 
   // Settings
   QButtonGroup* aMemoryGroup = new QButtonGroup( 2, Qt::Vertical, tr( "MEMORY_MODE" ), this );
@@ -77,7 +79,7 @@ VisuGUI_CacheDlg::VisuGUI_CacheDlg( VISU::ColoredPrs3dCache_var theCache,
   myMimimalMemoryButton = new QRadioButton( tr( "MINIMAL_MEMORY" ), aMemoryGroup );
   myMimimalMemoryButton->setChecked( !isLimitedMemory );
 
-  myLimitedMemory = new QtxDblSpinBox( 1.0, std::max( aLimitedMemory, aLimitedMemoryMax ), 10.0, aMemoryGroup );
+  myLimitedMemory = new QtxDblSpinBox( 1.0, aLimitedMemoryMax, 10.0, aMemoryGroup );
   myLimitedMemory->setSuffix( " Mb" );
   myLimitedMemory->setValue( aLimitedMemory );
   myLimitedMemory->setEnabled( isLimitedMemory );
@@ -96,14 +98,14 @@ VisuGUI_CacheDlg::VisuGUI_CacheDlg( VISU::ColoredPrs3dCache_var theCache,
 
   QLabel* aUsedMemoryLabel = new QLabel( tr( "USED_BY_CACHE" ), aStateGroup );
   myUsedMemory = new QLineEdit( aStateGroup );
-  myUsedMemory->setText( QString::number( (double)myCache->GetMemorySize() ) + " Mb" );
+  myUsedMemory->setText( QString::number( anUsedMemory ) + " Mb" );
   myUsedMemory->setReadOnly( true );
   myUsedMemory->setEnabled( false );
   myUsedMemory->setPaletteForegroundColor( Qt::black );
 
   QLabel* aFreeMemoryLabel = new QLabel( tr( "FREE" ), aStateGroup );
   myFreeMemory = new QLineEdit( aStateGroup );
-  myFreeMemory->setText( QString::number( aLimitedMemoryMax ) + " Mb" );
+  myFreeMemory->setText( QString::number( aFreeMemory ) + " Mb" );
   myFreeMemory->setReadOnly( true );
   myFreeMemory->setEnabled( false );
   myFreeMemory->setPaletteForegroundColor( Qt::black );