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. crear la barra de menús HTML en HTML
- 4. Contribuir a la barra de estado/Recorte en Eclipse RCP
- 5. Barra de menús + Barra de comandos en WM 5.0 y WM 6.5.3
- 6. Eclipse Buscar Menús desactivados al azar
- 7. Títulos que no aparecen en la barra de navegación ViewControllers
- 8. Ocultar barra de menús de Eclipse (ocultar automáticamente)
- 9. Plataforma y menús de Netbeans
- 10. ¿Cómo muevo mi JMenuBar a la barra de menús de la pantalla en Mac OS X?
- 11. Buscar qué números aparecen más en un vector
- 12. Netbeans RCP vs Eclipse RCP
- 13. Cómo incluir una barra diagonal en vi buscar y reemplazar
- 14. Cómo determinar qué complementos de eclipse están contribuyendo a los menús y barras de herramientas y detenerlos
- 15. Unir los menús contextuales
- 16. Cómo cambiar el color de la barra de título de la vista Eclipse RCP
- 17. Ocultar barra de índice al buscar UITableView
- 18. crear menús en la línea de comando
- 19. ¿Cómo puedo agregar un JTextField a la barra de menús de JFrame?
- 20. Aprendizaje de Eclipse RCP y SWT/JFace
- 21. 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)?
- 22. GWT: Menús en UiBinder
- 23. Menús horizontales
- 24. menús emergentes
- 25. menús de WordPress como menús de varios niveles
- 26. ¿Cómo implementar menús de navegación HTML reutilizables?
- 27. Twitter de arranque: de Popovers no aparecen en la primera posición, pero aparecen en segundo clic
- 28. mecanismo de plugin.properties en eclipse RCP
- 29. menús de comando izquierdo y derecho en LWUIT formulario
- 30. Posicionamiento de barras de herramientas en Eclipse/RCP
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. –