Add copy files to database view
This commit is contained in:
@@ -9,6 +9,9 @@
|
|||||||
#include <QMenu>
|
#include <QMenu>
|
||||||
#include <QContextMenuEvent>
|
#include <QContextMenuEvent>
|
||||||
#include <QRegularExpression>
|
#include <QRegularExpression>
|
||||||
|
#include <QGuiApplication>
|
||||||
|
#include <QClipboard>
|
||||||
|
#include <QMimeData>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include "batchprocessing.h"
|
#include "batchprocessing.h"
|
||||||
|
|
||||||
@@ -263,6 +266,7 @@ void DatabaseTableView::contextMenuEvent(QContextMenuEvent *event)
|
|||||||
QAction *unmark = menu.addAction(tr("Unmark"));
|
QAction *unmark = menu.addAction(tr("Unmark"));
|
||||||
QAction *open = menu.addAction(tr("Open"));
|
QAction *open = menu.addAction(tr("Open"));
|
||||||
QAction *openDirAction = menu.addAction(tr("Open file location"));
|
QAction *openDirAction = menu.addAction(tr("Open file location"));
|
||||||
|
QAction *copyPath = menu.addAction(tr("Copy files"));
|
||||||
|
|
||||||
QAction *a = menu.exec(event->globalPos());
|
QAction *a = menu.exec(event->globalPos());
|
||||||
if(a == nullptr)
|
if(a == nullptr)
|
||||||
@@ -278,6 +282,22 @@ void DatabaseTableView::contextMenuEvent(QContextMenuEvent *event)
|
|||||||
emit openFile(indexes);
|
emit openFile(indexes);
|
||||||
else if(a == openDirAction)
|
else if(a == openDirAction)
|
||||||
emit openDir(indexes);
|
emit openDir(indexes);
|
||||||
|
else if(a == copyPath)
|
||||||
|
{
|
||||||
|
QStringList paths;
|
||||||
|
QList<QUrl> urls;
|
||||||
|
for(auto &index : indexes)
|
||||||
|
{
|
||||||
|
QString path = index.siblingAtColumn(0).data().toString();
|
||||||
|
paths.append(path);
|
||||||
|
urls.append(QUrl::fromLocalFile(path));
|
||||||
|
}
|
||||||
|
QMimeData *data = new QMimeData;
|
||||||
|
data->setUrls(urls);
|
||||||
|
data->setText(paths.join('\n'));
|
||||||
|
QClipboard *clipboard = QGuiApplication::clipboard();
|
||||||
|
clipboard->setMimeData(data);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
DataBaseView::DataBaseView(Database *database, QWidget *parent) : QWidget(parent)
|
DataBaseView::DataBaseView(Database *database, QWidget *parent) : QWidget(parent)
|
||||||
|
|||||||
@@ -153,6 +153,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
|
|||||||
databaseViewDock->setWidget(m_databaseView);
|
databaseViewDock->setWidget(m_databaseView);
|
||||||
databaseViewDock->setObjectName("databaseViewDock");
|
databaseViewDock->setObjectName("databaseViewDock");
|
||||||
databaseViewDock->hide();
|
databaseViewDock->hide();
|
||||||
|
connect(databaseViewDock, &QDockWidget::visibilityChanged, m_databaseView, &DataBaseView::visible);
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, databaseViewDock);
|
addDockWidget(Qt::BottomDockWidgetArea, databaseViewDock);
|
||||||
|
|
||||||
QDockWidget *filetreeDock = nullptr;
|
QDockWidget *filetreeDock = nullptr;
|
||||||
|
|||||||
Reference in New Issue
Block a user