summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--shemovcleaner.cpp61
-rw-r--r--shemovcleaner.h16
-rw-r--r--torrentdisplay.cpp7
-rw-r--r--torrentwidget.cpp62
-rw-r--r--torrentwidget.h12
5 files changed, 77 insertions, 81 deletions
diff --git a/shemovcleaner.cpp b/shemovcleaner.cpp
index 3ba0802..c0c6048 100644
--- a/shemovcleaner.cpp
+++ b/shemovcleaner.cpp
@@ -38,7 +38,6 @@ ShemovCleaner::ShemovCleaner(QWidget *parent, Qt::WindowFlags f) : QMainWindow(p
mTab->addTab(mTorrentTab, tr("&Torrents"));
mTab->addTab(mFileTab, tr("Fi&les"));
setCentralWidget(mTab);
- createActions();
connect(mTorrentTab, SIGNAL(statusMessage(QString)), this, SLOT(statusBarMessage(QString)));
connect(mTorrentTab, SIGNAL(selectionCountChanged(QString)), this, SLOT(setSelectionCount(QString)));
@@ -119,66 +118,6 @@ void ShemovCleaner::createGlobalActions(){
Globals::instance()->addAction(configA);
}
-void ShemovCleaner::createActions(){
- //TorrentWidget
- mTorRefreshA = new QAction(QIcon(":/refresh.png"), tr("Refresh"), this);
- connect(mTorRefreshA, SIGNAL(triggered()), mTorrentTab, SLOT(gatherData()));
- mTorDeleteA = new QAction(QIcon(":/delete.png"), tr("Delete..."), this);
- connect(mTorDeleteA, SIGNAL(triggered()), mTorrentTab, SLOT(deleteFiles()));
- mTorMoveA = new QAction(QIcon(":/diaper.png"), tr("Move..."), this);
- connect(mTorMoveA, SIGNAL(triggered()), mTorrentTab, SLOT(moveFiles()));
- mTorInfoA = new QAction(QIcon(":/huge_bra.png"), tr("Torrent info..."), this);
- connect(mTorInfoA, SIGNAL(triggered()), mTorrentTab, SLOT(torrentInfo()));
- mTorDirA = new QAction(QIcon(":/folder.png"), tr("Select folder..."), this);
- connect(mTorDirA, SIGNAL(triggered()), mTorrentTab, SLOT(selectDir()));
- mFnThisCopyToClipA = new QAction(QIcon(":/edit-copy.png"), tr("Copy"), this);
- connect(mFnThisCopyToClipA, SIGNAL(triggered()), mTorrentTab, SLOT(copyToClipboard()));
-
- mTorrentTab->toolBar()->addAction(mTorRefreshA);
- mTorrentTab->toolBar()->addAction(mFnThisCopyToClipA);
- mTorrentTab->toolBar()->addSeparator();
- mTorrentTab->toolBar()->addAction(mTorDirA);
- mTorrentTab->toolBar()->addAction(mTorMoveA);
- mTorrentTab->toolBar()->addAction(mTorDeleteA);
- mTorrentTab->toolBar()->addSeparator();
- mTorrentTab->toolBar()->addAction(mTorInfoA);
- mTorrentTab->toolBar()->addSeparator();
- //mTorrentTab->toolBar()->addAction(configA);
- QMenu *torFileM = new QMenu(tr("File"));
- torFileM->addAction(mTorDirA);
- torFileM->addAction(mTorRefreshA);
- torFileM->addSeparator();
- //torFileM->addAction(quitA);
- mTorrentTab->menuBar()->addMenu(torFileM);
- QMenu *torEditM = new QMenu(tr("Edit"));
- torEditM->addAction(mTorInfoA);
- torEditM->addSeparator();
- torEditM->addAction(mTorRefreshA);
- torEditM->addAction(mFnThisCopyToClipA);
- torEditM->addSeparator();
- torEditM->addAction(mTorMoveA);
- torEditM->addAction(mTorDeleteA);
- torEditM->addSeparator();
- //torEditM->addAction(configA);
- torEditM->addSeparator();
- torEditM->addAction(mTorInfoA);
- mTorrentTab->menuBar()->addMenu(torEditM);
- mTorrentTab->addAction(mTorInfoA);
- mTorrentTab->addAction(createSeparator());
- mTorrentTab->addAction(mTorRefreshA);
- mTorrentTab->addAction(mFnThisCopyToClipA);
- mTorrentTab->addAction(createSeparator());
- mTorrentTab->addAction(mTorMoveA);
- mTorrentTab->addAction(mTorDeleteA);
- mTorrentTab->addAction(createSeparator());
- mTorrentTab->addAction(mTorDirA);
-
- //TorrentDisplay
- mTorCopyToClipA = new QAction(QIcon(":/edit-copy.png"), tr("Copy"), this);
- connect(mTorCopyToClipA, SIGNAL(triggered()), mTorrentTab->torrentDisplay(), SLOT(copyToClipboard()));
- mTorrentTab->torrentDisplay()->addAction(mTorCopyToClipA);
-}
-
void ShemovCleaner::openDatabase(){
QSettings s;
QString dbhost = s.value("dbhost").toString();
diff --git a/shemovcleaner.h b/shemovcleaner.h
index c3485bf..c4abf84 100644
--- a/shemovcleaner.h
+++ b/shemovcleaner.h
@@ -7,8 +7,6 @@ class QTabWidget;
class TorrentWidget;
class FileWidget;
class QLabel;
-class QAction;
-class QKeyEvent;
class QProgressBar;
class ShemovCleaner : public QMainWindow {
@@ -30,7 +28,6 @@ class ShemovCleaner : public QMainWindow {
private:
void createStatusBar();
void createGlobalActions();
- void createActions();
void openDatabase();
QAction *createSeparator();
QLabel *mSelected;
@@ -39,19 +36,6 @@ class ShemovCleaner : public QMainWindow {
QTabWidget *mTab;
TorrentWidget *mTorrentTab;
FileWidget *mFileTab;
- QAction *mTorRefreshA;
- QAction *mTorDeleteA;
- QAction *mTorMoveA;
- QAction *mTorInfoA;
- QAction *mTorDirA;
- QAction *mTorCopyToClipA;
- QAction *mFnThisCopyToClipA;
- QAction *mFileRefreshA;
- QAction *mFileDirA;
- QAction *mFileUpA;
- QAction *mFileBackDirA;
- QAction *mFilePropertiesA;
- QAction *mFileDeleteA;
};
#endif // SHEMOVCLEANER_H
diff --git a/torrentdisplay.cpp b/torrentdisplay.cpp
index 3a1664b..58df338 100644
--- a/torrentdisplay.cpp
+++ b/torrentdisplay.cpp
@@ -13,6 +13,7 @@
#include <QApplication>
#include <QMenu>
#include <QContextMenuEvent>
+#include <QAction>
#include "torrentdisplay.h"
@@ -81,6 +82,12 @@ TorrentDisplay::TorrentDisplay(QWidget *parent, Qt::WindowFlags f) : QDialog(par
mainLayout->addLayout(buttonLayout);
setLayout(mainLayout);
setWindowTitle(tr("Torrent Info"));
+
+ //actions
+ QAction *copyFnToClip = new QAction(QIcon(":/edit-copy.png"), tr("Filename to Clip"), this);
+ copyFnToClip->setShortcut(tr("CTRL+C"));
+ connect(copyFnToClip, SIGNAL(triggered()), this, SLOT(copyToClipboard()));
+ addActions(QList<QAction*>() << copyFnToClip);
}
void TorrentDisplay::setData(const QList<QVariant> data, const QString &filename) {
diff --git a/torrentwidget.cpp b/torrentwidget.cpp
index a6cb2f4..f4619f1 100644
--- a/torrentwidget.cpp
+++ b/torrentwidget.cpp
@@ -22,12 +22,11 @@
#include <QClipboard>
#include <QApplication>
-#include <QDebug>
-
#include "torrentwidget.h"
#include "filesorter.h"
#include "torrentparser.h"
#include "torrentdisplay.h"
+#include "globals.h"
TorrentWidget::TorrentWidget(QWidget *parent) : QWidget(parent), mExt("*.torrent") {
setupGui();
@@ -85,9 +84,62 @@ void TorrentWidget::setupGui(){
mTorrentDisplay = new TorrentDisplay(this);
connect(mFileView->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(fileSelectionChanged(QItemSelection,QItemSelection)));
+ createActions();
connect(mFileView, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(torrentInfo()));
}
+void TorrentWidget::createActions(){
+ mRefreshA = new QAction(QIcon(":/refresh.png"), tr("Refresh"), this);
+ mRefreshA->setShortcut(tr("CTRL+R"));
+ connect(mRefreshA, SIGNAL(triggered()), this, SLOT(gatherData()));
+ mDeleteA = new QAction(QIcon(":/delete.png"), tr("Delete..."), this);
+ mDeleteA->setShortcut(Qt::Key_Delete);
+ connect(mDeleteA, SIGNAL(triggered()), this, SLOT(deleteFiles()));
+ mMoveA = new QAction(QIcon(":/diaper.png"), tr("Move..."), this);
+ mMoveA->setShortcut(tr("CTRL+M"));
+ connect(mMoveA, SIGNAL(triggered()), this, SLOT(moveFiles()));
+ mTorrentInfoA = new QAction(QIcon(":/huge_bra.png"), tr("Torrent Info..."), this);
+ mTorrentInfoA->setShortcut(Qt::Key_Return);
+ connect(mTorrentInfoA, SIGNAL(triggered()), this, SLOT(torrentInfo()));
+ mSelDirA = new QAction(QIcon(":/folder.png"), tr("Select folder..."), this);
+ mSelDirA->setShortcut(tr("CTRL+O"));
+ connect(mSelDirA, SIGNAL(triggered()), this, SLOT(selectDir()));
+ mCopyFnToClipA = new QAction(QIcon(":/edit-copy.png"), tr("Filename to Clip"), this);
+ mCopyFnToClipA->setShortcut(tr("CTRL+C"));
+ connect(mCopyFnToClipA, SIGNAL(triggered()), this, SLOT(copyToClipboard()));
+
+ QMenu *fileMenu = new QMenu(tr("&File"));
+ fileMenu->addAction(mSelDirA);
+ fileMenu->addAction(mRefreshA);
+ fileMenu->addSeparator();
+ fileMenu->addAction(Globals::instance()->action(Globals::QuitAction));
+
+ QMenu *editMenu = new QMenu(tr("&Edit"));
+ editMenu->addAction(mCopyFnToClipA);
+ editMenu->addAction(mMoveA);
+ editMenu->addAction(mDeleteA);
+ editMenu->addSeparator();
+ editMenu->addAction(mTorrentInfoA);
+ editMenu->addSeparator();
+ editMenu->addAction(Globals::instance()->action(Globals::ConfigAction));
+
+ mMenuBar->addMenu(fileMenu);
+ mMenuBar->addMenu(editMenu);
+
+ mToolBar->addAction(mRefreshA);
+ mToolBar->addAction(mSelDirA);
+ mToolBar->addAction(createSeparator());
+ mToolBar->addAction(mCopyFnToClipA);
+ mToolBar->addAction(mMoveA);
+ mToolBar->addAction(mDeleteA);
+ mToolBar->addAction(createSeparator());
+ mToolBar->addAction(mTorrentInfoA);
+ mToolBar->addAction(createSeparator());
+ mToolBar->addAction(Globals::instance()->action(Globals::ConfigAction));
+
+ addActions(QList<QAction*>() << mRefreshA << mSelDirA << createSeparator() << mCopyFnToClipA << mMoveA << mDeleteA << createSeparator() << mTorrentInfoA);
+}
+
void TorrentWidget::gatherData(){
QSqlDatabase db = QSqlDatabase::database("shemovdb");
if(!db.isOpen()){
@@ -257,6 +309,12 @@ void TorrentWidget::writeSettings(){
s.setValue("searchdir", mDir->text());
}
+QAction *TorrentWidget::createSeparator(){
+ QAction *retval = new QAction(this);
+ retval->setSeparator(true);
+ return retval;
+}
+
void TorrentWidget::readHeaderData(){
QSettings s;
QByteArray headers = s.value("fileheaders").toByteArray();
diff --git a/torrentwidget.h b/torrentwidget.h
index 549b3db..051a281 100644
--- a/torrentwidget.h
+++ b/torrentwidget.h
@@ -45,21 +45,29 @@ class TorrentWidget : public QWidget {
private:
void setupGui();
+ void createActions();
void readHeaderData();
void writeHeaderData();
void readSettings();
void writeSettings();
+ QAction *createSeparator();
QLineEdit *mDir;
QPushButton *mSelDir;
QLineEdit *mSearchTorrents;
QPushButton *mDoSearchTorrents;
QString mExt;
QStandardItemModel *mModel;
- FileSorter *mProxy;
QTreeView *mFileView;
- TorrentDisplay *mTorrentDisplay;
QToolBar *mToolBar;
QMenuBar *mMenuBar;
+ QAction *mRefreshA;
+ QAction *mDeleteA;
+ QAction *mMoveA;
+ QAction *mTorrentInfoA;
+ QAction *mSelDirA;
+ QAction *mCopyFnToClipA;
+ FileSorter *mProxy;
+ TorrentDisplay *mTorrentDisplay;
};
#endif // TORRENTWIDGET_H