Delete extra_split if we're not using it. This keeps its handle from

showing up in the main window. Make it local to layoutPanes().

svn path=/trunk/; revision=52211
This commit is contained in:
Gerald Combs 2013-09-25 00:26:36 +00:00
parent 71e0d23701
commit 80d1fde12a
3 changed files with 24 additions and 22 deletions

View File

@ -80,6 +80,7 @@ void pipe_input_set_handler(gint source, gpointer user_data, int *child_process,
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
main_ui_(new Ui::MainWindow),
master_split_(NULL),
df_combo_box_(new DisplayFilterCombo()),
cap_file_(NULL),
previous_focus_(NULL),
@ -187,9 +188,6 @@ MainWindow::MainWindow(QWidget *parent) :
packet_list_->setByteViewTab(byte_view_tab_);
packet_list_->installEventFilter(this);
master_split_ = NULL;
extra_split_ = NULL;
main_welcome_ = main_ui_->welcomePage;
#ifdef HAVE_LIBPCAP

View File

@ -100,7 +100,6 @@ private:
Ui::MainWindow *main_ui_;
QMenu *open_recent_menu_;
QSplitter *master_split_;
QSplitter *extra_split_;
MainWelcome *main_welcome_;
DisplayFilterCombo *df_combo_box_;
capture_file *cap_file_;

View File

@ -222,8 +222,8 @@ void MainWindow::layoutPanes()
master_split_ = new QSplitter(main_ui_->mainStack);
master_split_->setObjectName(QString::fromUtf8("splitterMaster"));
extra_split_ = new QSplitter(master_split_);
extra_split_->setObjectName(QString::fromUtf8("splitterExtra"));
QSplitter *extra_split = new QSplitter(master_split_);
extra_split->setObjectName(QString::fromUtf8("splitterExtra"));
switch(prefs.gui_layout_type) {
case(layout_type_5):
@ -234,30 +234,30 @@ void MainWindow::layoutPanes()
break;
case(layout_type_2):
master_split_->setOrientation(Qt::Vertical);
extra_split_->setOrientation(Qt::Horizontal);
extra_split->setOrientation(Qt::Horizontal);
parents[0] = master_split_;
parents[1] = extra_split_;
parents[2] = extra_split_;
parents[1] = extra_split;
parents[2] = extra_split;
break;
case(layout_type_1):
master_split_->setOrientation(Qt::Vertical);
extra_split_->setOrientation(Qt::Horizontal);
parents[0] = extra_split_;
parents[1] = extra_split_;
extra_split->setOrientation(Qt::Horizontal);
parents[0] = extra_split;
parents[1] = extra_split;
parents[2] = master_split_;
break;
case(layout_type_4):
master_split_->setOrientation(Qt::Horizontal);
extra_split_->setOrientation(Qt::Vertical);
extra_split->setOrientation(Qt::Vertical);
parents[0] = master_split_;
parents[1] = extra_split_;
parents[2] = extra_split_;
parents[1] = extra_split;
parents[2] = extra_split;
break;
case(layout_type_3):
master_split_->setOrientation(Qt::Horizontal);
extra_split_->setOrientation(Qt::Vertical);
parents[0] = extra_split_;
parents[1] = extra_split_;
extra_split->setOrientation(Qt::Vertical);
parents[0] = extra_split;
parents[1] = extra_split;
parents[2] = master_split_;
break;
case(layout_type_6):
@ -278,14 +278,14 @@ void MainWindow::layoutPanes()
byte_view_tab_->setParent(main_ui_->mainStack);
empty_pane_->setParent(main_ui_->mainStack);
if (parents[0] == extra_split_) {
master_split_->addWidget(extra_split_);
if (parents[0] == extra_split) {
master_split_->addWidget(extra_split);
}
parents[0]->addWidget(getLayoutWidget(prefs.gui_layout_content_1));
if (parents[2] == extra_split_) {
master_split_->addWidget(extra_split_);
if (parents[2] == extra_split) {
master_split_->addWidget(extra_split);
}
parents[1]->addWidget(getLayoutWidget(prefs.gui_layout_content_2));
@ -298,6 +298,11 @@ void MainWindow::layoutPanes()
delete oldMaster;
}
if (extra_split->count() < 1) {
delete extra_split;
extra_split = NULL;
}
main_ui_->mainStack->addWidget(master_split_);
if (current == oldMaster) {