Index: openttd-0.7.4/src/settings_gui.cpp
===================================================================
--- openttd-0.7.4.orig/src/settings_gui.cpp	2009-09-21 17:41:58.000000000 +0200
+++ openttd-0.7.4/src/settings_gui.cpp	2009-12-22 20:29:52.000000000 +0100
@@ -103,9 +103,7 @@
 	GAMEOPT_AUTOSAVE_BTN    = 12,
 	GAMEOPT_LANG_BTN        = 14,
 	GAMEOPT_RESOLUTION_BTN  = 16,
-	GAMEOPT_FULLSCREEN,
-	GAMEOPT_SCREENSHOT_BTN  = 19,
-	GAMEOPT_BASE_GRF_BTN    = 21,
+	GAMEOPT_BASE_GRF_BTN    = 18,
 };
 
 /**
@@ -175,11 +173,10 @@
 		int i = GetCurRes();
 		SetDParam(7, i == _num_resolutions ? STR_RES_OTHER : SPECSTR_RESOLUTION_START + i);
 		SetDParam(8, SPECSTR_SCREENSHOT_START + _cur_screenshot_format);
-		this->SetWidgetLoweredState(GAMEOPT_FULLSCREEN, _fullscreen);
 		SetDParamStr(9, GetGraphicsSetName(GetIndexOfCurrentGraphicsSet()));
 
 		this->DrawWidgets();
-		DrawString(20, 175, STR_OPTIONS_FULLSCREEN, TC_FROMSTRING); // fullscreen
+		//DrawString(20, 175, STR_OPTIONS_FULLSCREEN, TC_FROMSTRING); // fullscreen
 	}
 
 	virtual void OnClick(Point pt, int widget)
@@ -233,19 +230,6 @@
 				ShowDropDownMenu(this, BuildDynamicDropdown(SPECSTR_RESOLUTION_START, _num_resolutions), GetCurRes(), GAMEOPT_RESOLUTION_BTN, 0, 0);
 				break;
 
-			case GAMEOPT_FULLSCREEN: // Click fullscreen on/off
-				/* try to toggle full-screen on/off */
-				if (!ToggleFullScreen(!_fullscreen)) {
-					ShowErrorMessage(INVALID_STRING_ID, STR_FULLSCREEN_FAILED, 0, 0);
-				}
-				this->SetWidgetLoweredState(GAMEOPT_FULLSCREEN, _fullscreen);
-				this->SetDirty();
-				break;
-
-			case GAMEOPT_SCREENSHOT_BTN: // Setup screenshot format dropdown
-				ShowDropDownMenu(this, BuildDynamicDropdown(SPECSTR_SCREENSHOT_START, _num_screenshot_formats), _cur_screenshot_format, GAMEOPT_SCREENSHOT_BTN, 0, 0);
-				break;
-
 			case GAMEOPT_BASE_GRF_BTN:
 				ShowGraphicsSetMenu(this);
 				break;
@@ -301,11 +285,6 @@
 				}
 				break;
 
-			case GAMEOPT_SCREENSHOT_BTN: // Change screenshot format
-				SetScreenshotFormat(index);
-				this->SetDirty();
-				break;
-
 			case GAMEOPT_BASE_GRF_BTN:
 				if (_game_mode == GM_MENU) {
 					const char *name = GetGraphicsSetName(index);
@@ -323,37 +302,33 @@
 
 static const Widget _game_options_widgets[] = {
 {   WWT_CLOSEBOX,   RESIZE_NONE,  COLOUR_GREY,     0,    10,     0,    13, STR_00C5,                          STR_018B_CLOSE_WINDOW},
-{    WWT_CAPTION,   RESIZE_NONE,  COLOUR_GREY,    11,   369,     0,    13, STR_00B1_GAME_OPTIONS,             STR_018C_WINDOW_TITLE_DRAG_THIS},
-{      WWT_PANEL,   RESIZE_NONE,  COLOUR_GREY,     0,   369,    14,   242, 0x0,                               STR_NULL},
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,    20,    55, STR_02E0_CURRENCY_UNITS,           STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,    34,    45, STR_02E1,                          STR_02E2_CURRENCY_UNITS_SELECTION},
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   190,   359,    20,    55, STR_MEASURING_UNITS,               STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,   200,   349,    34,    45, STR_02E4,                          STR_MEASURING_UNITS_SELECTION},
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,    62,    97, STR_02E6_ROAD_VEHICLES,            STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,    76,    87, STR_02E7,                          STR_02E8_SELECT_SIDE_OF_ROAD_FOR},
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   190,   359,    62,    97, STR_02EB_TOWN_NAMES,               STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,   200,   349,    76,    87, STR_02EC,                          STR_02ED_SELECT_STYLE_OF_TOWN_NAMES},
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,   104,   139, STR_02F4_AUTOSAVE,                 STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,   118,   129, STR_02F5,                          STR_02F6_SELECT_INTERVAL_BETWEEN},
-
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   190,   359,   104,   139, STR_OPTIONS_LANG,                  STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,   200,   349,   118,   129, STR_OPTIONS_LANG_CBO,              STR_OPTIONS_LANG_TIP},
-
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,   146,   190, STR_OPTIONS_RES,                   STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,   160,   171, STR_OPTIONS_RES_CBO,               STR_OPTIONS_RES_TIP},
-{    WWT_TEXTBTN,   RESIZE_NONE,  COLOUR_GREY,   149,   169,   176,   184, STR_EMPTY,                         STR_OPTIONS_FULLSCREEN_TIP},
+{    WWT_CAPTION,   RESIZE_NONE,  COLOUR_GREY,    11,   359,     0,    13, STR_00B1_GAME_OPTIONS,             STR_018C_WINDOW_TITLE_DRAG_THIS},
+{      WWT_PANEL,   RESIZE_NONE,  COLOUR_GREY,     0,   359,    14,   199, 0x0,                               STR_NULL},
+{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,     8,   174,    20,    55, STR_02E0_CURRENCY_UNITS,           STR_NULL},
+{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    18,   164,    34,    45, STR_02E1,                          STR_02E2_CURRENCY_UNITS_SELECTION},
+{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   183,   349,    20,    55, STR_MEASURING_UNITS,               STR_NULL},
+{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,   193,   339,    34,    45, STR_02E4,                          STR_MEASURING_UNITS_SELECTION},
+{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,     8,   174,    62,    97, STR_02E6_ROAD_VEHICLES,            STR_NULL},
+{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    18,   164,    76,    87, STR_02E7,                          STR_02E8_SELECT_SIDE_OF_ROAD_FOR},
+{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   183,   349,    62,    97, STR_02EB_TOWN_NAMES,               STR_NULL},
+{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,   193,   339,    76,    87, STR_02EC,                          STR_02ED_SELECT_STYLE_OF_TOWN_NAMES},
+{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,     8,   174,   104,   139, STR_02F4_AUTOSAVE,                 STR_NULL},
+{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    18,   164,   118,   129, STR_02F5,                          STR_02F6_SELECT_INTERVAL_BETWEEN},
 
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   190,   359,   146,   190, STR_OPTIONS_SCREENSHOT_FORMAT,     STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,   200,   349,   160,   171, STR_OPTIONS_SCREENSHOT_FORMAT_CBO, STR_OPTIONS_SCREENSHOT_FORMAT_TIP},
+{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   183,   349,   104,   139, STR_OPTIONS_LANG,                  STR_NULL},
+{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,   193,   339,   118,   129, STR_OPTIONS_LANG_CBO,              STR_OPTIONS_LANG_TIP},
 
