本当に新しい方法は、コマンドとハンドラーで新しいアプリケーションモデルを使用する純粋なe4RCPを使用することです。 (しかし、e4は多くの既存のコードをサポートしていません)。 e4では、メニューとツールバーはアプリケーションモデルで定義されています。コマンドとハンドラーは、従来のコードと同様の方法で使用されます(ただし、ハンドラーの実装は異なります)。
Eclipse 3スタイルの場合、ご存知のように、ごちゃごちゃしたり、物事を行う方法があります。 Eclipse 4.3は、最も古いもののいくつかを非推奨にします(そして、これは現在、plugin.xml
でフラグが立てられています 。
独自のActionBarAdvisor
を使用するRCPを作成している場合 次に、そこでツールバー項目を定義できます。または、plugin.xml
で定義することもできます 個々のプラグイン用。どちらの方法でも問題ありません。 Eclipse自体は、plugin.xmlでさらに定義するプラグインを追加して、アドバイザでコアアクションを定義します。
保存などのアクション 複数の部分(エディターなど)で処理する必要があるものは、アドバイザーで作成し、RetargetAction
を使用する必要があります 。これにより、個々のパーツが独自のアクションをグローバルに定義されたアクションに接続できます。これは、commands
でも実行できます。 および複数のhandlers
e4スタイルに近いものです。
org.eclipse.ui.menus
これで、メニューとツールバーに貢献するための主要な拡張ポイントになりました(非推奨の部分はすべて無視されます)。これにより、commands
を使用する必要があります。 およびhandlers
。
Eclipseアクションバーアドバイザーはorg.eclipse.ui.internal.ide.WorkbenchActionBuilder
です。 それは大きいですが、それは役立つかもしれません。
Keplerのクールバーは、トリッキーなCSSを使用したスタイリングを備えた新しいe4アプリケーションモデルを使用して構築されていると思います。