added menus to MacOSX version

This commit is contained in:
Luis Ángel San Martín 2014-06-20 16:27:51 +02:00
parent 49da4f71b4
commit df65785e77
2 changed files with 90 additions and 2 deletions

View File

@ -29,6 +29,8 @@
#include <QMessageBox>
#include <QImage>
#include <QDate>
#include <QMenuBar>
#ifdef Q_OS_MAC
class MacToolBarSeparator : public QWidget
@ -419,11 +421,11 @@ void MainWindowViewer::createToolBars()
{
comicToolBar = addToolBar(tr("&File"));
comicToolBar->setStyleSheet("QToolBar{border:none;}");
#ifdef Q_OS_MAC
comicToolBar->setIconSize(QSize(16,16));
#else
comicToolBar->setIconSize(QSize(18,18));
comicToolBar->setStyleSheet("QToolBar{border:none;}");
#endif
QToolButton * tb = new QToolButton();
@ -587,6 +589,30 @@ void MainWindowViewer::createToolBars()
viewer->addAction(closeAction);
viewer->setContextMenuPolicy(Qt::ActionsContextMenu);
//MacOSX app menus
#ifdef Q_OS_MAC
QMenuBar * menuBar = this->menuBar();
//about / preferences
//TODO
//file
QMenu * fileMenu = new QMenu(tr("File"));
fileMenu->addAction(openAction);
fileMenu->addAction(openFolderAction);
fileMenu->addSeparator();
fileMenu->addAction(saveImageAction);
//tool bar
//QMenu * toolbarMenu = new QMenu(tr("Toolbar"));
//toolbarMenu->addAction();
//TODO
menuBar->addMenu(fileMenu);
//menu->addMenu(toolbarMenu);
#endif
}
void MainWindowViewer::reloadOptions()

View File

@ -443,15 +443,19 @@ void LibraryWindow::createActions()
setFolderAsNotCompletedAction = new QAction(this);
setFolderAsNotCompletedAction->setText(tr("Set as uncompleted"));
setFolderAsNotCompletedAction->setVisible(false);
setFolderAsCompletedAction = new QAction(this);
setFolderAsCompletedAction->setText(tr("Set as completed"));
setFolderAsCompletedAction->setVisible(false);
setFolderAsFinishedAction = new QAction(this);
setFolderAsFinishedAction->setText(tr("Set as finished"));
setFolderAsFinishedAction->setVisible(false);
setFolderAsNotFinishedAction = new QAction(this);
setFolderAsNotFinishedAction->setText(tr("Set as unfinished"));
setFolderAsNotFinishedAction->setVisible(false);
openContainingFolderComicAction = new QAction(this);
openContainingFolderComicAction->setText(tr("Open containing folder..."));
@ -543,6 +547,14 @@ void LibraryWindow::disableFoldersActions(bool disabled)
colapseAllNodesAction->setDisabled(disabled);
openContainingFolderAction->setDisabled(disabled);
if(disabled == false)
{
setFolderAsNotCompletedAction->setVisible(false);
setFolderAsCompletedAction->setVisible(false);
setFolderAsFinishedAction->setVisible(false);
setFolderAsNotFinishedAction->setVisible(false);
}
}
void LibraryWindow::disableAllActions()
@ -671,7 +683,48 @@ void LibraryWindow::createMenus()
selectedLibrary->addAction(exportLibraryAction);
selectedLibrary->addAction(importLibraryAction);
//MacOSX app menus
#ifdef Q_OS_MACX
QMenuBar * menu = this->menuBar();
//about / preferences
//TODO
//library
QMenu * libraryMenu = new QMenu(tr("Library"));
libraryMenu->addAction(updateLibraryAction);
libraryMenu->addAction(renameLibraryAction);
libraryMenu->addAction(removeLibraryAction);
libraryMenu->addSeparator();
libraryMenu->addAction(exportComicsInfo);
libraryMenu->addAction(importComicsInfo);
libraryMenu->addSeparator();
libraryMenu->addAction(exportLibraryAction);
libraryMenu->addAction(importLibraryAction);
//folder
QMenu * folderMenu = new QMenu(tr("Folder"));
folderMenu->addAction(openContainingFolderAction);
folderMenu->addSeparator();
folderMenu->addAction(setFolderAsNotCompletedAction);
folderMenu->addAction(setFolderAsCompletedAction);
folderMenu->addSeparator();
folderMenu->addAction(setFolderAsFinishedAction);
folderMenu->addAction(setFolderAsNotFinishedAction);
//comic
QMenu * comicMenu = new QMenu(tr("Comic"));
comicMenu->addAction(openContainingFolderComicAction);
comicMenu->addSeparator();
comicMenu->addAction(resetComicRatingAction);
menu->addMenu(libraryMenu);
menu->addMenu(folderMenu);
menu->addMenu(comicMenu);
#endif
}
void LibraryWindow::createConnections()
@ -1365,6 +1418,11 @@ void LibraryWindow::setRootIndex()
foldersView->clearSelection();
}
setFolderAsNotCompletedAction->setVisible(false);
setFolderAsCompletedAction->setVisible(false);
setFolderAsFinishedAction->setVisible(false);
setFolderAsNotFinishedAction->setVisible(false);
}
@ -1558,7 +1616,11 @@ QFileInfo file = QDir::cleanPath(currentPath() + dmCV->getComicPath(modelIndex))
void LibraryWindow::openContainingFolder()
{
QModelIndex modelIndex = foldersView->currentIndex();
QString path = QDir::cleanPath(currentPath() + dm->getFolderPath(modelIndex));
QString path;
if(modelIndex.isValid())
path = QDir::cleanPath(currentPath() + dm->getFolderPath(modelIndex));
else
path = QDir::cleanPath(currentPath());
QDesktopServices::openUrl(QUrl("file:///"+path, QUrl::TolerantMode));
}