mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-25 08:03:54 -07:00
Support multi-select for remote decks in deck storage tab (#5315)
* enable multiselection * support multi open deck * support multi download * support multi delete
This commit is contained in:
parent
a40d8092ce
commit
6e470d788e
4 changed files with 65 additions and 41 deletions
|
|
@ -300,6 +300,7 @@ RemoteDeckList_TreeWidget::RemoteDeckList_TreeWidget(AbstractClient *_client, QW
|
|||
|
||||
header()->setSectionResizeMode(QHeaderView::ResizeToContents);
|
||||
setUniformRowHeights(true);
|
||||
setSelectionMode(QAbstractItemView::ExtendedSelection);
|
||||
setSortingEnabled(true);
|
||||
proxyModel->sort(0, Qt::AscendingOrder);
|
||||
header()->setSortIndicator(0, Qt::AscendingOrder);
|
||||
|
|
@ -315,6 +316,15 @@ RemoteDeckList_TreeModel::Node *RemoteDeckList_TreeWidget::getCurrentItem() cons
|
|||
return getNode(selectionModel()->currentIndex());
|
||||
}
|
||||
|
||||
QList<RemoteDeckList_TreeModel::Node *> RemoteDeckList_TreeWidget::getCurrentSelection() const
|
||||
{
|
||||
auto list = QList<RemoteDeckList_TreeModel::Node *>();
|
||||
for (const auto &row : selectionModel()->selectedRows()) {
|
||||
list << getNode(row);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
RemoteDeckList_TreeModel::DirectoryNode *RemoteDeckList_TreeWidget::getNodeByPath(const QString &path) const
|
||||
{
|
||||
return treeModel->getRoot()->getNodeByPath(path.split("/"));
|
||||
|
|
|
|||
|
|
@ -118,6 +118,7 @@ public:
|
|||
RemoteDeckList_TreeWidget(AbstractClient *_client, QWidget *parent = nullptr);
|
||||
RemoteDeckList_TreeModel::Node *getNode(const QModelIndex &ind) const;
|
||||
RemoteDeckList_TreeModel::Node *getCurrentItem() const;
|
||||
QList<RemoteDeckList_TreeModel::Node *> getCurrentSelection() const;
|
||||
RemoteDeckList_TreeModel::DirectoryNode *getNodeByPath(const QString &path) const;
|
||||
RemoteDeckList_TreeModel::FileNode *getNodeById(int id) const;
|
||||
void addFileToTree(const ServerInfo_DeckStorage_TreeItem &file, RemoteDeckList_TreeModel::DirectoryNode *parent);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue