mirror of https://github.com/mgba-emu/mgba.git
Qt: Kick focus back to main window when clicking a chip
This commit is contained in:
parent
475c7790c5
commit
b4698ab638
|
@ -8,6 +8,8 @@
|
||||||
#include "ConfigController.h"
|
#include "ConfigController.h"
|
||||||
#include "CoreController.h"
|
#include "CoreController.h"
|
||||||
#include "GBAApp.h"
|
#include "GBAApp.h"
|
||||||
|
#include "ShortcutController.h"
|
||||||
|
#include "Window.h"
|
||||||
|
|
||||||
#include <QtAlgorithms>
|
#include <QtAlgorithms>
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
|
@ -18,9 +20,10 @@
|
||||||
|
|
||||||
using namespace QGBA;
|
using namespace QGBA;
|
||||||
|
|
||||||
BattleChipView::BattleChipView(std::shared_ptr<CoreController> controller, QWidget* parent)
|
BattleChipView::BattleChipView(std::shared_ptr<CoreController> controller, Window* window, QWidget* parent)
|
||||||
: QDialog(parent)
|
: QDialog(parent)
|
||||||
, m_controller(controller)
|
, m_controller(controller)
|
||||||
|
, m_window(window)
|
||||||
{
|
{
|
||||||
QResource::registerResource(GBAApp::dataDir() + "/chips.rcc");
|
QResource::registerResource(GBAApp::dataDir() + "/chips.rcc");
|
||||||
QResource::registerResource(ConfigController::configDir() + "/chips.rcc");
|
QResource::registerResource(ConfigController::configDir() + "/chips.rcc");
|
||||||
|
@ -126,6 +129,8 @@ void BattleChipView::reinsert() {
|
||||||
} else {
|
} else {
|
||||||
insertChip(true);
|
insertChip(true);
|
||||||
}
|
}
|
||||||
|
m_window->setWindowState(m_window->windowState() & ~Qt::WindowActive);
|
||||||
|
m_window->setWindowState(m_window->windowState() | Qt::WindowActive);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BattleChipView::addChip() {
|
void BattleChipView::addChip() {
|
||||||
|
|
|
@ -16,12 +16,13 @@
|
||||||
namespace QGBA {
|
namespace QGBA {
|
||||||
|
|
||||||
class CoreController;
|
class CoreController;
|
||||||
|
class Window;
|
||||||
|
|
||||||
class BattleChipView : public QDialog {
|
class BattleChipView : public QDialog {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
BattleChipView(std::shared_ptr<CoreController> controller, QWidget* parent = nullptr);
|
BattleChipView(std::shared_ptr<CoreController> controller, Window* window, QWidget* parent = nullptr);
|
||||||
~BattleChipView();
|
~BattleChipView();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
@ -52,6 +53,8 @@ private:
|
||||||
|
|
||||||
int m_frameCounter = -1;
|
int m_frameCounter = -1;
|
||||||
bool m_next = false;
|
bool m_next = false;
|
||||||
|
|
||||||
|
Window* m_window;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
|
@ -1370,7 +1370,7 @@ void Window::setupMenu(QMenuBar* menubar) {
|
||||||
|
|
||||||
#ifdef M_CORE_GBA
|
#ifdef M_CORE_GBA
|
||||||
QAction* bcGate = new QAction(tr("BattleChip Gate..."), emulationMenu);
|
QAction* bcGate = new QAction(tr("BattleChip Gate..."), emulationMenu);
|
||||||
connect(bcGate, &QAction::triggered, openControllerTView<BattleChipView>());
|
connect(bcGate, &QAction::triggered, openControllerTView<BattleChipView>(this));
|
||||||
addControlledAction(emulationMenu, bcGate, "bcGate");
|
addControlledAction(emulationMenu, bcGate, "bcGate");
|
||||||
m_gbaActions.append(bcGate);
|
m_gbaActions.append(bcGate);
|
||||||
m_gameActions.append(bcGate);
|
m_gameActions.append(bcGate);
|
||||||
|
|
Loading…
Reference in New Issue