linux: shared memory interface - link with librt
[supercollider.git] / HelpSource / Classes / NdefParamGui.schelp
blob67253bebdfe621d0f259de4fec7c3323f4d6c1b6
1 class:: NdefParamGui
2 summary:: display the settings of a nodeproxy
3 categories:: Libraries>JITLib>GUI
4 related:: Classes/EZText, Classes/NdefGui
6 description::
8 NdefParamGui displays all settings and mappings of a nodeproxy, so one can change them flexibly. Single number get displayed with an link::Classes/EZSlider::, and anything else is shown as an link::Classes/EZText:: (a text field). Its main use is within link::Classes/NdefGui::.
10 ClassMethods::
12 subsection::Creation
14 method::new
15 create a new NdefParamGui
17 code::
18 // simple example
19 g = NdefParamGui.new(nil, 5);   // empty with 5 slots
20 g.object_(Ndef(\a));            // put in a nodeproxy
21 Ndef(\a, { |freq = 300, amp = 0.2| SinOsc.ar(freq) * amp });
22 Ndef(\a).set(\freq, 2000);      // add a setting
24 g.object_(nil);                 // put in a nodeproxy
26 g.object_(Ndef(\a));            // put in a nodeproxy
27 Ndef(\a).set(\amp, 0.125);      // add a setting
28 Ndef(\a, { |freq = 300, amp = 0.2| SinOsc.ar(freq) * amp });
29 Ndef(\a).set(\freq, 234);       // add a setting
31 Ndef(\a).play
32 Ndef(\lfo, { LFNoise0.kr([12, 8], 200).sum + 500 });
33 Ndef(\a).map(\freq, Ndef(\lfo));// mapped proxies are shown
36 //Multichannel controls are shown in EZText
38 Ndef(\a, { |freqs = #[300, 303], pan, amp = 0.2, moddd = 0.1| SinOsc.ar(freqs).sum * amp });
39 Ndef(\a).play
40 Ndef(\a).setn(\freqs, [300, 350])
41 Ndef(\a).setn(\freqs, [330, 350])
42 Ndef(\a).set(\harm, 123)
44 Ndef(\a).nodeMap.clear
46 Ndef(\lfos, { LFNoise0.kr([12, 8], 200) + 500 });
47 Ndef(\a).map(\freqs, Ndef(\lfos))
49 g.parent.close
52 argument::object
53 the nodeproxy whose settings are to be displayed.
55 argument::numItems
56 the number of items to display. If an envir is given, and no num, num is envir.size.
58 argument::parent
59 the parent view to display in; if none is given, a new window is created.
61 argument::bounds
62 the bounds within which to display; if none is given, bounds are calculated.
64 argument::makeSkip
65 flag whether to make a skipjack to manage updates of the envirgui. default is true.
67 argument::options
68 a list of additional information, e.g. flags about optional buttons.
70 InstanceMethods::
72 method::name
73 if in its own window, set the window's name
75 code::
76 g.name = "Yoohoo";
79 Examples::
81 code::
82         // put an NdefParamGui in an existing window - margin becomes 0@0
84 w = Window().front;
85 w.addFlowLayout;
86 g = NdefParamGui(Ndef(\a), 3, w);
87 NdefParamGui(Ndef(\c), 15, w);
89         // even
90 Ndef(\c).set(\otto, 123, \mops, [1,2,3], \kotzt, [0, 6, 0, 6]);
91 Ndef(\c).nodeMap.clear