From edc0cf75157cc7dfb8ca3dcf1f0f162064262f4b Mon Sep 17 00:00:00 2001
From: Jacques Grelet <jacques.grelet@ird.fr>
Date: Fri, 14 Mar 2008 10:52:28 +0000
Subject: [PATCH] supprime la srtucture root, desactive pour test la sauvegarde
 des preferences

---
 tsg_io/readTsgDataXML.m       | 22 ++++++++++++----------
 tsg_util/tsg_initialisation.m | 14 +++++---------
 tsg_util/tsg_preferences.m    | 24 ++++++++----------------
 tsgqc_GUI.m                   | 32 +++++++-------------------------
 4 files changed, 32 insertions(+), 60 deletions(-)

diff --git a/tsg_io/readTsgDataXML.m b/tsg_io/readTsgDataXML.m
index 0958f0c..c11ee34 100644
--- a/tsg_io/readTsgDataXML.m
+++ b/tsg_io/readTsgDataXML.m
@@ -87,18 +87,20 @@ disp( [num2str(nb),' records'] );
 A=A';
 
 % test si filtre median necessaire
-root = get(0, 'UserData' );
+
 prompt = {'Enter median filter size:'};
 dlg_title = 'Input for median filter';
 num_lines = 1;
-size = inputdlg(prompt,dlg_title,num_lines,{num2str(root.medianSize)});
+size = inputdlg(prompt,dlg_title,num_lines,{num2str(tsg.medianSize)});
 % si l'utilisateur sort par cancel, pas de filtre mais on ne sauvegarde pas
-% la structure root
+% la structure tsg
 if (isempty(size))
-  root.medianSize = 0;
+  tsg.medianSize = 0;
 else  
-  root.medianSize = str2num(size{1});
-  set(0, 'UserData', root );
+  tsg.medianSize = str2num(size{1});
+  % Save tsg structure 
+  % ------------------
+  setappdata( hMainFig, 'tsg_data', tsg);
 end
 
 % gere les dates
@@ -127,20 +129,20 @@ for i = 1 : length(cles)
       %  days(k) = to_day(year_base,to_date(year(k), data(k), 'n'));
       %end
       days = to_day(year_base,to_date(year,data,'n'));
-      if (root.medianSize > 0 )
+      if (tsg.medianSize > 0 )
         % filtre median
-        days = medianf( days, root.medianSize );
+        days = medianf( days, tsg.medianSize );
         % affichage de la taille apres 
         fprintf('...find %d records after median filter', length(days) );
       end  % cas de thermo antea
       self = set(self, 'data_1d', cles{i}, days);
       assignin('base', cles{i}, days );
     case {'LATX','LONX' }
-      if (root.medianSize > 0 ); data = medianf( data, root.medianSize ); end  % cas de thermo antea
+      if (tsg.medianSize > 0 ); data = medianf( data, tsg.medianSize ); end  % cas de thermo antea
       self = set(self, 'data_1d', cles{i}, data);
       assignin('base', cles{i}, data );
     otherwise
-      if (root.medianSize > 0 ); data = medianf( data, root.medianSize ); end  % cas de thermo antea
+      if (tsg.medianSize > 0 ); data = medianf( data, tsg.medianSize ); end  % cas de thermo antea
       self = set(self, 'data_2d', cles{i}, data);
       assignin('base', cles{i}, data);
   end
diff --git a/tsg_util/tsg_initialisation.m b/tsg_util/tsg_initialisation.m
index 6aea132..70f11a1 100644
--- a/tsg_util/tsg_initialisation.m
+++ b/tsg_util/tsg_initialisation.m
@@ -173,16 +173,12 @@ tsg.DATE_CREATION         =  [date(1:8) date(10:15)];
 tsg.DATE_UPDATE           =  tsg.DATE_CREATION; 
 tsg.REFERENCE_DATE_TIME   =  REFERENCE_DATE_TIME;
 
+% init tsg preference to default values
+% -------------------------------------
+tsg.preference.autoload  = 'off';
+tsg.preference.parameter = 'SSPS';
+
 % Save tsg structure 
 % ------------------
 setappdata( hMainFig, 'tsg_data', tsg);
 
-% init root structure to default values
-% -------------------------------------
-root.preference.autoload  = 'off';
-root.version              = 'unknown';
-root.preference.parameter = 'SSPS';
-
-% Save root structure in MainFig
-% ------------------------------
-set( 0, 'userdata', root );
diff --git a/tsg_util/tsg_preferences.m b/tsg_util/tsg_preferences.m
index 093c512..793f885 100644
--- a/tsg_util/tsg_preferences.m
+++ b/tsg_util/tsg_preferences.m
@@ -30,8 +30,8 @@ config_file = [prefdir, filesep, app_name, '.mat'];
 % desactive la gestion des preferences, car la classe tsg.qc.hash (tsg_nc)
 % est transformee en structure lors de l'ecriture, a verifier
 % -----------------------------------------------------------
-fid = fopen( config_file, 'r' );
-%fid = -2;
+%fid = fopen( config_file, 'r' );
+fid = -2;
 
 % test fopen return value
 % -----------------------
@@ -69,13 +69,13 @@ switch fid
 
     % display waitbar
     % ---------------
-    waitbar( 1/10, wb, 'loading structure root' );
+    waitbar( 1/10, wb, 'loading structure tsg' );
 
     try
 
       % if file exist, load in workspace
       % --------------------------------
-      load( config_file, 'root', 'tsg' );
+      load( config_file, 'tsg' );
 
     catch
 
@@ -92,7 +92,7 @@ switch fid
 
     % If there no field version or wrong version, initialize
     % -------------------------------------------------------
-    if ~isfield( root, 'version') || ~strcmp(root.version, VERSION)
+    if ~isfield( tsg, 'version') || ~strcmp(tsg.version, VERSION)
 
       % call new config private function
       % --------------------------------
@@ -137,10 +137,6 @@ end
 % ------------------
 setappdata( hTsgGUI, 'tsg_data', tsg);
 
-% save root in userdata property
-% ------------------------------
-set(0, 'userdata', root);
-
 
 % ----------------------------------------------------------------------
 % nested function new_config
@@ -155,13 +151,9 @@ set(0, 'userdata', root);
     % -------------------------------------
     tsg = getappdata( hTsgGUI, 'tsg_data');
 
-    % save root and tsg to 'prefdir.mat' file
-    % ---------------------------------------
-    save(config_file, 'root', 'tsg');
-
-    % save root in root object for next use
-    % -------------------------------------
-    set(0, 'userdata', root);
+    % save  tsg to 'prefdir.mat' file
+    % -------------------------------
+    save(config_file, 'tsg');
 
   end
 
diff --git a/tsgqc_GUI.m b/tsgqc_GUI.m
index 2f00239..06510bf 100644
--- a/tsgqc_GUI.m
+++ b/tsgqc_GUI.m
@@ -37,13 +37,7 @@ clc;
 % -------------------------------------
 global VERSION
 
-VERSION = '0.2d';
-
-% reset userdata property of root Matlab object if it is not empty
-% ----------------------------------------------------------------
- if ~isempty(get(0,'Userdata'))
-   set(0, 'userdata', []);
- end
+VERSION = '0.2f';
  
 % Find program directory.
 % functions (icons) should be store at a lower level
@@ -113,10 +107,6 @@ hMainFig = figure(...
 % -----------------------------------------------------
 tsg_preferences(hMainFig, tsgqcname, DEFAULT_PATH_FILE);
 
-% get root struct from root object
-% --------------------------------
-root = get(0,'Userdata');
-
 % Retrieve named application data
 % -------------------------------
 tsg = getappdata( hMainFig, 'tsg_data');
@@ -233,7 +223,7 @@ end
 % --------------------------------------------------------
 hOptionMenu = uimenu(hMainFig,'Label','Option');
 uimenu(hOptionMenu,'Label','Preferences',...
-  'Checked', root.preference.autoload,...
+  'Checked', tsg.preference.autoload,...
   'Tag','TAG_UIMENU_OPTION_PREFERENCES',...
   'Enable', 'on',...
   'Callback', {@PreferencesMenuCallback});
@@ -918,7 +908,7 @@ hrbInterpCancel = uicontrol( ...
 
 %% test if user preference autoload field is checked (on)
 % -------------------------------------------------------
-if strcmp(root.preference.autoload, 'on')
+if strcmp(tsg.preference.autoload, 'on')
   
   % this code need to be fatorized file/open menu
   % ---------------------------------------------
@@ -2400,23 +2390,19 @@ end
       
       % set preference autoload off (unchecked)
       % ---------------------------------------
-      root.preference.autoload = 'off';
+      tsg.preference.autoload = 'off';
       
     else
       
       % set preference autoload on (checked)
       % ------------------------------------
-      root.preference.autoload = 'on';
+      tsg.preference.autoload = 'on';
       
     end
 
      % set current option/preference submenu state
      % -------------------------------------------
-     set(hObject, 'checked', root.preference.autoload);
-     
-    % store root struct to root UserData
-    % ----------------------------------
-    set(0, 'userdata', root);
+     set(hObject, 'checked', tsg.preference.autoload);
     
   end
 
@@ -2545,10 +2531,6 @@ end
   % -----------------------------------------------------------------
   function QuitMenuCallback(hObject, eventdata)  
 
-    % get root struct from root object
-    % --------------------------------
-    root = get(0,'Userdata');
-
     % save config mat file in prefdir
     % -------------------------------
     config_file = [prefdir, filesep, tsgqcname, '.mat'];
@@ -2559,7 +2541,7 @@ end
 
     % save preference mat file
     % ------------------------
-    save( config_file, 'root', 'tsg');
+    save( config_file, 'tsg');
 
     % If the data have been modified and not save, the program
     % ask to save the data
-- 
GitLab