Diffstat (limited to 'noncore/apps/opie-console/mainwindow.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/opie-console/mainwindow.cpp | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/noncore/apps/opie-console/mainwindow.cpp b/noncore/apps/opie-console/mainwindow.cpp index 6dc9e6e..b770551 100644 --- a/noncore/apps/opie-console/mainwindow.cpp +++ b/noncore/apps/opie-console/mainwindow.cpp @@ -313,17 +313,22 @@ void MainWindow::slotRunScript() { void MainWindow::slotConnect() { if ( currentSession() ) { bool ret = currentSession()->layer()->open(); - if(!ret) QMessageBox::warning(currentSession()->widgetStack(), - QObject::tr("Failed"), - QObject::tr("Connecting failed for this session.")); - } + if(!ret) QMessageBox::warning(currentSession()->widgetStack(), + QObject::tr("Failed"), + QObject::tr("Connecting failed for this session.")); + m_connect->setEnabled( false ); + m_disconnect->setEnabled( true ); + } } void MainWindow::slotDisconnect() { - if ( currentSession() ) + if ( currentSession() ) { currentSession()->layer()->close(); + m_connect->setEnabled( true ); + m_disconnect->setEnabled( false ); + } } void MainWindow::slotTerminate() { if ( currentSession() ) @@ -404,9 +409,9 @@ void MainWindow::create( const Profile& prof ) { m_curSession = ses; // dicide if its a local term ( then no connction and no tranfer), maybe make a wrapper method out of it m_connect->setEnabled( true ); - m_disconnect->setEnabled( true ); + m_disconnect->setEnabled( false ); m_terminate->setEnabled( true ); m_transfer->setEnabled( true ); m_recordScript->setEnabled( true ); m_saveScript->setEnabled( true ); @@ -416,13 +421,13 @@ void MainWindow::create( const Profile& prof ) { } void MainWindow::slotTransfer() { - // if ( currentSession() ) { + if ( currentSession() ) { TransferDialog dlg(this); dlg.showMaximized(); dlg.exec(); - // } + } } void MainWindow::slotOpenKeb(bool state) { @@ -434,8 +439,16 @@ void MainWindow::slotOpenKeb(bool state) { void MainWindow::slotSessionChanged( Session* ses ) { if ( ses ) { qWarning("changing %s", ses->name().latin1() ); m_curSession = ses; + + if ( m_curSession->isConnected() ) { + m_connect->setEnabled( false ); + m_disconnect->setEnabled( true ); + } else { + m_connect->setEnabled( true ); + m_disconnect->setEnabled( false ); + } } } void MainWindow::slotFullscreen() { @@ -454,9 +467,9 @@ void MainWindow::slotFullscreen() { ( m_curSession->widgetStack() )->resize(qApp->desktop()->width(), qApp->desktop()->height()); ( m_curSession->widgetStack() )->setFocus(); ( m_curSession->widgetStack() )->show(); - // QPushButton *cornerButton = new QPushButton( this ); + //QPushButton *cornerButton = new QPushButton( ); //cornerButton->setPixmap( QPixmap( (const char**)menu_xpm ) ); //connect( cornerButton, SIGNAL( pressed() ), this, SLOT( slotFullscreen() ) ); // need teh scrollbar // ( m_curSession->widgetStack() )->setCornerWidget( cornerButton ); |