change appmenu to button set to better user experience

(if user will have global appmenu enabled)
This commit is contained in:
arcan1s 2014-09-09 09:38:59 +04:00
parent 4e8bbeed35
commit 28a4934a82
5 changed files with 50 additions and 32 deletions

View File

@ -11,7 +11,7 @@ set (PROJECT_CONTACT "esalexeev@gmail.com")
set (PROJECT_LICENSE "GPLv3") set (PROJECT_LICENSE "GPLv3")
set (PROJECT_VERSION_MAJOR 1) set (PROJECT_VERSION_MAJOR 1)
set (PROJECT_VERSION_MINOR 3) set (PROJECT_VERSION_MINOR 3)
set (PROJECT_VERSION_PATCH 1) set (PROJECT_VERSION_PATCH 2)
set (PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}) set (PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
string (TIMESTAMP CURRENT_DATE "%Y-%m-%d %H:%M" UTC) string (TIMESTAMP CURRENT_DATE "%Y-%m-%d %H:%M" UTC)
string (TIMESTAMP CURRENT_YEAR "%Y") string (TIMESTAMP CURRENT_YEAR "%Y")

View File

@ -22,6 +22,7 @@
#include <QDesktopServices> #include <QDesktopServices>
#include <QFileDialog> #include <QFileDialog>
#include <QFileInfo> #include <QFileInfo>
#include <QMenu>
#include <QUrl> #include <QUrl>
#include <pdebug/pdebug.h> #include <pdebug/pdebug.h>
@ -163,16 +164,16 @@ void MainWindow::updateToolBars()
{ {
if (debug) qDebug() << PDEBUG; if (debug) qDebug() << PDEBUG;
if (sender() == toolBarActions[QString("menu")]) { if (sender() == ui->pushButton_menu) {
mainToolBar->setHidden(false); mainToolBar->setHidden(false);
actionToolBar->setHidden(true); actionToolBar->setHidden(true);
helpToolBar->setHidden(true); helpToolBar->setHidden(true);
} else if (sender() == toolBarActions[QString("actions")]) { } else if (sender() == ui->pushButton_action) {
mainToolBar->setHidden(true); mainToolBar->setHidden(true);
actionToolBar->setHidden(false); actionToolBar->setHidden(false);
helpToolBar->setHidden(true); helpToolBar->setHidden(true);
updateMenu(); updateMenu();
} else if (sender() == toolBarActions[QString("help")]) { } else if (sender() == ui->pushButton_help) {
mainToolBar->setHidden(true); mainToolBar->setHidden(true);
actionToolBar->setHidden(true); actionToolBar->setHidden(true);
helpToolBar->setHidden(false); helpToolBar->setHidden(false);

View File

@ -361,6 +361,7 @@ void MainWindow::updateConfiguration(const QMap<QString, QVariant> args)
createObjects(); createObjects();
createActions(); createActions();
createToolBars();
// tray // tray
if ((QSystemTrayIcon::isSystemTrayAvailable()) && if ((QSystemTrayIcon::isSystemTrayAvailable()) &&

View File

@ -21,6 +21,7 @@
#include <QDBusConnection> #include <QDBusConnection>
#include <QDBusMessage> #include <QDBusMessage>
#include <QDebug> #include <QDebug>
#include <QMenu>
#include <pdebug/pdebug.h> #include <pdebug/pdebug.h>
#include <task/taskadds.h> #include <task/taskadds.h>
@ -345,6 +346,9 @@ void MainWindow::createActions()
if (debug) qDebug() << PDEBUG; if (debug) qDebug() << PDEBUG;
connect(ui->tabWidget, SIGNAL(currentChanged(int)), this, SLOT(updateTabs(int))); connect(ui->tabWidget, SIGNAL(currentChanged(int)), this, SLOT(updateTabs(int)));
connect(ui->pushButton_menu, SIGNAL(clicked(bool)), this, SLOT(updateToolBars()));
connect(ui->pushButton_action, SIGNAL(clicked(bool)), this, SLOT(updateToolBars()));
connect(ui->pushButton_help, SIGNAL(clicked(bool)), this, SLOT(updateToolBars()));
// main tab events // main tab events
connect(ui->pushButton_netctlAuto, SIGNAL(clicked(bool)), this, SLOT(showNetctlAutoWindow())); connect(ui->pushButton_netctlAuto, SIGNAL(clicked(bool)), this, SLOT(showNetctlAutoWindow()));
@ -437,8 +441,6 @@ void MainWindow::createObjects()
ui->scrollAreaWidgetContents->layout()->addWidget(vlanWid); ui->scrollAreaWidgetContents->layout()->addWidget(vlanWid);
wirelessWid = new WirelessWidget(this, configuration); wirelessWid = new WirelessWidget(this, configuration);
ui->scrollAreaWidgetContents->layout()->addWidget(wirelessWid); ui->scrollAreaWidgetContents->layout()->addWidget(wirelessWid);
createToolBars();
} }
@ -446,13 +448,6 @@ void MainWindow::createToolBars()
{ {
if (debug) qDebug() << PDEBUG; if (debug) qDebug() << PDEBUG;
toolBarActions[QString("menu")] = ui->menuBar->addAction(QApplication::translate("MainWindow", "Menu"),
this, SLOT(updateToolBars()));
toolBarActions[QString("actions")] = ui->menuBar->addAction(QApplication::translate("MainWindow", "Actions"),
this, SLOT(updateToolBars()));
toolBarActions[QString("help")] = ui->menuBar->addAction(QApplication::translate("MainWindow", "Help"),
this, SLOT(updateToolBars()));
mainToolBar = new QToolBar(this); mainToolBar = new QToolBar(this);
mainToolBar->setToolButtonStyle(Qt::ToolButtonFollowStyle); mainToolBar->setToolButtonStyle(Qt::ToolButtonFollowStyle);
toolBarActions[QString("netctlAuto")] = mainToolBar->addAction(QApplication::translate("MainWindow", "netctl-auto"), toolBarActions[QString("netctlAuto")] = mainToolBar->addAction(QApplication::translate("MainWindow", "netctl-auto"),
@ -467,7 +462,7 @@ void MainWindow::createToolBars()
this, SLOT(closeMainWindow())); this, SLOT(closeMainWindow()));
appShortcuts[QString("quitShortcut")] = new QShortcut(QKeySequence(QApplication::translate("MainWindow", "Ctrl+Q")), appShortcuts[QString("quitShortcut")] = new QShortcut(QKeySequence(QApplication::translate("MainWindow", "Ctrl+Q")),
this, SLOT(closeMainWindow())); this, SLOT(closeMainWindow()));
ui->centralLayout->insertWidget(0, mainToolBar); ui->centralLayout->insertWidget(1, mainToolBar);
mainToolBar->setHidden(true); mainToolBar->setHidden(true);
actionToolBar = new QToolBar(this); actionToolBar = new QToolBar(this);
@ -522,7 +517,7 @@ void MainWindow::createToolBars()
toolBarActions[QString("profileRemove")] = actionToolBar->addAction(QIcon::fromTheme(QString("edit-delete")), toolBarActions[QString("profileRemove")] = actionToolBar->addAction(QIcon::fromTheme(QString("edit-delete")),
QApplication::translate("MainWindow", "Remove"), QApplication::translate("MainWindow", "Remove"),
this, SLOT(profileTabRemoveProfile())); this, SLOT(profileTabRemoveProfile()));
ui->centralLayout->insertWidget(0, actionToolBar); ui->centralLayout->insertWidget(1, actionToolBar);
actionToolBar->setHidden(true); actionToolBar->setHidden(true);
helpToolBar = new QToolBar(this); helpToolBar = new QToolBar(this);
@ -541,10 +536,10 @@ void MainWindow::createToolBars()
toolBarActions[QString("about")] = helpToolBar->addAction(QIcon::fromTheme(QString("help-about")), toolBarActions[QString("about")] = helpToolBar->addAction(QIcon::fromTheme(QString("help-about")),
QApplication::translate("MainWindow", "About"), QApplication::translate("MainWindow", "About"),
this, SLOT(showAboutWindow())); this, SLOT(showAboutWindow()));
ui->centralLayout->insertWidget(0, helpToolBar); ui->centralLayout->insertWidget(1, helpToolBar);
helpToolBar->setHidden(true); helpToolBar->setHidden(true);
toolBarActions[QString("menu")]->trigger(); ui->pushButton_menu->click();
} }
@ -593,10 +588,7 @@ void MainWindow::deleteObjects()
delete appShortcuts[QString("quitShortcut")]; delete appShortcuts[QString("quitShortcut")];
} }
if (trayIcon != nullptr) delete trayIcon; if (trayIcon != nullptr) delete trayIcon;
if (ui != nullptr) { if (ui != nullptr) delete ui;
ui->menuBar->clear();
delete ui;
}
} }

View File

@ -15,6 +15,40 @@
</property> </property>
<widget class="QWidget" name="centralWidget"> <widget class="QWidget" name="centralWidget">
<layout class="QVBoxLayout" name="centralLayout"> <layout class="QVBoxLayout" name="centralLayout">
<item>
<layout class="QHBoxLayout" name="layout_menus">
<item>
<widget class="QPushButton" name="pushButton_menu">
<property name="styleSheet">
<string notr="true">border: none;</string>
</property>
<property name="text">
<string>Menu</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_action">
<property name="styleSheet">
<string notr="true">border: none;</string>
</property>
<property name="text">
<string>Actions</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_help">
<property name="styleSheet">
<string notr="true">border: none;</string>
</property>
<property name="text">
<string>Help</string>
</property>
</widget>
</item>
</layout>
</item>
<item> <item>
<widget class="QTabWidget" name="tabWidget"> <widget class="QTabWidget" name="tabWidget">
<property name="currentIndex"> <property name="currentIndex">
@ -157,7 +191,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>437</width> <width>437</width>
<height>371</height> <height>368</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@ -251,16 +285,6 @@
</item> </item>
</layout> </layout>
</widget> </widget>
<widget class="QMenuBar" name="menuBar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>469</width>
<height>22</height>
</rect>
</property>
</widget>
<widget class="QStatusBar" name="statusBar"/> <widget class="QStatusBar" name="statusBar"/>
</widget> </widget>
<tabstops> <tabstops>