-{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,   197,   232, STR_OPTIONS_BASE_GRF,              STR_NULL},
-{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,   211,   222, STR_OPTIONS_BASE_GRF_CBO,          STR_OPTIONS_BASE_GRF_TIP},
+{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,     8,   174,   146,   181, STR_OPTIONS_RES,                   STR_NULL},
+{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,    18,   164,   160,   171, STR_OPTIONS_RES_CBO,               STR_OPTIONS_RES_TIP},
+
+{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   183,   349,   146,   181, STR_OPTIONS_BASE_GRF,              STR_NULL},
+{ WWT_DROPDOWNIN,   RESIZE_NONE,  COLOUR_GREY,   193,   339,   160,   171, STR_OPTIONS_BASE_GRF_CBO,          STR_OPTIONS_BASE_GRF_TIP},
 
 {   WIDGETS_END},
 };
 
 static const WindowDesc _game_options_desc(
-	WDP_CENTER, WDP_CENTER, 370, 243, 370, 243,
+	WDP_CENTER, WDP_CENTER, 360, 200, 360, 200,
 	WC_GAME_OPTIONS, WC_NONE,
 	WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS,
 	_game_options_widgets
@@ -371,25 +346,25 @@
 /* Widget definition for the game difficulty settings window */
 static const Widget _game_difficulty_widgets[] = {
 {   WWT_CLOSEBOX,   RESIZE_NONE,  COLOUR_MAUVE,      0,    10,     0,    13, STR_00C5,                     STR_018B_CLOSE_WINDOW},           // GDW_CLOSEBOX
-{    WWT_CAPTION,   RESIZE_NONE,  COLOUR_MAUVE,     11,   369,     0,    13, STR_6800_DIFFICULTY_LEVEL,    STR_018C_WINDOW_TITLE_DRAG_THIS}, // GDW_CAPTION
+{    WWT_CAPTION,  RESIZE_RIGHT,  COLOUR_MAUVE,     11,   369,     0,    13, STR_6800_DIFFICULTY_LEVEL,    STR_018C_WINDOW_TITLE_DRAG_THIS}, // GDW_CAPTION
 {      WWT_PANEL,   RESIZE_NONE,  COLOUR_MAUVE,      0,   369,    14,    41, 0x0,                          STR_NULL},                        // GDW_UPPER_BG
 { WWT_PUSHTXTBTN,   RESIZE_NONE,  COLOUR_YELLOW,    10,    96,    16,    27, STR_6801_EASY,                STR_NULL},                        // GDW_LVL_EASY
 { WWT_PUSHTXTBTN,   RESIZE_NONE,  COLOUR_YELLOW,    97,   183,    16,    27, STR_6802_MEDIUM,              STR_NULL},                        // GDW_LVL_MEDIUM
 { WWT_PUSHTXTBTN,   RESIZE_NONE,  COLOUR_YELLOW,   184,   270,    16,    27, STR_6803_HARD,                STR_NULL},                        // GDW_LVL_HARD
 { WWT_PUSHTXTBTN,   RESIZE_NONE,  COLOUR_YELLOW,   271,   357,    16,    27, STR_6804_CUSTOM,              STR_NULL},                        // GDW_LVL_CUSTOM
 {    WWT_TEXTBTN,   RESIZE_NONE,  COLOUR_GREEN,     10,   357,    28,    39, STR_6838_SHOW_HI_SCORE_CHART, STR_NULL},                        // GDW_HIGHSCORE
-{      WWT_PANEL,   RESIZE_NONE,  COLOUR_MAUVE,      0,   369,    42,   262, 0x0,                          STR_NULL},                        // GDW_SETTING_BG
-{      WWT_PANEL,   RESIZE_NONE,  COLOUR_MAUVE,      0,   369,   263,   278, 0x0,                          STR_NULL},                        // GDW_LOWER_BG
-{ WWT_PUSHTXTBTN,   RESIZE_NONE,  COLOUR_YELLOW,   105,   185,   265,   276, STR_OPTIONS_SAVE_CHANGES,     STR_NULL},                        // GDW_ACCEPT
-{ WWT_PUSHTXTBTN,   RESIZE_NONE,  COLOUR_YELLOW,   186,   266,   265,   276, STR_012E_CANCEL,              STR_NULL},                        // GDW_CANCEL
+{      WWT_PANEL, RESIZE_BOTTOM,  COLOUR_MAUVE,      0,   369,    42,    78, 0x0,                          STR_NULL},                        // GDW_SETTING_BG
+{      WWT_PANEL,     RESIZE_TB,  COLOUR_MAUVE,      0,   369,    79,    94, 0x0,                          STR_NULL},                        // GDW_LOWER_BG
+{ WWT_PUSHTXTBTN,     RESIZE_TB,  COLOUR_YELLOW,   105,   185,    81,    92, STR_OPTIONS_SAVE_CHANGES,     STR_NULL},                        // GDW_ACCEPT
+{ WWT_PUSHTXTBTN,     RESIZE_TB,  COLOUR_YELLOW,   186,   266,    81,    92, STR_012E_CANCEL,              STR_NULL},                        // GDW_CANCEL
 {   WIDGETS_END},
 };
 
 /* Window definition for the game difficulty settings window */
 static const WindowDesc _game_difficulty_desc(
-	WDP_CENTER, WDP_CENTER, 370, 279, 370, 279,
+	WDP_CENTER, WDP_CENTER, 360, 96, 370, 280,
 	WC_GAME_OPTIONS, WC_NONE,
-	WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET,
+	WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_RESIZABLE,
 	_game_difficulty_widgets
 );
 
@@ -427,6 +402,14 @@
 		GDW_CANCEL,
 	};
 
