linking indicator
This commit is contained in:
parent
1f3972fc6f
commit
13cddd8f03
6
enums.js
6
enums.js
@ -17,13 +17,16 @@ function EnumeratorItems(index, enumBreakPoints, setEnumBreakPoints, enumNames,
|
|||||||
}
|
}
|
||||||
|
|
||||||
function EnumeratorRow(props){
|
function EnumeratorRow(props){
|
||||||
|
let linkedText = props.linked ? "<- mods" : "";
|
||||||
|
|
||||||
let content = e('ul', {className: 'lfo-item', id: `${props.djParam}-enum-row`},
|
let content = e('ul', {className: 'lfo-item', id: `${props.djParam}-enum-row`},
|
||||||
ListItem(DropDown({onChange: props.setDjParam, value: props.djParam, options: MODPARAMOPTIONS})),
|
ListItem(DropDown({onChange: props.setDjParam, value: props.djParam, options: MODPARAMOPTIONS})),
|
||||||
ListItem(e(NumberBox, {onChange: props.setEnumItemCounts, step:1, value:props.enumItems, className: 'enum-count'}, null)),
|
ListItem(e(NumberBox, {onChange: props.setEnumItemCounts, step:1, value:props.enumItems, className: 'enum-count'}, null)),
|
||||||
ListItem(e(NumberBox, {onChange: CreateMatrixParamChanger(props.enumBreakPoints, props.setEnumBreakPoints, props.index, 0), value:props.enumBreakPoints[props.index][0], step:0.1}, null)),
|
ListItem(e(NumberBox, {onChange: CreateMatrixParamChanger(props.enumBreakPoints, props.setEnumBreakPoints, props.index, 0), value:props.enumBreakPoints[props.index][0], step:0.1}, null)),
|
||||||
...(EnumeratorItems(props.index, props.enumBreakPoints, props.setEnumBreakPoints, props.enumNames, props.setEnumNames, props.djParam).slice(0, props.enumItems * 2)),
|
...(EnumeratorItems(props.index, props.enumBreakPoints, props.setEnumBreakPoints, props.enumNames, props.setEnumNames, props.djParam).slice(0, props.enumItems * 2)),
|
||||||
ListItem(e(Button, {text:'+', onClick: props.addEnum}, null)),
|
ListItem(e(Button, {text:'+', onClick: props.addEnum}, null)),
|
||||||
ListItem(e(Button, {text:'-', onClick: props.removeEnum}, null))
|
ListItem(e(Button, {text:'-', onClick: props.removeEnum}, null)),
|
||||||
|
ListItem(e("div", {className:"linked"}, linkedText))
|
||||||
);
|
);
|
||||||
if (props.visible){
|
if (props.visible){
|
||||||
return content;
|
return content;
|
||||||
@ -45,7 +48,6 @@ function denumerate(inval, count, keys, vals){
|
|||||||
function enumerate(name, inval, count, keys, vals){
|
function enumerate(name, inval, count, keys, vals){
|
||||||
let output = "OUT OF RANGE";
|
let output = "OUT OF RANGE";
|
||||||
for (let i=0; i < count + 1; i++){
|
for (let i=0; i < count + 1; i++){
|
||||||
log(`Inval : ${inval}, breakpoint : ${keys[i]}`)
|
|
||||||
if (inval <= keys[i]){
|
if (inval <= keys[i]){
|
||||||
if (i > 0)
|
if (i > 0)
|
||||||
output = vals[i - 1];
|
output = vals[i - 1];
|
||||||
|
182
example.maxpat
182
example.maxpat
@ -39,6 +39,115 @@
|
|||||||
"subpatcher_template" : "",
|
"subpatcher_template" : "",
|
||||||
"assistshowspatchername" : 0,
|
"assistshowspatchername" : 0,
|
||||||
"boxes" : [ {
|
"boxes" : [ {
|
||||||
|
"box" : {
|
||||||
|
"id" : "obj-36",
|
||||||
|
"maxclass" : "newobj",
|
||||||
|
"numinlets" : 0,
|
||||||
|
"numoutlets" : 1,
|
||||||
|
"outlettype" : [ "" ],
|
||||||
|
"patching_rect" : [ 485.0, 40.0, 49.0, 22.0 ],
|
||||||
|
"text" : "r reload"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"box" : {
|
||||||
|
"id" : "obj-34",
|
||||||
|
"maxclass" : "newobj",
|
||||||
|
"numinlets" : 1,
|
||||||
|
"numoutlets" : 0,
|
||||||
|
"patching_rect" : [ 357.0, 762.0, 51.0, 22.0 ],
|
||||||
|
"text" : "s reload"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"box" : {
|
||||||
|
"id" : "obj-32",
|
||||||
|
"maxclass" : "preset",
|
||||||
|
"numinlets" : 1,
|
||||||
|
"numoutlets" : 5,
|
||||||
|
"outlettype" : [ "preset", "int", "preset", "int", "" ],
|
||||||
|
"patching_rect" : [ 347.0, 707.0, 100.0, 40.0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"box" : {
|
||||||
|
"id" : "obj-28",
|
||||||
|
"maxclass" : "newobj",
|
||||||
|
"numinlets" : 1,
|
||||||
|
"numoutlets" : 1,
|
||||||
|
"outlettype" : [ "" ],
|
||||||
|
"patching_rect" : [ 523.0, 747.0, 73.0, 22.0 ],
|
||||||
|
"saved_object_attributes" : {
|
||||||
|
"client_rect" : [ 1071, 252, 1680, 568 ],
|
||||||
|
"parameter_enable" : 0,
|
||||||
|
"parameter_mappable" : 0,
|
||||||
|
"storage_rect" : [ 780, 524, 1380, 824 ]
|
||||||
|
}
|
||||||
|
,
|
||||||
|
"text" : "pattrstorage",
|
||||||
|
"varname" : "u453003849"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"box" : {
|
||||||
|
"id" : "obj-26",
|
||||||
|
"maxclass" : "newobj",
|
||||||
|
"numinlets" : 1,
|
||||||
|
"numoutlets" : 3,
|
||||||
|
"outlettype" : [ "", "", "" ],
|
||||||
|
"patching_rect" : [ 643.0, 770.0, 40.0, 22.0 ],
|
||||||
|
"restore" : [ {
|
||||||
|
"data" : {
|
||||||
|
"enumArrays" : [ [ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "2", 2, "2", "2", "2", "2", "2", "2", "2", "2" ], [ "metriclarity", "NONE", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation" ] ],
|
||||||
|
"enumMats" : [ [ [ 0, "13", "30", 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] ], [ [ "param1", "param2", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ] ] ],
|
||||||
|
"modArrays" : [ [ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine" ], [ "metriclarity", "eventfulness", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE" ], [ "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "-1.7", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ "4", "0", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "0", null, "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ] ]
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"saved_object_attributes" : {
|
||||||
|
"parameter_enable" : 0,
|
||||||
|
"parameter_mappable" : 0
|
||||||
|
}
|
||||||
|
,
|
||||||
|
"text" : "pattr",
|
||||||
|
"varname" : "u560003760"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"box" : {
|
||||||
|
"data" : {
|
||||||
|
"data" : {
|
||||||
|
"enumArrays" : [ [ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "2", 2, "2", "2", "2", "2", "2", "2", "2", "2" ], [ "metriclarity", "NONE", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation" ] ],
|
||||||
|
"enumMats" : [ [ [ 0, "13", "30", 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] ], [ [ "param1", "param2", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ] ] ],
|
||||||
|
"modArrays" : [ [ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine" ], [ "metriclarity", "eventfulness", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE" ], [ "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "-1.7", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ "4", "0", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "0", null, "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ] ]
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
,
|
||||||
|
"id" : "obj-25",
|
||||||
|
"maxclass" : "newobj",
|
||||||
|
"numinlets" : 2,
|
||||||
|
"numoutlets" : 4,
|
||||||
|
"outlettype" : [ "dictionary", "", "", "" ],
|
||||||
|
"patching_rect" : [ 773.0, 808.0, 166.0, 22.0 ],
|
||||||
|
"saved_object_attributes" : {
|
||||||
|
"embed" : 1,
|
||||||
|
"parameter_enable" : 0,
|
||||||
|
"parameter_mappable" : 0
|
||||||
|
}
|
||||||
|
,
|
||||||
|
"text" : "dict localStorage2 @embed 1",
|
||||||
|
"varname" : "dict"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
"box" : {
|
"box" : {
|
||||||
"id" : "obj-13",
|
"id" : "obj-13",
|
||||||
"maxclass" : "newobj",
|
"maxclass" : "newobj",
|
||||||
@ -52,12 +161,12 @@
|
|||||||
, {
|
, {
|
||||||
"box" : {
|
"box" : {
|
||||||
"id" : "obj-9",
|
"id" : "obj-9",
|
||||||
"linecount" : 4,
|
"linecount" : 2,
|
||||||
"maxclass" : "comment",
|
"maxclass" : "comment",
|
||||||
"numinlets" : 1,
|
"numinlets" : 1,
|
||||||
"numoutlets" : 0,
|
"numoutlets" : 0,
|
||||||
"patching_rect" : [ 904.0, 80.0, 150.0, 60.0 ],
|
"patching_rect" : [ 904.0, 80.0, 150.0, 33.0 ],
|
||||||
"text" : "BROKEN - it tries to denumerate floating point values which should NOT happen"
|
"text" : "FINISH THE SAVING THING!!!"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -208,12 +317,13 @@
|
|||||||
, {
|
, {
|
||||||
"box" : {
|
"box" : {
|
||||||
"id" : "obj-31",
|
"id" : "obj-31",
|
||||||
|
"linecount" : 2,
|
||||||
"maxclass" : "message",
|
"maxclass" : "message",
|
||||||
"numinlets" : 2,
|
"numinlets" : 2,
|
||||||
"numoutlets" : 1,
|
"numoutlets" : 1,
|
||||||
"outlettype" : [ "" ],
|
"outlettype" : [ "" ],
|
||||||
"patching_rect" : [ 485.0, 647.0, 80.0, 22.0 ],
|
"patching_rect" : [ 485.0, 647.0, 80.0, 35.0 ],
|
||||||
"text" : "stream 1"
|
"text" : "stream -0.596785"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -268,11 +378,12 @@
|
|||||||
, {
|
, {
|
||||||
"box" : {
|
"box" : {
|
||||||
"id" : "obj-19",
|
"id" : "obj-19",
|
||||||
|
"linecount" : 2,
|
||||||
"maxclass" : "comment",
|
"maxclass" : "comment",
|
||||||
"numinlets" : 1,
|
"numinlets" : 1,
|
||||||
"numoutlets" : 0,
|
"numoutlets" : 0,
|
||||||
"patching_rect" : [ 541.52631402015686, 69.0, 150.0, 20.0 ],
|
"patching_rect" : [ 548.52631402015686, 80.0, 150.0, 33.0 ],
|
||||||
"text" : "self explanatory"
|
"text" : "see below for why we do this..."
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -394,35 +505,26 @@
|
|||||||
"numinlets" : 2,
|
"numinlets" : 2,
|
||||||
"numoutlets" : 1,
|
"numoutlets" : 1,
|
||||||
"outlettype" : [ "" ],
|
"outlettype" : [ "" ],
|
||||||
"patching_rect" : [ 438.52631402015686, 69.0, 101.0, 22.0 ],
|
"patching_rect" : [ 438.52631402015686, 69.0, 108.0, 22.0 ],
|
||||||
"text" : "load localStorage"
|
"text" : "load localStorage2"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
, {
|
, {
|
||||||
"box" : {
|
"box" : {
|
||||||
"data" : {
|
|
||||||
"data" : {
|
|
||||||
"enumArrays" : [ [ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "2", "2", "2", "2", "2", "2", "2", "2", "2", "2" ], [ "metriclarity", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation" ] ],
|
|
||||||
"enumMats" : [ [ [ 0, "13", "30", 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] ], [ [ "param1", "param2", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ] ] ],
|
|
||||||
"modArrays" : [ [ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine" ], [ "metriclarity", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE" ], [ "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "-1.7", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ] ]
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
,
|
|
||||||
"id" : "obj-4",
|
"id" : "obj-4",
|
||||||
"maxclass" : "newobj",
|
"maxclass" : "newobj",
|
||||||
"numinlets" : 2,
|
"numinlets" : 2,
|
||||||
"numoutlets" : 4,
|
"numoutlets" : 4,
|
||||||
"outlettype" : [ "dictionary", "", "", "" ],
|
"outlettype" : [ "dictionary", "", "", "" ],
|
||||||
"patching_rect" : [ 1041.0, 711.0, 159.0, 22.0 ],
|
"patching_rect" : [ 1041.0, 711.0, 97.0, 22.0 ],
|
||||||
"saved_object_attributes" : {
|
"saved_object_attributes" : {
|
||||||
"embed" : 1,
|
"embed" : 0,
|
||||||
"parameter_enable" : 0,
|
"parameter_enable" : 0,
|
||||||
"parameter_mappable" : 0
|
"parameter_mappable" : 0
|
||||||
}
|
}
|
||||||
,
|
,
|
||||||
"text" : "dict localStorage @embed 1"
|
"text" : "dict localStorage"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -441,12 +543,12 @@
|
|||||||
, {
|
, {
|
||||||
"box" : {
|
"box" : {
|
||||||
"id" : "obj-45",
|
"id" : "obj-45",
|
||||||
"linecount" : 5,
|
"linecount" : 8,
|
||||||
"maxclass" : "comment",
|
"maxclass" : "comment",
|
||||||
"numinlets" : 1,
|
"numinlets" : 1,
|
||||||
"numoutlets" : 0,
|
"numoutlets" : 0,
|
||||||
"patching_rect" : [ 857.631580829620361, 729.0, 150.0, 74.0 ],
|
"patching_rect" : [ 773.0, 692.0, 150.0, 114.0 ],
|
||||||
"text" : "Storage for the matrix. Unfortunately, jsweb dictionary handling isn't great, so we can't use it like a native dict object"
|
"text" : "Storage for the matrix. Unfortunately, jsweb dictionary handling isn't great, so we can't use it like a native dict object and need to do this wild hack for usage with pattrstorage"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -493,7 +595,7 @@
|
|||||||
"numinlets" : 1,
|
"numinlets" : 1,
|
||||||
"numoutlets" : 1,
|
"numoutlets" : 1,
|
||||||
"outlettype" : [ "" ],
|
"outlettype" : [ "" ],
|
||||||
"patching_rect" : [ 427.52631402015686, 123.0, 740.105266809463501, 392.0 ],
|
"patching_rect" : [ 403.52631402015686, 149.0, 774.105266809463501, 365.0 ],
|
||||||
"rendermode" : 0,
|
"rendermode" : 0,
|
||||||
"url" : "file://lfogui.html"
|
"url" : "file://lfogui.html"
|
||||||
}
|
}
|
||||||
@ -555,6 +657,13 @@
|
|||||||
"source" : [ "obj-22", 0 ]
|
"source" : [ "obj-22", 0 ]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"patchline" : {
|
||||||
|
"destination" : [ "obj-25", 0 ],
|
||||||
|
"source" : [ "obj-26", 1 ]
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
, {
|
, {
|
||||||
"patchline" : {
|
"patchline" : {
|
||||||
@ -611,10 +720,33 @@
|
|||||||
"source" : [ "obj-27", 5 ]
|
"source" : [ "obj-27", 5 ]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"patchline" : {
|
||||||
|
"destination" : [ "obj-34", 0 ],
|
||||||
|
"source" : [ "obj-32", 1 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"patchline" : {
|
||||||
|
"destination" : [ "obj-16", 0 ],
|
||||||
|
"source" : [ "obj-36", 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
"patchline" : {
|
||||||
|
"destination" : [ "obj-25", 0 ],
|
||||||
|
"order" : 1,
|
||||||
|
"source" : [ "obj-4", 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
, {
|
, {
|
||||||
"patchline" : {
|
"patchline" : {
|
||||||
"destination" : [ "obj-38", 0 ],
|
"destination" : [ "obj-38", 0 ],
|
||||||
|
"order" : 0,
|
||||||
"source" : [ "obj-4", 0 ]
|
"source" : [ "obj-4", 0 ]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -160,6 +160,15 @@
|
|||||||
margin-left: 2px;
|
margin-left: 2px;
|
||||||
margin-top: 1px;
|
margin-top: 1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.linked {
|
||||||
|
color: red;
|
||||||
|
border-width: 1px;
|
||||||
|
width: 50px;
|
||||||
|
font-size: small;
|
||||||
|
margin-left: 2px;
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@keyframes pulse-animation {
|
@keyframes pulse-animation {
|
||||||
|
@ -60,7 +60,7 @@ function MasterLfoHandler(){
|
|||||||
|
|
||||||
const allModArrays = [modVisibleArr, shapeArr, djParamArr, freqArr, minArr, maxArr, phaseArr];
|
const allModArrays = [modVisibleArr, shapeArr, djParamArr, freqArr, minArr, maxArr, phaseArr];
|
||||||
const allModSetters = [setModVisibleArr, setShapeArr, setDjParamArr, setFreqArr, setMinArr, setMaxArr, setPhaseArr];
|
const allModSetters = [setModVisibleArr, setShapeArr, setDjParamArr, setFreqArr, setMinArr, setMaxArr, setPhaseArr];
|
||||||
const modBlankVals = [true, SHAPETYPES[0], MODPARAMOPTIONS[0], '1', '1', '0'];
|
const modBlankVals = [true, SHAPETYPES[0], MODPARAMOPTIONS[0], '1', '0', '1', '0'];
|
||||||
|
|
||||||
|
|
||||||
/// ENUMERATOR ARRAYS
|
/// ENUMERATOR ARRAYS
|
||||||
@ -238,6 +238,8 @@ function MasterLfoHandler(){
|
|||||||
phase: phaseArr[i],
|
phase: phaseArr[i],
|
||||||
setPhase: CreateParamChanger(phaseArr, setPhaseArr, i),
|
setPhase: CreateParamChanger(phaseArr, setPhaseArr, i),
|
||||||
visible: modVisibleArr[i],
|
visible: modVisibleArr[i],
|
||||||
|
|
||||||
|
linked: enumDjParamArr.includes(djParamArr[i]),
|
||||||
addLfo: () => {
|
addLfo: () => {
|
||||||
if (id < MAXLFOS - 1){
|
if (id < MAXLFOS - 1){
|
||||||
if (modVisibleArr[id + 1]){
|
if (modVisibleArr[id + 1]){
|
||||||
@ -295,6 +297,7 @@ function MasterLfoHandler(){
|
|||||||
visible: enumVisibleArr[i],
|
visible: enumVisibleArr[i],
|
||||||
djParam: enumDjParamArr[i],
|
djParam: enumDjParamArr[i],
|
||||||
setDjParam: CreateParamChanger(enumDjParamArr, setEnumDjParamArr, i),
|
setDjParam: CreateParamChanger(enumDjParamArr, setEnumDjParamArr, i),
|
||||||
|
linked: djParamArr.includes(enumDjParamArr[i]),
|
||||||
addEnum: () => {
|
addEnum: () => {
|
||||||
if (id < MAXLFOS - 1){
|
if (id < MAXLFOS - 1){
|
||||||
if (enumVisibleArr[id + 1]){ // if we need to open up space
|
if (enumVisibleArr[id + 1]){ // if we need to open up space
|
||||||
|
@ -15,7 +15,7 @@ function ControlType(){
|
|||||||
|
|
||||||
function LfoRow(props){
|
function LfoRow(props){
|
||||||
|
|
||||||
|
let linkedText = props.linked ? "-> enums" : "";
|
||||||
let center = props.centerVals[props.djParam];
|
let center = props.centerVals[props.djParam];
|
||||||
if (!center)
|
if (!center)
|
||||||
center = 0;
|
center = 0;
|
||||||
@ -32,7 +32,8 @@ function LfoRow(props){
|
|||||||
ListItem(e("div", {className:"base-val"}, center.toString())),
|
ListItem(e("div", {className:"base-val"}, center.toString())),
|
||||||
ListItem(e("input", {type: 'range', min: 0, max: 1, step: 0.01, readonly: true, id: `slider-${props.djParam}`})),
|
ListItem(e("input", {type: 'range', min: 0, max: 1, step: 0.01, readonly: true, id: `slider-${props.djParam}`})),
|
||||||
ListItem(e(Button, {text:'+', onClick: props.addLfo}, null)),
|
ListItem(e(Button, {text:'+', onClick: props.addLfo}, null)),
|
||||||
ListItem(e(Button, {text:'-', onClick: props.removeLfo}, null))
|
ListItem(e(Button, {text:'-', onClick: props.removeLfo}, null)),
|
||||||
|
ListItem(e("div", {className:"linked"}, linkedText)),
|
||||||
);
|
);
|
||||||
if (props.visible){
|
if (props.visible){
|
||||||
return content
|
return content
|
||||||
|
Loading…
Reference in New Issue
Block a user