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 );
148 ^this.palette.baseColor;
151 background_ { arg color;
152 this.palette = this.palette.baseColor_(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 aColor;
170 selectionColor = aColor;
171 this.setProperty( \selectionColor, aColor );
174 drawLines_ { arg aBool;
176 this.setProperty( \drawLines, aBool );
179 drawRects_ { arg aBool;
181 this.setProperty( \drawRects, aBool );
184 thumbWidth_ { arg aFloat;
185 this.setProperty( \thumbWidth, aFloat; );
188 thumbHeight_ { arg aFloat;
189 this.setProperty( \thumbHeight, aFloat; );
192 thumbSize_ { arg aFloat;
193 this.setProperty( \thumbSize, aFloat; );
196 setThumbWidth { this.nonimpl("setThumbWidth"); }
198 setThumbHeight { this.nonimpl("setThumbHeight"); }
200 setThumbSize { this.nonimpl("setThumbSize"); }
202 metaAction_ { arg function;
203 this.manageMethodConnection( metaAction, function, 'metaAction()', \doMetaAction );
204 metaAction = function;
208 metaAction.value(this);
214 defaultCanReceiveDrag { ^true; }
216 this.value = QView.currentDrag;