From f3d90916a26e20afbb3574b9be1cc8a343097ddc Mon Sep 17 00:00:00 2001 From: xiaoming <2014500726@smail.xtu.edu.cn> Date: Tue, 10 Sep 2024 14:24:41 +0800 Subject: [PATCH] fix ui Signed-off-by: xiaoming <2014500726@smail.xtu.edu.cn> --- .../globaloptionsadvancedwidget.ui | 15 ++- .../globaloptionsappearancewidget.ui | 13 ++- .../globaloptionsgeneralwidget.ui | 15 ++- .../globaloptionsterminalwidget.ui | 15 ++- .../globaloptionstransferwidget.ui | 15 ++- src/globaloptions/globaloptionswindow.cpp | 69 +++++------ src/globaloptions/globaloptionswindow.h | 4 +- src/globaloptions/globaloptionswindow.ui | 27 +++-- .../globaloptionswindowwidget.ui | 15 ++- .../sessionoptionsgeneralwidget.ui | 20 +++- .../sessionoptionslocalshellproperties.ui | 11 +- .../sessionoptionslocalshellstate.ui | 10 +- .../sessionoptionsnamepipeproperties.ui | 11 +- .../sessionoptionsrawproperties.ui | 11 +- .../sessionoptionsserialproperties.ui | 15 ++- .../sessionoptionsserialstate.ui | 15 ++- .../sessionoptionsssh2properties.ui | 11 +- .../sessionoptionstelnetproperties.ui | 15 ++- .../sessionoptionsvncproperties.ui | 11 +- src/sessionoptions/sessionoptionswindow.cpp | 110 ++++++++---------- src/sessionoptions/sessionoptionswindow.h | 2 + src/sessionoptions/sessionoptionswindow.ui | 29 +++-- 22 files changed, 298 insertions(+), 161 deletions(-) diff --git a/src/globaloptions/globaloptionsadvancedwidget.ui b/src/globaloptions/globaloptionsadvancedwidget.ui index effc8eb7..71128685 100644 --- a/src/globaloptions/globaloptionsadvancedwidget.ui +++ b/src/globaloptions/globaloptionsadvancedwidget.ui @@ -6,10 +6,16 @@ 0 0 - 449 - 459 + 440 + 500 + + + 0 + 0 + + 4 @@ -272,10 +278,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 275 + 0 diff --git a/src/globaloptions/globaloptionsappearancewidget.ui b/src/globaloptions/globaloptionsappearancewidget.ui index 096c3e15..82f97fd0 100644 --- a/src/globaloptions/globaloptionsappearancewidget.ui +++ b/src/globaloptions/globaloptionsappearancewidget.ui @@ -7,9 +7,15 @@ 0 0 550 - 598 + 538 + + + 0 + 0 + + 4 @@ -720,10 +726,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/globaloptions/globaloptionsgeneralwidget.ui b/src/globaloptions/globaloptionsgeneralwidget.ui index 38f00180..b465975f 100644 --- a/src/globaloptions/globaloptionsgeneralwidget.ui +++ b/src/globaloptions/globaloptionsgeneralwidget.ui @@ -6,10 +6,16 @@ 0 0 - 379 - 412 + 440 + 500 + + + 0 + 0 + + 4 @@ -293,10 +299,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/globaloptions/globaloptionsterminalwidget.ui b/src/globaloptions/globaloptionsterminalwidget.ui index 8f76f898..096240da 100644 --- a/src/globaloptions/globaloptionsterminalwidget.ui +++ b/src/globaloptions/globaloptionsterminalwidget.ui @@ -6,9 +6,15 @@ 0 0 - 434 - 497 + 440 + 518 + + + + 0 + 0 + @@ -213,10 +219,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/globaloptions/globaloptionstransferwidget.ui b/src/globaloptions/globaloptionstransferwidget.ui index 68c44c61..5c797fb2 100644 --- a/src/globaloptions/globaloptionstransferwidget.ui +++ b/src/globaloptions/globaloptionstransferwidget.ui @@ -6,10 +6,16 @@ 0 0 - 420 - 300 + 440 + 500 + + + 0 + 0 + + 4 @@ -175,10 +181,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/globaloptions/globaloptionswindow.cpp b/src/globaloptions/globaloptionswindow.cpp index 3f55e430..104d07d7 100644 --- a/src/globaloptions/globaloptionswindow.cpp +++ b/src/globaloptions/globaloptionswindow.cpp @@ -130,38 +130,32 @@ GlobalOptionsWindow::GlobalOptionsWindow(QWidget *parent) : setWindowModality(Qt::ApplicationModal); setWindowFlags(Qt::Tool); - QSplitter *splitter = new QSplitter(Qt::Horizontal, this); - splitter->setHandleWidth(1); - ui->horizontalLayout->addWidget(splitter); - treeView = new QTreeView(this); - treeView->setHeaderHidden(true); - model = new GlobalOptionsModel(treeView); + ui->splitter->setHandleWidth(1); + ui->treeView->setHeaderHidden(true); + model = new GlobalOptionsModel(ui->treeView); model->setOnlyName(true); model->setDistinguishType(false); - treeView->setEditTriggers(QAbstractItemView::NoEditTriggers); - splitter->addWidget(treeView); - QWidget *widget = new QWidget(this); - splitter->addWidget(widget); - widget->setLayout(new QVBoxLayout(widget)); - widget->layout()->setContentsMargins(0,0,0,0); - splitter->setSizes(QList() << 1 << 100); - splitter->setCollapsible(0,false); - splitter->setCollapsible(1,false); - - globalOptionsGeneralWidget = new GlobalOptionsGeneralWidget(widget); - widget->layout()->addWidget(globalOptionsGeneralWidget); - globalOptionsAppearanceWidget = new GlobalOptionsAppearanceWidget(widget); - widget->layout()->addWidget(globalOptionsAppearanceWidget); - globalOptionsTerminalWidget = new GlobalOptionsTerminalWidget(widget); - widget->layout()->addWidget(globalOptionsTerminalWidget); - globalOptionsWindowWidget = new GlobalOptionsWindowWidget(widget); - widget->layout()->addWidget(globalOptionsWindowWidget); - globalOptionsTransferWidget = new GlobalOptionsTransferWidget(widget); - widget->layout()->addWidget(globalOptionsTransferWidget); - globalOptionsAdvancedWidget = new GlobalOptionsAdvancedWidget(widget); - widget->layout()->addWidget(globalOptionsAdvancedWidget); - - treeView->setModel(model); + ui->treeView->setEditTriggers(QAbstractItemView::NoEditTriggers); + emptyWidget = new QWidget(this); + ui->stackedWidget->addWidget(emptyWidget); + ui->splitter->setSizes(QList() << 1 << 100); + ui->splitter->setCollapsible(0,false); + ui->splitter->setCollapsible(1,false); + + globalOptionsGeneralWidget = new GlobalOptionsGeneralWidget(this); + ui->stackedWidget->addWidget(globalOptionsGeneralWidget); + globalOptionsAppearanceWidget = new GlobalOptionsAppearanceWidget(this); + ui->stackedWidget->addWidget(globalOptionsAppearanceWidget); + globalOptionsTerminalWidget = new GlobalOptionsTerminalWidget(this); + ui->stackedWidget->addWidget(globalOptionsTerminalWidget); + globalOptionsWindowWidget = new GlobalOptionsWindowWidget(this); + ui->stackedWidget->addWidget(globalOptionsWindowWidget); + globalOptionsTransferWidget = new GlobalOptionsTransferWidget(this); + ui->stackedWidget->addWidget(globalOptionsTransferWidget); + globalOptionsAdvancedWidget = new GlobalOptionsAdvancedWidget(this); + ui->stackedWidget->addWidget(globalOptionsAdvancedWidget); + + ui->treeView->setModel(model); retranslateUi(); setActiveWidget(globalOptionsGeneralWidget); @@ -177,6 +171,7 @@ GlobalOptionsWindow::GlobalOptionsWindow(QWidget *parent) : QStringList fontFamilies = QFontDatabase::applicationFontFamilies(fontId); if (fontFamilies.size() > 0) { font.setFamily(fontFamilies[0]); + qDebug() << fontFamilies[0]; } globalOptionsAppearanceWidget->ui->pushButtonSelectSeriesFont->setText("Built-in"); if(settings.contains("fontFamily")) { @@ -192,6 +187,7 @@ GlobalOptionsWindow::GlobalOptionsWindow(QWidget *parent) : font.setPointSize(12); settings.setValue("fontPointSize", font.pointSize()); } + qDebug() << font; globalOptionsAppearanceWidget->ui->spinBoxFontSize->setValue(font.pointSize()); globalOptionsAppearanceWidget->ui->comBoxColorSchemes->setEditable(true); @@ -445,7 +441,7 @@ GlobalOptionsWindow::GlobalOptionsWindow(QWidget *parent) : connect(ui->buttonBox, &QDialogButtonBox::accepted, this, &GlobalOptionsWindow::buttonBoxAccepted); connect(ui->buttonBox, &QDialogButtonBox::rejected, this, &GlobalOptionsWindow::buttonBoxRejected); - connect(treeView, &QTreeView::clicked, [&](const QModelIndex &index) { + connect(ui->treeView, &QTreeView::clicked, [&](const QModelIndex &index) { QString filePath = model->filePath(index); QStringList pathList = filePath.split(model->separator()); GlobalOptionsModel::TreeNode node = rootInfo; @@ -477,7 +473,7 @@ void GlobalOptionsWindow::retranslateUi() GlobalOptionsModel::TreeNode advanced(tr("Advanced"),globalOptionsAdvancedWidget); rootInfo.children << generalNode << appearance << terminal << window << transfer << advanced; model->setTree(rootInfo); - treeView->setRootIndex(model->setRootPath("/")); + ui->treeView->setRootIndex(model->setRootPath("/")); ui->retranslateUi(this); globalOptionsGeneralWidget->ui->retranslateUi(this); globalOptionsGeneralWidget->ui->retranslateUi(this); @@ -490,15 +486,10 @@ void GlobalOptionsWindow::retranslateUi() void GlobalOptionsWindow::setActiveWidget(QWidget *widget) { - globalOptionsGeneralWidget->setVisible(false); - globalOptionsAppearanceWidget->setVisible(false); - globalOptionsTerminalWidget->setVisible(false); - globalOptionsWindowWidget->setVisible(false); - globalOptionsTransferWidget->setVisible(false); - globalOptionsAdvancedWidget->setVisible(false); + ui->stackedWidget->setCurrentWidget(emptyWidget); if(widget) - widget->setVisible(true); + ui->stackedWidget->setCurrentWidget(widget); } void GlobalOptionsWindow::setAvailableColorSchemes(QStringList colorSchemes) diff --git a/src/globaloptions/globaloptionswindow.h b/src/globaloptions/globaloptionswindow.h index 3b4d863c..3972551b 100644 --- a/src/globaloptions/globaloptionswindow.h +++ b/src/globaloptions/globaloptionswindow.h @@ -25,6 +25,8 @@ #include #include #include +#include + #include "globaloptionsgeneralwidget.h" #include "globaloptionsappearancewidget.h" #include "globaloptionsterminalwidget.h" @@ -148,13 +150,13 @@ private slots: private: Ui::GlobalOptionsWindow *ui; + QWidget *emptyWidget; GlobalOptionsGeneralWidget *globalOptionsGeneralWidget; GlobalOptionsAppearanceWidget *globalOptionsAppearanceWidget; GlobalOptionsTerminalWidget *globalOptionsTerminalWidget; GlobalOptionsWindowWidget *globalOptionsWindowWidget; GlobalOptionsTransferWidget *globalOptionsTransferWidget; GlobalOptionsAdvancedWidget *globalOptionsAdvancedWidget; - QTreeView *treeView; GlobalOptionsModel *model; QFont font; QString cursorColorStr; diff --git a/src/globaloptions/globaloptionswindow.ui b/src/globaloptions/globaloptionswindow.ui index 5daa1496..bbe5a336 100644 --- a/src/globaloptions/globaloptionswindow.ui +++ b/src/globaloptions/globaloptionswindow.ui @@ -6,27 +6,36 @@ 0 0 - 726 - 299 + 730 + 550 Global Options - - - 4 - + - + + + Qt::Orientation::Horizontal + + + + + + + + + + - Qt::Horizontal + Qt::Orientation::Horizontal - QDialogButtonBox::Cancel|QDialogButtonBox::Ok + QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok diff --git a/src/globaloptions/globaloptionswindowwidget.ui b/src/globaloptions/globaloptionswindowwidget.ui index 7343eea3..924e2049 100644 --- a/src/globaloptions/globaloptionswindowwidget.ui +++ b/src/globaloptions/globaloptionswindowwidget.ui @@ -6,9 +6,15 @@ 0 0 - 400 - 300 + 440 + 500 + + + + 0 + 0 + @@ -45,10 +51,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionsgeneralwidget.ui b/src/sessionoptions/sessionoptionsgeneralwidget.ui index 128e7b44..1ddefe73 100644 --- a/src/sessionoptions/sessionoptionsgeneralwidget.ui +++ b/src/sessionoptions/sessionoptionsgeneralwidget.ui @@ -9,11 +9,14 @@ 400 300 + + + + 0 + 0 + - - 4 - @@ -57,6 +60,12 @@ + + + 0 + 0 + + Telnet @@ -104,10 +113,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 233 + 0 diff --git a/src/sessionoptions/sessionoptionslocalshellproperties.ui b/src/sessionoptions/sessionoptionslocalshellproperties.ui index b3f47015..e738e889 100644 --- a/src/sessionoptions/sessionoptionslocalshellproperties.ui +++ b/src/sessionoptions/sessionoptionslocalshellproperties.ui @@ -9,6 +9,12 @@ 400 300 + + + + 0 + 0 + @@ -42,10 +48,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionslocalshellstate.ui b/src/sessionoptions/sessionoptionslocalshellstate.ui index 3cbd0d2f..5237d565 100644 --- a/src/sessionoptions/sessionoptionslocalshellstate.ui +++ b/src/sessionoptions/sessionoptionslocalshellstate.ui @@ -6,9 +6,15 @@ 0 0 - 356 - 216 + 400 + 300 + + + + 0 + 0 + diff --git a/src/sessionoptions/sessionoptionsnamepipeproperties.ui b/src/sessionoptions/sessionoptionsnamepipeproperties.ui index 986fa073..69b797bf 100644 --- a/src/sessionoptions/sessionoptionsnamepipeproperties.ui +++ b/src/sessionoptions/sessionoptionsnamepipeproperties.ui @@ -9,6 +9,12 @@ 400 300 + + + + 0 + 0 + @@ -42,10 +48,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionsrawproperties.ui b/src/sessionoptions/sessionoptionsrawproperties.ui index 00413be5..9f2470b7 100644 --- a/src/sessionoptions/sessionoptionsrawproperties.ui +++ b/src/sessionoptions/sessionoptionsrawproperties.ui @@ -9,6 +9,12 @@ 400 300 + + + + 0 + 0 + @@ -69,10 +75,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionsserialproperties.ui b/src/sessionoptions/sessionoptionsserialproperties.ui index dd66225f..f30586be 100644 --- a/src/sessionoptions/sessionoptionsserialproperties.ui +++ b/src/sessionoptions/sessionoptionsserialproperties.ui @@ -6,9 +6,15 @@ 0 0 - 456 - 341 + 400 + 300 + + + + 0 + 0 + @@ -221,10 +227,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionsserialstate.ui b/src/sessionoptions/sessionoptionsserialstate.ui index a4c24902..68dc18a6 100644 --- a/src/sessionoptions/sessionoptionsserialstate.ui +++ b/src/sessionoptions/sessionoptionsserialstate.ui @@ -6,9 +6,15 @@ 0 0 - 480 - 293 + 400 + 300 + + + + 0 + 0 + @@ -114,10 +120,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionsssh2properties.ui b/src/sessionoptions/sessionoptionsssh2properties.ui index 2e05f1f7..47ccb646 100644 --- a/src/sessionoptions/sessionoptionsssh2properties.ui +++ b/src/sessionoptions/sessionoptionsssh2properties.ui @@ -9,6 +9,12 @@ 400 300 + + + + 0 + 0 + @@ -98,10 +104,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionstelnetproperties.ui b/src/sessionoptions/sessionoptionstelnetproperties.ui index aaf67569..8b7ff490 100644 --- a/src/sessionoptions/sessionoptionstelnetproperties.ui +++ b/src/sessionoptions/sessionoptionstelnetproperties.ui @@ -6,9 +6,15 @@ 0 0 - 414 - 256 + 400 + 300 + + + + 0 + 0 + @@ -104,10 +110,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionsvncproperties.ui b/src/sessionoptions/sessionoptionsvncproperties.ui index 1d7d9b5a..042ae7b4 100644 --- a/src/sessionoptions/sessionoptionsvncproperties.ui +++ b/src/sessionoptions/sessionoptionsvncproperties.ui @@ -9,6 +9,12 @@ 400 300 + + + + 0 + 0 + @@ -82,10 +88,13 @@ Qt::Orientation::Vertical + + QSizePolicy::Policy::MinimumExpanding + 20 - 40 + 0 diff --git a/src/sessionoptions/sessionoptionswindow.cpp b/src/sessionoptions/sessionoptionswindow.cpp index 401baf42..0462001f 100644 --- a/src/sessionoptions/sessionoptionswindow.cpp +++ b/src/sessionoptions/sessionoptionswindow.cpp @@ -50,62 +50,54 @@ SessionOptionsWindow::SessionOptionsWindow(QWidget *parent) : setWindowModality(Qt::ApplicationModal); setWindowFlags(Qt::Tool); - QSplitter *splitter = new QSplitter(Qt::Horizontal, this); - splitter->setHandleWidth(1); - ui->horizontalLayout->addWidget(splitter); - QTreeView *treeView = new QTreeView(this); - treeView->setMinimumWidth(140); - treeView->setHeaderHidden(true); - model = new QStringListModel(treeView); - treeView->setModel(model); - splitter->addWidget(treeView); - QWidget *widget = new QWidget(this); - splitter->addWidget(widget); - widget->setLayout(new QVBoxLayout(widget)); - widget->layout()->setContentsMargins(0,0,0,0); - splitter->setSizes(QList() << 140 << 500); - splitter->setCollapsible(0,false); - splitter->setCollapsible(1,false); + ui->splitter->setHandleWidth(1); + ui->treeView->setMinimumWidth(140); + ui->treeView->setHeaderHidden(true); + model = new QStringListModel(ui->treeView); + ui->treeView->setModel(model); + emptyWidget = new QWidget(this); + ui->stackedWidget->addWidget(emptyWidget); + ui->splitter->setSizes(QList() << 140 << 500); + ui->splitter->setCollapsible(0,false); + ui->splitter->setCollapsible(1,false); + + sessionOptionsGeneralWidget = new SessionOptionsGeneralWidget(this); + ui->stackedWidget->addWidget(sessionOptionsGeneralWidget); + sessionOptionsTelnetProperties = new SessionOptionsTelnetProperties(this); + ui->stackedWidget->addWidget(sessionOptionsTelnetProperties); + sessionOptionsSerialProperties = new SessionOptionsSerialProperties(this); + ui->stackedWidget->addWidget(sessionOptionsSerialProperties); + sessionOptionsLocalShellProperties = new SessionOptionsLocalShellProperties(this); + ui->stackedWidget->addWidget(sessionOptionsLocalShellProperties); + sessionOptionsNamePipeProperties = new SessionOptionsNamePipeProperties(this); + ui->stackedWidget->addWidget(sessionOptionsNamePipeProperties); + sessionOptionsRawProperties = new SessionOptionsRawProperties(this); + ui->stackedWidget->addWidget(sessionOptionsRawProperties); + sessionOptionsSSH2Properties = new SessionOptionsSsh2Properties(this); + ui->stackedWidget->addWidget(sessionOptionsSSH2Properties); + sessionOptionsVNCProperties = new SessionOptionsVNCProperties(this); + ui->stackedWidget->addWidget(sessionOptionsVNCProperties); + + sessionOptionsLocalShellState = new SessionOptionsLocalShellState(this); + ui->stackedWidget->addWidget(sessionOptionsLocalShellState); + sessionOptionsSerialState = new SessionOptionsSerialState(this); + ui->stackedWidget->addWidget(sessionOptionsSerialState); - sessionOptionsGeneralWidget = new SessionOptionsGeneralWidget(widget); - widget->layout()->addWidget(sessionOptionsGeneralWidget); - sessionOptionsTelnetProperties = new SessionOptionsTelnetProperties(widget); - widget->layout()->addWidget(sessionOptionsTelnetProperties); - sessionOptionsSerialProperties = new SessionOptionsSerialProperties(widget); - widget->layout()->addWidget(sessionOptionsSerialProperties); - sessionOptionsLocalShellProperties = new SessionOptionsLocalShellProperties(widget); - widget->layout()->addWidget(sessionOptionsLocalShellProperties); - sessionOptionsNamePipeProperties = new SessionOptionsNamePipeProperties(widget); - widget->layout()->addWidget(sessionOptionsNamePipeProperties); - sessionOptionsRawProperties = new SessionOptionsRawProperties(widget); - widget->layout()->addWidget(sessionOptionsRawProperties); - sessionOptionsSSH2Properties = new SessionOptionsSsh2Properties(widget); - widget->layout()->addWidget(sessionOptionsSSH2Properties); - sessionOptionsVNCProperties = new SessionOptionsVNCProperties(widget); - widget->layout()->addWidget(sessionOptionsVNCProperties); - - sessionOptionsLocalShellState = new SessionOptionsLocalShellState(widget); - widget->layout()->addWidget(sessionOptionsLocalShellState); - sessionOptionsSerialState = new SessionOptionsSerialState(widget); - widget->layout()->addWidget(sessionOptionsSerialState); - - sessionOptionsGeneralWidget->setVisible(true); setactiveProperties(-1); setactiveState(-1); + ui->stackedWidget->setCurrentWidget(sessionOptionsGeneralWidget); retranslateUi(); - connect(treeView, &QTreeView::clicked, [&](const QModelIndex &index) { + connect(ui->treeView, &QTreeView::clicked, [&](const QModelIndex &index) { if (index.row() == 0) { - sessionOptionsGeneralWidget->setVisible(true); setactiveProperties(-1); setactiveState(-1); + ui->stackedWidget->setCurrentWidget(sessionOptionsGeneralWidget); } else if (index.row() == 1) { - sessionOptionsGeneralWidget->setVisible(false); setactiveState(-1); setactiveProperties(sessionOptionsGeneralWidget->ui->comboBoxProtocol->currentIndex()); } else if (index.row() == 2) { - sessionOptionsGeneralWidget->setVisible(false); setactiveProperties(-1); setactiveState(sessionOptionsGeneralWidget->ui->comboBoxProtocol->currentIndex()); } @@ -151,56 +143,48 @@ void SessionOptionsWindow::retranslateUi() void SessionOptionsWindow::setactiveProperties(int index) { - sessionOptionsTelnetProperties->setVisible(false); - sessionOptionsSerialProperties->setVisible(false); - sessionOptionsLocalShellProperties->setVisible(false); - sessionOptionsNamePipeProperties->setVisible(false); - sessionOptionsRawProperties->setVisible(false); - sessionOptionsSSH2Properties->setVisible(false); - sessionOptionsVNCProperties->setVisible(false); - + ui->stackedWidget->setCurrentWidget(emptyWidget); if(index == -1) { return; } switch(index) { case 0: - sessionOptionsTelnetProperties->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsTelnetProperties); break; case 1: - sessionOptionsSerialProperties->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsSerialProperties); break; case 2: - sessionOptionsLocalShellProperties->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsLocalShellProperties); break; case 3: - sessionOptionsRawProperties->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsRawProperties); break; case 4: - sessionOptionsNamePipeProperties->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsNamePipeProperties); break; case 5: - sessionOptionsSSH2Properties->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsSSH2Properties); break; case 6: - sessionOptionsVNCProperties->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsVNCProperties); break; } } void SessionOptionsWindow::setactiveState(int index) { - sessionOptionsLocalShellState->setVisible(false); - sessionOptionsSerialState->setVisible(false); + ui->stackedWidget->setCurrentWidget(emptyWidget); if(index == -1) { return; } switch(index) { case 1: - sessionOptionsSerialState->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsSerialState); break; case 2: - sessionOptionsLocalShellState->setVisible(true); + ui->stackedWidget->setCurrentWidget(sessionOptionsLocalShellState); break; } } @@ -441,9 +425,9 @@ void SessionOptionsWindow::buttonBoxRejected(void) void SessionOptionsWindow::showEvent(QShowEvent *event) { - sessionOptionsGeneralWidget->setVisible(true); setactiveProperties(-1); setactiveState(-1); + ui->stackedWidget->setCurrentWidget(sessionOptionsGeneralWidget); retranslateUi(); QDialog::showEvent(event); } diff --git a/src/sessionoptions/sessionoptionswindow.h b/src/sessionoptions/sessionoptionswindow.h index 1b8b7cbd..14d1ddd0 100644 --- a/src/sessionoptions/sessionoptionswindow.h +++ b/src/sessionoptions/sessionoptionswindow.h @@ -23,6 +23,7 @@ #include #include #include +#include #include "ptyqt.h" #include "quickconnectwindow.h" @@ -75,6 +76,7 @@ private slots: private: Ui::SessionOptionsWindow *ui; + QWidget *emptyWidget; SessionOptionsGeneralWidget *sessionOptionsGeneralWidget; SessionOptionsTelnetProperties *sessionOptionsTelnetProperties; SessionOptionsSerialProperties *sessionOptionsSerialProperties; diff --git a/src/sessionoptions/sessionoptionswindow.ui b/src/sessionoptions/sessionoptionswindow.ui index 96339551..d9e8ef0e 100644 --- a/src/sessionoptions/sessionoptionswindow.ui +++ b/src/sessionoptions/sessionoptionswindow.ui @@ -6,31 +6,36 @@ 0 0 - 602 - 299 + 634 + 447 Session Options - - - 4 - + - - - 4 + + + Qt::Orientation::Horizontal - + + + + + + + + + - Qt::Horizontal + Qt::Orientation::Horizontal - QDialogButtonBox::Cancel|QDialogButtonBox::Ok + QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok