0001 function handles=menu(handles)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 if not(isfield(handles,'hemexecutat'))
0012 handles.hemexecutat=1;
0013
0014
0015 f0 = uimenu(gcf,'Label','Main');
0016 uimenu(f0,'Label','Main Window','Callback','Pantalla_Principal');
0017 uimenu(f0,'Label','Close','Callback','close all');
0018 handles.menu.f0=f0;
0019
0020
0021
0022 f1 = uimenu(gcf,'Label','DATA');
0023 handles.menu.f1=f1;
0024
0025 f11 = uimenu(f1,'Label','Create');
0026 uimenu(f11,'Label','Load DATA from file','Callback','uiwait(Menu_Load_Dades);');
0027 uimenu(f11,'Label','Load DATA from workspace','Callback','uiwait(Menu_Crear_Dades);');
0028
0029 handles.menu.f11=f11;
0030
0031 f111 = uimenu(f1,'Label','Save');
0032 uimenu(f111,'Label','Save DATA','Callback','Menu_Save_Dades');
0033
0034 handles.menu.f111=f111;
0035
0036 f12 = uimenu(f1,'Label','Edit');
0037 uimenu(f12,'Label','Edit an object','Callback','Menu_Editar_Dades2');
0038 uimenu(f12,'Label','Move Batch between objects','Callback','Menu_Canvia_Lots');
0039 handles.menu.f12=f12;
0040
0041
0042
0043
0044
0045
0046
0047
0048 f2 = uimenu(gcf,'Label','PCA');
0049 handles.menu.f2=f2;
0050
0051 f21 = uimenu(f2,'Label','Create');
0052 uimenu(f21,'Label','New Model PCA','Callback','uiwait(Menu_Crea_Model_PCA);');
0053 uimenu(f21,'Label','New Projection','Callback','uiwait(Menu_Projecta_Dades_PCA);');
0054 handles.menu.f21=f21;
0055
0056 f24 = uimenu(f2,'Label','Save');
0057 uimenu(f24,'Label','Save PCA','Callback','Menu_Save_PCA');
0058
0059 handles.menu.f24=f24;
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069 f23 = uimenu(f2,'Label','PCA','Callback','Menu_PCA');
0070 handles.menu.f23=f23;
0071
0072
0073 f3 = uimenu(gcf,'Label','CBR');
0074 handles.menu.f3=f3;
0075
0076 f31=uimenu(f3,'Label','Create new CBR','Callback','uiwait(Menu_Crea_CBR);');
0077 f33 = uimenu(f3,'Label','Save');
0078 f32=uimenu(f3,'Label','CBR','Callback','Menu_CBR');
0079
0080 uimenu(f33,'Label','Save CBR','Callback','Menu_Save_CBR');
0081
0082 handles.menu.f31=f31;
0083 handles.menu.f32=f32;
0084 handles.menu.f33=f33;
0085
0086 f7 = uimenu(gcf,'Label','Segment');
0087 f71=uimenu(f7,'Label','Segment','Callback','Menu_Talla');
0088 handles.menu.f71=f71;
0089
0090 f4 = uimenu(gcf,'Label','Cross - Validation');
0091 uimenu(f4,'Label','Cross - Validation','Callback','Menu_Cross');
0092 handles.menu.f4=f4;
0093
0094 f5 = uimenu(gcf,'Label','Commands');
0095 uimenu(f5,'Label','Command Window','Callback','Command_window');
0096 uimenu(f5,'Label','Command Examples','Callback','Menu_Exemples');
0097
0098 ruta = mfilename('fullpath');
0099 ruta = ruta(1:end-4);
0100
0101 uimenu(f5,'Label','Command User Manual','Callback',['open(''' ruta 'Ajuda' filesep 'help.pdf' ''')']);
0102 handles.menu.f5=f5;
0103
0104 f6=uimenu(gcf,'Label','Help');
0105 uimenu(f6,'Label','User Interface Manual','Callback',['open(''' ruta 'Ajuda' filesep 'help2.pdf' ''')']);
0106 uimenu(f6,'Label','eXiT','Callback','web(''http://exit.udg.edu/'', ''-browser'')');
0107 handles.menu.f6=f6;
0108
0109 end
0110
0111
0112
0113
0114 x=evalin('base','whos();');
0115 trobatDATA = false;
0116 trobatPCA = false;
0117 trobatCBR = false;
0118 final = isempty(x);
0119 i=1;
0120 lx = length(x)+1;
0121
0122 while(~trobatDATA || ~trobatPCA || ~trobatCBR) && ~ final
0123 if strcmp(x(i).class,'DATA')
0124 trobatDATA = true;
0125 end
0126
0127 if strcmp(x(i).class,'PCA')
0128 trobatPCA = true;
0129 end
0130
0131 if strcmp(x(i).class,'CBR')
0132 trobatCBR = true;
0133 end
0134 i=i+1;
0135 final = i == lx;
0136 end
0137
0138
0139
0140
0141
0142 set(handles.menu.f71,'enable','off');
0143
0144 if ~trobatDATA
0145 set(handles.menu.f111,'enable','off');
0146 set(handles.menu.f12,'enable','off');
0147
0148 else
0149 set( handles.menu.f111,'enable','on');
0150 set(handles.menu.f12,'enable','on');
0151
0152 set(handles.menu.f71,'enable','on');
0153 end
0154
0155
0156
0157 if ~trobatPCA
0158
0159 set(handles.menu.f23,'enable','off');
0160 set(handles.menu.f24,'enable','off');
0161 else
0162
0163 set(handles.menu.f23,'enable','on');
0164 set(handles.menu.f24,'enable','on');
0165
0166 set(handles.menu.f71,'enable','on');
0167 end
0168
0169
0170
0171 if ~trobatCBR
0172 set(handles.menu.f32,'enable','off');
0173 set(handles.menu.f33,'enable','off');
0174 else
0175 set(handles.menu.f32,'enable','on');
0176 set(handles.menu.f33,'enable','on');
0177 set(handles.menu.f71,'enable','on');
0178 end
0179
0180
0181
0182
0183
0184
0185
0186
0187
0188
0189
0190
0191
0192
0193
0194
0195
0196
0197
0198
0199
0200
0201
0202
0203
0204
0205
0206
0207
0208
0209