summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2018-02-02 08:03:39 +0100
committerArno <arno@disconnect.de>2018-02-02 08:03:39 +0100
commitdccee9d87b2fe47571fa04760b03a711e0911245 (patch)
tree1279e25c8a69941b36dad160d623e353c5944bff
parentaeb21594c540ecab7bbd2c7a37d9e2fcec13b286 (diff)
downloadShemovCleaner-dccee9d87b2fe47571fa04760b03a711e0911245.tar.gz
ShemovCleaner-dccee9d87b2fe47571fa04760b03a711e0911245.tar.bz2
ShemovCleaner-dccee9d87b2fe47571fa04760b03a711e0911245.zip
Remove search and actor Widgets
Replacement: SearchDialog
-rw-r--r--ShemovCleaner.pro6
-rw-r--r--actorwidget.cpp251
-rw-r--r--actorwidget.h63
-rw-r--r--searchwidget.cpp200
-rw-r--r--searchwidget.h47
-rw-r--r--shemovcleaner.cpp25
-rw-r--r--shemovcleaner.h4
7 files changed, 2 insertions, 594 deletions
diff --git a/ShemovCleaner.pro b/ShemovCleaner.pro
index 6375e5a..e03b164 100644
--- a/ShemovCleaner.pro
+++ b/ShemovCleaner.pro
@@ -20,7 +20,7 @@ DEFINES += QT_DEPRECATED_WARNINGS
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
# Input
-HEADERS += actorwidget.h \
+HEADERS += \
configurationwidget.h \
filecopier.h \
filedisplay.h \
@@ -30,7 +30,6 @@ HEADERS += actorwidget.h \
helper.h \
origindialog.h \
progressdialog.h \
- searchwidget.h \
shemovcleaner.h \
torrentdisplay.h \
torrentparser.h \
@@ -39,7 +38,7 @@ HEADERS += actorwidget.h \
cachedfiledata.h \
itemselectionwidget.h \
searchdialog.h
-SOURCES += actorwidget.cpp \
+SOURCES += \
configurationwidget.cpp \
filecopier.cpp \
filedisplay.cpp \
@@ -50,7 +49,6 @@ SOURCES += actorwidget.cpp \
main.cpp \
origindialog.cpp \
progressdialog.cpp \
- searchwidget.cpp \
shemovcleaner.cpp \
torrentdisplay.cpp \
torrentparser.cpp \
diff --git a/actorwidget.cpp b/actorwidget.cpp
deleted file mode 100644
index dac6a9b..0000000
--- a/actorwidget.cpp
+++ /dev/null
@@ -1,251 +0,0 @@
-#include <QLineEdit>
-#include <QLabel>
-#include <QPushButton>
-#include <QTreeView>
-#include <QHBoxLayout>
-#include <QVBoxLayout>
-#include <QGridLayout>
-#include <QStandardItemModel>
-#include <QStandardItem>
-#include <QTreeView>
-#include <QToolBar>
-#include <QMenuBar>
-#include <QSortFilterProxyModel>
-#include <QHeaderView>
-#include <QProgressBar>
-#include <QSqlDatabase>
-#include <QSqlQuery>
-#include <QApplication>
-#include <QSettings>
-
-#include "actorwidget.h"
-#include "globals.h"
-
-ActorWidget::ActorWidget(QWidget *parent) : QWidget(parent) {
- mDb = QSqlDatabase::database("shemovdb");
- if(!mDb.isOpen()){
- mDb.open();
- }
- mAllQ = QSqlQuery(mDb);
- mAllQ.prepare("SELECT tactorname, iactors_id FROM actors ORDER BY tactorname");
- mSeriesQ = QSqlQuery(mDb);
- mSeriesQ.prepare("SELECT series.tseries_name FROM series, seriesparts_actormap, seriesparts, actors WHERE series.iseries_id = seriesparts.iseries_id AND seriesparts.iseriesparts_id = seriesparts_actormap.iseriesparts_id AND seriesparts_actormap.iactors_id = actors.iactors_id AND actors.iactors_id = :id GROUP BY series.iseries_id, series.tseries_name ORDER BY series.tseries_name");
- mGenresQ = QSqlQuery(mDb);
- mGenresQ.prepare("SELECT DISTINCT(genres.tgenrename) FROM genres, seriesparts, seriesparts_actormap, seriesparts_genremap WHERE seriesparts_actormap.iseriesparts_id = seriesparts.iseriesparts_id AND seriesparts.iseriesparts_id = seriesparts_genremap.iseriesparts_id AND seriesparts_genremap.igenres_id = genres.igenres_id AND seriesparts_actormap.iactors_id = :id ORDER BY genres.tgenrename");
- mCountQ = QSqlQuery(mDb);
- mCountQ.prepare("SELECT COUNT(*) FROM actors");
- setupGui();
-}
-
-ActorWidget::~ActorWidget(){
- writeSettings();
-}
-
-void ActorWidget::gatherData(){
- mProgress->reset();
- mProgress->setMaximum(0);
- mCountQ.exec();
- while(mCountQ.next()){
- mProgress->setMaximum(mCountQ.value(0).toInt());
- }
- mActorModel->clear();
- mActorModel->setHorizontalHeaderLabels(QStringList() << QChar(0x26A7) << tr("Name"));
- int count = 0;
- QStandardItem *root = mActorModel->invisibleRootItem();
- qApp->processEvents();
-
- mAllQ.exec();
- while(mAllQ.next()){
- QList<QStandardItem*> aData = emptyList();
- aData[IconColumn]->setIcon(QIcon(":/huge_bra.png"));
- int aId = mAllQ.value(1).toInt();
- aData[IconColumn]->setData(aId, IdRole);
- aData[NameColumn]->setText(mAllQ.value(0).toString());
- root->appendRow(aData);
- mProgress->setValue(++count);
- }
- mActorView->resizeColumnToContents(IconColumn);
-}
-
-void ActorWidget::gatherSeries(){
- QModelIndexList sel = mActorView->selectionModel()->selectedRows();
- if(sel.isEmpty()){
- return;
- }
- mSeriesModel->clear();
- mSeriesModel->setHorizontalHeaderLabels(QStringList() << QChar(0x2640) << tr("Series"));
- QStandardItem *root = mSeriesModel->invisibleRootItem();
- QModelIndex idx = sel.at(0);
- QVariant id = idx.data(IdRole);
- mSeriesQ.bindValue(":id", id);
- mSeriesQ.exec();
- while(mSeriesQ.next()){
- QList<QStandardItem*> data = emptyList();
- data[IconColumn]->setIcon(QIcon(":/higheels.png"));
- data[NameColumn]->setText(mSeriesQ.value(0).toString());
- root->appendRow(data);
- }
- mSeriesView->resizeColumnToContents(IconColumn);
-}
-
-void ActorWidget::gatherGenres(){
- QModelIndexList sel = mActorView->selectionModel()->selectedRows();
- if(sel.isEmpty()){
- return;
- }
- mGenresModel->clear();
- mGenresModel->setHorizontalHeaderLabels(QStringList() << QChar(0x26A4) << tr("Genres"));
- QStandardItem *root = mGenresModel->invisibleRootItem();
- QModelIndex idx = sel.at(0);
- QVariant id = idx.data(IdRole);
- mGenresQ.bindValue(":id", id);
- mGenresQ.exec();
- while(mGenresQ.next()){
- QList<QStandardItem*> data = emptyList();
- data[IconColumn]->setIcon(QIcon(":/hourglass_figure.png"));
- data[NameColumn]->setText(mGenresQ.value(0).toString());
- root->appendRow(data);
- }
- mGenresView->resizeColumnToContents(IconColumn);
-}
-
-void ActorWidget::filter(){
- QString fs = mActor->text();
- mProxy->setFilterRegExp(fs);
- if(fs.isEmpty()){
- mProxy->invalidate();
- }
- mActorView->setFocus();
- if(mActorModel->rowCount()){
- QModelIndex idx = mActorModel->index(0, 0);
- mActorView->selectionModel()->select(idx, QItemSelectionModel::SelectCurrent | QItemSelectionModel::Rows);
- }
-}
-
-void ActorWidget::clearFilter(){
- mActor->clear();
- filter();
- mActor->setFocus();
-}
-
-void ActorWidget::readSettings(){
- QSettings s;
- QString f = s.value("actors/filter").toString();
- mActor->setText(f);
- filter();
- QString n = s.value("actors/selectedactor").toString();
- QList<QStandardItem*> itemL = mActorModel->findItems(n, Qt::MatchExactly, NameColumn);
- if(!itemL.isEmpty()){
- QModelIndex cur = mActorModel->indexFromItem(itemL.first());
- QModelIndex real = mProxy->mapFromSource(cur);
- mActorView->selectionModel()->select(real, QItemSelectionModel::SelectCurrent | QItemSelectionModel::Rows);
- }
- mActorView->header()->restoreState(s.value("actors/actorheaders").toByteArray());
-}
-
-void ActorWidget::writeSettings(){
- QSettings s;
- s.setValue("actors/filter", mActor->text());
- QModelIndexList sel = mActorView->selectionModel()->selectedRows(NameColumn);
- if(!sel.isEmpty()){
- s.setValue("actors/selectedactor", sel.first().data());
- }
- s.setValue("actors/actorheaders", mActorView->header()->saveState());
-}
-
-void ActorWidget::setupGui(){
- mActor = new QLineEdit;
- connect(mActor, &QLineEdit::returnPressed, this, &ActorWidget::filter);
- QLabel *filterL = new QLabel(tr("&Filter"));
- filterL->setBuddy(mActor);
- QPushButton *doFilter = new QPushButton(tr("Filter"));
- connect(doFilter, &QPushButton::clicked, this, &ActorWidget::filter);
- QPushButton *doClearFilter = new QPushButton(tr("&Clear"));
- connect(doClearFilter, &QPushButton::clicked, this, &ActorWidget::clearFilter);
- QHBoxLayout *buttonLayout = new QHBoxLayout;
- buttonLayout->addWidget(filterL);
- buttonLayout->addWidget(mActor);
- buttonLayout->addWidget(doFilter);
- buttonLayout->addWidget(doClearFilter);
-
- mActorView = new QTreeView;
- mActorView->setSortingEnabled(true);
- mActorView->setSelectionBehavior(QAbstractItemView::SelectRows);
- mActorView->setSelectionMode(QAbstractItemView::SingleSelection);
- mActorModel = new QStandardItemModel;
- mProxy = new QSortFilterProxyModel;
- mProxy->setSourceModel(mActorModel);
- mProxy->setFilterKeyColumn(NameColumn);
- mActorView->setModel(mProxy);
- connect(mActorView->selectionModel(), &QItemSelectionModel::selectionChanged, this, &ActorWidget::gatherSeries);
- connect(mActorView->selectionModel(), &QItemSelectionModel::selectionChanged, this, &ActorWidget::gatherGenres);
-
- mSeriesView = new QTreeView;
- mSeriesView->setSelectionBehavior(QAbstractItemView::SelectRows);
- mSeriesView->setSelectionMode(QAbstractItemView::ExtendedSelection);
- mSeriesModel = new QStandardItemModel;
- mSeriesView->setModel(mSeriesModel);
-
- mGenresView = new QTreeView;
- mGenresView->setSelectionBehavior(QAbstractItemView::SelectRows);
- mGenresView->setSelectionMode(QAbstractItemView::ExtendedSelection);
- mGenresModel = new QStandardItemModel;
- mGenresView->setModel(mGenresModel);
-
- QGridLayout *viewGridL = new QGridLayout;
- viewGridL->addWidget(new QLabel(tr("Series")), 0, 0);
- viewGridL->addWidget(new QLabel(tr("Genres")), 0, 1);
- viewGridL->addWidget(mSeriesView, 1, 0);
- viewGridL->addWidget(mGenresView, 1, 1);
-
- mMenuBar = new QMenuBar;
- mToolBar = new QToolBar;
- mToolBar->setIconSize(QSize(16, 16));
- createActions();
-
- QVBoxLayout *mainLayout = new QVBoxLayout;
- mainLayout->addWidget(mMenuBar);
- mainLayout->addWidget(mToolBar);
- mainLayout->addLayout(buttonLayout);
- mainLayout->addWidget(new QLabel(tr("Found")));
- mainLayout->addWidget(mActorView);
- mainLayout->addLayout(viewGridL);
- setLayout(mainLayout);
-}
-
-void ActorWidget::createActions(){
- QAction *refreshA = new QAction(QIcon(":/refresh.png"), tr("Refersh"), this);
- connect(refreshA, &QAction::triggered, this, &ActorWidget::gatherData);
- refreshA->setShortcut(tr("CTRL+R"));
-
- QMenu *fileMenu = new QMenu(tr("&File"), this);
- fileMenu->addAction(Globals::instance()->action(Globals::QuitAction));
-
- QMenu *editMenu = new QMenu(tr("&Edit"), this);
- editMenu->addAction(refreshA);
- editMenu->addSeparator();
- editMenu->addAction(Globals::instance()->action(Globals::ConfigAction));
-
- mMenuBar->addMenu(fileMenu);
- mMenuBar->addMenu(editMenu);;
-
- mToolBar->addAction(refreshA);
- mToolBar->addAction(createSeparator());
- mToolBar->addAction(Globals::instance()->action(Globals::ConfigAction));
-}
-
-QList<QStandardItem*> ActorWidget::emptyList(){
- QList<QStandardItem*> retval;
- for(int i = 0; i < ColumnCount; ++i){
- QStandardItem *item = new QStandardItem;
- item->setEditable(false);
- retval << item;
- }
- return retval;
-}
-
-QAction *ActorWidget::createSeparator(){
- QAction *retval = new QAction(this);
- retval->setSeparator(true);
- return retval;
-}
diff --git a/actorwidget.h b/actorwidget.h
deleted file mode 100644
index ee73535..0000000
--- a/actorwidget.h
+++ /dev/null
@@ -1,63 +0,0 @@
-#ifndef ACTORWIDGET_H
-#define ACTORWIDGET_H
-
-#include <QWidget>
-#include <QSqlDatabase>
-#include <QSqlQuery>
-
-class QLineEdit;
-class QStandardItemModel;
-class QStandardItem;
-class QSortFilterProxyModel;
-class QTreeView;
-class QProgressBar;
-class QMenuBar;
-class QToolBar;
-class QAction;
-
-class ActorWidget : public QWidget {
- Q_OBJECT
- public:
- enum { ColumnCount = 2 };
- enum Columns { IconColumn = 0, NameColumn = 1 };
- enum CustomRoles { IdRole = Qt::UserRole + 1 };
- explicit ActorWidget(QWidget *parent = 0);
- ~ActorWidget();
- void setProgressBar(QProgressBar *p) { mProgress = p; }
- QMenuBar *menuBar() { return mMenuBar; }
- QToolBar *toolBar() { return mToolBar; }
- QTreeView *actorView() { return mActorView; }
-
- public slots:
- void gatherData();
- void gatherSeries();
- void gatherGenres();
- void filter();
- void clearFilter();
- void readSettings();
- void writeSettings();
-
- private:
- void setupGui();
- void createActions();
- QAction *createSeparator();
- QList<QStandardItem*> emptyList();
- QLineEdit *mActor;
- QStandardItemModel *mActorModel;
- QStandardItemModel *mSeriesModel;
- QStandardItemModel *mGenresModel;
- QSortFilterProxyModel *mProxy;
- QTreeView *mActorView;
- QTreeView *mSeriesView;
- QTreeView *mGenresView;
- QProgressBar *mProgress;
- QMenuBar *mMenuBar;
- QToolBar *mToolBar;
- QSqlDatabase mDb;
- QSqlQuery mAllQ;
- QSqlQuery mSeriesQ;
- QSqlQuery mGenresQ;
- QSqlQuery mCountQ;
-};
-
-#endif // ACTORWIDGET_H
diff --git a/searchwidget.cpp b/searchwidget.cpp
deleted file mode 100644
index c303e37..0000000
--- a/searchwidget.cpp
+++ /dev/null
@@ -1,200 +0,0 @@
-#include <QLineEdit>
-#include <QLabel>
-#include <QPushButton>
-#include <QHBoxLayout>
-#include <QVBoxLayout>
-#include <QTreeView>
-#include <QStandardItemModel>
-#include <QSortFilterProxyModel>
-#include <QToolBar>
-#include <QMenuBar>
-#include <QSettings>
-#include <QHeaderView>
-#include <QSqlDatabase>
-#include <QSqlQuery>
-
-#include "searchwidget.h"
-#include "globals.h"
-#include "helper.h"
-
-SearchWidget::SearchWidget(QWidget *parent) : QWidget(parent) {
- setupGui();
-}
-
-SearchWidget::~SearchWidget(){
- writeSettings();
-}
-
-void SearchWidget::setupGui(){
- mSearch = new QLineEdit;
- connect(mSearch, SIGNAL(returnPressed()), this, SLOT(search()));
- QLabel *searchL = new QLabel(tr("&Search"));
- searchL->setBuddy(mSearch);
- QPushButton *doSearch = new QPushButton(tr("Go!"));
- connect(doSearch, SIGNAL(clicked()), this, SLOT(search()));
- QHBoxLayout *searchLayout = new QHBoxLayout;
- searchLayout->addWidget(searchL);
- searchLayout->addWidget(mSearch);
- searchLayout->addWidget(doSearch);
-
- mResultView = new QTreeView;
- mResultView->setSortingEnabled(false);
- mResultView->setSelectionBehavior(QAbstractItemView::SelectRows);
- mResultView->setSelectionMode(QAbstractItemView::SingleSelection);
- mResultModel = new QStandardItemModel;
- mProxy = new QSortFilterProxyModel;
- mProxy->setSourceModel(mResultModel);
- mResultView->setModel(mProxy);
-
- mMenuBar = new QMenuBar;
- mToolBar = new QToolBar;
- mToolBar->setIconSize(QSize(16, 16));
- createActions();
-
- QVBoxLayout *mainLayout = new QVBoxLayout;
- mainLayout->addWidget(mMenuBar);
- mainLayout->addWidget(mToolBar);
- mainLayout->addLayout(searchLayout);
- mainLayout->addWidget(mResultView);
- setLayout(mainLayout);
-}
-
-void SearchWidget::createActions(){
- QMenu *fileMenu = new QMenu(tr("&File"), this);
- fileMenu->addAction(Globals::instance()->action(Globals::QuitAction));
-
- QMenu *editMenu = new QMenu(tr("&Edit"), this);
- QAction *clearA = new QAction(QIcon(":/delete.png"), tr("Clear"), this);
- connect(clearA, SIGNAL(triggered()), this, SLOT(clear()));
- editMenu->addAction(clearA);
- editMenu->addSeparator();
- mToolBar->addAction(clearA);
- mToolBar->addSeparator();
-
- QActionGroup *searchModeAG = new QActionGroup(this);
- mSearchFileA = new QAction(QIcon(":/huge_bra.png"), tr("Filename"), this);
- mSearchFileA->setCheckable(true);
- searchModeAG->addAction(mSearchFileA);
- mSearchOriginA = new QAction(QIcon(":/higheels.png"), tr("Origin"), this);
- mSearchOriginA->setCheckable(true);
- searchModeAG->addAction(mSearchOriginA);
- mSearchTitleA = new QAction(QIcon(":/hourglass_figure.png"), tr("Title"), this);
- mSearchTitleA->setCheckable(true);
- searchModeAG->addAction(mSearchTitleA);
- mSearchSubtitleA = new QAction(QIcon(":/gaping_ass.png"), tr("Subtitle"), this);
- mSearchSubtitleA->setCheckable(true);
- searchModeAG->addAction(mSearchSubtitleA);
- editMenu->addActions(searchModeAG->actions());
- editMenu->addSeparator();
- mToolBar->addActions(searchModeAG->actions());
- mToolBar->addSeparator();
- connect(searchModeAG, SIGNAL(triggered(QAction*)), this, SLOT(setSearchMode(QAction*)));
-
- editMenu->addAction(Globals::instance()->action(Globals::ConfigAction));
- mToolBar->addAction(Globals::instance()->action(Globals::ConfigAction));
-
- mMenuBar->addMenu(fileMenu);
- mMenuBar->addMenu(editMenu);
-
-}
-
-void SearchWidget::search(){
- mResultView->setSortingEnabled(false);
- QString fn = mSearch->text();
- if(fn.isEmpty()){
- return;
- }
- QSqlDatabase db = QSqlDatabase::database("shemovdb");
- if(!db.isOpen()){
- db.open();
- }
- mResultModel->clear();
- QStandardItem *root = mResultModel->invisibleRootItem();
- mResultModel->setHorizontalHeaderLabels(QStringList() << QChar(0x26A7) << tr("Name") << tr("Size") << tr("Duration") << "");
- QSqlQuery q(db);
- if(mSearchMode == File){
- q.prepare("SELECT tfilename, bisize, iduration FROM files WHERE tfilename ~ :fn");
- }else if(mSearchMode == Origin){
- q.prepare("SELECT files_origin.tname, files_origin.bisize, files.iduration FROM files, files_origin WHERE files_origin.tname ~ :fn AND files_origin.ifiles_id = files.ifiles_id");
- }else if(mSearchMode == Title){
- q.prepare("SELECT files.tfilename, files.bisize, files.iduration FROM files, seriesparts, series WHERE series.iseries_id = seriesparts.iseries_id AND seriesparts.iseriesparts_id = files.iseriespart_id AND series.tseries_name ~ :fn");
- }else if(mSearchMode == Subtitle){
- q.prepare("SELECT files.tfilename, files.bisize, files.iduration FROM files, seriesparts, series WHERE series.iseries_id = seriesparts.iseries_id AND seriesparts.iseriesparts_id = files.iseriespart_id AND seriesparts.tsubtitle ~ :fn");
- }else{
- return;
- }
- q.bindValue(":fn", fn);
- q.exec();
- while(q.next()){
- QList<QStandardItem*> data;
- for(int i = 0; i < NumColumns + 1; ++i){
- QStandardItem *item = new QStandardItem;
- item->setEditable(false);
- data << item;
- if(i == SizeColumn || i == DurationColumn){
- item->setFont(QFont("courier new"));
- item->setTextAlignment(Qt::AlignRight | Qt::AlignVCenter);
- }
- }
- data[IconColumn]->setIcon(QIcon(":/diaper.png"));
- data[NameColumn]->setText(q.value(0).toString());
- qint64 sizemb = q.value(1).toLongLong();
- QLocale l;
- QString size = QString("%1").arg(l.toString(sizemb));
- data[SizeColumn]->setText(size);
- Helper::Duration dur(q.value(2).toLongLong());
- data[DurationColumn]->setText(dur.toString());
- root->appendRow(data);
- }
- for(int i = 0; i < NumColumns; ++i){
- mResultView->resizeColumnToContents(i);
- }
- mResultView->setSortingEnabled(true);
-}
-
-void SearchWidget::clear(){
- mSearch->clear();
- mResultModel->clear();
-}
-
-void SearchWidget::setSearchMode(QAction *action){
- if(action == mSearchFileA){
- mSearchMode = File;
- }else if(action == mSearchOriginA){
- mSearchMode = Origin;
- }else if(action == mSearchTitleA){
- mSearchMode = Title;
- }else if(action == mSearchSubtitleA){
- mSearchMode = Subtitle;
- }
-}
-
-QString SearchWidget::currentSearch(){
- if(!mSearch->text().isEmpty()){
- return mSearch->text();
- }
- return tr("nothing!");
-}
-
-void SearchWidget::readSettings(){
- QSettings s;
- mSearchMode = s.value("search/mode").toInt();
- if(mSearchMode == File){
- mSearchFileA->toggle();
- }else if(mSearchMode == Origin){
- mSearchOriginA->toggle();
- }else if(mSearchMode == Title){
- mSearchTitleA->toggle();
- }else if(mSearchMode == Subtitle){
- mSearchSubtitleA->toggle();
- }
- mSearch->setText(s.value("search/string").toString());
- mResultView->header()->restoreState(s.value("search/header").toByteArray());
-}
-
-void SearchWidget::writeSettings(){
- QSettings s;
- s.setValue("search/mode", mSearchMode);
- s.setValue("search/string", mSearch->text());
- s.setValue("search/header", mResultView->header()->saveState());
-}
diff --git a/searchwidget.h b/searchwidget.h
deleted file mode 100644
index 3c08b42..0000000
--- a/searchwidget.h
+++ /dev/null
@@ -1,47 +0,0 @@
-#ifndef FILESEARCHWIDGET_H
-#define FILESEARCHWIDGET_H
-
-#include <QWidget>
-
-class QLineEdit;
-class QTreeView;
-class QStandardItemModel;
-class QSortFilterProxyModel;
-class QMenuBar;
-class QToolBar;
-
-class SearchWidget : public QWidget {
- Q_OBJECT
- public:
- enum { NumColumns = 4 };
- enum Columns { IconColumn = 0, NameColumn = 1, SizeColumn = 2, DurationColumn = 3 };
- enum SearchMode { File = 0, Origin = 1, Title = 2, Subtitle = 3 };
- explicit SearchWidget(QWidget *parent = 0);
- ~SearchWidget();
- QMenuBar *menuBar() { return mMenuBar; }
- QString currentSearch();
-
- public slots:
- void clear();
- void search();
- void setSearchMode(QAction *action);
- void readSettings();
- void writeSettings();
-
- private:
- void setupGui();
- void createActions();
- QLineEdit *mSearch;
- QTreeView *mResultView;
- QStandardItemModel *mResultModel;
- QSortFilterProxyModel *mProxy;
- QMenuBar *mMenuBar;
- QToolBar *mToolBar;
- QAction *mSearchFileA;
- QAction *mSearchOriginA;
- QAction *mSearchTitleA;
- QAction *mSearchSubtitleA;
- int mSearchMode;
-};
-
-#endif // FILESEARCHWIDGET_H
diff --git a/shemovcleaner.cpp b/shemovcleaner.cpp
index 8aa5e2d..a0bf4f2 100644
--- a/shemovcleaner.cpp
+++ b/shemovcleaner.cpp
@@ -20,8 +20,6 @@
#include "shemovcleaner.h"
#include "torrentwidget.h"
#include "filewidget.h"
-#include "actorwidget.h"
-#include "searchwidget.h"
#include "torrentdisplay.h"
#include "configurationwidget.h"
#include "filewidget.h"
@@ -53,25 +51,10 @@ ShemovCleaner::ShemovCleaner(QWidget *parent, Qt::WindowFlags f) : QMainWindow(p
mFileTab->setProgressBar(mProgressBar);
mFileTab->gatherData();
- splash.showMessage(tr("Looking for actors..."), Qt::AlignHCenter, Qt::darkGreen);
- qApp->processEvents();
- mActorTab = new ActorWidget;
- mActorTab->setProgressBar(mProgressBar);
- mActorTab->gatherData();
- mActorTab->readSettings();
-
- splash.showMessage(tr("Creating search widget..."), Qt::AlignHCenter, Qt::darkGreen);
- qApp->processEvents();
- mSearchTab = new SearchWidget;
- mSearchTab->readSettings();
- mSearchTab->search();
-
splash.showMessage(tr("Finalizing..."), Qt::AlignHCenter, Qt::darkGreen);
qApp->processEvents();
mTab->addTab(mTorrentTab, tr("&Torrents"));
mTab->addTab(mFileTab, tr("Fi&les"));
- mTab->addTab(mActorTab, tr("&Actors"));
- mTab->addTab(mSearchTab, tr("Searc&h"));
setCentralWidget(mTab);
connect(mTorrentTab, &TorrentWidget::statusMessage, this, &ShemovCleaner::statusBarMessage);
@@ -95,8 +78,6 @@ ShemovCleaner::ShemovCleaner(QWidget *parent, Qt::WindowFlags f) : QMainWindow(p
mTorrentTab->menuBar()->addMenu(helpMenu);
mFileTab->menuBar()->addMenu(helpMenu);
- mActorTab->menuBar()->addMenu(helpMenu);
- mSearchTab->menuBar()->addMenu(helpMenu);
QSettings s;
restoreGeometry(s.value("geometry").toByteArray());
@@ -169,12 +150,6 @@ void ShemovCleaner::tabChanged(int idx){
mFileTab->fileView()->setFocus();
updateFreeSpace(mFileTab->currentDir());
winTitle = QString(tr("%1 Files [%2]")).arg(qApp->applicationName()).arg(mFileTab->currentDir());
- }else if(idx == Actors){
- mActorTab->actorView()->setFocus();
- updateFreeSpace(mFileTab->currentDir());
- winTitle = tr("%1 Actors").arg(qApp->applicationName());
- }else if(idx == Search){
- winTitle = QString(tr("%1 Search for %2")).arg(qApp->applicationName()).arg(mSearchTab->currentSearch());
}
setWindowTitle(winTitle);
}
diff --git a/shemovcleaner.h b/shemovcleaner.h
index a2b73b1..1a28246 100644
--- a/shemovcleaner.h
+++ b/shemovcleaner.h
@@ -8,8 +8,6 @@ class TorrentWidget;
class FileWidget;
class QLabel;
class QProgressBar;
-class ActorWidget;
-class SearchWidget;
class ShemovCleaner : public QMainWindow {
Q_OBJECT
@@ -48,8 +46,6 @@ class ShemovCleaner : public QMainWindow {
QTabWidget *mTab;
TorrentWidget *mTorrentTab;
FileWidget *mFileTab;
- ActorWidget *mActorTab;
- SearchWidget *mSearchTab;
};
#endif // SHEMOVCLEANER_H