summaryrefslogtreecommitdiffstats
path: root/shemov.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'shemov.cpp')
-rw-r--r--shemov.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/shemov.cpp b/shemov.cpp
index 1e68bd5..ec882e8 100644
--- a/shemov.cpp
+++ b/shemov.cpp
@@ -433,6 +433,20 @@ void SheMov::createActions(){
connect(mDeleteFilesFromTreeA, SIGNAL(triggered()), mATree->filesWidget(), SLOT(removeFiles()));
mFilePropertiesA = new QAction(tr("Properties..."), this);
connect(mFilePropertiesA, SIGNAL(triggered()), mATree->filesWidget(), SLOT(fileProperties()));
+ QSignalMapper *copyMapper = new QSignalMapper(this);
+ mCopyUnixFullPathA = new QAction(tr("Copy unix file"), this);
+ copyMapper->setMapping(mCopyUnixFullPathA, ArchiveTreeView::UnixFullPath);
+ connect(mCopyUnixFullPathA, SIGNAL(triggered()), copyMapper, SLOT(map()));
+ mCopyUnixDirA = new QAction(tr("Copy unix directory"), this);
+ copyMapper->setMapping(mCopyUnixDirA, ArchiveTreeView::UnixDir);
+ connect(mCopyUnixDirA, SIGNAL(triggered()), copyMapper, SLOT(map()));
+ mCopyWindowsFullPathA = new QAction(tr("Copy windows file"), this);
+ copyMapper->setMapping(mCopyWindowsFullPathA, ArchiveTreeView::WindowsFullPath);
+ connect(mCopyWindowsFullPathA, SIGNAL(triggered()), copyMapper, SLOT(map()));
+ mCopyWindowsDirA = new QAction(tr("Copy windows directory"), this);
+ copyMapper->setMapping(mCopyWindowsDirA, ArchiveTreeView::WindowsDir);
+ connect(mCopyWindowsDirA, SIGNAL(triggered()), copyMapper, SLOT(map()));
+ connect(copyMapper, SIGNAL(mapped(int)), mATree, SLOT(copyPath(int)));
// misc
mOpenWithMapperFS = new QSignalMapper(this);
@@ -583,6 +597,20 @@ void SheMov::createMenus(){
QAction *sep9 = new QAction(this);
sep9->setSeparator(true);
mATree->filesWidget()->filesTree()->addAction(sep9);
+ QMenu *copyMenu = new QMenu(this);
+ copyMenu->addAction(mCopyUnixFullPathA);
+ copyMenu->addAction(mCopyUnixDirA);
+ QAction *sep13 = new QAction(this);
+ sep13->setSeparator(true);
+ copyMenu->addAction(sep13);
+ copyMenu->addAction(mCopyWindowsFullPathA);
+ copyMenu->addAction(mCopyWindowsDirA);
+ QAction *copyAction = new QAction(tr("Copy to clipboard"), this);
+ copyAction->setMenu(copyMenu);
+ mATree->filesWidget()->filesTree()->addAction(copyAction);
+ QAction *sep12 = new QAction(this);
+ sep12->setSeparator(true);
+ mATree->filesWidget()->filesTree()->addAction(sep12);
mATree->filesWidget()->filesTree()->addAction(mFilePropertiesA);
}