tomwalters@0
|
1 % tool
|
tomwalters@0
|
2 %
|
tomwalters@0
|
3 % INPUT VALUES:
|
tomwalters@0
|
4 %
|
tomwalters@0
|
5 % RETURN VALUE:
|
tomwalters@0
|
6 %
|
tomwalters@0
|
7 %
|
bleeck@3
|
8 % This external file is included as part of the 'aim-mat' distribution package
|
bleeck@3
|
9 % (c) 2011, University of Southampton
|
bleeck@3
|
10 % Maintained by Stefan Bleeck (bleeck@gmail.com)
|
bleeck@3
|
11 % download of current version is on the soundsoftware site:
|
bleeck@3
|
12 % http://code.soundsoftware.ac.uk/projects/aimmat
|
bleeck@3
|
13 % documentation and everything is on http://www.acousticscale.org
|
bleeck@3
|
14
|
tomwalters@0
|
15
|
tomwalters@0
|
16 function combi=slidereditcontrol_set_value(combi,value)
|
tomwalters@0
|
17 % a slidereditcontrol consists of a slider and an edit object, that are
|
tomwalters@0
|
18 % related. When one value changes, the other also changes.
|
tomwalters@0
|
19 % The combination has the following variables:
|
tomwalters@0
|
20 % sliderhandle - the handle of the slider control
|
tomwalters@0
|
21 % edithandle - the handle of the edit control
|
tomwalters@0
|
22 % minvalue - the minimum value allowed
|
tomwalters@0
|
23 % maxvalue - the maximum allowed value
|
tomwalters@0
|
24 % (current_value - the current value)
|
tomwalters@0
|
25 % is_log - whether the slider reponds logarithmically
|
tomwalters@0
|
26 % editscaler - a number, that is multiplied to the edit control (to make ms of secs)
|
tomwalters@0
|
27 % nreditdigits - the number of digits in the edit control
|
tomwalters@0
|
28
|
tomwalters@0
|
29 % translate the value to the value, the slider wants to see
|
tomwalters@0
|
30 if combi.is_log==1
|
tomwalters@0
|
31 sliderval=f2f(value,combi.minvalue,combi.maxvalue,0,1,'loglin');
|
tomwalters@0
|
32 else
|
tomwalters@0
|
33 sliderval=f2f(value,combi.minvalue,combi.maxvalue,0,1,'linlin');
|
tomwalters@0
|
34 end
|
tomwalters@0
|
35 sliderval=max(sliderval,0);
|
tomwalters@0
|
36 sliderval=min(sliderval,1);
|
tomwalters@0
|
37 set(combi.sliderhandle,'Value',sliderval);
|
tomwalters@0
|
38
|
tomwalters@0
|
39 editval=value*combi.editscaler;
|
tomwalters@0
|
40 editval=max(editval,combi.minvalue*combi.editscaler);
|
tomwalters@0
|
41 editval=min(editval,combi.maxvalue*combi.editscaler);
|
tomwalters@0
|
42
|
tomwalters@0
|
43 editval=fround(editval,combi.nreditdigits);
|
tomwalters@0
|
44 set(combi.edithandle,'String',num2str(editval));
|
tomwalters@0
|
45
|
tomwalters@0
|
46 combi.current_value=value; |