Fix minimum size of plans window

This commit is contained in:
Jonathan G Rennison
2020-11-06 23:46:40 +00:00
parent 74efe0b840
commit 95973044ea

View File

@@ -22,6 +22,7 @@
#include "tilehighlight_func.h" #include "tilehighlight_func.h"
#include "strings_func.h" #include "strings_func.h"
#include "core/pool_func.hpp" #include "core/pool_func.hpp"
#include "core/geometry_func.hpp"
#include "widgets/plans_widget.h" #include "widgets/plans_widget.h"
#include "table/strings.h" #include "table/strings.h"
#include "table/sprites.h" #include "table/sprites.h"
@@ -47,6 +48,7 @@ static const NWidgetPart _nested_plans_widgets[] = {
NWidget(WWT_PANEL, COLOUR_GREY), NWidget(WWT_PANEL, COLOUR_GREY),
NWidget(NWID_HORIZONTAL), NWidget(NWID_HORIZONTAL),
NWidget(NWID_HORIZONTAL, NC_EQUALSIZE),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_PLN_NEW), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_PLANS_NEW_PLAN, STR_NULL), NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_PLN_NEW), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_PLANS_NEW_PLAN, STR_NULL),
NWidget(WWT_TEXTBTN_2, COLOUR_GREY, WID_PLN_ADD_LINES), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_PLANS_ADD_LINES, STR_PLANS_ADDING_LINES), NWidget(WWT_TEXTBTN_2, COLOUR_GREY, WID_PLN_ADD_LINES), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_PLANS_ADD_LINES, STR_PLANS_ADDING_LINES),
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_PLN_VISIBILITY), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_PLANS_VISIBILITY_PUBLIC, STR_PLANS_VISIBILITY_TOOLTIP), NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_PLN_VISIBILITY), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_PLANS_VISIBILITY_PUBLIC, STR_PLANS_VISIBILITY_TOOLTIP),
@@ -57,6 +59,7 @@ static const NWidgetPart _nested_plans_widgets[] = {
EndContainer(), EndContainer(),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_PLN_DELETE), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_PLANS_DELETE, STR_PLANS_DELETE_TOOLTIP), NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_PLN_DELETE), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_PLANS_DELETE, STR_PLANS_DELETE_TOOLTIP),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_PLN_RENAME), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_BUTTON_RENAME, STR_NULL), NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_PLN_RENAME), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_BUTTON_RENAME, STR_NULL),
EndContainer(),
NWidget(WWT_RESIZEBOX, COLOUR_GREY), NWidget(WWT_RESIZEBOX, COLOUR_GREY),
EndContainer(), EndContainer(),
EndContainer(), EndContainer(),
@@ -333,6 +336,35 @@ struct PlansWindow : Window {
resize->height = max<int>(FONT_HEIGHT_NORMAL, SETTING_BUTTON_HEIGHT); resize->height = max<int>(FONT_HEIGHT_NORMAL, SETTING_BUTTON_HEIGHT);
size->height = resize->height * 5 + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM; size->height = resize->height * 5 + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
break; break;
case WID_PLN_NEW:
*size = adddim(maxdim(GetStringBoundingBox(STR_PLANS_NEW_PLAN), GetStringBoundingBox(STR_PLANS_ADDING_LINES)), padding);
break;
case WID_PLN_ADD_LINES:
*size = adddim(GetStringBoundingBox(STR_PLANS_ADD_LINES), padding);
break;
case WID_PLN_VISIBILITY:
*size = adddim(maxdim(GetStringBoundingBox(STR_PLANS_VISIBILITY_PRIVATE), GetStringBoundingBox(STR_PLANS_VISIBILITY_PUBLIC)), padding);
break;
case WID_PLN_COLOUR: {
Dimension dim = GetStringBoundingBox(STR_PLANS_COLOUR);
for (uint8 colour = COLOUR_BEGIN; colour != COLOUR_END; ++colour) {
dim = maxdim(dim, GetStringBoundingBox(STR_COLOUR_DARK_BLUE + colour));
}
*size = adddim(dim, padding);
break;
}
case WID_PLN_DELETE:
*size = adddim(GetStringBoundingBox(STR_PLANS_DELETE), padding);
break;
case WID_PLN_RENAME:
*size = adddim(GetStringBoundingBox(STR_BUTTON_RENAME), padding);
break;
} }
} }