File diff r8106:01dbd10fde05 → r8107:82461791b7a2
src/window_gui.h
Show inline comments
 
@@ -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[]);