diff options
author | Arno <arno@disconnect.de> | 2016-09-16 10:16:11 +0200 |
---|---|---|
committer | Arno <arno@disconnect.de> | 2016-09-16 10:16:11 +0200 |
commit | 61c489a0d194cc2a4ed2638d52b9c78bf694f65f (patch) | |
tree | 5c1661ed4074216470a577423f39ca46d0126741 /actorwidget.cpp | |
parent | df6126e9444a6ab88c2c20f8da980795e3418781 (diff) | |
download | ShemovCleaner-61c489a0d194cc2a4ed2638d52b9c78bf694f65f.tar.gz ShemovCleaner-61c489a0d194cc2a4ed2638d52b9c78bf694f65f.tar.bz2 ShemovCleaner-61c489a0d194cc2a4ed2638d52b9c78bf694f65f.zip |
Add menuBar and toolBar for ActorWidget
as promised...
Diffstat (limited to 'actorwidget.cpp')
-rw-r--r-- | actorwidget.cpp | 43 |
1 files changed, 41 insertions, 2 deletions
diff --git a/actorwidget.cpp b/actorwidget.cpp index 1b57c40..93f41e5 100644 --- a/actorwidget.cpp +++ b/actorwidget.cpp @@ -8,7 +8,10 @@ #include <QStandardItemModel> #include <QStandardItem> #include <QTreeView> +#include <QToolBar> +#include <QMenuBar> #include <QSortFilterProxyModel> +#include <QHeaderView> #include <QProgressBar> #include <QSqlDatabase> #include <QSqlQuery> @@ -16,6 +19,7 @@ #include <QSettings> #include "actorwidget.h" +#include "globals.h" ActorWidget::ActorWidget(QWidget *parent) : QWidget(parent) { mDb = QSqlDatabase::database("shemovdb"); @@ -44,7 +48,7 @@ void ActorWidget::gatherData(){ 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(); @@ -59,7 +63,6 @@ void ActorWidget::gatherData(){ aData[NameColumn]->setText(mAllQ.value(0).toString()); root->appendRow(aData); mProgress->setValue(++count); - qApp->processEvents(); } mActorView->resizeColumnToContents(IconColumn); } @@ -137,6 +140,7 @@ void ActorWidget::readSettings(){ QModelIndex real = mProxy->mapFromSource(cur); mActorView->selectionModel()->select(real, QItemSelectionModel::SelectCurrent | QItemSelectionModel::Rows); } + mActorView->header()->restoreState(s.value("actors/actorheaders").toByteArray()); } void ActorWidget::writeSettings(){ @@ -146,6 +150,7 @@ void ActorWidget::writeSettings(){ if(!sel.isEmpty()){ s.setValue("actors/selectedactor", sel.first().data()); } + s.setValue("actors/actorheaders", mActorView->header()->saveState()); } void ActorWidget::setupGui(){ @@ -193,7 +198,14 @@ void ActorWidget::setupGui(){ 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); @@ -201,6 +213,27 @@ void ActorWidget::setupGui(){ setLayout(mainLayout); } +void ActorWidget::createActions(){ + QAction *refreshA = new QAction(QIcon(":/refresh.png"), tr("Refersh"), this); + connect(refreshA, SIGNAL(triggered()), this, SLOT(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){ @@ -210,3 +243,9 @@ QList<QStandardItem*> ActorWidget::emptyList(){ } return retval; } + +QAction *ActorWidget::createSeparator(){ + QAction *retval = new QAction(this); + retval->setSeparator(true); + return retval; +} |