Might be easier to just instantiate a scalar
within the patch.  (See attached)

Benefits
* you can select it in editmode and move it where you want
* you can change multiple values at once in a ds array (just like a
"Put" menu array) if there's just a y value, as in my example
* you can add or subtract sliders as easy as scrolling the number box to 
[setsize]

Drawbacks:
* no "jump on click" (this would require scalars to report _where_ they were 
clicked)
* small 10x10 draggable "hotspot", just like "Put" menu arrays
* can't simply "get" the array values as a list-- you have to iterate through it

* hard to "gop-ify"


-Jonathan



----- Original Message -----
> From: Pierre-Olivier Boulant <po.boul...@free.fr>
> To: PD-List <pd-list@iem.at>
> Cc: 
> Sent: Sunday, February 3, 2013 2:37 PM
> Subject: [PD] GOP-GUI-dynamic patching weirdness
> 
> Hello,
> 
> I've been trying to make a copy of the Max object called 
> "multislider". From what I gathered it's a set of sliders that 
> resizes itself according to the length of the list of values it receives. It 
> was 
> a request posted here:
> http://codelab.fr/3980
> Sounds like something doable with dynamic patching!
> 
> I had to build some pack-like and unpack-like objects that I could create 
> with a 
> variable number of in/out-lets respectively. That bit seems ok.
> 
> But there is some weirdness on my system. (Win 7, 64bit with Pd-extended 
> 0.43.4 
> win32).
> - First when I start the example patch I have no problem as long as I play 
> with 
> the sliders.
> But when I start to change the values of any of the numboxes, that's when 
> things start to look ugly. See the screen shot.
> - I have patch cords supposed to be hidden that show through outside of the 
> GOP. 
> I can live with that.
> - More concerning I can't see the cursors moving at all. I have to open the 
> abstraction to have them drawn in the subpatch of the abstraction. And then 
> once 
> I close the abstraction, the cursors are properly drawn in the example patch. 
> I 
> can play with them or with the set of numboxes that corresponds to the 
> current 
> number of sliders. Once I change set and the abstractions is resized the 
> cursors 
> are set to zero and won't move.
> In any case the values are still flowing through the abstractions fine, but, 
> you 
> just can't see the cursors of the sliders.
> 
> Maybe mixing GOP/GUI and dynamic patching isn't such a swell idea... ;)
> 
> Anything worth reporting in the bug tracker?
> 
> Cheers
> pob
> 
> _______________________________________________
> Pd-list@iem.at mailing list
> UNSUBSCRIBE and account-management -> 
> http://lists.puredata.info/listinfo/pd-list
> 
#N struct multislider float x float y array a bar;
#N struct bar float y;
#N canvas 15 19 642 622 10;
#N canvas 606 213 450 300 bar 0;
#X obj 113 42 struct bar float y;
#X obj 112 105 filledpolygon 900 0 1 -5 -5 5 -5 5 y(0:127)(0:127) -5
y(0:127)(0:127);
#X obj 88 166 drawnumber y -5 y(0:127)(0:127);
#X restore 365 144 pd bar;
#X obj 428 -1 namecanvas foo;
#X msg 197 281 traverse foo \, next;
#X obj 197 303 pointer;
#X floatatom 74 226 5 0 0 1 no_of_sliders - -;
#X obj 197 255 loadbang;
#N canvas 789 224 450 300 multislider 0;
#X obj 83 96 plot -y y(0:127)(0:-127) a 0 0 0 0 25;
#X obj 66 30 struct multislider float x float y array a bar;
#X restore 365 166 pd multislider;
#X msg 429 21 \; foo scalar multislider 20 120;
#X scalar multislider 20 120 \; 118 \; 127 \; 127 \; 122 \; 99 \; 84
\; 58 \; 58 \; 48 \; 44 \; 54 \; \;;
#X obj 74 331 setsize multislider a;
#X text 301 67 <-- click-drag to change multiple values at once;
#X msg 365 196 traverse foo \, next;
#X obj 386 248 pointer;
#X obj 386 300 getsize multislider a;
#X obj 386 362 until;
#X msg 441 352 0;
#X obj 386 270 t a a;
#X obj 386 428 element multislider a;
#X obj 386 394 f;
#X obj 416 394 + 1;
#X obj 386 450 get bar y;
#X obj 386 505 t a;
#X obj 365 530 list;
#X obj 365 554 print;
#X obj 365 221 t b a;
#X obj 386 321 t anything bang;
#X text 489 194 <-- get list of values;
#X obj 386 483 list prepend;
#X connect 2 0 3 0;
#X connect 3 0 9 1;
#X connect 4 0 9 0;
#X connect 5 0 2 0;
#X connect 11 0 24 0;
#X connect 12 0 16 0;
#X connect 13 0 25 0;
#X connect 14 0 18 0;
#X connect 15 0 18 1;
#X connect 16 0 13 0;
#X connect 16 1 17 1;
#X connect 17 0 20 0;
#X connect 18 0 19 0;
#X connect 18 0 17 0;
#X connect 19 0 18 1;
#X connect 20 0 27 0;
#X connect 21 0 22 1;
#X connect 21 0 27 1;
#X connect 22 0 23 0;
#X connect 24 0 22 0;
#X connect 24 1 12 0;
#X connect 25 0 14 0;
#X connect 25 1 15 0;
#X connect 25 1 27 1;
#X connect 27 0 21 0;
_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to