De repente tengo "Ejecutar" y "Buscar" en la barra de menú de mi aplicación RCP. ¿Hay alguna forma de eliminarlos?Ejecutar y buscar aparecen en la barra de menús RCP
Respuesta
En primer lugar, comprobar this thread (y el artículo "Contributing Actions to the Eclipse Workbench" utilizado en this thread):
El truco era "
check the launcher config
" - incluso después de una completamente nueva instalación de Eclipse 3.1.1, con precisión nada más en mi WS excepto mis propios complementos, los molestos menús adicionales y el molesto error de "editar la última posición" todavía estaban presentes.Luego fui a la configuración lanzador como usted sugiere, que tenía un montón de costra (creados automagicamente por Eclipse) - por lo que anula la selección de todos, seleccionado mis plugins, y hacer clic "
Add Required
"; corriendo desde el WS con eso - ¡genial!
Ver también bug 115998
eliminación de la función de "plataforma" lo arregla todo para arriba - una solución muy sencilla que era muy difícil de encontrar!
Dicho esto, en general, para ocultar algunas contribuciones acción que se puede tratar, como en this thread a:
1/a CERRAR/CoolBar definido por el punto de extensión Medida práctica.
IWorkbenchPage.hideActionSet(actionSetId)
IWorkbenchPage.hideActionSet("org.eclipse.search.menu");
2/Hide su menú:
MenuManager mbManager = ((ApplicationWindow)page.getWorkbenchWindow()).getMenuBarManager();
for (int i=0; i<mbManager.getItems().length; i++){
IContributionItem item=mbManager.getItems()[i];
if (item.getId().equals("org.eclipse.search.menu")){
item.setVisible(false);
}
}
O puede probar this thread, para ocultarlo para cualquier punto de vista a través de un PerspectiveListener
:
Los identificadores de acción que obtuve de navegación a través mis complementos de eclipse dependientes .. buscando
ActionSets
package ch.post.pf.gui.prototyp.sesam.pstonline;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.IPerspectiveDescriptor;
import org.eclipse.ui.IPerspectiveListener;
import org.eclipse.ui.IStartup;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PlatformUI;
public class ActionWiper implements IStartup, IPerspectiveListener {
private static final String[] ACTIONS_2_WIPE = new String[] {
"org.eclipse.search.searchActionSet",
"org.eclipse.ui.edit.text.actionSet.presentation",
"org.eclipse.ui.edit.text.actionSet.openExternalFile",
"org.eclipse.ui.edit.text.actionSet.annotationNavigation",
"org.eclipse.ui.edit.text.actionSet.navigation",
"org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo",
"org.eclipse.update.ui.softwareUpdates" };
public void earlyStartup() {
IWorkbenchWindow[] windows = PlatformUI.getWorkbench()
.getWorkbenchWindows();
for (int i = 0; i < windows.length; i++) {
IWorkbenchPage page = windows[i].getActivePage();
if (page != null) {
wipeActions(page);
}
windows[i].addPerspectiveListener(this);
}
}
private void wipeActions(IWorkbenchPage page) {
for (int i = 0; i < ACTIONS_2_WIPE.length; i++) {
wipeAction(page, ACTIONS_2_WIPE[i]);
}
}
private void wipeAction(final IWorkbenchPage page, final String actionsetId) {
Display.getDefault().syncExec(new Runnable() {
public void run() {
page.hideActionSet(actionsetId);
}
});
}
public void perspectiveActivated(IWorkbenchPage page,
IPerspectiveDescriptor perspective) {
wipeActions(page);
}
public void perspectiveChanged(IWorkbenchPage page,
IPerspectiveDescriptor perspective, String changeId) {
}
}
y quitar las preferencias:
Con la
PreferenceManager
llegué incluso deshacerse de las preferencias no deseados .. :)
Cuando lasPREFERENCES_2_WIPE
cadenas tienen que ser los ID de las principales categorías que desea obtener deshacerse Al igual que el "org.eclipse.ui.preferencePages.Workbench" -> se muestra como general
PreferenceManager pm = PlatformUI.getWorkbench().getPreferenceManager();
for (int i = 0; i < PREFERENCES_2_WIPE.length; i++) {
pm.remove(PREFERENCES_2_WIPE[i]);
}
Para mí esto funcionó (espero que le ayuda):
<extension
point="org.eclipse.ui.activities">
<activity
id="someid.remove"
name="RemoveSearchMenu">
<enabledWhen>
<with
variable="activePartId">
<equals
value="someidr.RemoveSearchMenu1">
</equals>
</with></enabledWhen>
</activity>
<activityPatternBinding
activityId="someid.remove"
pattern="org.eclipse.search.*">
</activityPatternBinding>
- 1. Eclipse Menús y acciones de RCP: ¿Configurar o codificar?
- 2. Teclas del acelerador de menús no aparecen (Delphi 2009)
- 3. Contribuir a la barra de estado/Recorte en Eclipse RCP
- 4. Barra de menús + Barra de comandos en WM 5.0 y WM 6.5.3
- 5. Eclipse Buscar Menús desactivados al azar
- 6. Títulos que no aparecen en la barra de navegación ViewControllers
- 7. Ocultar barra de menús de Eclipse (ocultar automáticamente)
- 8. Plataforma y menús de Netbeans
- 9. ¿Cómo muevo mi JMenuBar a la barra de menús de la pantalla en Mac OS X?
- 10. Buscar qué números aparecen más en un vector
- 11. Netbeans RCP vs Eclipse RCP
- 12. Cómo incluir una barra diagonal en vi buscar y reemplazar
- 13. Cómo determinar qué complementos de eclipse están contribuyendo a los menús y barras de herramientas y detenerlos
- 14. Unir los menús contextuales
- 15. Cómo cambiar el color de la barra de título de la vista Eclipse RCP
- 16. crear menús en la línea de comando
- 17. Ocultar barra de índice al buscar UITableView
- 18. ¿Cómo puedo agregar un JTextField a la barra de menús de JFrame?
- 19. Interfaz gráfica de usuario de plataforma cruzada compatible con la barra de tareas (Win) y la función de barra de menús (mac)?
- 20. Aprendizaje de Eclipse RCP y SWT/JFace
- 21. GWT: Menús en UiBinder
- 22. Menús horizontales
- 23. menús emergentes
- 24. menús de WordPress como menús de varios niveles
- 25. ¿Cómo implementar menús de navegación HTML reutilizables?
- 26. menús de comando izquierdo y derecho en LWUIT formulario
- 27. mecanismo de plugin.properties en eclipse RCP
- 28. Posicionamiento de barras de herramientas en Eclipse/RCP
- 29. XText en un producto RCP
- 30. La actualización P2 de la aplicación basada en RCP falla
Muchas gracias. Resultó que todo lo que tenía que hacer era seleccionar los "complementos necesarios" en la pestaña de complementos de mi configuración de ejecución. –