Add to lobby

This commit is contained in:
Salanto 2024-07-11 16:18:06 +02:00
parent 1a2036d4b6
commit 3cc0b8f281
3 changed files with 24 additions and 8 deletions

View File

@ -54,10 +54,18 @@ void AOApplication::construct_lobby()
w_lobby = new Lobby(this, net_manager); w_lobby = new Lobby(this, net_manager);
QRect geometry = QGuiApplication::primaryScreen()->geometry(); auto point = Options::getInstance().windowPosition("lobby");
int x = (geometry.width() - w_lobby->width()) / 2; if (!Options::getInstance().restoreWindowPositionEnabled() || !point.has_value())
int y = (geometry.height() - w_lobby->height()) / 2; {
w_lobby->move(x, y); QRect geometry = QGuiApplication::primaryScreen()->geometry();
int x = (geometry.width() - w_lobby->width()) / 2;
int y = (geometry.height() - w_lobby->height()) / 2;
w_lobby->move(x, y);
}
else
{
w_lobby->move(point->x(), point->y());
}
if (Options::getInstance().discordEnabled()) if (Options::getInstance().discordEnabled())
{ {

View File

@ -11,11 +11,10 @@
#include <QUiLoader> #include <QUiLoader>
Lobby::Lobby(AOApplication *p_ao_app, NetworkManager *p_net_manager) Lobby::Lobby(AOApplication *p_ao_app, NetworkManager *p_net_manager)
: QMainWindow() : QMainWindow{}
, ao_app{p_ao_app}
, net_manager{p_net_manager}
{ {
ao_app = p_ao_app;
net_manager = p_net_manager;
reloadUi(); reloadUi();
} }
@ -82,6 +81,12 @@ int Lobby::pageSelected()
return current_page; return current_page;
} }
void Lobby::closeEvent(QCloseEvent *event)
{
Options::getInstance().setWindowPosition("lobby", pos());
QMainWindow::closeEvent(event);
}
void Lobby::reset_selection() void Lobby::reset_selection()
{ {
last_index = -1; last_index = -1;

View File

@ -31,6 +31,9 @@ public:
int get_selected_server(); int get_selected_server();
int pageSelected(); int pageSelected();
protected:
void closeEvent(QCloseEvent *event) override;
private: private:
AOApplication *ao_app; AOApplication *ao_app;
NetworkManager *net_manager; NetworkManager *net_manager;