Commit cb71feaf authored by Roman Haefeli's avatar Roman Haefeli
Browse files

respect boundaries when scrolling up/down and left/right

parent 76ea5543
......@@ -1295,22 +1295,42 @@ id float gid float vel float dur float c float vis float mrk;
#X connect 9 0 10 0;
#X connect 10 0 1 0;
#X restore 473 88 pd create.guibar;
#N canvas 83 122 394 333 create.scroller 0;
#N canvas 83 122 577 328 create.scroller 0;
#X obj 34 256 outlet;
#X obj 34 17 inlet;
#X obj 34 47 f;
#X obj 68 49 r \$0.canvasleftmargin;
#X obj 34 179 list append \$0;
#X obj 34 70 - 20;
#X msg 34 135 \$1 22 -10 \, \$1 25 10;
#X msg 34 214 scalar \$4.scroller \$1 \$2 444 \$3;
#X obj 349 21 r \$0.pitchdownshift;
#X obj 218 24 r \$0.pitchupshift;
#X obj 34 105 pack f f f, f 52;
#X obj 218 47 sel 0;
#X msg 218 73 666;
#X msg 249 74 444;
#X obj 349 47 sel 0;
#X msg 349 73 666;
#X msg 380 74 444;
#X msg 34 135 \$1 22 \$2 -10 \, \$1 25 \$3 10;
#X msg 34 214 scalar \$5.scroller \$1 \$2 \$3 \$4;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 3 0 2 1;
#X connect 4 0 7 0;
#X connect 5 0 6 0;
#X connect 6 0 4 0;
#X connect 7 0 0 0;
#X connect 4 0 16 0;
#X connect 5 0 8 0;
#X connect 6 0 12 0;
#X connect 7 0 9 0;
#X connect 8 0 15 0;
#X connect 9 0 10 0;
#X connect 9 1 11 0;
#X connect 10 0 8 1;
#X connect 11 0 8 1;
#X connect 12 0 13 0;
#X connect 12 1 14 0;
#X connect 13 0 8 2;
#X connect 14 0 8 2;
#X connect 15 0 4 0;
#X connect 16 0 0 0;
#X restore 345 296 pd create.scroller;
#X obj 355 61 t b b b b b b b b b b;
#X connect 0 0 19 0;
......@@ -2079,15 +2099,8 @@ num float nvis;
#X obj 199 367 inlet;
#X obj 476 244 s \$1;
#X obj 461 49 r \$0.redraw;
#N canvas 294 116 748 530 redraw.notes 0;
#N canvas 294 116 448 453 redraw.notes 0;
#X obj 11 15 inlet;
#X obj 38 254 r \$0.page;
#X obj 80 282 r \$0.stepsperpage;
#X obj 38 307 *;
#X obj 38 330 t a a;
#X obj 65 356 +;
#X obj 11 386 moses;
#X obj 38 414 moses;
#X msg 11 41 1000;
#X obj 11 87 until;
#X obj 11 110 f;
......@@ -2097,65 +2110,42 @@ num float nvis;
#X obj 30 158 tabread \$0.active;
#X obj 11 133 t a a a;
#X obj 11 180 spigot;
#X obj 11 203 t a a;
#X obj 11 228 tabread \$0.step;
#X obj 38 437 b;
#X obj 38 460 f;
#X obj 216 287 t a;
#X obj 464 184 tabread \$0.step;
#X obj 479 164 tabread \$0.pitch;
#X obj 494 144 tabread \$0.velocity;
#X obj 509 124 tabread \$0.duration;
#X obj 524 104 tabread \$0.gid;
#X obj 26 316 tabread \$0.step;
#X obj 41 296 tabread \$0.pitch;
#X obj 56 276 tabread \$0.velocity;
#X obj 71 256 tabread \$0.duration;
#X obj 86 236 tabread \$0.gid;
#X text 58 181 <- only active notes;
#X text 77 410 only notes that fit into current page;
#X obj 355 478 t a;
#X obj 449 76 t a a a a a a;
#X obj 449 210 pack f f f f f f;
#X text 574 236 id step pitch vel dur gid;
#X obj 449 247 s \$0.redraw.notes;
#X text 449 271 see [pd note.create] (process events);
#X connect 0 0 8 0;
#X connect 1 0 3 0;
#X connect 2 0 3 1;
#X connect 2 0 5 1;
#X connect 3 0 4 0;
#X connect 4 0 6 1;
#X connect 4 1 5 0;
#X connect 5 0 7 1;
#X connect 6 1 7 0;
#X connect 7 0 19 0;
#X connect 8 0 12 0;
#X connect 9 0 10 0;
#X connect 10 0 15 0;
#X connect 11 0 10 1;
#X connect 12 0 9 0;
#X connect 12 1 13 0;
#X connect 13 0 10 1;
#X connect 14 0 16 1;
#X connect 15 0 16 0;
#X connect 15 1 14 0;
#X connect 15 2 11 0;
#X obj 11 208 t a a a a a a;
#X obj 11 342 pack f f f f f f;
#X text 133 344 id step pitch vel dur gid;
#X obj 11 379 s \$0.redraw.notes;
#X text 11 403 see [pd note.create] (process events);
#X connect 0 0 1 0;
#X connect 1 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 8 0;
#X connect 4 0 3 1;
#X connect 5 0 2 0;
#X connect 5 1 6 0;
#X connect 6 0 3 1;
#X connect 7 0 9 1;
#X connect 8 0 9 0;
#X connect 8 1 7 0;
#X connect 8 2 4 0;
#X connect 9 0 16 0;
#X connect 10 0 17 1;
#X connect 11 0 17 2;
#X connect 12 0 17 3;
#X connect 13 0 17 4;
#X connect 14 0 17 5;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 17 1 21 0;
#X connect 18 0 6 0;
#X connect 19 0 20 0;
#X connect 20 0 29 0;
#X connect 21 0 20 1;
#X connect 22 0 31 1;
#X connect 23 0 31 2;
#X connect 24 0 31 3;
#X connect 25 0 31 4;
#X connect 26 0 31 5;
#X connect 29 0 30 0;
#X connect 30 0 31 0;
#X connect 30 1 22 0;
#X connect 30 2 23 0;
#X connect 30 3 24 0;
#X connect 30 4 25 0;
#X connect 30 5 26 0;
#X connect 31 0 33 0;
#X connect 16 1 10 0;
#X connect 16 2 11 0;
#X connect 16 3 12 0;
#X connect 16 4 13 0;
#X connect 16 5 14 0;
#X connect 17 0 19 0;
#X restore 461 267 pd redraw.notes;
#X obj 565 306 array define \$0.active 1000;
#X obj 565 328 array define \$0.step 1000;
......@@ -2163,7 +2153,7 @@ num float nvis;
#X obj 565 374 array define \$0.duration 1000;
#X obj 565 397 array define \$0.velocity 1000;
#X obj 565 420 array define \$0.gid 1000;
#N canvas 0 99 615 341 converters 0;
#N canvas 0 99 644 387 converters 0;
#N canvas 83 99 403 258 x->step 0;
#X obj 17 52 -;
#X obj 45 52 r \$0.canvasleftmargin;
......@@ -2621,6 +2611,38 @@ num float nvis;
#X connect 22 1 23 0;
#X connect 22 2 6 0;
#X restore 14 197 pd pitchoffset.calculations;
#N canvas 709 644 363 270 page.boundaries 1;
#X obj 10 11 r \$0.page;
#X obj 25 40 r \$0.stepsperpage;
#X obj 10 99 *;
#X obj 25 63 t a a;
#X obj 52 93 - 1;
#X obj 10 209 s \$0.pageleftboundary;
#X obj 37 175 s \$0.pagerightboundary;
#X obj 10 122 t a a;
#X obj 37 148 +;
#X connect 0 0 2 0;
#X connect 1 0 3 0;
#X connect 2 0 7 0;
#X connect 3 0 2 1;
#X connect 3 1 4 0;
#X connect 4 0 8 1;
#X connect 7 0 5 0;
#X connect 7 1 8 0;
#X connect 8 0 6 0;
#X restore 14 221 pd page.boundaries;
#X obj 279 253 r \$0.pageleftboundary;
#X floatatom 279 276 5 0 0 0 - - -;
#X obj 482 257 r \$0.pagerightboundary;
#X floatatom 482 280 5 0 0 0 - - -;
#X obj 394 172 r \$0.pitchupperboundary;
#X floatatom 394 195 5 0 0 0 - - -;
#X obj 396 328 r \$0.pitchlowerboundary;
#X floatatom 396 351 5 0 0 0 - - -;
#X connect 24 0 25 0;
#X connect 26 0 27 0;
#X connect 28 0 29 0;
#X connect 30 0 31 0;
#X restore 19 95 pd converters;
#N canvas 342 165 401 476 inspector 0;
#X obj 42 89 t a a a a a a;
......@@ -3247,24 +3269,24 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X restore 16 191 pd note.unselect;
#X restore 19 125 pd generate.events;
#N canvas 0 99 413 279 process.events 0;
#N canvas 109 324 713 500 note.create 0;
#N canvas 59 156 682 563 note.create 0;
#X obj 6 8 r \$0.global.receive;
#X obj 6 31 route note;
#X obj 6 54 route create;
#X text 95 56 step pitch vel dur gid;
#X obj 119 183 s \$0.active;
#X obj 196 183 s \$0.step;
#X obj 259 183 s \$0.pitch;
#X obj 417 183 s \$0.duration;
#X obj 328 183 s \$0.velocity;
#X obj 508 183 s \$0.gid;
#X msg 119 148 \$1 1;
#X obj 33 152 s \$0.active;
#X obj 110 152 s \$0.step;
#X obj 173 152 s \$0.pitch;
#X obj 331 152 s \$0.duration;
#X obj 242 152 s \$0.velocity;
#X obj 422 152 s \$0.gid;
#X msg 33 127 \$1 1;
#X obj 6 100 t a a;
#X msg 196 148 \$1 \$2;
#X msg 259 148 \$1 \$3;
#X msg 328 148 \$1 \$4;
#X msg 417 148 \$1 \$5;
#X msg 508 148 \$1 \$6;
#X msg 110 127 \$1 \$2;
#X msg 173 127 \$1 \$3;
#X msg 242 127 \$1 \$4;
#X msg 331 127 \$1 \$5;
#X msg 422 127 \$1 \$6;
#X obj 6 419 list prepend scalar \$0.note;
#X obj 6 442 list trim;
#N canvas 16 91 407 242 w 0;
......@@ -3287,8 +3309,8 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 1 0;
#X restore 86 291 pd w;
#N canvas 6 83 432 235 h 0;
#X restore 86 251 pd w;
#N canvas 6 99 432 235 h 0;
#X obj 7 21 inlet;
#X obj 7 159 outlet;
#X obj 42 79 r \$0.stepvisheight;
......@@ -3300,28 +3322,28 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 3 0 4 1;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
#X restore 126 291 pd h;
#X restore 126 251 pd h;
#N canvas 16 99 410 257 id 0;
#X obj 7 21 inlet;
#X obj 7 211 outlet;
#X msg 7 93 \$1;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 166 291 pd id;
#X restore 166 251 pd id;
#N canvas 125 91 416 204 gid 0;
#X obj 7 21 inlet;
#X obj 7 137 outlet;
#X msg 7 72 \$6;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 207 291 pd gid;
#X restore 207 251 pd gid;
#N canvas 15 91 396 215 vel 0;
#X obj 20 21 inlet;
#X obj 20 162 outlet;
#X msg 20 76 \$4;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 257 291 pd vel;
#X restore 257 251 pd vel;
#N canvas 16 91 427 356 c 0;
#X obj 7 21 inlet;
#X obj 7 262 outlet;
......@@ -3399,7 +3421,7 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 5 0 7 0;
#X connect 6 0 3 0;
#X connect 7 0 2 0;
#X restore 346 291 pd c;
#X restore 346 251 pd c;
#N canvas 16 91 414 215 vis 0;
#X obj 7 21 inlet;
#X obj 7 126 outlet;
......@@ -3408,11 +3430,11 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 0 0 3 0;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X restore 378 291 pd vis;
#N canvas 16 91 407 242 x 0;
#X restore 378 251 pd vis;
#N canvas 10 210 523 380 x 0;
#X obj 7 21 inlet;
#X obj 7 185 outlet;
#X msg 7 44 \$2;
#X obj 7 315 outlet;
#X msg 7 213 \$2;
#N canvas 0 99 405 189 step->x 0;
#X obj 13 14 inlet;
#X obj 13 37 t b a;
......@@ -3425,11 +3447,36 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 1 1 4 0;
#X connect 2 0 3 0;
#X connect 5 0 2 1;
#X restore 7 95 pd step->x;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X restore 7 275 pd step->x;
#X obj 7 243 max 0;
#X obj 34 210 r \$0.pageleftboundary;
#X obj 182 125 r \$0.pagerightboundary;
#X msg 167 74 \$2;
#X msg 328 75 \$2 \$5;
#X obj 7 49 t a a a, f 54;
#X obj 343 126 r \$0.pageleftboundary;
#X obj 328 98 +;
#X obj 328 154 >;
#X obj 167 154 <=;
#X obj 248 249 outlet;
#X obj 248 218 &;
#X connect 0 0 9 0;
#X connect 2 0 4 0;
#X connect 3 0 1 0;
#X restore 6 291 pd x;
#X connect 4 0 3 0;
#X connect 5 0 4 1;
#X connect 6 0 13 1;
#X connect 7 0 13 0;
#X connect 8 0 11 0;
#X connect 9 0 2 0;
#X connect 9 1 7 0;
#X connect 9 2 8 0;
#X connect 10 0 12 1;
#X connect 11 0 12 0;
#X connect 12 0 15 1;
#X connect 13 0 15 0;
#X connect 15 0 14 0;
#X restore 6 251 pd x;
#N canvas 14 286 432 235 y 0;
#X obj 7 21 inlet;
#X obj 7 169 outlet;
......@@ -3445,25 +3492,45 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 1 1 4 0;
#X connect 2 0 3 0;
#X connect 5 0 2 1;
#X restore 7 95 pd pitch->y;
#X restore 7 132 pd pitch->y;
#X msg 7 57 \$3;
#X obj 180 185 outlet;
#X obj 179 71 moses;
#X obj 7 80 t a a;
#X obj 206 104 moses;
#X msg 204 137 1;
#X msg 172 148 0;
#X obj 206 18 r \$0.pitchlowerboundary;
#X obj 234 53 r \$0.pitchupperboundary;
#X obj 234 76 + 1;
#X connect 0 0 3 0;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X restore 46 291 pd y;
#X connect 3 0 6 0;
#X connect 5 0 9 0;
#X connect 5 1 7 0;
#X connect 6 0 2 0;
#X connect 6 1 5 0;
#X connect 7 0 8 0;
#X connect 7 1 9 0;
#X connect 8 0 4 0;
#X connect 9 0 4 0;
#X connect 10 0 5 1;
#X connect 11 0 12 0;
#X connect 12 0 7 1;
#X restore 46 251 pd y;
#X obj 6 473 s \$1;
#X obj 17 214 r \$0.redraw.notes;
#X obj 32 178 r \$0.redraw.notes;
#N canvas 15 91 396 215 dur 0;
#X obj 20 21 inlet;
#X obj 20 162 outlet;
#X msg 20 76 \$5;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 302 291 pd dur;
#X restore 302 251 pd dur;
#X obj 89 76 r \$0.create.id;
#X obj 6 77 list prepend;
#X obj 6 252 t a a a a a a a a a a a, f 57;
#X obj 6 355 pack f f f f f f f f f f f, f 57;
#X obj 6 212 t a a a a a a a a a a a, f 70;
#X obj 6 355 pack f f f f f f f f f f f, f 69;
#N canvas 16 99 414 215 mrk 0;
#X obj 7 21 inlet;
#X obj 7 160 outlet;
......@@ -3479,10 +3546,13 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 4 1 6 0;
#X connect 5 0 1 0;
#X connect 6 0 1 0;
#X restore 423 291 pd mrk;
#X restore 423 251 pd mrk;
#X text 20 389 x y w h id gid vel dur c vis mrk;
#X obj 568 183 s \$0.marked;
#X msg 568 148 \$1 0;
#X obj 482 152 s \$0.marked;
#X msg 482 127 \$1 0;
#X obj 6 306 spigot 1;
#X obj 70 319 &;
#X obj 79 293 t b a;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 32 0;
......@@ -3509,8 +3579,10 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 23 0 34 6;
#X connect 24 0 34 8;
#X connect 25 0 34 9;
#X connect 26 0 34 0;
#X connect 26 0 39 0;
#X connect 26 1 40 0;
#X connect 27 0 34 1;
#X connect 27 1 41 0;
#X connect 29 0 33 0;
#X connect 30 0 34 7;
#X connect 31 0 32 1;
......@@ -3529,6 +3601,10 @@ by clicking on two coordinates on the grid with Ctrl-key pressed.;
#X connect 34 0 17 0;
#X connect 35 0 34 10;
#X connect 38 0 37 0;
#X connect 39 0 34 0;
#X connect 40 0 39 1;
#X connect 41 0 40 0;
#X connect 41 1 40 1;
#X restore 19 18 pd note.create;
#N canvas 166 487 345 548 note.delete 0;
#X obj 6 8 r \$0.global.receive;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment