Mercurial > hg > aimmat
view aim-mat/tools/@parameter/setcallback.m @ 4:537f939baef0 tip
various bug fixes and changed copyright message
author | Stefan Bleeck <bleeck@gmail.com> |
---|---|
date | Tue, 16 Aug 2011 14:37:17 +0100 |
parents | 20ada0af3d7d |
children |
line wrap: on
line source
% method of class @parameter % % (c) 2011, University of Southampton % Maintained by Stefan Bleeck (bleeck@gmail.com) % download of current version is on the soundsoftware site: % http://code.soundsoftware.ac.uk/projects/aimmat % documentation and everything is on http://www.acousticscale.org function param=setcallback(param,text,cback,inbox) % every entry can have a callback function that is called when the item % looses its focus cont=param.entries; nrent=length(cont); if nargin<4 inbox='all'; end nr=-1; % text can be a string or a number if isstr(text) % if its a sting then look for the member number % first search for the exact fit for i=1:nrent if strcmp(cont{i}.text,text) && (strcmp(cont{i}.panel,inbox) || strcmp(inbox,'all')) nr=i; break end end % then search for the abbreviation for i=1:nrent if ~isempty(strfind(cont{i}.text,text)) && (strcmp(cont{i}.panel,inbox) || strcmp(inbox,'all')) nr=i; break end end else nr=text; % in this case we wanted to access it by the number end if nr>0 param.entries{nr}.callback=cback; return else val='setcallback:: error, the entry does not exist'; end