From 0f462c546c0c0ed3871f7a6a81525ff9e8f9f20e Mon Sep 17 00:00:00 2001 From: Jacques Grelet <Jacques.grelet@ird.fr> Date: Mon, 14 Jan 2019 13:35:14 +0100 Subject: [PATCH] fix #2 undo menu enable when automatic QC is apply first improve redo usage and menu setting correct a bug inside QC_SelectCallback function : tsg.qc_history_pointer was use to enable redo menu instead off tsg.qc_redo_possible --- tsg_util/updateTsgStructWithUndoLevels.m | 1 + tsgqc.m | 23 ++++++++++++++++------- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/tsg_util/updateTsgStructWithUndoLevels.m b/tsg_util/updateTsgStructWithUndoLevels.m index 2aee46f..c1345ac 100644 --- a/tsg_util/updateTsgStructWithUndoLevels.m +++ b/tsg_util/updateTsgStructWithUndoLevels.m @@ -46,6 +46,7 @@ if isfield(tsg,'qc_history_size') (1+tsg.qc_history_pointer-new_qc_history_size):tsg.qc_history_pointer); tsg.qc_history_pointer = size(tsg.qc_history_state,2); tsg.qc_redo_possible = 0; + set(findobj('tag','UIMENU_REDO'),'enable','off'); end diff --git a/tsgqc.m b/tsgqc.m index 0a1adf4..419a5a8 100644 --- a/tsgqc.m +++ b/tsgqc.m @@ -54,7 +54,7 @@ global DEFAULT_PATH_FILE % ------------------------------------------------------------------- VERSION = 1.50; % -> 1.44 CHAR_VERSION = '1.50RC2'; -DATE_VERSION = '01/11/2019'; +DATE_VERSION = '01/14/2019'; % netcdf file version, see DATA FORMAT TSG document: % CORTSG_format_gosud.doc @@ -2564,6 +2564,12 @@ end plot_map( hMainFig, hPlotAxes); end + % enable Undo menu if QC flags applied + % ------------------------------------ + if (tsg.qc_history_pointer > 0) + set(findobj('tag','UIMENU_UNDO'),'enable','on'); + end + end @@ -2740,7 +2746,7 @@ end % enable Redo menu if QC flags applied % ------------------------------------ - if (tsg.qc_history_pointer > 0) + if (tsg.qc_redo_possible > 0) set(findobj('tag','UIMENU_REDO'),'enable','on'); end @@ -2868,7 +2874,7 @@ end tsg.qc_history_state(:,tsg.qc_history_pointer) = tsg.([PARA{1} '_QC']); tsg.qc_redo_possible = 0; - + set(findobj('tag','UIMENU_REDO'),'enable','off'); % Modify the QC % -------------- @@ -4573,6 +4579,7 @@ end % Allow redo % ---------- tsg.qc_redo_possible = tsg.qc_redo_possible + 1; + set(findobj('tag','UIMENU_REDO'),'enable','on'); % Save the modifications % ---------------------- @@ -4612,7 +4619,7 @@ end % ----------------------------------------------------------------------- function RedoMenuCallback(src, evnt) - if (tsg.qc_redo_possible >0) + if (tsg.qc_redo_possible > 0) % Get the parameter (SSPS, SSJT or SSTP) % -------------------------------------- @@ -4626,7 +4633,10 @@ end % Reduce number of possible redo % ------------------------------ tsg.qc_redo_possible = tsg.qc_redo_possible-1; - + if tsg.qc_redo_possible == 0 + set(findobj('tag','UIMENU_REDO'),'enable','off'); + end + % Save the modifications % ---------------------- setappdata( hMainFig, 'tsg_data', tsg); @@ -4652,8 +4662,7 @@ end else - msgbox('Redo not possible', 'modal'); - + msgbox('Redo not possible', 'modal'); end -- GitLab