Commit 8b721648 authored by Roman Haefeli's avatar Roman Haefeli
Browse files

implement groups and group colors

parent 42dc88c2
#N struct 1003.vertgrid float x float y float w float h;
#N struct 1003.horizgrid float x float y float w float h float c;
#N struct 1003.vertline float x float y float h float c float n float
nvis;
#N struct 1003.note float x float y float w float h float id float
gid float vel float c float vis;
#N canvas 1315 104 1037 869 10;
#N canvas 398 118 1117 771 testfeld 1;
#X scalar 1003.vertgrid 90 40 14 671 \;;
#X scalar 1003.vertgrid 105 40 14 671 \;;
#X scalar 1003.vertgrid 120 40 14 671 \;;
#X scalar 1003.vertgrid 135 40 14 671 \;;
#X scalar 1003.vertgrid 150 40 14 671 \;;
#X scalar 1003.vertgrid 165 40 14 671 \;;
#X scalar 1003.vertgrid 180 40 14 671 \;;
#X scalar 1003.vertgrid 195 40 14 671 \;;
#X scalar 1003.vertgrid 210 40 14 671 \;;
#X scalar 1003.vertgrid 225 40 14 671 \;;
#X scalar 1003.vertgrid 240 40 14 671 \;;
#X scalar 1003.vertgrid 255 40 14 671 \;;
#X scalar 1003.vertgrid 270 40 14 671 \;;
#X scalar 1003.vertgrid 285 40 14 671 \;;
#X scalar 1003.vertgrid 300 40 14 671 \;;
#X scalar 1003.vertgrid 315 40 14 671 \;;
#X scalar 1003.vertgrid 330 40 14 671 \;;
#X scalar 1003.vertgrid 345 40 14 671 \;;
#X scalar 1003.vertgrid 360 40 14 671 \;;
#X scalar 1003.vertgrid 375 40 14 671 \;;
#X scalar 1003.vertgrid 390 40 14 671 \;;
#X scalar 1003.vertgrid 405 40 14 671 \;;
#X scalar 1003.vertgrid 420 40 14 671 \;;
#X scalar 1003.vertgrid 435 40 14 671 \;;
#X scalar 1003.vertgrid 450 40 14 671 \;;
#X scalar 1003.vertgrid 465 40 14 671 \;;
#X scalar 1003.vertgrid 480 40 14 671 \;;
#X scalar 1003.vertgrid 495 40 14 671 \;;
#X scalar 1003.vertgrid 510 40 14 671 \;;
#X scalar 1003.vertgrid 525 40 14 671 \;;
#X scalar 1003.vertgrid 540 40 14 671 \;;
#X scalar 1003.vertgrid 555 40 14 671 \;;
#X scalar 1003.vertgrid 570 40 14 671 \;;
#X scalar 1003.vertgrid 585 40 14 671 \;;
#X scalar 1003.vertgrid 600 40 14 671 \;;
#X scalar 1003.vertgrid 615 40 14 671 \;;
#X scalar 1003.vertgrid 630 40 14 671 \;;
#X scalar 1003.vertgrid 645 40 14 671 \;;
#X scalar 1003.vertgrid 660 40 14 671 \;;
#X scalar 1003.vertgrid 675 40 14 671 \;;
#X scalar 1003.vertgrid 690 40 14 671 \;;
#X scalar 1003.vertgrid 705 40 14 671 \;;
#X scalar 1003.vertgrid 720 40 14 671 \;;
#X scalar 1003.vertgrid 735 40 14 671 \;;
#X scalar 1003.vertgrid 750 40 14 671 \;;
#X scalar 1003.vertgrid 765 40 14 671 \;;
#X scalar 1003.vertgrid 780 40 14 671 \;;
#X scalar 1003.vertgrid 795 40 14 671 \;;
#X scalar 1003.vertgrid 810 40 14 671 \;;
#X scalar 1003.vertgrid 825 40 14 671 \;;
#X scalar 1003.vertgrid 840 40 14 671 \;;
#X scalar 1003.vertgrid 855 40 14 671 \;;
#X scalar 1003.vertgrid 870 40 14 671 \;;
#X scalar 1003.vertgrid 885 40 14 671 \;;
#X scalar 1003.vertgrid 900 40 14 671 \;;
#X scalar 1003.vertgrid 915 40 14 671 \;;
#X scalar 1003.vertgrid 930 40 14 671 \;;
#X scalar 1003.vertgrid 945 40 14 671 \;;
#X scalar 1003.vertgrid 960 40 14 671 \;;
#X scalar 1003.vertgrid 975 40 14 671 \;;
#X scalar 1003.vertgrid 990 40 14 671 \;;
#X scalar 1003.vertgrid 1005 40 14 671 \;;
#X scalar 1003.vertgrid 1020 40 14 671 \;;
#X scalar 1003.vertgrid 1035 40 14 671 \;;
#X scalar 1003.horizgrid 90 40 960 13 887 \;;
#X scalar 1003.horizgrid 90 54 960 13 777 \;;
#X scalar 1003.horizgrid 90 68 960 13 887 \;;
#X scalar 1003.horizgrid 90 82 960 13 777 \;;
#X scalar 1003.horizgrid 90 96 960 13 887 \;;
#X scalar 1003.horizgrid 90 110 960 13 777 \;;
#X scalar 1003.horizgrid 90 124 960 13 887 \;;
#X scalar 1003.horizgrid 90 138 960 13 887 \;;
#X scalar 1003.horizgrid 90 152 960 13 777 \;;
#X scalar 1003.horizgrid 90 166 960 13 887 \;;
#X scalar 1003.horizgrid 90 180 960 13 777 \;;
#X scalar 1003.horizgrid 90 194 960 13 887 \;;
#X scalar 1003.horizgrid 90 208 960 13 887 \;;
#X scalar 1003.horizgrid 90 222 960 13 777 \;;
#X scalar 1003.horizgrid 90 236 960 13 887 \;;
#X scalar 1003.horizgrid 90 250 960 13 777 \;;
#X scalar 1003.horizgrid 90 264 960 13 887 \;;
#X scalar 1003.horizgrid 90 278 960 13 777 \;;
#X scalar 1003.horizgrid 90 292 960 13 887 \;;
#X scalar 1003.horizgrid 90 306 960 13 887 \;;
#X scalar 1003.horizgrid 90 320 960 13 777 \;;
#X scalar 1003.horizgrid 90 334 960 13 887 \;;
#X scalar 1003.horizgrid 90 348 960 13 777 \;;
#X scalar 1003.horizgrid 90 362 960 13 887 \;;
#X scalar 1003.horizgrid 90 376 960 13 887 \;;
#X scalar 1003.horizgrid 90 390 960 13 777 \;;
#X scalar 1003.horizgrid 90 404 960 13 887 \;;
#X scalar 1003.horizgrid 90 418 960 13 777 \;;
#X scalar 1003.horizgrid 90 432 960 13 887 \;;
#X scalar 1003.horizgrid 90 446 960 13 777 \;;
#X scalar 1003.horizgrid 90 460 960 13 887 \;;
#X scalar 1003.horizgrid 90 474 960 13 887 \;;
#X scalar 1003.horizgrid 90 488 960 13 777 \;;
#X scalar 1003.horizgrid 90 502 960 13 887 \;;
#X scalar 1003.horizgrid 90 516 960 13 777 \;;
#X scalar 1003.horizgrid 90 530 960 13 887 \;;
#X scalar 1003.horizgrid 90 544 960 13 887 \;;
#X scalar 1003.horizgrid 90 558 960 13 777 \;;
#X scalar 1003.horizgrid 90 572 960 13 887 \;;
#X scalar 1003.horizgrid 90 586 960 13 777 \;;
#X scalar 1003.horizgrid 90 600 960 13 887 \;;
#X scalar 1003.horizgrid 90 614 960 13 777 \;;
#X scalar 1003.horizgrid 90 628 960 13 887 \;;
#X scalar 1003.horizgrid 90 642 960 13 887 \;;
#X scalar 1003.horizgrid 90 656 960 13 777 \;;
#X scalar 1003.horizgrid 90 670 960 13 887 \;;
#X scalar 1003.horizgrid 90 684 960 13 777 \;;
#X scalar 1003.horizgrid 90 698 960 13 887 \;;
#X scalar 1003.vertline 90 40 672 0 1 1 \;;
#X scalar 1003.vertline 105 40 672 888 1 0 \;;
#X scalar 1003.vertline 120 40 672 888 1 0 \;;
#X scalar 1003.vertline 135 40 672 888 1 0 \;;
#X scalar 1003.vertline 150 40 672 666 1 0 \;;
#X scalar 1003.vertline 165 40 672 888 1 0 \;;
#X scalar 1003.vertline 180 40 672 888 1 0 \;;
#X scalar 1003.vertline 195 40 672 888 1 0 \;;
#X scalar 1003.vertline 210 40 672 666 1 0 \;;
#X scalar 1003.vertline 225 40 672 888 1 0 \;;
#X scalar 1003.vertline 240 40 672 888 1 0 \;;
#X scalar 1003.vertline 255 40 672 888 1 0 \;;
#X scalar 1003.vertline 270 40 672 666 1 0 \;;
#X scalar 1003.vertline 285 40 672 888 1 0 \;;
#X scalar 1003.vertline 300 40 672 888 1 0 \;;
#X scalar 1003.vertline 315 40 672 888 1 0 \;;
#X scalar 1003.vertline 330 40 672 0 2 1 \;;
#X scalar 1003.vertline 345 40 672 888 2 0 \;;
#X scalar 1003.vertline 360 40 672 888 2 0 \;;
#X scalar 1003.vertline 375 40 672 888 2 0 \;;
#X scalar 1003.vertline 390 40 672 666 2 0 \;;
#X scalar 1003.vertline 405 40 672 888 2 0 \;;
#X scalar 1003.vertline 420 40 672 888 2 0 \;;
#X scalar 1003.vertline 435 40 672 888 2 0 \;;
#X scalar 1003.vertline 450 40 672 666 2 0 \;;
#X scalar 1003.vertline 465 40 672 888 2 0 \;;
#X scalar 1003.vertline 480 40 672 888 2 0 \;;
#X scalar 1003.vertline 495 40 672 888 2 0 \;;
#X scalar 1003.vertline 510 40 672 666 2 0 \;;
#X scalar 1003.vertline 525 40 672 888 2 0 \;;
#X scalar 1003.vertline 540 40 672 888 2 0 \;;
#X scalar 1003.vertline 555 40 672 888 2 0 \;;
#X scalar 1003.vertline 570 40 672 0 3 1 \;;
#X scalar 1003.vertline 585 40 672 888 3 0 \;;
#X scalar 1003.vertline 600 40 672 888 3 0 \;;
#X scalar 1003.vertline 615 40 672 888 3 0 \;;
#X scalar 1003.vertline 630 40 672 666 3 0 \;;
#X scalar 1003.vertline 645 40 672 888 3 0 \;;
#X scalar 1003.vertline 660 40 672 888 3 0 \;;
#X scalar 1003.vertline 675 40 672 888 3 0 \;;
#X scalar 1003.vertline 690 40 672 666 3 0 \;;
#X scalar 1003.vertline 705 40 672 888 3 0 \;;
#X scalar 1003.vertline 720 40 672 888 3 0 \;;
#X scalar 1003.vertline 735 40 672 888 3 0 \;;
#X scalar 1003.vertline 750 40 672 666 3 0 \;;
#X scalar 1003.vertline 765 40 672 888 3 0 \;;
#X scalar 1003.vertline 780 40 672 888 3 0 \;;
#X scalar 1003.vertline 795 40 672 888 3 0 \;;
#X scalar 1003.vertline 810 40 672 0 4 1 \;;
#X scalar 1003.vertline 825 40 672 888 4 0 \;;
#X scalar 1003.vertline 840 40 672 888 4 0 \;;
#X scalar 1003.vertline 855 40 672 888 4 0 \;;
#X scalar 1003.vertline 870 40 672 666 4 0 \;;
#X scalar 1003.vertline 885 40 672 888 4 0 \;;
#X scalar 1003.vertline 900 40 672 888 4 0 \;;
#X scalar 1003.vertline 915 40 672 888 4 0 \;;
#X scalar 1003.vertline 930 40 672 666 4 0 \;;
#X scalar 1003.vertline 945 40 672 888 4 0 \;;
#X scalar 1003.vertline 960 40 672 888 4 0 \;;
#X scalar 1003.vertline 975 40 672 888 4 0 \;;
#X scalar 1003.vertline 990 40 672 666 4 0 \;;
#X scalar 1003.vertline 1005 40 672 888 4 0 \;;
#X scalar 1003.vertline 1020 40 672 888 4 0 \;;
#X scalar 1003.vertline 1035 40 672 888 4 0 \;;
#X scalar 1003.vertline 1050 40 672 0 5 0 \;;
#X scalar 1003.note 270 306 60 13 0 0 96 600 0 \;;
#X scalar 1003.note 420 390 60 13 1 0 64 400 0 \;;
#X scalar 1003.note 645 264 60 13 2 0 105 700 0 \;;
#X scalar 1003.note 630 502 60 13 3 0 64 400 0 \;;
#X scalar 1003.note 405 530 60 13 4 0 119 800 0 \;;
#X scalar 1003.note 615 376 330 13 5 0 108 700 0 \;;
#X scalar 1003.note 195 460 60 13 1 0 113 700 0 \;;
#X scalar 1003.note 660 502 60 13 3 0 127 800 0 \;;
#X scalar 1003.note 435 236 60 13 6 0 123 800 0 \;;
#X scalar 1003.note 525 138 195 13 7 0 127 800 0 \;;
#X scalar 1003.note 570 222 360 13 8 0 127 800 0 \;;
#X scalar 1003.note 375 334 315 13 9 0 118 800 0 \;;
#X scalar 1003.note 450 418 135 13 10 0 64 400 0 \;;
#X scalar 1003.note 465 418 270 13 10 0 109 700 0 \;;
#X scalar 1003.note 405 418 150 13 8 0 64 400 0 \;;
#X scalar 1003.note 615 306 60 13 5 0 64 400 0 \;;
#X scalar 1003.note 225 292 60 13 0 0 64 400 0 \;;
#X scalar 1003.note 330 306 60 13 1 0 64 400 0 \;;
#X scalar 1003.note 480 250 60 13 2 0 64 400 0 \;;
#X scalar 1003.note 510 362 60 13 5 0 64 400 0 \;;
#X scalar 1003.note 285 460 45 13 0 0 64 400 0 \;;
#X scalar 1003.note 300 474 60 13 1 0 64 400 0 \;;
#X scalar 1003.note 450 446 60 13 2 0 64 400 0 \;;
#X scalar 1003.note 495 572 60 13 3 0 64 400 0 \;;
#X scalar 1003.note 615 404 60 13 4 0 64 400 0 \;;
#X scalar 1003.note 720 600 60 13 5 0 64 400 0 \;;
#X scalar 1003.note 825 656 60 13 6 0 64 400 0 \;;
#X scalar 1003.note 885 418 60 13 7 0 64 400 0 \;;
#X scalar 1003.note 735 264 60 13 8 0 64 400 0 \;;
#X scalar 1003.note 555 250 60 13 9 0 64 400 0 \;;
#X scalar 1003.note 435 264 60 13 10 0 64 400 0 \;;
#X scalar 1003.note 330 460 60 13 1 0 64 400 0 \;;
#X scalar 1003.note 645 418 60 13 0 0 64 400 0 \;;
#X scalar 1003.note 225 292 60 13 0 0 65 400 0 \;;
#X scalar 1003.note 285 292 15 13 1 0 64 400 0 \;;
#X scalar 1003.note 270 292 210 13 0 0 64 400 0 \;;
#X scalar 1003.note 255 292 420 13 0 0 64 400 0 \;;
#X scalar 1003.note 510 362 60 13 1 0 64 400 0 \;;
#X scalar 1003.note 435 292 60 13 0 0 127 800 0 \;;
#X scalar 1003.note 435 292 15 13 0 0 64 400 0 \;;
#X scalar 1003.note 495 292 15 13 1 0 64 400 0 \;;
#X scalar 1003.note 450 292 15 13 1 0 64 400 0 \;;
#X scalar 1003.note 480 292 15 13 2 0 64 400 0 \;;
#X scalar 1003.note 450 292 60 13 1 0 64 400 0 \;;
#X scalar 1003.note 345 264 165 13 0 0 64 400 0 \;;
#N canvas 0 99 1037 869 10;
#N canvas 810 99 1117 771 testfeld 1;
#X restore 39 55 pd testfeld;
#X msg 632 305 clear;
#X obj 581 439 s pd-testfeld;
#X msg 644 365 clear;
#X obj 581 524 s pd-testfeld;
#X obj 67 773 s pd-testfeld;
#X obj 67 373 del 0;
#X obj 67 400 f;
......@@ -270,10 +42,10 @@ certain period.;
#X msg 279 464 0;
#X obj 252 322 t b b;
#X obj 279 346 pointer;
#X obj 574 9 loadbang;
#X obj 574 32 \$0;
#X obj 581 238 r \$0.init;
#X obj 552 8 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
#X obj 437 15 loadbang;
#X obj 437 38 \$0;
#X obj 581 298 r \$0.init;
#X obj 416 14 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#N canvas 133 127 401 394 create_horizgrid 0;
#X obj 16 86 t a b;
......@@ -399,20 +171,20 @@ certain period.;
#X connect 17 0 18 0;
#X connect 18 0 5 0;
#X connect 20 0 19 0;
#X restore 598 358 pd create_horizgrid;
#X restore 612 418 pd create_horizgrid;
#N canvas 75 102 410 167 horizgrid-template 0;
#X obj 19 18 filledpolygon c c 1 0 0 0 h w h w 0;
#X obj 20 44 struct \$0.horizgrid float x float y float w float h float
c;
#X obj 20 73 s \$0.horizgrid.send;
#X connect 1 0 2 0;
#X restore 736 330 pd horizgrid-template;
#X restore 756 390 pd horizgrid-template;
#N canvas 60 99 380 157 vertgrid-template 0;
#X obj 19 18 filledpolygon 0 0 1 0 0 0 h w h w 0;
#X obj 19 42 struct \$0.vertgrid float x float y float w float h;
#X obj 19 66 s \$0.vertgrid.send;
#X connect 1 0 2 0;
#X restore 736 357 pd vertgrid-template;
#X restore 756 417 pd vertgrid-template;
#N canvas 133 127 401 394 create_vertgrid 0;
#X obj 16 86 t a b;
#X obj 16 109 until;
......@@ -507,7 +279,7 @@ c;
#X connect 18 2 8 0;
#X connect 18 3 9 0;
#X connect 19 0 14 0;
#X restore 615 330 pd create_vertgrid;
#X restore 628 390 pd create_vertgrid;
#X obj 67 152 r \$0.horizgrid.send;
#X obj 67 175 route click;
#X obj 67 198 get \$0.horizgrid y;
......@@ -522,8 +294,7 @@ c;
#X obj 19 42 struct \$0.vertline float x float y float h float c float
n float nvis;
#X connect 3 0 1 0;
#X restore 736 384 pd vertline-template;
#X obj 581 278 t b b b b;
#X restore 756 444 pd vertline-template;
#N canvas 43 99 400 432 create_vertline 0;
#X obj 16 116 t a b;
#X obj 16 139 until;
......@@ -675,25 +446,18 @@ n float nvis;
#X connect 19 1 20 5;
#X connect 20 0 9 0;
#X connect 22 0 12 0;
#X restore 581 386 pd create_vertline;
#X restore 596 446 pd create_vertline;
#X obj 67 340 t b b a;
#X obj 67 453 list append;
#X msg 67 314 \$2 \$1;
#X msg 575 55 \; \$1.stepcount 64 \; \$1.pitchrange 48 \; \$1.stepviswidth
15 \; \$1.stepvisheight 14 \; \$1.canvastopmargin 40 \; \$1.canvasleftmargin
90 \; \$1.stepkeycolor1 887 \; \$1.stepkeycolor2 777 \; \$1.griddivision
4 \; \$1.gridsubdivision 4 \; \$1.init bang \;;
#N canvas 79 99 782 466 note-template 0;
#X obj 122 337 int;
#X obj 51 267 max 0;
#X obj 51 290 min 127;
#X obj 122 315 / 14.2;
#X obj 121 264 max 0;
#X obj 121 287 min 127;
#X obj 51 166 route click change;
#X obj 51 315 t a a;
#X obj 122 361 * 100;
#X obj 121 312 t a a;
#X obj 32 141 t a a a;
#X obj 32 34 drawnumber -v vis vel 1 -14 0;
#X obj 32 409 s \$0.note.send;
#X obj 32 429 s \$0.note.send;
#X obj 32 104 struct \$0.note float x float y float w float h float
id float gid float vel float c float vis;
#X obj 51 189 t p p, f 48;
......@@ -701,41 +465,106 @@ id float gid float vel float c float vis;
#X obj 264 353 f;
#X obj 279 295 r \$0.stepvisheight;
#X obj 279 318 - 1;
#X obj 51 212 get \$0.note vel w, f 24;
#X obj 51 386 set \$0.note vel c w h, f 48;
#X obj 226 265 r \$0.stepviswidth;
#X obj 193 289 div;
#X obj 193 312 *;
#X obj 32 54 filledpolygon -v vis c 444 1 0 0 0 h w h w 0;
#X obj 193 335 max;
#X connect 0 0 6 0;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 3 0 0 0;
#X connect 4 0 11 0;
#X connect 4 1 11 0;
#X connect 5 0 17 0;
#X connect 5 1 3 0;
#X connect 6 0 17 1;
#X connect 7 0 9 0;
#X connect 7 1 4 0;
#X connect 10 0 7 0;
#X connect 11 0 16 0;
#X connect 11 1 17 4;
#X connect 12 0 1 0;
#X connect 12 1 13 0;
#X connect 13 0 17 3;
#X connect 14 0 15 0;
#X connect 15 0 13 1;
#X connect 16 0 12 0;
#X connect 16 1 19 0;
#X connect 18 0 19 1;
#X connect 18 0 20 1;
#X connect 18 0 22 1;
#N canvas 645 450 401 207 get.gid.clr 0;
#X obj 11 15 inlet;
#X obj 30 74 s \$0.gid2lr.get;
#X obj 30 98 r \$0.gid2lr.set;
#X obj 11 42 t b a b;
#X obj 11 131 list append;
#X obj 11 154 outlet;
#X connect 0 0 3 0;
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 3 1 1 0;
#X connect 3 2 4 1;
#X connect 4 0 5 0;
#X restore 51 335 pd get.gid.clr;
#N canvas 320 203 446 363 clr.* 0;
#X obj 28 62 t a a a;
#X obj 28 112 div 100;
#X obj 78 113 mod 100;
#X obj 78 136 div 10;
#X obj 128 112 mod 10;
#X obj 28 165 *;
#X obj 28 188 int;
#X obj 78 165 *;
#X obj 78 188 int;
#X obj 128 165 *;
#X obj 128 188 int;
#X obj 230 103 inlet;
#X obj 28 212 min 9;
#X obj 78 212 min 9;
#X obj 128 212 min 9;
#X obj 28 235 * 100;
#X obj 78 235 * 10;
#X obj 128 235 * 1;
#X obj 28 262 +;
#X obj 28 285 +;
#X obj 28 311 outlet;
#X obj 28 24 inlet;
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 4 0;
#X connect 1 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 6 0;
#X connect 6 0 12 0;
#X connect 7 0 8 0;
#X connect 8 0 13 0;
#X connect 9 0 10 0;
#X connect 10 0 14 0;
#X connect 11 0 9 1;
#X connect 11 0 7 1;
#X connect 11 0 5 1;
#X connect 12 0 15 0;
#X connect 13 0 16 0;
#X connect 14 0 17 0;
#X connect 15 0 18 0;
#X connect 16 0 18 1;
#X connect 17 0 19 1;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 0 22 0;
#X connect 22 0 17 2;
#X restore 736 410 pd note-template;
#X connect 21 0 0 0;
#X restore 51 369 pd clr.*;
#X obj 121 361 / 113;
#X obj 51 212 get \$0.note gid vel w, f 24;
#X obj 51 406 set \$0.note c vel w h, f 48;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 2 0 8 0;
#X connect 2 1 8 0;
#X connect 3 0 20 0;
#X connect 3 1 22 1;
#X connect 4 0 6 0;
#X connect 4 1 2 0;
#X connect 7 0 4 0;
#X connect 8 0 21 0;
#X connect 8 1 22 4;
#X connect 9 0 18 0;
#X connect 9 1 10 0;
#X connect 10 0 22 3;
#X connect 11 0 12 0;
#X connect 12 0 10 1;
#X connect 13 0 14 1;
#X connect 13 0 15 1;
#X connect 13 0 17 1;
#X connect 14 0 15 0;
#X connect 15 0 17 0;
#X connect 17 0 22 2;
#X connect 18 0 19 0;
#X connect 19 0 22 0;
#X connect 20 0 19 1;
#X connect 21 0 9 0;
#X connect 21 1 0 0;
#X connect 21 2 14 0;
#X restore 759 341 pd note-template;
#X obj 252 247 r \$0.note.send;
#X obj 279 372 get \$0.note id;
#X obj 279 533 set \$0.note vis;
......@@ -746,18 +575,14 @@ id float gid float vel float c float vis;
#X obj 7 21 inlet;
#X obj 7 145 outlet;
#X obj 7 115 list append 30;
#X obj 88 20 r \$0.default.duration;
#X obj 88 90 *;
#X obj 103 61 r \$0.stepviswidth;
#X obj 225 19 r \$0.init;
#X msg 225 42 4;
#X obj 88 20 r \$0.default.dur;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 4 0 2 1;
#X connect 5 0 4 1;
#X connect 6 0 7 0;
#X connect 7 0 4 0;
#X connect 3 0 2 1;
#X connect 4 0 3 1;
#X connect 5 0 3 0;
#X restore 67 493 pd append.w;
#N canvas 26 99 432 235 append.h 0;
#X obj 7 21 inlet;
......@@ -813,11 +638,85 @@ id float gid float vel float c float vis;
#N canvas 26 99 450 300 append.c 0;
#X obj 7 21 inlet;
#X obj 7 152 outlet;
#X obj 94 39 r \$0.default.c;
#X obj 7 94 list append 400;
#X obj 143 19 r \$0.default.gid;
#X obj 264 22 r \$0.default.vel;
#N canvas 645 450 401 207 get.gid.clr 0;
#X obj 11 15 inlet;
#X obj 30 74 s \$0.gid2lr.get;
#X obj 30 98 r \$0.gid2lr.set;
#X obj 11 42 t b a b;
#X obj 11 131 list append;
#X obj 11 154 outlet;
#X connect 0 0 3 0;
#X connect 2 0 3 1;
#X connect 3 0 1 0;
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 3 1 1 0;
#X connect 3 2 4 1;
#X connect 4 0 5 0;
#X restore 143 53 pd get.gid.clr;
#N canvas 320 203 446 363 clr.* 0;
#X obj 28 62 t a a a;
#X obj 28 112 div 100;
#X obj 78 113 mod 100;
#X obj 78 136 div 10;
#X obj 128 112 mod 10;
#X obj 28 165 *;
#X obj 28 188 int;
#X obj 78 165 *;
#X obj 78 188 int;
#X obj 128 165 *;
#X obj 128 188 int;
#X obj 230 103 inlet;
#X obj 28 212 min 9;
#X obj 78 212 min 9;
#X obj 128 212 min 9;
#X obj 28 235 * 100;
#X obj 78 235 * 10;
#X obj 128 235 * 1;
#X obj 28 262 +;
#X obj 28 285 +;
#X obj 28 311 outlet;
#X obj 28 24 inlet;
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 4 0;
#X connect 1 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 6 0;
#X connect 6 0 12 0;
#X connect 7 0 8 0;
#X connect 8 0 13 0;
#X connect 9 0 10 0;
#X connect 10 0 14 0;
#X connect 11 0 9 1;
#X connect 11 0 7 1;
#X connect 11 0 5 1;
#X connect 12 0 15 0;
#X connect 13 0 16 0;
#X connect 14 0 17 0;
#X connect 15 0 18 0;
#X connect 16 0 18 1;
#X connect 17 0 19 1;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 21 0 0 0;
#X restore 143 131 pd clr.*;
#X obj 143 92 f;
#X obj 264 83 t b a;
#X obj 264 60 / 113;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 3 0 5 0;
#X connect 4 0 9 0;
#X connect 5 0 7 0;
#X connect 6 0 2 1;
#X connect 7 0 6 0;
#X connect 8 0 7 0;
#X connect 8 1 6 1;
#X connect 9 0 8 0;
#X restore 67 608 pd append.c;
#N canvas 26 99 414 215 append.vis 0;
#X obj 7 21 inlet;
......@@ -933,24 +832,139 @@ id float gid float vel float c float vis;
#X obj 487 628 get \$0.note vel id;
#X obj 487 795 s \$0.velocity;
#X obj 835 16 array define \$0.active 1000;
#N canvas 0 99 408 150 gid.button-template 0;
#X obj 17 26 filledpolygon clr 0 hl 0 0 0 15 15 15 15 0;
#X obj 16 99 s \$0.git.button.send;
#X obj 16 60 struct \$0.git.button float x float y float clr float
hl float gid;
#X connect 2 0 1 0;
#X restore 756 475 pd gid.button-template;
#N canvas 458 313 683 490 create_gid.button 0;
#X obj 250 316 r \$0.canvasleftmargin;
#X obj 218 120 f;
#X obj 218 143 t a a;
#X obj 218 417 list prepend \$0;
#X obj 12 53 r \$0.git.button.send;
#X obj 12 76 route click;
#X obj 12 249 set \$0.git.button hl;
#X msg 260 95 0;
#X obj 271 126 + 1;
#X obj 218 317 * 30;
#X obj 218 340 +;
#X obj 252 199 == 0;
#X obj 252 224 sel 0 1;
#X msg 252 254 1;
#X msg 281 253 3;
#X obj 12 99 t b p p b;
#X obj 63 145 pointer;
#X obj 63 168 t b p;
#X msg 63 197 1;
#X msg 12 191 3;
#X obj 218 16 inlet;
#X obj 218 468 outlet;
#X obj 499 108 list store;
#X msg 499 82 get \$1 1;
#X obj 499 133 s \$0.gid2lr.set;
#X obj 499 54 r \$0.gid2lr.get;
#X obj 563 80 r \$0.gidcolorlist;
#N canvas 645 450 401 207 get.gid.clr 0;
#X obj 11 15 inlet;
#X obj 30 74 s \$0.gid2lr.get;
#X obj 30 98 r \$0.gid2lr.set;
#X obj 11 42 t b a b;
#X obj 11 131 list append;
#X obj 11 154 outlet;
#X connect 0 0 3 0;
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 3 1 1 0;
#X connect 3 2 4 1;
#X connect 4 0 5 0;
#X restore 235 291 pd get.gid.clr;
#X obj 295 15 r \$0.gidcolorlist;
#X obj 295 38 list length;
#X obj 218 65 t a b;
#X obj 218 39 f;
#X obj 218 91 until;
#X text 239 391 x clr hl gid;
#X obj 218 170 t a a a a;
#X obj 218 370 pack f f f f, f 23;
#X msg 218 445 scalar \$1.git.button \$2 20 \$3 \$4 \$5;
#X obj 250 339 + 400;
#X connect 0 0 37 0;
#X connect 1 0 2 0;
#X connect 2 0 34 0;
#X connect 2 1 8 0;
#X connect 3 0 36 0;
#X connect 4 0 5 0;
#X connect 5 0 15 0;
#X connect 7 0 1 1;
#X connect 8 0 1 1;
#X connect 9 0 10 0;
#X connect 10 0 35 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 12 1 14 0;
#X connect 13 0 35 2;
#X connect 14 0 35 2;
#X connect 15 0 19 0;
#X connect 15 1 6 1;
#X connect 15 2 16 1;
#X connect 15 3 16 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 17 1 6 1;
#X connect 18 0 6 0;
#X connect 19 0 6 0;
#X connect 20 0 31 0;
#X connect 22 0 24 0;
#X connect 23 0 22 0;
#X connect 25 0 23 0;
#X connect 26 0 22 1;
#X connect 27 0 35 1;