Skip to content

EditorHome.vueにあるdialogをquasarのuseDialogPluginComponentで開くようにする #1551

@Hiroshiba

Description

@Hiroshiba

内容

EditorHomeではアプリケーション全体で開かれるダイアログをあらかじめコンポーネントとして配置しています。

<help-dialog v-model="isHelpDialogOpenComputed" />
<setting-dialog v-model="isSettingDialogOpenComputed" />
<hotkey-setting-dialog v-model="isHotkeySettingDialogOpenComputed" />
<header-bar-custom-dialog v-model="isToolbarSettingDialogOpenComputed" />
<character-order-dialog
v-if="orderedAllCharacterInfos.length > 0"
v-model="isCharacterOrderDialogOpenComputed"
:character-infos="orderedAllCharacterInfos"
/>
<default-style-list-dialog
v-if="orderedAllCharacterInfos.length > 0"
v-model="isDefaultStyleSelectDialogOpenComputed"
:character-infos="orderedAllCharacterInfos"
/>
<dictionary-manage-dialog v-model="isDictionaryManageDialogOpenComputed" />
<engine-manage-dialog v-model="isEngineManageDialogOpenComputed" />
<accept-retrieve-telemetry-dialog
v-model="isAcceptRetrieveTelemetryDialogOpenComputed"
/>
<accept-terms-dialog v-model="isAcceptTermsDialogOpenComputed" />

これの影響でダイアログの開閉状態をアプリケーション全体で管理する形になり、かつダイアログのオープンやクローズに反応して何かの関数を実行するためにwatchを使う必要があり、少し困難になっています。

quasarのuseDialogPluginComponentを使えば開閉状態のコントロールや開閉状態にフックした処理の実行などが素直に書けるはずです。
配置してあるダイアログをこれを使ってなるべく開閉するようになればこの課題は解決です。

Pros 良くなる点

管理がしやすくなりそう。

Cons 悪くなる点

実現方法

とりあえず簡単そうなダイアログを1つ置き換えられるかどうかをチェックするのが良さそうに思います。
すでにuseDialogPluginComponentを使っている箇所がいくつかあると思うので参考になるかもです。

その他

初心者歓迎タスクラベルがついていますがプログラミングの難度的には難しいと思います。
プログラミングに慣れている方がVuejsになれるのに適しているタスクだと思います。

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions