Fix: Improve sprite aligner list size and alignment.

This commit is contained in:
Peter Nelson 2022-12-17 10:36:32 +00:00 committed by PeterN
parent 8adc47858d
commit 5eb7e1d3ab

View File

@ -865,6 +865,8 @@ struct SpriteAlignerWindow : Window {
size->height = ScaleGUITrad(200); size->height = ScaleGUITrad(200);
break; break;
case WID_SA_LIST: case WID_SA_LIST:
SetDParamMaxDigits(0, 6);
size->width = GetStringBoundingBox(STR_BLACK_COMMA).width + padding.width;
resize->height = FONT_HEIGHT_NORMAL + padding.height; resize->height = FONT_HEIGHT_NORMAL + padding.height;
resize->width = 1; resize->width = 1;
fill->height = resize->height; fill->height = resize->height;
@ -914,7 +916,7 @@ struct SpriteAlignerWindow : Window {
std::vector<SpriteID> &list = _newgrf_debug_sprite_picker.sprites; std::vector<SpriteID> &list = _newgrf_debug_sprite_picker.sprites;
int max = std::min<int>(this->vscroll->GetPosition() + this->vscroll->GetCapacity(), (uint)list.size()); int max = std::min<int>(this->vscroll->GetPosition() + this->vscroll->GetCapacity(), (uint)list.size());
Rect ir = r.Shrink(WidgetDimensions::scaled.framerect); Rect ir = r.Shrink(WidgetDimensions::scaled.matrix);
for (int i = this->vscroll->GetPosition(); i < max; i++) { for (int i = this->vscroll->GetPosition(); i < max; i++) {
SetDParam(0, list[i]); SetDParam(0, list[i]);
DrawString(ir, STR_BLACK_COMMA, TC_FROMSTRING, SA_RIGHT | SA_FORCE); DrawString(ir, STR_BLACK_COMMA, TC_FROMSTRING, SA_RIGHT | SA_FORCE);