diff --git a/provisional/decisions.md b/provisional/decisions.md index e6a92c2..b450b91 100644 --- a/provisional/decisions.md +++ b/provisional/decisions.md @@ -65,6 +65,12 @@ kle-serial2 を使わず、読み書きともに自作する。ijprest/keyboard- KLE本家の挙動の確認は、既存の検証ハーネスで本家の `serial.js` を動かして比べる(コードは写さない)。 理由: 出自の確認を待たずに進められ、後からライブラリへ差し替えられる。 +### T-29 PHY Editorの作り直し + +`ui/phy/` だけを作り直し、`domain/`・`io/` とそのテストは流用する。作り直したものもモックとして扱う。 +入力は [phy-editor-feedback.md](phy-editor-feedback.md) と [phy-editor-keybindings.md](phy-editor-keybindings.md)。 +理由: 所感はすべて画面の操作と表示に関するもので、データモデル側に作り直す理由がない。 + ## B. 明示的な未決事項 ### 未確認事項 diff --git a/provisional/phy-editor-feedback.md b/provisional/phy-editor-feedback.md index 424bce0..3afe519 100644 --- a/provisional/phy-editor-feedback.md +++ b/provisional/phy-editor-feedback.md @@ -17,7 +17,8 @@ - 親とその配下は同時に選択しない(変換が二重にかかるだけで、使い道がない)。 - クラスターは長押しのほか、階層パネルとキー操作(親へ上がる・子へ降りる)でも選べる。長押しはヘルプで案内する。 - タッチ操作(長押しが標準のメニューと重なる)は当面考えない。 -- 何もない場所のクリック・Escで選択を外せる。 +- 何もない場所のクリック・Escで選択を外せる。クラスターの矩形の内側でもキーのない隙間は何もない場所として扱い、 + クリックで選択を外し、ドラッグで範囲選択にする。 ### クラスター @@ -70,6 +71,9 @@ ### コピー&ペースト - IDと参照の扱いは [仮決定 T-11](decisions.md#t-11-id)。 +- 貼り付け・複製したノードは、選択中のノードと同じ親に、元の位置からグリッド1刻みずらして置く。 + 選択がなければフォーカス先(フォーカス中でなければ root)の直下に置く。 +- コピーした内容はアプリ内に持つ。システムのクリップボードからはKLE JSONだけを読む(別のプロジェクトへの貼り付けは当面作らない)。 - クリップボードのKLE JSONを貼り付けで取り込める。幾何だけを読み、新しいIDを振る(KLE取り込みと同じ経路で、手元のデータとは照合しない)。 ## 要検討 @@ -92,7 +96,7 @@ - タブ名と検証結果欄の呼び方。PHY・ELCなどのレイヤー名は設計上の仮称で、画面に出すかどうかは別途決める。 全エディタに共通するので、PHY Editorとは別に扱う。 -- 別のプロジェクトへ貼り付けるとき、貼り先に同じIDのProfileがない、またはIDが同じで中身が違う場合の扱い。 +- 別のプロジェクトへ貼り付けられるようにする場合、貼り先に同じIDのProfileがない、またはIDが同じで中身が違うときの扱い。 ## モックの実装上の問題