+	inline uint get_num_rows()
+	{
+		const uint num_rows =
+			((this->widget[GDW_SETTING_BG].bottom - this->widget[GDW_SETTING_BG].top)
+			 / GAMEDIFF_WND_ROWSIZE) - 1;
+		return num_rows > GAME_DIFFICULTY_NUM ? GAME_DIFFICULTY_NUM : num_rows;
+	}
+
 public:
 	GameDifficultyWindow() : Window(&_game_difficulty_desc)
 	{
@@ -436,6 +419,9 @@
 		this->clicked_increase = false;
 		this->clicked_button = NO_SETTINGS_BUTTON;
 		this->timeout = 0;
+		/* Resize vertically */
+		this->resize.step_width = 0;
+		this->resize.step_height = GAMEDIFF_WND_ROWSIZE;
 		/* Hide the closebox to make sure that the user aborts or confirms his changes */
 		this->HideWidget(GDW_CLOSEBOX);
 		this->widget[GDW_CAPTION].left = 0;
@@ -458,10 +444,11 @@
 		this->DrawWidgets();
 
 		uint i;
+		const uint num_rows = get_num_rows();
 		const SettingDesc *sd = GetSettingFromName("difficulty.max_no_competitors", &i);
 		int y = GAMEDIFF_WND_TOP_OFFSET;
 		StringID str = STR_6805_MAXIMUM_NO_COMPETITORS;
-		for (i = 0; i < GAME_DIFFICULTY_NUM; i++, sd++) {
+		for (i = 0; i < num_rows; i++, sd++) {
 			const SettingDescBase *sdb = &sd->desc;
 			/* skip deprecated difficulty options */
 			if (!SlIsObjectCurrentlyValid(sd->save.version_from, sd->save.version_to)) continue;
@@ -486,6 +473,7 @@
 	{
 		switch (widget) {
 			case GDW_SETTING_BG: { // Difficulty settings widget, decode click
+				const uint num_rows = get_num_rows();
 				/* Don't allow clients to make any changes */
 				if (_networking && !_network_server) return;
 
@@ -499,7 +487,7 @@
 				uint8 btn = y / (GAMEDIFF_WND_ROWSIZE + 2);
 				if (btn >= 1) btn++; // Skip the deprecated option "competitor start time"
 				if (btn >= 8) btn++; // Skip the deprecated option "competitor intelligence"
-				if (btn >= GAME_DIFFICULTY_NUM || y % (GAMEDIFF_WND_ROWSIZE + 2) >= 9) return;
+				if (btn >= num_rows || y % (GAMEDIFF_WND_ROWSIZE + 2) >= 9) return;
 
 				uint i;
 				const SettingDesc *sd = GetSettingFromName("difficulty.max_no_competitors", &i) + btn;
@@ -549,13 +537,14 @@
 
 			case GDW_ACCEPT: { // Save button - save changes
 				GameSettings *opt_ptr = (_game_mode == GM_MENU) ? &_settings_newgame : &_settings_game;
+				const uint num_rows = get_num_rows();
 
 				uint i;
 				GetSettingFromName("difficulty.diff_level", &i);
 				DoCommandP(0, i, this->opt_mod_temp.difficulty.diff_level, CMD_CHANGE_SETTING);
 
 				const SettingDesc *sd = GetSettingFromName("difficulty.max_no_competitors", &i);
-				for (uint btn = 0; btn != GAME_DIFFICULTY_NUM; btn++, sd++) {
+				for (uint btn = 0; btn != num_rows; btn++, sd++) {
 					int32 new_val = (int32)ReadValue(GetVariableAddress(&this->opt_mod_temp, &sd->save), sd->save.conv);
 					int32 cur_val = (int32)ReadValue(GetVariableAddress(opt_ptr, &sd->save), sd->save.conv);
 					/* if setting has changed, change it */
@@ -1422,15 +1411,15 @@
 
 static const Widget _settings_selection_widgets[] = {
 {   WWT_CLOSEBOX,   RESIZE_NONE,  COLOUR_MAUVE,     0,    10,     0,    13, STR_00C5,                        STR_018B_CLOSE_WINDOW},
-{    WWT_CAPTION,  RESIZE_RIGHT,  COLOUR_MAUVE,    11,   411,     0,    13, STR_CONFIG_SETTING_CAPTION,      STR_018C_WINDOW_TITLE_DRAG_THIS},
-{      WWT_PANEL,     RESIZE_RB,  COLOUR_MAUVE,     0,   399,    14,   187, 0x0,                             STR_NULL}, // SETTINGSEL_OPTIONSPANEL
-{  WWT_SCROLLBAR,    RESIZE_LRB,  COLOUR_MAUVE,   400,   411,    14,   175, 0x0,                             STR_0190_SCROLL_BAR_SCROLLS_LIST}, // SETTINGSEL_SCROLLBAR
-{  WWT_RESIZEBOX,   RESIZE_LRTB,  COLOUR_MAUVE,   400,   411,   176,   187, 0x0,                             STR_RESIZE_BUTTON}, // SETTINGSEL_RESIZE
+{    WWT_CAPTION,  RESIZE_RIGHT,  COLOUR_MAUVE,    11,   359,     0,    13, STR_CONFIG_SETTING_CAPTION,      STR_018C_WINDOW_TITLE_DRAG_THIS},
+{      WWT_PANEL,     RESIZE_RB,  COLOUR_MAUVE,     0,   347,    14,   187, 0x0,                             STR_NULL}, // SETTINGSEL_OPTIONSPANEL
+{  WWT_SCROLLBAR,    RESIZE_LRB,  COLOUR_MAUVE,   348,   359,    14,   175, 0x0,                             STR_0190_SCROLL_BAR_SCROLLS_LIST}, // SETTINGSEL_SCROLLBAR
+{  WWT_RESIZEBOX,   RESIZE_LRTB,  COLOUR_MAUVE,   348,   359,   176,   187, 0x0,                             STR_RESIZE_BUTTON}, // SETTINGSEL_RESIZE
 {   WIDGETS_END},
 };
 
 static const WindowDesc _settings_selection_desc(
-	WDP_CENTER, WDP_CENTER, 412, 188, 450, 397,
+	WDP_CENTER, WDP_CENTER, 360, 188, 450, 397,
 	WC_GAME_OPTIONS, WC_NONE,
 	WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_RESIZABLE,
 	_settings_selection_widgets
Index: openttd-0.7.4/src/intro_gui.cpp
===================================================================
--- openttd-0.7.4.orig/src/intro_gui.cpp	2009-12-22 20:11:30.000000000 +0100
+++ openttd-0.7.4/src/intro_gui.cpp	2009-12-22 20:29:52.000000000 +0100
@@ -27,7 +27,7 @@
 
 static const Widget _select_game_widgets[] = {
 {     WWT_CAPTION,  RESIZE_NONE,  COLOUR_BROWN,     0,  335,    0,   13,  STR_0307_OPENTTD,           STR_NULL},
-{       WWT_PANEL,  RESIZE_NONE,  COLOUR_BROWN,     0,  335,   14,  212,  0x0,                        STR_NULL},
+{       WWT_PANEL,  RESIZE_NONE,  COLOUR_BROWN,     0,  335,   14,  209,  0x0,                        STR_NULL},
 {  WWT_PUSHTXTBTN,  RESIZE_NONE,  COLOUR_ORANGE,   10,  167,   22,   33,  STR_0140_NEW_GAME,          STR_02FB_START_A_NEW_GAME},
 {  WWT_PUSHTXTBTN,  RESIZE_NONE,  COLOUR_ORANGE,  168,  325,   22,   33,  STR_0141_LOAD_GAME,         STR_02FC_LOAD_A_SAVED_GAME},
 {  WWT_PUSHTXTBTN,  RESIZE_NONE,  COLOUR_ORANGE,   10,  167,   40,   51,  STR_029A_PLAY_SCENARIO,     STR_0303_START_A_NEW_GAME_USING},
@@ -164,7 +164,7 @@
 };
 
 static const WindowDesc _select_game_desc(
-	WDP_CENTER, WDP_CENTER, 336, 213, 336, 213,
+	WDP_CENTER, WDP_CENTER, 336, 210, 336, 210,
 	WC_SELECT_GAME, WC_NONE,
 	WDF_STD_TOOLTIPS | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS,
 	_select_game_widgets
Index: openttd-0.7.4/src/news_gui.cpp
===================================================================
--- openttd-0.7.4.orig/src/news_gui.cpp	2009-03-15 16:25:18.000000000 +0100
+++ openttd-0.7.4/src/news_gui.cpp	2009-12-22 20:29:52.000000000 +0100
@@ -220,7 +220,7 @@
 
 				if (!(this->ni->flags & NF_VIEWPORT)) {
 					CopyInDParam(0, this->ni->params, lengthof(this->ni->params));
-					DrawStringMultiCenter(215, display_mode == NM_NORMAL ? 76 : 56,
+					DrawStringMultiCenter(this->width / 2, display_mode == NM_NORMAL ? 56 : 36,
 						this->ni->string_id, this->width - 4);
 				} else {
 					/* Back up transparency options to draw news view */
@@ -320,26 +320,26 @@
 
 
 static const Widget _news_type13_widgets[] = {
-{      WWT_PANEL,   RESIZE_NONE,  COLOUR_WHITE,     0,   429,     0,   169, 0x0, STR_NULL},
+{      WWT_PANEL,   RESIZE_NONE,  COLOUR_WHITE,     0,   359,     0,   139, 0x0, STR_NULL},
 {      WWT_PANEL,   RESIZE_NONE,  COLOUR_WHITE,     0,    10,     0,    11, 0x0, STR_NULL},
 {   WIDGETS_END},
 };
 
 static WindowDesc _news_type13_desc(
-	WDP_CENTER, 476, 430, 170, 430, 170,
+	WDP_CENTER, 476, 360, 140, 360, 140,
 	WC_NEWS_WINDOW, WC_NONE,
 	WDF_DEF_WIDGET,
 	_news_type13_widgets
 );
 
 static const Widget _news_type2_widgets[] = {
-{      WWT_PANEL,   RESIZE_NONE,  COLOUR_WHITE,     0,   429,     0,   129, 0x0, STR_NULL},
+{      WWT_PANEL,   RESIZE_NONE,  COLOUR_WHITE,     0,   359,     0,   109, 0x0, STR_NULL},
 {      WWT_PANEL,   RESIZE_NONE,  COLOUR_WHITE,     0,    10,     0,    11, 0x0, STR_NULL},
 {   WIDGETS_END},
 };
 
 static WindowDesc _news_type2_desc(
-	WDP_CENTER, 476, 430, 130, 430, 130,
+	WDP_CENTER, 476, 360, 110, 360, 110,
 	WC_NEWS_WINDOW, WC_NONE,
 	WDF_DEF_WIDGET,
 	_news_type2_widgets
@@ -374,7 +374,7 @@
 			_news_type13_desc.top = top;
 			w = new NewsWindow(&_news_type13_desc, ni);
 			if (ni->flags & NF_VIEWPORT) {
-				InitializeWindowViewport(w, 2, 58, 426, 110,
+				InitializeWindowViewport(w, 2, 58, _news_type13_widgets[0].right-3, _news_type13_widgets[0].bottom-59,
 					ni->data_a | (ni->flags & NF_VEHICLE ? 0x80000000 : 0), ZOOM_LVL_NEWS);
 			}
 			break;
@@ -383,7 +383,7 @@
 			_news_type2_desc.top = top;
 			w = new NewsWindow(&_news_type2_desc, ni);
 			if (ni->flags & NF_VIEWPORT) {
-				InitializeWindowViewport(w, 2, 58, 426, 70,
+				InitializeWindowViewport(w, 2, 58, _news_type2_widgets[0].right-3, _news_type2_widgets[0].bottom-59,
 					ni->data_a | (ni->flags & NF_VEHICLE ? 0x80000000 : 0), ZOOM_LVL_NEWS);
 			}
 			break;
Index: openttd-0.7.4/src/statusbar_gui.cpp
===================================================================
--- openttd-0.7.4.orig/src/statusbar_gui.cpp	2009-03-15 16:12:06.000000000 +0100
+++ openttd-0.7.4/src/statusbar_gui.cpp	2009-12-22 20:29:52.000000000 +0100
@@ -52,7 +52,7 @@
 	*d = '\0';
 
 	DrawPixelInfo tmp_dpi;
-	if (!FillDrawPixelInfo(&tmp_dpi, 141, 1, width, 11)) return true;
+	if (!FillDrawPixelInfo(&tmp_dpi, 111, 1, width, 11)) return true;
 
 	DrawPixelInfo *old_dpi = _cur_dpi;
 	_cur_dpi = &tmp_dpi;
@@ -97,12 +97,12 @@
 
 		this->DrawWidgets();
 		SetDParam(0, _date);
-		DrawStringCentered(70, 1, (_pause_game || _settings_client.gui.status_long_date) ? STR_00AF : STR_00AE, TC_FROMSTRING);
+		DrawStringCentered(55, 1, (_pause_game || _settings_client.gui.status_long_date) ? STR_00AF : STR_00AE, TC_FROMSTRING);
 
 		if (c != NULL) {
 			/* Draw company money */
 			SetDParam(0, c->money);
-			DrawStringCentered(this->widget[SBW_RIGHT].left + 70, 1, STR_0004, TC_FROMSTRING);
+			DrawStringCentered(this->widget[SBW_RIGHT].left + 55, 1, STR_0004, TC_FROMSTRING);
 		}
 
 		/* Draw status bar */
@@ -176,14 +176,14 @@
 };
 
 static const Widget _main_status_widgets[] = {
-{      WWT_PANEL,   RESIZE_NONE,   COLOUR_GREY,     0,   139,     0,    11, 0x0, STR_NULL},
-{    WWT_PUSHBTN,   RESIZE_RIGHT,  COLOUR_GREY,   140,   179,     0,    11, 0x0, STR_02B7_SHOW_LAST_MESSAGE_OR_NEWS},
-{    WWT_PUSHBTN,   RESIZE_LR,     COLOUR_GREY,   180,   319,     0,    11, 0x0, STR_NULL},
+{      WWT_PANEL,   RESIZE_NONE,   COLOUR_GREY,     0,   109,     0,    11, 0x0, STR_NULL},
+{    WWT_PUSHBTN,   RESIZE_RIGHT,  COLOUR_GREY,   110,   249,     0,    11, 0x0, STR_02B7_SHOW_LAST_MESSAGE_OR_NEWS},
+{    WWT_PUSHBTN,   RESIZE_LR,     COLOUR_GREY,   250,   359,     0,    11, 0x0, STR_NULL},
 {   WIDGETS_END},
 };
 
 static WindowDesc _main_status_desc(
-	WDP_CENTER, 0, 320, 12, 640, 12,
+	WDP_CENTER, 0, 360, 12, 640, 12,
 	WC_STATUS_BAR, WC_NONE,
 	WDF_STD_TOOLTIPS | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS | WDF_NO_FOCUS,
 	_main_status_widgets
Index: openttd-0.7.4/src/genworld_gui.cpp
===================================================================
--- openttd-0.7.4.orig/src/genworld_gui.cpp	2009-05-07 00:37:19.000000000 +0200
+++ openttd-0.7.4/src/genworld_gui.cpp	2009-12-22 20:29:52.000000000 +0100
@@ -136,12 +136,12 @@
 {   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 175, 130, 141, 0x0,                          STR_NULL},                               // GLAND_INDUSTRY_PULLDOWN
 
 /* Edit box for seed */
-{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 153, 163, STR_RANDOM_SEED,              STR_NULL},                               // GLAND_RANDOM_TEXT
-{    WWT_EDITBOX, RESIZE_NONE, COLOUR_WHITE,  114, 207, 152, 163, STR_RANDOM_SEED_OSKTITLE,     STR_RANDOM_SEED_HELP},                   // GLAND_RANDOM_EDITBOX
-{    WWT_TEXTBTN, RESIZE_NONE, COLOUR_ORANGE, 216, 326, 152, 163, STR_RANDOM,                   STR_RANDOM_HELP},                        // GLAND_RANDOM_BUTTON
+{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 247, 257, STR_RANDOM_SEED,              STR_NULL},                               // GLAND_RANDOM_TEXT
+{    WWT_EDITBOX, RESIZE_NONE, COLOUR_WHITE,  114, 207, 246, 257, STR_RANDOM_SEED_OSKTITLE,     STR_RANDOM_SEED_HELP},                   // GLAND_RANDOM_EDITBOX
+{    WWT_TEXTBTN, RESIZE_NONE, COLOUR_ORANGE, 216, 326, 246, 257, STR_RANDOM,                   STR_RANDOM_HELP},                        // GLAND_RANDOM_BUTTON
 
 /* Generate button */
-{    WWT_TEXTBTN, RESIZE_NONE, COLOUR_GREEN, 243, 326, 228, 257, STR_GENERATE,                 STR_NULL},                                // GLAND_GENERATE_BUTTON
+{    WWT_TEXTBTN, RESIZE_NONE, COLOUR_GREEN, 243, 326, 152, 195, STR_GENERATE,                 STR_NULL},                                // GLAND_GENERATE_BUTTON
 
 /* Start date */
 {       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE, 182, 212, 113, 123, STR_DATE,                     STR_NULL},                               // GLAND_START_DATE_TEXT1
@@ -156,24 +156,24 @@
 {     WWT_IMGBTN, RESIZE_NONE, COLOUR_ORANGE, 315, 326, 130, 141, SPR_ARROW_UP,                 STR_SNOW_LINE_UP},                       // GLAND_SNOW_LEVEL_UP
 
 /* Tree placer */
-{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 193, 203, STR_TREE_PLACER,              STR_NULL},                               // GLAND_TREE_TEXT
-{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 192, 203, 0x0,                          STR_NULL},                               // GLAND_TREE_PULLDOWN
+{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 205, 215, STR_TREE_PLACER,              STR_NULL},                               // GLAND_TREE_TEXT
+{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 204, 215, 0x0,                          STR_NULL},                               // GLAND_TREE_PULLDOWN
 
 /* Landscape generator */
-{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 175, 185, STR_LAND_GENERATOR,           STR_NULL},                               // GLAND_LANDSCAPE_TEXT
-{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 174, 185, 0x0,                          STR_NULL},                               // GLAND_LANDSCAPE_PULLDOWN
+{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 223, 233, STR_LAND_GENERATOR,           STR_NULL},                               // GLAND_LANDSCAPE_TEXT
+{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 223, 233, 0x0,                          STR_NULL},                               // GLAND_LANDSCAPE_PULLDOWN
 
 /* Terrain type */
-{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 211, 221, STR_TERRAIN_TYPE,             STR_NULL},                               // GLAND_TERRAIN_TEXT
-{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 210, 221, 0x0,                          STR_NULL},                               // GLAND_TERRAIN_PULLDOWN
+{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 153, 163, STR_TERRAIN_TYPE,             STR_NULL},                               // GLAND_TERRAIN_TEXT
+{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 152, 162, 0x0,                          STR_NULL},                               // GLAND_TERRAIN_PULLDOWN
 
 /* Water quantity */
-{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 229, 239, STR_QUANTITY_OF_SEA_LAKES,    STR_NULL},                               // GLAND_WATER_TEXT
-{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 228, 239, 0x0,                          STR_NULL},                               // GLAND_WATER_PULLDOWN
+{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 169, 179, STR_QUANTITY_OF_SEA_LAKES,    STR_NULL},                               // GLAND_WATER_TEXT
+{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 168, 179, 0x0,                          STR_NULL},                               // GLAND_WATER_PULLDOWN
 
 /* Map smoothness */
-{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 247, 257, STR_SMOOTHNESS,               STR_NULL},                               // GLAND_SMOOTHNESS_TEXT
-{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 246, 257, 0x0,                          STR_NULL},                               // GLAND_SMOOTHNESS_PULLDOWN
+{       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 185, 195, STR_SMOOTHNESS,               STR_NULL},                               // GLAND_SMOOTHNESS_TEXT
+{   WWT_DROPDOWN, RESIZE_NONE, COLOUR_ORANGE, 114, 231, 184, 195, 0x0,                          STR_NULL},                               // GLAND_SMOOTHNESS_PULLDOWN
 
 /* Water borders */
 {       WWT_TEXT, RESIZE_NONE, COLOUR_ORANGE,  12, 110, 265, 275, STR_BORDER_TYPE,             STR_NULL},                               // GLAND_BORDER_TYPES
