Skip to content

Commit

Permalink
Qt: Overhaul menubar
Browse files Browse the repository at this point in the history
  • Loading branch information
spycrab committed Jul 16, 2017
1 parent ba356f7 commit 8f4dff3
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 5 deletions.
38 changes: 33 additions & 5 deletions Source/Core/DolphinQt2/MenuBar.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
#include <QMessageBox>
#include <QUrl>

#include <iostream>

#include "Core/CommonTitles.h"
#include "Core/ConfigManager.h"
#include "Core/IOS/ES/ES.h"
Expand All @@ -17,6 +19,7 @@
#include "DolphinQt2/AboutDialog.h"
#include "DolphinQt2/GameList/GameFile.h"
#include "DolphinQt2/MenuBar.h"
#include "DolphinQt2/Resources.h"
#include "DolphinQt2/Settings.h"

MenuBar::MenuBar(QWidget* parent) : QMenuBar(parent)
Expand All @@ -30,6 +33,11 @@ MenuBar::MenuBar(QWidget* parent) : QMenuBar(parent)
AddHelpMenu();

EmulationStopped();

#ifndef __APPLE__
connect(&Settings::Instance(), &Settings::ThemeChanged, this, &MenuBar::ThemeChanged);
ThemeChanged();
#endif
}

void MenuBar::EmulationStarted()
Expand Down Expand Up @@ -74,11 +82,26 @@ void MenuBar::EmulationStopped()
UpdateToolsMenu(false);
}

#ifndef __APPLE__
void MenuBar::ThemeChanged()
{
m_open_action->setIcon(Resources::GetScaledThemeIcon("open"));
m_play_action->setIcon(Resources::GetScaledThemeIcon("play"));
m_pause_action->setIcon(Resources::GetScaledThemeIcon("pause"));
m_stop_action->setIcon(Resources::GetScaledThemeIcon("stop"));
m_reset_action->setIcon(Resources::GetScaledThemeIcon("refresh"));
m_fullscreen_action->setIcon(Resources::GetScaledThemeIcon("fullscreen"));
m_screenshot_action->setIcon(Resources::GetScaledThemeIcon("screenshot"));
}
#endif

void MenuBar::AddFileMenu()
{
QMenu* file_menu = addMenu(tr("File"));
m_open_action = file_menu->addAction(tr("Open"), this, SIGNAL(Open()));
m_exit_action = file_menu->addAction(tr("Exit"), this, SIGNAL(Exit()));
m_open_action = file_menu->addAction(tr("Open..."), this, SIGNAL(Open()),
QKeySequence(QStringLiteral("Ctrl+O")));
m_exit_action = file_menu->addAction(tr("Exit"), this, SIGNAL(Exit()),
QKeySequence(QStringLiteral("Alt+F4")));
}

void MenuBar::AddToolsMenu()
Expand Down Expand Up @@ -111,9 +134,14 @@ void MenuBar::AddEmulationMenu()
m_pause_action = emu_menu->addAction(tr("Pause"), this, SIGNAL(Pause()));
m_stop_action = emu_menu->addAction(tr("Stop"), this, SIGNAL(Stop()));
m_reset_action = emu_menu->addAction(tr("Reset"), this, SIGNAL(Reset()));

emu_menu->addSeparator();

m_fullscreen_action = emu_menu->addAction(tr("Fullscreen"), this, SIGNAL(Fullscreen()));
m_frame_advance_action = emu_menu->addAction(tr("Frame Advance"), this, SIGNAL(FrameAdvance()));
m_screenshot_action = emu_menu->addAction(tr("Take Screenshot"), this, SIGNAL(Screenshot()));
emu_menu->addSeparator();

AddStateLoadMenu(emu_menu);
AddStateSaveMenu(emu_menu);
AddStateSlotMenu(emu_menu);
Expand All @@ -123,7 +151,7 @@ void MenuBar::AddEmulationMenu()
void MenuBar::AddStateLoadMenu(QMenu* emu_menu)
{
m_state_load_menu = emu_menu->addMenu(tr("Load State"));
m_state_load_menu->addAction(tr("Load State from File"), this, SIGNAL(StateLoad()));
m_state_load_menu->addAction(tr("Load State from File..."), this, SIGNAL(StateLoad()));
m_state_load_menu->addAction(tr("Load State from Selected Slot"), this, SIGNAL(StateLoadSlot()));
m_state_load_slots_menu = m_state_load_menu->addMenu(tr("Load State from Slot"));
m_state_load_menu->addAction(tr("Undo Load State"), this, SIGNAL(StateLoadUndo()));
Expand All @@ -139,7 +167,7 @@ void MenuBar::AddStateLoadMenu(QMenu* emu_menu)
void MenuBar::AddStateSaveMenu(QMenu* emu_menu)
{
m_state_save_menu = emu_menu->addMenu(tr("Save State"));
m_state_save_menu->addAction(tr("Save State to File"), this, SIGNAL(StateSave()));
m_state_save_menu->addAction(tr("Save State to File..."), this, SIGNAL(StateSave()));
m_state_save_menu->addAction(tr("Save State to Selected Slot"), this, SIGNAL(StateSaveSlot()));
m_state_save_menu->addAction(tr("Save State to Oldest Slot"), this, SIGNAL(StateSaveOldest()));
m_state_save_slots_menu = m_state_save_menu->addMenu(tr("Save State to Slot"));
Expand Down Expand Up @@ -197,7 +225,7 @@ void MenuBar::AddViewMenu()
void MenuBar::AddOptionsMenu()
{
QMenu* options_menu = addMenu(tr("Options"));
options_menu->addAction(tr("Hotkey Settings"), this, &MenuBar::ConfigureHotkeys);
options_menu->addAction(tr("Hotkey Settings..."), this, &MenuBar::ConfigureHotkeys);
}

void MenuBar::AddHelpMenu()
Expand Down
4 changes: 4 additions & 0 deletions Source/Core/DolphinQt2/MenuBar.h
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,10 @@ public slots:
void AddToolsMenu();
void AddHelpMenu();

#ifndef __APPLE__
void ThemeChanged();
#endif

// File
QAction* m_open_action;
QAction* m_exit_action;
Expand Down

0 comments on commit 8f4dff3

Please sign in to comment.