(svn r11668) -Codechange: more refactoring aimed at reducing compile time and making it more logic where function definitions can be found.

replace/41b28d7194a279bdc17475d4fbe2ea6ec885a466
rubidium 17 years ago
parent 8896bea306
commit d582aea639

@ -8,7 +8,9 @@
#include "table/strings.h"
#include "functions.h"
#include "map.h"
#include "window_gui.h"
#include "gui.h"
#include "station_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "sound.h"

@ -9,6 +9,7 @@
#include "functions.h"
#include "map.h"
#include "gui.h"
#include "window_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "command.h"

@ -16,6 +16,7 @@
#include "vehicle.h"
#include "articulated_vehicles.h"
#include "gfx.h"
#include "textbuf_gui.h"
#include "station.h"
#include "command.h"
#include "engine.h"

@ -16,6 +16,7 @@
#include "variables.h"
#include "genworld.h"
#include "newgrf_storage.h"
#include "tile.h"
const char *_cmd_text = NULL;

@ -7,6 +7,8 @@
#include "table/strings.h"
#include "functions.h"
#include "gui.h"
#include "textbuf_gui.h"
#include "window_gui.h"
#include "gfx.h"
#include "player.h"
#include "variables.h"

@ -13,6 +13,7 @@
#include "strings.h"
#include "table/sprites.h"
#include "gui.h"
#include "textbuf_gui.h"
#include "gfx.h"
#include "vehicle.h"
#include "viewport.h"

@ -10,6 +10,8 @@
#include "map.h"
#include "station.h"
#include "gui.h"
#include "window_gui.h"
#include "station_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "sound.h"

@ -9,6 +9,7 @@
#include "table/sprites.h"
#include "functions.h"
#include "gui.h"
#include "window_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "engine.h"

@ -14,7 +14,7 @@
#include "genworld.h"
#include "gfx.h"
#include "gfxinit.h"
#include "gui.h"
#include "window_func.h"
#include "network/network.h"
#include "debug.h"
#include "settings.h"

@ -9,7 +9,10 @@
#include "table/strings.h"
#include "table/sprites.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "gfx.h"
#include "tile.h"
#include "strings.h"
#include "gfxinit.h"
#include "player.h"

@ -9,6 +9,7 @@
#include "table/sprites.h"
#include "functions.h"
#include "gui.h"
#include "window_gui.h"
#include "gfx.h"
#include "player.h"
#include "economy.h"

@ -8,6 +8,8 @@
#include "table/strings.h"
#include "table/sprites.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "gfx.h"
#include "vehicle.h"
#include "command.h"

@ -5,12 +5,13 @@
#ifndef GUI_H
#define GUI_H
#include "station.h"
#include "window_gui.h"
#include "string.h"
#include "window_type.h"
#include "rail_type.h"
#include "road_type.h"
#include "vehicle.h"
/* main_gui.cpp */
void SetupColorsAndInitialWindow();
void CcPlaySound10(bool success, TileIndex tile, uint32 p1, uint32 p2);
void CcBuildCanal(bool success, TileIndex tile, uint32 p1, uint32 p2);
void CcTerraform(bool success, TileIndex tile, uint32 p1, uint32 p2);
@ -106,15 +107,6 @@ void ShowPlayerCompany(PlayerID player);
void ShowEstimatedCostOrIncome(Money cost, int x, int y);
void ShowErrorMessage(StringID msg_1, StringID msg_2, int x, int y);
enum StationCoverageType {
SCT_PASSENGERS_ONLY,
SCT_NON_PASSENGERS_ONLY,
SCT_ALL
};
void DrawStationCoverageAreaText(int sx, int sy, StationCoverageType sct, int rad);
void CheckRedrawStationCoverage(const Window *w);
void ShowSmallMap();
void ShowExtraViewPortWindow();
void SetVScrollCount(Window *w, int num);
@ -123,19 +115,6 @@ void SetHScrollCount(Window *w, int num);
void ShowCheatWindow();
void DrawEditBox(Window *w, querystr_d *string, int wid);
void HandleEditBox(Window *w, querystr_d *string, int wid);
int HandleEditBoxKey(Window *w, querystr_d *string, int wid, WindowEvent *we);
bool HandleCaret(Textbuf *tb);
void DeleteTextBufferAll(Textbuf *tb);
bool DeleteTextBufferChar(Textbuf *tb, int delmode);
bool InsertTextBufferChar(Textbuf *tb, uint32 key);
bool InsertTextBufferClipboard(Textbuf *tb);
bool MoveTextBufferPos(Textbuf *tb, int navmode);
void InitializeTextBuffer(Textbuf *tb, const char *buf, uint16 maxlength, uint16 maxwidth);
void UpdateTextBufferSize(Textbuf *tb);
void BuildFileList();
void SetFiosType(const byte fiostype);
@ -146,8 +125,6 @@ extern const TextColour _fios_colors[];
void ShowBuildBridgeWindow(uint start, uint end, byte type);
void ShowBuildIndustryWindow();
void ShowQueryString(StringID str, StringID caption, uint maxlen, uint maxwidth, Window *parent, CharSetFilter afilter);
void ShowQuery(StringID caption, StringID message, Window *w, void (*callback)(Window*, bool));
void ShowMusicWindow();
/* main_gui.cpp */

