MCPcopy Create free account
hub / github.com/OpenTTD/OpenTTD / OnClick

Method OnClick

src/network/network_gui.cpp:1802–1836  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1800 }
1801
1802 void OnClick([[maybe_unused]] Point pt, WidgetID widget, [[maybe_unused]] int click_count) override
1803 {
1804 switch (widget) {
1805 case WID_CL_SERVER_NAME_EDIT:
1806 if (!_network_server) break;
1807
1808 this->query_widget = WID_CL_SERVER_NAME_EDIT;
1809 ShowQueryString(_settings_client.network.server_name, STR_NETWORK_CLIENT_LIST_SERVER_NAME_QUERY_CAPTION, NETWORK_NAME_LENGTH, this, CS_ALPHANUMERAL, QueryStringFlag::LengthIsInChars);
1810 break;
1811
1812 case WID_CL_CLIENT_NAME_EDIT: {
1813 const NetworkClientInfo *own_ci = NetworkClientInfo::GetByClientID(_network_own_client_id);
1814 this->query_widget = WID_CL_CLIENT_NAME_EDIT;
1815 ShowQueryString(own_ci != nullptr ? own_ci->client_name : _settings_client.network.client_name, STR_NETWORK_CLIENT_LIST_PLAYER_NAME_QUERY_CAPTION, NETWORK_CLIENT_NAME_LENGTH, this, CS_ALPHANUMERAL, QueryStringFlag::LengthIsInChars);
1816 break;
1817 }
1818 case WID_CL_SERVER_VISIBILITY:
1819 if (!_network_server) break;
1820
1821 ShowDropDownList(this, BuildVisibilityDropDownList(), _settings_client.network.server_game_type, WID_CL_SERVER_VISIBILITY);
1822 break;
1823
1824 case WID_CL_MATRIX: {
1825 auto it = this->vscroll->GetScrolledItemFromWidget(this->buttons, pt.y, this, WID_CL_MATRIX);
1826 if (it == std::end(this->buttons)) break;
1827
1828 Rect r = this->GetWidget<NWidgetBase>(WID_CL_MATRIX)->GetCurrentRect().Shrink(WidgetDimensions::scaled.framerect);
1829 ButtonCommon *button = (*it)->GetButton(r, pt);
1830 if (button == nullptr) break;
1831
1832 button->OnClick(this, pt);
1833 break;
1834 }
1835 }
1836 }
1837
1838 bool OnTooltip([[maybe_unused]] Point pt, WidgetID widget, TooltipCloseCondition close_cond) override
1839 {

Callers

nothing calls this directly

Calls 10

ShowQueryStringFunction · 0.85
ShowDropDownListFunction · 0.85
ShrinkMethod · 0.80
GetCurrentRectMethod · 0.80
endFunction · 0.50
GetButtonMethod · 0.45
OnClickMethod · 0.45

Tested by

no test coverage detected