create a new page, using Extensions/Options as a template.
Front page
Search
掲示板
Reload
Help
Browse Log
掲示板の使い方
OOo 掲示板3
OOo 掲示板2
OOo 掲示板
掲示板
雑談掲示板
New
List of pages
Recent changes
Backup
簡単ヘルプ
整形ルール
Start:
*オプションページ [#n7782aa9]
ツール - オプションの設定に拡張機能独自の設定を追加できま...
拡張機能利用前などに必要な設定があるときに利用します。
#contents
**概要 [#rcc3dcf6]
オプションページの追加は /org.openoffice.Office.OptionsDi...
子ノードを追加することで行います。また、追加する項目の表...
オプションページに表示するダイアログはダイアログエディタ...
また、オプションダイアログの動作を行う .awt.XContainerWin...
注: オプションページの設定を保存しておく方法を事前に準備...
**ダイアログ [#gc2a2db5]
ダイアログは丁度オプションページにはまるようなサイズ、さ...
ダイアログを作成したら、エクスポートします。特にダイアロ...
オプションダイアログを多言語化しているときには文字列リソ...
-Dialog1.xdl
-Dialog1_en_US.default
-Dialog1_en_US.properties
-Dialog1_ja_JP.properties
**オプションページダイアログ用サービス [#ffe90297]
オプションページダイアログの動作を行うサービスを作成しま...
オプションページでなにか操作があったり初期化されたときな...
boolean callHandlerMethod(
[in] XWindow xWindow,
[in] any EventObject,
[in] string MethodName )
raises( ::com::sun::star::lang::WrappedTargetException );
イベント名はオプションページが最初に開かれたとき (initial...
[[最大ページサイズ変更>OOobbs2/71]] に簡単な例があります...
**ページの指定 (リーフ) [#pe545970]
ページの指定は次のように行います。以下の例はページを追加...
Leaves 内に一つもしくは複数の独自の子ノードを追加すること...
#code(xcu){{
<node oor:name="Leaves">
<node oor:name="mytools.op1.1" oor:op="fuse">
<prop oor:name="Id">
<value>mytools.op2</value>
</prop>
<prop oor:name="Label">
<value xml:lang="en-US">op 1</value>
<value xml:lang="ja-JP">op 1</value>
</prop>
<prop oor:name="OptionsPage">
<value>%origin%/dialogs/General/InputAssistantGener...
</prop>
<prop oor:name="EventHandlerService">
<value>mytools.OptionsDialog2</value>
</prop>
<prop oor:name="GroupId">
<value></value>
</prop>
<prop oor:name="GroupIndex">
<value>0</value>
</prop>
</node>
</node>
}}
|項目|説明|h
|Id|[[拡張機能 ID>Extensions/description#j18a3abf]] と同...
|Label|オプションページの左側にあるツリー構造に表示される...
|OptionsPage|このページに表示するダイアログのファイルを指...
|EventHandlerService|ダイアログのイベントを取り扱う .awt....
|GroupId|複数のオプションページをツリーに並べて表示したい...
|GroupIndex|グループ化したオプションページの並べる順序を...
**ノード [#dd1e3367]
オプションページを既存のノードに追加することができます。...
このノード内に上記のページ指定 (リーフ) を入れることでそ...
***既存ノードへの追加 [#h0285c0a]
Writer ノードへ追加してみます。Nodes の子ノードに Writer ...
#code(xcu){{
<?xml version='1.0' encoding='UTF-8'?>
<oor:component-data oor:name="OptionsDialog"
oor:package="org.openoffice.Office"
xmlns:oor="http://openoffice.org/2001/registry"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<node oor:name="Nodes">
<node oor:name="Writer" oor:op="fuse">
<node oor:name="Leaves">
<node oor:name="mytools.op1.1" oor:op="fuse">
<prop oor:name="Id">
<value>mytools.op2</value>
</prop>
<prop oor:name="Label">
<value xml:lang="en-US">op 1</value>
<value xml:lang="ja">op 1</value>
</prop>
<prop oor:name="OptionsPage">
<value>%origin%/dialogs/General/InputAssistantG...
</prop>
<prop oor:name="EventHandlerService">
<value></value>
</prop>
<prop oor:name="GroupId">
<value></value>
</prop>
<prop oor:name="GroupIndex">
<value>0</value>
</prop>
</node>
<node oor:name="mytools.op1.2" oor:op="fuse">
<prop oor:name="Id">
<value>mytools.op2</value>
</prop>
<prop oor:name="Label">
<value xml:lang="en-US">op 2</value>
<value xml:lang="ja">op 2</value>
</prop>
<prop oor:name="OptionsPage">
<value>%origin%/dialogs/Replace/InputAssistantR...
</prop>
<prop oor:name="EventHandlerService">
<value></value>
</prop>
<prop oor:name="GroupId">
<value></value>
</prop>
<prop oor:name="GroupIndex">
<value>1</value>
</prop>
</node>
</node>
</node>
</node>
</oor:component-data>
}}
その他のノードの形式は [[Options Dialog Configuration>htt...
***新たなノードの作成 [#o190ff89]
独自のノードを作成するには次のようにノードに独自の名前を...
#code(xcu){{
<node oor:name="Nodes">
<node oor:name="mytools.op1.node" oor:op="fuse">
<prop oor:name="Label">
<value xml:lang="en-US">Options Page 1 Node</value>
<value xml:lang="ja-JP">Options Page 1 Node</value>
</prop>
<prop oor:name="OptionsPage">
<value>%origin%/dialogs/node/InputAssistantNode.x...
</prop>
<prop oor:name="AllModules">
<value>true</value>
</prop>
<node oor:name="Leaves">
.......
</node>
</node>
</node>
}}
|項目|説明|h
|Label|ツリーに表示されるラベル。ローカライズできます|
|OptionsPage|オプションページのダイアログ指定|
|AllModules|true に設定するとすべてのモジュールでこのノー...
子ページは Leaves ノード内に上記と同様に記述します。
このノードページではダイアログのイベントが発生しません。...
**モジュール [#i8fa3bce]
ノードを新しく定義したとき、そのノードがどのドキュメント...
Modules 内に表示するモジュール名をサービス名で指定します...
#code(xcu){{
<node oor:name="Modules">
<node oor:name="com.sun.star.text.TextDocument" oor:op=...
<node oor:name="Nodes">
<node oor:name="mytools.op1.node" oor:op="fuse"/>
</node>
</node>
</node>
}}
位置の指定が必要な時には、次のように指定します。
#code(xcu){{
<node oor:name="Modules">
<node oor:name="com.sun.star.text.TextDocument" oor:op=...
<node oor:name="Nodes">
<node oor:name="mytools.op1.node" oor:op="fuse">
<prop oor:name="Index">
<value>0</value>
</prop>
</node>
</node>
</node>
</node>
}}
** 拡張機能のオプションページを表示した状態で開く [#z0d2b...
ツール - オプションメニューでは最後に選択したページが開か...
sub OpenExtensionsOptionPage
dispatcher = createUnoService("com.sun.star.frame.Disp...
arg = CreateUnoStruct("com.sun.star.beans.PropertyValu...
arg.Name = "OptionsPageURL"
arg.Value = "vnd.sun.star.expand:$UNO_USER_PACKAGES_CA...
"/uno_packages/svazblta.tmp_/BookmarksMenu-1.0.0....
dispatcher.executeDispatch(_
ThisComponent.CurrentController.Frame, _
".uno:OptionsTreeDialog", "", 0, Array(arg))
end sub
OptionPage で指定した値を OptionPageURL に指定します。コ...
End:
*オプションページ [#n7782aa9]
ツール - オプションの設定に拡張機能独自の設定を追加できま...
拡張機能利用前などに必要な設定があるときに利用します。
#contents
**概要 [#rcc3dcf6]
オプションページの追加は /org.openoffice.Office.OptionsDi...
子ノードを追加することで行います。また、追加する項目の表...
オプションページに表示するダイアログはダイアログエディタ...
また、オプションダイアログの動作を行う .awt.XContainerWin...
注: オプションページの設定を保存しておく方法を事前に準備...
**ダイアログ [#gc2a2db5]
ダイアログは丁度オプションページにはまるようなサイズ、さ...
ダイアログを作成したら、エクスポートします。特にダイアロ...
オプションダイアログを多言語化しているときには文字列リソ...
-Dialog1.xdl
-Dialog1_en_US.default
-Dialog1_en_US.properties
-Dialog1_ja_JP.properties
**オプションページダイアログ用サービス [#ffe90297]
オプションページダイアログの動作を行うサービスを作成しま...
オプションページでなにか操作があったり初期化されたときな...
boolean callHandlerMethod(
[in] XWindow xWindow,
[in] any EventObject,
[in] string MethodName )
raises( ::com::sun::star::lang::WrappedTargetException );
イベント名はオプションページが最初に開かれたとき (initial...
[[最大ページサイズ変更>OOobbs2/71]] に簡単な例があります...
**ページの指定 (リーフ) [#pe545970]
ページの指定は次のように行います。以下の例はページを追加...
Leaves 内に一つもしくは複数の独自の子ノードを追加すること...
#code(xcu){{
<node oor:name="Leaves">
<node oor:name="mytools.op1.1" oor:op="fuse">
<prop oor:name="Id">
<value>mytools.op2</value>
</prop>
<prop oor:name="Label">
<value xml:lang="en-US">op 1</value>
<value xml:lang="ja-JP">op 1</value>
</prop>
<prop oor:name="OptionsPage">
<value>%origin%/dialogs/General/InputAssistantGener...
</prop>
<prop oor:name="EventHandlerService">
<value>mytools.OptionsDialog2</value>
</prop>
<prop oor:name="GroupId">
<value></value>
</prop>
<prop oor:name="GroupIndex">
<value>0</value>
</prop>
</node>
</node>
}}
|項目|説明|h
|Id|[[拡張機能 ID>Extensions/description#j18a3abf]] と同...
|Label|オプションページの左側にあるツリー構造に表示される...
|OptionsPage|このページに表示するダイアログのファイルを指...
|EventHandlerService|ダイアログのイベントを取り扱う .awt....
|GroupId|複数のオプションページをツリーに並べて表示したい...
|GroupIndex|グループ化したオプションページの並べる順序を...
**ノード [#dd1e3367]
オプションページを既存のノードに追加することができます。...
このノード内に上記のページ指定 (リーフ) を入れることでそ...
***既存ノードへの追加 [#h0285c0a]
Writer ノードへ追加してみます。Nodes の子ノードに Writer ...
#code(xcu){{
<?xml version='1.0' encoding='UTF-8'?>
<oor:component-data oor:name="OptionsDialog"
oor:package="org.openoffice.Office"
xmlns:oor="http://openoffice.org/2001/registry"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<node oor:name="Nodes">
<node oor:name="Writer" oor:op="fuse">
<node oor:name="Leaves">
<node oor:name="mytools.op1.1" oor:op="fuse">
<prop oor:name="Id">
<value>mytools.op2</value>
</prop>
<prop oor:name="Label">
<value xml:lang="en-US">op 1</value>
<value xml:lang="ja">op 1</value>
</prop>
<prop oor:name="OptionsPage">
<value>%origin%/dialogs/General/InputAssistantG...
</prop>
<prop oor:name="EventHandlerService">
<value></value>
</prop>
<prop oor:name="GroupId">
<value></value>
</prop>
<prop oor:name="GroupIndex">
<value>0</value>
</prop>
</node>
<node oor:name="mytools.op1.2" oor:op="fuse">
<prop oor:name="Id">
<value>mytools.op2</value>
</prop>
<prop oor:name="Label">
<value xml:lang="en-US">op 2</value>
<value xml:lang="ja">op 2</value>
</prop>
<prop oor:name="OptionsPage">
<value>%origin%/dialogs/Replace/InputAssistantR...
</prop>
<prop oor:name="EventHandlerService">
<value></value>
</prop>
<prop oor:name="GroupId">
<value></value>
</prop>
<prop oor:name="GroupIndex">
<value>1</value>
</prop>
</node>
</node>
</node>
</node>
</oor:component-data>
}}
その他のノードの形式は [[Options Dialog Configuration>htt...
***新たなノードの作成 [#o190ff89]
独自のノードを作成するには次のようにノードに独自の名前を...
#code(xcu){{
<node oor:name="Nodes">
<node oor:name="mytools.op1.node" oor:op="fuse">
<prop oor:name="Label">
<value xml:lang="en-US">Options Page 1 Node</value>
<value xml:lang="ja-JP">Options Page 1 Node</value>
</prop>
<prop oor:name="OptionsPage">
<value>%origin%/dialogs/node/InputAssistantNode.x...
</prop>
<prop oor:name="AllModules">
<value>true</value>
</prop>
<node oor:name="Leaves">
.......
</node>
</node>
</node>
}}
|項目|説明|h
|Label|ツリーに表示されるラベル。ローカライズできます|
|OptionsPage|オプションページのダイアログ指定|
|AllModules|true に設定するとすべてのモジュールでこのノー...
子ページは Leaves ノード内に上記と同様に記述します。
このノードページではダイアログのイベントが発生しません。...
**モジュール [#i8fa3bce]
ノードを新しく定義したとき、そのノードがどのドキュメント...
Modules 内に表示するモジュール名をサービス名で指定します...
#code(xcu){{
<node oor:name="Modules">
<node oor:name="com.sun.star.text.TextDocument" oor:op=...
<node oor:name="Nodes">
<node oor:name="mytools.op1.node" oor:op="fuse"/>
</node>
</node>
</node>
}}
位置の指定が必要な時には、次のように指定します。
#code(xcu){{
<node oor:name="Modules">
<node oor:name="com.sun.star.text.TextDocument" oor:op=...
<node oor:name="Nodes">
<node oor:name="mytools.op1.node" oor:op="fuse">
<prop oor:name="Index">
<value>0</value>
</prop>
</node>
</node>
</node>
</node>
}}
** 拡張機能のオプションページを表示した状態で開く [#z0d2b...
ツール - オプションメニューでは最後に選択したページが開か...
sub OpenExtensionsOptionPage
dispatcher = createUnoService("com.sun.star.frame.Disp...
arg = CreateUnoStruct("com.sun.star.beans.PropertyValu...
arg.Name = "OptionsPageURL"
arg.Value = "vnd.sun.star.expand:$UNO_USER_PACKAGES_CA...
"/uno_packages/svazblta.tmp_/BookmarksMenu-1.0.0....
dispatcher.executeDispatch(_
ThisComponent.CurrentController.Frame, _
".uno:OptionsTreeDialog", "", 0, Array(arg))
end sub
OptionPage で指定した値を OptionPageURL に指定します。コ...
Page: