A gui showing the Tdef's name, playing state, source state, and envir state. Optionally, its envir can also be edited.
g = TdefGui(); // make a TdefGui
g.object = Tdef(\a); // show when a Tdef is put in
Tdef(\a, { "boing".postln }); // show whether it has a source
Tdef(\a).play; // show whether playing, stopped, or ended, and pausable
Tdef(\a).set(\abc, 123); // show whether the tdef has an envir
g = TdefGui(Tdef(\a), 3); // with an envirgui for 3 items
Tdef(\a).set(\a, 12, \lofreq, [1, 10], \str, "someString", \oops, \oneSymbolTooMany);
( // put it in an existing window - margin becomes 0@0
w = Window().front; w.addFlowLayout;
TdefGui(Tdef(\a), 0, w);
TdefGui(Tdef(\a), 3, w);
)
" >" | if stopped, |
" _" | if playing and active, |
" |" | if it is playing, but the stream has ended. |
"paus" | shown when you can pause it, |
"rsum" | shown when you can resume it. |
green | a source exists, |
white | the source is nil. |
green | the Tdef has an envir, |
white | the envir is nil. |
Create a new JITGui that will be watching an object and display its state.
object |
the object to watch |
numItems |
the number of display items to use, e.g. how many fields for text, or how many EZSliders for single-number parameters. |
parent |
a parent view on which to display. If nil, a new window is created; parent can also be an existing window or a composite view. |
bounds |
a desired size and position where to display a JITGui. can be nil, a Point, or a Rect. JITGuis know their minimum size ( minSize ), and if bounds is nil, minSize is used. if bounds is a point or rect, it will be set to at least minSize. With a rect one can also supply a position where to display. If a point,shown size is the maximum of bounds and minSize |
makeSkip |
A flag whether to make a skipjack. If one uses a TdefGui as part of a larger gui ensemble, one may want to call checkUpdate on all of them together, not with separate skipJacks. |
options |
a list of additional information, e.g. flags about optional buttons. (this is used is some subclasses) |
a Tdef, or nil
the number of items in the envirGui
the parent view
the bounds of the -zone
the CompositeView within which the TdfGui is shown
the buttons
the gui for the Tdef's envir - if numItems > 0.
put an object in the gui.
(if the jitGui is in its own window)
move it to some specific location.
(if the jitGui is in its own window)
set the TdefGui's object to nil
(if the jitGui is in its own window)
and close its window.
a compileString that recreates the Tdef.
xxxxxxxxxx
// assume g from above is still there
g.srcString;
a compileString that recreates the Tdef's envir at edKey.
a compileString that recreates the Tdef's envir at edKeys.
edKeys |
Default value is nil. xxxxxxxxxx // assume g from above is still there g.editString; Tdef(\a).set(\foo, \bar); g.editString(\foo); g.editStrings; |
the keys in use in the envir
xxxxxxxxxx
g.getUsedKeys;
open a document with some strings at some location. used with src button, env button.
xxxxxxxxxx
g.openDoc(g.editStrings);
make an envirGui within zone.
xxxxxxxxxx
(
Tdef(\a, { |e| 100.do { |i| i.postln; 0.5.wait } });
t = TdefGui(Tdef(\a), 4);
Tdef(\a).set(\freq, 200, \dur, 0.1, \otto, 12, \ann, 1234);
)
Tdef(\a).stop;
Tdef(\a).play;
Tdef(\a).pause;
Tdef(\a).resume;
t.object_(nil);
t.object_(Tdef(\a));
(
w = Window("put it in a selfmade window").front;
w.addFlowLayout;
w.view.decorator.shift(50, 50);
TdefGui(Tdef(\a), 12, w)
)
Tdef(\b, { |e| 100.do { |i| Tdef(\a).set(\otto, 8.rand); exprand(0.1, 3.0).wait } });
Tdef(\b).play;
TdefGui(Tdef(\b));
// see all Tdefs:
TdefAllGui(16);