From 2913d25d7984c19eea5c3779d25e5090a0d03094 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaakko=20Kera=CC=88nen?= Date: Thu, 2 Feb 2017 23:35:33 +0200 Subject: [PATCH] UI|Home: PackagesWidget supports adjustable margins --- .../client/src/ui/widgets/packageswidget.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/doomsday/apps/client/src/ui/widgets/packageswidget.cpp b/doomsday/apps/client/src/ui/widgets/packageswidget.cpp index 4456cac997..c75aae02d8 100644 --- a/doomsday/apps/client/src/ui/widgets/packageswidget.cpp +++ b/doomsday/apps/client/src/ui/widgets/packageswidget.cpp @@ -427,9 +427,9 @@ DENG_GUI_PIMPL(PackagesWidget) // Search/filter terms. search->rule() - .setInput(Rule::Left, self().rule().left()) - .setInput(Rule::Right, self().rule().right()) - .setInput(Rule::Top, self().rule().top()); + .setInput(Rule::Left, self().rule().left() + self().margins().left()) + .setInput(Rule::Right, self().rule().right() - self().margins().right()) + .setInput(Rule::Top, self().rule().top() + self().margins().top()); search->setEmptyContentHint(tr("Search packages")); search->setSignalOnEnter(true); search->margins().setRight(style().fonts().font("default").height() + rule("gap")); @@ -484,9 +484,9 @@ DENG_GUI_PIMPL(PackagesWidget) } menu->layout().setRowPadding(Const(0)); menu->rule() - .setInput(Rule::Left, self().rule().left()) - .setInput(Rule::Right, self().rule().right()) - .setInput(Rule::Top, self().rule().top() + search->rule().height()); + .setInput(Rule::Left, self().rule().left() + self().margins().left()) + .setInput(Rule::Right, self().rule().right() - self().margins().right()) + .setInput(Rule::Top, self().rule().top() + self().margins().top() + search->rule().height()); menu->organizer().setWidgetFactory(*this); menu->setVirtualizationEnabled(true, rule("gap").valuei()*2 + rule(RuleBank::UNIT).valuei() + int(style().fonts().font("default").height().value()*3)); @@ -508,7 +508,8 @@ DENG_GUI_PIMPL(PackagesWidget) // By default, only the progress indicator is shown. showProgressIndicator(true); - self().rule().setInput(Rule::Height, search->rule().height() + menu->rule().height()); + self().rule().setInput(Rule::Height, search->rule().height() + menu->rule().height() + + self().margins().height()); } ~Impl() @@ -751,6 +752,7 @@ PackagesWidget::PackagesWidget(StringList const &manualPackageIds, String const : GuiWidget(name) , d(new Impl(this)) { + margins().set(ConstantRule::zero()); setManualPackageIds(manualPackageIds); } @@ -787,7 +789,7 @@ void PackagesWidget::setPopulationEnabled(bool enable) void PackagesWidget::setFilterEditorMinimumY(Rule const &minY) { - d->search->rule().setInput(Rule::Top, OperatorRule::maximum(minY, rule().top())); + d->search->rule().setInput(Rule::Top, OperatorRule::maximum(minY, rule().top() + margins().top())); changeRef(d->searchMinY, minY); }