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

Method OnClick

src/intro_gui.cpp:294–342  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

292 }
293
294 void OnClick([[maybe_unused]] Point pt, WidgetID widget, [[maybe_unused]] int click_count) override
295 {
296 switch (widget) {
297 case WID_SGI_GENERATE_GAME:
298 _is_network_server = false;
299 if (_ctrl_pressed) {
300 StartNewGameWithoutGUI(GENERATE_NEW_SEED);
301 } else {
302 ShowGenerateLandscape();
303 }
304 break;
305 case WID_SGI_LOAD_GAME:
306 _is_network_server = false;
307 ShowSaveLoadDialog(FT_SAVEGAME, SLO_LOAD);
308 break;
309 case WID_SGI_PLAY_SCENARIO:
310 _is_network_server = false;
311 ShowSaveLoadDialog(FT_SCENARIO, SLO_LOAD);
312 break;
313 case WID_SGI_PLAY_HEIGHTMAP:
314 _is_network_server = false;
315 ShowSaveLoadDialog(FT_HEIGHTMAP,SLO_LOAD);
316 break;
317 case WID_SGI_EDIT_SCENARIO:
318 _is_network_server = false;
319 StartScenarioEditor();
320 break;
321
322 case WID_SGI_PLAY_NETWORK:
323 if (!_network_available) {
324 ShowErrorMessage(GetEncodedString(STR_NETWORK_ERROR_NOTAVAILABLE), {}, WL_ERROR);
325 } else {
326 ShowNetworkGameWindow();
327 }
328 break;
329
330 case WID_SGI_OPTIONS: ShowGameOptions(); break;
331 case WID_SGI_HIGHSCORE: ShowHighscoreTable(); break;
332 case WID_SGI_HELP: ShowHelpWindow(); break;
333 case WID_SGI_CONTENT_DOWNLOAD:
334 if (!_network_available) {
335 ShowErrorMessage(GetEncodedString(STR_NETWORK_ERROR_NOTAVAILABLE), {}, WL_ERROR);
336 } else {
337 ShowNetworkContentListWindow();
338 }
339 break;
340 case WID_SGI_EXIT: HandleExitGameRequest(); break;
341 }
342 }
343};
344
345static constexpr std::initializer_list<NWidgetPart> _nested_select_game_widgets = {

Callers

nothing calls this directly

Calls 12

StartNewGameWithoutGUIFunction · 0.85
ShowGenerateLandscapeFunction · 0.85
ShowSaveLoadDialogFunction · 0.85
StartScenarioEditorFunction · 0.85
ShowErrorMessageFunction · 0.85
ShowNetworkGameWindowFunction · 0.85
ShowGameOptionsFunction · 0.85
ShowHighscoreTableFunction · 0.85
ShowHelpWindowFunction · 0.85
HandleExitGameRequestFunction · 0.85
GetEncodedStringFunction · 0.70

Tested by

no test coverage detected