diff --git a/README.md b/README.md index 4969b07..fcaea60 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ A [jsui] replacement for the [preset] object in Cycling'74 Max. - More look customization - Dynamically adapts to resize both in Edit and Presentation mode - Select mode: simple click selects the slot, double click recalls it (allows for organizing presets without recalling them) -- Color mode: ability to color sstored presets with 6 customizable colors (currently colors are only assigned automatically depending on slot number) +- Color mode: various ways to colorize preset slots ## How to install - [Download](https://github.com/Teufeuleu/tc.preset/archive/refs/heads/main.zip) this repository (and please consider donating on the [gumroad page](https://glucose47.gumroad.com/l/tc_preset) if you like this package) diff --git a/help/tc.preset.maxhelp b/help/tc.preset.maxhelp index 8eebe49..25d8d0a 100644 --- a/help/tc.preset.maxhelp +++ b/help/tc.preset.maxhelp @@ -382,7 +382,7 @@ } , "classnamespace" : "box", - "rect" : [ 100.0, 126.0, 678.0, 554.0 ], + "rect" : [ 0.0, 26.0, 678.0, 554.0 ], "bglocked" : 0, "openinpresentation" : 0, "default_fontsize" : 12.0, @@ -814,7 +814,7 @@ , { "box" : { "border" : 0, - "embedstate" : [ [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "ignoreslotzero", 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 0 ], [ "min_rows", 50 ], [ "bubblesize", 14 ], [ "color_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "display_interp", 1 ], [ "select_mode", 0 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "margin", 4 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontsize", 14 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "slot_round", 0 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontname", "Arial" ], [ "autowriteagain", 0 ], [ "pattrstorage", "test" ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "scrollable", 1 ], [ "spacing", 4 ] ], + "embedstate" : [ [ "bubblesize", 14 ], [ "spacing", 4 ], [ "scrollable", 1 ], [ "ignoreslotzero", 1 ], [ "layout", 0 ], [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "min_rows", 50 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "slot_round", 0 ], [ "color_mode", 0 ], [ "display_interp", 1 ], [ "margin", 4 ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "fontsize", 14 ], [ "select_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontname", "Arial" ], [ "pattrstorage", "test" ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "autowriteagain", 0 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "color_1", 0.743, 0.41, 0.501, 1 ] ], "filename" : "tc.preset.js", "id" : "obj-10", "maxclass" : "jsui", @@ -1187,7 +1187,7 @@ , { "box" : { "border" : 0, - "embedstate" : [ [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "ignoreslotzero", 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 0 ], [ "min_rows", 50 ], [ "bubblesize", 14 ], [ "color_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "display_interp", 1 ], [ "select_mode", 1 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "margin", 4 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontsize", 14 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "slot_round", 0 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontname", "Arial" ], [ "autowriteagain", 0 ], [ "pattrstorage", "test" ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "scrollable", 1 ], [ "spacing", 4 ] ], + "embedstate" : [ [ "bubblesize", 14 ], [ "spacing", 4 ], [ "scrollable", 1 ], [ "ignoreslotzero", 1 ], [ "layout", 0 ], [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "min_rows", 50 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "slot_round", 0 ], [ "color_mode", 0 ], [ "display_interp", 1 ], [ "margin", 4 ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "fontsize", 14 ], [ "select_mode", 1 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontname", "Arial" ], [ "pattrstorage", "test" ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "autowriteagain", 0 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "color_1", 0.743, 0.41, 0.501, 1 ] ], "filename" : "tc.preset.js", "id" : "obj-10", "maxclass" : "jsui", @@ -1954,7 +1954,7 @@ , { "box" : { "border" : 0, - "embedstate" : [ [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "ignoreslotzero", 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 0 ], [ "min_rows", 50 ], [ "bubblesize", 14 ], [ "color_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "display_interp", 1 ], [ "select_mode", 0 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "margin", 4 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontsize", 14 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "slot_round", 0 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontname", "Arial" ], [ "autowriteagain", 0 ], [ "pattrstorage", "mypat" ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "scrollable", 1 ], [ "spacing", 4 ] ], + "embedstate" : [ [ "bubblesize", 14 ], [ "spacing", 4 ], [ "scrollable", 1 ], [ "ignoreslotzero", 1 ], [ "layout", 0 ], [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "min_rows", 50 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "slot_round", 0 ], [ "color_mode", 0 ], [ "display_interp", 1 ], [ "margin", 4 ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "fontsize", 14 ], [ "select_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontname", "Arial" ], [ "pattrstorage", "mypat" ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "autowriteagain", 0 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "color_1", 0.743, 0.41, 0.501, 1 ] ], "filename" : "tc.preset.js", "id" : "obj-10", "maxclass" : "jsui", @@ -2276,7 +2276,7 @@ , { "box" : { "border" : 0, - "embedstate" : [ [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "ignoreslotzero", 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 1 ], [ "min_rows", 50 ], [ "bubblesize", 14 ], [ "color_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "display_interp", 1 ], [ "select_mode", 0 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "margin", 4 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontsize", 14 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "slot_round", 0 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontname", "Arial" ], [ "autowriteagain", 0 ], [ "pattrstorage", "test" ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "scrollable", 1 ], [ "spacing", 4 ] ], + "embedstate" : [ [ "bubblesize", 14 ], [ "spacing", 4 ], [ "scrollable", 1 ], [ "ignoreslotzero", 1 ], [ "layout", 1 ], [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "min_rows", 50 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "slot_round", 0 ], [ "color_mode", 0 ], [ "display_interp", 1 ], [ "margin", 4 ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "fontsize", 14 ], [ "select_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontname", "Arial" ], [ "pattrstorage", "test" ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "autowriteagain", 0 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "color_1", 0.743, 0.41, 0.501, 1 ] ], "filename" : "tc.preset.js", "id" : "obj-10", "maxclass" : "jsui", @@ -2754,7 +2754,7 @@ } , "classnamespace" : "box", - "rect" : [ 0.0, 26.0, 678.0, 554.0 ], + "rect" : [ 100.0, 126.0, 678.0, 554.0 ], "bglocked" : 0, "openinpresentation" : 0, "default_fontsize" : 12.0, @@ -2784,6 +2784,42 @@ "showontab" : 1, "assistshowspatchername" : 0, "boxes" : [ { + "box" : { + "id" : "obj-15", + "maxclass" : "message", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 54.0, 225.0, 89.0, 22.0 ], + "text" : "storagewindow" + } + + } +, { + "box" : { + "id" : "obj-12", + "maxclass" : "message", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 54.0, 249.0, 35.0, 22.0 ], + "text" : "clear" + } + + } +, { + "box" : { + "id" : "obj-9", + "maxclass" : "message", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 77.0, 274.0, 34.0, 22.0 ], + "text" : "write" + } + + } +, { "box" : { "id" : "obj-36", "maxclass" : "newobj", @@ -2830,107 +2866,287 @@ "assistshowspatchername" : 0, "boxes" : [ { "box" : { - "id" : "obj-14", + "id" : "obj-21", + "linecount" : 3, "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 183.0, 193.0, 175.0, 20.0 ], - "text" : "Set selected preset color to red" + "patching_rect" : [ 188.0, 419.0, 206.0, 47.0 ], + "text" : "If you move presets around, or write presets to disk and read them back later, colors will still be here." } } , { "box" : { - "id" : "obj-23", - "maxclass" : "comment", + "id" : "obj-19", + "maxclass" : "newobj", "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 143.0, 153.0, 123.0, 20.0 ], - "text" : "Change preset colors" + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 141.0, 370.0, 98.0, 22.0 ], + "text" : "prepend setcolor" } } , { "box" : { - "id" : "obj-11", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 74.0, 191.0, 104.0, 22.0 ], - "text" : "setcolor 1. 0. 0. 1." + "id" : "obj-18", + "maxclass" : "newobj", + "numinlets" : 1, + "numoutlets" : 2, + "outlettype" : [ "int", "bang" ], + "patching_rect" : [ 141.0, 270.0, 29.5, 22.0 ], + "text" : "t i b" } } , { "box" : { - "id" : "obj-25", + "id" : "obj-17", "maxclass" : "newobj", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 262.0, 395.0, 131.0, 22.0 ], - "text" : "random @floatoutput 1" + "numinlets" : 1, + "numoutlets" : 3, + "outlettype" : [ "", "", "" ], + "patcher" : { + "fileversion" : 1, + "appversion" : { + "major" : 8, + "minor" : 6, + "revision" : 4, + "architecture" : "x64", + "modernui" : 1 + } +, + "classnamespace" : "box", + "rect" : [ 59.0, 119.0, 640.0, 480.0 ], + "bglocked" : 0, + "openinpresentation" : 0, + "default_fontsize" : 12.0, + "default_fontface" : 0, + "default_fontname" : "Arial", + "gridonopen" : 1, + "gridsize" : [ 15.0, 15.0 ], + "gridsnaponopen" : 1, + "objectsnaponopen" : 1, + "statusbarvisible" : 2, + "toolbarvisible" : 1, + "lefttoolbarpinned" : 0, + "toptoolbarpinned" : 0, + "righttoolbarpinned" : 0, + "bottomtoolbarpinned" : 0, + "toolbars_unpinned_last_save" : 0, + "tallnewobj" : 0, + "boxanimatetime" : 200, + "enablehscroll" : 1, + "enablevscroll" : 1, + "devicewidth" : 0.0, + "description" : "", + "digest" : "", + "tags" : "", + "style" : "", + "subpatcher_template" : "", + "assistshowspatchername" : 0, + "boxes" : [ { + "box" : { + "comment" : "", + "id" : "obj-2", + "index" : 1, + "maxclass" : "inlet", + "numinlets" : 0, + "numoutlets" : 1, + "outlettype" : [ "bang" ], + "patching_rect" : [ 50.0, 43.0, 30.0, 30.0 ] + } + + } +, { + "box" : { + "id" : "obj-25", + "maxclass" : "newobj", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 120.0, 168.0, 131.0, 22.0 ], + "text" : "random @floatoutput 1" + } + + } +, { + "box" : { + "id" : "obj-24", + "maxclass" : "newobj", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 85.0, 134.0, 131.0, 22.0 ], + "text" : "random @floatoutput 1" + } + + } +, { + "box" : { + "id" : "obj-1", + "maxclass" : "newobj", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 50.0, 100.0, 131.0, 22.0 ], + "text" : "random @floatoutput 1" + } + + } +, { + "box" : { + "comment" : "", + "id" : "obj-13", + "index" : 1, + "maxclass" : "outlet", + "numinlets" : 1, + "numoutlets" : 0, + "patching_rect" : [ 50.0, 230.0, 30.0, 30.0 ] + } + + } +, { + "box" : { + "comment" : "", + "id" : "obj-15", + "index" : 2, + "maxclass" : "outlet", + "numinlets" : 1, + "numoutlets" : 0, + "patching_rect" : [ 85.0, 230.0, 30.0, 30.0 ] + } + + } +, { + "box" : { + "comment" : "", + "id" : "obj-16", + "index" : 3, + "maxclass" : "outlet", + "numinlets" : 1, + "numoutlets" : 0, + "patching_rect" : [ 120.0, 230.0, 30.0, 30.0 ] + } + + } + ], + "lines" : [ { + "patchline" : { + "destination" : [ "obj-13", 0 ], + "source" : [ "obj-1", 0 ] + } + + } +, { + "patchline" : { + "destination" : [ "obj-1", 0 ], + "order" : 2, + "source" : [ "obj-2", 0 ] + } + + } +, { + "patchline" : { + "destination" : [ "obj-24", 0 ], + "order" : 1, + "source" : [ "obj-2", 0 ] + } + + } +, { + "patchline" : { + "destination" : [ "obj-25", 0 ], + "order" : 0, + "source" : [ "obj-2", 0 ] + } + + } +, { + "patchline" : { + "destination" : [ "obj-15", 0 ], + "source" : [ "obj-24", 0 ] + } + + } +, { + "patchline" : { + "destination" : [ "obj-16", 0 ], + "source" : [ "obj-25", 0 ] + } + + } + ] + } +, + "patching_rect" : [ 156.0, 303.0, 92.0, 22.0 ], + "saved_object_attributes" : { + "description" : "", + "digest" : "", + "globalpatchername" : "", + "tags" : "" + } +, + "text" : "p random_color" } } , { "box" : { - "id" : "obj-24", + "id" : "obj-9", "maxclass" : "newobj", "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 238.0, 371.0, 131.0, 22.0 ], - "text" : "random @floatoutput 1" + "numoutlets" : 3, + "outlettype" : [ "bang", "bang", "int" ], + "patching_rect" : [ 119.0, 244.0, 41.0, 22.0 ], + "text" : "uzi 20" } } , { "box" : { - "id" : "obj-1", - "maxclass" : "newobj", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 213.0, 347.0, 131.0, 22.0 ], - "text" : "random @floatoutput 1" + "id" : "obj-14", + "maxclass" : "comment", + "numinlets" : 1, + "numoutlets" : 0, + "patching_rect" : [ 161.0, 169.0, 175.0, 20.0 ], + "text" : "Set selected preset color to red" } } , { "box" : { - "id" : "obj-4", - "maxclass" : "newobj", - "numinlets" : 6, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 163.0, 422.0, 143.0, 22.0 ], - "text" : "pack setcolor 0 0. 0. 0. 1." + "id" : "obj-23", + "maxclass" : "comment", + "numinlets" : 1, + "numoutlets" : 0, + "patching_rect" : [ 121.0, 129.0, 123.0, 20.0 ], + "text" : "Change preset colors" } } , { "box" : { - "id" : "obj-5", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "bang", "bang" ], - "patching_rect" : [ 163.0, 275.0, 32.0, 22.0 ], - "text" : "t b b" + "id" : "obj-11", + "maxclass" : "message", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 52.0, 167.0, 104.0, 22.0 ], + "text" : "setcolor 1. 0. 0. 1." } } , { "box" : { - "id" : "obj-7", + "id" : "obj-4", "maxclass" : "newobj", - "numinlets" : 2, + "numinlets" : 5, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 188.0, 317.0, 66.0, 22.0 ], - "text" : "random 20" + "patching_rect" : [ 141.0, 338.0, 97.0, 22.0 ], + "text" : "pack 0 0. 0. 0. 1." } } @@ -2942,7 +3158,7 @@ "numoutlets" : 1, "outlettype" : [ "bang" ], "parameter_enable" : 0, - "patching_rect" : [ 163.0, 226.0, 24.0, 24.0 ] + "patching_rect" : [ 119.0, 207.0, 24.0, 24.0 ] } } @@ -2952,8 +3168,8 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 193.0, 228.0, 265.0, 20.0 ], - "text" : "Set a random color for any of the 20 first presets" + "patching_rect" : [ 149.0, 209.0, 265.0, 20.0 ], + "text" : "Set a random color for the first 20 presets" } } @@ -2963,7 +3179,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 164.0, 94.0, 163.0, 20.0 ], + "patching_rect" : [ 142.0, 70.0, 163.0, 20.0 ], "text" : "Set color mode to 3 (custom)" } @@ -2975,7 +3191,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 48.0, 93.0, 81.0, 22.0 ], + "patching_rect" : [ 26.0, 69.0, 81.0, 22.0 ], "text" : "color_mode 3" } @@ -2986,7 +3202,7 @@ "maxclass" : "newobj", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 48.0, 463.0, 81.0, 22.0 ], + "patching_rect" : [ 26.0, 439.0, 81.0, 22.0 ], "text" : "s to_tc.preset" } @@ -3005,12 +3221,33 @@ "numoutlets" : 3, "outlettype" : [ "", "", "int" ], "parameter_enable" : 0, - "patching_rect" : [ 137.0, 94.0, 20.0, 20.0 ], + "patching_rect" : [ 115.0, 70.0, 20.0, 20.0 ], "rounded" : 60.0, "text" : "1", "textcolor" : [ 0.34902, 0.34902, 0.34902, 1.0 ] } + } +, { + "box" : { + "background" : 1, + "bgcolor" : [ 1.0, 0.788235, 0.470588, 1.0 ], + "fontface" : 1, + "hint" : "", + "id" : "obj-22", + "ignoreclick" : 1, + "legacytextcolor" : 1, + "maxclass" : "textbutton", + "numinlets" : 1, + "numoutlets" : 3, + "outlettype" : [ "", "", "int" ], + "parameter_enable" : 0, + "patching_rect" : [ 161.0, 432.5, 20.0, 20.0 ], + "rounded" : 60.0, + "text" : "3", + "textcolor" : [ 0.34902, 0.34902, 0.34902, 1.0 ] + } + } , { "box" : { @@ -3026,7 +3263,7 @@ "numoutlets" : 3, "outlettype" : [ "", "", "int" ], "parameter_enable" : 0, - "patching_rect" : [ 116.0, 153.0, 20.0, 20.0 ], + "patching_rect" : [ 94.0, 129.0, 20.0, 20.0 ], "rounded" : 60.0, "text" : "2", "textcolor" : [ 0.34902, 0.34902, 0.34902, 1.0 ] @@ -3035,13 +3272,6 @@ } ], "lines" : [ { - "patchline" : { - "destination" : [ "obj-4", 2 ], - "source" : [ "obj-1", 0 ] - } - - } -, { "patchline" : { "destination" : [ "obj-10", 0 ], "source" : [ "obj-11", 0 ] @@ -3051,81 +3281,70 @@ , { "patchline" : { "destination" : [ "obj-4", 3 ], - "source" : [ "obj-24", 0 ] + "source" : [ "obj-17", 2 ] } } , { "patchline" : { - "destination" : [ "obj-4", 4 ], - "source" : [ "obj-25", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-3", 0 ] + "destination" : [ "obj-4", 2 ], + "source" : [ "obj-17", 1 ] } } , { "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-4", 0 ] + "destination" : [ "obj-4", 1 ], + "source" : [ "obj-17", 0 ] } } , { "patchline" : { - "destination" : [ "obj-1", 0 ], - "order" : 2, - "source" : [ "obj-5", 1 ] + "destination" : [ "obj-17", 0 ], + "source" : [ "obj-18", 1 ] } } , { "patchline" : { - "destination" : [ "obj-24", 0 ], - "order" : 1, - "source" : [ "obj-5", 1 ] + "destination" : [ "obj-4", 0 ], + "source" : [ "obj-18", 0 ] } } , { "patchline" : { - "destination" : [ "obj-25", 0 ], - "order" : 0, - "source" : [ "obj-5", 1 ] + "destination" : [ "obj-10", 0 ], + "source" : [ "obj-19", 0 ] } } , { "patchline" : { - "destination" : [ "obj-4", 0 ], - "source" : [ "obj-5", 0 ] + "destination" : [ "obj-10", 0 ], + "source" : [ "obj-3", 0 ] } } , { "patchline" : { - "destination" : [ "obj-7", 0 ], - "order" : 3, - "source" : [ "obj-5", 1 ] + "destination" : [ "obj-19", 0 ], + "source" : [ "obj-4", 0 ] } } , { "patchline" : { - "destination" : [ "obj-4", 1 ], - "source" : [ "obj-7", 0 ] + "destination" : [ "obj-9", 0 ], + "source" : [ "obj-8", 0 ] } } , { "patchline" : { - "destination" : [ "obj-5", 0 ], - "source" : [ "obj-8", 0 ] + "destination" : [ "obj-18", 0 ], + "source" : [ "obj-9", 2 ] } } @@ -3133,7 +3352,6 @@ } , "patching_rect" : [ 360.0, 197.0, 94.0, 22.0 ], - "presentation_linecount" : 2, "saved_object_attributes" : { "description" : "", "digest" : "", @@ -3203,12 +3421,24 @@ "subpatcher_template" : "", "assistshowspatchername" : 0, "boxes" : [ { + "box" : { + "id" : "obj-1", + "linecount" : 3, + "maxclass" : "comment", + "numinlets" : 1, + "numoutlets" : 0, + "patching_rect" : [ 219.0, 365.0, 216.0, 47.0 ], + "text" : "If you move presets around, or write them to disk and read them back later, the set colors index will still be here." + } + + } +, { "box" : { "id" : "obj-23", "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 178.0, 178.0, 123.0, 20.0 ], + "patching_rect" : [ 180.5, 150.0, 123.0, 20.0 ], "text" : "Change preset colors" } @@ -3220,7 +3450,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "int" ], - "patching_rect" : [ 191.0, 320.0, 29.5, 22.0 ], + "patching_rect" : [ 199.5, 273.0, 29.5, 22.0 ], "text" : "+ 1" } @@ -3232,7 +3462,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 191.0, 291.0, 59.0, 22.0 ], + "patching_rect" : [ 199.5, 244.0, 59.0, 22.0 ], "text" : "random 6" } @@ -3245,7 +3475,7 @@ "numoutlets" : 1, "outlettype" : [ "bang" ], "parameter_enable" : 0, - "patching_rect" : [ 191.0, 260.0, 24.0, 24.0 ] + "patching_rect" : [ 199.5, 213.0, 24.0, 24.0 ] } } @@ -3255,7 +3485,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 221.0, 262.0, 174.0, 20.0 ], + "patching_rect" : [ 229.5, 215.0, 174.0, 20.0 ], "text" : "Set a random color for preset 4" } @@ -3267,7 +3497,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 191.0, 351.0, 77.0, 22.0 ], + "patching_rect" : [ 199.5, 304.0, 77.0, 22.0 ], "text" : "setcolor 4 $1" } @@ -3279,7 +3509,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "int" ], - "patching_rect" : [ 74.0, 270.0, 29.5, 22.0 ], + "patching_rect" : [ 76.5, 242.0, 29.5, 22.0 ], "text" : "+ 1" } @@ -3291,7 +3521,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 74.0, 241.0, 59.0, 22.0 ], + "patching_rect" : [ 76.5, 213.0, 59.0, 22.0 ], "text" : "random 6" } @@ -3304,7 +3534,7 @@ "numoutlets" : 1, "outlettype" : [ "bang" ], "parameter_enable" : 0, - "patching_rect" : [ 74.0, 210.0, 24.0, 24.0 ] + "patching_rect" : [ 76.5, 182.0, 24.0, 24.0 ] } } @@ -3314,7 +3544,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 104.0, 212.0, 235.0, 20.0 ], + "patching_rect" : [ 106.5, 184.0, 235.0, 20.0 ], "text" : "Set a random color for the selected preset" } @@ -3348,7 +3578,7 @@ "maxclass" : "newobj", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 48.0, 398.0, 81.0, 22.0 ], + "patching_rect" : [ 48.0, 407.0, 81.0, 22.0 ], "text" : "s to_tc.preset" } @@ -3360,7 +3590,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 74.0, 299.0, 67.0, 22.0 ], + "patching_rect" : [ 76.5, 271.0, 67.0, 22.0 ], "text" : "setcolor $1" } @@ -3385,6 +3615,27 @@ "textcolor" : [ 0.34902, 0.34902, 0.34902, 1.0 ] } + } +, { + "box" : { + "background" : 1, + "bgcolor" : [ 1.0, 0.788235, 0.470588, 1.0 ], + "fontface" : 1, + "hint" : "", + "id" : "obj-4", + "ignoreclick" : 1, + "legacytextcolor" : 1, + "maxclass" : "textbutton", + "numinlets" : 1, + "numoutlets" : 3, + "outlettype" : [ "", "", "int" ], + "parameter_enable" : 0, + "patching_rect" : [ 192.0, 379.0, 20.0, 20.0 ], + "rounded" : 60.0, + "text" : "3", + "textcolor" : [ 0.34902, 0.34902, 0.34902, 1.0 ] + } + } , { "box" : { @@ -3400,7 +3651,7 @@ "numoutlets" : 3, "outlettype" : [ "", "", "int" ], "parameter_enable" : 0, - "patching_rect" : [ 151.0, 178.0, 20.0, 20.0 ], + "patching_rect" : [ 153.5, 150.0, 20.0, 20.0 ], "rounded" : 60.0, "text" : "2", "textcolor" : [ 0.34902, 0.34902, 0.34902, 1.0 ] @@ -3494,8 +3745,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 461.0, 190.0, 157.0, 37.0 ], - "presentation_linecount" : 7, + "patching_rect" : [ 461.0, 190.0, 160.0, 37.0 ], "text" : "Open these subpatchers to get more info" } @@ -3713,8 +3963,8 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 173.0, 265.0, 352.0, 79.0 ], - "text" : "For color modes 2 and 3 to work, you need to add a pattr object named 'preset_color' to your patch. If using subscribe mode, make sure to subscribe to that client.\nPreset color data will be stored just like your other parameters." + "patching_rect" : [ 202.0, 265.0, 374.0, 79.0 ], + "text" : "For color modes 2 and 3 to work, you need to add a pattr object named 'preset_color' to your patch. If using subscribe mode, make sure to add preset_color to the pattrstorage's subscribe list.\nPreset color data will be stored just like your other parameters." } } @@ -3725,14 +3975,14 @@ "numinlets" : 1, "numoutlets" : 3, "outlettype" : [ "", "", "" ], - "patching_rect" : [ 258.0, 346.0, 215.0, 22.0 ], + "patching_rect" : [ 338.0, 346.0, 102.0, 22.0 ], + "restore" : [ 0 ], "saved_object_attributes" : { - "initial" : [ 0, 1.0, 0.5, 1.0, 1.0 ], "parameter_enable" : 0, "parameter_mappable" : 0 } , - "text" : "pattr preset_color @initial 0 1. 0.5 1. 1.", + "text" : "pattr preset_color", "varname" : "preset_color" } @@ -3758,7 +4008,7 @@ "numoutlets" : 3, "outlettype" : [ "", "", "" ], "patching_rect" : [ 322.0, 400.0, 40.0, 22.0 ], - "restore" : [ -0.42, -0.42, -0.04, -0.08, -0.72, -0.57, -0.75, -0.9, 0.68, -0.42, 0.9, -0.25, 0.11, -0.86, 0.38, 0.66 ], + "restore" : [ 0.43, 0.34, -0.47, 0.92, -0.77, -0.56, -0.16, -0.03, -0.74, 0.06, -0.81, 0.97, -0.39, 0.47, 0.73, -0.63 ], "saved_object_attributes" : { "parameter_enable" : 0, "parameter_mappable" : 0 @@ -4096,7 +4346,7 @@ , { "box" : { "border" : 0, - "embedstate" : [ [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "ignoreslotzero", 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 0 ], [ "min_rows", 50 ], [ "bubblesize", 14 ], [ "color_mode", 3 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "display_interp", 1 ], [ "select_mode", 0 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "margin", 4 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontsize", 14 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "slot_round", 0 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontname", "Arial" ], [ "autowriteagain", 0 ], [ "pattrstorage", "colors" ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "scrollable", 1 ], [ "spacing", 4 ] ], + "embedstate" : [ [ "bubblesize", 14 ], [ "spacing", 4 ], [ "scrollable", 1 ], [ "ignoreslotzero", 1 ], [ "layout", 0 ], [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "min_rows", 50 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "slot_round", 0 ], [ "color_mode", 3 ], [ "display_interp", 1 ], [ "margin", 4 ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "fontsize", 14 ], [ "select_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontname", "Arial" ], [ "pattrstorage", "colors" ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "autowriteagain", 0 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "color_1", 0.743, 0.41, 0.501, 1 ] ], "filename" : "tc.preset.js", "id" : "obj-10", "maxclass" : "jsui", @@ -4145,7 +4395,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 10.0, 69.599853515625, 473.0, 65.0 ], + "patching_rect" : [ 10.0, 69.599853515625, 470.0, 65.0 ], "text" : "When color_mode is set to 1 (Cycle), stored presets are shown in colors from color_1 to color_6, cyclically depending on their slot number.\nIn mode 2 (Select), you can freely choose one of the 6 colors for each preset.\nIn mode 3 (Custom), you are free to set any color in rgba format for any preset." } @@ -4187,7 +4437,7 @@ "client_rect" : [ 4, 44, 358, 172 ], "parameter_enable" : 0, "parameter_mappable" : 0, - "storage_rect" : [ 0, 163, 600, 463 ] + "storage_rect" : [ 583, 69, 1034, 197 ] } , "text" : "pattrstorage colors", @@ -4216,6 +4466,13 @@ "source" : [ "obj-111", 0 ] } + } +, { + "patchline" : { + "destination" : [ "obj-1", 0 ], + "source" : [ "obj-12", 0 ] + } + } , { "patchline" : { @@ -4232,6 +4489,13 @@ "source" : [ "obj-14", 1 ] } + } +, { + "patchline" : { + "destination" : [ "obj-1", 0 ], + "source" : [ "obj-15", 0 ] + } + } , { "patchline" : { @@ -4262,6 +4526,13 @@ "source" : [ "obj-7", 0 ] } + } +, { + "patchline" : { + "destination" : [ "obj-1", 0 ], + "source" : [ "obj-9", 0 ] + } + } ] } @@ -4361,7 +4632,7 @@ , { "box" : { "border" : 0, - "embedstate" : [ [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "ignoreslotzero", 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 0 ], [ "min_rows", 50 ], [ "bubblesize", 14 ], [ "color_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "display_interp", 1 ], [ "select_mode", 0 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "margin", 4 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontsize", 14 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "slot_round", 0 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontname", "Arial" ], [ "autowriteagain", 0 ], [ "pattrstorage", "test" ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "scrollable", 1 ], [ "spacing", 4 ] ], + "embedstate" : [ [ "bubblesize", 14 ], [ "spacing", 4 ], [ "scrollable", 1 ], [ "ignoreslotzero", 1 ], [ "layout", 0 ], [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "min_rows", 50 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "slot_round", 0 ], [ "color_mode", 0 ], [ "display_interp", 1 ], [ "margin", 4 ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "fontsize", 14 ], [ "select_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontname", "Arial" ], [ "pattrstorage", "test" ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "autowriteagain", 0 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "color_1", 0.743, 0.41, 0.501, 1 ] ], "filename" : "tc.preset.js", "id" : "obj-10", "maxclass" : "jsui", diff --git a/patchers/tc.preset_demo.maxpat b/patchers/tc.preset_demo.maxpat deleted file mode 100755 index 53e68ff..0000000 --- a/patchers/tc.preset_demo.maxpat +++ /dev/null @@ -1,1830 +0,0 @@ -{ - "patcher" : { - "fileversion" : 1, - "appversion" : { - "major" : 8, - "minor" : 6, - "revision" : 4, - "architecture" : "x64", - "modernui" : 1 - } -, - "classnamespace" : "box", - "rect" : [ 451.0, 100.0, 630.0, 848.0 ], - "bglocked" : 0, - "openinpresentation" : 0, - "default_fontsize" : 12.0, - "default_fontface" : 0, - "default_fontname" : "Arial", - "gridonopen" : 1, - "gridsize" : [ 15.0, 15.0 ], - "gridsnaponopen" : 1, - "objectsnaponopen" : 1, - "statusbarvisible" : 2, - "toolbarvisible" : 1, - "lefttoolbarpinned" : 0, - "toptoolbarpinned" : 0, - "righttoolbarpinned" : 0, - "bottomtoolbarpinned" : 0, - "toolbars_unpinned_last_save" : 0, - "tallnewobj" : 0, - "boxanimatetime" : 200, - "enablehscroll" : 1, - "enablevscroll" : 1, - "devicewidth" : 0.0, - "description" : "", - "digest" : "", - "tags" : "", - "style" : "", - "subpatcher_template" : "", - "assistshowspatchername" : 0, - "boxes" : [ { - "box" : { - "id" : "obj-61", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 326.0, 524.0, 33.0, 22.0 ], - "text" : "read" - } - - } -, { - "box" : { - "format" : 6, - "id" : "obj-68", - "maxclass" : "flonum", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 647.0, 515.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "format" : 6, - "id" : "obj-54", - "maxclass" : "flonum", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 595.0, 515.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "format" : 6, - "id" : "obj-49", - "maxclass" : "flonum", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 549.0, 515.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-9", - "maxclass" : "newobj", - "numinlets" : 5, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 522.0, 555.0, 127.0, 22.0 ], - "text" : "pak setcolor 0. 0. 0. 1." - } - - } -, { - "box" : { - "id" : "obj-42", - "maxclass" : "number", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 522.0, 587.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-15", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 522.0, 616.0, 67.0, 22.0 ], - "text" : "setcolor $1" - } - - } -, { - "box" : { - "id" : "obj-57", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 364.0, 524.0, 34.0, 22.0 ], - "text" : "write" - } - - } -, { - "box" : { - "id" : "obj-53", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 15.0, 664.0, 32.0, 22.0 ], - "text" : "print" - } - - } -, { - "box" : { - "id" : "obj-51", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 393.0, 564.0, 77.0, 22.0 ], - "text" : "clientwindow" - } - - } -, { - "box" : { - "id" : "obj-31", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 245.5, 559.0, 89.0, 22.0 ], - "text" : "storagewindow" - } - - } -, { - "box" : { - "id" : "obj-128", - "items" : [ "Grid", ",", "List" ], - "maxclass" : "umenu", - "numinlets" : 1, - "numoutlets" : 3, - "outlettype" : [ "int", "", "" ], - "parameter_enable" : 0, - "patching_rect" : [ 848.5, 370.0, 77.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-126", - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 901.0, 1017.0, 164.0, 20.0 ], - "text" : "Reset a given color to default" - } - - } -, { - "box" : { - "id" : "obj-122", - "linecount" : 2, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 959.0, 908.0, 133.0, 33.0 ], - "text" : "Set a given color (from 1 to 6)" - } - - } -, { - "box" : { - "id" : "obj-120", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 830.0, 927.0, 123.0, 22.0 ], - "text" : "color_wheel 3 0 1 1 1" - } - - } -, { - "box" : { - "id" : "obj-119", - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 927.0, 993.0, 150.0, 20.0 ], - "text" : "Reset all colors to default" - } - - } -, { - "box" : { - "id" : "obj-117", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 830.0, 1017.0, 48.0, 22.0 ], - "text" : "color_3" - } - - } -, { - "box" : { - "id" : "obj-115", - "linecount" : 8, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 876.0, 145.0, 150.0, 114.0 ], - "text" : "When select mode is enabled, a single click selects a stored preset without recalling it. It allows to drag it, set its name and lock state while keeping the last recalled preset active. " - } - - } -, { - "box" : { - "id" : "obj-113", - "linecount" : 6, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 928.0, 780.0, 151.0, 87.0 ], - "text" : "When color mode is set to cycle, stored presets are shown in colors from color_1 to color_6, cyclically depending on their slot number." - } - - } -, { - "box" : { - "id" : "obj-111", - "items" : [ "Off", ",", "Cycle", ",", "Select", ",", "Custom" ], - "maxclass" : "umenu", - "numinlets" : 1, - "numoutlets" : 3, - "outlettype" : [ "int", "", "" ], - "parameter_enable" : 0, - "patching_rect" : [ 835.0, 780.0, 62.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-108", - "maxclass" : "toggle", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "parameter_enable" : 0, - "patching_rect" : [ 849.0, 235.0, 24.0, 24.0 ] - } - - } -, { - "box" : { - "id" : "obj-104", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 835.0, 812.0, 88.0, 22.0 ], - "text" : "color_mode $1" - } - - } -, { - "box" : { - "id" : "obj-99", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 830.0, 900.0, 88.0, 22.0 ], - "text" : "color_3 1 0 1 1" - } - - } -, { - "box" : { - "id" : "obj-95", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 830.0, 991.0, 73.0, 22.0 ], - "text" : "color_wheel" - } - - } -, { - "box" : { - "id" : "obj-65", - "linecount" : 6, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 959.0, 534.0, 153.0, 87.0 ], - "text" : "Minimum number of slots to display when scrollable is enabled. If a preset is stored in a slot higher than that value, then it is ignored." - } - - } -, { - "box" : { - "id" : "obj-62", - "linecount" : 3, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 949.5, 460.0, 150.0, 47.0 ], - "text" : "Enable to scroll through your presets! (Only work in list mode currently)" - } - - } -, { - "box" : { - "id" : "obj-60", - "maxclass" : "number", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 849.0, 540.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-39", - "linecount" : 2, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 932.5, 368.5, 150.0, 33.0 ], - "text" : "Choose to display presets as a grid (0) or a list (1)!" - } - - } -, { - "box" : { - "id" : "obj-33", - "maxclass" : "toggle", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "parameter_enable" : 0, - "patching_rect" : [ 849.0, 450.0, 24.0, 24.0 ] - } - - } -, { - "box" : { - "id" : "obj-50", - "linecount" : 5, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 645.0, 290.0, 188.0, 74.0 ], - "text" : "Makes displayed previous active slot and interpolation status to ignore slot 0. Can be usefull when using slot 0 as a temporary step for interpolation." - } - - } -, { - "box" : { - "id" : "obj-43", - "maxclass" : "toggle", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "parameter_enable" : 0, - "patching_rect" : [ 388.0, 235.0, 24.0, 24.0 ] - } - - } -, { - "box" : { - "id" : "obj-37", - "maxclass" : "toggle", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "parameter_enable" : 0, - "patching_rect" : [ 645.0, 235.0, 24.0, 24.0 ] - } - - } -, { - "box" : { - "id" : "obj-34", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patcher" : { - "fileversion" : 1, - "appversion" : { - "major" : 8, - "minor" : 6, - "revision" : 4, - "architecture" : "x64", - "modernui" : 1 - } -, - "classnamespace" : "box", - "rect" : [ 59.0, 107.0, 640.0, 480.0 ], - "bglocked" : 0, - "openinpresentation" : 0, - "default_fontsize" : 12.0, - "default_fontface" : 0, - "default_fontname" : "Arial", - "gridonopen" : 1, - "gridsize" : [ 15.0, 15.0 ], - "gridsnaponopen" : 1, - "objectsnaponopen" : 1, - "statusbarvisible" : 2, - "toolbarvisible" : 1, - "lefttoolbarpinned" : 0, - "toptoolbarpinned" : 0, - "righttoolbarpinned" : 0, - "bottomtoolbarpinned" : 0, - "toolbars_unpinned_last_save" : 0, - "tallnewobj" : 0, - "boxanimatetime" : 200, - "enablehscroll" : 1, - "enablevscroll" : 1, - "devicewidth" : 0.0, - "description" : "", - "digest" : "", - "tags" : "", - "style" : "", - "subpatcher_template" : "", - "assistshowspatchername" : 0, - "boxes" : [ { - "box" : { - "id" : "obj-8", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 159.166666666666686, 223.0, 45.0, 22.0 ], - "text" : "store 0" - } - - } -, { - "box" : { - "id" : "obj-5", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 3, - "outlettype" : [ "bang", "int", "bang" ], - "patching_rect" : [ 52.5, 170.0, 125.666666666666686, 22.0 ], - "text" : "t b i b" - } - - } -, { - "box" : { - "id" : "obj-4", - "maxclass" : "newobj", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "patching_rect" : [ 52.5, 213.0, 29.5, 22.0 ], - "text" : "i" - } - - } -, { - "box" : { - "id" : "obj-1", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 196.0, 100.0, 90.0, 22.0 ], - "text" : "loadmess 1000" - } - - } -, { - "box" : { - "id" : "obj-31", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "bang", "float" ], - "patching_rect" : [ 52.5, 308.0, 29.5, 22.0 ], - "text" : "t b f" - } - - } -, { - "box" : { - "id" : "obj-29", - "maxclass" : "newobj", - "numinlets" : 3, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "patching_rect" : [ 52.5, 281.0, 41.0, 22.0 ], - "text" : "line 0." - } - - } -, { - "box" : { - "id" : "obj-25", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 52.5, 250.0, 52.0, 22.0 ], - "text" : "0., 1. $1" - } - - } -, { - "box" : { - "id" : "obj-14", - "maxclass" : "newobj", - "numinlets" : 4, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 52.5, 336.0, 99.0, 22.0 ], - "text" : "pack recall 0 0 0." - } - - } -, { - "box" : { - "id" : "obj-9", - "maxclass" : "newobj", - "numinlets" : 2, - "numoutlets" : 2, - "outlettype" : [ "", "" ], - "patching_rect" : [ 52.5, 126.0, 55.0, 22.0 ], - "text" : "zl.slice 1" - } - - } -, { - "box" : { - "id" : "obj-6", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 52.5, 100.0, 71.0, 22.0 ], - "text" : "fromsymbol" - } - - } -, { - "box" : { - "comment" : "", - "id" : "obj-32", - "index" : 1, - "maxclass" : "inlet", - "numinlets" : 0, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 52.5, 40.0, 30.0, 30.0 ] - } - - } -, { - "box" : { - "comment" : "", - "id" : "obj-33", - "index" : 1, - "maxclass" : "outlet", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 52.5, 418.0, 30.0, 30.0 ] - } - - } - ], - "lines" : [ { - "patchline" : { - "destination" : [ "obj-4", 1 ], - "source" : [ "obj-1", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-33", 0 ], - "source" : [ "obj-14", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-29", 0 ], - "source" : [ "obj-25", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-31", 0 ], - "source" : [ "obj-29", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-14", 3 ], - "source" : [ "obj-31", 1 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-14", 0 ], - "source" : [ "obj-31", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-6", 0 ], - "source" : [ "obj-32", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-25", 0 ], - "source" : [ "obj-4", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-14", 2 ], - "source" : [ "obj-5", 1 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-4", 0 ], - "source" : [ "obj-5", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-8", 0 ], - "source" : [ "obj-5", 2 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-9", 0 ], - "source" : [ "obj-6", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-33", 0 ], - "source" : [ "obj-8", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-5", 0 ], - "source" : [ "obj-9", 0 ] - } - - } - ] - } -, - "patching_rect" : [ 227.5, 845.0, 125.0, 22.0 ], - "saved_object_attributes" : { - "description" : "", - "digest" : "", - "globalpatchername" : "", - "tags" : "" - } -, - "text" : "p trigger_interpolation" - } - - } -, { - "box" : { - "hidden" : 1, - "id" : "obj-28", - "linecount" : 2, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 34.5, 458.0, 150.0, 33.0 ], - "text" : "Usefull when making changes to the js file" - } - - } -, { - "box" : { - "hidden" : 1, - "id" : "obj-17", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 33.5, 497.0, 151.0, 22.0 ], - "text" : "loadbang, pattrstorage test" - } - - } -, { - "box" : { - "id" : "obj-30", - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 523.0, 665.0, 65.0, 20.0 ], - "text" : "For testing" - } - - } -, { - "box" : { - "id" : "obj-23", - "linecount" : 7, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 176.0, 20.0, 505.0, 100.0 ], - "text" : "In order to use that custom jsui, you need to:\n1. bind the jsui to a named pattrstorage, either by setting the pattrstorage name as the jsui jsarguments attribute, or by sending a message to the jsui starting by \"pattrstorage\" followed by the pattrstorage name (prefered). You can re-send this message manually at any time to re-sync the jsui with the pattstorage (in case you send some messages to the pattrstorage that doesn't trigger an output). An empty \"pattrstorage\" message to the jsui will unbind it.\n2. Connect the pattrstorage outlet to the jsui inlet." - } - - } -, { - "box" : { - "id" : "obj-13", - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 72.0, 916.0, 321.0, 20.0 ], - "text" : "Here's a regular [preset] just to check everything goes fine." - } - - } -, { - "box" : { - "id" : "obj-45", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 403.0, 408.0, 99.0, 22.0 ], - "text" : "display_interp $1" - } - - } -, { - "box" : { - "id" : "obj-19", - "maxclass" : "toggle", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "parameter_enable" : 0, - "patching_rect" : [ 403.0, 373.0, 24.0, 24.0 ] - } - - } -, { - "box" : { - "format" : 6, - "id" : "obj-26", - "maxclass" : "flonum", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 309.0, 374.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-18", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 309.0, 408.0, 81.0, 22.0 ], - "text" : "slot_round $1" - } - - } -, { - "box" : { - "id" : "obj-90", - "linecount" : 4, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 388.0, 290.0, 241.0, 60.0 ], - "text" : "When enabled, sends writeagain to pattrstrage when a preset has been stored/renamed/deleted/moved/(un)locked, keeping the json file always up to date" - } - - } -, { - "box" : { - "id" : "obj-88", - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 251.0, 290.0, 129.0, 20.0 ], - "text" : "Lock/unlock active slot" - } - - } -, { - "box" : { - "id" : "obj-87", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 251.0, 270.0, 63.0, 22.0 ], - "text" : "setlock $1" - } - - } -, { - "box" : { - "id" : "obj-85", - "maxclass" : "toggle", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "parameter_enable" : 0, - "patching_rect" : [ 251.0, 234.0, 24.0, 24.0 ] - } - - } -, { - "box" : { - "id" : "obj-82", - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 137.0, 290.0, 104.0, 20.0 ], - "text" : "Lock/unlock slot 2" - } - - } -, { - "box" : { - "id" : "obj-79", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "" ], - "patching_rect" : [ 164.0, 559.0, 29.5, 22.0 ], - "text" : "t l l" - } - - } -, { - "box" : { - "id" : "obj-78", - "linecount" : 5, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 504.0, 408.0, 230.0, 74.0 ], - "text" : "...and: bgcolor, empty_slot_color, stored_slot_color, interp_slot_color, active_slot_color, fontname, fontsize, text_bg_color, text_color\n(see the jsui attributes in the inspector)" - } - - } -, { - "box" : { - "format" : 6, - "id" : "obj-55", - "maxclass" : "flonum", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 72.0, 374.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-47", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 72.0, 408.0, 83.0, 22.0 ], - "text" : "bubblesize $1" - } - - } -, { - "box" : { - "format" : 6, - "id" : "obj-41", - "maxclass" : "flonum", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 235.0, 374.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-21", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 235.0, 408.0, 62.0, 22.0 ], - "text" : "margin $1" - } - - } -, { - "box" : { - "format" : 6, - "id" : "obj-24", - "maxclass" : "flonum", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 165.0, 374.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-20", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 164.0, 408.0, 67.0, 22.0 ], - "text" : "spacing $1" - } - - } -, { - "box" : { - "id" : "obj-36", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 164.0, 528.0, 133.0, 22.0 ], - "text" : "recallmulti 1.5 2.1 3 5.2" - } - - } -, { - "box" : { - "id" : "obj-66", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 72.0, 845.0, 135.0, 22.0 ], - "text" : "print jsui_out @popup 1" - } - - } -, { - "box" : { - "id" : "obj-63", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 72.0, 31.0, 73.0, 22.0 ], - "text" : "pattrstorage" - } - - } -, { - "box" : { - "id" : "obj-59", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 417.0, 803.0, 93.0, 22.0 ], - "text" : "prepend setlock" - } - - } -, { - "box" : { - "id" : "obj-56", - "maxclass" : "toggle", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "parameter_enable" : 0, - "patching_rect" : [ 417.0, 772.0, 24.0, 24.0 ], - "presentation" : 1, - "presentation_rect" : [ 119.0, 62.5, 24.0, 24.0 ] - } - - } -, { - "box" : { - "id" : "obj-48", - "maxclass" : "toggle", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "int" ], - "parameter_enable" : 0, - "patching_rect" : [ 137.0, 230.0, 24.0, 24.0 ] - } - - } -, { - "box" : { - "id" : "obj-44", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 137.0, 266.0, 57.0, 22.0 ], - "text" : "lock 2 $1" - } - - } -, { - "box" : { - "id" : "obj-27", - "keymode" : 1, - "maxclass" : "textedit", - "nosymquotes" : 1, - "numinlets" : 1, - "numoutlets" : 4, - "outlettype" : [ "", "int", "", "" ], - "parameter_enable" : 0, - "patching_rect" : [ 302.0, 772.0, 100.0, 50.0 ], - "presentation" : 1, - "presentation_rect" : [ 146.0, 63.5, 119.0, 22.0 ], - "text" : "random" - } - - } -, { - "box" : { - "id" : "obj-8", - "items" : [ 1, "up", ",", 2, "down", ",", 3, "sine", ",", 4, "random" ], - "maxclass" : "umenu", - "numinlets" : 1, - "numoutlets" : 3, - "outlettype" : [ "int", "", "" ], - "parameter_enable" : 0, - "patching_rect" : [ 187.0, 800.0, 100.0, 22.0 ], - "presentation" : 1, - "presentation_rect" : [ 1.0, 63.5, 116.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-22", - "linecount" : 6, - "maxclass" : "comment", - "numinlets" : 1, - "numoutlets" : 0, - "patching_rect" : [ 72.0, 139.0, 507.0, 87.0 ], - "text" : "Pattrstorage messages that doesn't trigger output and need to be sent to the jsui instead:\n- store (send to jsui only)\n- recallmulti (send to pattrstorage first for timing accuracy, then to jsui)\n- slotname (send \"setslotname\" or \"text\" to jsui instead, will rename selected slot)\n- lock (or setlock to lock/unlock of the active slot)\n- some other. I've not tested them all. " - } - - } -, { - "box" : { - "format" : 6, - "id" : "obj-16", - "maxclass" : "flonum", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "bang" ], - "parameter_enable" : 0, - "patching_rect" : [ 72.0, 528.0, 50.0, 22.0 ] - } - - } -, { - "box" : { - "id" : "obj-11", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 72.0, 559.0, 74.0, 22.0 ], - "text" : "recall 1 4 $1" - } - - } -, { - "box" : { - "id" : "obj-5", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 72.0, 266.0, 45.0, 22.0 ], - "text" : "store 5" - } - - } -, { - "box" : { - "bubblesize" : 20, - "id" : "obj-4", - "maxclass" : "preset", - "numinlets" : 1, - "numoutlets" : 5, - "outlettype" : [ "preset", "int", "preset", "int", "" ], - "patching_rect" : [ 72.0, 941.0, 364.0, 126.0 ], - "pattrstorage" : "test" - } - - } -, { - "box" : { - "id" : "obj-12", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 72.0, 59.0, 95.0, 22.0 ], - "text" : "pattrstorage test" - } - - } -, { - "box" : { - "border" : 0, - "embedstate" : [ [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "ignoreslotzero", 1 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 0 ], [ "min_rows", 50 ], [ "bubblesize", 20 ], [ "color_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "display_interp", 1 ], [ "select_mode", 0 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "margin", 4 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "fontsize", 14 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "slot_round", 0 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontname", "Arial" ], [ "autowriteagain", 0 ], [ "pattrstorage", "test" ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "color_3", 0.527, 0.459, 0.756, 1 ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "scrollable", 1 ], [ "spacing", 4 ] ], - "filename" : "tc.preset.js", - "id" : "obj-10", - "maxclass" : "jsui", - "numinlets" : 1, - "numoutlets" : 4, - "outlettype" : [ "", "", "", "" ], - "parameter_enable" : 0, - "patching_rect" : [ 72.0, 636.0, 364.0, 125.0 ], - "presentation" : 1, - "presentation_rect" : [ 1.0, 103.0, 293.0, 149.0 ], - "varname" : "jsui_test" - } - - } -, { - "box" : { - "id" : "obj-7", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 72.0, 236.0, 45.0, 22.0 ], - "text" : "store 4" - } - - } -, { - "box" : { - "id" : "obj-3", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 3, - "outlettype" : [ "", "", "" ], - "patching_rect" : [ 465.0, 664.0, 40.0, 22.0 ], - "restore" : [ -0.079365079365079, 0.206349206349206, 0.428571428571429, 0.682539682539683, 0.904761904761905, 0.904761904761905, 0.841269841269841, 0.555555555555556, 0.047619047619048, -0.301587301587302, -0.587301587301587, -0.682539682539683, -0.650793650793651, -0.428571428571429, -0.111111111111111, 0.079365079365079 ], - "saved_object_attributes" : { - "parameter_enable" : 0, - "parameter_mappable" : 0 - } -, - "text" : "pattr", - "varname" : "u099005226" - } - - } -, { - "box" : { - "id" : "obj-2", - "maxclass" : "multislider", - "numinlets" : 1, - "numoutlets" : 2, - "outlettype" : [ "", "" ], - "parameter_enable" : 0, - "patching_rect" : [ 475.0, 691.0, 209.0, 70.0 ], - "size" : 16, - "varname" : "multislider" - } - - } -, { - "box" : { - "id" : "obj-1", - "maxclass" : "newobj", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 72.0, 599.0, 283.0, 22.0 ], - "saved_object_attributes" : { - "client_rect" : [ 4, 44, 358, 172 ], - "parameter_enable" : 0, - "parameter_mappable" : 0, - "storage_rect" : [ 583, 69, 1034, 197 ] - } -, - "subscribe" : [ "u099005226", "preset_color" ], - "text" : "pattrstorage test @savemode 0 @subscribemode 1", - "varname" : "test" - } - - } -, { - "box" : { - "attr" : "autowriteagain", - "id" : "obj-40", - "maxclass" : "attrui", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "parameter_enable" : 0, - "patching_rect" : [ 388.0, 266.0, 122.0, 22.0 ] - } - - } -, { - "box" : { - "attr" : "ignoreslotzero", - "id" : "obj-46", - "maxclass" : "attrui", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "parameter_enable" : 0, - "patching_rect" : [ 645.0, 266.0, 121.0, 22.0 ] - } - - } -, { - "box" : { - "attr" : "select_mode", - "id" : "obj-127", - "maxclass" : "attrui", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "parameter_enable" : 0, - "patching_rect" : [ 849.0, 266.0, 121.0, 22.0 ] - } - - } -, { - "box" : { - "attr" : "layout", - "id" : "obj-129", - "maxclass" : "attrui", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "parameter_enable" : 0, - "patching_rect" : [ 848.5, 402.0, 77.0, 22.0 ], - "text_width" : 53.0 - } - - } -, { - "box" : { - "attr" : "scrollable", - "id" : "obj-130", - "maxclass" : "attrui", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "parameter_enable" : 0, - "patching_rect" : [ 849.0, 485.0, 95.0, 22.0 ], - "text_width" : 73.0 - } - - } -, { - "box" : { - "attr" : "min_rows", - "id" : "obj-131", - "maxclass" : "attrui", - "numinlets" : 1, - "numoutlets" : 1, - "outlettype" : [ "" ], - "parameter_enable" : 0, - "patching_rect" : [ 849.0, 573.0, 104.0, 22.0 ], - "text_width" : 72.0 - } - - } - ], - "lines" : [ { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-1", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-27", 0 ], - "source" : [ "obj-10", 2 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-56", 0 ], - "source" : [ "obj-10", 3 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-8", 0 ], - "source" : [ "obj-10", 1 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-104", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-127", 0 ], - "source" : [ "obj-108", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-1", 0 ], - "source" : [ "obj-11", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-104", 0 ], - "source" : [ "obj-111", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-117", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "midpoints" : [ 81.5, 93.0, 15.0, 93.0, 15.0, 624.0, 81.5, 624.0 ], - "source" : [ "obj-12", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-120", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-127", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-129", 0 ], - "source" : [ "obj-128", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-129", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-130", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-131", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-15", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-11", 0 ], - "source" : [ "obj-16", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-17", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-18", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-45", 0 ], - "source" : [ "obj-19", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-20", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-21", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-20", 0 ], - "source" : [ "obj-24", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-18", 0 ], - "source" : [ "obj-26", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-27", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-2", 0 ], - "source" : [ "obj-3", 1 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-1", 0 ], - "source" : [ "obj-31", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-130", 0 ], - "source" : [ "obj-33", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-1", 0 ], - "midpoints" : [ 237.0, 884.0, 57.0, 884.0, 57.0, 592.0, 81.5, 592.0 ], - "source" : [ "obj-34", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-79", 0 ], - "source" : [ "obj-36", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-46", 0 ], - "source" : [ "obj-37", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-40", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-21", 0 ], - "source" : [ "obj-41", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-15", 0 ], - "source" : [ "obj-42", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-40", 0 ], - "source" : [ "obj-43", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-44", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-45", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-46", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-47", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-44", 0 ], - "source" : [ "obj-48", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-9", 1 ], - "source" : [ "obj-49", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-5", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-1", 0 ], - "source" : [ "obj-51", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-9", 2 ], - "source" : [ "obj-54", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-47", 0 ], - "source" : [ "obj-55", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-59", 0 ], - "source" : [ "obj-56", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-1", 0 ], - "source" : [ "obj-57", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-59", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-131", 0 ], - "source" : [ "obj-60", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-1", 0 ], - "source" : [ "obj-61", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "midpoints" : [ 81.5, 54.0, 15.0, 54.0, 15.0, 624.0, 81.5, 624.0 ], - "source" : [ "obj-63", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-9", 3 ], - "source" : [ "obj-68", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-7", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-1", 0 ], - "source" : [ "obj-79", 1 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-79", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-34", 0 ], - "source" : [ "obj-8", 1 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-87", 0 ], - "source" : [ "obj-85", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-87", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "source" : [ "obj-9", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-95", 0 ] - } - - } -, { - "patchline" : { - "destination" : [ "obj-10", 0 ], - "hidden" : 1, - "source" : [ "obj-99", 0 ] - } - - } - ], - "dependency_cache" : [ { - "name" : "tc.preset.js", - "bootpath" : "~/Documents/Max 8/Packages/tc.preset/code", - "patcherrelativepath" : "../code", - "type" : "TEXT", - "implicit" : 1 - } -, { - "name" : "test.json", - "bootpath" : "~/Documents/Max 8/Packages/tc.preset/help", - "patcherrelativepath" : "../help", - "type" : "JSON", - "implicit" : 1 - } - ], - "autosave" : 0 - } - -}