3 var <editable, <step, <grid, <gridOn = false;
4 var <gridColor, <strokeColor, <fillColor, <selectionColor;
5 var <drawLines = true, <drawRects = true;
10 editable_ { arg aBool;
12 this.setProperty( \editable, aBool );
15 setEditable { arg index, flag;
16 this.invokeMethod( \setEditableAt, [index, flag] );
21 this.setProperty( \step, aFloat );
25 ^this.getProperty( \horizontalOrder ) != 0;
28 keepHorizontalOrder_ { arg bool;
29 this.setProperty( \horizontalOrder, if(bool){1}{0} );
33 ^this.getProperty( \selectionForm ) == 0;
36 elasticSelection_ { arg bool;
37 this.setProperty( \selectionForm, if(bool){0}{1} );
41 ^this.getProperty( \value );
45 this.setProperty( \value, anArray );
48 valueAction_ { arg anArray;
49 this.setProperty( \value, anArray );
54 ^this.getProperty( \index );
58 ^this.setProperty( \index, index );
65 selectIndex { arg index;
67 this.invokeMethod( \deselectAll );
69 this.invokeMethod( \select, [index,false] );
74 deselectIndex { arg index;
75 this.invokeMethod( \deselect, index );
79 ^this.getProperty( \x );
83 this.setProperty( \x, aFloat );
87 ^this.getProperty( \y );
91 this.setProperty( \y, aFloat );
94 currentvalue { ^this.y }
96 currentvalue_ { arg aFloat;
100 setString { arg index, string;
101 this.invokeMethod( \setStringAt, [index, string] );
104 strings_ { arg anArray;
105 this.setProperty( \strings, anArray );
108 curves { this.nonimpl( "curves" ); }
110 curves_ { arg curves;
111 this.invokeMethod( \setCurves,
112 if(curves.size > 0) { [curves.collect{|c| QCurve(c)}] } { QCurve(curves) }
117 var times = [0] ++ env.times.integrate;
118 if( times.last > 0 ) {times = times / times.last};
119 this.value = [times, env.levels];
120 this.curves = env.curves;
125 this.setProperty( \grid, aPoint );
130 this.setProperty( \gridOn, aBool );
133 gridColor_ { arg aColor;
135 this.setProperty( \gridColor, aColor );
138 connect { arg source, targets;
139 this.invokeMethod( \connectElements, [source, targets] );
142 strokeColor_ { arg aColor;
143 strokeColor = aColor;
144 this.setProperty( \strokeColor, aColor );
151 background_ { arg color;
152 this.palette = this.palette.base_(color);
155 fillColor_ { arg aColor;
157 this.setProperty( \fillColor, aColor );
160 setFillColor { arg index, color;
161 this.invokeMethod( \setFillColorAt, [index, color] );
164 colors_ { arg strokeColor, fillColor;
165 this.strokeColor_( strokeColor );
166 this.fillColor_( fillColor );
169 selectionColor_ { arg color;
170 this.palette = this.palette.highlight_(color);
173 drawLines_ { arg aBool;
175 this.setProperty( \drawLines, aBool );
178 drawRects_ { arg aBool;
180 this.setProperty( \drawRects, aBool );
183 thumbWidth_ { arg aFloat;
184 this.setProperty( \thumbWidth, aFloat; );
187 thumbHeight_ { arg aFloat;
188 this.setProperty( \thumbHeight, aFloat; );
191 thumbSize_ { arg aFloat;
192 this.setProperty( \thumbSize, aFloat; );
195 setThumbWidth { this.nonimpl("setThumbWidth"); }
197 setThumbHeight { this.nonimpl("setThumbHeight"); }
199 setThumbSize { this.nonimpl("setThumbSize"); }
201 metaAction_ { arg function;
202 this.manageMethodConnection( metaAction, function, 'metaAction()', \doMetaAction );
203 metaAction = function;
207 metaAction.value(this);
213 defaultCanReceiveDrag { ^true; }
215 this.value = QView.currentDrag;