]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Porting to Qt4.
authormkr <mkr@opencascade.com>
Thu, 7 Jun 2007 09:10:31 +0000 (09:10 +0000)
committermkr <mkr@opencascade.com>
Thu, 7 Jun 2007 09:10:31 +0000 (09:10 +0000)
src/Makefile.am
src/RegistryDisplay/HelpWindow.cxx
src/RegistryDisplay/HelpWindow.hxx
src/RegistryDisplay/IntervalWindow.cxx
src/RegistryDisplay/IntervalWindow.hxx
src/RegistryDisplay/RegWidget.cxx
src/RegistryDisplay/RegWidget.h
src/RegistryDisplay/RegWidgetFactory.cxx
src/RegistryDisplay/RegistryDisplay.pro [new file with mode: 0644]
src/src.pro

index 91611e0096071a255ef29be8fbecc3e9766581ce..abd3ee61a4c12f0efb392836aeff8fa9bb81364d 100755 (executable)
@@ -98,5 +98,5 @@ if GUI_ENABLE_CORBA
 #  SUBDIRS += RegistryDisplay TOOLSGUI \
 #          Session SalomeApp SALOME_SWIG SALOME_PY SALOME_PYQT
 # VSR: already migrated to Qt4 packages
-  SUBDIRS += 
+  SUBDIRS += RegistryDisplay
 endif
index a94773105fe81b861dd12b4b2f3745c9e405f3ad..b407afea223850533c48d7e7717aee4dbe25abd3 100755 (executable)
 # include "HelpWindow.hxx"
 # include "utilities.h"
 
-# include <qtextview.h>
-# include <qpushbutton.h>
-# include <qtextstream.h
-# include <qfile.h> 
+# include <QTextEdit>
+# include <QTextStream> 
+# include <QFile
+# include <QColorGroup>
 
 using namespace std;
 
@@ -40,42 +40,45 @@ using namespace std;
   Constructor
 */
 HelpWindow::HelpWindow(QWidget* parent, const char* name ) 
