- create single sample soft distance constraint dialog copyright 2009-2012 Blair Armstrong, Christine Watson, David Plaut This file is part of SOS SOS is free software: you can redistribute it and/or modify it for academic and non-commercial purposes under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. For commercial or for-profit uses, please contact the authors (sos@cnbc.cmu.edu). SOS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
0001 % - create single sample soft distance constraint dialog 0002 % 0003 % copyright 2009-2012 Blair Armstrong, Christine Watson, David Plaut 0004 % 0005 % This file is part of SOS 0006 % 0007 % SOS is free software: you can redistribute it and/or modify 0008 % it for academic and non-commercial purposes 0009 % under the terms of the GNU General Public License as published by 0010 % the Free Software Foundation, either version 3 of the License, or 0011 % (at your option) any later version. For commercial or for-profit 0012 % uses, please contact the authors (sos@cnbc.cmu.edu). 0013 % 0014 % SOS is distributed in the hope that it will be useful, 0015 % but WITHOUT ANY WARRANTY; without even the implied warranty of 0016 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0017 % GNU General Public License for more details. 0018 0019 % You should have received a copy of the GNU General Public License 0020 % along with SOS (see COPYING.txt). 0021 % If not, see <http://www.gnu.org/licenses/>. 0022 0023 0024 function varargout = createSingleSampleSoftDistanceConstraint_Dialog(varargin) 0025 % CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG M-file for createSingleSampleSoftDistanceConstraint_Dialog.fig 0026 % CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG, by itself, creates a new CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG or raises the existing 0027 % singleton*. 0028 % 0029 % H = CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG returns the handle to a new CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG or the handle to 0030 % the existing singleton*. 0031 % 0032 % CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG('CALLBACK',hObject,eventData,handles,...) calls the local 0033 % function named CALLBACK in CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG.M with the given input arguments. 0034 % 0035 % CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG('Property','Value',...) creates a new CREATESINGLESAMPLESOFTDISTANCECONSTRAINT_DIALOG or raises the 0036 % existing singleton*. Starting from the left, property value pairs are 0037 % applied to the GUI before createSingleSampleSoftDistanceConstraint_Dialog_OpeningFcn gets called. An 0038 % unrecognized property name or invalid value makes property application 0039 % stop. All inputs are passed to createSingleSampleSoftDistanceConstraint_Dialog_OpeningFcn via varargin. 0040 % 0041 % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one 0042 % instance to run (singleton)". 0043 % 0044 % See also: GUIDE, GUIDATA, GUIHANDLES 0045 0046 % Edit the above text to modify the response to help createSingleSampleSoftDistanceConstraint_Dialog 0047 0048 % Last Modified by GUIDE v2.5 16-Sep-2010 17:16:23 0049 0050 % Begin initialization code - DO NOT EDIT 0051 gui_Singleton = 1; 0052 gui_State = struct('gui_Name', mfilename, ... 0053 'gui_Singleton', gui_Singleton, ... 0054 'gui_OpeningFcn', @createSingleSampleSoftDistanceConstraint_Dialog_OpeningFcn, ... 0055 'gui_OutputFcn', @createSingleSampleSoftDistanceConstraint_Dialog_OutputFcn, ... 0056 'gui_LayoutFcn', [] , ... 0057 'gui_Callback', []); 0058 if nargin && ischar(varargin{1}) 0059 gui_State.gui_Callback = str2func(varargin{1}); 0060 end 0061 0062 if nargout 0063 [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); 0064 else 0065 gui_mainfcn(gui_State, varargin{:}); 0066 end 0067 % End initialization code - DO NOT EDIT 0068 0069 0070 % --- Executes just before createSingleSampleSoftDistanceConstraint_Dialog is made visible. 0071 function createSingleSampleSoftDistanceConstraint_Dialog_OpeningFcn(hObject, eventdata, handles, varargin) 0072 % This function has no output args, see OutputFcn. 0073 % hObject handle to figure 0074 % eventdata reserved - to be defined in a future version of MATLAB 0075 % handles structure with handles and user data (see GUIDATA) 0076 % varargin command line arguments to createSingleSampleSoftDistanceConstraint_Dialog (see VARARGIN) 0077 0078 % Choose default command line output for createSingleSampleSoftDistanceConstraint_Dialog 0079 handles.output = hObject; 0080 0081 % Update handles structure 0082 guidata(hObject, handles); 0083 0084 % UIWAIT makes createSingleSampleSoftDistanceConstraint_Dialog wait for user response (see UIRESUME) 0085 % uiwait(handles.figure_createSingleSampleSoftDistanceConstraint_Dialog); 0086 0087 0088 % --- Outputs from this function are returned to the command line. 0089 function varargout = createSingleSampleSoftDistanceConstraint_Dialog_OutputFcn(hObject, eventdata, handles) 0090 % varargout cell array for returning output args (see VARARGOUT); 0091 % hObject handle to figure 0092 % eventdata reserved - to be defined in a future version of MATLAB 0093 % handles structure with handles and user data (see GUIDATA) 0094 0095 % Get default command line output from handles structure 0096 varargout{1} = handles.output; 0097 0098 0099 0100 function edit_name_Callback(hObject, eventdata, handles) 0101 % hObject handle to edit_name (see GCBO) 0102 % eventdata reserved - to be defined in a future version of MATLAB 0103 % handles structure with handles and user data (see GUIDATA) 0104 0105 % Hints: get(hObject,'String') returns contents of edit_name as text 0106 % str2double(get(hObject,'String')) returns contents of edit_name as a double 0107 validate_name(handles); 0108 0109 0110 function flag = validate_name(handles) 0111 0112 varName = get(handles.edit_name,'String'); 0113 0114 %check to make sure that the name is a valid variable name: 0115 valid = regexp(varName,'^[a-zA-Z]+\w*$', 'once'); 0116 0117 if isempty(valid) 0118 % name is not currently valid, tell the user. 0119 msgbox('Only letters, numbers, and underscores are permitted in the name of the ttest object. The first character must also be a letter.',... 0120 'Invalid name!'); 0121 flag = false; 0122 else 0123 % check to make sure that the new variable name doesn't already exist. 0124 command = strcat('whos(''',varName,''')'); 0125 varExists = evalin('base',command); 0126 0127 0128 % if a variable with this name already exists, warns the user 0129 if isempty(varExists) == 0 0130 msgbox('A variable with this name already exists and will be overridden if you continue',... 0131 'Variable name already in use!'); 0132 end 0133 0134 flag = true; 0135 end 0136 0137 0138 0139 % --- Executes during object creation, after setting all properties. 0140 function edit_name_CreateFcn(hObject, eventdata, handles) 0141 % hObject handle to edit_name (see GCBO) 0142 % eventdata reserved - to be defined in a future version of MATLAB 0143 % handles empty - handles not created until after all CreateFcns called 0144 0145 % Hint: edit controls usually have a white background on Windows. 0146 % See ISPC and COMPUTER. 0147 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0148 set(hObject,'BackgroundColor','white'); 0149 end 0150 0151 0152 % --- Executes on selection change in popupmenu_sample1Selector. 0153 function popupmenu_sample1Selector_Callback(hObject, eventdata, handles) 0154 % hObject handle to popupmenu_sample1Selector (see GCBO) 0155 % eventdata reserved - to be defined in a future version of MATLAB 0156 % handles structure with handles and user data (see GUIDATA) 0157 0158 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_sample1Selector contents as cell array 0159 % contents{get(hObject,'Value')} returns selected item from popupmenu_sample1Selector 0160 populateSampleList(hObject); 0161 0162 0163 function populateSampleList(hObject) 0164 % get a list of all populations in the base workspace: 0165 vars = evalin('base','whos()'); 0166 0167 samples = []; 0168 for i=1:length(vars) 0169 if strcmp(vars(i).class,'sample') 0170 samples = [samples; {vars(i).name}]; %#ok<AGROW> 0171 end 0172 end 0173 0174 0175 0176 % assign that list to the options in the pop up menu 0177 warning('off','MATLAB:hg:uicontrol:ParameterValuesMustBeValid'); 0178 set(hObject,'String',samples); 0179 0180 % --- Executes during object creation, after setting all properties. 0181 function popupmenu_sample1Selector_CreateFcn(hObject, eventdata, handles) 0182 % hObject handle to popupmenu_sample1Selector (see GCBO) 0183 % eventdata reserved - to be defined in a future version of MATLAB 0184 % handles empty - handles not created until after all CreateFcns called 0185 0186 % Hint: popupmenu controls usually have a white background on Windows. 0187 % See ISPC and COMPUTER. 0188 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0189 set(hObject,'BackgroundColor','white'); 0190 end 0191 0192 0193 % --- Executes on button press in pushbutton_refreshSample1List. 0194 function pushbutton_refreshSample1List_Callback(hObject, eventdata, handles) 0195 % hObject handle to pushbutton_refreshSample1List (see GCBO) 0196 % eventdata reserved - to be defined in a future version of MATLAB 0197 % handles structure with handles and user data (see GUIDATA) 0198 populateSampleList(handles.popupmenu_sample1Selector); 0199 0200 % --- If Enable == 'on', executes on mouse press in 5 pixel border. 0201 % --- Otherwise, executes on mouse press in 5 pixel border or over popupmenu_sample1Selector. 0202 function popupmenu_sample1Selector_ButtonDownFcn(hObject, eventdata, handles) 0203 % hObject handle to popupmenu_sample1Selector (see GCBO) 0204 % eventdata reserved - to be defined in a future version of MATLAB 0205 % handles structure with handles and user data (see GUIDATA) 0206 populateSampleList(hObject); 0207 0208 0209 % --- Executes on selection change in popupmenu_sample1ColSelector. 0210 function popupmenu_sample1ColSelector_Callback(hObject, eventdata, handles) 0211 % hObject handle to popupmenu_sample1ColSelector (see GCBO) 0212 % eventdata reserved - to be defined in a future version of MATLAB 0213 % handles structure with handles and user data (see GUIDATA) 0214 populateColumnList(hObject,handles.popupmenu_sample1Selector); 0215 0216 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_sample1ColSelector contents as cell array 0217 % contents{get(hObject,'Value')} returns selected item from popupmenu_sample1ColSelector 0218 function populateColumnList(hObject,sampleSelector) 0219 % get a list of all populations in the base workspace: 0220 0221 create = true; 0222 0223 % get the sample in the first list. 0224 sampleMenuHandle = sampleSelector; 0225 sampleName = getdfName(sampleMenuHandle,'sample 1'); 0226 0227 if isempty(sampleName) 0228 create = false; 0229 end 0230 0231 if create == true 0232 % add in all of the header names associated with that sample. 0233 tmpColNames = evalin('base',[sampleName,'.header']); 0234 0235 % melt and refreeze cells 0236 colNames = {}; 0237 0238 for i=1:length(tmpColNames) 0239 colNames = [colNames ; tmpColNames{i}]; %#ok<AGROW> 0240 end 0241 0242 0243 % assign that list to the options in the pop up menu 0244 warning('off','MATLAB:hg:uicontrol:ParameterValuesMustBeValid'); 0245 set(hObject,'String',colNames); 0246 end 0247 0248 % --- Executes during object creation, after setting all properties. 0249 function popupmenu_sample1ColSelector_CreateFcn(hObject, eventdata, handles) 0250 % hObject handle to popupmenu_sample1ColSelector (see GCBO) 0251 % eventdata reserved - to be defined in a future version of MATLAB 0252 % handles empty - handles not created until after all CreateFcns called 0253 0254 % Hint: popupmenu controls usually have a white background on Windows. 0255 % See ISPC and COMPUTER. 0256 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0257 set(hObject,'BackgroundColor','white'); 0258 end 0259 0260 0261 % --- Executes on button press in pushbutton_refreshsample1ColSelector. 0262 function pushbutton_refreshsample1ColSelector_Callback(hObject, eventdata, handles) 0263 % hObject handle to pushbutton_refreshsample1ColSelector (see GCBO) 0264 % eventdata reserved - to be defined in a future version of MATLAB 0265 % handles structure with handles and user data (see GUIDATA) 0266 populateColumnList(handles.popupmenu_sample1ColSelector,handles.popupmenu_sample1Selector); 0267 0268 0269 % --- Executes on selection change in popupmenu_sample2Selector. 0270 function popupmenu_sample2Selector_Callback(hObject, eventdata, handles) 0271 % hObject handle to popupmenu_sample2Selector (see GCBO) 0272 % eventdata reserved - to be defined in a future version of MATLAB 0273 % handles structure with handles and user data (see GUIDATA) 0274 0275 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_sample2Selector contents as cell array 0276 % contents{get(hObject,'Value')} returns selected item from popupmenu_sample2Selector 0277 populateSampleList(hObject); 0278 0279 0280 % --- Executes during object creation, after setting all properties. 0281 function popupmenu_sample2Selector_CreateFcn(hObject, eventdata, handles) 0282 % hObject handle to popupmenu_sample2Selector (see GCBO) 0283 % eventdata reserved - to be defined in a future version of MATLAB 0284 % handles empty - handles not created until after all CreateFcns called 0285 0286 % Hint: popupmenu controls usually have a white background on Windows. 0287 % See ISPC and COMPUTER. 0288 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0289 set(hObject,'BackgroundColor','white'); 0290 end 0291 0292 0293 % --- Executes on button press in pushbutton_refreshSample2List. 0294 function pushbutton_refreshSample2List_Callback(hObject, eventdata, handles) 0295 % hObject handle to pushbutton_refreshSample2List (see GCBO) 0296 % eventdata reserved - to be defined in a future version of MATLAB 0297 % handles structure with handles and user data (see GUIDATA) 0298 populateSampleList(handles.popupmenu_sample2Selector); 0299 0300 % --- Executes on selection change in popupmenu_sample2ColSelector. 0301 function popupmenu_sample2ColSelector_Callback(hObject, eventdata, handles) 0302 % hObject handle to popupmenu_sample2ColSelector (see GCBO) 0303 % eventdata reserved - to be defined in a future version of MATLAB 0304 % handles structure with handles and user data (see GUIDATA) 0305 0306 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_sample2ColSelector contents as cell array 0307 % contents{get(hObject,'Value')} returns selected item from popupmenu_sample2ColSelector 0308 populateColumnList(hObject,handles.popupmenu_sample2Selector); 0309 0310 0311 % --- Executes during object creation, after setting all properties. 0312 function popupmenu_sample2ColSelector_CreateFcn(hObject, eventdata, handles) 0313 % hObject handle to popupmenu_sample2ColSelector (see GCBO) 0314 % eventdata reserved - to be defined in a future version of MATLAB 0315 % handles empty - handles not created until after all CreateFcns called 0316 0317 % Hint: popupmenu controls usually have a white background on Windows. 0318 % See ISPC and COMPUTER. 0319 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0320 set(hObject,'BackgroundColor','white'); 0321 end 0322 0323 0324 % --- Executes on button press in pushbutton_refreshsample2ColSelector. 0325 function pushbutton_refreshsample2ColSelector_Callback(hObject, eventdata, handles) 0326 % hObject handle to pushbutton_refreshsample2ColSelector (see GCBO) 0327 % eventdata reserved - to be defined in a future version of MATLAB 0328 % handles structure with handles and user data (see GUIDATA) 0329 populateColumnList(handles.popupmenu_sample2ColSelector,handles.popupmenu_sample2Selector); 0330 0331 0332 % --- If Enable == 'on', executes on mouse press in 5 pixel border. 0333 % --- Otherwise, executes on mouse press in 5 pixel border or over popupmenu_sample1ColSelector. 0334 function popupmenu_sample1ColSelector_ButtonDownFcn(hObject, eventdata, handles) 0335 % hObject handle to popupmenu_sample1ColSelector (see GCBO) 0336 % eventdata reserved - to be defined in a future version of MATLAB 0337 % handles structure with handles and user data (see GUIDATA) 0338 populateColumnList(hObject,handles.popupmenu_sample1Selector); 0339 0340 0341 % --- If Enable == 'on', executes on mouse press in 5 pixel border. 0342 % --- Otherwise, executes on mouse press in 5 pixel border or over popupmenu_sample2Selector. 0343 function popupmenu_sample2Selector_ButtonDownFcn(hObject, eventdata, handles) 0344 % hObject handle to popupmenu_sample2Selector (see GCBO) 0345 % eventdata reserved - to be defined in a future version of MATLAB 0346 % handles structure with handles and user data (see GUIDATA) 0347 populateSampleList(hObject); 0348 0349 0350 % --- If Enable == 'on', executes on mouse press in 5 pixel border. 0351 % --- Otherwise, executes on mouse press in 5 pixel border or over popupmenu_sample2ColSelector. 0352 function popupmenu_sample2ColSelector_ButtonDownFcn(hObject, eventdata, handles) 0353 % hObject handle to popupmenu_sample2ColSelector (see GCBO) 0354 % eventdata reserved - to be defined in a future version of MATLAB 0355 % handles structure with handles and user data (see GUIDATA) 0356 populateColumnList(hObject,handles.popupmenu_sample2Selector); 0357 0358 0359 0360 function edit_value_Callback(hObject, eventdata, handles) 0361 % hObject handle to edit_value (see GCBO) 0362 % eventdata reserved - to be defined in a future version of MATLAB 0363 % handles structure with handles and user data (see GUIDATA) 0364 0365 % Hints: get(hObject,'String') returns contents of edit_value as text 0366 % str2double(get(hObject,'String')) returns contents of edit_value as a double 0367 validate_value(handles); 0368 0369 0370 function flag = validate_value(handles) 0371 str = get(handles.edit_value,'String'); 0372 0373 errmsg = 'Bound value must be a number'; 0374 errtitle = 'Invalid bound value!'; 0375 0376 flag = validateRealNumber(str,errmsg,errtitle); 0377 0378 0379 0380 % --- Executes during object creation, after setting all properties. 0381 function edit_value_CreateFcn(hObject, eventdata, handles) 0382 % hObject handle to edit_value (see GCBO) 0383 % eventdata reserved - to be defined in a future version of MATLAB 0384 % handles empty - handles not created until after all CreateFcns called 0385 0386 % Hint: edit controls usually have a white background on Windows. 0387 % See ISPC and COMPUTER. 0388 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0389 set(hObject,'BackgroundColor','white'); 0390 end 0391 0392 0393 % --- Executes on selection change in popupmenu_desiredpvalCondition. 0394 function popupmenu_desiredpvalCondition_Callback(hObject, eventdata, handles) 0395 % hObject handle to popupmenu_desiredpvalCondition (see GCBO) 0396 % eventdata reserved - to be defined in a future version of MATLAB 0397 % handles structure with handles and user data (see GUIDATA) 0398 0399 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_desiredpvalCondition contents as cell array 0400 % contents{get(hObject,'Value')} returns selected item from popupmenu_desiredpvalCondition 0401 0402 0403 % --- Executes during object creation, after setting all properties. 0404 function popupmenu_desiredpvalCondition_CreateFcn(hObject, eventdata, handles) 0405 % hObject handle to popupmenu_desiredpvalCondition (see GCBO) 0406 % eventdata reserved - to be defined in a future version of MATLAB 0407 % handles empty - handles not created until after all CreateFcns called 0408 0409 % Hint: popupmenu controls usually have a white background on Windows. 0410 % See ISPC and COMPUTER. 0411 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0412 set(hObject,'BackgroundColor','white'); 0413 end 0414 0415 0416 % --- Executes on selection change in popupmenu_tails. 0417 function popupmenu_tails_Callback(hObject, eventdata, handles) 0418 % hObject handle to popupmenu_tails (see GCBO) 0419 % eventdata reserved - to be defined in a future version of MATLAB 0420 % handles structure with handles and user data (see GUIDATA) 0421 0422 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_tails contents as cell array 0423 % contents{get(hObject,'Value')} returns selected item from popupmenu_tails 0424 0425 0426 % --- Executes during object creation, after setting all properties. 0427 function popupmenu_tails_CreateFcn(hObject, eventdata, handles) 0428 % hObject handle to popupmenu_tails (see GCBO) 0429 % eventdata reserved - to be defined in a future version of MATLAB 0430 % handles empty - handles not created until after all CreateFcns called 0431 0432 % Hint: popupmenu controls usually have a white background on Windows. 0433 % See ISPC and COMPUTER. 0434 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0435 set(hObject,'BackgroundColor','white'); 0436 end 0437 0438 0439 % --- Executes on button press in pushbutton_createSingleSampleSoftDistanceConstraint. 0440 function pushbutton_createSingleSampleSoftDistanceConstraint_Callback(hObject, eventdata, handles) 0441 % hObject handle to pushbutton_createSingleSampleSoftDistanceConstraint (see GCBO) 0442 % eventdata reserved - to be defined in a future version of MATLAB 0443 % handles structure with handles and user data (see GUIDATA) 0444 0445 type = getdfName(handles.popupmenu_type,'type'); 0446 0447 mainWindowHandle = sos_gui; 0448 mainWindowData = guidata(mainWindowHandle); 0449 0450 sosObjName = getdfName(mainWindowData.popupmenu_SOSSelector,'SOS'); 0451 0452 if isempty(sosObjName) == 0 0453 % we have a valid SOS object to add the test to 0454 % validate all of the parameters for the test 0455 create = validate_name(handles); 0456 name = get(handles.edit_name,'String'); 0457 0458 if create == true 0459 sample1 = getdfName(handles.popupmenu_sample1Selector,'sample 1'); 0460 0461 if isempty(sample1) == 0 0462 sample1Col = getdfName(handles.popupmenu_sample1ColSelector','sample 1 column'); 0463 0464 if isempty(sample1Col) == 0 0465 create = validate_value(handles); 0466 0467 if create == true 0468 % all values have passed. Can execute the command 0469 value = get(handles.edit_value,'String'); 0470 0471 % check weight 0472 create = validate_weight(handles); 0473 if create == true 0474 weight = get(handles.edit_weight,'String'); 0475 0476 create = validate_exp(handles); 0477 if create == true 0478 exp = get (handles.edit_exp,'String'); 0479 0480 %all functions passed, retrieve the 0481 %hard-coded popup menu data 0482 0483 fnc = getdfName(handles.popupmenu_fncSelector,... 0484 'fnc'); 0485 stat = getdfName(handles.popupmenu_statSelector,... 0486 'stat'); 0487 0488 0489 %all of the other options are in drop-down 0490 %menus and as such necessarily will pass. 0491 %run the command. 0492 0493 command = [name,'=',sosObjName,'.addConstraint(',... 0494 '''name'',''',name,''',',... 0495 '''constraintType'',''',type,''',',... 0496 '''stat'',''',stat,''',',... 0497 '''fnc'',''',fnc,''',',... 0498 '''sample1'',',sample1,',',... 0499 '''s1ColName'',''',sample1Col,''',',... 0500 '''targVal'',',value,',',... 0501 '''weight'',',weight,','... 0502 '''exponent'',',exp,');',... 0503 ]; 0504 0505 verbosePrint(['Executing command: ','''',command,''''],'createSingleSampleSoftDistanceConstraint_Dialog_create'); 0506 evalin('base',command); 0507 close(handles.figure_createSingleSampleSoftDistanceConstraint_Dialog); 0508 end 0509 end 0510 end 0511 end 0512 end 0513 end 0514 end 0515 0516 0517 % --- Executes on selection change in popupmenu_type. 0518 function popupmenu_type_Callback(hObject, eventdata, handles) 0519 % hObject handle to popupmenu_type (see GCBO) 0520 % eventdata reserved - to be defined in a future version of MATLAB 0521 % handles structure with handles and user data (see GUIDATA) 0522 0523 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_type contents as cell array 0524 % contents{get(hObject,'Value')} returns selected item from popupmenu_type 0525 0526 0527 % --- Executes during object creation, after setting all properties. 0528 function popupmenu_type_CreateFcn(hObject, eventdata, handles) 0529 % hObject handle to popupmenu_type (see GCBO) 0530 % eventdata reserved - to be defined in a future version of MATLAB 0531 % handles empty - handles not created until after all CreateFcns called 0532 0533 % Hint: popupmenu controls usually have a white background on Windows. 0534 % See ISPC and COMPUTER. 0535 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0536 set(hObject,'BackgroundColor','white'); 0537 end 0538 0539 0540 % --- Executes on selection change in popupmenu_fncSelector. 0541 function popupmenu_fncSelector_Callback(hObject, eventdata, handles) 0542 % hObject handle to popupmenu_fncSelector (see GCBO) 0543 % eventdata reserved - to be defined in a future version of MATLAB 0544 % handles structure with handles and user data (see GUIDATA) 0545 0546 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_fncSelector contents as cell array 0547 % contents{get(hObject,'Value')} returns selected item from popupmenu_fncSelector 0548 0549 0550 % --- Executes during object creation, after setting all properties. 0551 function popupmenu_fncSelector_CreateFcn(hObject, eventdata, handles) 0552 % hObject handle to popupmenu_fncSelector (see GCBO) 0553 % eventdata reserved - to be defined in a future version of MATLAB 0554 % handles empty - handles not created until after all CreateFcns called 0555 0556 % Hint: popupmenu controls usually have a white background on Windows. 0557 % See ISPC and COMPUTER. 0558 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0559 set(hObject,'BackgroundColor','white'); 0560 end 0561 0562 0563 0564 function edit_weight_Callback(hObject, eventdata, handles) 0565 % hObject handle to edit_weight (see GCBO) 0566 % eventdata reserved - to be defined in a future version of MATLAB 0567 % handles structure with handles and user data (see GUIDATA) 0568 0569 % Hints: get(hObject,'String') returns contents of edit_weight as text 0570 % str2double(get(hObject,'String')) returns contents of edit_weight as a double 0571 validate_weight(handles); 0572 0573 0574 function flag = validate_weight(handles) 0575 str = get(handles.edit_weight,'String'); 0576 0577 errmsg = 'Weight must be a number'; 0578 errtitle = 'Invalid weight!'; 0579 0580 flag = validateRealNumber(str,errmsg,errtitle); 0581 0582 % --- Executes during object creation, after setting all properties. 0583 function edit_weight_CreateFcn(hObject, eventdata, handles) 0584 % hObject handle to edit_weight (see GCBO) 0585 % eventdata reserved - to be defined in a future version of MATLAB 0586 % handles empty - handles not created until after all CreateFcns called 0587 0588 % Hint: edit controls usually have a white background on Windows. 0589 % See ISPC and COMPUTER. 0590 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0591 set(hObject,'BackgroundColor','white'); 0592 end 0593 0594 0595 0596 function edit_exp_Callback(hObject, eventdata, handles) 0597 % hObject handle to edit_exp (see GCBO) 0598 % eventdata reserved - to be defined in a future version of MATLAB 0599 % handles structure with handles and user data (see GUIDATA) 0600 0601 % Hints: get(hObject,'String') returns contents of edit_exp as text 0602 % str2double(get(hObject,'String')) returns contents of edit_exp as a double 0603 validate_exp(handles); 0604 0605 0606 function flag = validate_exp(handles) 0607 str = get(handles.edit_exp,'String'); 0608 0609 errmsg = 'Exponent must be a number'; 0610 errtitle = 'Invalid exponent!'; 0611 0612 flag = validateRealNumber(str,errmsg,errtitle); 0613 0614 % --- Executes during object creation, after setting all properties. 0615 function edit_exp_CreateFcn(hObject, eventdata, handles) 0616 % hObject handle to edit_exp (see GCBO) 0617 % eventdata reserved - to be defined in a future version of MATLAB 0618 % handles empty - handles not created until after all CreateFcns called 0619 0620 % Hint: edit controls usually have a white background on Windows. 0621 % See ISPC and COMPUTER. 0622 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0623 set(hObject,'BackgroundColor','white'); 0624 end 0625 0626 0627 % --- Executes on selection change in popupmenu_statSelector. 0628 function popupmenu_statSelector_Callback(hObject, eventdata, handles) 0629 % hObject handle to popupmenu_statSelector (see GCBO) 0630 % eventdata reserved - to be defined in a future version of MATLAB 0631 % handles structure with handles and user data (see GUIDATA) 0632 0633 % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_statSelector contents as cell array 0634 % contents{get(hObject,'Value')} returns selected item from popupmenu_statSelector 0635 0636 0637 % --- Executes during object creation, after setting all properties. 0638 function popupmenu_statSelector_CreateFcn(hObject, eventdata, handles) 0639 % hObject handle to popupmenu_statSelector (see GCBO) 0640 % eventdata reserved - to be defined in a future version of MATLAB 0641 % handles empty - handles not created until after all CreateFcns called 0642 0643 % Hint: popupmenu controls usually have a white background on Windows. 0644 % See ISPC and COMPUTER. 0645 if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 0646 set(hObject,'BackgroundColor','white'); 0647 end