mirror of https://github.com/mgba-emu/mgba.git
Qt: Disable "New multiplayer window" when MAX_GBAS is reached.
Fixes #107.
This commit is contained in:
parent
d7aa0eaf54
commit
ea93b029c9
|
@ -118,6 +118,9 @@ Window* GBAApp::newWindow() {
|
|||
int windowId = m_multiplayer.attached();
|
||||
connect(w, &Window::destroyed, [this, w]() {
|
||||
m_windows.removeAll(w);
|
||||
for (Window* w : m_windows) {
|
||||
w->updateMultiplayerStatus(m_windows.count() < MAX_GBAS);
|
||||
}
|
||||
});
|
||||
m_windows.append(w);
|
||||
w->setAttribute(Qt::WA_DeleteOnClose);
|
||||
|
@ -125,6 +128,9 @@ Window* GBAApp::newWindow() {
|
|||
w->show();
|
||||
w->controller()->setMultiplayerController(&m_multiplayer);
|
||||
w->multiplayerChanged();
|
||||
for (Window* w : m_windows) {
|
||||
w->updateMultiplayerStatus(m_windows.count() < MAX_GBAS);
|
||||
}
|
||||
return w;
|
||||
}
|
||||
|
||||
|
|
|
@ -1024,11 +1024,11 @@ void Window::setupMenu(QMenuBar* menubar) {
|
|||
#endif
|
||||
|
||||
fileMenu->addSeparator();
|
||||
QAction* multiWindow = new QAction(tr("New multiplayer window"), fileMenu);
|
||||
connect(multiWindow, &QAction::triggered, [this]() {
|
||||
m_multiWindow = new QAction(tr("New multiplayer window"), fileMenu);
|
||||
connect(m_multiWindow, &QAction::triggered, [this]() {
|
||||
GBAApp::app()->newWindow();
|
||||
});
|
||||
addControlledAction(fileMenu, multiWindow, "multiWindow");
|
||||
addControlledAction(fileMenu, m_multiWindow, "multiWindow");
|
||||
|
||||
#ifndef Q_OS_MAC
|
||||
fileMenu->addSeparator();
|
||||
|
|
|
@ -50,6 +50,8 @@ public:
|
|||
|
||||
void resizeFrame(const QSize& size);
|
||||
|
||||
void updateMultiplayerStatus(bool canOpenAnother) { m_multiWindow->setEnabled(canOpenAnother); }
|
||||
|
||||
signals:
|
||||
void startDrawing(mCoreThread*);
|
||||
void shutdown();
|
||||
|
@ -160,6 +162,7 @@ private:
|
|||
#ifdef M_CORE_GBA
|
||||
QList<QAction*> m_gbaActions;
|
||||
#endif
|
||||
QAction* m_multiWindow;
|
||||
QMap<int, QAction*> m_frameSizes;
|
||||
LogController m_log;
|
||||
LogView* m_logView;
|
||||
|
|
Loading…
Reference in New Issue