checking types instead of names, WIP

This commit is contained in:
Julien Lubimiv 2023-04-09 12:43:01 -04:00
parent 530456e859
commit f938b3da37

View File

@ -11,103 +11,58 @@ function getNumberDefaults(inputData, defaultStep) {
}
export function addValueControlWidget(node, targetWidget, defaultValue = "randomize", values) {
const valueControl = node.addWidget("combo", "control_after_generate", defaultValue, function (v) { }, {
values: ["fixed", "increment", "decrement", "randomize"],
serialize: false, // Don't include this in prompt.
})
valueControl.afterQueued = () => {
const valueControl = node.addWidget("combo", "control_after_generate", defaultValue, function (v) { }, {
values: ["fixed", "increment", "decrement", "randomize"],
serialize: false, // Don't include this in prompt.
});
valueControl.afterQueued = () => {
var v = valueControl.value;
var w = targetWidget.name;
var v = valueControl.value;
var w = targetWidget.type;
let min = 0.0;
let max = targetWidget.options?.max;
let range = Math.max(min, max);
//adjust values based on valueControl Behaviour
switch (v) {
case ("fixed"):
console.log("fixed");
break;
case ("increment"):
if (min != null || max != null) {
/*if (max) { //loop to lowest and continue batch
targetWidget.value = 0;
console.log("increment");
} else {
targetWidget.value += 1;
console.log("increment");
}
} else {*/
if (max) {
if (w == "denoise") {
targetWidget.value += 0.1;
console.log("denoise decrement");
} else if (w == "cfg") {
targetWidget.value += 0.5;
console.log("cfg increment");
} else if (w == "width" || w == "height") {
targetWidget.value += 64;
console.log("width/height decrement");
} else {
targetWidget.value += 1.0;
console.log("decrement");
}
}
}
break;
case ("decrement"):
if (min != null || max != null) {
/*if (min) { //Loop to highest and continue batch
targetWidget.value = 1125899906842624;
console.log("decrement");
} else {
targetWidget.value -= 1;
console.log("decrement");
} else {*/
if (max) {
if (w == "denoise") {
targetWidget.value -= 0.1;
console.log("denoise decrement");
} else if (w == "cfg") {
targetWidget.value -= 0.5;
console.log("cfg decrement");
} else if (w == "width" || w == "height") {
targetWidget.value -= 64;
console.log("width/height decrement");
} else {
targetWidget.value -= 1.0;
console.log("decrement");
}
}
}
break;
case ("randomize"):
if (min != null || max != null) {
switch (w) {
case ("cfg"):
case ("denoise"):
console.log("random denoise");
targetWidget.value = parseFloat((Math.floor(Math.random() * ((range * 100) + 1)) / 100).toFixed(2));
break;
case ("height"):
case ("width"):
targetWidget.value = Math.floor(Math.random() * range) * 64 + min;
console.log("Random resolution");
break;
default:
targetWidget.value = Math.floor(Math.random() * range);
console.log("Random");
break;
}
}
break;
default:
console.log("default (failed to detect input!)");
break;
}
let min = targetWidget.options?.min;
let max = targetWidget.options?.max;
let range = Math.max(min, max);
//adjust values based on valueControl Behaviour
switch (v) {
case "fixed":
break;
case "increment":
if (min != null && max != null) {
if (max) {
targetWidget.value += targetWidget.options?.increment;
}
}
break;
case "decrement":
if (min != null && max != null) {
if (max) {
targetWidget.value -= targetWidget.options?.increment;
}
}
break;
case "randomize":
if (min != null && max != null) {
switch (w) {
case "FLOAT":
targetWidget.value = parseFloat((Math.floor(Math.random() * ((range * 100) + 1)) / 100).toFixed(2));
break;
case "INT":
if (targetWidget.name == "width" || targetWidget.name == "height") {
targetWidget.value = Math.floor(Math.random() * range) * 64 + min;
} else {
targetWidget.value = Math.floor(Math.random() * range);
}
break;
default:
break;
}
}
break;
default:
break;
}
/*check if values are over or under their respective
* ranges and set them to min or max.*/
if (targetWidget.value < min)