# HG changeset patch # User Wuzzy # Date 1521056354 -3600 # Node ID c681492df36d44ce5bddd0e29a9fb1c95e2371d7 # Parent 9565569e410c4d553d077af4da73b4ba1579730a Drawn map page: Move save and load buttons, fix points label overlap diff -r 9565569e410c -r c681492df36d QTfrontend/ui/page/pagedrawmap.cpp --- a/QTfrontend/ui/page/pagedrawmap.cpp Wed Mar 14 20:00:09 2018 +0100 +++ b/QTfrontend/ui/page/pagedrawmap.cpp Wed Mar 14 20:39:14 2018 +0100 @@ -32,22 +32,23 @@ cbEraser = new QCheckBox(tr("Eraser"), this); pageLayout->addWidget(cbEraser, 0, 0); - pbUndo = addButton(tr("Undo"), pageLayout, 1, 0); rbPolyline = new QRadioButton(tr("Polyline"), this); - pageLayout->addWidget(rbPolyline, 2, 0); + pageLayout->addWidget(rbPolyline, 1, 0); rbRectangle = new QRadioButton(tr("Rectangle"), this); - pageLayout->addWidget(rbRectangle, 3, 0); + pageLayout->addWidget(rbRectangle, 2, 0); rbEllipse = new QRadioButton(tr("Ellipse"), this); - pageLayout->addWidget(rbEllipse, 4, 0); + pageLayout->addWidget(rbEllipse, 3, 0); rbPolyline->setChecked(true); + pbUndo = addButton(tr("Undo"), pageLayout, 4, 0); pbClear = addButton(tr("Clear"), pageLayout, 5, 0); + pbOptimize = addButton(tr("Optimize"), pageLayout, 6, 0); + // The optimize button is quite buggy, so we disable it for now. + // TODO: Re-enable optimize button when it's finished. pbOptimize->setVisible(false); - pbLoad = addButton(tr("Load"), pageLayout, 7, 0); - pbSave = addButton(tr("Save"), pageLayout, 8, 0); drawMapWidget = new DrawMapWidget(this); pageLayout->addWidget(drawMapWidget, 0, 1, 10, 1); @@ -55,6 +56,23 @@ return pageLayout; } +QLayout * PageDrawMap::footerLayoutDefinition() +{ + QHBoxLayout * bottomLayout = new QHBoxLayout(); + + bottomLayout->addStretch(); + + pbLoad = addButton(":/res/Load.png", bottomLayout, 0, true, Qt::AlignBottom); + pbLoad ->setWhatsThis(tr("Load")); + pbLoad->setStyleSheet("QPushButton{margin: 24px 0 0 0;}"); + + pbSave = addButton(":/res/Save.png", bottomLayout, 0, true, Qt::AlignBottom); + pbSave ->setWhatsThis(tr("Save")); + pbSave->setStyleSheet("QPushButton{margin: 24px 0 0 0;}"); + + return bottomLayout; +} + void PageDrawMap::connectSignals() { connect(cbEraser, SIGNAL(toggled(bool)), drawMapWidget, SLOT(setErasing(bool))); diff -r 9565569e410c -r c681492df36d QTfrontend/ui/page/pagedrawmap.h --- a/QTfrontend/ui/page/pagedrawmap.h Wed Mar 14 20:00:09 2018 +0100 +++ b/QTfrontend/ui/page/pagedrawmap.h Wed Mar 14 20:39:14 2018 +0100 @@ -35,6 +35,7 @@ protected: QLayout * bodyLayoutDefinition(); + QLayout * footerLayoutDefinition(); void connectSignals(); private: diff -r 9565569e410c -r c681492df36d QTfrontend/ui/widget/drawmapwidget.h --- a/QTfrontend/ui/widget/drawmapwidget.h Wed Mar 14 20:00:09 2018 +0100 +++ b/QTfrontend/ui/widget/drawmapwidget.h Wed Mar 14 20:39:14 2018 +0100 @@ -59,11 +59,13 @@ { QVBoxLayout * vbox = new QVBoxLayout(drawMapWidget); vbox->setMargin(0); - lblPoints = new QLabel("0", drawMapWidget); QLayout * arLayout = new QVBoxLayout(); arLayout->setAlignment(Qt::AlignCenter); vbox->addLayout(arLayout); + lblPoints = new QLabel("0", drawMapWidget); + arLayout->addWidget(lblPoints); + graphicsView = new DrawMapView(drawMapWidget); graphicsView->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); graphicsView->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);