ダイアログ作成その2
ダイアログの作成にはダイアログエディタを利用したり、ランタイムダイアログがあります。 XDialogProvider
OOo Basic では Basic のライブラリと Dialog のライブラリが統合されているように見えるため、一緒に配布できて便利です。一方、それ以外の言語で作成したマクロなどでは Basic のコードがないのにダイアログのみを入れた Dialog ライブラリを入れることになるかもしれません。 拡張機能パッケージであれば、ダイアログファイルをそのまま (ダイアログライブラリとしてではなく) 入れておいて利用することができます。 com.sun.star.awt.DialogProvider サービスを利用してダイアログを作成します。戻るのはダイアログのコントローラオブジェクトです。
URL には一般的な file:// または vnd.sun.star.script: などが利用できます。ダイアログの xdl ファイルを拡張機能に入れている場合には、ダイアログの URL を知るために拡張機能 ID を指定して拡張機能のインストールされているディレクトリを取得する必要があります。PackageInformationProvider XDialogProvider2
Options ダイアログで利用されています。Option ダイアログを利用するときにこのインターフェースにより作成されたダイアログを受けとることになります。一方で、そのダイアログ用のハンドラをサービスに実装しておく必要がありますが。 XContainerWindowProvider
WindowType が選択できるようになればダイアログ xdl ファイルからノンモダルダイアログなどが簡単に作成できるようになるかもしれません。 |