mirror of https://github.com/OpenRCT2/OpenRCT2.git
Extract plugin widget validation logic to separate function
This commit is contained in:
parent
717682a21f
commit
5221e8ee9f
|
@ -146,22 +146,18 @@ namespace OpenRCT2::Scripting
|
|||
auto buttonWidget = widget + 1;
|
||||
buttonWidget->left += delta;
|
||||
buttonWidget->right += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
}
|
||||
else if (widget->type == WindowWidgetType::Spinner)
|
||||
{
|
||||
auto upWidget = widget + 1;
|
||||
upWidget->left += delta;
|
||||
upWidget->right += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
|
||||
auto downWidget = widget + 2;
|
||||
downWidget->left += delta;
|
||||
downWidget->right += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 2);
|
||||
}
|
||||
|
||||
Invalidate();
|
||||
Invalidate(widget);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -190,22 +186,18 @@ namespace OpenRCT2::Scripting
|
|||
auto buttonWidget = widget + 1;
|
||||
buttonWidget->top += delta;
|
||||
buttonWidget->bottom += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
}
|
||||
else if (widget->type == WindowWidgetType::Spinner)
|
||||
{
|
||||
auto upWidget = widget + 1;
|
||||
upWidget->top += delta;
|
||||
upWidget->bottom += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
|
||||
auto downWidget = widget + 2;
|
||||
downWidget->top += delta;
|
||||
downWidget->bottom += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 2);
|
||||
}
|
||||
|
||||
Invalidate();
|
||||
Invalidate(widget);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -233,22 +225,18 @@ namespace OpenRCT2::Scripting
|
|||
auto buttonWidget = widget + 1;
|
||||
buttonWidget->left += delta;
|
||||
buttonWidget->right += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
}
|
||||
else if (widget->type == WindowWidgetType::Spinner)
|
||||
{
|
||||
auto upWidget = widget + 1;
|
||||
upWidget->left += delta;
|
||||
upWidget->right += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
|
||||
auto downWidget = widget + 2;
|
||||
downWidget->left += delta;
|
||||
downWidget->right += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 2);
|
||||
}
|
||||
|
||||
Invalidate();
|
||||
Invalidate(widget);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -275,20 +263,16 @@ namespace OpenRCT2::Scripting
|
|||
{
|
||||
auto buttonWidget = widget + 1;
|
||||
buttonWidget->bottom += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
}
|
||||
else if (widget->type == WindowWidgetType::Spinner)
|
||||
{
|
||||
auto upWidget = widget + 1;
|
||||
upWidget->bottom += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
|
||||
auto downWidget = widget + 2;
|
||||
downWidget->bottom += delta;
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 2);
|
||||
}
|
||||
|
||||
Invalidate();
|
||||
Invalidate(widget);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -429,6 +413,23 @@ namespace OpenRCT2::Scripting
|
|||
return false;
|
||||
}
|
||||
|
||||
void Invalidate(const Widget* widget)
|
||||
{
|
||||
if (widget != nullptr)
|
||||
{
|
||||
if (widget->type == WindowWidgetType::DropdownMenu)
|
||||
{
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
}
|
||||
else if (widget->type == WindowWidgetType::Spinner)
|
||||
{
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 1);
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex + 2);
|
||||
}
|
||||
}
|
||||
Invalidate();
|
||||
}
|
||||
|
||||
void Invalidate()
|
||||
{
|
||||
WidgetInvalidateByNumber(_class, _number, _widgetIndex);
|
||||
|
|
Loading…
Reference in New Issue