Skip to content

Commit

Permalink
Shell|UI: Added a page for starting a local server
Browse files Browse the repository at this point in the history
  • Loading branch information
skyjake committed Sep 1, 2019
1 parent cdfd975 commit d31a4b4
Showing 1 changed file with 31 additions and 34 deletions.
65 changes: 31 additions & 34 deletions doomsday/tools/shell/src/linkwindow.cpp
Expand Up @@ -147,22 +147,9 @@ DE_PIMPL(LinkWindow)

pageTabs->rule().setRect(tools->rule());

// statusButton = createToolbarButton("Status");
// statusButton->setStyleImage("refresh");
// tools->add(statusButton);

// optionsButton = createToolbarButton("Options");
// optionsButton->setStyleImage("gear");
// tools->add(optionsButton);

// consoleButton = createToolbarButton("Console");
// consoleButton->setStyleImage("gauge");
// tools->add(consoleButton);

pageTabs->items() << new TabItem(style.images().image("refresh"), "Status")
<< new TabItem(style.images().image("gear"), "Options")
<< new TabItem(style.images().image("gauge"), "Console");

pageTabs->setCurrent(0);

tools->rule()
Expand All @@ -174,12 +161,8 @@ DE_PIMPL(LinkWindow)

// Pages.
consolePage = new GuiWidget;
consolePage->set(GuiWidget::Background());
consolePage->rule()
.setRect(root.viewRule())
.setInput(Rule::Top, tools->rule().bottom());
root.add(consolePage);
pages.push_back(consolePage);
pages << consolePage;

// Console page.
{
Expand Down Expand Up @@ -207,6 +190,21 @@ DE_PIMPL(LinkWindow)
LogBuffer::get().addSink(logWidget->logSink());
}

// Page for quickly starting a new local server.
{
newLocalServerPage = new GuiWidget;
root.add(newLocalServerPage);
pages << newLocalServerPage;

auto *newButton = new ButtonWidget;
newLocalServerPage->add(newButton);
newButton->setSizePolicy(ui::Expand, ui::Expand);
newButton->setText("New Local Server...");
newButton->rule().setCentered(newLocalServerPage->rule());

newButton->audienceForPress() += []() { GuiShellApp::app().startLocalServer(); };
}

auto *statusBar = new GuiWidget;

// Status bar.
Expand Down Expand Up @@ -252,7 +250,21 @@ DE_PIMPL(LinkWindow)

for (auto *page : pages)
{
page->rule().setInput(Rule::Bottom, statusBar->rule().top());
page->set(GuiWidget::Background());
page->rule()
.setRect(root.viewRule())
.setInput(Rule::Top, tools->rule().bottom())
.setInput(Rule::Bottom, statusBar->rule().top());
}

setCurrentPage(1);
}

void setCurrentPage(ui::DataPos page)
{
for (ui::DataPos i = 0; i < pages.size(); ++i)
{
pages[i]->show(i == page);
}
}

Expand Down Expand Up @@ -441,21 +453,6 @@ LinkWindow::LinkWindow(const String &id)

d->stack = new QStackedWidget;

// Page for quickly starting a new local server.
d->newLocalServerPage = new QWidget;
d->stack->addWidget(d->newLocalServerPage);
{
auto *newButton = new QPushButton(tr("New Local Server..."));
newButton->setMinimumWidth(200);
connect(newButton, SIGNAL(pressed()), &GuiShellApp::app(), SLOT(startLocalServer()));

auto *layout = new QVBoxLayout;
layout->addStretch(1);
layout->addWidget(newButton, 0, Qt::AlignCenter);
layout->addStretch(1);
d->newLocalServerPage->setLayout(layout);
}

// Status page.
d->status = new StatusWidget;
d->stack->addWidget(d->status);
Expand Down

0 comments on commit d31a4b4

Please sign in to comment.