Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple LayoutRule can be Applied at once. #66

Draft
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

hkmt-mmy
Copy link

@hkmt-mmy hkmt-mmy commented Jan 28, 2025

#65

解決策として書かれていた CompositeLayoutRuleData という形で試行中

  • 既定クラスとして BaseLayoutRuleData を実装
  • 既存クラスの LayoutRuleDataBaseLayoutRuleData を継承する形に変更
  • 新規クラスとして CompositeLayoutRuleDataBaseLayoutRuleData を継承する形で実装
  • CompositeLayoutRuleData のインスペクタに Applyボタンを配置 (エディタのメニューから行うものと同一挙動)
  • バリデーションはエラー発生時中断ではなく、一連のLayoutRuleDataを処理するまで実行する形式
    • エラーがあった場合、指定されたファイル名の末尾に _[番号] を付加する (xxx.jsonの場合 xxx_1.json, xxx_3.json のような形)
  • 【要確認】ApplyLayoutRuleServiceのApply関数のインタフェースを変えている

確認事項

  • 旧バージョンで設定したPrimaryDataの参照が維持される
  • 旧バージョンで作成したLayoutRuleDataを読み込むことができる
  • エディタのLayoutRuleData選択プルダウンにCompositeLayoutRuleDataは含まれない
  • CompositeLayoutRuleDataのインスペクタにて既存のLayoutRuleDataを複数登録できる
  • CompositeLayoutRuleDataのインスペクタからApplyできる (PrimaryDataが設定されている場合nullにする確認ダイアログが開く)
  • 既存のLayoutRuleDataのApplyがデグレしていない
  • CompositeLayoutRuleDataのApplyで複数のLayoutRuleDataを加算した結果になる
  • 既存のテストがすべて正常通過する
  • ProjectSettingsのPrimaryData欄にLayoutRuleDataとCompositeLayoutRuleData双方が設定できる

@hkmt-mmy hkmt-mmy requested a review from Haruma-K January 28, 2025 10:08
@hkmt-mmy hkmt-mmy linked an issue Jan 28, 2025 that may be closed by this pull request
@hkmt-mmy hkmt-mmy changed the title 複数のLayoutRuleをまとめてApplyできるようにする Multiple LayoutRule can be Applied at once. Jan 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

複数のLayoutRuleをまとめてApplyしたい
1 participant