Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plotLine.tsのgetUpdateFunction関数とupdateFolder関数について #88

Open
yuhtota opened this issue Sep 15, 2021 · 2 comments
Open
Assignees

Comments

@yuhtota
Copy link
Contributor

yuhtota commented Sep 15, 2021

前提:webHydLaの左側のパネルのvariablesフォルダに作られるplotフォルダの変数入力欄においての話

export function getUpdateFunction(plotLine: PlotLine, item: dat.GUIController) {
let prev: string;
return () => {
plotLine.lastEditedInput = <HTMLInputElement>item.domElement.firstChild;
const val = (<HTMLInputElement>item.domElement.firstChild).value;
if (prev === undefined || val !== prev) {
try {
parse(val);
replotAll();
} catch (e) {
updateFolder(plotLine, false);
}
}
prev = val;
};
}
export function updateFolder(plotLine: PlotLine, succeeded: boolean) {
if (succeeded) {
const colorOnCorrect = '#303030';
(<HTMLInputElement>plotLine.xItem.domElement.firstChild).style.backgroundColor = (<HTMLInputElement>(
plotLine.yItem.domElement.firstChild
)).style.backgroundColor = (<HTMLInputElement>(
plotLine.zItem.domElement.firstChild
)).style.backgroundColor = colorOnCorrect;
} else {
const elm = plotLine.lastEditedInput;
if (elm === undefined) return;
elm.style.backgroundColor = '#A00000';
}
}

getUpdateFunctionでパースして、失敗したらupdateFolderでその入力欄の背景色を赤色(#A00000)にしたいのだと思うが、手元でテストした感じそうなっていない。

@yuhtota
Copy link
Contributor Author

yuhtota commented Sep 15, 2021

webHydLaで、「Runボタンを押していない」=「描画する物がない」状態で入力欄に書き込むと赤くなる場合があった。
例えば、x に t、y に y、z に 0 を書き込むと z の入力欄が赤くなる。

@sano-jin
Copy link
Contributor

javascript 時代はうまく機能していたらしい.
要テスト.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants