Salome HOME
Moved some functionality to VTKViewer_Utilities.h
[modules/kernel.git] / src / SALOMEGUI / SALOMEGUI_TableDlg.cxx
index 37caa1204981fe9dc1d4434a469ac6fda6e636d7..1b24930b363a6c1f9c73fd0f63f8185c6e8b5831 100644 (file)
@@ -1,12 +1,12 @@
-using namespace std;
-//  File      : SALOMEGUI_TableDlg.cxx
-//  Created   : Wed Dec 25 12:00:00 2002
-//  Descr     : Dialog box for displaying/editing of table
-
-//  Author    : Vadim SANDLER
-//  Project   : SALOME for ALLIANCES
-//  Module    : SALOMEGUI
-//  Copyright : Open CASCADE
+//  SALOME SALOMEGUI : implementation of desktop and GUI kernel
+//
+//  Copyright (C) 2003  CEA/DEN, EDF R&D
+//
+//
+//
+//  File   : SALOMEGUI_TableDlg.cxx
+//  Author : Vadim SANDLER
+//  Module : SALOME
 //  $Header$
 
 #include "SALOMEGUI_TableDlg.h"
@@ -21,6 +21,7 @@ using namespace std;
 #include <qinputdialog.h>
 #include <qlabel.h>
 #include "utilities.h"
+using namespace std;
 
 #define MARGIN_SIZE       11
 #define SPACING_SIZE      6
@@ -201,16 +202,16 @@ void SALOMEGUI_TableDlg::onOK()
              }
              if ( !bEmptyRow ) {  // Skip rows with no data !!!
                // set row title
-               tblIntAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? strdup( "" ) : strdup( rowTitles[ i ] ) ); 
+               tblIntAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? QString( "" ) : QString( rowTitles[ i ] ) ); 
                // set row unit
-               tblIntAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? strdup( "" ) : strdup( units[ i ] ) ); 
+               tblIntAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? QString( "" ) : QString( units[ i ] ) ); 
                nRow++;
              }
            }
            if ( nRow > 0 ) { // Set columns only if table is not empty, otherwise exception is raised !!!
              // column titles
              for ( i = 0; i < colTitles.count(); i++ )
-               tblIntAttr->SetColumnTitle( i+1, colTitles[ i ].isNull() ? strdup( "" ) : strdup( colTitles[ i ] ) );
+               tblIntAttr->SetColumnTitle( i+1, colTitles[ i ].isNull() ? QString( "" ) : QString( colTitles[ i ] ) );
            }
          }
          // title
@@ -246,16 +247,16 @@ void SALOMEGUI_TableDlg::onOK()
              }
              if ( !bEmptyRow ) {  // Skip rows with no data !!!
                // set row title
-               tblRealAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? strdup( "" ) : strdup( rowTitles[ i ] ) ); 
+               tblRealAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? QString( "" ) : QString( rowTitles[ i ] ) ); 
                // set row unit
-               tblRealAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? strdup( "" ) : strdup( units[ i ] ) ); 
+               tblRealAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? QString( "" ) : QString( units[ i ] ) ); 
                nRow++;
              }
            }
            if ( nRow > 0 ) { // Set columns only if table is not empty, otherwise exception is raised !!!
              // column titles
              for ( i = 0; i < colTitles.count(); i++ )
-               tblRealAttr->SetColumnTitle( i+1, colTitles[ i ].isNull() ? strdup( "" ) : strdup( colTitles[ i ] ) );
+               tblRealAttr->SetColumnTitle( i+1, colTitles[ i ].isNull() ? QString( "" ) : QString( colTitles[ i ] ) );
            }
          }
          // title
