mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-09 15:54:47 -07:00
Reworked the layout of "edit sets" window
This commit is contained in:
parent
58a5834f34
commit
44800df89c
7 changed files with 3234 additions and 49 deletions
|
|
@ -10,10 +10,48 @@
|
|||
#include <QGroupBox>
|
||||
#include <QDialogButtonBox>
|
||||
#include <QVBoxLayout>
|
||||
#include <QToolBar>
|
||||
#include <QAction>
|
||||
#include <QLabel>
|
||||
|
||||
WndSets::WndSets(QWidget *parent)
|
||||
: QMainWindow(parent)
|
||||
{
|
||||
// left toolbar
|
||||
QToolBar *setsEditToolBar = new QToolBar;
|
||||
setsEditToolBar->setOrientation(Qt::Vertical);
|
||||
setsEditToolBar->setIconSize(QSize(24, 24));
|
||||
setsEditToolBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
|
||||
|
||||
aTop = new QAction(QString(), this);
|
||||
aTop->setIcon(QIcon(":/resources/arrow_top_green.svg"));
|
||||
aTop->setToolTip(tr("Move selected set to top"));
|
||||
aTop->setEnabled(false);
|
||||
connect(aTop, SIGNAL(triggered()), this, SLOT(actTop()));
|
||||
setsEditToolBar->addAction(aTop);
|
||||
|
||||
aUp = new QAction(QString(), this);
|
||||
aUp->setIcon(QIcon(":/resources/arrow_up_green.svg"));
|
||||
aUp->setToolTip(tr("Move selected set up"));
|
||||
aUp->setEnabled(false);
|
||||
connect(aUp, SIGNAL(triggered()), this, SLOT(actUp()));
|
||||
setsEditToolBar->addAction(aUp);
|
||||
|
||||
aDown = new QAction(QString(), this);
|
||||
aDown->setIcon(QIcon(":/resources/arrow_down_green.svg"));
|
||||
aDown->setToolTip(tr("Move selected set down"));
|
||||
aDown->setEnabled(false);
|
||||
connect(aDown, SIGNAL(triggered()), this, SLOT(actDown()));
|
||||
setsEditToolBar->addAction(aDown);
|
||||
|
||||
aBottom = new QAction(QString(), this);
|
||||
aBottom->setIcon(QIcon(":/resources/arrow_bottom_green.svg"));
|
||||
aBottom->setToolTip(tr("Move selected set to bottom"));
|
||||
aBottom->setEnabled(false);
|
||||
connect(aBottom, SIGNAL(triggered()), this, SLOT(actBottom()));
|
||||
setsEditToolBar->addAction(aBottom);
|
||||
|
||||
// view
|
||||
model = new SetsModel(db, this);
|
||||
view = new QTreeView;
|
||||
view->setModel(model);
|
||||
|
|
@ -43,59 +81,32 @@ WndSets::WndSets(QWidget *parent)
|
|||
view->setColumnHidden(SetsModel::IsKnownCol, true);
|
||||
view->setRootIsDecorated(false);
|
||||
|
||||
enableButton = new QPushButton(tr("Enable set"));
|
||||
connect(enableButton, SIGNAL(clicked()), this, SLOT(actEnable()));
|
||||
disableButton = new QPushButton(tr("Disable set"));
|
||||
connect(disableButton, SIGNAL(clicked()), this, SLOT(actDisable()));
|
||||
connect(view->selectionModel(), SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)),
|
||||
this, SLOT(actToggleButtons(const QItemSelection &, const QItemSelection &)));
|
||||
|
||||
// bottom buttons
|
||||
enableAllButton = new QPushButton(tr("Enable all sets"));
|
||||
connect(enableAllButton, SIGNAL(clicked()), this, SLOT(actEnableAll()));
|
||||
disableAllButton = new QPushButton(tr("Disable all sets"));
|
||||
connect(disableAllButton, SIGNAL(clicked()), this, SLOT(actDisableAll()));
|
||||
|
||||
upButton = new QPushButton(tr("Move selected set up"));
|
||||
connect(upButton, SIGNAL(clicked()), this, SLOT(actUp()));
|
||||
downButton = new QPushButton(tr("Move selected set down"));
|
||||
connect(downButton, SIGNAL(clicked()), this, SLOT(actDown()));
|
||||
topButton = new QPushButton(tr("Move selected set to top"));
|
||||
connect(topButton, SIGNAL(clicked()), this, SLOT(actTop()));
|
||||
bottomButton = new QPushButton(tr("Move selected set to bottom"));
|
||||
connect(bottomButton, SIGNAL(clicked()), this, SLOT(actBottom()));
|
||||
|
||||
enableButton->setDisabled(true);
|
||||
disableButton->setDisabled(true);
|
||||
upButton->setDisabled(true);
|
||||
downButton->setDisabled(true);
|
||||
topButton->setDisabled(true);
|
||||
bottomButton->setDisabled(true);
|
||||
|
||||
connect(view->selectionModel(), SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)),
|
||||
this, SLOT(actToggleButtons(const QItemSelection &, const QItemSelection &)));
|
||||
|
||||
QGroupBox *toggleFrame = new QGroupBox(tr("Enable sets"));
|
||||
QVBoxLayout *toggleVBox = new QVBoxLayout;
|
||||
toggleVBox->addWidget(enableButton);
|
||||
toggleVBox->addWidget(disableButton);
|
||||
toggleVBox->addWidget(enableAllButton);
|
||||
toggleVBox->addWidget(disableAllButton);
|
||||
toggleFrame->setLayout(toggleVBox);
|
||||
|
||||
QGroupBox *sortFrame = new QGroupBox(tr("Sort sets"));
|
||||
QVBoxLayout *sortVBox = new QVBoxLayout;
|
||||
sortVBox->addWidget(upButton);
|
||||
sortVBox->addWidget(downButton);
|
||||
sortVBox->addWidget(topButton);
|
||||
sortVBox->addWidget(bottomButton);
|
||||
sortFrame->setLayout(sortVBox);
|
||||
QLabel *labNotes = new QLabel;
|
||||
labNotes->setText("Enable the sets that you want to have available in the deck editor.\nMove sets around to change their order, or click on a column header to sort sets on that field.\nSets order decides the source that will be used when loading images for a specific card.\nDisabled sets will still be used for loading images.");
|
||||
|
||||
QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
|
||||
connect(buttonBox, SIGNAL(accepted()), this, SLOT(actSave()));
|
||||
connect(buttonBox, SIGNAL(rejected()), this, SLOT(actRestore()));
|
||||
|
||||
QGridLayout *mainLayout = new QGridLayout;
|
||||
mainLayout->addWidget(view, 0, 0, 1, 2);
|
||||
mainLayout->addWidget(toggleFrame, 1, 0, 1, 1);
|
||||
mainLayout->addWidget(sortFrame, 1, 1, 1, 1);
|
||||
mainLayout->addWidget(buttonBox, 2, 0, 1, 2);
|
||||
mainLayout->addWidget(setsEditToolBar, 0, 0, 1, 1);
|
||||
mainLayout->addWidget(view, 0, 1, 1, 2);
|
||||
mainLayout->addWidget(enableAllButton, 1, 1, 1, 1);
|
||||
mainLayout->addWidget(disableAllButton, 1, 2, 1, 1);
|
||||
mainLayout->addWidget(labNotes, 2, 1, 1, 2);
|
||||
mainLayout->addWidget(buttonBox, 3, 1, 1, 2);
|
||||
mainLayout->setColumnStretch(1, 1);
|
||||
mainLayout->setColumnStretch(2, 1);
|
||||
|
||||
QWidget *centralWidget = new QWidget;
|
||||
centralWidget->setLayout(mainLayout);
|
||||
|
|
@ -125,12 +136,10 @@ void WndSets::actRestore()
|
|||
void WndSets::actToggleButtons(const QItemSelection & selected, const QItemSelection &)
|
||||
{
|
||||
bool disabled = selected.empty();
|
||||
upButton->setDisabled(disabled);
|
||||
downButton->setDisabled(disabled);
|
||||
topButton->setDisabled(disabled);
|
||||
bottomButton->setDisabled(disabled);
|
||||
enableButton->setDisabled(disabled);
|
||||
disableButton->setDisabled(disabled);
|
||||
aTop->setDisabled(disabled);
|
||||
aUp->setDisabled(disabled);
|
||||
aDown->setDisabled(disabled);
|
||||
aBottom->setDisabled(disabled);
|
||||
}
|
||||
|
||||
void WndSets::selectRow(int row)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue