OpenTTD Source: src/error.h File Reference

OpenTTD Source 14.0-RC3

Data Structures | Typedefs | Enumerations | Functions
error.h File Reference
`#include "strings_type.h"`
`#include "company_type.h"`
`#include "command_type.h"`
`#include "core/geometry_type.hpp"`
`#include <chrono>`

Go to the source code of this file.

## Data Structures
class | ErrorMessageData
| The data of the error message. More...

## Typedefs
typedef std::list< ErrorMessageData > | ErrorList
| Define a queue with errors.

## Enumerations
enum | WarningLevel { WL_INFO, WL_WARNING, WL_ERROR, WL_CRITICAL }
| Message severity/type. More...

## Functions
void | ScheduleErrorMessage (ErrorList &datas)
| Schedule a list of errors. More...
void | ScheduleErrorMessage (const ErrorMessageData &data)
| Schedule an error. More...
void | ShowErrorMessage (StringID summary_msg, int x, int y, CommandCost cc)
| Display an error message in a window. More...
void | ShowErrorMessage (StringID summary_msg, StringID detailed_msg, WarningLevel wl, int x=0, int y=0, const GRFFile *textref_stack_grffile=nullptr, uint textref_stack_size=0, const uint32_t *textref_stack=nullptr, StringID extra_msg=INVALID_STRING_ID)
| Display an error message in a window. More...
bool | HideActiveErrorMessage ()
| Close active error message window. More...
void | ClearErrorMessages ()
| Clear all errors from the queue.
void | ShowFirstError ()
| Show the first error of the queue.
void | UnshowCriticalError ()
| Unshow the critical error. More...

## Detailed Description

Functions related to errors.

Definition in file error.h.

## Enumeration Type Documentation

## ◆ WarningLevel

enum WarningLevel

Message severity/type.

Enumerator
WL_INFO | Used for DoCommand-like (and some non-fatal AI GUI) errors/information.
WL_WARNING | Other information.
WL_ERROR | Errors (eg. saving/loading failed)
WL_CRITICAL | Critical errors, the MessageBox is shown in all cases.

Definition at line 23 of file error.h.

## Function Documentation

## ◆ HideActiveErrorMessage()

bool HideActiveErrorMessage | ( |  | ) |

Close active error message window.

Returns
  true if a window was closed.

Definition at line 439 of file error_gui.cpp.

References FindWindowById(), and WC_ERRMSG.

## ◆ ScheduleErrorMessage() [1/2]

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.

Parameters

  data | Error message data; cleared afterwards

Definition at line 462 of file error_gui.cpp.

References _error_list.

## ◆ ScheduleErrorMessage() [2/2]

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.

Parameters

  datas | Error message datas; cleared afterwards

Definition at line 452 of file error_gui.cpp.

References _error_list.

Referenced by DriverFactoryBase::SelectDriverImpl().

## ◆ ShowErrorMessage() [1/2]

void ShowErrorMessage | ( | StringID | summary_msg,
|  | int | x,
|  | int | y,
|  | CommandCost | cc
| ) |  |

Display an error message in a window.

Note: CommandCost errors are always severity level WL_INFO.

Parameters

  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 INVALID_STRING_ID) and TextRefStack info.

Definition at line 367 of file error_gui.cpp.

Referenced by NewGRFWindow::AddGRFToActive(), ClientNetworkContentSocketHandler::BeforeDownload(), ClientNetworkGameSocketHandler::CheckConnection(), CheckEngines(), CheckIndustries(), CheckTrainsLengths(), ClickChangeMaxHlCheat(), NetworkGameSocketHandler::CloseConnection(), DoAutoOrNetsave(), GetOrderCmdFromTile(), GetSavegameFormat(), GraphicsSetLoadConfig(), GRFLoadConfig(), CommandHelperBase::InternalPostBefore(), NetworkValidateClientName(), NetworkValidateServerName(), SaveLoadWindow::OnTimeout(), DepotWindow::OnVehicleSelect(), OrdersWindow::OnVehicleSelect(), 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_FULL(), ClientNetworkGameSocketHandler::Receive_SERVER_NEWGAME(), ClientNetworkGameSocketHandler::Receive_SERVER_SHUTDOWN(), SaveFileError(), SaveOrLoad(), ShowNetworkContentListWindow(), ShowNewGrfVehicleError(), ShowScriptDebugWindow(), TownActionBribe(), and WarnCorruptSprite().

## ◆ ShowErrorMessage() [2/2]

void ShowErrorMessage | ( | StringID | summary_msg,
|  | StringID | detailed_msg,
|  | WarningLevel | wl,
|  | int | x,
|  | int | y,
|  | const GRFFile * | textref_stack_grffile,
|  | uint | textref_stack_size,
|  | const uint32_t * | textref_stack,
|  | StringID | extra_msg
| ) |  |

Display an error message in a window.

Parameters

  summary_msg | General error message showed in first line. Must be valid.
  detailed_msg | Detailed error message showed in second line. Can be INVALID_STRING_ID.
  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.
  textref_stack_grffile | NewGRF providing the TextRefStack for the error message.
  textref_stack_size | Number of uint32_t values to put on the TextRefStack for the error message; 0 if the TextRefStack shall not be used.
  textref_stack | Values to put on the TextRefStack.
  extra_msg | Extra error message shown in third line. Can be INVALID_STRING_ID.

Definition at line 384 of file error_gui.cpp.

## ◆ UnshowCriticalError()

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 349 of file error_gui.cpp.

References _error_list, _window_system_initialized, FindWindowById(), ErrmsgWindow::IsCritical(), and WC_ERRMSG.

Referenced by ClearErrorMessages(), and UnInitWindowSystem().