fix scale factor slider broken by refactor

Signed-off-by: Victor Seiji Hariki <victorseijih@gmail.com>
This commit is contained in:
Victor Seiji Hariki 2022-11-20 02:56:37 -03:00
parent 06c53e6062
commit 8ebf273bfa

View file

@ -50,23 +50,24 @@ var stableDiffusionData = { //includes img2img data but works for txt2img just f
/**
* Some Utility Functions
*/
function sliderChangeHandlerFactory(sliderId, textBoxId, dataKey, defaultV) {
function sliderChangeHandlerFactory(sliderId, textBoxId, dataKey, defaultV, setter = (k, v) => stableDiffusionData[k] = v, getter = (k) => stableDiffusionData[k]) {
const sliderEl = document.getElementById(sliderId);
const textBoxEl = document.getElementById(textBoxId);
const savedValue = localStorage.getItem(dataKey);
if (savedValue) stableDiffusionData[dataKey] = savedValue || defaultV;
if (savedValue) setter(dataKey, savedValue || defaultV);
function changeHandler(evn) {
const eventSource = evn && evn.srcElement;
const value = eventSource && Number(eventSource.value);
if (value) stableDiffusionData[dataKey] = value;
if (value) setter(dataKey, value);
if (!eventSource || eventSource.id === textBoxId) sliderEl.value = stableDiffusionData[dataKey];
textBoxEl.value = stableDiffusionData[dataKey] = Number(sliderEl.value);
if (!eventSource || eventSource.id === textBoxId) sliderEl.value = getter(dataKey);
setter(dataKey, Number(sliderEl.value))
textBoxEl.value = getter(dataKey);
localStorage.setItem(dataKey, stableDiffusionData[dataKey]);
localStorage.setItem(dataKey, getter(dataKey));
}
textBoxEl.onchange = changeHandler
@ -734,7 +735,7 @@ function mouseUp(evt) {
}
}
const changeScaleFactor = sliderChangeHandlerFactory("scaleFactor", "scaleFactorTxt", "scaleFactor", 8);
const changeScaleFactor = sliderChangeHandlerFactory("scaleFactor", "scaleFactorTxt", "scaleFactor", 8, (k, v) => scaleFactor = v, (k) => scaleFactor);
const changeSteps = sliderChangeHandlerFactory("steps", "stepsTxt", "steps", 30);
function changePaintMode() {