Forums > MaxMSP

Completely overlooked this multislider feature

November 28, 2007 | 1:54 pm

I’m sure this is old news for a lot of you, but I just discovered (by total accident) a feature of multislider that’s really useful.

Apparently you can set values in a scrolling display of multisliders as well as in Thin Line or Bar mode. I had thought these modes were display-only, as there’s nothing in the Help file about this. The documentation also reads (p. 362):

"The way that a multislider responds to the mouse is determined by its chosen display style (see Arguments, below). A multislider will respond to mouse clicks when its display style is non-scrolling (Thin Line or Bar). Clicking on a forward or reverse scrolling display multislider (Point Scroll or Line Scroll) has no effect."

Well, on XP and 4.6.2, I can set the values of a scrolling display as well, but only when it’s in Reverse Scroll mode (point or line). You just have to know where in the X axis to click / drag (if in horiz. mode, opposite for vertical). So in the example patch there’s a "ruler" at the bottom to keep track of the divisions. (The ruler isn’t clickable in this patch, for clarity.)

Like I said, totally by accident. Wondering if this was some kind of oversight in the docs? Will the R to L versions be active in Max 5? Scrolling is a really great alternative to the regular modes, because you can see the history. But I thought it was limited by being read-only… apparently not. Very cool!

–CJ

—————————–

