|
OpenTTD Source 20251104-master-g3befbdd52f
|
GUI related to errors. More...
#include "stdafx.h"#include "core/geometry_func.hpp"#include "landscape.h"#include "newgrf_text.h"#include "error.h"#include "viewport_func.h"#include "gfx_func.h"#include "string_func.h"#include "company_base.h"#include "company_func.h"#include "company_manager_face.h"#include "strings_func.h"#include "zoom_func.h"#include "window_func.h"#include "console_func.h"#include "window_gui.h"#include "timer/timer.h"#include "timer/timer_window.h"#include "widgets/error_widget.h"#include "table/sprites.h"#include "table/strings.h"#include "safeguards.h"Go to the source code of this file.
Data Structures | |
| struct | ErrmsgWindow |
| Window class for displaying an error message window. More... | |
Functions | |
| void | ClearErrorMessages () |
| Clear all errors from the queue. | |
| void | ShowFirstError () |
| Show the first error of the queue. | |
| void | UnshowCriticalError () |
| Unshow the critical error. | |
| void | ShowErrorMessage (EncodedString &&summary_msg, int x, int y, CommandCost &cc) |
| Display an error message in a window. | |
| void | ShowErrorMessage (EncodedString &&summary_msg, EncodedString &&detailed_msg, WarningLevel wl, int x, int y, EncodedString &&extra_msg, CompanyID company) |
| Display an error message in a window. | |
| bool | HideActiveErrorMessage () |
| Close active error message window. | |
| void | ScheduleErrorMessage (ErrorList &datas) |
| Schedule a list of errors. | |
| void | ScheduleErrorMessage (const ErrorMessageData &data) |
| Schedule an error. | |
Variables | |
| static constexpr std::initializer_list< NWidgetPart > | _nested_errmsg_widgets |
| static WindowDesc | _errmsg_desc (WDP_MANUAL, {}, 0, 0, WC_ERRMSG, WC_NONE, {}, _nested_errmsg_widgets) |
| static constexpr std::initializer_list< NWidgetPart > | _nested_errmsg_face_widgets |
| static WindowDesc | _errmsg_face_desc (WDP_MANUAL, {}, 0, 0, WC_ERRMSG, WC_NONE, {}, _nested_errmsg_face_widgets) |
| static ErrorList | _error_list |
| The actual queue with errors. | |
| bool | _window_system_initialized = false |
| Whether the window system is initialized or not. | |
GUI related to errors.
Definition in file error_gui.cpp.
| void ClearErrorMessages | ( | ) |
Clear all errors from the queue.
Definition at line 251 of file error_gui.cpp.
References UnshowCriticalError().
Referenced by SaveLoadWindow::OnClick(), and ClientNetworkGameSocketHandler::Receive_SERVER_MAP_DONE().
| bool HideActiveErrorMessage | ( | ) |
Close active error message window.
Definition at line 355 of file error_gui.cpp.
References ErrmsgWindow::Close(), FindWindowById(), and WC_ERRMSG.
Referenced by MainWindow::OnHotkey().
| void ScheduleErrorMessage | ( | const ErrorMessageData & | data | ) |
Schedule an error.
Note: This does not try to display the error now. This is useful if the window system is not yet running.
| data | Error message data; cleared afterwards |
Definition at line 378 of file error_gui.cpp.
References _error_list.
| void ScheduleErrorMessage | ( | ErrorList & | datas | ) |
Schedule a list of errors.
Note: This does not try to display the error now. This is useful if the window system is not yet running.
| datas | Error message datas; cleared afterwards |
Definition at line 368 of file error_gui.cpp.
References _error_list.
Referenced by LoadFromConfig(), openttd_main(), and DriverFactoryBase::SelectDriverImpl().
| void ShowErrorMessage | ( | EncodedString && | summary_msg, |
| EncodedString && | detailed_msg, | ||
| WarningLevel | wl, | ||
| int | x, | ||
| int | y, | ||
| EncodedString && | extra_msg, | ||
| CompanyID | company | ||
| ) |
Display an error message in a window.
| summary_msg | General error message showed in first line. Must be valid. |
| detailed_msg | Detailed error message showed in second line. Can be empty. |
| wl | Message severity. |
| x | World X position (TileVirtX) of the error location. Set both x and y to 0 to just center the message when there is no related error tile. |
| y | World Y position (TileVirtY) of the error location. Set both x and y to 0 to just center the message when there is no related error tile. |
| extra_msg | Extra error message shown in third line. Can be empty. |
Definition at line 308 of file error_gui.cpp.
References _error_list, _settings_client, CC_ERROR, CC_WARNING, ErrmsgWindow::Close(), GUISettings::errmsg_duration, FindWindowById(), ClientSettings::gui, IConsolePrint(), ErrmsgWindow::IsCritical(), WC_ERRMSG, WL_CRITICAL, WL_INFO, and WL_WARNING.
| void ShowErrorMessage | ( | EncodedString && | summary_msg, |
| int | x, | ||
| int | y, | ||
| CommandCost & | cc | ||
| ) |
Display an error message in a window.
Note: CommandCost errors are always severity level WL_INFO.
| summary_msg | General error message showed in first line. Must be valid. |
| x | World X position (TileVirtX) of the error location. Set both x and y to 0 to just center the message when there is no related error tile. |
| y | World Y position (TileVirtY) of the error location. Set both x and y to 0 to just center the message when there is no related error tile. |
| cc | CommandCost containing the optional detailed and extra error messages shown in the second and third lines (can be empty). |
Definition at line 290 of file error_gui.cpp.
References CommandCost::GetEncodedMessage(), GetEncodedStringIfValid(), CommandCost::GetErrorMessage(), CommandCost::GetErrorOwner(), CommandCost::GetExtraErrorMessage(), ShowErrorMessage(), and WL_INFO.
Referenced by NewGRFWindow::AddGRFToActive(), ClientNetworkContentSocketHandler::AfterDownload(), AfterLoadGame(), ClientNetworkContentSocketHandler::BeforeDownload(), ClientNetworkGameSocketHandler::CheckConnection(), CheckDynamicEngines(), CheckEngines(), CheckForMissingGlyphs(), CheckIndustries(), CheckTownRoadTypes(), CheckTrainsLengths(), ClickChangeMaxHlCheat(), NetworkGameSocketHandler::CloseConnection(), CmdBuildIndustry(), AIInstance::Died(), GameInstance::Died(), DoAutoOrNetsave(), ErrorUnknownCallbackResult(), GenerateTowns(), GetOrderCmdFromTile(), GetSavegameFormat(), GraphicsSetLoadConfig(), GRFLoadConfig(), IndustryProductionCallback(), CommandHelperBase::InternalPostBefore(), CommandHelperBase::InternalPostResult(), LoadTownData(), NetworkValidateClientName(), NetworkValidateServerName(), AIConfigWindow::OnClick(), SelectCompanyManagerFaceWindow::OnClick(), SaveLoadWindow::OnClick(), GSConfigWindow::OnClick(), SelectGameWindow::OnClick(), NewGRFWindow::OnClick(), GameOptionsWindow::OnClick(), NetworkContentListWindow::OnConnect(), GameOptionsWindow::OnDropdownSelect(), BuildIndustryWindow::OnPlaceObject(), SelectCompanyManagerFaceWindow::OnQueryTextFinished(), FoundTownWindow::OnQueryTextFinished(), DepotWindow::OnVehicleSelect(), OrdersWindow::OnVehicleSelect(), ReadHeightmapBMP(), ReadHeightmapPNG(), RealMakeScreenshot(), ClientNetworkCoordinatorSocketHandler::Receive_GC_ERROR(), ClientNetworkCoordinatorSocketHandler::Receive_GC_REGISTER_ACK(), ClientNetworkGameSocketHandler::Receive_SERVER_BANNED(), ClientNetworkGameSocketHandler::Receive_SERVER_CHECK_NEWGRFS(), ClientNetworkContentSocketHandler::Receive_SERVER_CONTENT(), ClientNetworkGameSocketHandler::Receive_SERVER_ERROR(), ClientNetworkGameSocketHandler::Receive_SERVER_FULL(), ClientNetworkGameSocketHandler::Receive_SERVER_MAP_DONE(), ClientNetworkGameSocketHandler::Receive_SERVER_NEWGAME(), ClientNetworkGameSocketHandler::Receive_SERVER_SHUTDOWN(), SaveFileError(), SaveOrLoad(), ShowBuildBridgeWindow(), ShowErrorMessage(), ShowEstimatedCostOrIncome(), ShowNetworkContentListWindow(), ShowNewGRFError(), ShowNewGrfVehicleError(), ShowScriptDebugWindow(), TownActionBribe(), and WarnCorruptSprite().
| void ShowFirstError | ( | ) |
Show the first error of the queue.
Definition at line 258 of file error_gui.cpp.
References _error_list, and _window_system_initialized.
Referenced by CleanupGeneration(), ErrmsgWindow::Close(), InitWindowSystem(), and LoadFromConfig().
| void UnshowCriticalError | ( | ) |
Unshow the critical error.
This has to happen when a critical error is shown and we uninitialise the window system, i.e. remove all the windows.
Definition at line 272 of file error_gui.cpp.
References _error_list, _window_system_initialized, ErrmsgWindow::Close(), FindWindowById(), ErrmsgWindow::IsCritical(), and WC_ERRMSG.
Referenced by ClearErrorMessages(), GenerateWorld(), and UnInitWindowSystem().
|
static |
The actual queue with errors.
Definition at line 94 of file error_gui.cpp.
Referenced by ScheduleErrorMessage(), ScheduleErrorMessage(), ShowErrorMessage(), ShowFirstError(), and UnshowCriticalError().
|
staticconstexpr |
Definition at line 53 of file error_gui.cpp.
|
staticconstexpr |
Definition at line 36 of file error_gui.cpp.
| bool _window_system_initialized = false |
Whether the window system is initialized or not.
Definition at line 96 of file error_gui.cpp.
Referenced by ErrmsgWindow::Close(), ShowFirstError(), and UnshowCriticalError().