Added initial button-based main menu, some icons replaced.

This commit is contained in:
Martin Rotter 2014-03-13 22:52:02 +01:00
parent b3e5a38f96
commit 96bef70547
8 changed files with 27 additions and 23 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View file

@ -70,6 +70,7 @@ FormMain::FormMain(QWidget *parent)
addActions(allActions()); addActions(allActions());
// Prepare tabs. // Prepare tabs.
m_ui->m_tabWidget->setupMainMenuButton();
m_ui->m_tabWidget->initializeTabs(); m_ui->m_tabWidget->initializeTabs();
// Setup some appearance of the window. // Setup some appearance of the window.
@ -198,20 +199,6 @@ void FormMain::switchVisibility(bool force_hide) {
} }
} }
void FormMain::setApplicationMode(FormMain::ApplicationMode mode) {
switch (mode) {
case Tray:
break;
case SingleWindow:
break;
default:
break;
}
}
void FormMain::display() { void FormMain::display() {
// Make sure window is not minimized. // Make sure window is not minimized.
setWindowState(windowState() & ~Qt::WindowMinimized); setWindowState(windowState() & ~Qt::WindowMinimized);

View file

@ -35,11 +35,6 @@ class FormMain : public QMainWindow {
friend class FeedsView; friend class FeedsView;
public: public:
enum ApplicationMode {
SingleWindow,
Tray
};
// Constructors and destructors. // Constructors and destructors.
explicit FormMain(QWidget *parent = 0); explicit FormMain(QWidget *parent = 0);
virtual ~FormMain(); virtual ~FormMain();
@ -97,8 +92,6 @@ class FormMain : public QMainWindow {
// Switches visibility of main window. // Switches visibility of main window.
void switchVisibility(bool force_hide = false); void switchVisibility(bool force_hide = false);
void setApplicationMode(ApplicationMode mode);
// Turns on/off fullscreen mode // Turns on/off fullscreen mode
void switchFullscreenMode(); void switchFullscreenMode();

View file

@ -23,17 +23,18 @@
#include "gui/tabbar.h" #include "gui/tabbar.h"
#include "gui/iconthemefactory.h" #include "gui/iconthemefactory.h"
#include "gui/webbrowser.h" #include "gui/webbrowser.h"
#include "gui/formmain.h"
#include "gui/feedmessageviewer.h" #include "gui/feedmessageviewer.h"
#include "gui/cornerbutton.h" #include "gui/cornerbutton.h"
#include <QUrl> #include <QUrl>
#include <QApplication> #include <QApplication>
#include <QMenu>
TabWidget::TabWidget(QWidget *parent) : QTabWidget(parent) { TabWidget::TabWidget(QWidget *parent) : QTabWidget(parent) {
setTabBar(new TabBar(this)); setTabBar(new TabBar(this));
setupCornerButton(); setupCornerButton();
//setTabsClosable(true);
createConnections(); createConnections();
} }
@ -47,6 +48,23 @@ void TabWidget::setupCornerButton() {
setCornerWidget(m_cornerButton); setCornerWidget(m_cornerButton);
} }
void TabWidget::setupMainMenuButton() {
m_mainMenu = new QMenu("Main menu", this);
m_mainMenu->addMenu(FormMain::instance()->m_ui->m_menuFile);
m_mainMenu->addMenu(FormMain::instance()->m_ui->m_menuView);
m_mainMenu->addMenu(FormMain::instance()->m_ui->m_menuFeeds);
m_mainMenu->addMenu(FormMain::instance()->m_ui->m_menuMessages);
m_mainMenu->addMenu(FormMain::instance()->m_ui->m_menuTools);
m_mainMenu->addMenu(FormMain::instance()->m_ui->m_menuHelp);
m_menuButton = new QToolButton(this);
m_menuButton->setAutoRaise(true);
m_menuButton->setIcon(IconThemeFactory::instance()->fromTheme("application-menu"));
m_menuButton->setPopupMode(QToolButton::InstantPopup);
m_menuButton->setMenu(m_mainMenu);
setCornerWidget(m_menuButton, Qt::TopLeftCorner);
}
void TabWidget::checkTabBarVisibility() { void TabWidget::checkTabBarVisibility() {
tabBar()->setVisible(count() > 1 || !Settings::instance()->value(APP_CFG_GUI, tabBar()->setVisible(count() > 1 || !Settings::instance()->value(APP_CFG_GUI,
"hide_tabbar_one_tab", "hide_tabbar_one_tab",

View file

@ -25,6 +25,8 @@
#include <QUrl> #include <QUrl>
class QMenu;
class QToolButton;
class CornerButton; class CornerButton;
class Message; class Message;
class FeedMessageViewer; class FeedMessageViewer;
@ -61,6 +63,8 @@ class TabWidget : public QTabWidget {
// of main "Feeds" widget. // of main "Feeds" widget.
void initializeTabs(); void initializeTabs();
void setupMainMenuButton();
// Sets up icons for this TabWidget. // Sets up icons for this TabWidget.
void setupIcons(); void setupIcons();
@ -120,6 +124,8 @@ class TabWidget : public QTabWidget {
private: private:
CornerButton *m_cornerButton; CornerButton *m_cornerButton;
QToolButton *m_menuButton;
QMenu *m_mainMenu;
FeedMessageViewer *m_feedMessageViewer; FeedMessageViewer *m_feedMessageViewer;
}; };