Mercurial > hg > ltpda
diff m-toolbox/m/gui/ltpdv/callbacks/ltpdv_load_objects.m @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/m-toolbox/m/gui/ltpdv/callbacks/ltpdv_load_objects.m Wed Nov 23 19:22:13 2011 +0100 @@ -0,0 +1,44 @@ +function ltpdv_load_objects(varargin) + +% Handles +myh = varargin{1}; +mainfig = varargin{end}; + +% Get filename from user +[filename, pathname] = uigetfile( ... + {'*.mat', 'MATLAB MAT Files (*.mat)'; ... + '*.xml', 'LTPDA XML Files (*.xml)'}, ... + 'Select a file'); + +if isequal(filename,0) || isequal(pathname,0) + disp('Cancelled.') +else + fname = fullfile(pathname, filename); + + % split filename up + [pathstr, name, ext] = fileparts(fname); + + switch ext + case '.mat' + + obj = load(fname); + + case '.xml' + + root_node = xmlread(filename); + obj = utils.xml.xmlread(root_node); + + otherwise + error('### Unsupported file format.'); + end +end + +% Add this object to the list +objs = getappdata(mainfig, 'LTPDAobjects'); +setappdata(mainfig, 'LTPDAobjects', [objs {obj}]); +% Refresh object list +ltpdv_refresh_object_list(mainfig); + + + +% END \ No newline at end of file