Home > functions > gui > bm_editor > bm_edit_app_util > bm_edit_app_util_get_file.m

bm_edit_app_util_get_file

PURPOSE ^

file selection dialog

SYNOPSIS ^

function [file_name, cancelled] = bm_edit_app_util_get_file(extension, caption)

DESCRIPTION ^

 file selection dialog
 [USAGE]
    [file_name, cancelled] = bm_edit_app_util_get_file(<extension>, <caption>);
 [IN]
    extension : cell array
                ex.{'.brain.mat', '.head.mat'};
    caption   : dialog caption
 [OUT]
    file_name : selected file path(fullpath).
    cancelled : true  @ when user pushed cancel button.
                false @ user selected file

 Copyright (C) 2011, ATR All Rights Reserved.
 License : New BSD License(see VBMEG_LICENSE.txt)

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [file_name, cancelled] = bm_edit_app_util_get_file(extension, caption)
0002 % file selection dialog
0003 % [USAGE]
0004 %    [file_name, cancelled] = bm_edit_app_util_get_file(<extension>, <caption>);
0005 % [IN]
0006 %    extension : cell array
0007 %                ex.{'.brain.mat', '.head.mat'};
0008 %    caption   : dialog caption
0009 % [OUT]
0010 %    file_name : selected file path(fullpath).
0011 %    cancelled : true  @ when user pushed cancel button.
0012 %                false @ user selected file
0013 %
0014 % Copyright (C) 2011, ATR All Rights Reserved.
0015 % License : New BSD License(see VBMEG_LICENSE.txt)
0016 
0017 %
0018 % --- Previous check
0019 %
0020 if ~exist('extension', 'var')
0021     error('extension is a required parameter.');
0022 end
0023 
0024 if ~exist('caption', 'var')
0025     error('caption is a required parameter.');
0026 end
0027 
0028 %
0029 % --- Main Procedure
0030 %
0031 cancelled = false;
0032 file_name = [];
0033 
0034 %
0035 % --- file dialog open
0036 %
0037 
0038 % save current directory
0039 current_dir = pwd;
0040 
0041 % change to previous opened directory
0042 previous_opened = [tempdir, 'bm_edit_app_util_get_file.mat'];
0043 previous_dir = [];
0044 if exist(previous_opened, 'file') ~= 2
0045     previous_dir = pwd;
0046 else
0047     load(previous_opened, 'pname');
0048     previous_dir = pname;
0049     if exist(previous_dir, 'dir') ~= 7
0050         previous_dir = pwd;
0051     end
0052 end
0053 cd(previous_dir);
0054 
0055 file_name = [];
0056 h = file_dialog;
0057 h.save_mode = 0;
0058 h.file_extensions = extension;
0059 [ pname fname ] = visible(h);
0060 if length(pname)
0061     file_name = fullfile(pname, fname{1});
0062     % save opened directory
0063     vb_fsave(previous_opened, 'pname');
0064 else
0065     cancelled = true;
0066 end
0067 
0068 
0069 % move to first directory
0070 cd(current_dir);
0071 
0072 % wait for redraw
0073 pause(0.01);

Generated on Tue 27-Aug-2013 11:46:04 by m2html © 2005