From 61c489a0d194cc2a4ed2638d52b9c78bf694f65f Mon Sep 17 00:00:00 2001 From: Arno Date: Fri, 16 Sep 2016 10:16:11 +0200 Subject: Add menuBar and toolBar for ActorWidget as promised... --- actorwidget.cpp | 43 +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 41 insertions(+), 2 deletions(-) (limited to 'actorwidget.cpp') diff --git a/actorwidget.cpp b/actorwidget.cpp index 1b57c40..93f41e5 100644 --- a/actorwidget.cpp +++ b/actorwidget.cpp @@ -8,7 +8,10 @@ #include #include #include +#include +#include #include +#include #include #include #include @@ -16,6 +19,7 @@ #include #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 ActorWidget::emptyList(){ QList retval; for(int i = 0; i < ColumnCount; ++i){ @@ -210,3 +243,9 @@ QList ActorWidget::emptyList(){ } return retval; } + +QAction *ActorWidget::createSeparator(){ + QAction *retval = new QAction(this); + retval->setSeparator(true); + return retval; +} -- cgit v1.2.3-70-g09d2