aboutsummaryrefslogtreecommitdiff
path: root/include/lobby.h
diff options
context:
space:
mode:
authorDavid Skoland <davidskoland@gmail.com>2018-12-26 16:43:08 +0100
committerDavid Skoland <davidskoland@gmail.com>2018-12-26 16:43:08 +0100
commit00cfd2750d39795e4c205aee2a33b92b1da2524d (patch)
tree839c1129418ca8fefe41e6814917f9dabb6efa4b /include/lobby.h
parent6f1bce5882676ea7affe717a2f5a00b8c3b7fe12 (diff)
moved headers into include and cpp files into src + logo into resource
Diffstat (limited to 'include/lobby.h')
-rw-r--r--include/lobby.h95
1 files changed, 95 insertions, 0 deletions
diff --git a/include/lobby.h b/include/lobby.h
new file mode 100644
index 00000000..19276a7d
--- /dev/null
+++ b/include/lobby.h
@@ -0,0 +1,95 @@
+#ifndef LOBBY_H
+#define LOBBY_H
+
+#include "aoimage.h"
+#include "aobutton.h"
+#include "aopacket.h"
+#include "aotextarea.h"
+
+#include <QMainWindow>
+#include <QListWidget>
+#include <QLabel>
+#include <QPlainTextEdit>
+#include <QLineEdit>
+#include <QProgressBar>
+#include <QTextBrowser>
+
+#include <QDebug>
+#include <QScrollBar>
+
+class AOApplication;
+
+class Lobby : public QMainWindow
+{
+ Q_OBJECT
+
+public:
+ Lobby(AOApplication *p_ao_app);
+
+ void set_widgets();
+ void list_servers();
+ void list_favorites();
+ void append_chatmessage(QString f_name, QString f_message);
+ void append_error(QString f_message);
+ void set_player_count(int players_online, int max_players);
+ void set_loading_text(QString p_text);
+ void show_loading_overlay(){ui_loading_background->show();}
+ void hide_loading_overlay(){ui_loading_background->hide();}
+ QString get_chatlog();
+ int get_selected_server();
+ void enable_connect_button();
+
+ void set_loading_value(int p_value);
+
+ bool public_servers_selected = true;
+
+ ~Lobby();
+
+private:
+ AOApplication *ao_app;
+
+ AOImage *ui_background;
+
+ AOButton *ui_public_servers;
+ AOButton *ui_favorites;
+
+ AOButton *ui_refresh;
+ AOButton *ui_add_to_fav;
+ AOButton *ui_connect;
+
+ QLabel *ui_version;
+ AOButton *ui_about;
+
+ QListWidget *ui_server_list;
+
+ QLabel *ui_player_count;
+ AOTextArea *ui_description;
+
+ AOTextArea *ui_chatbox;
+
+ QLineEdit *ui_chatname;
+ QLineEdit *ui_chatmessage;
+
+ AOImage *ui_loading_background;
+ QTextEdit *ui_loading_text;
+ QProgressBar *ui_progress_bar;
+ AOButton *ui_cancel;
+
+ void set_size_and_pos(QWidget *p_widget, QString p_identifier);
+
+private slots:
+ void on_public_servers_clicked();
+ void on_favorites_clicked();
+
+ void on_refresh_pressed();
+ void on_refresh_released();
+ void on_add_to_fav_pressed();
+ void on_add_to_fav_released();
+ void on_connect_pressed();
+ void on_connect_released();
+ void on_about_clicked();
+ void on_server_list_clicked(QModelIndex p_model);
+ void on_chatfield_return_pressed();
+};
+
+#endif // LOBBY_H