|
|
|
@ -494,7 +494,7 @@ public:
|
|
|
|
|
this->last_sorting = this->servers.GetListing();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void SetStringParameters(int widget) const
|
|
|
|
|
void SetStringParameters(int widget) const override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NG_CONN_BTN:
|
|
|
|
@ -503,7 +503,7 @@ public:
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize)
|
|
|
|
|
void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NG_CONN_BTN:
|
|
|
|
@ -558,7 +558,7 @@ public:
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void DrawWidget(const Rect &r, int widget) const
|
|
|
|
|
void DrawWidget(const Rect &r, int widget) const override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NG_MATRIX: {
|
|
|
|
@ -595,7 +595,7 @@ public:
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
virtual void OnPaint()
|
|
|
|
|
void OnPaint() override
|
|
|
|
|
{
|
|
|
|
|
if (this->servers.NeedRebuild()) {
|
|
|
|
|
this->BuildGUINetworkGameList();
|
|
|
|
@ -691,7 +691,7 @@ public:
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
|
|
void OnClick(Point pt, int widget, int click_count) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NG_CANCEL: // Cancel button
|
|
|
|
@ -788,7 +788,7 @@ public:
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnDropdownSelect(int widget, int index)
|
|
|
|
|
void OnDropdownSelect(int widget, int index) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NG_CONN_BTN:
|
|
|
|
@ -807,13 +807,13 @@ public:
|
|
|
|
|
* @param data Information about the changed data.
|
|
|
|
|
* @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details.
|
|
|
|
|
*/
|
|
|
|
|
virtual void OnInvalidateData(int data = 0, bool gui_scope = true)
|
|
|
|
|
void OnInvalidateData(int data = 0, bool gui_scope = true) override
|
|
|
|
|
{
|
|
|
|
|
this->servers.ForceRebuild();
|
|
|
|
|
this->SetDirty();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual EventState OnKeyPress(WChar key, uint16 keycode)
|
|
|
|
|
EventState OnKeyPress(WChar key, uint16 keycode) override
|
|
|
|
|
{
|
|
|
|
|
EventState state = ES_NOT_HANDLED;
|
|
|
|
|
|
|
|
|
@ -874,7 +874,7 @@ public:
|
|
|
|
|
return state;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnEditboxChanged(int wid)
|
|
|
|
|
void OnEditboxChanged(int wid) override
|
|
|
|
|
{
|
|
|
|
|
switch (wid) {
|
|
|
|
|
case WID_NG_FILTER: {
|
|
|
|
@ -896,17 +896,17 @@ public:
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnQueryTextFinished(char *str)
|
|
|
|
|
void OnQueryTextFinished(char *str) override
|
|
|
|
|
{
|
|
|
|
|
if (!StrEmpty(str)) NetworkAddServer(str);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnResize()
|
|
|
|
|
void OnResize() override
|
|
|
|
|
{
|
|
|
|
|
this->vscroll->SetCapacityFromWidget(this, WID_NG_MATRIX);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnRealtimeTick(uint delta_ms)
|
|
|
|
|
void OnRealtimeTick(uint delta_ms) override
|
|
|
|
|
{
|
|
|
|
|
if (!this->requery_timer.Elapsed(delta_ms)) return;
|
|
|
|
|
this->requery_timer.SetInterval(MILLISECONDS_PER_TICK);
|
|
|
|
@ -1067,7 +1067,7 @@ struct NetworkStartServerWindow : public Window {
|
|
|
|
|
this->SetFocusedWidget(WID_NSS_GAMENAME);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void SetStringParameters(int widget) const
|
|
|
|
|
void SetStringParameters(int widget) const override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NSS_CONNTYPE_BTN:
|
|
|
|
@ -1092,7 +1092,7 @@ struct NetworkStartServerWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize)
|
|
|
|
|
void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NSS_CONNTYPE_BTN:
|
|
|
|
@ -1103,7 +1103,7 @@ struct NetworkStartServerWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void DrawWidget(const Rect &r, int widget) const
|
|
|
|
|
void DrawWidget(const Rect &r, int widget) const override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NSS_SETPWD:
|
|
|
|
@ -1112,7 +1112,7 @@ struct NetworkStartServerWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
|
|
void OnClick(Point pt, int widget, int click_count) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NSS_CANCEL: // Cancel button
|
|
|
|
@ -1208,7 +1208,7 @@ struct NetworkStartServerWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnDropdownSelect(int widget, int index)
|
|
|
|
|
void OnDropdownSelect(int widget, int index) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NSS_CONNTYPE_BTN:
|
|
|
|
@ -1224,14 +1224,14 @@ struct NetworkStartServerWindow : public Window {
|
|
|
|
|
this->SetDirty();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnEditboxChanged(int wid)
|
|
|
|
|
void OnEditboxChanged(int wid) override
|
|
|
|
|
{
|
|
|
|
|
if (wid == WID_NSS_GAMENAME) {
|
|
|
|
|
strecpy(_settings_client.network.server_name, this->name_editbox.text.buf, lastof(_settings_client.network.server_name));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnTimeout()
|
|
|
|
|
void OnTimeout() override
|
|
|
|
|
{
|
|
|
|
|
static const int raise_widgets[] = {WID_NSS_CLIENTS_BTND, WID_NSS_CLIENTS_BTNU, WID_NSS_COMPANIES_BTND, WID_NSS_COMPANIES_BTNU, WID_NSS_SPECTATORS_BTND, WID_NSS_SPECTATORS_BTNU, WIDGET_LIST_END};
|
|
|
|
|
for (const int *widget = raise_widgets; *widget != WIDGET_LIST_END; widget++) {
|
|
|
|
@ -1242,7 +1242,7 @@ struct NetworkStartServerWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnQueryTextFinished(char *str)
|
|
|
|
|
void OnQueryTextFinished(char *str) override
|
|
|
|
|
{
|
|
|
|
|
if (str == NULL) return;
|
|
|
|
|
|
|
|
|
@ -1384,7 +1384,7 @@ struct NetworkLobbyWindow : public Window {
|
|
|
|
|
return COMPANY_FIRST;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize)
|
|
|
|
|
void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NL_HEADER:
|
|
|
|
@ -1402,7 +1402,7 @@ struct NetworkLobbyWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void SetStringParameters(int widget) const
|
|
|
|
|
void SetStringParameters(int widget) const override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NL_TEXT:
|
|
|
|
@ -1411,7 +1411,7 @@ struct NetworkLobbyWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void DrawWidget(const Rect &r, int widget) const
|
|
|
|
|
void DrawWidget(const Rect &r, int widget) const override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NL_DETAILS:
|
|
|
|
@ -1424,7 +1424,7 @@ struct NetworkLobbyWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnPaint()
|
|
|
|
|
void OnPaint() override
|
|
|
|
|
{
|
|
|
|
|
const NetworkGameInfo *gi = &this->server->info;
|
|
|
|
|
|
|
|
|
@ -1546,7 +1546,7 @@ struct NetworkLobbyWindow : public Window {
|
|
|
|
|
DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y, STR_NETWORK_GAME_LOBBY_PLAYERS); // players
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
|
|
void OnClick(Point pt, int widget, int click_count) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NL_CANCEL: // Cancel button
|
|
|
|
@ -1585,7 +1585,7 @@ struct NetworkLobbyWindow : public Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnResize()
|
|
|
|
|
void OnResize() override
|
|
|
|
|
{
|
|
|
|
|
this->vscroll->SetCapacityFromWidget(this, WID_NL_MATRIX);
|
|
|
|
|
}
|
|
|
|
@ -1777,12 +1777,12 @@ struct NetworkClientListPopupWindow : Window {
|
|
|
|
|
CLRBITS(this->flags, WF_WHITE_BORDER);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual Point OnInitialPosition(int16 sm_width, int16 sm_height, int window_number)
|
|
|
|
|
Point OnInitialPosition(int16 sm_width, int16 sm_height, int window_number) override
|
|
|
|
|
{
|
|
|
|
|
return this->desired_location;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize)
|
|
|
|
|
void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) override
|
|
|
|
|
{
|
|
|
|
|
Dimension d = *size;
|
|
|
|
|
for (const ClientListAction *action = this->actions.Begin(); action != this->actions.End(); action++) {
|
|
|
|
@ -1795,7 +1795,7 @@ struct NetworkClientListPopupWindow : Window {
|
|
|
|
|
*size = d;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void DrawWidget(const Rect &r, int widget) const
|
|
|
|
|
void DrawWidget(const Rect &r, int widget) const override
|
|
|
|
|
{
|
|
|
|
|
/* Draw the actions */
|
|
|
|
|
int sel = this->sel_index;
|
|
|
|
@ -1813,7 +1813,7 @@ struct NetworkClientListPopupWindow : Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnMouseLoop()
|
|
|
|
|
void OnMouseLoop() override
|
|
|
|
|
{
|
|
|
|
|
/* We selected an action */
|
|
|
|
|
uint index = (_cursor.pos.y - this->top - WD_FRAMERECT_TOP) / FONT_HEIGHT_NORMAL;
|
|
|
|
@ -1904,7 +1904,7 @@ struct NetworkClientListWindow : Window {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize)
|
|
|
|
|
void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) override
|
|
|
|
|
{
|
|
|
|
|
if (widget != WID_CL_PANEL) return;
|
|
|
|
|
|
|
|
|
@ -1921,7 +1921,7 @@ struct NetworkClientListWindow : Window {
|
|
|
|
|
size->width = WD_FRAMERECT_LEFT + this->server_client_width + this->icon_size.width + WD_FRAMERECT_LEFT + width + WD_FRAMERECT_RIGHT;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnPaint()
|
|
|
|
|
void OnPaint() override
|
|
|
|
|
{
|
|
|
|
|
/* Check if we need to reset the height */
|
|
|
|
|
if (!this->CheckClientListHeight()) return;
|
|
|
|
@ -1929,7 +1929,7 @@ struct NetworkClientListWindow : Window {
|
|
|
|
|
this->DrawWidgets();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void DrawWidget(const Rect &r, int widget) const
|
|
|
|
|
void DrawWidget(const Rect &r, int widget) const override
|
|
|
|
|
{
|
|
|
|
|
if (widget != WID_CL_PANEL) return;
|
|
|
|
|
|
|
|
|
@ -1975,7 +1975,7 @@ struct NetworkClientListWindow : Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
|
|
void OnClick(Point pt, int widget, int click_count) override
|
|
|
|
|
{
|
|
|
|
|
/* Show the popup with option */
|
|
|
|
|
if (this->selected_item != -1) {
|
|
|
|
@ -1991,7 +1991,7 @@ struct NetworkClientListWindow : Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnMouseOver(Point pt, int widget)
|
|
|
|
|
void OnMouseOver(Point pt, int widget) override
|
|
|
|
|
{
|
|
|
|
|
/* -1 means we left the current window */
|
|
|
|
|
if (pt.y == -1) {
|
|
|
|
@ -2035,7 +2035,7 @@ struct NetworkJoinStatusWindow : Window {
|
|
|
|
|
this->InitNested(WN_NETWORK_STATUS_WINDOW_JOIN);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void DrawWidget(const Rect &r, int widget) const
|
|
|
|
|
void DrawWidget(const Rect &r, int widget) const override
|
|
|
|
|
{
|
|
|
|
|
if (widget != WID_NJS_BACKGROUND) return;
|
|
|
|
|
|
|
|
|
@ -2069,7 +2069,7 @@ struct NetworkJoinStatusWindow : Window {
|
|
|
|
|
DrawFrameRect(r.left + 20, r.top + 5, (int)((this->width - 20) * progress / 100), r.top + 15, COLOUR_MAUVE, FR_NONE);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize)
|
|
|
|
|
void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) override
|
|
|
|
|
{
|
|
|
|
|
if (widget != WID_NJS_BACKGROUND) return;
|
|
|
|
|
|
|
|
|
@ -2095,7 +2095,7 @@ struct NetworkJoinStatusWindow : Window {
|
|
|
|
|
size->width = width + WD_FRAMERECT_LEFT + WD_FRAMERECT_BOTTOM + 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
|
|
void OnClick(Point pt, int widget, int click_count) override
|
|
|
|
|
{
|
|
|
|
|
if (widget == WID_NJS_CANCELOK) { // Disconnect button
|
|
|
|
|
NetworkDisconnect();
|
|
|
|
@ -2104,7 +2104,7 @@ struct NetworkJoinStatusWindow : Window {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnQueryTextFinished(char *str)
|
|
|
|
|
void OnQueryTextFinished(char *str) override
|
|
|
|
|
{
|
|
|
|
|
if (StrEmpty(str)) {
|
|
|
|
|
NetworkDisconnect();
|
|
|
|
@ -2184,7 +2184,7 @@ struct NetworkCompanyPasswordWindow : public Window {
|
|
|
|
|
NetworkChangeCompanyPassword(_local_company, this->password_editbox.text.buf);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
|
|
void OnClick(Point pt, int widget, int click_count) override
|
|
|
|
|
{
|
|
|
|
|
switch (widget) {
|
|
|
|
|
case WID_NCP_OK:
|
|
|
|
|