author | rubidium |
Fri, 23 Nov 2007 16:59:30 +0000 | |
branch | noai |
changeset 9722 | ebf0ece7d8f6 |
parent 9701 | d1ac22c62f64 |
child 9723 | eee46cb39750 |
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 */ |
4171 | 45 |
void ShowOrdersWindow(const Vehicle *v); |
0 | 46 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
47 |
/* road_gui.cpp */ |
9624 | 48 |
void ShowBuildRoadToolbar(RoadType roadtype); |
6573 | 49 |
void ShowBuildRoadScenToolbar(); |
0 | 50 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
51 |
/* dock_gui.cpp */ |
6573 | 52 |
void ShowBuildDocksToolbar(); |
0 | 53 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
54 |
/* aircraft_gui.cpp */ |
6573 | 55 |
void ShowBuildAirToolbar(); |
0 | 56 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
57 |
/* terraform_gui.cpp */ |
6111 | 58 |
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
|
59 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
60 |
/* tgp_gui.cpp */ |
6573 | 61 |
void ShowGenerateLandscape(); |
62 |
void ShowHeightmapLoad(); |
|
4300
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4299
diff
changeset
|
63 |
|
1977
4392ae3d8e31
(svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile"
tron
parents:
1879
diff
changeset
|
64 |
void PlaceProc_DemolishArea(TileIndex tile); |
4392ae3d8e31
(svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile"
tron
parents:
1879
diff
changeset
|
65 |
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
|
66 |
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
|
67 |
|
9624 | 68 |
/** Drag and drop selection process, or, what to do with an area of land when |
69 |
* you've selected it. */ |
|
70 |
enum { |
|
71 |
DDSP_DEMOLISH_AREA, |
|
72 |
DDSP_LEVEL_AREA, |
|
73 |
DDSP_CREATE_DESERT, |
|
74 |
DDSP_CREATE_ROCKS, |
|
75 |
DDSP_CREATE_WATER, |
|
76 |
DDSP_PLANT_TREES, |
|
77 |
DDSP_BUILD_BRIDGE, |
|
78 |
||
79 |
/* Rail specific actions */ |
|
80 |
DDSP_PLACE_RAIL_NE, |
|
81 |
DDSP_PLACE_RAIL_NW, |
|
82 |
DDSP_PLACE_AUTORAIL, |
|
83 |
DDSP_BUILD_SIGNALS, |
|
84 |
DDSP_BUILD_STATION, |
|
85 |
DDSP_REMOVE_STATION, |
|
86 |
DDSP_CONVERT_RAIL, |
|
87 |
||
88 |
/* Road specific actions */ |
|
9722
ebf0ece7d8f6
(svn r11503) [NoAI] -Sync: with trunk r11308:11502.
rubidium
parents:
9701
diff
changeset
|
89 |
DDSP_PLACE_ROAD_X_DIR, |
ebf0ece7d8f6
(svn r11503) [NoAI] -Sync: with trunk r11308:11502.
rubidium
parents:
9701
diff
changeset
|
90 |
DDSP_PLACE_ROAD_Y_DIR, |
ebf0ece7d8f6
(svn r11503) [NoAI] -Sync: with trunk r11308:11502.
rubidium
parents:
9701
diff
changeset
|
91 |
DDSP_PLACE_AUTOROAD, |
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
|
92 |
}; |
0 | 93 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
94 |
/* misc_gui.cpp */ |
6573 | 95 |
void PlaceLandBlockInfo(); |
96 |
void ShowAboutWindow(); |
|
97 |
void ShowBuildTreesToolbar(); |
|
98 |
void ShowBuildTreesScenToolbar(); |
|
99 |
void ShowTownDirectory(); |
|
100 |
void ShowIndustryDirectory(); |
|
101 |
void ShowSubsidiesList(); |
|
2475 | 102 |
void ShowPlayerStations(PlayerID player); |
103 |
void ShowPlayerFinances(PlayerID player); |
|
104 |
void ShowPlayerCompany(PlayerID player); |
|
0 | 105 |
|
9629 | 106 |
void ShowEstimatedCostOrIncome(Money cost, int x, int y); |
0 | 107 |
void ShowErrorMessage(StringID msg_1, StringID msg_2, int x, int y); |
108 |
||
9641
855e32c08c9b
(svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents:
9629
diff
changeset
|
109 |
enum StationCoverageType { |
855e32c08c9b
(svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents:
9629
diff
changeset
|
110 |
SCT_PASSENGERS_ONLY, |
855e32c08c9b
(svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents:
9629
diff
changeset
|
111 |
SCT_NON_PASSENGERS_ONLY, |
855e32c08c9b
(svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents:
9629
diff
changeset
|
112 |
SCT_ALL |
855e32c08c9b
(svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents:
9629
diff
changeset
|
113 |
}; |
855e32c08c9b
(svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents:
9629
diff
changeset
|
114 |
|
855e32c08c9b
(svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents:
9629
diff
changeset
|
115 |
void DrawStationCoverageAreaText(int sx, int sy, StationCoverageType sct, int rad); |
4171 | 116 |
void CheckRedrawStationCoverage(const Window *w); |
0 | 117 |
|
6573 | 118 |
void ShowSmallMap(); |
119 |
void ShowExtraViewPortWindow(); |
|
0 | 120 |
void SetVScrollCount(Window *w, int num); |
842 | 121 |
void SetVScroll2Count(Window *w, int num); |
0 | 122 |
void SetHScrollCount(Window *w, int num); |
123 |
||
6573 | 124 |
void ShowCheatWindow(); |
0 | 125 |
|
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
|
126 |
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
|
127 |
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
|
128 |
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
|
129 |
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
|
130 |
|
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
|
131 |
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
|
132 |
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
|
133 |
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
|
134 |
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
|
135 |
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
|
136 |
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
|
137 |
void UpdateTextBufferSize(Textbuf *tb); |
0 | 138 |
|
6573 | 139 |
void BuildFileList(); |
543
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
478
diff
changeset
|
140 |
void SetFiosType(const byte fiostype); |
e3b43338096b
(svn r942) -Merged branch/network back into the trunk
truelight
parents:
478
diff
changeset
|
141 |
|
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
|
142 |
/* FIOS_TYPE_FILE, FIOS_TYPE_OLDFILE etc. different colours */ |
9722
ebf0ece7d8f6
(svn r11503) [NoAI] -Sync: with trunk r11308:11502.
rubidium
parents:
9701
diff
changeset
|
143 |
extern const TextColour _fios_colors[]; |
0 | 144 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
145 |
/* bridge_gui.cpp */ |
0 | 146 |
void ShowBuildBridgeWindow(uint start, uint end, byte type); |
147 |
||
6573 | 148 |
void ShowBuildIndustryWindow(); |
5682
eeddbbacd4ac
(svn r7637) -Codechange: Change ShowQueryString to use a window pointer as a parent. If the
Darkvater
parents:
5669
diff
changeset
|
149 |
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
|
150 |
void ShowQuery(StringID caption, StringID message, Window *w, void (*callback)(Window*, bool)); |
6573 | 151 |
void ShowMusicWindow(); |
0 | 152 |
|
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
153 |
/* 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
|
154 |
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
|
155 |
VARDEF bool _station_show_coverage; |
0 | 156 |
VARDEF PlaceProc *_place_proc; |
157 |
||
6505
abcb0580d976
(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few comments style.
belugas
parents:
6417
diff
changeset
|
158 |
/* vehicle_gui.cpp */ |
6573 | 159 |
void InitializeGUI(); |
1246
45f15251412b
(svn r1750) - Feature: [ 1093261 ] Saving vehicle sorting criteria for each vehicle type (bociusz)
darkvater
parents:
1093
diff
changeset
|
160 |
|
9624 | 161 |
void ShowPlayerGroup(PlayerID player, VehicleType veh); |
162 |
||
0 | 163 |
#endif /* GUI_H */ |