#P window setfont Tahoma 14.;
#P window linecount 1;
#P comment 522 543 97 14483470 Main bkgd;
#P comment 344 543 97 14483470 Slider bkgd;
#P comment 214 543 75 14483470 Sliders;
#P window setfont Tahoma 18.;
#P comment 786 67 100 14483474 Defaults;
#P user panel 762 65 120 30;
#X brgb 121 128 142;
#X frgb 0 0 0;
#X border 1;
#X rounded 5;
#X shadow 2;
#X done;
#P user ubutton 760 63 130 35 0 0;
#P window setfont Tahoma 10.;
#P comment 229 83 173 14483466 cool patterns — arrow keys;
#P window setfont Tahoma 14.;
#P comment 888 446 75 14483470 Ruler;
#P comment 392 625 484 14483470 Changing to smaller list size will give (harmless) errors.;
#P comment 785 498 129 14483470 To set values:;
#P comment 785 521 162 14483470 rev scroll types only — ?;
#P window setfont "Sans Serif" 10.;
#P hidden message 650 520 71 9109514 setstyle $1;
#P window setfont "Sans Serif" 14.;
#P user ubumenu 650 498 130 9109518 0 1 0 0;
#X setrgb 255 255 255 66 66 66 198 0 5 4 4 4 141 141 141 112 112 112;
#X add thin line;
#X add bar;
#X add point scroll;
#X add line scroll;
#X add rev point scroll;
#X add rev line scroll;
#X prefix_set 0 0 0;
#N vpreset 4;
#X append 1 1 44 498 650 ubumenu int 4 ; 15 50 642 number int 50 ; 41 491 601 multiSlider list 23 ; 40 491 499 swatch list 132 141 152 ; 6 51 442 number int 50 ; 38 491 433;
#X append 1 1 multiSlider list 0 ; 37 491 331 swatch list 0 0 0 ; 34 491 293 multiSlider list 0 ; 33 491 191 swatch list 6 255 244 ; 14 78 175 number int 1 ; 0 493 22 number;
#X append 1 1 int 100 ;;
#X append 2 1 44 498 650 ubumenu int 5 ; 15 50 642 number int 50 ; 41 491 601 multiSlider list 23 ; 40 491 499 swatch list 0 0 0 ; 6 51 442 number int 50 ; 38 491 433;
#X append 2 1 multiSlider list 0 ; 37 491 331 swatch list 102 102 102 ; 34 491 293 multiSlider list 0 ; 33 491 191 swatch list 1 25 215 ; 14 78 175 number int 1 ; 0 493 22 number;
#X append 2 1 int 100 ;;
#X append 3 1 44 498 650 ubumenu int 4 ; 15 50 642 number int 100 ; 41 491 601 multiSlider list 23 ; 40 491 499 swatch list 255 255 255 ; 6 51 442 number int 100 ; 38 491 433;
#X append 3 1 multiSlider list 0 ; 37 491 331 swatch list 0 0 0 ; 34 491 293 multiSlider list 0 ; 33 491 191 swatch list 227 1 1 ; 14 78 175 number int 4 ; 0 493 22 number;
#X append 3 1 int 100 ;;
#X append 4 1 44 498 650 ubumenu int 4 ; 15 50 642 number int 100 ; 41 491 601 multiSlider list 23 ; 40 491 499 swatch list 221 221 221 ; 6 51 442 number int 100 ; 38 491 433;
#X append 4 1 multiSlider list 0 ; 37 491 331 swatch list 0 0 0 ; 34 491 293 multiSlider list 0 ; 33 491 191 swatch list 237 205 1 ; 14 78 175 number int 8 ; 0 493 22 number;
#X append 4 1 int 100 ;;
#P preset 535 72 87 27;
#P window setfont "Sans Serif" 10.;
#P hidden newex 517 566 111 9109514 bgcolor 99 99 99;
#P user multiSlider 601 491 21 47 0. 255. 1 2921 47 0 2 2 0 0 0;
#M frgb 255 255 255;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P user swatch 499 491 97 47;
#P hidden message 543 507 91 9109514 saturation $1;
#P user multiSlider 433 491 21 47 0. 255. 1 2921 47 0 2 2 0 0 0;
#M frgb 255 255 255;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P user swatch 331 491 97 47;
#P hidden message 375 507 91 9109514 saturation $1;
#P hidden message 323 566 93 9109514 brgb $1 $2 $3;
#P user multiSlider 293 491 21 47 0. 255. 1 2921 47 0 2 2 0 0 0;
#M frgb 255 255 255;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P user swatch 191 491 97 47;
#P hidden message 235 507 91 9109514 saturation $1;
#P hidden message 183 566 89 9109514 frgb $1 $2 $3;
#P window setfont Tahoma 10.;
#P hidden comment 890 290 82 14483466 index adjust;
#P window setfont Tahoma 14.;
#P comment 46 625 156 14483470 Slider value list;
#P comment 5 527 211 14483470 Ruler update and speed;
#P window setfont "Sans Serif" 10.;
#P hidden message 908 129 15 9109514 1;
#P hidden newex 892 106 66 9109514 loadbang;
#P window setfont Tahoma 14.;
#P comment 604 22 184 14483470 Mousing speed throttle;
#P comment 401 22 184 14483470 Auto-update and speed;
#P comment 153 22 164 14483470 Number of streams;
#P window setfont "Sans Serif" 20.;
#P user ubumenu 175 45 51 9109524 0 1 0 0;
#X setrgb 255 255 255 66 66 66 198 0 5 4 4 4 141 141 141 112 112 112;
#X add 1;
#X add 2;
#X add 3;
#X add 4;
#X add 6;
#X add 8;
#X add 12;
#X add 16;
#X prefix_set 0 0
0;
#P number 28 46 52 20 0 100 7 139 255 255 255 0 0 0 222 222 222 0 0 0;
#P window setfont "Sans Serif" 10.;
#P hidden message 166 497 15 9109514 0;
#P user led 0 493 17 17 2 150;
#P hidden newex 94 495 70 9109514 metro 100;
#P user multiSlider 2 426 880 59 0. 100. 1 3688 47 0 2 2 1 80 0;
#M frgb 6 255 244;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P noclick;
#P hidden newex 891 165 83 9109514 speedlim 50;
#P window setfont "Sans Serif" 18.;
#P number 642 50 72 18 20 0 5 139 255 255 255 0 0 0 222 222 222 0 0 0;
#P number 175 78 51 18 1 16 71 139 255 255 255 0 0 0 222 222 222 0 0 0;
#P window setfont "Sans Serif" 10.;
#P hidden newex 898 340 50 9109514 pack i i;
#P hidden newex 892 265 27 9109514 + 1;
#P hidden newex 898 228 66 9109514 unpack i i;
#P hidden message 117 82 50 9109514 size $1;
#P hidden newex 898 202 63 9109514 listfunnel;
#P user led 420 51 17 17 2 150;
#P hidden newex 442 79 70 9109514 metro 100;
#P window setfont "Sans Serif" 18.;
#P number 442 51 72 18 20 0 5 139 255 255 255 0 0 0 222 222 222 0 0 0;
#P window setfont "Sans Serif" 10.;
#P hidden message 899 365 63 9109514 set $1 $2;
#P window setfont "Sans Serif" 24.;
#P message 2 589 876 9109528 47;
#P window setfont "Sans Serif" 10.;
#P hidden newex 2 628 79 9109514 prepend set;
#P user multiSlider 2 106 880 306 0. 100. 1 3689 47 0 2 2 1 80 0;
#M frgb 6 255 244;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P window setfont Tahoma 14.;
#P comment 28 22 100 14483470 All values;
#P window setfont "Sans Serif" 18.;
#P number 22 493 72 18 20 0 5 139 255 255 255 0 0 0 222 222 222 0 0 0;
#P hidden connect 27 0 19 0;
#P hidden connect 45 0 2 0;
#P hidden connect 5 0 2 0;
#P hidden connect 35 0 2 0;
#P hidden connect 31 0 2 0;
#P hidden connect 10 0 2 0;
#P hidden connect 21 0 2 0;
#P hidden connect 7 0 2 0;
#P hidden connect 35 0 17 0;
#P hidden connect 31 0 17 0;
#P hidden connect 10 0 17 0;
#P hidden connect 20 0 17 0;
#P hidden connect 3 0 4 0;
#P hidden connect 2 0 3 0;
#P hidden connect 43 0 0 0;
#P hidden connect 19 0 18 0;
#P hidden connect 14 0 10 0;
#P hidden connect 0 0 18 1;
#P hidden connect 18 0 20 0;
#P hidden connect 43 0 14 0;
#P hidden connect 22 1 14 0;
#P hidden connect 33 0 31 0;
#P hidden connect 43 0 33 0;
#P hidden connect 32 0 33 0;
#P hidden connect 34 0 32 0;
#P hidden connect 43 0 34 0;
#P hidden connect 37 0 35 0;
#P hidden connect 43 0 37 0;
#P hidden connect 36 0 37 0;
#P hidden connect 38 0 36 0;
#P hidden connect 27 0 8 0;
#P hidden connect 43 0 38 0;
#P hidden connect 43 0 6 0;
#P hidden connect 8 0 7 0;
#P hidden connect 43 0 40 0;
#P hidden connect 39 0 40 0;
#P hidden connect 6 0 7 1;
#P hidden connect 40 0 42 0;
#P hidden connect 27 0 43 0;
#P hidden connect 41 0 39 0;
#P hidden connect 43 0 41 0;
#P hidden connect 43 0 15 0;
#P hidden connect 43 0 44 0;
#P hidden connect 44 0 45 0;
#P hidden connect 2 0 16 0;
#P hidden connect 51 1 26 0;
#P hidden connect 11 0 12 0;
#P hidden connect 16 0 9 0;
#P hidden connect 9 0 11 0;
#P hidden connect 12 0 13 0;
#P hidden connect 13 0 5 0;
#P hidden connect 26 0 27 0;
#P hidden connect 11 1 13 1;
#P hidden connect 15 0 16 1;
#P window clipboard copycount 57;


