Diffstat (limited to 'noncore/apps/opie-console/profileeditordialog.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/apps/opie-console/profileeditordialog.cpp | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/noncore/apps/opie-console/profileeditordialog.cpp b/noncore/apps/opie-console/profileeditordialog.cpp index 1765d42..9890c3e 100644 --- a/noncore/apps/opie-console/profileeditordialog.cpp +++ b/noncore/apps/opie-console/profileeditordialog.cpp @@ -2,13 +2,13 @@ #include <qlineedit.h> #include <qlabel.h> #include <qmessagebox.h> #include <qstringlist.h> #include <qcombobox.h> #include <qcheckbox.h> - +#include <qscrollview.h> //#include "profileeditorplugins.h" #include "metafactory.h" #include "profileeditordialog.h" namespace { @@ -50,28 +50,41 @@ Profile ProfileEditorDialog::profile() const } void ProfileEditorDialog::initUI() { m_con = m_term = m_key = 0l; + QVBoxLayout *mainLayout = new QVBoxLayout( this ); tabWidget = new OTabWidget( this ); tabWidget->setTabStyle(OTabWidget::TextTab); mainLayout->add(tabWidget); /* base tabs */ tabprof = new QWidget(this); m_tabTerm = new QWidget(this); m_tabCon = new QWidget(this); m_tabKey = new QWidget(this); + m_svCon = new QScrollView( m_tabCon ); + m_svCon->setResizePolicy( QScrollView::AutoOneFit ); + m_svCon->setHScrollBarMode( QScrollView::AlwaysOff ); + m_svCon->setFrameShape( QFrame::NoFrame ); + m_svTerm = new QScrollView( m_tabTerm ); + m_svTerm->setResizePolicy( QScrollView::AutoOneFit ); + m_svTerm->setHScrollBarMode( QScrollView::AlwaysOff ); + m_svTerm->setFrameShape( QFrame::NoFrame ); + /* base layout for tabs */ m_layCon = new QHBoxLayout( m_tabCon , 2 ); m_layTerm = new QHBoxLayout( m_tabTerm, 2 ); m_layKey = new QHBoxLayout( m_tabKey, 2 ); + m_layCon->addWidget( m_svCon ); + m_layTerm->addWidget( m_svTerm ); + // profile tab QLabel *name = new QLabel(QObject::tr("Profile name"), tabprof); m_name = new QLineEdit(tabprof); QLabel *con = new QLabel(tr("Connection"), tabprof ); QLabel *term = new QLabel(tr("Terminal"), tabprof ); @@ -173,34 +186,37 @@ QCString ProfileEditorDialog::profType()const return QCString(); } /* * we need to switch the widget */ void ProfileEditorDialog::slotConActivated( const QString& str ) { + delete m_con; - m_con = m_fact->newConnectionPlugin( str, m_tabCon ); + + m_con = m_fact->newConnectionPlugin( str, m_svCon->viewport() ); if ( !m_con ) { - m_con = new NoOptions( str, m_tabCon, "name"); + m_con = new NoOptions( str, m_svCon->viewport(), "name"); } m_con->load( m_prof ); - m_layCon->addWidget( m_con ); + m_svCon->addChild( m_con ); +} - tabWidget->setCurrentTab( tabprof ); -} /* * we need to switch the widget */ void ProfileEditorDialog::slotTermActivated( const QString& str ) { + delete m_term; - m_term = m_fact->newTerminalPlugin( str, m_tabTerm ); + + m_term = m_fact->newTerminalPlugin( str, m_svTerm->viewport() ); if (m_term) { m_term->load(m_prof ); - m_layTerm->addWidget( m_term ); + m_svTerm->addChild( m_term ); } } void ProfileEditorDialog::slotKeyActivated(const QString &str) { delete m_key; m_key = m_fact->newKeyboardPlugin( str, m_tabKey ); |