http://kgs.tenkyu.com/s1/27.htm
らんかさんところの右クリックメニュー(rclick_tjs21.ks)を
触っていてふと気になった部分のメモ。
RClickConfigLayer.stateなのだけど、backCopyConfig()で
backConfig.state = foreConfig.stateしているところ。
(foreCopyConfig()も同様)
stateはmakeLoadMenu()やmakeSaveMenu()で更新をかけてるから
ここでstateを0から1にしたとしても、その後にある
if(backConfig.state == 1) backConfig.makeLoadMenu();
でmakeLoadMenu()を呼んだところでstateが1なら
その先のif(state != 1)の条件に引っかかってしまいダメな気が。
# なんか日本語がおかしい。
だから本当は表がstate=1の状態でbackCopyConfig()したら
裏もstate=1で、かつロードメニューにしたいのだろうけど
実際はロードメニューが表示されない。
これ、stateが同じ状態でもう1回トランジションかけるとおかしなことになる。
stateの更新をmake系にまかせるのであればbackCopyConfig()は
backConfig.state = foreConfig.state;をコメントアウトして
if(foreConfig.state == 1) backConfig.makeLoadMenu();にして
あくまでmake系の関数内で代入/更新処理させたほうがよいのではと。
もしくはchangeState()みたいな関数用意してそれ経由で変えたほうが。
というのをアルバム画面をTJSで作ってて思いました。
このプラグインベースでいじってたらどうもおかしいと思い、
よくよく調べてみたらこういうオチでした。