From fc842c17f0793efd21a16d14d5a103d32d386816 Mon Sep 17 00:00:00 2001 From: James Turner Date: Wed, 4 Jan 2023 15:21:59 +0000 Subject: [PATCH] Canvas: LayoutItem.setVisible can be chained Wrap LayoutItem::setVisible so it returns self, and hence can be chained, similar to methods implemented in Nasal. --- src/Scripting/NasalCanvas.cxx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/Scripting/NasalCanvas.cxx b/src/Scripting/NasalCanvas.cxx index 85c2a0e57..cc5c067f7 100644 --- a/src/Scripting/NasalCanvas.cxx +++ b/src/Scripting/NasalCanvas.cxx @@ -361,6 +361,13 @@ static naRef f_customEventGetDetail( sc::CustomEvent& event, ); } +static naRef f_layoutItemSetVisible(sc::LayoutItem& item, + const nasal::CallContext& ctx) +{ + item.setVisible(ctx.getArg(0, true)); + return ctx.me; +} + static naRef f_boxLayoutAddItem( sc::BoxLayout& box, const nasal::CallContext& ctx ) { @@ -599,7 +606,7 @@ naRef initNasalCanvas(naRef globals, naContext c) .method("minimumHeightForWidth", &sc::LayoutItem::minimumHeightForWidth) .method("setAlignment", &sc::LayoutItem::setAlignment) .method("alignment", &sc::LayoutItem::alignment) - .method("setVisible", &sc::LayoutItem::setVisible) + .method("setVisible", f_layoutItemSetVisible) .method("isVisible", &sc::LayoutItem::isVisible) .method("isExplicitlyHidden", &sc::LayoutItem::isExplicitlyHidden) .method("show", &sc::LayoutItem::show)