# UnifiedSpread dev-22.0.0 Chart / Image / Object Layer Foundation

## 目的

dev-22.0.0 では、セルグリッドとは独立した Object Layer を追加した。Chart、Image、TextBox、Shape はセル値やセル書式ではなく、worksheet の floating object metadata として保存される。

## 実装範囲

- 選択範囲をもとにした縦棒チャート挿入
- 折れ線チャート用 command 基盤
- 画像プレースホルダー挿入
- テキストボックス挿入
- 図形プレースホルダー挿入
- オブジェクト選択
- マウスドラッグ移動
- 右下ハンドルによるリサイズ
- 右クリックメニューから複製 / 削除
- Delete / Backspace で選択オブジェクト削除
- `.uspdx` 保存復元対象として `sheet.objects[]` を保持

## 設計方針

Object Layer は `td` の中には入れず、grid viewport 上に重ねる。これにより、セル背景、選択 overlay、条件付き書式、Filter UI と Chart/Image/Drawing の状態が混ざらない。

オブジェクトの geometry は、現在は scrollable grid content 上の pixel coordinate として保存する。将来、行高・列幅変更に完全追従する anchor model を追加する場合も、`sheet.objects[]` の中に `anchor` metadata を拡張できる。

## 現在の制約

- Chart は軽量 preview であり、完全な Chart editor ではない。
- Image は実ファイル import ではなく placeholder から開始している。
- Shape は rectangle placeholder のみ。
- XLSX の drawing/chart/image import/export は未対応。
- Object layer の virtualization / frozen pane 追従は次フェーズ対象。
