Compare commits
	
		
			10 Commits
		
	
	
		
			d57b71990b
			...
			main
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 717fe34acc | |||
| 76969558ed | |||
| e1d57b0683 | |||
| ac2c71a75e | |||
| 84d986e33d | |||
| a554a531bc | |||
| 1921d38184 | |||
| 032320a646 | |||
| b245cc56e1 | |||
| fe348b7732 | 
@@ -1,202 +1,251 @@
 | 
			
		||||
{
 | 
			
		||||
	"patcher" : 	{
 | 
			
		||||
		"fileversion" : 1,
 | 
			
		||||
		"appversion" : 		{
 | 
			
		||||
			"major" : 9,
 | 
			
		||||
			"minor" : 1,
 | 
			
		||||
			"revision" : 0,
 | 
			
		||||
			"architecture" : "x64",
 | 
			
		||||
			"modernui" : 1
 | 
			
		||||
    "patcher": {
 | 
			
		||||
        "fileversion": 1,
 | 
			
		||||
        "appversion": {
 | 
			
		||||
            "major": 9,
 | 
			
		||||
            "minor": 1,
 | 
			
		||||
            "revision": 0,
 | 
			
		||||
            "architecture": "x64",
 | 
			
		||||
            "modernui": 1
 | 
			
		||||
        },
 | 
			
		||||
        "classnamespace": "box",
 | 
			
		||||
        "rect": [ 371.0, 273.0, 483.0, 443.0 ],
 | 
			
		||||
        "toolbarvisible": 0,
 | 
			
		||||
        "lefttoolbarpinned": 2,
 | 
			
		||||
        "toptoolbarpinned": 2,
 | 
			
		||||
        "righttoolbarpinned": 2,
 | 
			
		||||
        "bottomtoolbarpinned": 2,
 | 
			
		||||
        "toolbars_unpinned_last_save": 15,
 | 
			
		||||
        "enablehscroll": 0,
 | 
			
		||||
        "enablevscroll": 0,
 | 
			
		||||
        "boxes": [
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "hidden": 1,
 | 
			
		||||
                    "id": "obj-17",
 | 
			
		||||
                    "linecount": 5,
 | 
			
		||||
                    "maxclass": "message",
 | 
			
		||||
                    "numinlets": 2,
 | 
			
		||||
                    "numoutlets": 1,
 | 
			
		||||
                    "outlettype": [ "" ],
 | 
			
		||||
                    "patching_rect": [ 9.0, 354.0, 144.0, 76.0 ],
 | 
			
		||||
                    "text": ";\rmax launchbrowser https://www.paypal.com/donate/?hosted_button_id=AVGJ5JLTP76K8"
 | 
			
		||||
                }
 | 
			
		||||
,
 | 
			
		||||
		"classnamespace" : "box",
 | 
			
		||||
		"rect" : [ 371.0, 273.0, 483.0, 443.0 ],
 | 
			
		||||
		"gridsize" : [ 15.0, 15.0 ],
 | 
			
		||||
		"toolbarvisible" : 0,
 | 
			
		||||
		"lefttoolbarpinned" : 2,
 | 
			
		||||
		"toptoolbarpinned" : 2,
 | 
			
		||||
		"righttoolbarpinned" : 2,
 | 
			
		||||
		"bottomtoolbarpinned" : 2,
 | 
			
		||||
		"toolbars_unpinned_last_save" : 15,
 | 
			
		||||
		"enablehscroll" : 0,
 | 
			
		||||
		"enablevscroll" : 0,
 | 
			
		||||
		"assistshowspatchername" : 0,
 | 
			
		||||
		"commentary" : "",
 | 
			
		||||
		"showcommentary" : 0,
 | 
			
		||||
		"boxes" : [ 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"hidden" : 1,
 | 
			
		||||
					"id" : "obj-17",
 | 
			
		||||
					"linecount" : 5,
 | 
			
		||||
					"maxclass" : "message",
 | 
			
		||||
					"numinlets" : 2,
 | 
			
		||||
					"numoutlets" : 1,
 | 
			
		||||
					"outlettype" : [ "" ],
 | 
			
		||||
					"patching_rect" : [ 9.0, 354.0, 116.0, 76.0 ],
 | 
			
		||||
					"text" : ";\rmax launchbrowser https://glucose47.gumroad.com/l/tc_preset"
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "id": "obj-13",
 | 
			
		||||
                    "linecount": 3,
 | 
			
		||||
                    "maxclass": "comment",
 | 
			
		||||
                    "numinlets": 1,
 | 
			
		||||
                    "numoutlets": 0,
 | 
			
		||||
                    "patching_rect": [ 166.5, 373.0, 150.0, 47.0 ],
 | 
			
		||||
                    "text": "GPL 3.0\n© Théophile Clet, 2025\nClick here to support",
 | 
			
		||||
                    "textcolor": [ 0.0, 0.0, 0.0, 0.5 ],
 | 
			
		||||
                    "textjustification": 1
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "fontsize": 16.0,
 | 
			
		||||
                    "id": "obj-11",
 | 
			
		||||
                    "maxclass": "comment",
 | 
			
		||||
                    "numinlets": 1,
 | 
			
		||||
                    "numoutlets": 0,
 | 
			
		||||
                    "patching_rect": [ 82.0, 81.0, 319.0, 24.0 ],
 | 
			
		||||
                    "text": "A jsui/v8ui replacement for the preset object"
 | 
			
		||||
                }
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"id" : "obj-13",
 | 
			
		||||
					"linecount" : 3,
 | 
			
		||||
					"maxclass" : "comment",
 | 
			
		||||
					"numinlets" : 1,
 | 
			
		||||
					"numoutlets" : 0,
 | 
			
		||||
					"patching_rect" : [ 166.5, 373.0, 150.0, 47.0 ],
 | 
			
		||||
					"text" : "GPL 3.0\n© Théophile Clet, 2025\nClick here to support",
 | 
			
		||||
					"textcolor" : [ 0.0, 0.0, 0.0, 0.5 ],
 | 
			
		||||
					"textjustification" : 1
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "embedstate": [
 | 
			
		||||
                        [ "margin", 4 ],
 | 
			
		||||
                        [ "bubblesize", 14 ],
 | 
			
		||||
                        [ "fontsize", 14 ],
 | 
			
		||||
                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                        [ "scrollable", 0 ],
 | 
			
		||||
                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                        [ "fontname", "Arial" ],
 | 
			
		||||
                        [ "display_interp", 1 ],
 | 
			
		||||
                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                        [ "send_name", "none" ],
 | 
			
		||||
                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                        [ "autowriteagain", 0 ],
 | 
			
		||||
                        [ "ui_rename", 0 ],
 | 
			
		||||
                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                        [ "color_mode", 0 ],
 | 
			
		||||
                        [ "min_rows", 10 ],
 | 
			
		||||
                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                        [ "spacing", 4 ],
 | 
			
		||||
                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                        [ "use_uid", 0 ],
 | 
			
		||||
                        [ "slot_round", 0 ],
 | 
			
		||||
                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                        [ "menu_mode", 0 ],
 | 
			
		||||
                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                        [ "select_mode", 0 ],
 | 
			
		||||
                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                        [ "unique_names", 0 ],
 | 
			
		||||
                        [ "layout", 1 ],
 | 
			
		||||
                        [ "poll_edited", 0 ]
 | 
			
		||||
                    ],
 | 
			
		||||
                    "filename": "tc.preset",
 | 
			
		||||
                    "id": "obj-8",
 | 
			
		||||
                    "maxclass": "jsui",
 | 
			
		||||
                    "numinlets": 1,
 | 
			
		||||
                    "numoutlets": 5,
 | 
			
		||||
                    "outlettype": [ "", "", "", "", "" ],
 | 
			
		||||
                    "parameter_enable": 0,
 | 
			
		||||
                    "patching_rect": [ 254.0, 153.0, 130.0, 58.0 ]
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "hidden": 1,
 | 
			
		||||
                    "id": "obj-7",
 | 
			
		||||
                    "maxclass": "newobj",
 | 
			
		||||
                    "numinlets": 1,
 | 
			
		||||
                    "numoutlets": 1,
 | 
			
		||||
                    "outlettype": [ "" ],
 | 
			
		||||
                    "patching_rect": [ 9.0, 301.0, 51.0, 22.0 ],
 | 
			
		||||
                    "text": "pcontrol"
 | 
			
		||||
                }
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"fontsize" : 16.0,
 | 
			
		||||
					"id" : "obj-11",
 | 
			
		||||
					"maxclass" : "comment",
 | 
			
		||||
					"numinlets" : 1,
 | 
			
		||||
					"numoutlets" : 0,
 | 
			
		||||
					"patching_rect" : [ 99.0, 81.0, 285.0, 24.0 ],
 | 
			
		||||
					"text" : "A jsui replacement for the preset object"
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "hidden": 1,
 | 
			
		||||
                    "id": "obj-6",
 | 
			
		||||
                    "maxclass": "message",
 | 
			
		||||
                    "numinlets": 2,
 | 
			
		||||
                    "numoutlets": 1,
 | 
			
		||||
                    "outlettype": [ "" ],
 | 
			
		||||
                    "patching_rect": [ 9.0, 274.0, 165.0, 22.0 ],
 | 
			
		||||
                    "text": "loadunique tc.preset.maxhelp"
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "fontsize": 20.0,
 | 
			
		||||
                    "id": "obj-4",
 | 
			
		||||
                    "maxclass": "textbutton",
 | 
			
		||||
                    "numinlets": 1,
 | 
			
		||||
                    "numoutlets": 3,
 | 
			
		||||
                    "outlettype": [ "", "", "int" ],
 | 
			
		||||
                    "parameter_enable": 0,
 | 
			
		||||
                    "patching_rect": [ 162.0, 282.0, 159.0, 41.0 ],
 | 
			
		||||
                    "text": "Open helper file"
 | 
			
		||||
                }
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"embedstate" : [ [ "margin", 4 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "scrollable", 0 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 1 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "autowriteagain", 0 ], [ "display_interp", 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "select_mode", 0 ], [ "color_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "ignoreslotzero", 1 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "spacing", 4 ], [ "slot_round", 0 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "menu_mode", 0 ], [ "bubblesize", 14 ], [ "min_rows", 10 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontsize", 14 ], [ "send_name", "none" ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "fontname", "Arial" ], [ "color_3", 0.527, 0.459, 0.756, 1 ] ],
 | 
			
		||||
					"filename" : "tc.preset",
 | 
			
		||||
					"id" : "obj-8",
 | 
			
		||||
					"maxclass" : "jsui",
 | 
			
		||||
					"numinlets" : 1,
 | 
			
		||||
					"numoutlets" : 4,
 | 
			
		||||
					"outlettype" : [ "", "", "", "" ],
 | 
			
		||||
					"parameter_enable" : 0,
 | 
			
		||||
					"patching_rect" : [ 254.0, 153.0, 130.0, 58.0 ]
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "embedstate": [
 | 
			
		||||
                        [ "margin", 4 ],
 | 
			
		||||
                        [ "bubblesize", 14 ],
 | 
			
		||||
                        [ "fontsize", 14 ],
 | 
			
		||||
                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                        [ "scrollable", 0 ],
 | 
			
		||||
                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                        [ "fontname", "Arial" ],
 | 
			
		||||
                        [ "display_interp", 1 ],
 | 
			
		||||
                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                        [ "send_name", "none" ],
 | 
			
		||||
                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                        [ "autowriteagain", 0 ],
 | 
			
		||||
                        [ "ui_rename", 0 ],
 | 
			
		||||
                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                        [ "color_mode", 0 ],
 | 
			
		||||
                        [ "min_rows", 10 ],
 | 
			
		||||
                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                        [ "spacing", 4 ],
 | 
			
		||||
                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                        [ "use_uid", 0 ],
 | 
			
		||||
                        [ "slot_round", 0 ],
 | 
			
		||||
                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                        [ "menu_mode", 0 ],
 | 
			
		||||
                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                        [ "select_mode", 0 ],
 | 
			
		||||
                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                        [ "unique_names", 0 ],
 | 
			
		||||
                        [ "layout", 0 ],
 | 
			
		||||
                        [ "poll_edited", 0 ]
 | 
			
		||||
                    ],
 | 
			
		||||
                    "filename": "tc.preset",
 | 
			
		||||
                    "id": "obj-3",
 | 
			
		||||
                    "maxclass": "jsui",
 | 
			
		||||
                    "numinlets": 1,
 | 
			
		||||
                    "numoutlets": 5,
 | 
			
		||||
                    "outlettype": [ "", "", "", "", "" ],
 | 
			
		||||
                    "parameter_enable": 0,
 | 
			
		||||
                    "patching_rect": [ 99.0, 153.0, 130.0, 58.0 ]
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "fontface": 1,
 | 
			
		||||
                    "fontsize": 48.0,
 | 
			
		||||
                    "id": "obj-2",
 | 
			
		||||
                    "maxclass": "comment",
 | 
			
		||||
                    "numinlets": 1,
 | 
			
		||||
                    "numoutlets": 0,
 | 
			
		||||
                    "patching_rect": [ 137.0, 16.0, 209.0, 60.0 ],
 | 
			
		||||
                    "text": "tc.preset",
 | 
			
		||||
                    "textjustification": 1
 | 
			
		||||
                }
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"hidden" : 1,
 | 
			
		||||
					"id" : "obj-7",
 | 
			
		||||
					"maxclass" : "newobj",
 | 
			
		||||
					"numinlets" : 1,
 | 
			
		||||
					"numoutlets" : 1,
 | 
			
		||||
					"outlettype" : [ "" ],
 | 
			
		||||
					"patching_rect" : [ 9.0, 301.0, 51.0, 22.0 ],
 | 
			
		||||
					"text" : "pcontrol"
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "box": {
 | 
			
		||||
                    "bgcolor": [ 0.2, 0.2, 0.2, 0.0 ],
 | 
			
		||||
                    "fontsize": 20.0,
 | 
			
		||||
                    "id": "obj-15",
 | 
			
		||||
                    "maxclass": "textbutton",
 | 
			
		||||
                    "numinlets": 1,
 | 
			
		||||
                    "numoutlets": 3,
 | 
			
		||||
                    "outlettype": [ "", "", "int" ],
 | 
			
		||||
                    "parameter_enable": 0,
 | 
			
		||||
                    "patching_rect": [ 166.5, 373.0, 150.0, 47.0 ],
 | 
			
		||||
                    "text": "Open helper file",
 | 
			
		||||
                    "textoncolor": [ 0.807843137254902, 0.898039215686275, 0.909803921568627, 0.0 ],
 | 
			
		||||
                    "textovercolor": [ 0.929411764705882, 0.929411764705882, 0.352941176470588, 0.0 ]
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"hidden" : 1,
 | 
			
		||||
					"id" : "obj-6",
 | 
			
		||||
					"maxclass" : "message",
 | 
			
		||||
					"numinlets" : 2,
 | 
			
		||||
					"numoutlets" : 1,
 | 
			
		||||
					"outlettype" : [ "" ],
 | 
			
		||||
					"patching_rect" : [ 9.0, 274.0, 165.0, 22.0 ],
 | 
			
		||||
					"text" : "loadunique tc.preset.maxhelp"
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"fontsize" : 20.0,
 | 
			
		||||
					"id" : "obj-4",
 | 
			
		||||
					"maxclass" : "textbutton",
 | 
			
		||||
					"numinlets" : 1,
 | 
			
		||||
					"numoutlets" : 3,
 | 
			
		||||
					"outlettype" : [ "", "", "int" ],
 | 
			
		||||
					"parameter_enable" : 0,
 | 
			
		||||
					"patching_rect" : [ 162.0, 282.0, 159.0, 41.0 ],
 | 
			
		||||
					"text" : "Open helper file"
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"embedstate" : [ [ "margin", 4 ], [ "bgcolor", 0.2, 0.2, 0.2, 1 ], [ "scrollable", 0 ], [ "interp_slot_color", 1, 1, 1, 0.8 ], [ "layout", 0 ], [ "color_4", 0.367, 0.542, 0.712, 1 ], [ "autowriteagain", 0 ], [ "display_interp", 1 ], [ "text_bg_color", 1, 1, 1, 0.5 ], [ "select_mode", 0 ], [ "color_mode", 0 ], [ "color_5", 0.283, 0.606, 0.559, 1 ], [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ], [ "ignoreslotzero", 1 ], [ "color_1", 0.743, 0.41, 0.501, 1 ], [ "text_color", 0.129, 0.129, 0.129, 1 ], [ "spacing", 4 ], [ "slot_round", 0 ], [ "color_6", 0.316, 0.616, 0.377, 1 ], [ "active_slot_color", 0.808, 0.898, 0.91, 1 ], [ "menu_mode", 0 ], [ "bubblesize", 14 ], [ "min_rows", 10 ], [ "color_2", 0.679, 0.405, 0.669, 1 ], [ "fontsize", 14 ], [ "send_name", "none" ], [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ], [ "fontname", "Arial" ], [ "color_3", 0.527, 0.459, 0.756, 1 ] ],
 | 
			
		||||
					"filename" : "tc.preset",
 | 
			
		||||
					"id" : "obj-3",
 | 
			
		||||
					"maxclass" : "jsui",
 | 
			
		||||
					"numinlets" : 1,
 | 
			
		||||
					"numoutlets" : 4,
 | 
			
		||||
					"outlettype" : [ "", "", "", "" ],
 | 
			
		||||
					"parameter_enable" : 0,
 | 
			
		||||
					"patching_rect" : [ 99.0, 153.0, 130.0, 58.0 ]
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"fontface" : 1,
 | 
			
		||||
					"fontsize" : 48.0,
 | 
			
		||||
					"id" : "obj-2",
 | 
			
		||||
					"maxclass" : "comment",
 | 
			
		||||
					"numinlets" : 1,
 | 
			
		||||
					"numoutlets" : 0,
 | 
			
		||||
					"patching_rect" : [ 137.0, 16.0, 209.0, 60.0 ],
 | 
			
		||||
					"text" : "tc.preset",
 | 
			
		||||
					"textjustification" : 1
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
, 			{
 | 
			
		||||
				"box" : 				{
 | 
			
		||||
					"bgcolor" : [ 0.2, 0.2, 0.2, 0.0 ],
 | 
			
		||||
					"fontsize" : 20.0,
 | 
			
		||||
					"id" : "obj-15",
 | 
			
		||||
					"maxclass" : "textbutton",
 | 
			
		||||
					"numinlets" : 1,
 | 
			
		||||
					"numoutlets" : 3,
 | 
			
		||||
					"outlettype" : [ "", "", "int" ],
 | 
			
		||||
					"parameter_enable" : 0,
 | 
			
		||||
					"patching_rect" : [ 166.5, 373.0, 150.0, 47.0 ],
 | 
			
		||||
					"text" : "Open helper file",
 | 
			
		||||
					"textoncolor" : [ 0.807843137254902, 0.898039215686275, 0.909803921568627, 0.0 ],
 | 
			
		||||
					"textovercolor" : [ 0.929411764705882, 0.929411764705882, 0.352941176470588, 0.0 ]
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
        ],
 | 
			
		||||
		"lines" : [ 			{
 | 
			
		||||
				"patchline" : 				{
 | 
			
		||||
					"destination" : [ "obj-17", 0 ],
 | 
			
		||||
					"hidden" : 1,
 | 
			
		||||
					"source" : [ "obj-15", 0 ]
 | 
			
		||||
        "lines": [
 | 
			
		||||
            {
 | 
			
		||||
                "patchline": {
 | 
			
		||||
                    "destination": [ "obj-17", 0 ],
 | 
			
		||||
                    "hidden": 1,
 | 
			
		||||
                    "source": [ "obj-15", 0 ]
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "patchline": {
 | 
			
		||||
                    "destination": [ "obj-6", 0 ],
 | 
			
		||||
                    "hidden": 1,
 | 
			
		||||
                    "source": [ "obj-4", 0 ]
 | 
			
		||||
                }
 | 
			
		||||
, 			{
 | 
			
		||||
				"patchline" : 				{
 | 
			
		||||
					"destination" : [ "obj-6", 0 ],
 | 
			
		||||
					"hidden" : 1,
 | 
			
		||||
					"source" : [ "obj-4", 0 ]
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                "patchline": {
 | 
			
		||||
                    "destination": [ "obj-7", 0 ],
 | 
			
		||||
                    "hidden": 1,
 | 
			
		||||
                    "source": [ "obj-6", 0 ]
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
			}
 | 
			
		||||
, 			{
 | 
			
		||||
				"patchline" : 				{
 | 
			
		||||
					"destination" : [ "obj-7", 0 ],
 | 
			
		||||
					"hidden" : 1,
 | 
			
		||||
					"source" : [ "obj-6", 0 ]
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
        ],
 | 
			
		||||
		"dependency_cache" : [ 			{
 | 
			
		||||
				"name" : "tc.preset.js",
 | 
			
		||||
				"bootpath" : "~/Documents/Max 9/Packages/tc.preset/javascript",
 | 
			
		||||
				"patcherrelativepath" : "../javascript",
 | 
			
		||||
				"type" : "TEXT",
 | 
			
		||||
				"implicit" : 1
 | 
			
		||||
        "autosave": 0
 | 
			
		||||
    }
 | 
			
		||||
 ],
 | 
			
		||||
		"autosave" : 0
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -70,9 +70,31 @@
 | 
			
		||||
                            "modernui": 1
 | 
			
		||||
                        },
 | 
			
		||||
                        "classnamespace": "box",
 | 
			
		||||
                        "rect": [ 100.0, 126.0, 899.0, 620.0 ],
 | 
			
		||||
                        "rect": [ 0.0, 26.0, 899.0, 620.0 ],
 | 
			
		||||
                        "showontab": 1,
 | 
			
		||||
                        "boxes": [
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "id": "obj-7",
 | 
			
		||||
                                    "maxclass": "newobj",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 1,
 | 
			
		||||
                                    "outlettype": [ "" ],
 | 
			
		||||
                                    "patching_rect": [ 242.5, 538.0, 93.0, 22.0 ],
 | 
			
		||||
                                    "text": "prepend setlock"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "id": "obj-2",
 | 
			
		||||
                                    "maxclass": "newobj",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 1,
 | 
			
		||||
                                    "outlettype": [ "" ],
 | 
			
		||||
                                    "patching_rect": [ 10.0, 538.0, 116.0, 22.0 ],
 | 
			
		||||
                                    "text": "prepend recall_filled"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "id": "obj-12",
 | 
			
		||||
@@ -451,8 +473,7 @@
 | 
			
		||||
                                    "numoutlets": 4,
 | 
			
		||||
                                    "outlettype": [ "", "int", "", "" ],
 | 
			
		||||
                                    "parameter_enable": 0,
 | 
			
		||||
                                    "patching_rect": [ 129.0, 506.0, 102.0, 24.0 ],
 | 
			
		||||
                                    "text": "up"
 | 
			
		||||
                                    "patching_rect": [ 129.0, 506.0, 102.0, 24.0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
@@ -509,43 +530,43 @@
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "border": 0,
 | 
			
		||||
                                    "embedstate": [
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                                        [ "color_mode", 0 ],
 | 
			
		||||
                                        [ "slot_round", 0 ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "select_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "scrollable", 0 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "layout", 0 ],
 | 
			
		||||
                                        [ "use_uid", 0 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "fontname", "Arial" ],
 | 
			
		||||
                                        [ "pattrstorage", "test" ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "pattrstorage", "tcpreset_help" ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "color_mode", 0 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "autowriteagain", 0 ],
 | 
			
		||||
                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                        [ "display_interp", 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ]
 | 
			
		||||
                                        [ "select_mode", 0 ],
 | 
			
		||||
                                        [ "use_uid", 0 ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "scrollable", 0 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "layout", 0 ],
 | 
			
		||||
                                        [ "slot_round", 0 ]
 | 
			
		||||
                                    ],
 | 
			
		||||
                                    "filename": "tc.preset.js",
 | 
			
		||||
                                    "id": "obj-10",
 | 
			
		||||
@@ -564,15 +585,15 @@
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 1,
 | 
			
		||||
                                    "outlettype": [ "" ],
 | 
			
		||||
                                    "patching_rect": [ 29.0, 303.0, 176.0, 22.0 ],
 | 
			
		||||
                                    "patching_rect": [ 29.0, 303.0, 229.0, 22.0 ],
 | 
			
		||||
                                    "saved_object_attributes": {
 | 
			
		||||
                                        "client_rect": [ 100, 172, 596, 755 ],
 | 
			
		||||
                                        "parameter_enable": 0,
 | 
			
		||||
                                        "parameter_mappable": 0,
 | 
			
		||||
                                        "storage_rect": [ 365, 44, 816, 172 ]
 | 
			
		||||
                                    },
 | 
			
		||||
                                    "text": "pattrstorage test @savemode 0",
 | 
			
		||||
                                    "varname": "test"
 | 
			
		||||
                                    "text": "pattrstorage tcpreset_help @savemode 0",
 | 
			
		||||
                                    "varname": "tcpreset_help"
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                        ],
 | 
			
		||||
@@ -613,6 +634,12 @@
 | 
			
		||||
                                    "source": [ "obj-14", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-2", 0 ],
 | 
			
		||||
                                    "source": [ "obj-17", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
@@ -625,6 +652,13 @@
 | 
			
		||||
                                    "source": [ "obj-19", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
                                    "midpoints": [ 19.5, 561.0, 6.0, 561.0, 6.0, 375.0, 19.5, 375.0 ],
 | 
			
		||||
                                    "source": [ "obj-2", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
@@ -655,6 +689,13 @@
 | 
			
		||||
                                    "source": [ "obj-26", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
                                    "midpoints": [ 138.5, 569.1953125, 6.0, 569.1953125, 6.0, 375.0, 19.5, 375.0 ],
 | 
			
		||||
                                    "source": [ "obj-27", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
@@ -727,11 +768,24 @@
 | 
			
		||||
                                    "source": [ "obj-50", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-7", 0 ],
 | 
			
		||||
                                    "source": [ "obj-56", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
                                    "source": [ "obj-6", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
                                    "midpoints": [ 252.0, 570.0, 6.0, 570.0, 6.0, 375.0, 19.5, 375.0 ],
 | 
			
		||||
                                    "source": [ "obj-7", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                        ]
 | 
			
		||||
                    },
 | 
			
		||||
@@ -759,6 +813,18 @@
 | 
			
		||||
                        "rect": [ 0.0, 26.0, 899.0, 620.0 ],
 | 
			
		||||
                        "showontab": 1,
 | 
			
		||||
                        "boxes": [
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "id": "obj-3",
 | 
			
		||||
                                    "items": [ "Preset", "number", "|", "name", ",", "Preset", "number", ",", "Preset", "name" ],
 | 
			
		||||
                                    "maxclass": "umenu",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 3,
 | 
			
		||||
                                    "outlettype": [ "int", "", "" ],
 | 
			
		||||
                                    "parameter_enable": 0,
 | 
			
		||||
                                    "patching_rect": [ 235.0, 549.0, 155.0, 22.0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "id": "obj-11",
 | 
			
		||||
@@ -1055,7 +1121,7 @@
 | 
			
		||||
                                    "maxclass": "comment",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 0,
 | 
			
		||||
                                    "patching_rect": [ 441.0, 527.0, 261.0, 87.0 ],
 | 
			
		||||
                                    "patching_rect": [ 404.0, 527.0, 261.0, 87.0 ],
 | 
			
		||||
                                    "text": "Make the preset menu to be populated by the preset number and/or their name.\nIn modes 0 and 2, use the leftmost outlet of umenu prepended by the recall_filled message to recall the correct preset. In mode 1, you can use the umenu's middle outlet directly."
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
@@ -1117,8 +1183,7 @@
 | 
			
		||||
                                    "numoutlets": 4,
 | 
			
		||||
                                    "outlettype": [ "", "int", "", "" ],
 | 
			
		||||
                                    "parameter_enable": 0,
 | 
			
		||||
                                    "patching_rect": [ 129.0, 505.0, 102.0, 24.0 ],
 | 
			
		||||
                                    "text": "yes !"
 | 
			
		||||
                                    "patching_rect": [ 129.0, 505.0, 102.0, 24.0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
@@ -1137,43 +1202,43 @@
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "border": 0,
 | 
			
		||||
                                    "embedstate": [
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                                        [ "color_mode", 0 ],
 | 
			
		||||
                                        [ "slot_round", 0 ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "select_mode", 1 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "scrollable", 0 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "layout", 0 ],
 | 
			
		||||
                                        [ "use_uid", 0 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "recall_passthrough", 0 ],
 | 
			
		||||
                                        [ "ui_rename", 1 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "fontname", "Arial" ],
 | 
			
		||||
                                        [ "pattrstorage", "test" ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "pattrstorage", "tcpreset_help" ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "color_mode", 0 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "ui_rename", 1 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "autowriteagain", 0 ],
 | 
			
		||||
                                        [ "poll_edited", 1 ],
 | 
			
		||||
                                        [ "display_interp", 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ]
 | 
			
		||||
                                        [ "select_mode", 1 ],
 | 
			
		||||
                                        [ "use_uid", 0 ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "recall_passthrough", 0 ],
 | 
			
		||||
                                        [ "poll_edited", 1 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "scrollable", 0 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "layout", 0 ],
 | 
			
		||||
                                        [ "slot_round", 0 ]
 | 
			
		||||
                                    ],
 | 
			
		||||
                                    "filename": "tc.preset.js",
 | 
			
		||||
                                    "id": "obj-10",
 | 
			
		||||
@@ -1192,15 +1257,15 @@
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 1,
 | 
			
		||||
                                    "outlettype": [ "" ],
 | 
			
		||||
                                    "patching_rect": [ 10.0, 309.0, 176.0, 22.0 ],
 | 
			
		||||
                                    "patching_rect": [ 10.0, 309.0, 229.0, 22.0 ],
 | 
			
		||||
                                    "saved_object_attributes": {
 | 
			
		||||
                                        "client_rect": [ 100, 172, 596, 755 ],
 | 
			
		||||
                                        "parameter_enable": 0,
 | 
			
		||||
                                        "parameter_mappable": 0,
 | 
			
		||||
                                        "storage_rect": [ 365, 44, 816, 172 ]
 | 
			
		||||
                                    },
 | 
			
		||||
                                    "text": "pattrstorage test @savemode 0",
 | 
			
		||||
                                    "varname": "test"
 | 
			
		||||
                                    "text": "pattrstorage tcpreset_help @savemode 0",
 | 
			
		||||
                                    "varname": "tcpreset_help"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
@@ -1322,7 +1387,7 @@
 | 
			
		||||
                                    "numoutlets": 1,
 | 
			
		||||
                                    "outlettype": [ "" ],
 | 
			
		||||
                                    "parameter_enable": 0,
 | 
			
		||||
                                    "patching_rect": [ 197.0, 563.0, 242.0, 22.0 ],
 | 
			
		||||
                                    "patching_rect": [ 235.0, 577.0, 117.0, 22.0 ],
 | 
			
		||||
                                    "text_width": 87.0
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
@@ -1452,6 +1517,12 @@
 | 
			
		||||
                                    "source": [ "obj-27", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-15", 0 ],
 | 
			
		||||
                                    "source": [ "obj-3", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-34", 0 ],
 | 
			
		||||
@@ -1589,43 +1660,43 @@
 | 
			
		||||
                                                "box": {
 | 
			
		||||
                                                    "border": 0,
 | 
			
		||||
                                                    "embedstate": [
 | 
			
		||||
                                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                                        [ "spacing", 4 ],
 | 
			
		||||
                                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                                                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                                                        [ "color_mode", 0 ],
 | 
			
		||||
                                                        [ "slot_round", 0 ],
 | 
			
		||||
                                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                                        [ "min_rows", 10 ],
 | 
			
		||||
                                                        [ "select_mode", 0 ],
 | 
			
		||||
                                                        [ "unique_names", 0 ],
 | 
			
		||||
                                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                                        [ "scrollable", 1 ],
 | 
			
		||||
                                                        [ "send_name", "none" ],
 | 
			
		||||
                                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                                        [ "margin", 4 ],
 | 
			
		||||
                                                        [ "layout", 1 ],
 | 
			
		||||
                                                        [ "use_uid", 0 ],
 | 
			
		||||
                                                        [ "fontsize", 14 ],
 | 
			
		||||
                                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                                        [ "ui_rename", 1 ],
 | 
			
		||||
                                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                                        [ "fontname", "Arial" ],
 | 
			
		||||
                                                        [ "pattrstorage", "mypat" ],
 | 
			
		||||
                                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                                        [ "min_rows", 10 ],
 | 
			
		||||
                                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                                        [ "color_mode", 0 ],
 | 
			
		||||
                                                        [ "send_name", "none" ],
 | 
			
		||||
                                                        [ "spacing", 4 ],
 | 
			
		||||
                                                        [ "ui_rename", 1 ],
 | 
			
		||||
                                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                                        [ "unique_names", 0 ],
 | 
			
		||||
                                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                                        [ "autowriteagain", 0 ],
 | 
			
		||||
                                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                                        [ "display_interp", 1 ],
 | 
			
		||||
                                                        [ "text_bg_color", 1, 1, 1, 0.5 ]
 | 
			
		||||
                                                        [ "select_mode", 0 ],
 | 
			
		||||
                                                        [ "use_uid", 0 ],
 | 
			
		||||
                                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                                        [ "margin", 4 ],
 | 
			
		||||
                                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                                        [ "scrollable", 1 ],
 | 
			
		||||
                                                        [ "fontsize", 14 ],
 | 
			
		||||
                                                        [ "layout", 1 ],
 | 
			
		||||
                                                        [ "slot_round", 0 ]
 | 
			
		||||
                                                    ],
 | 
			
		||||
                                                    "filename": "tc.preset.js",
 | 
			
		||||
                                                    "id": "obj-10",
 | 
			
		||||
@@ -1731,43 +1802,43 @@
 | 
			
		||||
                                            {
 | 
			
		||||
                                                "box": {
 | 
			
		||||
                                                    "embedstate": [
 | 
			
		||||
                                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                                        [ "spacing", 4 ],
 | 
			
		||||
                                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                                                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                                                        [ "color_mode", 0 ],
 | 
			
		||||
                                                        [ "slot_round", 0 ],
 | 
			
		||||
                                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                                        [ "min_rows", 10 ],
 | 
			
		||||
                                                        [ "select_mode", 0 ],
 | 
			
		||||
                                                        [ "unique_names", 0 ],
 | 
			
		||||
                                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                                        [ "scrollable", 0 ],
 | 
			
		||||
                                                        [ "send_name", "none" ],
 | 
			
		||||
                                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                                        [ "margin", 4 ],
 | 
			
		||||
                                                        [ "layout", 0 ],
 | 
			
		||||
                                                        [ "use_uid", 0 ],
 | 
			
		||||
                                                        [ "fontsize", 14 ],
 | 
			
		||||
                                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                                        [ "fontname", "Arial" ],
 | 
			
		||||
                                                        [ "pattrstorage", "mypat" ],
 | 
			
		||||
                                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                                        [ "min_rows", 10 ],
 | 
			
		||||
                                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                                        [ "color_mode", 0 ],
 | 
			
		||||
                                                        [ "send_name", "none" ],
 | 
			
		||||
                                                        [ "spacing", 4 ],
 | 
			
		||||
                                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                                        [ "unique_names", 0 ],
 | 
			
		||||
                                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                                        [ "autowriteagain", 0 ],
 | 
			
		||||
                                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                                        [ "display_interp", 1 ],
 | 
			
		||||
                                                        [ "text_bg_color", 1, 1, 1, 0.5 ]
 | 
			
		||||
                                                        [ "select_mode", 0 ],
 | 
			
		||||
                                                        [ "use_uid", 0 ],
 | 
			
		||||
                                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                                        [ "margin", 4 ],
 | 
			
		||||
                                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                                        [ "scrollable", 0 ],
 | 
			
		||||
                                                        [ "fontsize", 14 ],
 | 
			
		||||
                                                        [ "layout", 0 ],
 | 
			
		||||
                                                        [ "slot_round", 0 ]
 | 
			
		||||
                                                    ],
 | 
			
		||||
                                                    "filename": "tc.preset.js",
 | 
			
		||||
                                                    "id": "obj-2",
 | 
			
		||||
@@ -2289,43 +2360,43 @@
 | 
			
		||||
                                                "box": {
 | 
			
		||||
                                                    "border": 0,
 | 
			
		||||
                                                    "embedstate": [
 | 
			
		||||
                                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                                        [ "spacing", 4 ],
 | 
			
		||||
                                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                                                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                                                        [ "color_mode", 0 ],
 | 
			
		||||
                                                        [ "slot_round", 0 ],
 | 
			
		||||
                                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                                        [ "min_rows", 10 ],
 | 
			
		||||
                                                        [ "select_mode", 0 ],
 | 
			
		||||
                                                        [ "unique_names", 0 ],
 | 
			
		||||
                                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                                        [ "scrollable", 0 ],
 | 
			
		||||
                                                        [ "send_name", "none" ],
 | 
			
		||||
                                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                                        [ "margin", 4 ],
 | 
			
		||||
                                                        [ "layout", 0 ],
 | 
			
		||||
                                                        [ "use_uid", 0 ],
 | 
			
		||||
                                                        [ "fontsize", 14 ],
 | 
			
		||||
                                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                                        [ "recall_passthrough", 0 ],
 | 
			
		||||
                                                        [ "ui_rename", 1 ],
 | 
			
		||||
                                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                                        [ "fontname", "Arial" ],
 | 
			
		||||
                                                        [ "pattrstorage", "mypat" ],
 | 
			
		||||
                                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                                        [ "min_rows", 10 ],
 | 
			
		||||
                                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                                        [ "color_mode", 0 ],
 | 
			
		||||
                                                        [ "send_name", "none" ],
 | 
			
		||||
                                                        [ "spacing", 4 ],
 | 
			
		||||
                                                        [ "ui_rename", 1 ],
 | 
			
		||||
                                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                                        [ "unique_names", 0 ],
 | 
			
		||||
                                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                                        [ "autowriteagain", 0 ],
 | 
			
		||||
                                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                                        [ "display_interp", 1 ],
 | 
			
		||||
                                                        [ "text_bg_color", 1, 1, 1, 0.5 ]
 | 
			
		||||
                                                        [ "select_mode", 0 ],
 | 
			
		||||
                                                        [ "use_uid", 0 ],
 | 
			
		||||
                                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                                        [ "recall_passthrough", 0 ],
 | 
			
		||||
                                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                                        [ "margin", 4 ],
 | 
			
		||||
                                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                                        [ "scrollable", 0 ],
 | 
			
		||||
                                                        [ "fontsize", 14 ],
 | 
			
		||||
                                                        [ "layout", 0 ],
 | 
			
		||||
                                                        [ "slot_round", 0 ]
 | 
			
		||||
                                                    ],
 | 
			
		||||
                                                    "filename": "tc.preset.js",
 | 
			
		||||
                                                    "id": "obj-10",
 | 
			
		||||
@@ -2446,6 +2517,34 @@
 | 
			
		||||
                        "rect": [ 0.0, 26.0, 899.0, 620.0 ],
 | 
			
		||||
                        "showontab": 1,
 | 
			
		||||
                        "boxes": [
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "fontface": 0,
 | 
			
		||||
                                    "fontname": "Arial",
 | 
			
		||||
                                    "fontsize": 12.0,
 | 
			
		||||
                                    "id": "obj-2",
 | 
			
		||||
                                    "keymode": 1,
 | 
			
		||||
                                    "lines": 1,
 | 
			
		||||
                                    "maxclass": "textedit",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 4,
 | 
			
		||||
                                    "outlettype": [ "", "int", "", "" ],
 | 
			
		||||
                                    "parameter_enable": 0,
 | 
			
		||||
                                    "patching_rect": [ 10.0, 499.0, 116.0, 26.0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "bubble": 1,
 | 
			
		||||
                                    "bubbleside": 0,
 | 
			
		||||
                                    "id": "obj-6",
 | 
			
		||||
                                    "maxclass": "comment",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 0,
 | 
			
		||||
                                    "patching_rect": [ 137.0, 492.0, 236.0, 39.0 ],
 | 
			
		||||
                                    "text": "Scroll the list with your mouse or trackpad!"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "hidden": 1,
 | 
			
		||||
@@ -2534,59 +2633,47 @@
 | 
			
		||||
                                    "text_width": 78.0
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "bubble": 1,
 | 
			
		||||
                                    "bubbleside": 0,
 | 
			
		||||
                                    "id": "obj-6",
 | 
			
		||||
                                    "maxclass": "comment",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 0,
 | 
			
		||||
                                    "patching_rect": [ 20.5, 484.0, 236.0, 39.0 ],
 | 
			
		||||
                                    "text": "Scroll the list with your mouse or trackpad!"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "border": 0,
 | 
			
		||||
                                    "embedstate": [
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                                        [ "color_mode", 0 ],
 | 
			
		||||
                                        [ "slot_round", 0 ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "select_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "scrollable", 1 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "layout", 1 ],
 | 
			
		||||
                                        [ "use_uid", 0 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "fontname", "Arial" ],
 | 
			
		||||
                                        [ "pattrstorage", "test" ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "pattrstorage", "tcpreset_help" ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "color_mode", 0 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "autowriteagain", 0 ],
 | 
			
		||||
                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                        [ "display_interp", 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ]
 | 
			
		||||
                                        [ "select_mode", 0 ],
 | 
			
		||||
                                        [ "use_uid", 0 ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "scrollable", 1 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "layout", 1 ],
 | 
			
		||||
                                        [ "slot_round", 0 ]
 | 
			
		||||
                                    ],
 | 
			
		||||
                                    "filename": "tc.preset.js",
 | 
			
		||||
                                    "id": "obj-10",
 | 
			
		||||
@@ -2605,15 +2692,15 @@
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 1,
 | 
			
		||||
                                    "outlettype": [ "" ],
 | 
			
		||||
                                    "patching_rect": [ 10.0, 309.0, 176.0, 22.0 ],
 | 
			
		||||
                                    "patching_rect": [ 10.0, 309.0, 229.0, 22.0 ],
 | 
			
		||||
                                    "saved_object_attributes": {
 | 
			
		||||
                                        "client_rect": [ 100, 172, 596, 755 ],
 | 
			
		||||
                                        "parameter_enable": 0,
 | 
			
		||||
                                        "parameter_mappable": 0,
 | 
			
		||||
                                        "storage_rect": [ 365, 44, 816, 172 ]
 | 
			
		||||
                                    },
 | 
			
		||||
                                    "text": "pattrstorage test @savemode 0",
 | 
			
		||||
                                    "varname": "test"
 | 
			
		||||
                                    "text": "pattrstorage tcpreset_help @savemode 0",
 | 
			
		||||
                                    "varname": "tcpreset_help"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
@@ -2771,6 +2858,12 @@
 | 
			
		||||
                                    "source": [ "obj-1", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-2", 0 ],
 | 
			
		||||
                                    "source": [ "obj-10", 2 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
@@ -2807,6 +2900,13 @@
 | 
			
		||||
                                    "source": [ "obj-16", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-10", 0 ],
 | 
			
		||||
                                    "midpoints": [ 19.5, 528.0, 6.0, 528.0, 6.0, 375.0, 19.5, 375.0 ],
 | 
			
		||||
                                    "source": [ "obj-2", 0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "patchline": {
 | 
			
		||||
                                    "destination": [ "obj-129", 0 ],
 | 
			
		||||
@@ -2861,7 +2961,7 @@
 | 
			
		||||
                            "modernui": 1
 | 
			
		||||
                        },
 | 
			
		||||
                        "classnamespace": "box",
 | 
			
		||||
                        "rect": [ 0.0, 26.0, 899.0, 620.0 ],
 | 
			
		||||
                        "rect": [ 100.0, 126.0, 899.0, 620.0 ],
 | 
			
		||||
                        "showontab": 1,
 | 
			
		||||
                        "boxes": [
 | 
			
		||||
                            {
 | 
			
		||||
@@ -2916,8 +3016,7 @@
 | 
			
		||||
                                    "numoutlets": 4,
 | 
			
		||||
                                    "outlettype": [ "", "int", "", "" ],
 | 
			
		||||
                                    "parameter_enable": 0,
 | 
			
		||||
                                    "patching_rect": [ 128.5, 499.0, 102.0, 24.0 ],
 | 
			
		||||
                                    "text": "Preset 1"
 | 
			
		||||
                                    "patching_rect": [ 128.5, 499.0, 102.0, 24.0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
@@ -4189,43 +4288,43 @@
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "border": 0,
 | 
			
		||||
                                    "embedstate": [
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                                        [ "color_mode", 1 ],
 | 
			
		||||
                                        [ "slot_round", 0 ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "select_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "scrollable", 0 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "layout", 0 ],
 | 
			
		||||
                                        [ "use_uid", 1 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "fontname", "Arial" ],
 | 
			
		||||
                                        [ "pattrstorage", "colors" ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "color_mode", 1 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "autowriteagain", 0 ],
 | 
			
		||||
                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                        [ "display_interp", 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ]
 | 
			
		||||
                                        [ "select_mode", 0 ],
 | 
			
		||||
                                        [ "use_uid", 1 ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "scrollable", 0 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "layout", 0 ],
 | 
			
		||||
                                        [ "slot_round", 0 ]
 | 
			
		||||
                                    ],
 | 
			
		||||
                                    "filename": "tc.preset.js",
 | 
			
		||||
                                    "id": "obj-10",
 | 
			
		||||
@@ -4517,6 +4616,20 @@
 | 
			
		||||
                        "gridsize": [ 5.0, 5.0 ],
 | 
			
		||||
                        "showontab": 1,
 | 
			
		||||
                        "boxes": [
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "bgcolor": [ 0.7019607843137254, 0.7019607843137254, 0.7019607843137254, 0.0 ],
 | 
			
		||||
                                    "fontface": 1,
 | 
			
		||||
                                    "fontsize": 14.0,
 | 
			
		||||
                                    "id": "obj-13",
 | 
			
		||||
                                    "linecount": 6,
 | 
			
		||||
                                    "maxclass": "comment",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 0,
 | 
			
		||||
                                    "patching_rect": [ 10.0, 159.0, 457.0, 100.0 ],
 | 
			
		||||
                                    "text": "Get tc.preset working in 2 steps:\n1. Create a [tc.preset] (substitute for [jsui @filename tc.preset.js])\n2. Connect it to your [pattrstorage] like shown below\n\n...and that's it! The @pattrstorage attribute of [tc.preset] will be automatically populated."
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "id": "obj-4",
 | 
			
		||||
@@ -4661,8 +4774,7 @@
 | 
			
		||||
                                    "numoutlets": 4,
 | 
			
		||||
                                    "outlettype": [ "", "int", "", "" ],
 | 
			
		||||
                                    "parameter_enable": 0,
 | 
			
		||||
                                    "patching_rect": [ 254.0, 441.0, 98.0, 23.0 ],
 | 
			
		||||
                                    "text": "sine"
 | 
			
		||||
                                    "patching_rect": [ 254.0, 441.0, 98.0, 23.0 ]
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
@@ -4681,43 +4793,43 @@
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "border": 0,
 | 
			
		||||
                                    "embedstate": [
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_1", 0.743, 0.41, 0.501, 1 ],
 | 
			
		||||
                                        [ "text_color", 0.129, 0.129, 0.129, 1 ],
 | 
			
		||||
                                        [ "color_mode", 0 ],
 | 
			
		||||
                                        [ "slot_round", 0 ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "select_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "scrollable", 0 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "layout", 0 ],
 | 
			
		||||
                                        [ "use_uid", 0 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "fontname", "Arial" ],
 | 
			
		||||
                                        [ "pattrstorage", "test" ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "pattrstorage", "tcpreset_help" ],
 | 
			
		||||
                                        [ "color_6", 0.316, 0.616, 0.377, 1 ],
 | 
			
		||||
                                        [ "min_rows", 10 ],
 | 
			
		||||
                                        [ "bgcolor", 0.2, 0.2, 0.2, 1 ],
 | 
			
		||||
                                        [ "color_2", 0.679, 0.405, 0.669, 1 ],
 | 
			
		||||
                                        [ "stored_slot_color", 0.502, 0.502, 0.502, 1 ],
 | 
			
		||||
                                        [ "ignoreslotzero", 1 ],
 | 
			
		||||
                                        [ "color_mode", 0 ],
 | 
			
		||||
                                        [ "send_name", "none" ],
 | 
			
		||||
                                        [ "spacing", 4 ],
 | 
			
		||||
                                        [ "ui_rename", 0 ],
 | 
			
		||||
                                        [ "edited_color", 1, 0.49, 0.263, 1 ],
 | 
			
		||||
                                        [ "color_3", 0.527, 0.459, 0.756, 1 ],
 | 
			
		||||
                                        [ "empty_slot_color", 0.349, 0.349, 0.349, 1 ],
 | 
			
		||||
                                        [ "menu_mode", 0 ],
 | 
			
		||||
                                        [ "unique_names", 0 ],
 | 
			
		||||
                                        [ "active_slot_color", 0.808, 0.898, 0.91, 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ],
 | 
			
		||||
                                        [ "nbslot_edit", 1 ],
 | 
			
		||||
                                        [ "color_4", 0.367, 0.542, 0.712, 1 ],
 | 
			
		||||
                                        [ "interp_slot_color", 1, 1, 1, 0.8 ],
 | 
			
		||||
                                        [ "autowriteagain", 0 ],
 | 
			
		||||
                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                        [ "display_interp", 1 ],
 | 
			
		||||
                                        [ "text_bg_color", 1, 1, 1, 0.5 ]
 | 
			
		||||
                                        [ "select_mode", 0 ],
 | 
			
		||||
                                        [ "use_uid", 0 ],
 | 
			
		||||
                                        [ "bubblesize", 14 ],
 | 
			
		||||
                                        [ "recall_passthrough", 1 ],
 | 
			
		||||
                                        [ "poll_edited", 0 ],
 | 
			
		||||
                                        [ "margin", 4 ],
 | 
			
		||||
                                        [ "color_5", 0.283, 0.606, 0.559, 1 ],
 | 
			
		||||
                                        [ "scrollable", 0 ],
 | 
			
		||||
                                        [ "fontsize", 14 ],
 | 
			
		||||
                                        [ "layout", 0 ],
 | 
			
		||||
                                        [ "slot_round", 0 ]
 | 
			
		||||
                                    ],
 | 
			
		||||
                                    "filename": "tc.preset.js",
 | 
			
		||||
                                    "id": "obj-10",
 | 
			
		||||
@@ -4736,27 +4848,15 @@
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 1,
 | 
			
		||||
                                    "outlettype": [ "" ],
 | 
			
		||||
                                    "patching_rect": [ 18.0, 286.0, 190.0, 23.0 ],
 | 
			
		||||
                                    "patching_rect": [ 18.0, 286.0, 247.0, 23.0 ],
 | 
			
		||||
                                    "saved_object_attributes": {
 | 
			
		||||
                                        "client_rect": [ 100, 172, 596, 755 ],
 | 
			
		||||
                                        "parameter_enable": 0,
 | 
			
		||||
                                        "parameter_mappable": 0,
 | 
			
		||||
                                        "storage_rect": [ 365, 44, 816, 172 ]
 | 
			
		||||
                                    },
 | 
			
		||||
                                    "text": "pattrstorage test @savemode 0",
 | 
			
		||||
                                    "varname": "test"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
                                "box": {
 | 
			
		||||
                                    "fontsize": 14.0,
 | 
			
		||||
                                    "id": "obj-13",
 | 
			
		||||
                                    "linecount": 5,
 | 
			
		||||
                                    "maxclass": "comment",
 | 
			
		||||
                                    "numinlets": 1,
 | 
			
		||||
                                    "numoutlets": 0,
 | 
			
		||||
                                    "patching_rect": [ 10.0, 136.0, 427.0, 85.0 ],
 | 
			
		||||
                                    "text": "Get tc.preset working in 3 steps:\n1. Create a [tc.preset] (shortcut for [jsui @filename tc.preset.js])\n2. Connect its inlet to your [pattrstorage] outlet like shown below\n3. Send to tc.preset the name of your pattrstorage prepended by \"pattrstorage\", or set its name in the @pattrstorage attribute "
 | 
			
		||||
                                    "text": "pattrstorage tcpreset_help @savemode 0",
 | 
			
		||||
                                    "varname": "tcpreset_help"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
                            {
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1,6 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
    "pattrstorage": {
 | 
			
		||||
        "name": "test",
 | 
			
		||||
        "name": "tcpreset_help",
 | 
			
		||||
        "slots": {
 | 
			
		||||
            "1": {
 | 
			
		||||
                "id": 1,
 | 
			
		||||
@@ -36,6 +36,13 @@
 | 
			
		||||
                "data": {
 | 
			
		||||
                    "u099005226": [ 1.0, 0.6875, 0.21875, -0.15625, -0.46875, -1.0, -0.65625, -0.1875, 0.09375, -0.1875, -0.59375, -1.0, -0.5625, -0.1875, 0.40625, 1.0 ]
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "17": {
 | 
			
		||||
                "id": 17,
 | 
			
		||||
                "name": "Bell",
 | 
			
		||||
                "data": {
 | 
			
		||||
                    "u099005226": [ -0.8974358974358975, -0.8461538461538461, -0.6923076923076923, -0.3846153846153846, 0.15384615384615374, 0.5897435897435896, 0.8974358974358974, 0.9743589743589745, 0.8461538461538463, 0.5641025641025641, 0.20512820512820507, -0.1282051282051282, -0.5384615384615384, -0.6923076923076923, -0.8205128205128205, -0.8717948717948718 ]
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
@@ -1,3 +1,3 @@
 | 
			
		||||
max setdefinepackage tc.preset pattrstorage;
 | 
			
		||||
max define tc.preset v8ui @filename tc.preset @jsarguments;
 | 
			
		||||
max define tc.preset v8ui @filename tc.preset;
 | 
			
		||||
max setdefinepackage "" "";
 | 
			
		||||
@@ -88,7 +88,8 @@ var poll_edited = 0;        // If >0, check if current preset is edited every X
 | 
			
		||||
var nbslot_edit = true;     // If nbslot_edit and scrollable are enabled, the last two visible slots are replaced by buttons to add or remove lines of slot.
 | 
			
		||||
 | 
			
		||||
// (WORK)
 | 
			
		||||
var pattrstorage_name, pattrstorage_obj = null;
 | 
			
		||||
var pattrstorage_name = null;
 | 
			
		||||
var pattrstorage_obj = null;
 | 
			
		||||
 | 
			
		||||
var columns, rows = 0;
 | 
			
		||||
var slots = [];                 // Stores on screen box, name, lock and interpolation state for all slots
 | 
			
		||||
@@ -143,6 +144,9 @@ var textedit_obj = null;
 | 
			
		||||
var textedit_initstate = {};
 | 
			
		||||
var is_typing_name = false;
 | 
			
		||||
 | 
			
		||||
var init_tsk;
 | 
			
		||||
var psto_auto_link_task = new Task(psto_auto_link, this);
 | 
			
		||||
psto_auto_link_task.interval = 200;
 | 
			
		||||
var poll_edited_task = new Task(do_poll_edited, this);
 | 
			
		||||
 | 
			
		||||
var has_loaded = false;
 | 
			
		||||
@@ -194,12 +198,45 @@ function slot(left, top, right, bottom, name, lock, interp, color_index, color_c
 | 
			
		||||
function loadbang() {
 | 
			
		||||
    // post("loadbang\n");
 | 
			
		||||
    has_loaded = true;
 | 
			
		||||
    this.box.setboxattr('border', 0);
 | 
			
		||||
    find_pattrstorage(pattrstorage_name);
 | 
			
		||||
    if (!pattrstorage_name) {
 | 
			
		||||
        psto_auto_link_task.repeat();
 | 
			
		||||
    }
 | 
			
		||||
	calc_rows_columns();
 | 
			
		||||
 | 
			
		||||
    find_textedit();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
init_tsk = new Task(delayed_init);
 | 
			
		||||
init_tsk.schedule(200);
 | 
			
		||||
 | 
			
		||||
function delayed_init() {
 | 
			
		||||
    if (!has_loaded) {
 | 
			
		||||
        loadbang();
 | 
			
		||||
    }
 | 
			
		||||
    if (arguments.callee.task.valid) {
 | 
			
		||||
            arguments.callee.task.freepeer();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
delayed_init.local = 1;
 | 
			
		||||
 | 
			
		||||
function psto_auto_link() {
 | 
			
		||||
    if (!pattrstorage_name) {
 | 
			
		||||
        var cords = this.box.patchcords;
 | 
			
		||||
        for (var c = 0; c < cords.inputs.length; c++) {
 | 
			
		||||
            if (cords.inputs[c].dstinlet == 0 && cords.inputs[c].srcobject.maxclass == "pattrstorage") {
 | 
			
		||||
                find_pattrstorage(cords.inputs[c].srcobject.getboxattr('varname'));
 | 
			
		||||
                calc_rows_columns();
 | 
			
		||||
                arguments.callee.task.freepeer();
 | 
			
		||||
                break;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    } else {
 | 
			
		||||
        arguments.callee.task.cancel();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function calc_rows_columns() {
 | 
			
		||||
    half_margin = margin / 2;
 | 
			
		||||
	half_spacing = spacing / 2;
 | 
			
		||||
@@ -418,12 +455,12 @@ paint_base.local = 1;
 | 
			
		||||
 | 
			
		||||
function paint()
 | 
			
		||||
{
 | 
			
		||||
    // post("redraw\n");
 | 
			
		||||
    // Handling Presentation mode enable/disable
 | 
			
		||||
    var cur_size = mgraphics.size;
 | 
			
		||||
    if (cur_size[0] != ui_width || cur_size[1] != ui_height) {
 | 
			
		||||
        onresize(cur_size[0], cur_size[1]);
 | 
			
		||||
    } else {
 | 
			
		||||
        // post("redraw\n");
 | 
			
		||||
        mgraphics.select_font_face(font_name);
 | 
			
		||||
        mgraphics.set_font_size(font_size);
 | 
			
		||||
        mgraphics.translate(0, y_offset);
 | 
			
		||||
@@ -438,7 +475,9 @@ function paint()
 | 
			
		||||
        
 | 
			
		||||
        // Active slot
 | 
			
		||||
        if (is_dragging == 0 && active_slot > 0 && active_slot <= slots_count_display) {
 | 
			
		||||
            mgraphics.set_source_rgba(active_slot_color);
 | 
			
		||||
            var opacity = active_slot_color[3];
 | 
			
		||||
            var opacity = control_hold && last_hovered == active_slot ? active_slot_color[3] * 0.7 : active_slot_color[3];
 | 
			
		||||
            mgraphics.set_source_rgba(active_slot_color[0], active_slot_color[1], active_slot_color[2], opacity);
 | 
			
		||||
            if (color_mode) {
 | 
			
		||||
                if (!control_hold) {
 | 
			
		||||
                    // If color_mode enabled, draw a bold border around the active slot only if control isn't hold (for rename/lock actions)
 | 
			
		||||
@@ -1319,6 +1358,8 @@ function resync() {
 | 
			
		||||
 | 
			
		||||
function find_pattrstorage(name) {
 | 
			
		||||
    active_slot = 0;
 | 
			
		||||
    previous_active_slot = 0;
 | 
			
		||||
    selected_slot = 0;
 | 
			
		||||
    pattrstorage_obj = this.patcher.getnamed(name);
 | 
			
		||||
    if (pattrstorage_obj == null) {
 | 
			
		||||
        var parent_patcher = this.patcher.parentpatcher;
 | 
			
		||||
@@ -1332,13 +1373,11 @@ function find_pattrstorage(name) {
 | 
			
		||||
        // this.patcher.hiddenconnect(pattrstorage_obj, 0, this.box, 0);
 | 
			
		||||
        // post('lets find presets_metata pattr for', name, '\n');
 | 
			
		||||
        if (use_uid || color_mode > 1) connect_to_metadata_pattr();
 | 
			
		||||
        if (psto_auto_link_task.running) psto_auto_link_task.cancel();
 | 
			
		||||
        to_pattrstorage("getslotlist");
 | 
			
		||||
        to_pattrstorage("getlockedslots");
 | 
			
		||||
    } else {
 | 
			
		||||
        pattrstorage_name = null;
 | 
			
		||||
        active_slot = 0;
 | 
			
		||||
        previous_active_slot = 0;
 | 
			
		||||
        selected_slot = 0;
 | 
			
		||||
        slots_clear();
 | 
			
		||||
        if (name != undefined) {
 | 
			
		||||
            error("Pattrstorage", name, "doesn't exist.\n");
 | 
			
		||||
@@ -1485,9 +1524,12 @@ function find_textedit() {
 | 
			
		||||
            textedit_obj = cords.outputs[c].dstobject;
 | 
			
		||||
            textedit_obj.setattr('keymode', 1);
 | 
			
		||||
            textedit_obj.setattr('lines', 1);
 | 
			
		||||
            break;
 | 
			
		||||
            textedit_obj.setattr('nosymquotes', 1);
 | 
			
		||||
            textedit_obj.message('set');
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    return false;
 | 
			
		||||
}
 | 
			
		||||
find_textedit.local = 1;
 | 
			
		||||
 | 
			
		||||
@@ -1502,6 +1544,7 @@ function set_textedit(s) {
 | 
			
		||||
            textedit_initstate.bgcolor = textedit_obj.getattr('bgcolor');
 | 
			
		||||
            textedit_initstate.bordercolor = textedit_obj.getattr('bordercolor');
 | 
			
		||||
            textedit_initstate.textcolor = textedit_obj.getattr('textcolor');
 | 
			
		||||
            textedit_initstate.border = textedit_obj.getattr('border');
 | 
			
		||||
            textedit_initstate.fontname = textedit_obj.getattr('fontname');
 | 
			
		||||
            textedit_initstate.fontsize = textedit_obj.getattr('fontsize');
 | 
			
		||||
            textedit_initstate.fontface = textedit_obj.getattr('fontface');
 | 
			
		||||
@@ -1509,23 +1552,25 @@ function set_textedit(s) {
 | 
			
		||||
 | 
			
		||||
            // Apply new textedit state
 | 
			
		||||
            var pos = this.patcher.getattr("presentation") ? this.box.getattr('presentation_rect') : this.box.getattr('patching_rect');
 | 
			
		||||
            var h = Math.max(slot_size, font_size + 2);
 | 
			
		||||
            textedit_obj.setattr('bgcolor', stored_slot_color);
 | 
			
		||||
            textedit_obj.setattr('bordercolor', [0,0,0,0]);
 | 
			
		||||
            textedit_obj.setattr('textcolor', text_color);
 | 
			
		||||
            textedit_obj.setattr('fontsize', font_size);
 | 
			
		||||
            textedit_obj.setattr('fontname', font_name);
 | 
			
		||||
            textedit_obj.setattr('fontsize', slot_size);
 | 
			
		||||
            textedit_obj.setattr('fontface', 0);
 | 
			
		||||
            textedit_obj.setattr('textjustification', 0);
 | 
			
		||||
            textedit_obj.setattr('border', 0);
 | 
			
		||||
 | 
			
		||||
            if (layout == 0) {
 | 
			
		||||
                textedit_obj.message('position', pos[0] + margin, pos[1] + slots[s].top + y_offset - 4);
 | 
			
		||||
                textedit_obj.message('size', ui_width - (2*margin), slot_size + 8);
 | 
			
		||||
                textedit_obj.message('position', pos[0] + margin, pos[1] + slots[s].top + y_offset);
 | 
			
		||||
                textedit_obj.message('size', ui_width - (2*margin), h);
 | 
			
		||||
                // Only works in v8ui
 | 
			
		||||
                // textedit_obj.position = [pos[0] + margin, pos[1] + slots[s].top + y_offset];
 | 
			
		||||
                // textedit_obj.size = [ui_width - (2*margin), slot_size + 1];
 | 
			
		||||
            } else if (layout == 1) {
 | 
			
		||||
                textedit_obj.message('position', pos[0] + margin + slot_size + spacing, pos[1] + slots[s].top + y_offset - 4);
 | 
			
		||||
                textedit_obj.message('size', ui_width - (2*margin + slot_size + spacing), slot_size + 8);
 | 
			
		||||
                textedit_obj.message('position', pos[0] + margin + slot_size + spacing, pos[1] + slots[s].top + y_offset);
 | 
			
		||||
                textedit_obj.message('size', ui_width - (2*margin + slot_size + spacing), h);
 | 
			
		||||
                // Only works in v8ui
 | 
			
		||||
                // textedit_obj.position = [pos[0] + margin + slot_size + spacing, pos[1] + slots[s].top + y_offset];
 | 
			
		||||
                // textedit_obj.size = [ui_width - (2*margin + slot_size + spacing), slot_size + 1];
 | 
			
		||||
@@ -1545,6 +1590,7 @@ function restore_textedit() {
 | 
			
		||||
            textedit_obj.setattr('bgcolor', textedit_initstate.bgcolor);
 | 
			
		||||
            textedit_obj.setattr('bordercolor', textedit_initstate.bordercolor);
 | 
			
		||||
            textedit_obj.setattr('textcolor', textedit_initstate.textcolor);
 | 
			
		||||
            textedit_obj.setattr('border', textedit_initstate.border);
 | 
			
		||||
            textedit_obj.setattr('fontname', textedit_initstate.fontname);
 | 
			
		||||
            textedit_obj.setattr('fontsize', textedit_initstate.fontsize);
 | 
			
		||||
            textedit_obj.setattr('fontface', textedit_initstate.fontface);
 | 
			
		||||
@@ -1666,8 +1712,15 @@ function onclick(x,y,but,cmd,shift,capslock,option,ctrl)
 | 
			
		||||
                outlet(3, "set", slots[last_hovered].lock);
 | 
			
		||||
            }
 | 
			
		||||
        } else if (output == "rename") {
 | 
			
		||||
            if (!textedit_obj) {
 | 
			
		||||
                find_textedit();
 | 
			
		||||
            }
 | 
			
		||||
            if (textedit_obj) {
 | 
			
		||||
                select(last_hovered);
 | 
			
		||||
                set_textedit(last_hovered);
 | 
			
		||||
            } else {
 | 
			
		||||
                error('No textedit connected to tc.preset third outlet.');
 | 
			
		||||
            }
 | 
			
		||||
        } else {
 | 
			
		||||
            to_pattrstorage(output, last_hovered);
 | 
			
		||||
        }
 | 
			
		||||
@@ -1786,6 +1839,9 @@ function notifydeleted(){
 | 
			
		||||
    if (poll_edited_task.valid) {
 | 
			
		||||
        poll_edited_task.freepeer();
 | 
			
		||||
    }
 | 
			
		||||
    if (psto_auto_link_task.valid) {
 | 
			
		||||
        psto_auto_link_task.freepeer();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ATTRIBUTES DECLARATION
 | 
			
		||||
@@ -1793,47 +1849,30 @@ function notifydeleted(){
 | 
			
		||||
declareattribute("pattrstorage", "getpattrstorage","setpattrstorage", 1, {type: "symbol", label: "Pattrstorage"});
 | 
			
		||||
function getpattrstorage() {
 | 
			
		||||
    if (pattrstorage_name == null) {
 | 
			
		||||
        return 
 | 
			
		||||
        return ""
 | 
			
		||||
    } else {
 | 
			
		||||
	    return pattrstorage_name;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
getpattrstorage.local = 1;
 | 
			
		||||
 | 
			
		||||
function setpattrstorage(v){
 | 
			
		||||
    // This method is called for the first time when the patch is loading, before the loadbang (not all objects are instanciated yet)
 | 
			
		||||
    // With v being the value stored whithin the patcher
 | 
			
		||||
    if (v == null || v == 0 || v.lastIndexOf('#') === 0) {
 | 
			
		||||
    if (v == null || v == 0 || v == "" | v.lastIndexOf('#') === 0) {
 | 
			
		||||
        pattrstorage_name = null;
 | 
			
		||||
        pattrstorage_obj = null;
 | 
			
		||||
    } else  {
 | 
			
		||||
        pattrstorage_name = arrayfromargs(arguments)[0];
 | 
			
		||||
    }
 | 
			
		||||
    // post('set_pattrstorage', pattrstorage_name, '\n');
 | 
			
		||||
 | 
			
		||||
    // If the loadbang already occured once, we need to retrigger here
 | 
			
		||||
    if (has_loaded) {
 | 
			
		||||
        loadbang();
 | 
			
		||||
    } else {
 | 
			
		||||
        // Otherwise, we have no way to know how we're here in the code
 | 
			
		||||
        // (was it just an attribute change? or maybe the object got copy-pasted with already set attribute, or it is being instantiated at patch load with saved attributes)
 | 
			
		||||
        // So we have to delay the loadbang to make sure it will work in any case
 | 
			
		||||
        // and won't be triggered before this or other objects are being instantiated completely.
 | 
			
		||||
        var init_tsk = new Task(delayed_init);
 | 
			
		||||
        init_tsk.schedule(200);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function delayed_init() {
 | 
			
		||||
    loadbang();
 | 
			
		||||
    if (arguments.callee.task) {
 | 
			
		||||
            arguments.callee.task.freepeer();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
delayed_init.local = 1;
 | 
			
		||||
setpattrstorage.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("bubblesize", "getslotsize", "setslotsize", 1, {type: "long", default: 14, label: "Slot Size", category: "Appearance"});
 | 
			
		||||
function getslotsize() {
 | 
			
		||||
	return slot_size;
 | 
			
		||||
}
 | 
			
		||||
getslotsize.local = 1;
 | 
			
		||||
function setslotsize(v){
 | 
			
		||||
    if (arguments.length) {
 | 
			
		||||
        slot_size = Math.max(2, v);
 | 
			
		||||
@@ -1842,11 +1881,14 @@ function setslotsize(v){
 | 
			
		||||
    }
 | 
			
		||||
	calc_rows_columns();
 | 
			
		||||
}
 | 
			
		||||
setslotsize.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("slot_round", "getslotround", "setslotround", 1, {type: "long", default: 0, label: "Slot Round", category: "Appearance"});
 | 
			
		||||
function getslotround() {
 | 
			
		||||
	return slot_round;
 | 
			
		||||
}
 | 
			
		||||
getslotround.local = 1;
 | 
			
		||||
 | 
			
		||||
function setslotround(v){
 | 
			
		||||
    if (arguments.length) {
 | 
			
		||||
        slot_round = Math.max(0, Math.min(slot_size, v));
 | 
			
		||||
@@ -1856,11 +1898,14 @@ function setslotround(v){
 | 
			
		||||
    slot_round_ratio = slot_round / slot_size;
 | 
			
		||||
	calc_rows_columns();
 | 
			
		||||
}
 | 
			
		||||
setslotround.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("margin", "getmargin", "setmargin", 1, {type: "long", default: 4, label: "Margin", category: "Appearance"});
 | 
			
		||||
function getmargin() {
 | 
			
		||||
	return margin;
 | 
			
		||||
}
 | 
			
		||||
getmargin.local = 1;
 | 
			
		||||
 | 
			
		||||
function setmargin(v){
 | 
			
		||||
    if (arguments.length) {
 | 
			
		||||
        margin = Math.max(0, v);
 | 
			
		||||
@@ -1869,11 +1914,14 @@ function setmargin(v){
 | 
			
		||||
    }
 | 
			
		||||
	calc_rows_columns();
 | 
			
		||||
}
 | 
			
		||||
setmargin.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("spacing", "getspacing", "setspacing", 1, {type: "long", default: 4, label: "Spacing", category: "Appearance"});
 | 
			
		||||
function getspacing() {
 | 
			
		||||
	return spacing;
 | 
			
		||||
}
 | 
			
		||||
getspacing.local = 1;
 | 
			
		||||
 | 
			
		||||
function setspacing(v){
 | 
			
		||||
    if (arguments.length) {
 | 
			
		||||
        spacing = Math.max(1, v);
 | 
			
		||||
@@ -1883,10 +1931,14 @@ function setspacing(v){
 | 
			
		||||
	calc_rows_columns();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
setspacing.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("bgcolor", "getbgcolor", "setbgcolor", 1, {style: "rgba", label: "Background Color", category: "Appearance"});
 | 
			
		||||
function getbgcolor() {
 | 
			
		||||
	return background_color;
 | 
			
		||||
}
 | 
			
		||||
getbgcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
function setbgcolor(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        background_color = [arguments[0], arguments[1], arguments[2], arguments[3]];
 | 
			
		||||
@@ -1897,11 +1949,14 @@ function setbgcolor(){
 | 
			
		||||
    }
 | 
			
		||||
	paint_base();
 | 
			
		||||
}
 | 
			
		||||
setbgcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("empty_slot_color", "getemptycolor", "setemptycolor", 1, {style: "rgba", label: "Empty Slot Color", category: "Appearance"});
 | 
			
		||||
function getemptycolor() {
 | 
			
		||||
	return empty_slot_color;
 | 
			
		||||
}
 | 
			
		||||
getemptycolor.local = 1;
 | 
			
		||||
 | 
			
		||||
function setemptycolor(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        empty_slot_color = [arguments[0], arguments[1], arguments[2], arguments[3]];
 | 
			
		||||
@@ -1912,11 +1967,14 @@ function setemptycolor(){
 | 
			
		||||
    }
 | 
			
		||||
	paint_base();
 | 
			
		||||
}
 | 
			
		||||
setemptycolor.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("active_slot_color", "getactiveslotcolor", "setactiveslotcolor", 1, {style: "rgba", label: "Active Slot Color", category: "Appearance"});
 | 
			
		||||
function getactiveslotcolor() {
 | 
			
		||||
	return active_slot_color;
 | 
			
		||||
}
 | 
			
		||||
getactiveslotcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
function setactiveslotcolor(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        active_slot_color = [arguments[0], arguments[1], arguments[2], arguments[3]];
 | 
			
		||||
@@ -1927,11 +1985,14 @@ function setactiveslotcolor(){
 | 
			
		||||
    }
 | 
			
		||||
	mgraphics.redraw();
 | 
			
		||||
}
 | 
			
		||||
setactiveslotcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("stored_slot_color", "getstoredslotcolor", "setstoredslotcolor", 1, {style: "rgba", label: "Stored Slot Color", category: "Appearance"});
 | 
			
		||||
function getstoredslotcolor() {
 | 
			
		||||
	return stored_slot_color;
 | 
			
		||||
}
 | 
			
		||||
getstoredslotcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
function setstoredslotcolor(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        stored_slot_color = [arguments[0], arguments[1], arguments[2], arguments[3]];
 | 
			
		||||
@@ -1942,11 +2003,14 @@ function setstoredslotcolor(){
 | 
			
		||||
    }
 | 
			
		||||
	paint_base();
 | 
			
		||||
}
 | 
			
		||||
setstoredslotcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("interp_slot_color", "getinterpslotcolor", "setinterpslotcolor", 1, {style: "rgba", label: "Interpolating slot color", category: "Appearance"});
 | 
			
		||||
function getinterpslotcolor() {
 | 
			
		||||
	return interp_slot_color;
 | 
			
		||||
}
 | 
			
		||||
getinterpslotcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
function setinterpslotcolor(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        interp_slot_color = [arguments[0], arguments[1], arguments[2], arguments[3]];
 | 
			
		||||
@@ -1957,11 +2021,14 @@ function setinterpslotcolor(){
 | 
			
		||||
    }
 | 
			
		||||
	mgraphics.redraw();
 | 
			
		||||
}
 | 
			
		||||
setinterpslotcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("text_bg_color", "gettextbgcolor", "settextbgcolor", 1, {style: "rgba", label: "Text Background Color", category: "Appearance"});
 | 
			
		||||
function gettextbgcolor() {
 | 
			
		||||
	return text_bg_color;
 | 
			
		||||
}
 | 
			
		||||
gettextbgcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
function settextbgcolor(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        text_bg_color = [arguments[0], arguments[1], arguments[2], arguments[3]];
 | 
			
		||||
@@ -1972,11 +2039,13 @@ function settextbgcolor(){
 | 
			
		||||
    }
 | 
			
		||||
	mgraphics.redraw();
 | 
			
		||||
}
 | 
			
		||||
settextbgcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("text_color", "gettextcolor", "settextcolor", 1, {style: "rgba", label: "Text Color", category: "Appearance"});
 | 
			
		||||
function gettextcolor() {
 | 
			
		||||
	return text_color;
 | 
			
		||||
}
 | 
			
		||||
gettextcolor.local = 1;
 | 
			
		||||
function settextcolor(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        text_color = [arguments[0], arguments[1], arguments[2], arguments[3]];
 | 
			
		||||
@@ -1987,11 +2056,14 @@ function settextcolor(){
 | 
			
		||||
    }
 | 
			
		||||
	mgraphics.redraw();
 | 
			
		||||
}
 | 
			
		||||
settextcolor.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("fontsize", "getfontsize", "setfontsize", 1, {type: "float", label: "Font Size", category: "Appearance"});
 | 
			
		||||
function getfontsize() {
 | 
			
		||||
	return font_size;
 | 
			
		||||
}
 | 
			
		||||
getfontsize.local = 1;
 | 
			
		||||
 | 
			
		||||
function setfontsize(v){
 | 
			
		||||
    if (arguments.length) {
 | 
			
		||||
        font_size = Math.max(2, v);
 | 
			
		||||
@@ -2004,11 +2076,14 @@ function setfontsize(v){
 | 
			
		||||
        mgraphics.redraw();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setfontsize.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("fontname", "getfontname", "setfontname", 1, {type: "symbol", label: "Font Name", category: "Appearance"});
 | 
			
		||||
function getfontname() {
 | 
			
		||||
	return font_name;
 | 
			
		||||
}
 | 
			
		||||
getfontname.local = 1;
 | 
			
		||||
 | 
			
		||||
function setfontname(v){
 | 
			
		||||
    if (arguments.length) {
 | 
			
		||||
        var fontlist = mgraphics.getfontlist();
 | 
			
		||||
@@ -2026,22 +2101,28 @@ function setfontname(v){
 | 
			
		||||
        mgraphics.redraw();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setfontname.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("menu_mode", "getmenu_mode", "setmenu_mode", 1, {style: "enumindex", enumvals: ["Preset number + name", "Preset number", "Preset name"], label: "Menu Mode"});
 | 
			
		||||
function getmenu_mode() {
 | 
			
		||||
	return menu_mode;
 | 
			
		||||
}
 | 
			
		||||
getmenu_mode.local = 1;
 | 
			
		||||
 | 
			
		||||
function setmenu_mode(v){
 | 
			
		||||
    if (arguments.length == 1) {
 | 
			
		||||
        menu_mode = Math.min(Math.max(0, parseInt(v)), 2);
 | 
			
		||||
        update_umenu();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setmenu_mode.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("autowriteagain", "getautowriteagain", "setautowriteagain", 1, {style: "onoff", label: "Auto writeagain"});
 | 
			
		||||
function getautowriteagain() {
 | 
			
		||||
	return auto_writeagain;
 | 
			
		||||
}
 | 
			
		||||
getautowriteagain.local = 1;
 | 
			
		||||
 | 
			
		||||
function setautowriteagain(v){
 | 
			
		||||
	if (v == 0) {
 | 
			
		||||
        auto_writeagain = 0;
 | 
			
		||||
@@ -2049,11 +2130,14 @@ function setautowriteagain(v){
 | 
			
		||||
        auto_writeagain = 1;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setautowriteagain.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("ignoreslotzero", "getignoreslotzero", "setignoreslotzero", 1, {style: "onoff", label: "Ignore Slot 0", category: "Appearance"});
 | 
			
		||||
function getignoreslotzero() {
 | 
			
		||||
	return ignore_slot_zero;
 | 
			
		||||
}
 | 
			
		||||
getignoreslotzero.local = 1;
 | 
			
		||||
 | 
			
		||||
function setignoreslotzero(v){
 | 
			
		||||
	if (v == 0) {
 | 
			
		||||
        ignore_slot_zero = 0;
 | 
			
		||||
@@ -2061,11 +2145,14 @@ function setignoreslotzero(v){
 | 
			
		||||
        ignore_slot_zero = 1;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setignoreslotzero.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("display_interp", "getdisplayinterp", "setdisplayinterp", 1, {style: "onoff", label: "Display Interpolations", category: "Appearance"});
 | 
			
		||||
function getdisplayinterp() {
 | 
			
		||||
	return display_interp;
 | 
			
		||||
}
 | 
			
		||||
getdisplayinterp.local = 1;
 | 
			
		||||
 | 
			
		||||
function setdisplayinterp(v){
 | 
			
		||||
	if (v == 0) {
 | 
			
		||||
        display_interp = 0;
 | 
			
		||||
@@ -2073,11 +2160,14 @@ function setdisplayinterp(v){
 | 
			
		||||
        display_interp = 1;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setdisplayinterp.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("layout", "getlayout", "setlayout", 1, {style: "enumindex", enumvals: ["Grid", "List"], label: "Layout", category: "Appearance"});
 | 
			
		||||
function getlayout() {
 | 
			
		||||
	return layout;
 | 
			
		||||
}
 | 
			
		||||
getlayout.local = 1;
 | 
			
		||||
 | 
			
		||||
function setlayout(v){
 | 
			
		||||
	if (v == 0) {
 | 
			
		||||
        layout = 0;
 | 
			
		||||
@@ -2087,11 +2177,14 @@ function setlayout(v){
 | 
			
		||||
    y_offset = 0;
 | 
			
		||||
    calc_rows_columns();
 | 
			
		||||
}
 | 
			
		||||
setlayout.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("scrollable", "getscrollable", "setscrollable", 1, {style: "onoff", label: "Scrollable"});
 | 
			
		||||
function getscrollable() {
 | 
			
		||||
	return scrollable;
 | 
			
		||||
}
 | 
			
		||||
getscrollable.local = 1;
 | 
			
		||||
 | 
			
		||||
function setscrollable(v){
 | 
			
		||||
	if (v == 0) {
 | 
			
		||||
        scrollable = 0;
 | 
			
		||||
@@ -2101,11 +2194,13 @@ function setscrollable(v){
 | 
			
		||||
    y_offset = 0;
 | 
			
		||||
    calc_rows_columns();
 | 
			
		||||
}
 | 
			
		||||
setscrollable.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("min_rows", "getmin_rows", "setmin_rows", 1, {type: "long", min: 1, label: "Minimum Rows"});
 | 
			
		||||
function getmin_rows() {
 | 
			
		||||
	return min_rows;
 | 
			
		||||
}
 | 
			
		||||
getmin_rows.local = 1;
 | 
			
		||||
function setmin_rows(v){
 | 
			
		||||
	if (v > 0) {
 | 
			
		||||
        min_rows = v;
 | 
			
		||||
@@ -2114,11 +2209,14 @@ function setmin_rows(v){
 | 
			
		||||
        calc_rows_columns();   
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setmin_rows.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("select_mode", "getselect_mode", "setselect_mode", 1, {style: "onoff", label: "Select Mode"});
 | 
			
		||||
function getselect_mode() {
 | 
			
		||||
	return select_mode;
 | 
			
		||||
}
 | 
			
		||||
getselect_mode.local = 1;
 | 
			
		||||
 | 
			
		||||
function setselect_mode(v){
 | 
			
		||||
	if (v == 1) {
 | 
			
		||||
        select_mode = 1;
 | 
			
		||||
@@ -2127,11 +2225,14 @@ function setselect_mode(v){
 | 
			
		||||
    }
 | 
			
		||||
    mgraphics.redraw();
 | 
			
		||||
}
 | 
			
		||||
setselect_mode.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("color_mode", "getcolor_mode", "setcolor_mode", 1, {type: "long", min: 0, max: 3, style: "enumindex", enumvals: ["Classic", "Cycle", "Select", "Custom"], label: "Color Mode", category: "Appearance"});
 | 
			
		||||
function getcolor_mode() {
 | 
			
		||||
	return color_mode;
 | 
			
		||||
}
 | 
			
		||||
getcolor_mode.local = 1;
 | 
			
		||||
 | 
			
		||||
function setcolor_mode(v){
 | 
			
		||||
    v = Math.floor(v);
 | 
			
		||||
    v = Math.max(0, Math.min(3, v));
 | 
			
		||||
@@ -2154,11 +2255,14 @@ function setcolor_mode(v){
 | 
			
		||||
        paint_base();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setcolor_mode.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("color_1", "getcolor1", "setcolor1", 1, {style: "rgba", label: "Color 1", category: "Appearance"});
 | 
			
		||||
function getcolor1() {
 | 
			
		||||
	return color_1;
 | 
			
		||||
}
 | 
			
		||||
getcolor1.local = 1;
 | 
			
		||||
 | 
			
		||||
function setcolor1(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        color_wheel(1, arguments[0], arguments[1], arguments[2], arguments[3]);
 | 
			
		||||
@@ -2168,11 +2272,14 @@ function setcolor1(){
 | 
			
		||||
        error('color_1: wrong number of arguments\n');
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setcolor1.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("color_2", "getcolor2", "setcolor2", 1, {style: "rgba", label: "Color 2", category: "Appearance"});
 | 
			
		||||
function getcolor2() {
 | 
			
		||||
	return color_2;
 | 
			
		||||
}
 | 
			
		||||
getcolor2.local = 1;
 | 
			
		||||
 | 
			
		||||
function setcolor2(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        color_wheel(2, arguments[0], arguments[1], arguments[2], arguments[3]);
 | 
			
		||||
@@ -2182,11 +2289,14 @@ function setcolor2(){
 | 
			
		||||
        error('color_2: wrong number of arguments\n');
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setcolor2.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("color_3", "getcolor3", "setcolor3", 1, {style: "rgba", label: "Color 3", category: "Appearance"});
 | 
			
		||||
function getcolor3() {
 | 
			
		||||
	return color_3;
 | 
			
		||||
}
 | 
			
		||||
getcolor3.local = 1;
 | 
			
		||||
 | 
			
		||||
function setcolor3(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        color_wheel(3, arguments[0], arguments[1], arguments[2], arguments[3]);
 | 
			
		||||
@@ -2196,11 +2306,14 @@ function setcolor3(){
 | 
			
		||||
        error('color_3: wrong number of arguments\n');
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setcolor3.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("color_4", "getcolor4", "setcolor4", 1, {style: "rgba", label: "Color 4", category: "Appearance"});
 | 
			
		||||
function getcolor4() {
 | 
			
		||||
	return color_4;
 | 
			
		||||
}
 | 
			
		||||
getcolor4.local = 1;
 | 
			
		||||
 | 
			
		||||
function setcolor4(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        color_wheel(4, arguments[0], arguments[1], arguments[2], arguments[3]);
 | 
			
		||||
@@ -2210,11 +2323,14 @@ function setcolor4(){
 | 
			
		||||
        error('color_4: wrong number of arguments\n');
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setcolor4.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("color_5", "getcolor5", "setcolor5", 1, {style: "rgba", label: "Color 5", category: "Appearance"});
 | 
			
		||||
function getcolor5() {
 | 
			
		||||
	return color_5;
 | 
			
		||||
}
 | 
			
		||||
getcolor5.local = 1;
 | 
			
		||||
 | 
			
		||||
function setcolor5(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        color_wheel(5, arguments[0], arguments[1], arguments[2], arguments[3]);
 | 
			
		||||
@@ -2224,11 +2340,14 @@ function setcolor5(){
 | 
			
		||||
        error('color_5: wrong number of arguments\n');
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setcolor5.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("color_6", "getcolor6", "setcolor6", 1, {style: "rgba", label: "Color 6", category: "Appearance"});
 | 
			
		||||
function getcolor6() {
 | 
			
		||||
	return color_6;
 | 
			
		||||
}
 | 
			
		||||
getcolor6.local = 1;
 | 
			
		||||
 | 
			
		||||
function setcolor6(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        color_wheel(6, arguments[0], arguments[1], arguments[2], arguments[3]);
 | 
			
		||||
@@ -2238,11 +2357,14 @@ function setcolor6(){
 | 
			
		||||
        error('color_6: wrong number of arguments\n');
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setcolor6.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("send_name", "getsendname", "setsendname", 1, {type: "symbol", label: "Send Dictionary To"});
 | 
			
		||||
function getsendname() {
 | 
			
		||||
	return send_name;
 | 
			
		||||
}
 | 
			
		||||
getsendname.local = 1;
 | 
			
		||||
 | 
			
		||||
function setsendname(){
 | 
			
		||||
    if (arguments.length > 0) {
 | 
			
		||||
        send_name = arguments[0];
 | 
			
		||||
@@ -2250,19 +2372,25 @@ function setsendname(){
 | 
			
		||||
       send_name = "none";
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setsendname.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("unique_names", "getunique_names", "setunique_names", 1, {style: "onoff", label: "Force Unique Names"});
 | 
			
		||||
function getunique_names() {
 | 
			
		||||
	return unique_names;
 | 
			
		||||
}
 | 
			
		||||
getunique_names.local = 1;
 | 
			
		||||
 | 
			
		||||
function setunique_names(v){
 | 
			
		||||
    unique_names = v > 0;
 | 
			
		||||
}
 | 
			
		||||
setunique_names.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("use_uid", "getuse_uid", "setuse_uid", 1, {style: "onoff", label: "Use UID"});
 | 
			
		||||
function getuse_uid() {
 | 
			
		||||
	return use_uid;
 | 
			
		||||
}
 | 
			
		||||
getuse_uid.local = 1;
 | 
			
		||||
 | 
			
		||||
function setuse_uid(v){
 | 
			
		||||
    var new_val = v == 1 ? 1 : 0;
 | 
			
		||||
    if (new_val != use_uid && new_val == 1) {
 | 
			
		||||
@@ -2272,30 +2400,39 @@ function setuse_uid(v){
 | 
			
		||||
    }
 | 
			
		||||
    use_uid = new_val;
 | 
			
		||||
}
 | 
			
		||||
setuse_uid.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("recall_passthrough", "getrecall_passthrough", "setrecall_passthrough", 1, {style: "onoff", label: "Recall Passthrough"});
 | 
			
		||||
function getrecall_passthrough() {
 | 
			
		||||
	return recall_passthrough;
 | 
			
		||||
}
 | 
			
		||||
getrecall_passthrough.local = 1;
 | 
			
		||||
 | 
			
		||||
function setrecall_passthrough(v){
 | 
			
		||||
    recall_passthrough = v > 0;
 | 
			
		||||
}
 | 
			
		||||
setrecall_passthrough.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("ui_rename", "getui_rename", "setui_rename", 1, {style: "onoff", label: "Rename In UI"});
 | 
			
		||||
function getui_rename() {
 | 
			
		||||
	return ui_rename;
 | 
			
		||||
}
 | 
			
		||||
getui_rename.local = 1;
 | 
			
		||||
 | 
			
		||||
function setui_rename(v){
 | 
			
		||||
    ui_rename = v > 0;
 | 
			
		||||
    if (ui_rename) {
 | 
			
		||||
        find_textedit();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setui_rename.local = 1;
 | 
			
		||||
 | 
			
		||||
declareattribute("poll_edited", "getpoll_edited", "setpoll_edited", 1, {type: "float", min: 0, label: "Poll Edited State"});
 | 
			
		||||
function getpoll_edited() {
 | 
			
		||||
	return poll_edited;
 | 
			
		||||
}
 | 
			
		||||
getpoll_edited.local = 1;
 | 
			
		||||
 | 
			
		||||
function setpoll_edited(v){
 | 
			
		||||
    poll_edited = v == 0 ? 0 : Math.max(0.1, Math.abs(v));
 | 
			
		||||
    if (poll_edited > 0) {
 | 
			
		||||
@@ -2304,6 +2441,7 @@ function setpoll_edited(v){
 | 
			
		||||
        cancel_edited_poll_task();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setpoll_edited.local = 1;
 | 
			
		||||
 | 
			
		||||
function run_edited_poll_task() {
 | 
			
		||||
    if (poll_edited_task.valid && !poll_edited_task.running && poll_edited > 0 && active_slot > 0) {
 | 
			
		||||
@@ -2329,6 +2467,8 @@ declareattribute("edited_color", "getedited_color", "setedited_color", 1, {style
 | 
			
		||||
function getedited_color() {
 | 
			
		||||
	return edited_color;
 | 
			
		||||
}
 | 
			
		||||
getedited_color.local = 1;
 | 
			
		||||
 | 
			
		||||
function setedited_color(){
 | 
			
		||||
    if (arguments.length == 4) {
 | 
			
		||||
        edited_color = [arguments[0], arguments[1], arguments[2], arguments[3]];
 | 
			
		||||
@@ -2338,6 +2478,7 @@ function setedited_color(){
 | 
			
		||||
        error('edited_color: wrong number of arguments\n');
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
setedited_color.local = 1;
 | 
			
		||||
 | 
			
		||||
function edited(v) {
 | 
			
		||||
    active_slot_edited = v;
 | 
			
		||||
@@ -2351,11 +2492,14 @@ declareattribute("nbslot_edit", "getnbslot_edit", "setnbslot_edit", 1, {style: "
 | 
			
		||||
function getnbslot_edit() {
 | 
			
		||||
	return nbslot_edit;
 | 
			
		||||
}
 | 
			
		||||
getnbslot_edit.local = 1;
 | 
			
		||||
 | 
			
		||||
function setnbslot_edit(v){
 | 
			
		||||
    nbslot_edit = v > 0;
 | 
			
		||||
    y_offset = 0;
 | 
			
		||||
    calc_rows_columns();
 | 
			
		||||
}
 | 
			
		||||
setnbslot_edit.local = 1;
 | 
			
		||||
 | 
			
		||||
// UTILITY
 | 
			
		||||
function post_keys(obj) {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
{
 | 
			
		||||
	"name" : "tc.preset",
 | 
			
		||||
	"displayname" : "",
 | 
			
		||||
	"version" : "1.1.0",
 | 
			
		||||
	"version" : "1.2.0",
 | 
			
		||||
	"author" : "Théophile Clet",
 | 
			
		||||
	"authors" : [  ],
 | 
			
		||||
	"description" : "A jsui replacement for the preset object",
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
{
 | 
			
		||||
	"name" : "tc.preset",
 | 
			
		||||
	"displayname" : "",
 | 
			
		||||
	"version" : "1.1.0",
 | 
			
		||||
	"version" : "1.2.0",
 | 
			
		||||
	"author" : "Théophile Clet",
 | 
			
		||||
	"authors" : [  ],
 | 
			
		||||
	"description" : "A v8ui replacement for the preset object",
 | 
			
		||||
@@ -9,7 +9,7 @@
 | 
			
		||||
	"website" : "https://github.com/Teufeuleu/tc.preset/",
 | 
			
		||||
	"extends" : "",
 | 
			
		||||
	"extensible" : 0,
 | 
			
		||||
	"max_version_min" : "9.0.7",
 | 
			
		||||
	"max_version_min" : "9.1.0",
 | 
			
		||||
	"max_version_max" : "none",
 | 
			
		||||
	"os" : 	{
 | 
			
		||||
		"macintosh" : 		{
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user