0001 function varargout = Menu_Crea_Model_PCA(varargin)
0002
0003
0004
0005
0006
0007
0008
0009
0010 gui_Singleton = 1;
0011 gui_State = struct('gui_Name', mfilename, ...
0012 'gui_Singleton', gui_Singleton, ...
0013 'gui_OpeningFcn', @Menu_Crea_Model_PCA_OpeningFcn, ...
0014 'gui_OutputFcn', @Menu_Crea_Model_PCA_OutputFcn, ...
0015 'gui_LayoutFcn', [] , ...
0016 'gui_Callback', []);
0017 if nargin && ischar(varargin{1})
0018 gui_State.gui_Callback = str2func(varargin{1});
0019 end
0020
0021 if nargout
0022 [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
0023 else
0024 gui_mainfcn(gui_State, varargin{:});
0025 end
0026
0027
0028 function Menu_Crea_Model_PCA_OpeningFcn(hObject, ~, handles, varargin)
0029
0030
0031
0032
0033 handles.output = hObject;
0034 guidata(hObject, handles);
0035
0036 x=evalin('base','whos();');
0037 list=[];
0038 for i=1:length(x)
0039 if strcmp(x(i).class,'DATA') ~=0
0040 list=[list; {x(i).name}];
0041 end
0042 end
0043 if isempty(list)
0044 list={'No DATA object in workspace'};
0045 end
0046 set(handles.llistadades,'String',list);
0047
0048
0049
0050 function varargout = Menu_Crea_Model_PCA_OutputFcn(~, ~, handles)
0051 varargout{1} = handles.output;
0052
0053
0054
0055 function llistadades_Callback(~, ~, ~)
0056
0057
0058 function llistadades_CreateFcn(hObject, ~, ~)
0059 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
0060 set(hObject,'BackgroundColor','white');
0061 end
0062
0063
0064
0065 function LoadDades_Callback(~, ~, ~)
0066 uiwait(Menu_Load_Dades());
0067
0068
0069 function edit1_Callback(~, ~, ~)
0070
0071
0072 function edit1_CreateFcn(hObject, ~, ~)
0073 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
0074 set(hObject,'BackgroundColor','white');
0075 end
0076
0077
0078
0079 function Genera_Callback(~, ~, handles)
0080 try
0081 variable=get(handles.llistadades,'String');
0082 variable=variable{get(handles.llistadades,'Value')};
0083
0084
0085 nom=get(handles.edit1,'String');
0086
0087
0088 if ~isempty(evalin('base',['whos([''' nom '''])'] ))
0089 choice = questdlg('Selected Name is in use, do you want to oberwrite?', 'Attention', 'Yes','No','No');
0090 switch choice
0091 case 'Yes'
0092
0093
0094 evalin('base',[nom '=PCA(' variable ');']);
0095
0096 close('Menu_Crea_Model_PCA');
0097 Update_Caller();
0098
0099 case 'No'
0100
0101 end
0102 else
0103
0104 evalin('base',[nom '=PCA(' variable ');']);
0105
0106 close('Menu_Crea_Model_PCA');
0107 Update_Caller();
0108 end
0109
0110 catch err
0111 errordlg(err.message,'Error');
0112 end
0113
0114 function Update(hObject, ~, handles)
0115 handles.output = hObject;
0116
0117
0118 x=evalin('base','whos();');
0119 list=[];
0120 for i=1:length(x)
0121 if strcmp(x(i).class,'DATA') ~=0
0122 list=[list; {x(i).name}];
0123 end
0124 end
0125 if isempty(list)
0126 list={'No DATA Object in workspace'};
0127 end
0128
0129
0130 nom=get(handles.llistadades,'String');
0131 nom=nom{get(handles.llistadades,'Value')};
0132
0133
0134
0135
0136 val=find(strcmp(nom,list));
0137 set(handles.llistadades,'String',list);
0138
0139 if isempty(val)
0140 set(handles.llistadades,'Value',1);
0141
0142
0143
0144 else
0145 set(handles.llistadades,'Value',val);
0146 end
0147 guidata(hObject, handles);