The following inheritance tree gives all classes present in the source code, in alphabetical order at each level, along with short descriptions.
-
AnimationManager - Utility class for setting animation markers and querying animation length.
-
App
-
Audio - Layer which handles the Lua-facing side of loading and playing audio.
-
Button - A region of a `Panel` which causes some action when clicked.
-
Entity - Abstraction for visible gameplay things which sit somewhere on the map.
-
Humanoid - An `Entity` which occupies a single tile and is capable of moving around the map.
-
Patient - A `Humanoid` who is in the hospital for diagnosis and/or treatment.
-
Staff - A Doctor, Nurse, Receptionist, Handyman, or Surgeon
-
Litter
-
Object - An `Entity` which occupies at least a single map tile and does not move.
-
FileSystem - Layer for abstracting away differences in file systems
-
Graphics - Layer for loading (and subsequently caching) graphical resources.
-
Hospital
-
Map - Lua extensions to the C++ THMap class
-
Panel - The basic component which makes up most `Window`s.
-
Queue - Manages a list of `Humanoid`s which are waiting to use an `Object`.
-
Room
-
Scrollbar - A window element used to scroll in lists
-
StaffProfile
-
Strings - Layer which handles the loading of localised text.
-
Textbox - A window element used to enter text
-
TreeNode - Iterface for items within a UI tree control
-
DirTreeNode - A tree node representing a directory in the physical file-system
-
DummyRootNode - A tree node which can be used as a root node to give the effect of having
multiple root nodes.
-
UIMenu
-
Window - Base class for user-interface dialogs.
-
TreeControl - A control (to be placed on a window) which allows the user to navigate a
tree of items and select one item from it.
-
UI - Top-level container for all other user-interface components.
-
GameUI - Variant of UI for running games
-
UIAdviser - The (ideally) helpful advisor who pops up from the bottom dialog during a game.
-
UIBottomPanel - The multi-purpose panel for launching dialogs / screens and dynamic information.
-
UIBuildRoom
-
UIConfirmDialog - Dialog for "Are you sure you want to quit?" and similar yes/no questions.
-
UIDirBrowser - Prompter for Theme Hospital install directory
-
UIFullscreen - Base class for 640x480px dialogs (fullscreen in original game resolution).
-
UIBankManager - Bank manager (for loans / insurance companies) and bank statement fullscreen windows.
-
UICasebook - Drug Casebook fullscreen window (view disease statistics and set prices).
-
UIFax
-
UIPolicy - Hospital policy fullscreen window (set staff tiredness and patient cure thresholds, etc.).
-
UIProgressReport - Progress Report fullscreen window (check level goals, competitors and alerts).
-
UIStaffManagement - Staff management screen
-
UITownMap - Town map fullscreen window (purchase land, set radiator levels, map overview).
-
UIFurnishCorridor - Dialog for purchasing `Object`s (for the corridor or for rooms).
-
UIHireStaff
-
UIInformation - Dialog that informs the player of for example what the goals for the level are.
-
UIJukebox
-
UIMachine
-
UIMenuBar - The ingame menu bar which sits (nominally hidden) at the top of the screen.
-
UIMessage - Small fax notification window which sits on the bottom bar.
-
UIPatient - Individual patient information dialog
-
UIPlaceObjects - The dialog shown when placing objects.
-
UIPlaceStaff - Invisible window which handles placing a `Staff` member in the world.
-
UIQueue - Room / door / reception desk queue visualisation dialog.
-
UIResizable - Class for resizable windows.
-
UIMainMenu - Class for main menu window.
-
UIMenuList - A menu list with a scrollbar. Used by load_game, save_game and custom_game.
-
UIOptions - Options window used in the main menu and ingame.
-
UITipOfTheDay - Tip of the Day Window
-
UIStaff - Individual staff information dialog
-
UIStaffRise - Dialog for staff member requesting a salaray raise.
-
UIWatch - Timer / clock / watch / countdown dialog for emergencies / level start
-
World