diff --git a/src/openrct2-ui/scripting/ScWidget.hpp b/src/openrct2-ui/scripting/ScWidget.hpp index b08a638352..55537a455f 100644 --- a/src/openrct2-ui/scripting/ScWidget.hpp +++ b/src/openrct2-ui/scripting/ScWidget.hpp @@ -366,13 +366,35 @@ namespace OpenRCT2::Scripting static void Register(duk_context* ctx) { dukglue_set_base_class(ctx); + dukglue_register_property(ctx, &ScListViewWidget::canSelect_get, &ScListViewWidget::canSelect_set, "canSelect"); dukglue_register_property(ctx, &ScListViewWidget::isStriped_get, &ScListViewWidget::isStriped_set, "isStriped"); + dukglue_register_property( + ctx, &ScListViewWidget::showColumnHeaders_get, &ScListViewWidget::showColumnHeaders_set, "showColumnHeaders"); dukglue_register_property(ctx, &ScListViewWidget::highlightedCell_get, nullptr, "highlightedCell"); dukglue_register_property( ctx, &ScListViewWidget::selectedCell_get, &ScListViewWidget::selectedCell_set, "selectedCell"); } private: + bool canSelect_get() const + { + auto listView = GetListView(); + if (listView != nullptr) + { + return listView->CanSelect; + } + return false; + } + + void canSelect_set(bool value) + { + auto listView = GetListView(); + if (listView != nullptr) + { + listView->CanSelect = value; + } + } + bool isStriped_get() const { auto listView = GetListView(); @@ -392,6 +414,25 @@ namespace OpenRCT2::Scripting } } + bool showColumnHeaders_get() const + { + auto listView = GetListView(); + if (listView != nullptr) + { + return listView->ShowColumnHeaders; + } + return false; + } + + void showColumnHeaders_set(bool value) + { + auto listView = GetListView(); + if (listView != nullptr) + { + listView->ShowColumnHeaders = value; + } + } + DukValue highlightedCell_get() { auto ctx = GetContext()->GetScriptEngine().GetContext();