A maneira realmente nova é usar um RCP e4 puro que usa o novo modelo de aplicativo com comandos e manipuladores! (mas o e4 não suporta muitos códigos existentes). No e4 os menus e barras de ferramentas são definidos no modelo de aplicação. Comandos e manipuladores são usados de maneira semelhante ao código tradicional (mas os manipuladores são implementados de maneira diferente).
Para o estilo Eclipse 3, como você descobriu, há uma confusão ou maneiras de fazer as coisas. O Eclipse 4.3 descontinua alguns dos mais antigos (e isso agora está sinalizado no
plugin.xml
). Se você estiver escrevendo um RCP que usa seu próprio
ActionBarAdvisor
então você pode definir seus itens da barra de ferramentas lá. Ou você pode defini-los no plugin.xml
para plugins individuais. Ambos os métodos são bons. O próprio Eclipse define ações principais no orientador com plug-ins complementares definindo mais em seus plugin.xmls. Ações como Salvar que precisam ser tratados por várias partes (como editores) devem ser criados no orientador e usar
RetargetAction
. Isso permite que cada parte individual conecte sua própria ação com a ação definida globalmente. Isso também pode ser feito com commands
e vários handlers
que estão mais próximos do estilo e4. org.eclipse.ui.menus
agora é o principal ponto de extensão para contribuir com menus e barras de ferramentas (ignorando todas as partes obsoletas). Isso praticamente força você a usar commands
e handlers
. O conselheiro da barra de ações do Eclipse é
org.eclipse.ui.internal.ide.WorkbenchActionBuilder
o que pode ajudar, embora seja grande. Eu acho que o coolbar no Kepler é construído usando o novo modelo de aplicativo e4 com estilo usando algum CSS complicado.