author | maedhros |
Wed, 23 May 2007 12:45:56 +0000 | |
changeset 7165 | 37eb253f3c06 |
parent 7162 | b769c2b45103 |
child 7166 | 3937d5ea59df |
permissions | -rw-r--r-- |
2186 | 1 |
/* $Id$ */ |
2 |
||
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
3 |
/** @file gui.h */ |
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
4 |
|
0 | 5 |
#ifndef GUI_H |
6 |
#define GUI_H |
|
7 |
||
2466
2774132ebb9a
(svn r2992) Use PlayerID, StationID and INVALID_STATION instead of int, int and -1
tron
parents:
2261
diff
changeset
|
8 |
#include "station.h" |
175
d6cccece959a
(svn r176) -Fix: network_gui const and warnings fixes (Tron)
darkvater
parents:
164
diff
changeset
|
9 |
#include "window.h" |
4299
b86602eaaff1
(svn r5944) -Merge TGP (r5578, r5579, r5724, r5726): -Feature: filter for textboxes to only
truelight
parents:
4211
diff
changeset
|
10 |
#include "string.h" |
175
d6cccece959a
(svn r176) -Fix: network_gui const and warnings fixes (Tron)
darkvater
parents:
164
diff
changeset
|
11 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
12 |
/* main_gui.cpp */ |
6573 | 13 |
void SetupColorsAndInitialWindow(); |
1977
4392ae3d8e31
(svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile"
tron
parents:
1879
diff
changeset
|
14 |
void CcPlaySound10(bool success, TileIndex tile, uint32 p1, uint32 p2); |
4392ae3d8e31
(svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile"
tron
parents:
1879
diff
changeset
|
15 |
void CcBuildCanal(bool success, TileIndex tile, uint32 p1, uint32 p2); |
4392ae3d8e31
(svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile"
tron
parents:
1879
diff
changeset
|
16 |
void CcTerraform(bool success, TileIndex tile, uint32 p1, uint32 p2); |
0 | 17 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
18 |
/* settings_gui.cpp */ |
6573 | 19 |
void ShowGameOptions(); |
20 |
void ShowGameDifficulty(); |
|
21 |
void ShowPatchesSelection(); |
|
4211
d8c4c40eba62
(svn r5714) Backport from branches/TGP (r5701 and r5711)
miham
parents:
4171
diff
changeset
|
22 |
void DrawArrowButtons(int x, int y, int ctab, byte state, bool clickable_left, bool clickable_right); |
0 | 23 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
24 |
/* graph_gui.cpp */ |
6573 | 25 |
void ShowOperatingProfitGraph(); |
26 |
void ShowIncomeGraph(); |
|
27 |
void ShowDeliveredCargoGraph(); |
|
28 |
void ShowPerformanceHistoryGraph(); |
|
29 |
void ShowCompanyValueGraph(); |
|
30 |
void ShowCargoPaymentRates(); |
|
31 |
void ShowCompanyLeagueTable(); |
|
32 |
void ShowPerformanceRatingDetail(); |
|
0 | 33 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
34 |
/* news_gui.cpp */ |
6573 | 35 |
void ShowLastNewsMessage(); |
36 |
void ShowMessageOptions(); |
|
37 |
void ShowMessageHistory(); |
|
0 | 38 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
39 |
/* rail_gui.cpp */ |
2520
75eb66d6e371
(svn r3049) Replace byte/int/uint by RailType where appropriate
tron
parents:
2475
diff
changeset
|
40 |
void ShowBuildRailToolbar(RailType railtype, int button); |
1977
4392ae3d8e31
(svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile"
tron
parents:
1879
diff
changeset
|
41 |
void PlaceProc_BuyLand(TileIndex tile); |
5116
2a33a74925c5
(svn r7195) -Feature: [FS#297, optional elrails] New patches/vehicles option 'disable electrified railways'.
KUDr
parents:
5108
diff
changeset
|
42 |
void ReinitGuiAfterToggleElrail(bool disable); |
0 | 43 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
44 |
/* train_gui.cpp */ |
2561
c78c3d248897
(svn r3098) static, const, uint -> TileIndex, indentation, bracing, unused return values, ... mostly related to the clone vehicle GUI
tron
parents:
2549
diff
changeset
|
45 |
void ShowTrainViewWindow(const Vehicle *v); |
4171 | 46 |
void ShowOrdersWindow(const Vehicle *v); |
0 | 47 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
48 |
/* road_gui.cpp */ |
7162
b769c2b45103
(svn r9897) -Codechange: prepare the toolbar for more road types.
rubidium
parents:
7139
diff
changeset
|
49 |
void ShowBuildRoadToolbar(RoadType roadtype); |
6573 | 50 |
void ShowBuildRoadScenToolbar(); |
4408
84ec2899adfa
(svn r6161) -Feature: List of vehicles with the same shared orders
bjarni
parents:
4344
diff
changeset
|
51 |
void ShowRoadVehViewWindow(const Vehicle *v); |
0 | 52 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
53 |
/* dock_gui.cpp */ |
6573 | 54 |
void ShowBuildDocksToolbar(); |
4171 | 55 |
void ShowShipViewWindow(const Vehicle *v); |
0 | 56 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
57 |
/* aircraft_gui.cpp */ |
6573 | 58 |
void ShowBuildAirToolbar(); |
0 | 59 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
60 |
/* terraform_gui.cpp */ |
6111 | 61 |
void ShowTerraformToolbar(Window *link = NULL); |
1632
c4ae19bfebf7
(svn r2136) - Fix: [ 1174313 ] terrain hotkeys nonfunctional in scenario editor (D,Q,W,E,R,T,Y,U fltr)
Darkvater
parents:
1575
diff
changeset
|
62 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
63 |
/* tgp_gui.cpp */ |
6573 | 64 |
void ShowGenerateLandscape(); |
65 |
void ShowHeightmapLoad(); |
|
4300
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4299
diff
changeset
|
66 |
|
1977
4392ae3d8e31
(svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile"
tron
parents:
1879
diff
changeset
|
67 |
void PlaceProc_DemolishArea(TileIndex tile); |
4392ae3d8e31
(svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile"
tron
parents:
1879
diff
changeset
|
68 |
void PlaceProc_LevelLand(TileIndex tile); |
4634
897461a3e9ca
(svn r6499) -Codechange: Finally, got "byte event" outside of the union WindowEvent, which is now a struct
belugas
parents:
4434
diff
changeset
|
69 |
bool GUIPlaceProcDragXY(const WindowEvent *e); |
1632
c4ae19bfebf7
(svn r2136) - Fix: [ 1174313 ] terrain hotkeys nonfunctional in scenario editor (D,Q,W,E,R,T,Y,U fltr)
Darkvater
parents:
1575
diff
changeset
|
70 |
|
7165
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
71 |
enum { |
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
72 |
GUI_PlaceProc_None, |
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
73 |
GUI_PlaceProc_DemolishArea, |
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
74 |
GUI_PlaceProc_LevelArea, |
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
75 |
GUI_PlaceProc_DesertArea, |
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
76 |
GUI_PlaceProc_WaterArea, |
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
77 |
GUI_PlaceProc_ConvertRailArea, |
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
78 |
GUI_PlaceProc_RockyArea, |
37eb253f3c06
(svn r9900) -Codechange: Separate the variables for how to highlight a land area and what to do with it afterwards.
maedhros
parents:
7162
diff
changeset
|
79 |
GUI_PlaceProc_RemoveFromStation, |
1632
c4ae19bfebf7
(svn r2136) - Fix: [ 1174313 ] terrain hotkeys nonfunctional in scenario editor (D,Q,W,E,R,T,Y,U fltr)
Darkvater
parents:
1575
diff
changeset
|
80 |
}; |
0 | 81 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
82 |
/* misc_gui.cpp */ |
6573 | 83 |
void PlaceLandBlockInfo(); |
84 |
void ShowAboutWindow(); |
|
85 |
void ShowBuildTreesToolbar(); |
|
86 |
void ShowBuildTreesScenToolbar(); |
|
87 |
void ShowTownDirectory(); |
|
88 |
void ShowIndustryDirectory(); |
|
89 |
void ShowSubsidiesList(); |
|
2475 | 90 |
void ShowPlayerStations(PlayerID player); |
91 |
void ShowPlayerFinances(PlayerID player); |
|
92 |
void ShowPlayerCompany(PlayerID player); |
|
0 | 93 |
|
94 |
void ShowEstimatedCostOrIncome(int32 cost, int x, int y); |
|
95 |
void ShowErrorMessage(StringID msg_1, StringID msg_2, int x, int y); |
|
96 |
||
568
6eb7d394fb35
(svn r979) Allow more realistically sized catchment areas
Celestar
parents:
543
diff
changeset
|
97 |
void DrawStationCoverageAreaText(int sx, int sy, uint mask,int rad); |
4171 | 98 |
void CheckRedrawStationCoverage(const Window *w); |
0 | 99 |
|
6573 | 100 |
void ShowSmallMap(); |
101 |
void ShowExtraViewPortWindow(); |
|
0 | 102 |
void SetVScrollCount(Window *w, int num); |
842 | 103 |
void SetVScroll2Count(Window *w, int num); |
0 | 104 |
void SetHScrollCount(Window *w, int num); |
105 |
||
6573 | 106 |
void ShowCheatWindow(); |
0 | 107 |
|
2887
d5967e472eee
(svn r3439) - CodeChange: Remove a whole bunch of global variables and put them into the WP() macro. Also combine more than one WP-custom element. For this the maximum size of w->custom (WP) has been increased, and multiple types put inside one with possibly moved to the corresponding gui file if it is only used there.
Darkvater
parents:
2817
diff
changeset
|
108 |
void DrawEditBox(Window *w, querystr_d *string, int wid); |
d5967e472eee
(svn r3439) - CodeChange: Remove a whole bunch of global variables and put them into the WP() macro. Also combine more than one WP-custom element. For this the maximum size of w->custom (WP) has been increased, and multiple types put inside one with possibly moved to the corresponding gui file if it is only used there.
Darkvater
parents:
2817
diff
changeset
|
109 |
void HandleEditBox(Window *w, querystr_d *string, int wid); |
4909
ef77bf81545c
(svn r6879) -Codechange: Remove the superflouos argument CharsetFilter parameter from HandleEditBoxKey
Darkvater
parents:
4830
diff
changeset
|
110 |
int HandleEditBoxKey(Window *w, querystr_d *string, int wid, WindowEvent *we); |
1390
53a5713cf3f9
(svn r1894) - Codechange: cleaned up the console a bit, wholly unified handling of text with that of editboxes
Darkvater
parents:
1386
diff
changeset
|
111 |
bool HandleCaret(Textbuf *tb); |
53a5713cf3f9
(svn r1894) - Codechange: cleaned up the console a bit, wholly unified handling of text with that of editboxes
Darkvater
parents:
1386
diff
changeset
|
112 |
|
1879
2ccc61e922e2
(svn r2385) - Feature: shortcut CTRL + U that clears the commandline of the current input-box. As requested by Tron.
Darkvater
parents:
1705
diff
changeset
|
113 |
void DeleteTextBufferAll(Textbuf *tb); |
1390
53a5713cf3f9
(svn r1894) - Codechange: cleaned up the console a bit, wholly unified handling of text with that of editboxes
Darkvater
parents:
1386
diff
changeset
|
114 |
bool DeleteTextBufferChar(Textbuf *tb, int delmode); |
5108
dc67d70b5a45
(svn r7182) -Feature: Merge utf8 branch. This brings us support for Unicode/UTF-8 and the option for fonts rendered by FreeType. Language changes to come.
peter1138
parents:
5044
diff
changeset
|
115 |
bool InsertTextBufferChar(Textbuf *tb, uint32 key); |
1390
53a5713cf3f9
(svn r1894) - Codechange: cleaned up the console a bit, wholly unified handling of text with that of editboxes
Darkvater
parents:
1386
diff
changeset
|
116 |
bool InsertTextBufferClipboard(Textbuf *tb); |
53a5713cf3f9
(svn r1894) - Codechange: cleaned up the console a bit, wholly unified handling of text with that of editboxes
Darkvater
parents:
1386
diff
changeset
|
117 |
bool MoveTextBufferPos(Textbuf *tb, int navmode); |
4948
91dae24f3690
(svn r6937) -Codechange: Add an InitializeTextBuffer() function that handles setting up the
Darkvater
parents:
4909
diff
changeset
|
118 |
void InitializeTextBuffer(Textbuf *tb, const char *buf, uint16 maxlength, uint16 maxwidth); |
1390
53a5713cf3f9
(svn r1894) - Codechange: cleaned up the console a bit, wholly unified handling of text with that of editboxes
Darkvater
parents:
1386
diff
changeset
|
119 |
void UpdateTextBufferSize(Textbuf *tb); |
0 | 120 |
|
6573 | 121 |
void BuildFileList(); |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
478
diff
changeset
|
122 |
void SetFiosType(const byte fiostype); |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
478
diff
changeset
|
123 |
|
4434
4175805666a5
(svn r6204) -Cleanup: replace non-indentation with spaces; like '}<TAB>else {' -> '} else {', tabs between code and comment, etc.
rubidium
parents:
4408
diff
changeset
|
124 |
/* FIOS_TYPE_FILE, FIOS_TYPE_OLDFILE etc. different colours */ |
2261
3f78323707bb
(svn r2781) Fix some of the issues with variables in .h files.
ludde
parents:
2186
diff
changeset
|
125 |
extern const byte _fios_colors[]; |
0 | 126 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
127 |
/* bridge_gui.cpp */ |
0 | 128 |
void ShowBuildBridgeWindow(uint start, uint end, byte type); |
129 |
||
6573 | 130 |
void ShowBuildIndustryWindow(); |
5682
eeddbbacd4ac
(svn r7637) -Codechange: Change ShowQueryString to use a window pointer as a parent. If the
Darkvater
parents:
5669
diff
changeset
|
131 |
void ShowQueryString(StringID str, StringID caption, uint maxlen, uint maxwidth, Window *parent, CharSetFilter afilter); |
5669
ea25407ffa55
(svn r7621) -Codechange: Rework ShowQuery into a general modal popup window. It gets passed
Darkvater
parents:
5291
diff
changeset
|
132 |
void ShowQuery(StringID caption, StringID message, Window *w, void (*callback)(Window*, bool)); |
6573 | 133 |
void ShowMusicWindow(); |
0 | 134 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
135 |
/* main_gui.cpp */ |
5682
eeddbbacd4ac
(svn r7637) -Codechange: Change ShowQueryString to use a window pointer as a parent. If the
Darkvater
parents:
5669
diff
changeset
|
136 |
void HandleOnEditText(const char *str); |
5838
9c3129cb019b
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5726
diff
changeset
|
137 |
VARDEF bool _station_show_coverage; |
0 | 138 |
VARDEF PlaceProc *_place_proc; |
139 |
||
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
140 |
/* vehicle_gui.cpp */ |
6573 | 141 |
void InitializeGUI(); |
1246
45f15251412b
(svn r1750) - Feature: [ 1093261 ] Saving vehicle sorting criteria for each vehicle type (bociusz)
darkvater
parents:
1093
diff
changeset
|
142 |
|
7139
4ae3ab180d05
(svn r9874) -Feature: advanced vehicle lists a.k.a. group interface. Now you can make groups of vehicles and perform all kinds of tasks on that given group. Original code by nycom and graphics by skidd13.
rubidium
parents:
7092
diff
changeset
|
143 |
void ShowPlayerGroup(PlayerID player, VehicleType veh); |
4ae3ab180d05
(svn r9874) -Feature: advanced vehicle lists a.k.a. group interface. Now you can make groups of vehicles and perform all kinds of tasks on that given group. Original code by nycom and graphics by skidd13.
rubidium
parents:
7092
diff
changeset
|
144 |
|
0 | 145 |
#endif /* GUI_H */ |