summaryrefslogtreecommitdiffstats
path: root/shemov.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'shemov.cpp')
-rw-r--r--shemov.cpp37
1 files changed, 26 insertions, 11 deletions
diff --git a/shemov.cpp b/shemov.cpp
index e63b93b..79712dd 100644
--- a/shemov.cpp
+++ b/shemov.cpp
@@ -332,12 +332,19 @@ void SheMov::createActions(){
mDeleteFilesA = new QAction(tr("Delete selected..."), this);
mDeleteFilesA->setShortcut(tr("CTRL+d"));
connect(mDeleteFilesA, SIGNAL(triggered()), mFSWidget, SLOT(deleteFiles()));
- mCopyA = new QAction(tr("Copy file(s)..."), this);
- mCopyA->setShortcut(tr("CTRL+v"));
- connect(mCopyA, SIGNAL(triggered()), mFSWidget, SLOT(copyFiles()));
- mMoveA = new QAction(tr("Move file(s)..."), this);
- mMoveA->setShortcut(tr("CTRL+m"));
- connect(mMoveA, SIGNAL(triggered()), mFSWidget, SLOT(moveFiles()));
+ QSignalMapper *copyCutMapper = new QSignalMapper(this);
+ mCopyA = new QAction(tr("Copy"), this);
+ mCopyA->setShortcut(tr("CTRL+c"));
+ copyCutMapper->setMapping(mCopyA, FilesystemWidget::Copy);
+ connect(mCopyA, SIGNAL(triggered()), copyCutMapper, SLOT(map()));
+ mCutA = new QAction(tr("Cut"), this);
+ mCutA->setShortcut(tr("CTRL+x"));
+ copyCutMapper->setMapping(mCutA, FilesystemWidget::Cut);
+ connect(mCutA, SIGNAL(triggered()), copyCutMapper, SLOT(map()));
+ connect(copyCutMapper, SIGNAL(mapped(int)), mFSWidget, SLOT(toClipboard(int)));
+ mPasteA = new QAction(tr("Paste"), this);
+ mPasteA->setShortcut(tr("Ctrl+v"));
+ connect(mPasteA, SIGNAL(triggered()), mFSWidget, SLOT(fromClipboard()));
mRenameA = new QAction(tr("Rename..."), this);
mRenameA->setShortcut(tr("CTRL+r"));
connect(mRenameA, SIGNAL(triggered()), mFSWidget, SLOT(renameFile()));
@@ -380,7 +387,6 @@ void SheMov::createActions(){
mRenameMapper->setMapping(mRenameCoverBA, tr("back"));
mRenameCoverBA->setData("RenameMenu");
mRenameCoverCA = new QAction(tr("Rename to cover"), this);
- mRenameCoverCA->setShortcut(tr("CTRL+c"));
connect(mRenameCoverCA, SIGNAL(triggered()), mRenameMapper, SLOT(map()));
mRenameMapper->setMapping(mRenameCoverCA, tr("cover"));
mRenameCoverCA->setData("RenameMenu");
@@ -549,17 +555,22 @@ void SheMov::createMenus(){
mEditFSMenu->addAction(mDeleteFilesA);
mEditFSMenu->addSeparator();
mEditFSMenu->addAction(mCopyA);
- mEditFSMenu->addAction(mMoveA);
+ mEditFSMenu->addAction(mCutA);
+ mEditFSMenu->addAction(mPasteA);
mEditFSMenu->addAction(mRenameA);
mRenameMenu = new QMenu(tr("&Rename..."), this);
mRenameMenu->addAction(mTemplateA);
mRenameMenu->addAction(mRenameCoverFA);
mRenameMenu->addAction(mRenameCoverBA);
mRenameMenu->addAction(mRenameCoverCA);
- mRenameMenuA = new QAction(tr("&Rename"), this);
+ mRenameMenuA = new QAction(tr("&Rename to"), this);
mRenameMenuA->setMenu(mRenameMenu);
mEditFSMenu->addAction(mRenameMenuA);
mEditFSMenu->addSeparator();
+ mEditFSMenu->addAction(mCopyA);
+ mEditFSMenu->addAction(mCutA);
+ mEditFSMenu->addAction(mPasteA);
+ mEditFSMenu->addSeparator();
mEditFSMenu->addAction(mMountDvdA);
mEditFSMenu->addSeparator();
mEditFSMenu->addAction(mMarkA);
@@ -636,9 +647,13 @@ void SheMov::createMenus(){
mFSWidget->fileView()->addAction(mCreateFolderA);
mFSWidget->fileView()->addAction(mDeleteFilesA);
mFSWidget->fileView()->addAction(mRenameA);
- mFSWidget->fileView()->addAction(mCopyA);
- mFSWidget->fileView()->addAction(mMoveA);
mFSWidget->fileView()->addAction(mRenameMenuA);
+ QAction *sep16 = new QAction(this);
+ sep16->setSeparator(true);
+ mFSWidget->fileView()->addAction(sep16);
+ mFSWidget->fileView()->addAction(mCopyA);
+ mFSWidget->fileView()->addAction(mCutA);
+ mFSWidget->fileView()->addAction(mPasteA);
QAction *sep10 = new QAction(this);
sep10->setSeparator(true);
mFSWidget->fileView()->addAction(sep10);