November 28, 2007 | 9:29 pm

Quote: seejayjames wrote on Wed, 28 November 2007 14:54
—————————————————-
> I’m sure this is old news for a lot of you, but I just discovered (by total accident) a feature of multislider that’s really useful.

Not sure if this is a intended feature, it’s almost too exotic. It seems that multislider is still tracking vertical fader setting while behing in horizontal scrolling mode. If it is useful, you could anyhow build something using a ubutton, then it could also work for scrolling in the other direction.

_
johan


November 28, 2007 | 11:50 pm

very nice find… great patch too. thanks for sharing


November 29, 2007 | 6:55 am

Thanks, it was pretty fun to experiment with. I think it’ll be useful because of the history it shows (like for amp / effect levels over time, or real-time user ratings of something). So there’s also a way to change the sliders as well as view the history, this gives a second dimension to the interaction (comparison of present to past). Probably should add some sort of timeline to see how long the overall picture represents… overall horiz. pixel size * update rate. Looks like the "hold Shift to constrain to one slider" works too.

I wonder if this was an intended feature but they only got it to work going one direction so they didn’t document it? I can certainly sympathize with that… you probably don’t want people to say "what the heck is going on?" Maybe ignorance is bliss in that case ;)

At any rate, it’s pretty interesting in my book. I suppose a "snapshot" feature to save all the visible history data is too much to ask, but that’s what happens when you have a cool UI object and you start to get ideas, heh. It would be nice though, especially if one worked out some kind of playback or scrub of the history list values.

–CJ


November 29, 2007 | 7:32 am

On 29 nov. 07, at 07:55, Seejay James wrote:

> I wonder if this was an intended feature but they only got it to
> work going one direction so they didn’t document it? I can certainly
> sympathize with that… you probably don’t want people to say "what
> the heck is going on?" Maybe ignorance is bliss in that case ;)

Well, it’s a bug. I wouldn’t count on it too much in the future. Other
alternative like using ubutton, mousestate seems to be more appropriate.

Cheers,
ej


Viewing 5 posts - 1 through 5 (of 5 total)