summaryrefslogtreecommitdiffstats
path: root/shemov.cpp
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2018-04-03 09:11:25 +0200
committerArno <arno@disconnect.de>2018-04-03 09:11:25 +0200
commit0d2eb533f18dbd2330f5bd48b6a154a3c87b84d2 (patch)
tree6f471c93aabda83662934f30218cb658f9e30efa /shemov.cpp
parentbac6fe431150bb5706fe0fb349e753b8fe08c12e (diff)
downloadSheMov-0d2eb533f18dbd2330f5bd48b6a154a3c87b84d2.tar.gz
SheMov-0d2eb533f18dbd2330f5bd48b6a154a3c87b84d2.tar.bz2
SheMov-0d2eb533f18dbd2330f5bd48b6a154a3c87b84d2.zip
Add a menu with global actions to SmGlobals
Use it in the toolbar for FSWidge and hide the menuBar. Change Helper::icon to accept different foreground colors and wether to draw the ellipse.
Diffstat (limited to 'shemov.cpp')
-rw-r--r--shemov.cpp88
1 files changed, 56 insertions, 32 deletions
diff --git a/shemov.cpp b/shemov.cpp
index 4af3a72..f0ea30b 100644
--- a/shemov.cpp
+++ b/shemov.cpp
@@ -50,6 +50,56 @@ SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, fla
qApp->processEvents();
(void) SmGlobals::instance();
+ mAnalyzeActorsA = new QAction(tr("Actors..."), this);
+ connect(mAnalyzeActorsA, &QAction::triggered, this, &SheMov::analyzeActors);
+ mAnalyzeGenresA = new QAction(tr("Genres..."), this);
+ connect(mAnalyzeGenresA, &QAction::triggered, this, &SheMov::analyzeGenres);
+ mAnalyzeSeriesA = new QAction(tr("Series..."), this);
+ connect(mAnalyzeSeriesA, &QAction::triggered, this, &SheMov::analyzeSeries);
+ mAnalyzePartsA = new QAction(tr("Series Parts..."), this);
+ connect(mAnalyzePartsA, &QAction::triggered, this, &SheMov::analyzeParts);
+ mConsistencyA = new QAction(tr("Check consisteny..."), this);
+ connect(mConsistencyA, &QAction::triggered, this, &SheMov::checkConsistency);
+ /*mSearchDialogA = new QAction(tr("Search..."), this);
+ mSearchDialogA->setShortcut(tr("CTRL+f"));
+ connect(mSearchDialogA, &QAction::triggered, mSearchDialog, &SearchDialog::show);*/
+ mQuitA = new QAction(tr("Quit"), this);
+ mQuitA->setShortcut(tr("CTRL+q"));
+ connect(mQuitA, &QAction::triggered, qApp, &QApplication::closeAllWindows);
+ mConfigA = new QAction(QIcon(":/chastity_belt.png"), tr("Configure..."), this);
+ connect(mConfigA, &QAction::triggered, this, &SheMov::configure);
+ QString aboutLabel = QString(tr("About %1...")).arg(qApp->applicationName());
+ mAboutShemovA = new QAction(aboutLabel, this);
+ connect(mAboutShemovA, &QAction::triggered, this, &SheMov::aboutShemov);
+ mAboutQtA = new QAction(tr("About Qt..."), this);
+ connect(mAboutQtA, &QAction::triggered, qApp, &QApplication::aboutQt);
+ mStatisticsA = new QAction(tr("Some statistics..."), this);
+ connect(mStatisticsA, &QAction::triggered, this, &SheMov::showStatistics);
+
+ //global menu
+ QAction *globalMenuA = new QAction(Helper::icon(QColor(0, 0, 0, 0), Qt::black, QChar(0x26A4), true, false), tr("Global"), this);
+ QMenu *globalMenu = new QMenu;
+ globalMenu->addAction(mConsistencyA);
+ globalMenu->addSeparator();
+ QMenu *analyzeMenu = new QMenu;
+ analyzeMenu->addAction(mAnalyzeActorsA);
+ analyzeMenu->addAction(mAnalyzeGenresA);
+ analyzeMenu->addAction(mAnalyzePartsA);
+ analyzeMenu->addAction(mAnalyzeSeriesA);
+ QAction *analyzeMenuA = new QAction(tr("Analyze"), this);
+ analyzeMenuA->setMenu(analyzeMenu);
+ globalMenu->addAction(analyzeMenuA);
+ globalMenu->addSeparator();
+ globalMenu->addAction(mConfigA);
+ globalMenu->addAction(mStatisticsA);
+ globalMenu->addSeparator();
+ globalMenu->addAction(mAboutQtA);
+ globalMenu->addAction(mAboutShemovA);
+ globalMenu->addSeparator();
+ globalMenu->addAction(mQuitA);
+ globalMenuA->setMenu(globalMenu);
+ SmGlobals::instance()->setGlobalAction(globalMenuA);
+
//FileSystemWidget + TabWidget
splash.showMessage(tr("Constructing Filemanager..."), Qt::AlignHCenter, Qt::yellow);
qApp->processEvents();
@@ -170,6 +220,11 @@ void SheMov::configure(){
}
void SheMov::tabChanged(int newTab){
+ if(newTab == FileManager){
+ menuBar()->setVisible(false);
+ }else{
+ menuBar()->setVisible(true);
+ }
mEditPicMenuA->setVisible(newTab == Pictures);
mViewPicMenuA->setVisible(newTab == Pictures);
mArchiveViewMenuA->setVisible(newTab == Movies);
@@ -322,27 +377,6 @@ void SheMov::createStatusbar(){
}
void SheMov::createActions(){
- mConsistencyA = new QAction(tr("Check consisteny..."), this);
- connect(mConsistencyA, &QAction::triggered, this, &SheMov::checkConsistency);
- mSearchDialogA = new QAction(tr("Search..."), this);
- mSearchDialogA->setShortcut(tr("CTRL+f"));
- connect(mSearchDialogA, &QAction::triggered, mSearchDialog, &SearchDialog::show);
-
- //connnect
- mQuitA = new QAction(tr("Quit"), this);
- mQuitA->setShortcut(tr("CTRL+q"));
- connect(mQuitA, &QAction::triggered, qApp, &QApplication::closeAllWindows);
- mConfigA = new QAction(QIcon(":/chastity_belt.png"), tr("Configure..."), this);
- connect(mConfigA, &QAction::triggered, this, &SheMov::configure);
-
- //Help menu
- QString aboutLabel = QString(tr("About %1...")).arg(qApp->applicationName());
- mAboutShemovA = new QAction(aboutLabel, this);
- connect(mAboutShemovA, &QAction::triggered, this, &SheMov::aboutShemov);
- mAboutQtA = new QAction(tr("About Qt..."), this);
- connect(mAboutQtA, &QAction::triggered, qApp, &QApplication::aboutQt);
- mStatisticsA = new QAction(tr("Some statistics..."), this);
- connect(mStatisticsA, &QAction::triggered, this, &SheMov::showStatistics);
//headers
mPicsTreeHeaderGroup = new QActionGroup(this);
@@ -550,17 +584,7 @@ void SheMov::createActions(){
// db analyzer dialogs
// analyze actors
- mAnalyzeActorsA = new QAction(tr("Actors..."), this);
- connect(mAnalyzeActorsA, &QAction::triggered, this, &SheMov::analyzeActors);
- // analyze genres
- mAnalyzeGenresA = new QAction(tr("Genres..."), this);
- connect(mAnalyzeGenresA, &QAction::triggered, this, &SheMov::analyzeGenres);
- // analyze series
- mAnalyzeSeriesA = new QAction(tr("Series..."), this);
- connect(mAnalyzeSeriesA, &QAction::triggered, this, &SheMov::analyzeSeries);
- // anaylze series parts
- mAnalyzePartsA = new QAction(tr("Series Parts..."), this);
- connect(mAnalyzePartsA, &QAction::triggered, this, &SheMov::analyzeParts);
+
//don't add actions with checkable(true) unless you know what you're doing!
mPicActionGroup = new QActionGroup(this);