From 8259472f4cfca1eb0fa946b07575942479fe6c78 Mon Sep 17 00:00:00 2001 From: Dan Macumber Date: Sat, 7 Sep 2024 14:27:03 -0600 Subject: [PATCH] Filter out incompatible versions of OpenStudio Application --- plugin/openstudio/startup.rb | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/plugin/openstudio/startup.rb b/plugin/openstudio/startup.rb index 6609497..d3ee029 100644 --- a/plugin/openstudio/startup.rb +++ b/plugin/openstudio/startup.rb @@ -17,17 +17,35 @@ prompts = ["Path to OpenStudio Root Directory"] is_windows = (RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/) + base_dir = nil if is_windows if sketchup_version >= 19 - defaults = Dir.glob('C:/openstudioapplication-*').sort.reverse + base_dir = 'C:/openstudioapplication-*' else - defaults = Dir.glob('C:/openstudio-2.*').sort.reverse + base_dir = 'C:/openstudio-2.*' end else if sketchup_version >= 19 - defaults = Dir.glob('/Applications/OpenStudioApplication-*').sort.reverse + base_dir = '/Applications/OpenStudioApplication-*' else - defaults = ['/Applications/OpenStudio-2*'] + base_dir = '/Applications/OpenStudio-2*' + end + end + + defaults = Dir.glob(base_dir).sort.reverse + if sketchup_version >= 19 + defaults.reject! do |file| + if md = /openstudioapplication-(\d+)\.(\d+)/i.match(file) + if sketchup_version >= 24 + # SketchUp 2024 requires OpenStudio Application 1.8.0 or higher + md[1].to_i == 1 and md[2].to_i < 8 + else + # SketchUp 2019-2023 requires OpenStudio Application 1.7.0 or lower + md[1].to_i > 1 or md[2].to_i > 7 + end + else + true + end end end