## 2026-03-01 ### hm/(住宅改修書類作成ツール)— タブ追加・フォーム改善・ドラッグ処理整理 **対象ファイル:** `hm/hm.html`, `hm/hm.js` #### タブ数を4→5に拡張 - タブ幅の計算式を `/ 4` → `/ 5` に変更(CSS・JS両方) - 新タブ追加の準備 #### 理由書フォーム改善 - 「その他」欄3行のアンダーライン(`____`固定テキスト)を テキスト入力欄(``)に変更 - CSSスタイル調整: - inputに `border-bottom: 1px solid #000; border-radius: 0` 追加 - 表セル `vertical-align: top` 追加 #### ドラッグ処理の整理(hm.js) - シルエット(silhouette変数・関連コード)を削除(未完成機能の除去) - マウスアップ処理を `resetDragging()` 関数として切り出し - `tlDrop()`・`handleMouseUp()` 内で `resetDragging()` を呼ぶよう統一 --- ## 2026-03-01(追加コミット) ### サーバー接続テスト **対象ファイル:** なし(接続確認のみ) --- ## 2026-03-02〜03 ### hm/(住宅改修書類作成ツール)— 「基本情報」タブ追加・フロアプラン機能大幅拡張 **対象ファイル:** `hm/hm.html`, `hm/hm.js` #### 「基本情報」タブを先頭に追加(tab数: 5→6) タブを1つ前に詰め、先頭に「基本情報」タブ(tab0)を新設。 | tabID | 変更前 | 変更後 | |-------|--------|--------| | tab0 | 理由書 | 基本情報(新規)| | tab1 | 施工前写真 | 理由書 | | tab2 | 工事計画案 | 施工前写真 | | tab3 | 見積書 | 工事計画案 | | tab4 | 内訳明細書 | 見積書 | | tab5 | — | 内訳明細書 | - 基本情報タブに利用者名検索フォーム(``)を配置 - CSSセレクタ(`#tab0`→`#tab1` など)を全面更新 - tabarea に `padding: 16px` 追加 - タブ幅計算を `/ 6` に更新 #### フロアプラン(SVG間取り図)機能の大幅拡張(hm.js) **新規関数:** - `createText(txt,l,t,w,h,cl)` — SVGテキスト要素の生成 - `reSort()` — SVG要素のz-index管理(部屋→設備の順に前面配置) - `reposRoomname(room)` — 部屋名ラベルの自動配置・畳数の自動計算・表示 - `translate2Pos(col)` — `transform="translate(x y)"` 属性からx/y座標を逆算 **当たり判定の改善:** - `hitbox()` にドア(.door)の判定を追加(従来は部屋のみ) **ドア配置位置の修正:** - 壁へのスナップ計算を `togrid(ty) - cellSize/2` に修正(センタリング) - 4方向(左・右・上・下)すべての計算式を統一 **部屋移動時の連動処理:** - `roomid` 属性で部屋・ドア・部屋名テキストを紐付け - 部屋を移動すると付随するドア・部屋名ラベルも一緒に移動 - ドアのドロップ先部屋を `dragParent` 変数で管理 **部屋配置時の処理:** - 部屋をドロップすると部屋名テキスト(roomname)を自動生成 - 畳数(面積 = 幅×高さ / cellSize² / 2)を自動計算して表示 **その他:** - デバッグ用 `alert("drop")` / `alert("click")` を `log()` に置き換え - アニメーション速度を 0.5s/0.1s → 0.0s(瞬時)に変更 - `resetDragging()` に `dragSrcEl = null` 追加(状態リセット漏れ修正) - ゴミ箱(trash)へのドラッグ処理を削除 - 未使用の `curMode` 変数・`rightpull` ドラッグモード処理を削除