From 24b6383afb6cfec838e2855cb41d69e95afdbb65 Mon Sep 17 00:00:00 2001 From: Ylva Selling Date: Tue, 26 Apr 2022 17:37:05 -0400 Subject: [PATCH] Create lua function to show or hide all targets and browsers --- modules/skybrowser/skybrowsermodule.cpp | 3 ++- modules/skybrowser/skybrowsermodule_lua.inl | 14 ++++++++++++++ modules/skybrowser/src/targetbrowserpair.cpp | 2 +- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/modules/skybrowser/skybrowsermodule.cpp b/modules/skybrowser/skybrowsermodule.cpp index 60d580c625..d731fed830 100644 --- a/modules/skybrowser/skybrowsermodule.cpp +++ b/modules/skybrowser/skybrowsermodule.cpp @@ -434,7 +434,8 @@ scripting::LuaLibrary SkyBrowserModule::luaLibrary() const { codegen::lua::StartFinetuningTarget, codegen::lua::FinetuneTargetPosition, codegen::lua::ScrollOverBrowser, - codegen::lua::LoadingImageCollectionComplete + codegen::lua::LoadingImageCollectionComplete, + codegen::lua::ShowAllTargetsAndBrowsers } }; } diff --git a/modules/skybrowser/skybrowsermodule_lua.inl b/modules/skybrowser/skybrowsermodule_lua.inl index a2cb92b4d0..2b5607a4f1 100644 --- a/modules/skybrowser/skybrowsermodule_lua.inl +++ b/modules/skybrowser/skybrowsermodule_lua.inl @@ -735,6 +735,20 @@ namespace { } } +/** + * Show or hide all targets and browsers + * \param identifier Identifier of the sky browser + * \param show Sets if the targets and browsers should be enabled or disabled + */ +[[codegen::luawrap]] void showAllTargetsAndBrowsers(bool show) { + using namespace openspace; + SkyBrowserModule* module = global::moduleEngine->module(); + const std::vector>& pairs = module->getPairs(); + for (const std::unique_ptr& pair : pairs) { + pair->setEnabled(show); + } +} + #include "skybrowsermodule_lua_codegen.cpp" } // namespace diff --git a/modules/skybrowser/src/targetbrowserpair.cpp b/modules/skybrowser/src/targetbrowserpair.cpp index 04a2f4f042..a2314d1089 100644 --- a/modules/skybrowser/src/targetbrowserpair.cpp +++ b/modules/skybrowser/src/targetbrowserpair.cpp @@ -123,7 +123,7 @@ void TargetBrowserPair::synchronizeAim() { void TargetBrowserPair::setEnabled(bool enable) { _browser->setEnabled(enable); - _targetRenderable->property("Enabled")->set(false); + _targetRenderable->property("Enabled")->set(enable); } void TargetBrowserPair::setOpacity(float opacity) {