Added initial button-based main menu, some icons replaced.
BIN
resources/graphics/icons/mini-kfaenza/application-menu.png
Normal file
|
After Width: | Height: | Size: 3.6 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 5.8 KiB After Width: | Height: | Size: 2.2 KiB |
|
|
@ -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);
|
||||||
|
|
|
||||||
|
|
@ -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();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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",
|
||||||
|
|
|
||||||
|
|
@ -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;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||