tron@2186: /* $Id$ */ tron@2186: belugas@6505: /** @file gui.h */ belugas@6505: truelight@0: #ifndef GUI_H truelight@0: #define GUI_H truelight@0: tron@2466: #include "station.h" darkvater@175: #include "window.h" truelight@4299: #include "string.h" darkvater@175: belugas@6505: /* main_gui.cpp */ celestar@9895: void SetupColorsAndInitialWindow(); tron@1977: void CcPlaySound10(bool success, TileIndex tile, uint32 p1, uint32 p2); tron@1977: void CcBuildCanal(bool success, TileIndex tile, uint32 p1, uint32 p2); tron@1977: void CcTerraform(bool success, TileIndex tile, uint32 p1, uint32 p2); truelight@0: belugas@6505: /* settings_gui.cpp */ celestar@9895: void ShowGameOptions(); celestar@9895: void ShowGameDifficulty(); celestar@9895: void ShowPatchesSelection(); miham@4211: void DrawArrowButtons(int x, int y, int ctab, byte state, bool clickable_left, bool clickable_right); truelight@0: belugas@6505: /* graph_gui.cpp */ celestar@9895: void ShowOperatingProfitGraph(); celestar@9895: void ShowIncomeGraph(); celestar@9895: void ShowDeliveredCargoGraph(); celestar@9895: void ShowPerformanceHistoryGraph(); celestar@9895: void ShowCompanyValueGraph(); celestar@9895: void ShowCargoPaymentRates(); celestar@9895: void ShowCompanyLeagueTable(); celestar@9895: void ShowPerformanceRatingDetail(); truelight@0: belugas@6505: /* news_gui.cpp */ celestar@9895: void ShowLastNewsMessage(); celestar@9895: void ShowMessageOptions(); celestar@9895: void ShowMessageHistory(); truelight@0: belugas@6505: /* rail_gui.cpp */ tron@2520: void ShowBuildRailToolbar(RailType railtype, int button); tron@1977: void PlaceProc_BuyLand(TileIndex tile); KUDr@5116: void ReinitGuiAfterToggleElrail(bool disable); truelight@0: belugas@6505: /* train_gui.cpp */ tron@2561: void ShowTrainViewWindow(const Vehicle *v); belugas@4171: void ShowOrdersWindow(const Vehicle *v); truelight@0: belugas@6505: /* road_gui.cpp */ celestar@9911: void ShowBuildRoadToolbar(RoadType roadtype); celestar@9895: void ShowBuildRoadScenToolbar(); bjarni@4408: void ShowRoadVehViewWindow(const Vehicle *v); truelight@0: belugas@6505: /* dock_gui.cpp */ celestar@9895: void ShowBuildDocksToolbar(); belugas@4171: void ShowShipViewWindow(const Vehicle *v); truelight@0: belugas@6505: /* aircraft_gui.cpp */ celestar@9895: void ShowBuildAirToolbar(); truelight@0: belugas@6505: /* terraform_gui.cpp */ tron@6111: void ShowTerraformToolbar(Window *link = NULL); Darkvater@1632: belugas@6505: /* tgp_gui.cpp */ celestar@9895: void ShowGenerateLandscape(); celestar@9895: void ShowHeightmapLoad(); truelight@4300: tron@1977: void PlaceProc_DemolishArea(TileIndex tile); tron@1977: void PlaceProc_LevelLand(TileIndex tile); belugas@4634: bool GUIPlaceProcDragXY(const WindowEvent *e); Darkvater@1632: celestar@9911: enum { celestar@9911: GUI_PlaceProc_None, celestar@9911: GUI_PlaceProc_DemolishArea, celestar@9911: GUI_PlaceProc_LevelArea, celestar@9911: GUI_PlaceProc_DesertArea, celestar@9911: GUI_PlaceProc_WaterArea, celestar@9911: GUI_PlaceProc_ConvertRailArea, celestar@9911: GUI_PlaceProc_RockyArea, celestar@9911: GUI_PlaceProc_RemoveFromStation, Darkvater@1632: }; truelight@0: belugas@6505: /* misc_gui.cpp */ celestar@9895: void PlaceLandBlockInfo(); celestar@9895: void ShowAboutWindow(); celestar@9895: void ShowBuildTreesToolbar(); celestar@9895: void ShowBuildTreesScenToolbar(); celestar@9895: void ShowTownDirectory(); celestar@9895: void ShowIndustryDirectory(); celestar@9895: void ShowSubsidiesList(); tron@2475: void ShowPlayerStations(PlayerID player); tron@2475: void ShowPlayerFinances(PlayerID player); tron@2475: void ShowPlayerCompany(PlayerID player); truelight@0: truelight@0: void ShowEstimatedCostOrIncome(int32 cost, int x, int y); truelight@0: void ShowErrorMessage(StringID msg_1, StringID msg_2, int x, int y); truelight@0: Celestar@568: void DrawStationCoverageAreaText(int sx, int sy, uint mask,int rad); belugas@4171: void CheckRedrawStationCoverage(const Window *w); truelight@0: celestar@9895: void ShowSmallMap(); celestar@9895: void ShowExtraViewPortWindow(); truelight@0: void SetVScrollCount(Window *w, int num); bjarni@842: void SetVScroll2Count(Window *w, int num); truelight@0: void SetHScrollCount(Window *w, int num); truelight@0: celestar@9895: void ShowCheatWindow(); truelight@0: Darkvater@2887: void DrawEditBox(Window *w, querystr_d *string, int wid); Darkvater@2887: void HandleEditBox(Window *w, querystr_d *string, int wid); Darkvater@4909: int HandleEditBoxKey(Window *w, querystr_d *string, int wid, WindowEvent *we); Darkvater@1390: bool HandleCaret(Textbuf *tb); Darkvater@1390: Darkvater@1879: void DeleteTextBufferAll(Textbuf *tb); Darkvater@1390: bool DeleteTextBufferChar(Textbuf *tb, int delmode); peter1138@5108: bool InsertTextBufferChar(Textbuf *tb, uint32 key); Darkvater@1390: bool InsertTextBufferClipboard(Textbuf *tb); Darkvater@1390: bool MoveTextBufferPos(Textbuf *tb, int navmode); Darkvater@4948: void InitializeTextBuffer(Textbuf *tb, const char *buf, uint16 maxlength, uint16 maxwidth); Darkvater@1390: void UpdateTextBufferSize(Textbuf *tb); truelight@0: celestar@9895: void BuildFileList(); truelight@543: void SetFiosType(const byte fiostype); truelight@543: rubidium@4434: /* FIOS_TYPE_FILE, FIOS_TYPE_OLDFILE etc. different colours */ ludde@2261: extern const byte _fios_colors[]; truelight@0: belugas@6505: /* bridge_gui.cpp */ truelight@0: void ShowBuildBridgeWindow(uint start, uint end, byte type); truelight@0: celestar@9895: void ShowBuildIndustryWindow(); Darkvater@5682: void ShowQueryString(StringID str, StringID caption, uint maxlen, uint maxwidth, Window *parent, CharSetFilter afilter); Darkvater@5669: void ShowQuery(StringID caption, StringID message, Window *w, void (*callback)(Window*, bool)); celestar@9895: void ShowMusicWindow(); truelight@0: belugas@6505: /* main_gui.cpp */ Darkvater@5682: void HandleOnEditText(const char *str); rubidium@5838: VARDEF bool _station_show_coverage; truelight@0: VARDEF PlaceProc *_place_proc; truelight@0: belugas@6505: /* vehicle_gui.cpp */ celestar@9895: void InitializeGUI(); darkvater@1246: celestar@9911: void ShowPlayerGroup(PlayerID player, VehicleType veh); celestar@9911: truelight@0: #endif /* GUI_H */