@@ -299,7 +300,7 @@ void SALOMEGUI_TableDlg::initDlg()
       try {
        SALOMEGUI_Table* tbl = myIntTable->getTable();
        // title
-       myIntTable->setTableTitle( strdup( tblIntAttr->GetTitle() ) );
+       myIntTable->setTableTitle( CORBA::string_dup( tblIntAttr->GetTitle() ) );
        // nb of rows & cols
        int nbRows = tblIntAttr->GetNbRows() ; 
        int nbCols = tblIntAttr->GetNbColumns();
@@ -310,7 +311,7 @@ void SALOMEGUI_TableDlg::initDlg()
        SALOMEDS::StringSeq_var rowTitles = tblIntAttr->GetRowTitles();
        for ( i = 0; i < nbRows; i++ ) {
          if ( rowTitles->length() > 0 )
-           strlist.append( strdup( rowTitles[i] ) );
+           strlist.append( CORBA::string_dup( rowTitles[i] ) );
          else
            strlist.append( "" );
        }
@@ -320,7 +321,7 @@ void SALOMEGUI_TableDlg::initDlg()
        SALOMEDS::StringSeq_var colTitles = tblIntAttr->GetColumnTitles();
        for ( i = 0; i < nbCols; i++ ) {
          if ( colTitles->length() > 0 )
-           strlist.append( strdup( colTitles[i] ) );
+           strlist.append( CORBA::string_dup( colTitles[i] ) );
          else
            strlist.append( "" );
        }
@@ -330,7 +331,7 @@ void SALOMEGUI_TableDlg::initDlg()
        SALOMEDS::StringSeq_var rowUnits = tblIntAttr->GetRowUnits();
        if ( rowUnits->length() > 0 ) {
          for ( i = 0; i < nbRows; i++ )
-           strlist.append( strdup( rowUnits[i] ) );
+           strlist.append( CORBA::string_dup( rowUnits[i] ) );
          myIntTable->setUnits( strlist );
        }
        // data
@@ -355,7 +356,7 @@ void SALOMEGUI_TableDlg::initDlg()
       try {
        SALOMEGUI_Table* tbl = myRealTable->getTable();
        // title
-       myRealTable->setTableTitle( strdup( tblRealAttr->GetTitle() ) );
+       myRealTable->setTableTitle( CORBA::string_dup( tblRealAttr->GetTitle() ) );
        // nb of rows & cols
        int nbRows = tblRealAttr->GetNbRows() ; 
        int nbCols = tblRealAttr->GetNbColumns();
@@ -366,7 +367,7 @@ void SALOMEGUI_TableDlg::initDlg()
        SALOMEDS::StringSeq_var rowTitles = tblRealAttr->GetRowTitles();
        for ( i = 0; i < nbRows; i++ ) {
          if ( rowTitles->length() > 0 )
-           strlist.append( strdup( rowTitles[i] ) );
+           strlist.append( CORBA::string_dup( rowTitles[i] ) );
          else
            strlist.append( "" );
        }
@@ -376,7 +377,7 @@ void SALOMEGUI_TableDlg::initDlg()
        SALOMEDS::StringSeq_var colTitles = tblRealAttr->GetColumnTitles();
        for ( i = 0; i < nbCols; i++ ) {
          if ( colTitles->length() > 0 )
-           strlist.append( strdup( colTitles[i] ) );
+           strlist.append( CORBA::string_dup( colTitles[i] ) );
          else
            strlist.append( "" );
        }
@@ -386,7 +387,7 @@ void SALOMEGUI_TableDlg::initDlg()
        SALOMEDS::StringSeq_var rowUnits = tblRealAttr->GetRowUnits();
        if ( rowUnits->length() > 0 ) {
          for ( i = 0; i < nbRows; i++ )
-           strlist.append( strdup( rowUnits[i] ) );
+           strlist.append( CORBA::string_dup( rowUnits[i] ) );
          myRealTable->setUnits( strlist );
        }
         // data
@@ -578,9 +579,10 @@ void SALOMEGUI_TableWidget::setColTitles( QStringList& tlts )
   // !!! first column contains units !!!
   for ( int i = 0; i < tlts.count(); i++ ) {
     myOrientation == Horizontal ? 
-      myTable->horizontalHeader()->setLabel( i+1, tlts[i] ) :
-      myTable->verticalHeader()->setLabel( i+1, tlts[i] );
+      myTable->horizontalHeader()->setLabel( i+1, tlts[i].isNull() ? "" : tlts[i] ) :
+      myTable->verticalHeader()->setLabel( i+1, tlts[i].isNull() ? "" : tlts[i] );
   }
+  setUnitsTitle( tr( "UNITS_TLT" ) );
 }
 /*!
   Sets columns titles
@@ -605,7 +607,7 @@ void SALOMEGUI_TableWidget::getColTitles( QStringList& tlts )
 */
 void SALOMEGUI_TableWidget::setUnitsTitle( const QString& tlt ) {
   // !!! first column contains units !!!
-  myOrientation == Horizontal ? myTable->horizontalHeader()->setLabel( 0, tlt ) : myTable->verticalHeader()->setLabel( 0, tlt );
+  myOrientation == Horizontal ? myTable->horizontalHeader()->setLabel( 0, tlt.isNull() ? "" : tlt ) : myTable->verticalHeader()->setLabel( 0, tlt.isNull() ? "" : tlt );
 }
 /*!
   Sets units
@@ -613,7 +615,7 @@ void SALOMEGUI_TableWidget::setUnitsTitle( const QString& tlt ) {
 void SALOMEGUI_TableWidget::setUnits( QStringList& units )
 {
   for ( int i = 0; i < units.count(); i++ ) {
-    myOrientation == Horizontal ? myTable->setText( i, 0, units[i] ) : myTable->setText( 0, i, units[i] );
+    myOrientation == Horizontal ? myTable->setText( i, 0, units[i].isNull() ? "" : units[i] ) : myTable->setText( 0, i, units[i].isNull() ? "" : units[i] );
   }
 }
 /*!