Stamp あるいは Schema を編集しただけの場合
カルテ編集(modifyKarte)の時,テキストを編集しないでスタンプやシェーマだけ編集した場合 dirty 判定されない。そのため,シェーマだけを修正した場合などに,セーブする前にウインドウを閉じてしまって orz になることがあった。スタンプやシェーマを編集しただけの時も dirty になるようにした。
client/KartePane.java
protected void setDirty(boolean newDirty) { //↓ stamp や schema の編集をしたら dirty にするため // if (newDirty != dirty) { if (dirty == false && newDirty == true) { dirty = newDirty; getParent().setDirty(dirty); } }
client/StampHolder.java
public void edit() { ・ ・ stampEditor.start(); //↓ stamp を edit したら,kartePane の Dirty 設定 if (kartePane.getTextPane().isEditable()) { kartePane.setDirty(true); }
client/SchemaHolder.java
public void edit() { ・ ・ Runnable awt = new Runnable() { public void run() { editor.start(); } }; EventQueue.invokeLater(awt); //↓ schema edit 開始したら dirty と設定 if (kartePane.getTextPane().isEditable()) { kartePane.setDirty(true); } }
« FindBugs 導入 | トップページ | FindBugs に指摘されたこと »
「OpenDolphin」カテゴリの記事
- 13年目の運用まとめ(2021.02.04)
- スタンプの簡易表示(2020.09.04)
- Java 1.8.0_261 での apple.awt.brushMetalLook(2020.07.26)
- Undo の充実 (4) StampEditor, StampTree(2020.07.23)
- Undo の充実 (3) AtokListener(2020.07.22)