diff options
-rw-r--r-- | shemovcleaner.cpp | 61 | ||||
-rw-r--r-- | shemovcleaner.h | 16 | ||||
-rw-r--r-- | torrentdisplay.cpp | 7 | ||||
-rw-r--r-- | torrentwidget.cpp | 62 | ||||
-rw-r--r-- | torrentwidget.h | 12 |
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 |