@ -11,6 +11,8 @@
#include "table/sprites.h"
#include "map.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "gfx.h"
#include "command.h"
#include "viewport.h"

@ -9,6 +9,8 @@
#include "table/sprites.h"
#include "functions.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "gfx.h"
#include "player.h"
#include "network/network.h"

@ -15,6 +15,9 @@
#include "map.h"
#include "tile.h"
#include "gui.h"
#include "window_gui.h"
#include "window_func.h"
#include "textbuf_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "player.h"

@ -11,6 +11,8 @@
#include "player.h"
#include "gfx.h"
#include "gui.h"
#include "window_func.h"
#include "textbuf_gui.h"
#include "economy.h"
#include "network/network.h"
#include "variables.h"

@ -18,6 +18,9 @@
#include "table/tree_land.h"
#include "map.h"
#include "gui.h"
#include "window_gui.h"
#include "station_gui.h"
#include "textbuf_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "station.h"

@ -17,6 +17,8 @@
#include "network_gui.h"
#include "network_gamelist.h"
#include "../gui.h"
#include "../window_gui.h"
#include "../textbuf_gui.h"
#include "../gfx.h"
#include "../command.h"
#include "../variables.h"
@ -31,6 +33,11 @@
#define BGC 5
#define BTC 15
struct chatquerystr_d : public querystr_d {
int dest;
};
assert_compile(WINDOW_CUSTOM_SIZE >= sizeof(chatquerystr_d));
struct network_d {
PlayerID company; // select company in network lobby
byte field; // select text-field in start-server and game-listing

@ -8,6 +8,8 @@
#include "variables.h"
#include "gfx.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "table/strings.h"
#include "table/sprites.h"
#include "newgrf.h"

@ -8,6 +8,7 @@
#include "table/sprites.h"
#include "table/strings.h"
#include "gui.h"
#include "window_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "news.h"

@ -31,6 +31,7 @@
#include "tunnel_map.h"
#include "vehicle.h"
#include "viewport.h"
#include "window_func.h"
#include "window_gui.h"
#include "player.h"
#include "command.h"

@ -13,6 +13,7 @@
#include "map.h"
#include "tile.h"
#include "gui.h"
#include "window_gui.h"
#include "gfx.h"
#include "vehicle.h"
#include "station.h"

@ -9,6 +9,8 @@
#include "strings.h"
#include "functions.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "player.h"

@ -13,6 +13,8 @@
#include "map.h"
#include "tile.h"
#include "gui.h"
#include "window_gui.h"
#include "station_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "sound.h"

@ -11,6 +11,8 @@
#include "map.h"
#include "tile.h"
#include "gui.h"
#include "window_gui.h"
#include "station_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "sound.h"

@ -10,6 +10,7 @@
#include "table/sprites.h"
#include "table/strings.h"
#include "gui.h"
#include "window_gui.h"
#include "strings.h"
#include "vehicle.h"
#include "viewport.h"

@ -27,6 +27,7 @@
#include "variables.h"
#include "table/strings.h"
#include "strings.h"
#include "window_func.h"
#include <list>
extern const uint16 SAVEGAME_VERSION = 83;

@ -44,6 +44,7 @@
#include "train.h"
#include "helpers.hpp"
#include "news.h"
#include "window_func.h"
#ifdef WITH_FREETYPE
#include "gfx.h"
#include "fontcache.h"

@ -11,6 +11,8 @@
#include "table/sprites.h"
#include "table/strings.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "gfx.h"
#include "command.h"
#include "engine.h"

@ -11,6 +11,7 @@
#include "strings.h"
#include "table/sprites.h"
#include "gui.h"
#include "window_gui.h"
#include "vehicle.h"
#include "viewport.h"
#include "command.h"

@ -8,6 +8,8 @@
#include "table/sprites.h"
#include "functions.h"
#include "gui.h"
#include "textbuf_gui.h"
#include "window_gui.h"
#include "gfx.h"
#include "player.h"
#include "signs.h"

@ -17,6 +17,7 @@
#include "map.h"
#include "tile.h"
#include "gui.h"
#include "window_gui.h"
#include "tree_map.h"
#include "tunnel_map.h"
#include "gfx.h"

@ -9,6 +9,8 @@
#include "strings.h"
#include "table/strings.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "station.h"
#include "gfx.h"
#include "player.h"

@ -52,4 +52,13 @@ enum StationViewWidgets {
void RebuildStationLists();
void ResortStationLists();
enum StationCoverageType {
SCT_PASSENGERS_ONLY,
SCT_NON_PASSENGERS_ONLY,
SCT_ALL
};
void DrawStationCoverageAreaText(int sx, int sy, StationCoverageType sct, int rad);
void CheckRedrawStationCoverage(const Window *w);
#endif /* STATION_GUI_H */

@ -12,6 +12,7 @@
#include "player.h"
#include "tile.h"
#include "gui.h"
#include "window_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "sound.h"

@ -0,0 +1,45 @@
/* $Id$ */
/** @file textbuf_gui.h Stuff related to the text buffer GUI. */
#ifndef TEXTBUF_GUI_H
#define TEXTBUF_GUI_H
#include "window_type.h"
struct Textbuf {
char *buf; ///< buffer in which text is saved
uint16 maxlength, maxwidth; ///< the maximum size of the buffer. Maxwidth specifies screensize in pixels, maxlength is in bytes
uint16 length, width; ///< the current size of the string. Width specifies screensize in pixels, length is in bytes
bool caret; ///< is the caret ("_") visible or not
uint16 caretpos; ///< the current position of the caret in the buffer, in bytes
uint16 caretxoffs; ///< the current position of the caret in pixels
};
struct querystr_d {
StringID caption;
Textbuf text;
const char *orig;
CharSetFilter afilter;
bool handled;
};
assert_compile(WINDOW_CUSTOM_SIZE >= sizeof(querystr_d));
void DrawEditBox(Window *w, querystr_d *string, int wid);
void HandleEditBox(Window *w, querystr_d *string, int wid);
int HandleEditBoxKey(Window *w, querystr_d *string, int wid, WindowEvent *we);
bool HandleCaret(Textbuf *tb);
void DeleteTextBufferAll(Textbuf *tb);
bool DeleteTextBufferChar(Textbuf *tb, int delmode);
bool InsertTextBufferChar(Textbuf *tb, uint32 key);
bool InsertTextBufferClipboard(Textbuf *tb);
bool MoveTextBufferPos(Textbuf *tb, int navmode);
void InitializeTextBuffer(Textbuf *tb, const char *buf, uint16 maxlength, uint16 maxwidth);
void UpdateTextBufferSize(Textbuf *tb);
void ShowQueryString(StringID str, StringID caption, uint maxlen, uint maxwidth, Window *parent, CharSetFilter afilter);
void ShowQuery(StringID caption, StringID message, Window *w, void (*callback)(Window*, bool));
#endif /* TEXTBUF_GUI_H */

@ -12,6 +12,8 @@
#include "date.h"
#include "engine.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "string.h"
#include "vehicle.h"
#include "cargotype.h"

@ -13,6 +13,8 @@
#include "gfx.h"
#include "viewport.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "command.h"
#include "player.h"
#include "network/network.h"

@ -10,6 +10,7 @@
#include "table/strings.h"
#include "strings.h"
#include "gui.h"
#include "window_gui.h"
#include "vehicle.h"
#include "viewport.h"
#include "command.h"

@ -6,6 +6,7 @@
#include "table/strings.h"
#include "functions.h"
#include "gui.h"
#include "window_gui.h"
#include "viewport.h"
#include "gfx.h"
#include "sound.h"

@ -8,7 +8,7 @@
#include "string.h"
#include "table/strings.h"
#include "variables.h"
#include "gui.h"
#include "textbuf_gui.h"
#include <dirent.h>
#include <unistd.h>

@ -14,6 +14,8 @@
#include "vehicle.h"
#include "engine.h"
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
#include "command.h"
#include "gfx.h"
#include "variables.h"

@ -11,6 +11,7 @@
#include "saveload.h"
#include "string.h"
#include "gfx.h"
#include "textbuf_gui.h"
#include "fileio.h"
#include <windows.h>
#include <winnt.h>

@ -22,10 +22,12 @@ void DeletePlayerWindows(PlayerID pi);
void ChangeWindowOwner(PlayerID old_player, PlayerID new_player);
void ResizeWindow(Window *w, int x, int y);
int PositionMainToolbar(Window *w);
void InitWindowSystem();
void UnInitWindowSystem();
void ResetWindowSystem();
void SetupColorsAndInitialWindow();
void InputLoop();
void InvalidateThisWindowData(Window *w);
void InvalidateWindowData(WindowClass cls, WindowNumber number);

@ -19,8 +19,6 @@
*/
static const int MAX_NUMBER_OF_WINDOWS = 25;
struct WindowEvent;
typedef void WindowProc(Window *w, WindowEvent *e);
/* How the resize system works:
@ -228,20 +226,7 @@ enum WindowDefaultPosition {
WDP_ALIGN_TBL = -4, ///< Align the left side of the window with the left side of the main toolbar
};
struct Textbuf {
char *buf; ///< buffer in which text is saved
uint16 maxlength, maxwidth; ///< the maximum size of the buffer. Maxwidth specifies screensize in pixels, maxlength is in bytes
uint16 length, width; ///< the current size of the string. Width specifies screensize in pixels, length is in bytes
bool caret; ///< is the caret ("_") visible or not
uint16 caretpos; ///< the current position of the caret in the buffer, in bytes
uint16 caretxoffs; ///< the current position of the caret in pixels
};
#define WP(ptr, str) (*(str*)(ptr)->custom)
/* You cannot 100% reliably calculate the biggest custom struct as
* the number of pointers in it and alignment will have a huge impact.
* 96 is the largest window-size for 64-bit machines currently */
#define WINDOW_CUSTOM_SIZE 96
struct Scrollbar {
uint16 count, cap, pos;
@ -307,20 +292,6 @@ struct Window {
void InvalidateWidget(byte widget_index) const;
};
struct querystr_d {
StringID caption;
Textbuf text;
const char *orig;
CharSetFilter afilter;
bool handled;
};
assert_compile(WINDOW_CUSTOM_SIZE >= sizeof(querystr_d));
struct chatquerystr_d : public querystr_d {
int dest;
};
assert_compile(WINDOW_CUSTOM_SIZE >= sizeof(chatquerystr_d));
struct menu_d {
byte item_count; ///< follow_vehicle
byte sel_index; ///< scrollpos_x
@ -637,7 +608,6 @@ void InputLoop();
void InvalidateThisWindowData(Window *w);
void InvalidateWindowData(WindowClass cls, WindowNumber number);
void RelocateAllWindows(int neww, int newh);
int PositionMainToolbar(Window *w);
/* misc_gui.cpp */
void GuiShowTooltipsWithArgs(StringID str, uint paramcount, const uint64 params[]);

@ -93,6 +93,14 @@ enum WindowClass {
};
struct Window;
struct WindowEvent;
typedef int32 WindowNumber;
/**
* You cannot 100% reliably calculate the biggest custom struct as
* the number of pointers in it and alignment will have a huge impact.
* 96 is the largest window-size for 64-bit machines currently.
*/
#define WINDOW_CUSTOM_SIZE 96
#endif /* WINDOW_TYPE_H */

Loading…
Cancel
Save