author | celestar |
Tue, 19 Jun 2007 07:21:01 +0000 | |
branch | gamebalance |
changeset 9913 | e79cd19772dd |
parent 9911 | 0b8b245a2391 |
child 6725 | 23339968083f |
permissions | -rw-r--r-- |
2186 | 1 |
/* $Id$ */ |
2 |
||
6527
f584ab6d87f8
(svn r8987) -Cleanup: doxygen changes. Again. Mostly (still) @files missing tags and (more than just) a few comments style.
belugas
parents:
6150
diff
changeset
|
3 |
/** @file intro_gui.cpp */ |
f584ab6d87f8
(svn r8987) -Cleanup: doxygen changes. Again. Mostly (still) @files missing tags and (more than just) a few comments style.
belugas
parents:
6150
diff
changeset
|
4 |
|
0 | 5 |
#include "stdafx.h" |
1891
92a3b0aa0946
(svn r2397) - CodeChange: rename all "ttd" files to "openttd" files.
Darkvater
parents:
1796
diff
changeset
|
6 |
#include "openttd.h" |
507
8aa8100b0b22
(svn r815) Include strings.h only in the files which need it.
tron
parents:
206
diff
changeset
|
7 |
#include "table/strings.h" |
4937
a525d56a8d40
(svn r6924) -Codechange: Give the last (in the widget arrays at least) sprites meaningful names.
Darkvater
parents:
4830
diff
changeset
|
8 |
#include "table/sprites.h" |
2163
637ec3c361f5
(svn r2673) Include functions.h directly, not globally via openttd.h
tron
parents:
2159
diff
changeset
|
9 |
#include "functions.h" |
0 | 10 |
#include "window.h" |
11 |
#include "gui.h" |
|
12 |
#include "gfx.h" |
|
13 |
#include "player.h" |
|
5720
cc0ceeafaa55
(svn r7751) -Codechange: move network_* to a new network map. Furthermore move the low level network functions to network/core, so they can be reused by the masterserver and website-serverlist-updater.
rubidium
parents:
5682
diff
changeset
|
14 |
#include "network/network.h" |
2159
3b634157c3b2
(svn r2669) Shuffle some more stuff around to reduce dependencies
tron
parents:
1891
diff
changeset
|
15 |
#include "variables.h" |
3888
7a781a439c30
(svn r4944) Codechange: make _patches_newgame available via settings.h and remove instances of extern Patches _patches_newgame in .c files
rubidium
parents:
3207
diff
changeset
|
16 |
#include "settings.h" |
4300
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
17 |
#include "heightmap.h" |
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
18 |
#include "genworld.h" |
5720
cc0ceeafaa55
(svn r7751) -Codechange: move network_* to a new network map. Furthermore move the low level network functions to network/core, so they can be reused by the masterserver and website-serverlist-updater.
rubidium
parents:
5682
diff
changeset
|
19 |
#include "network/network_gui.h" |
5237
c14c97d7030a
(svn r7357) -Codechange: new NewGRF set up window which allows modification of NewGRF settings.
peter1138
parents:
4938
diff
changeset
|
20 |
#include "newgrf.h" |
0 | 21 |
|
22 |
static const Widget _select_game_widgets[] = { |
|
4344
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
23 |
{ WWT_CAPTION, RESIZE_NONE, 13, 0, 335, 0, 13, STR_0307_OPENTTD, STR_NULL}, |
5237
c14c97d7030a
(svn r7357) -Codechange: new NewGRF set up window which allows modification of NewGRF settings.
peter1138
parents:
4938
diff
changeset
|
24 |
{ WWT_PANEL, RESIZE_NONE, 13, 0, 335, 14, 194, 0x0, STR_NULL}, |
4344
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
25 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 10, 167, 22, 33, STR_0140_NEW_GAME, STR_02FB_START_A_NEW_GAME}, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
26 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 168, 325, 22, 33, STR_0141_LOAD_GAME, STR_02FC_LOAD_A_SAVED_GAME}, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
27 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 10, 167, 40, 51, STR_029A_PLAY_SCENARIO, STR_0303_START_A_NEW_GAME_USING}, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
28 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 168, 325, 40, 51, STR_PLAY_HEIGHTMAP, STR_PLAY_HEIGHTMAP_HINT}, |
6145
d34703513ed0
(svn r8512) -Codechange: From the intro window enter the scenario editor. From the scenario editor dialog, remove the 'load heightmap' option and put that with the other options like 'load scenario', 'save scenario', etc. Play a little bit with positioning of elements inside the scenario editor dialog so it looks better.
Darkvater
parents:
6144
diff
changeset
|
29 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 10, 167, 58, 69, STR_SCENARIO_EDITOR, STR_02FE_CREATE_A_CUSTOMIZED_GAME}, |
4344
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
30 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 168, 325, 58, 69, STR_MULTIPLAYER, STR_0300_SELECT_MULTIPLAYER_GAME}, |
1711
786fc0df2b6e
(svn r2215) - Feature: Add a temporary mapsize selector to the intro gui. This is sufficient until the real window is designed & coded.
Darkvater
parents:
1625
diff
changeset
|
31 |
|
4938
074f734a91ca
(svn r6925) -Codechange: Be more strict with widget distinctions. WWT_PANEL is only plain panel,
Darkvater
parents:
4937
diff
changeset
|
32 |
{ WWT_IMGBTN_2, RESIZE_NONE, 12, 10, 86, 77, 131, SPR_SELECT_TEMPERATE, STR_030E_SELECT_TEMPERATE_LANDSCAPE}, |
074f734a91ca
(svn r6925) -Codechange: Be more strict with widget distinctions. WWT_PANEL is only plain panel,
Darkvater
parents:
4937
diff
changeset
|
33 |
{ WWT_IMGBTN_2, RESIZE_NONE, 12, 90, 166, 77, 131, SPR_SELECT_SUB_ARCTIC, STR_030F_SELECT_SUB_ARCTIC_LANDSCAPE}, |
074f734a91ca
(svn r6925) -Codechange: Be more strict with widget distinctions. WWT_PANEL is only plain panel,
Darkvater
parents:
4937
diff
changeset
|
34 |
{ WWT_IMGBTN_2, RESIZE_NONE, 12, 170, 246, 77, 131, SPR_SELECT_SUB_TROPICAL, STR_0310_SELECT_SUB_TROPICAL_LANDSCAPE}, |
074f734a91ca
(svn r6925) -Codechange: Be more strict with widget distinctions. WWT_PANEL is only plain panel,
Darkvater
parents:
4937
diff
changeset
|
35 |
{ WWT_IMGBTN_2, RESIZE_NONE, 12, 250, 326, 77, 131, SPR_SELECT_TOYLAND, STR_0311_SELECT_TOYLAND_LANDSCAPE}, |
1711
786fc0df2b6e
(svn r2215) - Feature: Add a temporary mapsize selector to the intro gui. This is sufficient until the real window is designed & coded.
Darkvater
parents:
1625
diff
changeset
|
36 |
|
4344
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
37 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 10, 167, 139, 150, STR_0148_GAME_OPTIONS, STR_0301_DISPLAY_GAME_OPTIONS}, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
38 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 168, 325, 139, 150, STR_01FE_DIFFICULTY, STR_0302_DISPLAY_DIFFICULTY_OPTIONS}, |
5d0e40cd67b9
(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
rubidium
parents:
4308
diff
changeset
|
39 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 10, 167, 157, 168, STR_CONFIG_PATCHES, STR_CONFIG_PATCHES_TIP}, |
5237
c14c97d7030a
(svn r7357) -Codechange: new NewGRF set up window which allows modification of NewGRF settings.
peter1138
parents:
4938
diff
changeset
|
40 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 168, 325, 157, 168, STR_NEWGRF_SETTINGS_BUTTON, STR_NULL}, |
c14c97d7030a
(svn r7357) -Codechange: new NewGRF set up window which allows modification of NewGRF settings.
peter1138
parents:
4938
diff
changeset
|
41 |
|
5315
ce659994e392
(svn r7471) -Codechange: Centre the 'quit' button on the main menu.
Darkvater
parents:
5237
diff
changeset
|
42 |
{ WWT_PUSHTXTBTN, RESIZE_NONE, 12, 104, 231, 175, 186, STR_0304_QUIT, STR_0305_QUIT_OPENTTD}, |
4938
074f734a91ca
(svn r6925) -Codechange: Be more strict with widget distinctions. WWT_PANEL is only plain panel,
Darkvater
parents:
4937
diff
changeset
|
43 |
{ WIDGETS_END}, |
0 | 44 |
}; |
45 |
||
1794
44f9deff97ed
(svn r2298) - CodeChange: removed CmdAbuses: CmdSetTownNameType(), CmdStartNewGame(), CmdCreateScenario(), CmdSetNewLandscapeType() and CmdGenRandomNewGame().
Darkvater
parents:
1728
diff
changeset
|
46 |
static inline void SetNewLandscapeType(byte landscape) |
44f9deff97ed
(svn r2298) - CodeChange: removed CmdAbuses: CmdSetTownNameType(), CmdStartNewGame(), CmdCreateScenario(), CmdSetNewLandscapeType() and CmdGenRandomNewGame().
Darkvater
parents:
1728
diff
changeset
|
47 |
{ |
44f9deff97ed
(svn r2298) - CodeChange: removed CmdAbuses: CmdSetTownNameType(), CmdStartNewGame(), CmdCreateScenario(), CmdSetNewLandscapeType() and CmdGenRandomNewGame().
Darkvater
parents:
1728
diff
changeset
|
48 |
_opt_newgame.landscape = landscape; |
44f9deff97ed
(svn r2298) - CodeChange: removed CmdAbuses: CmdSetTownNameType(), CmdStartNewGame(), CmdCreateScenario(), CmdSetNewLandscapeType() and CmdGenRandomNewGame().
Darkvater
parents:
1728
diff
changeset
|
49 |
InvalidateWindowClasses(WC_SELECT_GAME); |
44f9deff97ed
(svn r2298) - CodeChange: removed CmdAbuses: CmdSetTownNameType(), CmdStartNewGame(), CmdCreateScenario(), CmdSetNewLandscapeType() and CmdGenRandomNewGame().
Darkvater
parents:
1728
diff
changeset
|
50 |
} |
44f9deff97ed
(svn r2298) - CodeChange: removed CmdAbuses: CmdSetTownNameType(), CmdStartNewGame(), CmdCreateScenario(), CmdSetNewLandscapeType() and CmdGenRandomNewGame().
Darkvater
parents:
1728
diff
changeset
|
51 |
|
1711
786fc0df2b6e
(svn r2215) - Feature: Add a temporary mapsize selector to the intro gui. This is sufficient until the real window is designed & coded.
Darkvater
parents:
1625
diff
changeset
|
52 |
static void SelectGameWndProc(Window *w, WindowEvent *e) |
786fc0df2b6e
(svn r2215) - Feature: Add a temporary mapsize selector to the intro gui. This is sufficient until the real window is designed & coded.
Darkvater
parents:
1625
diff
changeset
|
53 |
{ |
786fc0df2b6e
(svn r2215) - Feature: Add a temporary mapsize selector to the intro gui. This is sufficient until the real window is designed & coded.
Darkvater
parents:
1625
diff
changeset
|
54 |
switch (e->event) { |
4719
413b21513ef7
(svn r6631) -Codechange: Use accessors for click_state.
belugas
parents:
4634
diff
changeset
|
55 |
case WE_CREATE: LowerWindowWidget(w, _opt_newgame.landscape + 8); break; |
413b21513ef7
(svn r6631) -Codechange: Use accessors for click_state.
belugas
parents:
4634
diff
changeset
|
56 |
|
0 | 57 |
case WE_PAINT: |
9906
6f41b8713b65
(svn r9674) [gamebalance] -Sync: r9322:9420 from trunk
celestar
parents:
9895
diff
changeset
|
58 |
SetWindowWidgetLoweredState(w, 8, _opt_newgame.landscape == LT_TEMPERATE); |
6f41b8713b65
(svn r9674) [gamebalance] -Sync: r9322:9420 from trunk
celestar
parents:
9895
diff
changeset
|
59 |
SetWindowWidgetLoweredState(w, 9, _opt_newgame.landscape == LT_ARCTIC); |
6f41b8713b65
(svn r9674) [gamebalance] -Sync: r9322:9420 from trunk
celestar
parents:
9895
diff
changeset
|
60 |
SetWindowWidgetLoweredState(w, 10, _opt_newgame.landscape == LT_TROPIC); |
6f41b8713b65
(svn r9674) [gamebalance] -Sync: r9322:9420 from trunk
celestar
parents:
9895
diff
changeset
|
61 |
SetWindowWidgetLoweredState(w, 11, _opt_newgame.landscape == LT_TOYLAND); |
1500
228f77e88adf
(svn r2004) - Fix: [ 1149487 ] Autosave ignoring settings
Darkvater
parents:
1390
diff
changeset
|
62 |
SetDParam(0, STR_6801_EASY + _opt_newgame.diff_level); |
0 | 63 |
DrawWindowWidgets(w); |
64 |
break; |
|
65 |
||
66 |
case WE_CLICK: |
|
9913
e79cd19772dd
(svn r10213) [gamebalance] -Sync: r10100:10200 from trunk
celestar
parents:
9911
diff
changeset
|
67 |
#ifdef ENABLE_NETWORK |
9911
0b8b245a2391
(svn r10135) [gamebalance] -Sync: r9700:9900 from trunk
celestar
parents:
9906
diff
changeset
|
68 |
/* Do not create a network server when you (just) have closed one of the game |
0b8b245a2391
(svn r10135) [gamebalance] -Sync: r9700:9900 from trunk
celestar
parents:
9906
diff
changeset
|
69 |
* creation/load windows for the network server. */ |
0b8b245a2391
(svn r10135) [gamebalance] -Sync: r9700:9900 from trunk
celestar
parents:
9906
diff
changeset
|
70 |
if (2 <= e->we.click.widget && e->we.click.widget <= 6) _is_network_server = false; |
9913
e79cd19772dd
(svn r10213) [gamebalance] -Sync: r10100:10200 from trunk
celestar
parents:
9911
diff
changeset
|
71 |
#endif /* ENABLE_NETWORK */ |
9911
0b8b245a2391
(svn r10135) [gamebalance] -Sync: r9700:9900 from trunk
celestar
parents:
9906
diff
changeset
|
72 |
|
4634
897461a3e9ca
(svn r6499) -Codechange: Finally, got "byte event" outside of the union WindowEvent, which is now a struct
belugas
parents:
4548
diff
changeset
|
73 |
switch (e->we.click.widget) { |
4300
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
74 |
case 2: ShowGenerateLandscape(); break; |
0 | 75 |
case 3: ShowSaveLoadDialog(SLD_LOAD_GAME); break; |
4300
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
76 |
case 4: ShowSaveLoadDialog(SLD_LOAD_SCENARIO); break; |
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
77 |
case 5: ShowSaveLoadDialog(SLD_LOAD_HEIGHTMAP); break; |
6150
648233476115
(svn r8522) -Regression (r8512): The flat/random window moved the to scenario editor did not use the right settings for generating land
Darkvater
parents:
6145
diff
changeset
|
78 |
case 6: StartScenarioEditor(); break; |
4300
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
79 |
case 7: |
105 | 80 |
if (!_network_available) { |
2749
46aba09ca365
(svn r3294) - Fix: use INVALID_STRING_ID instead of -1.
Darkvater
parents:
2725
diff
changeset
|
81 |
ShowErrorMessage(INVALID_STRING_ID, STR_NETWORK_ERR_NOTAVAILABLE, 0, 0); |
4077
d3022f976946
(svn r5391) Miscellaneous, mostly bracing and whitespace, nothing spectacular
tron
parents:
3888
diff
changeset
|
82 |
} else { |
172
8d8b3383470d
(svn r173) -Network: [1023231] Debug Code + ErrorBoxes + Load Game/Scenario. Added some more desync debug code and replaced some of the error() calls with some better error boxes. Hopefully find desyncs easier (sign_de)
darkvater
parents:
161
diff
changeset
|
83 |
ShowNetworkGameWindow(); |
4077
d3022f976946
(svn r5391) Miscellaneous, mostly bracing and whitespace, nothing spectacular
tron
parents:
3888
diff
changeset
|
84 |
} |
0 | 85 |
break; |
4300
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
86 |
case 8: case 9: case 10: case 11: |
4719
413b21513ef7
(svn r6631) -Codechange: Use accessors for click_state.
belugas
parents:
4634
diff
changeset
|
87 |
RaiseWindowWidget(w, _opt_newgame.landscape + 8); |
4634
897461a3e9ca
(svn r6499) -Codechange: Finally, got "byte event" outside of the union WindowEvent, which is now a struct
belugas
parents:
4548
diff
changeset
|
88 |
SetNewLandscapeType(e->we.click.widget - 8); |
4300
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
89 |
break; |
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
90 |
case 12: ShowGameOptions(); break; |
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
91 |
case 13: ShowGameDifficulty(); break; |
687a17c9c557
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
truelight
parents:
4171
diff
changeset
|
92 |
case 14: ShowPatchesSelection(); break; |
5352
82a50c80b0c4
(svn r7523) -Feature: Add the possibility to change the newgrf configuration of a running game.
Darkvater
parents:
5315
diff
changeset
|
93 |
case 15: ShowNewGRFSettings(true, true, false, &_grfconfig_newgame); break; |
5237
c14c97d7030a
(svn r7357) -Codechange: new NewGRF set up window which allows modification of NewGRF settings.
peter1138
parents:
4938
diff
changeset
|
94 |
case 16: HandleExitGameRequest(); break; |
129
df1a60bc0d70
(svn r130) Change: hotkey for console is Backquote (the key left to '1', regardless of keyboard layout
dominik
parents:
126
diff
changeset
|
95 |
} |
0 | 96 |
break; |
97 |
} |
|
98 |
} |
|
99 |
||
100 |
static const WindowDesc _select_game_desc = { |
|
5237
c14c97d7030a
(svn r7357) -Codechange: new NewGRF set up window which allows modification of NewGRF settings.
peter1138
parents:
4938
diff
changeset
|
101 |
WDP_CENTER, WDP_CENTER, 336, 195, |
6144
5a0ffbf27ced
(svn r8511) -Codechange: make WindowClass an enumerated value.
rubidium
parents:
5835
diff
changeset
|
102 |
WC_SELECT_GAME, WC_NONE, |
0 | 103 |
WDF_STD_TOOLTIPS | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS, |
104 |
_select_game_widgets, |
|
105 |
SelectGameWndProc |
|
106 |
}; |
|
107 |
||
9895
7bd07f43b0e3
(svn r9321) [gamebalance] -Sync: r9025:9314 from trunk
celestar
parents:
6547
diff
changeset
|
108 |
void ShowSelectGameWindow() |
0 | 109 |
{ |
110 |
AllocateWindowDesc(&_select_game_desc); |
|
111 |
} |
|
112 |
||
5670
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
113 |
static void AskExitGameCallback(Window *w, bool confirmed) |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
114 |
{ |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
115 |
if (confirmed) _exit_game = true; |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
116 |
} |
0 | 117 |
|
9895
7bd07f43b0e3
(svn r9321) [gamebalance] -Sync: r9025:9314 from trunk
celestar
parents:
6547
diff
changeset
|
118 |
void AskExitGame() |
2639 | 119 |
{ |
0 | 120 |
#if defined(_WIN32) |
534
17ab2f22ff74
(svn r901) Small step in the process to clean up the DPARAM mess:
tron
parents:
507
diff
changeset
|
121 |
SetDParam(0, STR_0133_WINDOWS); |
0 | 122 |
#elif defined(__APPLE__) |
534
17ab2f22ff74
(svn r901) Small step in the process to clean up the DPARAM mess:
tron
parents:
507
diff
changeset
|
123 |
SetDParam(0, STR_0135_OSX); |
0 | 124 |
#elif defined(__BEOS__) |
534
17ab2f22ff74
(svn r901) Small step in the process to clean up the DPARAM mess:
tron
parents:
507
diff
changeset
|
125 |
SetDParam(0, STR_OSNAME_BEOS); |
0 | 126 |
#elif defined(__MORPHOS__) |
534
17ab2f22ff74
(svn r901) Small step in the process to clean up the DPARAM mess:
tron
parents:
507
diff
changeset
|
127 |
SetDParam(0, STR_OSNAME_MORPHOS); |
867
581154a08a78
(svn r1348) -Feature: resizable windows. Read the comment in window.h to find out
truelight
parents:
810
diff
changeset
|
128 |
#elif defined(__AMIGA__) |
587 | 129 |
SetDParam(0, STR_OSNAME_AMIGAOS); |
810
7c51ba5a4368
(svn r1281) -Fix: the OS/2 is now finished. Fixes:
truelight
parents:
774
diff
changeset
|
130 |
#elif defined(__OS2__) |
7c51ba5a4368
(svn r1281) -Fix: the OS/2 is now finished. Fixes:
truelight
parents:
774
diff
changeset
|
131 |
SetDParam(0, STR_OSNAME_OS2); |
6547
c0989f46fd02
(svn r9018) -Change: added SunOS as OS name in the quit dialog
miham
parents:
6527
diff
changeset
|
132 |
#elif defined(SUNOS) |
c0989f46fd02
(svn r9018) -Change: added SunOS as OS name in the quit dialog
miham
parents:
6527
diff
changeset
|
133 |
SetDParam(0, STR_OSNAME_SUNOS); |
0 | 134 |
#else |
534
17ab2f22ff74
(svn r901) Small step in the process to clean up the DPARAM mess:
tron
parents:
507
diff
changeset
|
135 |
SetDParam(0, STR_0134_UNIX); |
0 | 136 |
#endif |
5670
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
137 |
ShowQuery( |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
138 |
STR_00C7_QUIT, |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
139 |
STR_00CA_ARE_YOU_SURE_YOU_WANT_TO, |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
140 |
NULL, |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
141 |
AskExitGameCallback |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
142 |
); |
0 | 143 |
} |
144 |
||
145 |
||
5670
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
146 |
static void AskExitToGameMenuCallback(Window *w, bool confirmed) |
2639 | 147 |
{ |
5670
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
148 |
if (confirmed) _switch_mode = SM_MENU; |
0 | 149 |
} |
150 |
||
9895
7bd07f43b0e3
(svn r9321) [gamebalance] -Sync: r9025:9314 from trunk
celestar
parents:
6547
diff
changeset
|
151 |
void AskExitToGameMenu() |
0 | 152 |
{ |
5670
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
153 |
ShowQuery( |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
154 |
STR_0161_QUIT_GAME, |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
155 |
(_game_mode != GM_EDITOR) ? STR_ABANDON_GAME_QUERY : STR_QUIT_SCENARIO_QUERY, |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
156 |
NULL, |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
157 |
AskExitToGameMenuCallback |
c6dcca763ebb
(svn r7622) -Codechange: Convert some more windows to ShowQuery. This includes the depot
Darkvater
parents:
5352
diff
changeset
|
158 |
); |
0 | 159 |
} |