-     : QMainWindow( parent, name, WType_TopLevel | WDestructiveClose )
+  : QMainWindow( parent, Qt::Window )
 {
   BEGIN_OF("Constructeur HelpWindow");
-  
-  setCaption( tr( "Help" ) );
 
-  myTextView = new QTextView( this, "myTextView" );
+  setObjectName( name );
+  setAttribute( Qt::WA_DeleteOnClose );
+
+  setWindowTitle( tr( "Help" ) );
+
+  myTextView = new QTextEdit( this );
+  myTextView->setObjectName( "myTextView" );
+  myTextView->setReadOnly( true );
   QPalette pal = myTextView->palette();
-  QColorGroup cg = pal.active();
-  cg.setColor( QColorGroup::Highlight, QColor( 0, 0, 128) );
-  cg.setColor( QColorGroup::HighlightedText, Qt::white );
-  cg.setColor( QColorGroup::Base, QColor( 255,255,220 )  ); 
-  cg.setColor( QColorGroup::Text, Qt::black );
-  pal.setActive  ( cg );
-  cg = pal.inactive();
-  cg.setColor( QColorGroup::Highlight, QColor( 0, 0, 128) );
-  cg.setColor( QColorGroup::HighlightedText, Qt::white );
-  cg.setColor( QColorGroup::Base, QColor( 255,255,220 )  ); 
-  cg.setColor( QColorGroup::Text, Qt::black );
-  pal.setInactive( cg );
-  cg = pal.disabled();
-  cg.setColor( QColorGroup::Highlight, QColor( 0, 0, 128) );
-  cg.setColor( QColorGroup::HighlightedText, Qt::white );
-  cg.setColor( QColorGroup::Base, QColor( 255,255,220 )  ); 
-  cg.setColor( QColorGroup::Text, Qt::black );
-  pal.setDisabled( cg );
+
+  pal.setBrush( QPalette::Active, QPalette::Highlight,       QBrush( QColor( 0, 0, 128 ) ) );
+  pal.setBrush( QPalette::Active, QPalette::HighlightedText, QBrush( Qt::white ) );
+  pal.setBrush( QPalette::Active, QPalette::Base,            QBrush( QColor( 255,255,220 ) ) );
+  pal.setBrush( QPalette::Active, QPalette::Text,            QBrush( Qt::black ) );
+
+  pal.setBrush( QPalette::Inactive, QPalette::Highlight,       QBrush( QColor( 0, 0, 128 ) ) );
+  pal.setBrush( QPalette::Inactive, QPalette::HighlightedText, QBrush( Qt::white ) );
+  pal.setBrush( QPalette::Inactive, QPalette::Base,            QBrush( QColor( 255,255,220 ) ) );
+  pal.setBrush( QPalette::Inactive, QPalette::Text,            QBrush( Qt::black ) );
+
+  pal.setBrush( QPalette::Disabled, QPalette::Highlight,       QBrush( QColor( 0, 0, 128 ) ) );
+  pal.setBrush( QPalette::Disabled, QPalette::HighlightedText, QBrush( Qt::white ) );
+  pal.setBrush( QPalette::Disabled, QPalette::Base,            QBrush( QColor( 255,255,220 ) ) );
+  pal.setBrush( QPalette::Disabled, QPalette::Text,            QBrush( Qt::black ) );
+
   myTextView->setPalette( pal );
   
   setCentralWidget( myTextView );
   setMinimumSize( 450, 250 );
 
   QFile f ( "tmp.txt" );
-  if ( f.open( IO_ReadOnly ) )   
+  if ( f.open( QIODevice::ReadOnly ) )   
     {
       QTextStream t( &f ); 
-      while ( !t.eof() ) 
+      while ( !t.atEnd() ) 
        {
          myTextView->append(t.readLine());
        }
index 31f6405decb4e51aa9c5e4a0e6bae1413fb6f46e..b63e90cea1720ff9f28edcc6b873fb435ed3a25e 100755 (executable)
 #ifndef __HELPWINDOW_H__
 #define __HELPWINDOW_H__
 
-#include <qapplication.h>
-#include <qmainwindow.h>
+#include <QMainWindow>
 
-class QTextView;
+class QTextEdit;
 
 class HelpWindow : public QMainWindow
 {
@@ -43,10 +42,10 @@ public:
   ~HelpWindow();
 
   void setText( const QString& text );
-  QTextView* textView() const { return myTextView; }
+  QTextEdit* textView() const { return myTextView; }
 
 private:
-  QTextView* myTextView;
+  QTextEdit* myTextView;
 };
 
 #endif
index 780a876b42e2650151ecfda7657f3022f70c0ba2..83e5a6dc0bbdde23221ec96fc2bc7341353c1cf9 100755 (executable)
 
 #include <IntervalWindow.hxx>
 
-#include <qbuttongroup.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qlayout.h>
+#include <QWidget>
+#include <QLabel>
+#include <QPushButton>
+#include <QSpinBox>
+#include <QGridLayout>
+#include <QGroupBox>
 # include "utilities.h"
 
 #define MARGIN_SIZE      11
   Constructor
 */
 IntervalWindow::IntervalWindow ( QWidget* parent )
-     : QDialog( parent, "IntervalWindow" , true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose )
+     : QDialog( parent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint )
 {
   BEGIN_OF("IntervalWindow constructor")
-  setCaption( tr( "Refresh Interval"  ) );
+
+  setObjectName( "IntervalWindow" );
+  setModal( true );
+  setAttribute( Qt::WA_DeleteOnClose );
+
+  setWindowTitle( tr( "Refresh Interval"  ) );
   setSizeGripEnabled( true );
 
   QGridLayout* topLayout = new QGridLayout( this );
   topLayout->setSpacing( SPACING_SIZE );
   topLayout->setMargin( MARGIN_SIZE );
 
-  QGroupBox* intervalGrp = new QGroupBox( this, "intervalGrp" );
-  intervalGrp->setColumnLayout( 0, Qt::Horizontal );//Vertical
-  intervalGrp->layout()->setSpacing( 0 );
-  intervalGrp->layout()->setMargin( 0 );
-  QGridLayout* intervalGrpLayout = new QGridLayout( intervalGrp->layout() );
+  QGroupBox* intervalGrp = new QGroupBox( this );
+  intervalGrp->setObjectName( "intervalGrp" );
+  QGridLayout* intervalGrpLayout = new QGridLayout( intervalGrp );
   intervalGrpLayout->setAlignment( Qt::AlignTop );
   intervalGrpLayout->setSpacing( SPACING_SIZE );
   intervalGrpLayout->setMargin( MARGIN_SIZE  );  
@@ -61,19 +66,26 @@ IntervalWindow::IntervalWindow ( QWidget* parent )
   aBtnLayout->setSpacing( SPACING_SIZE );
   aBtnLayout->setMargin( 0 );
 
-  myButtonOk = new QPushButton( this, "buttonOk" );
+  myButtonOk = new QPushButton( this );
+  myButtonOk->setObjectName( "buttonOk" );
   myButtonOk->setText( tr( "BUT_OK"  ) );
   myButtonOk->setAutoDefault( TRUE );
   myButtonOk->setDefault( TRUE );
   
-  myButtonCancel = new QPushButton( this, "buttonCancel" );
+  myButtonCancel = new QPushButton( this );
+  myButtonCancel->setObjectName( "buttonCancel" );
   myButtonCancel->setText( tr( "BUT_CANCEL"  ) );
   myButtonCancel->setAutoDefault( TRUE );
 
-  QLabel* TextLabel = new QLabel( intervalGrp, "TextLabel" );
+  QLabel* TextLabel = new QLabel( intervalGrp );
+  TextLabel->setObjectName( "TextLabel" );
   TextLabel->setText( tr( "Please, enter a number of seconds:"  ) );
 
-  mySpinBox = new QSpinBox( 1, 999999999, 1, intervalGrp, "SpinBox" );
+  mySpinBox = new QSpinBox( intervalGrp );
+  mySpinBox->setMinimum( 1 );
+  mySpinBox->setMaximum( 999999999 );
+  mySpinBox->setSingleStep( 1 );
+  mySpinBox->setObjectName( "SpinBox" );
   mySpinBox->setValue( 100 );
   mySpinBox->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
   mySpinBox->setMinimumWidth(MIN_SPIN_WIDTH);
index 7e746ed5114738bc5740fd338722ff539993f3a5..f1d78e803bed859e1564134a3425c57c8f75e8dd 100755 (executable)
 #ifndef IntervalWindow_HeaderFile
 #define IntervalWindow_HeaderFile
 
-# include <qwidget.h>
-# include <qdialog.h>
-# include <qpushbutton.h>
-# include <qspinbox.h>
+# include <QDialog>
+
+class QWidget;
+class QPushButton;
+class QSpinBox;
 
 #ifndef WIN32
 using namespace std;
index bd6da2cda4fbfec0a55f670ce49fd68ae29b9222..51cde7087f7d81f5089299105514a78910d7cd2f 100755 (executable)
 //  Module : SALOME
 //  $Header$
 
-# include <qpushbutton.h>
-# include <qlistview.h>
-# include <qtabwidget.h> 
-# include <qstatusbar.h>
-# include <qtextview.h>
-# include <qtimer.h>
-# include <qinputdialog.h>
-# include <qtoolbar.h>
-# include <qdir.h>
-# include <qtooltip.h>
+# include <QAction>
+# include <QPushButton>
+# include <QTreeWidget>
+# include <QTabWidget> 
+# include <QStatusBar>
+# include <QTextEdit>
+# include <QTimer>
+# include <QToolBar>
+//# include <QDir>
+# include <QToolTip>
+# include <QEvent>
+# include <QKeyEvent>
+# include <QCloseEvent>
+# include <QFileInfo>
 
 # include "SALOME_NamingService.hxx"
 # include "ServiceUnreachable.hxx"
@@ -178,16 +182,29 @@ RegWidget* RegWidget::GetRegWidget( CORBA::ORB_var &orb , QWidget *parent, const
   return myRegWidgetPtr;
 }
 
+/*!
+  Reimplement this virtual function to disable popup menu on dock areas
+  (instead of QMainWindow::setDockMenuEnabled( false ) method calling in Qt3)  
+*/
+QMenu* createPopupMenu()
+{
+  QMenu* aPopup = 0;
+  return aPopup;
+}
+
 /*!
   Constructor  
 */
 RegWidget::RegWidget(CORBA::ORB_var &orb, QWidget *parent, const char *name ) 
-     : QMainWindow( parent, name, WType_TopLevel | WDestructiveClose ),
+     : QMainWindow( parent, Qt::Window ),
        _VarComponents( MakeRegistry(orb) ),
        _clients(0), _history(0), _parent( parent ),
        _tabWidget(0), _refresh(0), _interval(0),
        myInfoWindow(0), myHelpWindow(0), myIntervalWindow(0)
 {
+  setObjectName( name );
+  setAttribute( Qt::WA_DeleteOnClose );
+
    QString aFile = findFile("default.png");
  /* char* dir = getenv( "CSF_ResourcesDefaults" );
   QString path( "" );
@@ -197,7 +214,7 @@ RegWidget::RegWidget(CORBA::ORB_var &orb, QWidget *parent, const char *name )
   }*/
   QPixmap pm ( aFile );
   if ( !pm.isNull() )
-    setIcon( pm );
+    setWindowIcon( pm );
 
   // pixmap for buttons
   QPixmap image_refresh ( ( const char** ) refresh_data );
@@ -206,46 +223,41 @@ RegWidget::RegWidget(CORBA::ORB_var &orb, QWidget *parent, const char *name )
 
   // Buttons definition
   QToolBar* topbar = new QToolBar( tr("Toolbar"), this );
-  setDockEnabled( topbar, DockTornOff, false );
-  setDockMenuEnabled( false );
-
-  _refresh = new QPushButton( tr( "Refresh" ), topbar );
-  _refresh->setIconSet( image_refresh );
-  _refresh->setFocusPolicy( NoFocus );
-  connect( _refresh, SIGNAL( clicked() ), this, SLOT( slotListeSelect() ) );
-  QToolTip::add( _refresh, "", toolTipGroup(), tr("Immediately updates list of components") );
-  
+  topbar->setToolButtonStyle( Qt::ToolButtonTextBesideIcon );
+  addToolBar( Qt::TopToolBarArea, topbar );
+
+  _refresh = topbar->addAction(image_refresh, tr( "Refresh" ), this, SLOT( slotListeSelect() ));
+  _refresh->setToolTip( "" );
+  _refresh->setStatusTip( tr("Immediately updates list of components") );
+    
   /* PAL5540 - this button is needless
   QPushButton* help = new QPushButton( tr( "Help" ), topbar );
   connect( help, SIGNAL( clicked() ), this, SLOT( slotHelp() ) );
   QToolTip::add( help, "", toolTipGroup(), tr("Opens Help window") );
   */
   
-  _interval = new QPushButton( tr( "Interval" ), topbar );
-  _interval->setIconSet( image_interval );
-  _interval->setFocusPolicy( NoFocus );
-  connect( _interval, SIGNAL( clicked() ), this, SLOT( slotSelectRefresh() ) );
-  QToolTip::add( _interval, "", toolTipGroup(), tr("Changes refresh interval") );
+  _interval = topbar->addAction(image_interval, tr( "Interval" ), this, SLOT( slotSelectRefresh() ));
+  _interval->setToolTip( "" );
+  _interval->setStatusTip( tr("Changes refresh interval") );
   
   topbar->addSeparator();
-  _close = new QPushButton( tr("Close"), topbar );
-  _close->setIconSet( image_close );
-  _close->setFocusPolicy( NoFocus );
-  connect( _close, SIGNAL( clicked() ), this, SLOT( close() ) );
-  QToolTip::add( _close, "", toolTipGroup(), tr("Closes Registry window") );
+  
+  _close = topbar->addAction( image_close, tr("Close"), this, SLOT( close() ));
+  _close->setToolTip( "" );
+  _close->setStatusTip( tr("Closes Registry window") );
   
   // Display area and associated slots definition
   _tabWidget = new QTabWidget( this );
-  _clients   = new QListView( _tabWidget );
+  _clients   = new QTreeWidget( _tabWidget );
   SetListe();
-  _history   = new QListView( _tabWidget );
+  _history   = new QTreeWidget( _tabWidget );
   SetListeHistory();
   
   _tabWidget->addTab( _clients, tr( "Running" ) );
   _tabWidget->addTab( _history, tr( "History" ) );
   connect( _tabWidget, SIGNAL( currentChanged( QWidget* )), this, SLOT( slotListeSelect() ) );
-  connect( _clients,   SIGNAL( clicked( QListViewItem* ) ),        this, SLOT( slotClientChanged( QListViewItem* ) ) );
-  connect( _history,   SIGNAL( clicked( QListViewItem* ) ),        this, SLOT( slotHistoryChanged( QListViewItem* ) ) );
+  connect( _clients,   SIGNAL( clicked( QTreeWidgetItem* ) ),        this, SLOT( slotClientChanged( QTreeWidgetItem* ) ) );
+  connect( _history,   SIGNAL( clicked( QTreeWidgetItem* ) ),        this, SLOT( slotHistoryChanged( QTreeWidgetItem* ) ) );
   setCentralWidget( _tabWidget );
   
   // Timer definition (used to automaticaly refresh the display area)
@@ -259,8 +271,8 @@ RegWidget::RegWidget(CORBA::ORB_var &orb, QWidget *parent, const char *name )
   PIXELS largeur = 800 ;
   PIXELS hauteur = 350 ;
   setGeometry( xpos, ypos, largeur, hauteur ) ;
-  setCaption( name ) ;
-  statusBar()->message("    ");
+  setWindowTitle( name ) ;
+  statusBar()->showMessage("    ");
 }
 
 /*!
@@ -290,13 +302,13 @@ bool RegWidget::eventFilter( QObject* object, QEvent* event )
     }
     else if ( object == _clients && event->type() == QEvent::KeyPress ) {
       QKeyEvent* ke = (QKeyEvent*)event;
-      if ( ke->key() == Key_Enter || ke->key() == Key_Return ) {
+      if ( ke->key() == Qt::Key_Enter || ke->key() == Qt::Key_Return ) {
        slotClientChanged( _clients->currentItem() );
       }
     }
     else if ( object == _history && event->type() == QEvent::KeyPress ) {
       QKeyEvent* ke = (QKeyEvent*)event;
-      if ( ke->key() == Key_Enter || ke->key() == Key_Return ) {
+      if ( ke->key() == Qt::Key_Enter || ke->key() == Qt::Key_Return ) {
        slotHistoryChanged( _history->currentItem() );
       }
     }
@@ -424,14 +436,12 @@ void RegWidget::SetListe()
 {
   BEGIN_OF("SetListe");
   _clients->installEventFilter( this );
+  _clients->setColumnCount(6);
   _clients->setAllColumnsShowFocus( true );
-  _clients->addColumn( tr( "Component" ), -1);
-  _clients->addColumn( tr( "PID" ), -1 );
-  _clients->addColumn( tr( "User Name" ), -1 );
-  _clients->addColumn( tr( "Machine" ), -1 );
-  _clients->addColumn( tr( "begins" ), -1 );
-  _clients->addColumn( tr( "hello" ) , -1 );
-  _clients->setColumnAlignment( 1, Qt::AlignRight );
+  QStringList aLabels;
+  aLabels << tr("Component") << tr("PID") << tr("User Name") << tr("Machine") << tr("begins") << tr("hello");
+  _clients->setHeaderLabels( aLabels );
+  //_clients->setColumnAlignment( 1, Qt::AlignRight );
   END_OF("SetListe");
 }
 
@@ -440,17 +450,15 @@ void RegWidget::SetListe()
 */
 void RegWidget::SetListeHistory()
 {
-   BEGIN_OF("SetListeHistory")
+  BEGIN_OF("SetListeHistory");
   _history->installEventFilter( this );
+  _history->setColumnCount(6);
   _history->setAllColumnsShowFocus( true );
-  _history->addColumn( tr( "Component" ), -1);
-  _history->addColumn( tr( "PID" ), -1 );
-  _history->addColumn( tr( "User Name" ), -1 );
-  _history->addColumn( tr( "Machine" ), -1 );
-  _history->addColumn( tr( "begins" ), -1 );
-  _history->addColumn( tr( "ends" ), -1 );
-  _history->setColumnAlignment( 1, Qt::AlignRight );
-   END_OF("SetListeHistory")
+  QStringList aLabels;
+  aLabels << tr("Component") << tr("PID") << tr("User Name") << tr("Machine") << tr("begins") << tr("ends");
+  _history->setHeaderLabels( aLabels );
+  //_history->setColumnAlignment( 1, Qt::AlignRight );
+  END_OF("SetListeHistory");
 }
 
 /*!
@@ -477,9 +485,9 @@ void RegWidget::InfoHistory()
          aTime = time_t(c_info.tc_end);
          char * t2 = (char * )duplicate(ctime(&aTime));
          t2 [strlen(t2) -1 ] = ' ';
-         QListViewItem * item = new QListViewItem(_history, QString(c_info.name),\
-                                                  a, QString(c_info.pwname), QString(c_info.machine), \
-                                                  QString(t1), QString(t2));
+         QStringList anItem;
+         anItem << QString(c_info.name) << a << QString(c_info.pwname) << QString(c_info.machine) << QString(t1) << QString(t2);
+         QTreeWidgetItem * item = new QTreeWidgetItem(_history, anItem);
          item=0 ;
          delete [] t1;
          delete [] t2;
@@ -492,7 +500,7 @@ void RegWidget::InfoHistory()
       _refresh->setDisabled( TRUE ) ;
       _counter->stop();
       MESSAGE("Sorry, No more Registry Server") ;
-      statusBar()->message( tr( "Sorry, No more Registry Server" ) ) ;
+      statusBar()->showMessage( tr( "Sorry, No more Registry Server" ) ) ;
     }
   END_OF("InfoHistory")
 }
@@ -520,9 +528,9 @@ void RegWidget::InfoReg()
          aTime = time_t(c_info.tc_hello);
          char * t2 = (char * )duplicate(ctime(&aTime));
          t2 [strlen(t2) -1 ] = ' ';
-         QListViewItem * item = new QListViewItem(_clients, QString(c_info.name),\
-                                                  a, QString(c_info.pwname), QString(c_info.machine), \
-                                                  QString(t1), QString(t2));
+         QStringList anItem;
+         anItem << QString(c_info.name) << a << QString(c_info.pwname) << QString(c_info.machine) << QString(t1) << QString(t2);
+         QTreeWidgetItem * item = new QTreeWidgetItem(_clients, anItem);
          item=0 ;
          delete [] t1;
          delete [] t2;
@@ -535,7 +543,7 @@ void RegWidget::InfoReg()
       _refresh->setDisabled( TRUE ) ;
       _counter->stop();
       MESSAGE("Sorry, No more Registry Server") ;
-      statusBar()->message( tr( "Sorry, No more Registry Server" ) ) ;
+      statusBar()->showMessage( tr( "Sorry, No more Registry Server" ) ) ;
     }
   END_OF("InfoReg")
 }
@@ -547,14 +555,14 @@ void RegWidget::slotListeSelect()
 {
   try
     {
-      ASSERT(_tabWidget->currentPage() != NULL);
-      if (_tabWidget->currentPage () == _clients) InfoReg();
-      else if (_tabWidget->currentPage () == _history) InfoHistory();
+      ASSERT(_tabWidget->currentWidget() != NULL);
+      if (_tabWidget->currentWidget () == _clients) InfoReg();
+      else if (_tabWidget->currentWidget () == _history) InfoHistory();
     }
   catch( ... )
     {
       MESSAGE("Sorry, No more Registry Server") ;
-      statusBar()->message( tr( "Sorry, No more Registry Server" ) ) ;
+      statusBar()->showMessage( tr( "Sorry, No more Registry Server" ) ) ;
     }
 }
 
@@ -580,7 +588,7 @@ void RegWidget::slotIntervalOk()
 {
   BEGIN_OF("slotIntervalOk");
   myRefreshInterval = myIntervalWindow->getValue();
-  _counter->changeInterval( myRefreshInterval * 1000 );
+  _counter->start( myRefreshInterval * 1000 );
   SCRUTE(myRefreshInterval);
   myIntervalWindow->close();
   END_OF("slotIntervalOk");
@@ -598,7 +606,7 @@ void RegWidget::slotHelp()
   }
   myHelpWindow->show();
   myHelpWindow->raise();
-  myHelpWindow->setActiveWindow();
+  myHelpWindow->activateWindow();
   
   END_OF("slotHelp()") ;
 }
@@ -606,7 +614,7 @@ void RegWidget::slotHelp()
 /*!
   Called when user clicks on item in <Running> list
 */
-void RegWidget::slotClientChanged( QListViewItem* item )
+void RegWidget::slotClientChanged( QTreeWidgetItem* item )
 {
   BEGIN_OF("slotClientChanged()") ;
 
@@ -617,7 +625,7 @@ void RegWidget::slotClientChanged( QListViewItem* item )
 
   int numeroItem = numitem(item->text(0), item->text(1), item->text(3), _serverclients);
   SCRUTE(numeroItem) ;
-  SCRUTE(item->text(1)) ;
+  SCRUTE(item->text(1).toLatin1().constData()) ;
   
   ASSERT(numeroItem>=0) ;
   ASSERT((size_t)numeroItem<_serverclients->length()) ;
@@ -629,11 +637,11 @@ void RegWidget::slotClientChanged( QListViewItem* item )
     myInfoWindow->installEventFilter( this );
   }
   QString a = tr( "More about" ) + QString( " " ) + QString( c_info.name );
-  myInfoWindow->setCaption(a);
+  myInfoWindow->setWindowTitle(a);
   myInfoWindow->setText( RegWidget::setlongText( c_info) );
   myInfoWindow->show();
   myInfoWindow->raise();
-  myInfoWindow->setActiveWindow();
+  myInfoWindow->activateWindow();
 
   blockSignals( false ); // enabling signals again
 
@@ -644,7 +652,7 @@ void RegWidget::slotClientChanged( QListViewItem* item )
 /*!
   Called when user clicks on item in <History> list
 */
-void RegWidget::slotHistoryChanged( QListViewItem* item )
+void RegWidget::slotHistoryChanged( QTreeWidgetItem* item )
 {
 
   BEGIN_OF("slotHistoryChanged()") ;
@@ -657,7 +665,7 @@ void RegWidget::slotHistoryChanged( QListViewItem* item )
   int numeroItem = numitem(item->text(0), item->text(1), item->text(3), _serverhistory);
   
   SCRUTE(numeroItem) ;
-  SCRUTE(item->text(1)) ;
+  SCRUTE(item->text(1).toLatin1().constData()) ;
   ASSERT(numeroItem>=0) ;
   ASSERT((size_t)numeroItem<_serverhistory->length()) ;
   const Registry::Infos & c_info=(*_serverhistory)[numeroItem];
@@ -668,11 +676,11 @@ void RegWidget::slotHistoryChanged( QListViewItem* item )
     myInfoWindow->installEventFilter( this );
   }
   QString a = tr( "More about" ) + QString( " " ) + QString( c_info.name );
-  myInfoWindow->setCaption(a);
+  myInfoWindow->setWindowTitle(a);
   myInfoWindow->setText( RegWidget::setlongText( c_info ) );
   myInfoWindow->show();
   myInfoWindow->raise();
-  myInfoWindow->setActiveWindow();
+  myInfoWindow->activateWindow();
 
   blockSignals( false ); // enabling signals again
 
@@ -684,10 +692,16 @@ void RegWidget::slotHistoryChanged( QListViewItem* item )
   Constructor
 */
 InfoWindow::InfoWindow( QWidget* parent, const char* name )
-     : QMainWindow( parent, name, WType_TopLevel | WDestructiveClose )
+     : QMainWindow( parent, Qt::Window )
 {
   BEGIN_OF("InfoWindow");
-  myTextView = new QTextView( this, "myTextView" );
+
+  setObjectName( name );
+  setAttribute( Qt::WA_DeleteOnClose );
+
+  myTextView = new QTextEdit( this );
+  myTextView->setObjectName( "myTextView" );
+  myTextView->setReadOnly( true );
   setCentralWidget( myTextView );
   setMinimumSize( 450, 250 );
   END_OF("InfoWindow");
@@ -707,7 +721,7 @@ void InfoWindow::setText( const QString& text )
 void InfoWindow::keyPressEvent( QKeyEvent * e )
 {
   QMainWindow::keyPressEvent( e );
-  if ( e->key() == Key_Escape )
+  if ( e->key() == Qt::Key_Escape )
     close();
 }
 
@@ -795,7 +809,7 @@ QString findFile( QString filename )
   if ( cenv ) {
     dir.sprintf( "%s", cenv );
     if ( !dir.isEmpty() ) {
-      QStringList dirList = QStringList::split( SEPARATOR, dir, false ); // skip empty entries
+      QStringList dirList = dir.split( SEPARATOR, QString::SkipEmptyParts ); // skip empty entries
       for ( int i = 0; i < dirList.count(); i++ ) {
        QFileInfo fileInfo( addSlash( dirList[ i ] ) + filename );
        if ( fileInfo.isFile() && fileInfo.exists() )
index c3f2015c798c41a4b81873f478571d84fb71e788..0f4256bb50cdde55a73c87fc483bb6944207ce09 100755 (executable)
 
 # ifndef __REGWIDGET_H__
 # define __REGWIDGET_H__
-# include <qapplication.h>
-# include <qmainwindow.h>
+
+# include <QMainWindow>
 
 #include <SALOMEconfig.h>
 #include CORBA_CLIENT_HEADER(SALOME_Registry)
 
-#include <IntervalWindow.hxx>
-
 class QTabWidget;
-class QListView;
-class QListViewItem;
+class QTreeWidget;
+class QTreeWidgetItem;
 class QWidget;
 class QTimer;
 class QCloseEvent;
-class QTextView;
-class QPushButton;
+class QTextEdit;
+class QAction;
 class HelpWindow;
 class InfoWindow;
+class IntervalWindow;
 
 class RegWidget : public QMainWindow
 {
@@ -63,11 +62,13 @@ public:
 
   static RegWidget* GetRegWidget( CORBA::ORB_var &orb , QWidget *parent = 0, const char *name = 0 );
 
+  virtual QMenu* createPopupMenu();
+
 public slots:
   void       slotHelp();
   void       slotListeSelect();
-  void       slotClientChanged( QListViewItem* );
-  void       slotHistoryChanged( QListViewItem* );
+  void       slotClientChanged( QTreeWidgetItem* );
+  void       slotHistoryChanged( QTreeWidgetItem* );
   void       slotSelectRefresh();
   void       slotIntervalOk();
 protected:  
@@ -76,13 +77,13 @@ protected:
   void           closeEvent( QCloseEvent *e);
    
 protected :
-  QListView*          _clients;
-  QListView*          _history;
+  QTreeWidget*        _clients;
+  QTreeWidget*        _history;
   QWidget*            _parent;
   QTabWidget*         _tabWidget;
-  QPushButton*        _refresh;
-  QPushButton*        _interval;
-  QPushButton*        _close;
+  QAction*            _refresh;
+  QAction*            _interval;
+  QAction*            _close;
   QTimer*             _counter;
   Registry::AllInfos* _serverhistory;
   Registry::AllInfos* _serverclients;
@@ -101,13 +102,13 @@ public:
   InfoWindow( QWidget* parent = 0, const char* name = 0);
 
   void setText( const QString& text );
-  QTextView* textView() const { return myTextView; }
+  QTextEdit* textView() const { return myTextView; }
 
 protected:
   void keyPressEvent( QKeyEvent * e );
 
 private:
-  QTextView* myTextView;
+  QTextEdit* myTextView;
 
 };
 
index 7f285e6865cf0ee4043e4a691699ee0c02c3f663..19405ecd41f2badefa7f04942d70f44b714d7fee 100755 (executable)
@@ -41,7 +41,7 @@ void OnGUIEvent( CORBA::ORB_var &orb, QWidget *parent, const char *name )
  //ASSERT ( !ptrRegWidget );
  ptrRegWidget->show();
  ptrRegWidget->raise();
- ptrRegWidget->setActiveWindow();
+ ptrRegWidget->activateWindow();
  return;
 }
 
diff --git a/src/RegistryDisplay/RegistryDisplay.pro b/src/RegistryDisplay/RegistryDisplay.pro
new file mode 100644 (file)
index 0000000..c48bf62
--- /dev/null
@@ -0,0 +1,34 @@
+TEMPLATE = lib
+TARGET = RegistryDisplay
+DESTDIR = ../../lib
+MOC_DIR = ../../moc
+OBJECTS_DIR = ../../obj/$$TARGET
+
+KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome
+
+CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS
+
+KERNEL_LDFLAGS = $$(KERNEL_ROOT_DIR)/lib/salome
+
+INCLUDEPATH += ../../salome_adm/unix ../../idl $${KERNEL_CXXFLAGS} $${CORBA_INCLUDES}
+LIBS += -L$${KERNEL_LDFLAGS} -lSalomeNS -lOpUtil -lSalomeIDLKernel
+
+CONFIG -= debug release debug_and_release
+CONFIG += qt thread debug dll shared
+
+win32:DEFINES += WIN32 
+DEFINES += OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG
+
+HEADERS  = HelpWindow.hxx
+HEADERS += IntervalWindow.hxx
+HEADERS += RegWidget.h
+
+SOURCES  = HelpWindow.cxx
+SOURCES += RegWidget.cxx
+SOURCES += RegWidgetFactory.cxx
+SOURCES += IntervalWindow.cxx
+
+includes.files = $$HEADERS
+includes.path = ../../include
+
+INSTALLS += includes
index 74a97dac5bae4a6b8fbd69fa529ddc2c46025629..2c3e66c3d3db1149100f55e0735fc7df6126b4af 100644 (file)
@@ -21,3 +21,4 @@ SUBDIRS += OCCViewer
 SUBDIRS += SOCC
 SUBDIRS += Event
 SUBDIRS += ResExporter
+SUBDIRS += RegistryDisplay