diff options
| author | stonedDiscord <stoned@derpymail.org> | 2019-08-20 18:35:42 +0200 |
|---|---|---|
| committer | stonedDiscord <stoned@derpymail.org> | 2019-08-20 18:35:42 +0200 |
| commit | 5807410b1dae61ba9307197f7d1ae04b8e55c378 (patch) | |
| tree | 23222792b84ea329cd1d4ccc7e21e72740d2105e | |
| parent | 177c56e2b8402cee95ae1ff1e042ddf2eabe52b6 (diff) | |
doubleclick to join a server
| -rw-r--r-- | include/lobby.h | 3 | ||||
| -rw-r--r-- | src/lobby.cpp | 13 |
2 files changed, 16 insertions, 0 deletions
diff --git a/include/lobby.h b/include/lobby.h index 19276a7d..4293ac36 100644 --- a/include/lobby.h +++ b/include/lobby.h @@ -75,6 +75,8 @@ private: QProgressBar *ui_progress_bar; AOButton *ui_cancel; + QModelIndex last_model; + void set_size_and_pos(QWidget *p_widget, QString p_identifier); private slots: @@ -89,6 +91,7 @@ private slots: void on_connect_released(); void on_about_clicked(); void on_server_list_clicked(QModelIndex p_model); + void on_server_list_doubleclicked(QModelIndex p_model); void on_chatfield_return_pressed(); }; diff --git a/src/lobby.cpp b/src/lobby.cpp index c95fd49c..6f257cec 100644 --- a/src/lobby.cpp +++ b/src/lobby.cpp @@ -47,6 +47,7 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow() connect(ui_connect, SIGNAL(released()), this, SLOT(on_connect_released())); connect(ui_about, SIGNAL(clicked()), this, SLOT(on_about_clicked())); connect(ui_server_list, SIGNAL(clicked(QModelIndex)), this, SLOT(on_server_list_clicked(QModelIndex))); + connect(ui_server_list, SIGNAL(activated(QModelIndex)), this, SLOT(on_server_list_doubleclicked(QModelIndex))); connect(ui_chatmessage, SIGNAL(returnPressed()), this, SLOT(on_chatfield_return_pressed())); connect(ui_cancel, SIGNAL(clicked()), ao_app, SLOT(loading_cancelled())); @@ -282,9 +283,13 @@ void Lobby::on_about_clicked() QMessageBox::about(this, "About", msg); } +//clicked on an item in the serverlist void Lobby::on_server_list_clicked(QModelIndex p_model) { + if (p_model != last_model) + { server_type f_server; + last_model = p_model; int n_server = p_model.row(); if (n_server < 0) @@ -318,6 +323,14 @@ void Lobby::on_server_list_clicked(QModelIndex p_model) ui_connect->setEnabled(false); ao_app->net_manager->connect_to_server(f_server); + } +} + +//doubleclicked on an item in the serverlist so we'll connect right away +void Lobby::on_server_list_doubleclicked(QModelIndex p_model) +{ + on_server_list_clicked(p_model); + on_connect_released(); } void Lobby::on_chatfield_return_pressed() |
