How can I re-name the tabs of live.tab


    Jul 15 2013 | 12:49 pm
    I found out how to do that with tabs, but isn't this possible with live tabs as well? Mira only supports live.tabs ...

    • Jul 15 2013 | 12:55 pm
      Ditto - anyone know if this is possible?
    • Jul 15 2013 | 1:08 pm
      They can't be dynamically renamed unfortunately...
    • Jul 15 2013 | 1:13 pm
      thanks for the reply!
    • Jul 15 2013 | 1:21 pm
      Thanks. Mira really seems to be in beta for now. I had high hopes for this, but it is so much behind lemur in terms of flexibility. I will turn it back to Apple for now ...
    • Jul 15 2013 | 2:45 pm
      actually you can rename the tabs of [live.tab] with the help of a secret message called "_parameter_range" (without quotation marks).
      Here is an example
      {
      "boxes" : [ {
      "box" : {
      "maxclass" : "message",
      "text" : "_parameter_range skin the cat",
      "patching_rect" : [ 328.0, 118.0, 146.0, 16.0 ],
      "id" : "obj-7",
      "fontname" : "Arial",
      "numinlets" : 2,
      "numoutlets" : 1,
      "fontsize" : 10.0,
      "outlettype" : [ "" ]
      }
      }
      , {
      "box" : {
      "maxclass" : "message",
      "text" : "_parameter_range a b c",
      "patching_rect" : [ 125.0, 123.0, 117.0, 16.0 ],
      "id" : "obj-8",
      "fontname" : "Arial",
      "numinlets" : 2,
      "numoutlets" : 1,
      "fontsize" : 10.0,
      "outlettype" : [ "" ]
      }
      }
      , {
      "box" : {
      "maxclass" : "live.tab",
      "varname" : "live.tab[1]",
      "patching_rect" : [ 206.0, 161.0, 100.0, 20.0 ],
      "id" : "obj-9",
      "parameter_enable" : 1,
      "numinlets" : 1,
      "numoutlets" : 3,
      "outlettype" : [ "", "", "float" ],
      "saved_attribute_attributes" : {
      "valueof" : {
      "parameter_longname" : "live.tab[1]",
      "parameter_shortname" : "live.tab",
      "parameter_type" : 2,
      "parameter_enum" : [ "skin", "the", "cat" ],
      "parameter_unitstyle" : 0
      }
      }
      }
      }
      ],
      "lines" : [ {
      "patchline" : {
      "source" : [ "obj-8", 0 ],
      "destination" : [ "obj-9", 0 ],
      "hidden" : 0,
      "disabled" : 0
      }
      }
      , {
      "patchline" : {
      "source" : [ "obj-7", 0 ],
      "destination" : [ "obj-9", 0 ],
      "hidden" : 0,
      "disabled" : 0
      }
      }
      ],
      "appversion" : {
      "major" : 6,
      "minor" : 1,
      "revision" : 3,
      "architecture" : "x86"
      }
      }
    • Jul 15 2013 | 2:46 pm
      sorry... I somehow failed to insert the max example of my previous post...
      I try again...
    • Jul 15 2013 | 2:48 pm
      Thanks, DJ! Works!
    • Jul 15 2013 | 4:41 pm
      that's fantastic. really wish some of these secret messages weren't so secret - they are damn useful!
      cheers
    • Jul 15 2013 | 6:01 pm
      actually there are 3 relatively easy steps to get this kind of information:
      Step 1)
      Select the object and press Cmd-i to open the Inspector. Find the parameter you are interested in.
      Step 2) Select the parameter / attribute and click on the little "gear wheel" in the lower left corner. Select "copy Attribute".
      Step 3) Paste the copied text into some text window. It looks like this.
      {
      "attributes" : {
      "_parameter_range" : [ "one", "two", "three" ]
      }
      }
      From there it is easy to guess the attribute's name ;-)
    • Jul 15 2013 | 6:02 pm
      forgot the image for step2...
    • Jul 15 2013 | 6:19 pm
      DJ - you just rocked my world. next time you are in nyc - beers on me.
      thanks!
    • Jul 15 2013 | 11:17 pm
      you're welcome... and beer is always welcome too ;-)
    • Jul 16 2013 | 3:39 am
      Beers on me, too! Although, you would have to drink "eine Maß auf der Wiesn, wenn'st mogst" ;-)
      And since you seem to be the genius of finding secret functions in MAX ... would you also happen to know a solution to this:
      I want to create a large matrix of tabs, which can be labeled. With your help, I can label them now. However, they have to be multi-line buttons, as I need between 30 and 60 fields on that matrix. But when I do that, I get really small pads that are not easy to hit. Only, if I set text size quite large, I get good pad sizes. But then again, the text gets to big to fit into the pads ...
      Is there a way to fix, how many rows and columns you get independently from text size? I actually found this worked perfectly on Lemur or touch OSC. But I cannot get it working with Mira. I only found a hack by using a tabbed mira.multitouch placing text fields in front of every tab. But this is really a pain in the ass to set up for a quite normal operation like some labeled pads ... there should be an easier way to get it done.
    • Jul 16 2013 | 8:40 am
      @dj. Wow! Great stuff. Why are these hidden in the first place I wonder? So can I change the type of a dial for instance? Need to experiment....
    • Jul 16 2013 | 9:02 am
      I guess that dynamic attribute changes of live.* objects will confuse the automation bindings in Max For Live which is probably the reason why these messages are hidden.