2.1
org.eclipse.ui.commands
拡張ポイントは、command
および category
エレメントを使用して
コマンド、およびコマンド・カテゴリーを宣言するために使用されます。 コマンドは一部のセマンティックな動作を抽象的に表現したものであり、実際の実装ではありません。これにより、複数の開発者が、各自の個々のパーツに対し、特定の動作を提供することができます。例えば、「paste」コマンドの実装がエディター内と、エクスプローラー・ウィジェット内で異なる場合があります。これらの実装はハンドラーといいます。
<!ELEMENT extension (activeKeyConfiguration , category , command , keyBinding , keyConfiguration , context , scope)>
<!ATTLIST extension
id CDATA #IMPLIED
name CDATA #IMPLIED
point CDATA #REQUIRED>
<!ELEMENT activeKeyConfiguration EMPTY>
<!ATTLIST activeKeyConfiguration
value CDATA #IMPLIED
keyConfigurationId CDATA #IMPLIED>
このエレメントは、Eclipse の初期アクティブ・キー構成を定義するために使用されます。 これらのエレメントが複数存在する場合、(プラグイン・レジストリーの読み取り順序で) 最後に宣言されたエレメントのみが有効であると考えられます。
このエレメントは設定で置き換えられています。ご使用のアプリケーションでデフォルト・キー構成を変更する必要がある場合は、plugin_customization.ini
ファイルで org.eclipse.ui/KEY_CONFIGURATION_ID=your.default.key.configuration.id
を指定します。
id
属性)。id
属性)。<!ELEMENT category EMPTY>
<!ATTLIST category
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED>
UI ではコマンドをより管理しやすくするため、コマンドをカテゴリー別に編成する場合がよくあります。 このエレメントはこのようなカテゴリーを定義するために使用されます。 複数のコマンドは多くとも 1 つのカテゴリーに追加することができます。 同じ id
属性を持つエレメントが複数存在する場合、(プラグイン・レジストリーの読み取り順序で) 最後に宣言されたエレメントのみが有効であると考えられます。
<!ELEMENT command (commandParameter | defaultHandler?)>
<!ATTLIST command
category CDATA #IMPLIED
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
categoryId CDATA #IMPLIED
defaultHandler CDATA #IMPLIED>
このエレメントは、コマンドを定義する場合に使用します。 コマンドは、アクションによって扱うことができるユーザーからの要求を表します。
また、コマンドは他のコマンドの中で内容的に固有でなければなりません。 同じ意味を持つコマンドが既に定義されている場合は、コマンドを定義しないでください。 同じ id
属性を持つエレメントが複数存在する場合、(プラグイン・レジストリーの読み取り順序で) 最後に宣言されたエレメントのみが有効であると考えられます。
アクションがコマンドに接続される方法については、拡張ポイント org.eclipse.ui.actionSets and org.eclipse.ui.editorActions を参照してください。
activeWhen
条件が指定されていないその他のハンドラー定義と競合します。IExecutableExtension
を作成する場合は、代わりに defaultHandler
エレメントを使用できます。<!ELEMENT keyBinding EMPTY>
<!ATTLIST keyBinding
configuration CDATA #IMPLIED
command CDATA #IMPLIED
locale CDATA #IMPLIED
platform CDATA #IMPLIED
contextId CDATA #IMPLIED
string CDATA #IMPLIED
scope CDATA #IMPLIED
keyConfigurationId CDATA #IMPLIED
commandId CDATA #IMPLIED
keySequence CDATA #IMPLIED>
このエレメントにより、キー・シーケンスをコマンドに割り当てることができます。代わりに 「org.eclipse.ui.bindings」拡張ポイントの key
エレメントを使用してください。
java.util.Locale
で宣言されたフォーマットに従って指定されます。platform
属性に可能な値は、org.eclipse.swt.SWT.getPlatform()
によって戻された可能な値のセットです。key
エレメントの schemeId
属性を使用してください。コマンドに割り当てるキー・シーケンス。 キー・シーケンスは 1 つ以上のキー・ストロークで構成されます。 キー・ストロークはキーボード上のキーで構成され、 必要に応じて次の修飾、すなわち Ctrl、Alt (前面)、Shift、および Command を 1 つ以上組み合わせて押します。 キー・ストロークはスペース、修飾は「+」文字によって区切られます。
修飾キーはプラットフォームに依存しない方法で表現することもできます。例えば、MacOS X では通常「Ctrl」の代わりに「Command」が使用されます。したがって、「Ctrl」または「Command」に適宜にマッピングされる「M1」が用意されています。同様に、「M2」は「Shift」、「M3」は「Alt」、「M4」は「Ctrl」(MacOS X) です。プラットフォームが追加されている場合は、有効なプラットフォーム・デフォルト設定にマッピングされているこれらの別名を利用できます。
このストリングの構文は、org.eclipse.ui.internal.keys
で定義されています。要約すると、このストリングは大/小文字を区別しません。ただし、文体上、すべて大文字にすることを推奨します。キーが 1 文字の場合は、単にこの文字を追加します。キーが特殊キー (非 ASCII) の場合は、ARROW_DOWN、ARROW_LEFT、ARROW_RIGHT、ARROW_UP、BREAK、CAPS_LOCK、END、F1、F2、F3、F4、F5、F6、F7、F8、F9、F10、F11、F12、F13、F14、F15、HOME、INSERT、NUM_LOCK、NUMPAD_0、NUMPAD_1、NUMPAD_2、NUMPAD_3、NUMPAD_4、NUMPAD_5、NUMPAD_6、NUMPAD_7、NUMPAD_8、NUMPAD_9、NUMPAD_ADD、NUMPAD_DECIMAL、NUMPAD_DIVIDE、NUMPAD_ENTER、NUMPAD_EQUAL、NUMPAD_MULTIPLY、NUMPAD_SUBTRACT、PAGE_UP、PAGE_DOWN、PAUSE、PRINT_SCREEN、または SCROLL_LOCK のいずれかを使用します。キーが印刷不可能な ASCII キーの場合は、BS、CR、DEL、ESC、FF、LF、NUL、SPACE、TAB、または VT のいずれかを使用します。メイン・キーボードの Enter/Return キーは CR であることに注意してください。
<!ELEMENT keyConfiguration EMPTY>
<!ATTLIST keyConfiguration
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED
parentId CDATA #IMPLIED>
このエレメントは、キー構成を定義するために使用されます。 同じ id
属性を持つエレメントが複数存在する場合、(プラグイン・レジストリーの読み取り順序で) 最後に宣言されたエレメントのみが有効であると考えられます。
代わりに「org.eclipse.ui.bindings」拡張ポイントを使用してください。
<!ELEMENT context EMPTY>
<!ATTLIST context
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED
parentId CDATA #IMPLIED>
このエレメントは、コンテキストを定義する場合に使用します。 同じ id
属性を持つエレメントが複数存在する場合、(プラグイン・レジストリーの読み取り順序で) 最後に宣言されたエレメントのみが有効であると考えられます。
代わりに org.eclipse.ui.contexts 拡張ポイントを使用してください。
<!ELEMENT scope EMPTY>
<!ATTLIST scope
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED>
このエレメントは、有効範囲を定義する場合に使用します。 同じ id
属性を持つエレメントが複数存在する場合、(プラグイン・レジストリーの読み取り順序で) 最後に宣言されたエレメントのみが有効であると考えられます。
使用すべきではありません。代わりに「org.eclipse.ui.contexts」拡張ポイントを使用してください。
<!ELEMENT commandParameter (values)>
<!ATTLIST commandParameter
id CDATA #REQUIRED
name CDATA #REQUIRED
values CDATA #IMPLIED
optional (true | false) "true">
コマンドが認識する必要があるパラメーターを定義します。パラメーターを使用すると、実行時にハンドラーにより多くの情報を提供できます。例えば、「ビューの表示」コマンドにはパラメーターとしてビューを指定できます。ハンドラーはこれらのパラメーターを認識できなければならないため、API と同様に処理する必要があります。
org.eclipse.core.commands.IParameterValues
を実装する必要があります。このクラスが指定されていない場合は、より詳細な values
エレメントを指定する必要があります。org.eclipse.core.runtime.IExecutableExtension
を参照してください。<!ATTLIST values
class CDATA #REQUIRED>
commandParameter
の values
属性の詳細バージョン
org.eclipse.core.commands.IParameterValues
を実装する必要があります。このクラスが指定されていない場合は、より詳細な values
エレメントを指定する必要があります。org.eclipse.core.runtime.IExecutableExtension
を参照してください。<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
パラメーターの有効値
IExecutableExtension
に渡されるパラメーターの名前。IExecutableExtension
に渡されるパラメーターの値。<!ELEMENT defaultHandler (parameter)>
<!ATTLIST defaultHandler
class CDATA #REQUIRED>
このコマンドのデフォルト・ハンドラー。その他のハンドラーがアクティブでない場合、このハンドラーがアクティブになります。このハンドラーは、activeWhen
条件が指定されていないその他のハンドラー定義と競合します。IExecutableExtension
を作成しない場合は、代わりに defaultHandler
属性を使用できます。
org.eclipse.core.commands.IHandler
を実装するクラス。
org.eclipse.ui
プラグイン中の plugin.xml
ファイルは org.eclipse.ui.commands
拡張ポイントを幅広く活用します。
この拡張ポイント以外のコマンド、カテゴリー、キー・バインディング、キー構成、またはコンテキストに関する共通 API はありません。 特定のコマンドを処理するアクションの登録、
およびコンテキストを照会および設定するための共通 API は、org.eclipse.ui.IKeyBindingService
にあります。
Copyright (c) 2000, 2005 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made
available under the terms of the Eclipse Public License v1.0 which accompanies
this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html