From 4e2305f14628d426d081919b35acec07cac061dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=B3ra=20Kocsis?= <dora@dynare.org> Date: Thu, 27 Feb 2020 11:47:17 +0100 Subject: [PATCH] fix bug in mapping nested options in set_command_option --- src/+gui_auxiliary/set_command_option.m | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/+gui_auxiliary/set_command_option.m b/src/+gui_auxiliary/set_command_option.m index 77745f7..3c69a46 100644 --- a/src/+gui_auxiliary/set_command_option.m +++ b/src/+gui_auxiliary/set_command_option.m @@ -102,11 +102,11 @@ try case 'mcmc_jumping_covariance' if value == 2 - options_.(gui_auxiliary.command_option_mapping(name)) = 'prior_variance'; + eval(['options_.' gui_auxiliary.command_option_mapping(name) 'prior_variance;']); elseif value == 3 - options_.(gui_auxiliary.command_option_mapping(name)) = 'identity_matrix'; + eval(['options_.' gui_auxiliary.command_option_mapping(name) 'identity_matrix;']); elseif value == 4 - options_.(gui_auxiliary.command_option_mapping(name)) = 'FILENAME'; + eval(['options_.' gui_auxiliary.command_option_mapping(name) 'FILENAME;']); end case 'mcmc_jumping_covariance_file' @@ -114,8 +114,16 @@ try options_.MCMC_jumping_covariance = strrep(value, '.mat', ''); end + case 'mh_recover' + options_.mh_recover = logical(value); + otherwise - options_.(gui_auxiliary.command_option_mapping(name)) = value; + if isnumeric(value) + eval(['options_.' gui_auxiliary.command_option_mapping(name) '=' num2str(value) ';']); + else + eval_expr = sprintf("options_.%s='%s';", gui_auxiliary.command_option_mapping(name), value); + eval(eval_expr); + end end catch status = 0; -- GitLab