mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-30 10:33:54 -07:00
add new folder button to game replays tab (#5317)
This commit is contained in:
parent
6e470d788e
commit
3e5f2fd8b2
2 changed files with 29 additions and 2 deletions
|
|
@ -78,9 +78,13 @@ TabReplays::TabReplays(TabSupervisor *_tabSupervisor, AbstractClient *_client) :
|
||||||
aOpenLocalReplay->setIcon(QPixmap("theme:icons/view"));
|
aOpenLocalReplay->setIcon(QPixmap("theme:icons/view"));
|
||||||
connect(aOpenLocalReplay, SIGNAL(triggered()), this, SLOT(actOpenLocalReplay()));
|
connect(aOpenLocalReplay, SIGNAL(triggered()), this, SLOT(actOpenLocalReplay()));
|
||||||
connect(localDirView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(actOpenLocalReplay()));
|
connect(localDirView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(actOpenLocalReplay()));
|
||||||
|
aNewLocalFolder = new QAction(this);
|
||||||
|
aNewLocalFolder->setIcon(qApp->style()->standardIcon(QStyle::SP_FileDialogNewFolder));
|
||||||
|
connect(aNewLocalFolder, &QAction::triggered, this, &TabReplays::actNewLocalFolder);
|
||||||
aDeleteLocalReplay = new QAction(this);
|
aDeleteLocalReplay = new QAction(this);
|
||||||
aDeleteLocalReplay->setIcon(QPixmap("theme:icons/remove_row"));
|
aDeleteLocalReplay->setIcon(QPixmap("theme:icons/remove_row"));
|
||||||
connect(aDeleteLocalReplay, SIGNAL(triggered()), this, SLOT(actDeleteLocalReplay()));
|
connect(aDeleteLocalReplay, SIGNAL(triggered()), this, SLOT(actDeleteLocalReplay()));
|
||||||
|
|
||||||
aOpenRemoteReplay = new QAction(this);
|
aOpenRemoteReplay = new QAction(this);
|
||||||
aOpenRemoteReplay->setIcon(QPixmap("theme:icons/view"));
|
aOpenRemoteReplay->setIcon(QPixmap("theme:icons/view"));
|
||||||
connect(aOpenRemoteReplay, SIGNAL(triggered()), this, SLOT(actOpenRemoteReplay()));
|
connect(aOpenRemoteReplay, SIGNAL(triggered()), this, SLOT(actOpenRemoteReplay()));
|
||||||
|
|
@ -96,6 +100,7 @@ TabReplays::TabReplays(TabSupervisor *_tabSupervisor, AbstractClient *_client) :
|
||||||
connect(aDeleteRemoteReplay, SIGNAL(triggered()), this, SLOT(actDeleteRemoteReplay()));
|
connect(aDeleteRemoteReplay, SIGNAL(triggered()), this, SLOT(actDeleteRemoteReplay()));
|
||||||
|
|
||||||
leftToolBar->addAction(aOpenLocalReplay);
|
leftToolBar->addAction(aOpenLocalReplay);
|
||||||
|
leftToolBar->addAction(aNewLocalFolder);
|
||||||
leftToolBar->addAction(aDeleteLocalReplay);
|
leftToolBar->addAction(aDeleteLocalReplay);
|
||||||
rightToolBar->addAction(aOpenRemoteReplay);
|
rightToolBar->addAction(aOpenRemoteReplay);
|
||||||
rightToolBar->addAction(aDownload);
|
rightToolBar->addAction(aDownload);
|
||||||
|
|
@ -118,6 +123,7 @@ void TabReplays::retranslateUi()
|
||||||
rightGroupBox->setTitle(tr("Server replay storage"));
|
rightGroupBox->setTitle(tr("Server replay storage"));
|
||||||
|
|
||||||
aOpenLocalReplay->setText(tr("Watch replay"));
|
aOpenLocalReplay->setText(tr("Watch replay"));
|
||||||
|
aNewLocalFolder->setText(tr("New folder"));
|
||||||
aDeleteLocalReplay->setText(tr("Delete"));
|
aDeleteLocalReplay->setText(tr("Delete"));
|
||||||
aOpenRemoteReplay->setText(tr("Watch replay"));
|
aOpenRemoteReplay->setText(tr("Watch replay"));
|
||||||
aDownload->setText(tr("Download replay"));
|
aDownload->setText(tr("Download replay"));
|
||||||
|
|
@ -146,6 +152,26 @@ void TabReplays::actOpenLocalReplay()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TabReplays::actNewLocalFolder()
|
||||||
|
{
|
||||||
|
QModelIndex curLeft = localDirView->selectionModel()->currentIndex();
|
||||||
|
|
||||||
|
QModelIndex dirIndex;
|
||||||
|
if (curLeft.isValid() && !localDirModel->isDir(curLeft)) {
|
||||||
|
dirIndex = curLeft.parent();
|
||||||
|
} else {
|
||||||
|
dirIndex = curLeft;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool ok;
|
||||||
|
QString folderName =
|
||||||
|
QInputDialog::getText(this, tr("New folder"), tr("Name of new folder:"), QLineEdit::Normal, "", &ok);
|
||||||
|
if (!ok || folderName.isEmpty())
|
||||||
|
return;
|
||||||
|
|
||||||
|
localDirModel->mkdir(dirIndex, folderName);
|
||||||
|
}
|
||||||
|
|
||||||
void TabReplays::actDeleteLocalReplay()
|
void TabReplays::actDeleteLocalReplay()
|
||||||
{
|
{
|
||||||
QModelIndexList curLefts = localDirView->selectionModel()->selectedRows();
|
QModelIndexList curLefts = localDirView->selectionModel()->selectedRows();
|
||||||
|
|
|
||||||
|
|
@ -25,10 +25,11 @@ private:
|
||||||
RemoteReplayList_TreeWidget *serverDirView;
|
RemoteReplayList_TreeWidget *serverDirView;
|
||||||
QGroupBox *leftGroupBox, *rightGroupBox;
|
QGroupBox *leftGroupBox, *rightGroupBox;
|
||||||
|
|
||||||
QAction *aOpenLocalReplay, *aDeleteLocalReplay, *aOpenRemoteReplay, *aDownload, *aKeep, *aDeleteRemoteReplay;
|
QAction *aOpenLocalReplay, *aNewLocalFolder, *aDeleteLocalReplay;
|
||||||
|
QAction *aOpenRemoteReplay, *aDownload, *aKeep, *aDeleteRemoteReplay;
|
||||||
private slots:
|
private slots:
|
||||||
void actOpenLocalReplay();
|
void actOpenLocalReplay();
|
||||||
|
void actNewLocalFolder();
|
||||||
void actDeleteLocalReplay();
|
void actDeleteLocalReplay();
|
||||||
|
|
||||||
void actOpenRemoteReplay();
|
void actOpenRemoteReplay();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue