IWorkbench workbench = PlatformUI.getWorkbench(); IWorkbenchWindow[] windows = workbench.getWorkbenchWindows(); for (IWorkbenchWindow window : windows) { IWorkbenchPage[] pages = window.getPages(); for (IWorkbenchPage page : pages) { IEditorPart[] editors = page.getDirtyEditors(); for (IEditorPart editor : editors) { IEditorInput input = editor.getEditorInput(); if (input instanceof FileEditorInput) { IFile file = ((FileEditorInput)input).getFile(); // TODO ... deal with file } } } }
@Override public boolean isEnabled() { boolean enabled = false; IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); if (window != null) { enabled = window.getPages().length > 0; } return enabled; }
@Override public void run() { IWorkbenchWindow windows[] = getWorkbenchWindows(); for (IWorkbenchWindow window : windows) { IWorkbenchPage pages[] = window.getPages(); for (IWorkbenchPage page : pages) { isClosing = isClosing && page.closeAllEditors(false); } } } });
IWorkbench wb = PlatformUI.getWorkbench(); IWorkbenchWindow activeBenchWindow = wb.getActiveWorkbenchWindow(); IWorkbenchPage[] pages = activeBenchWindow.getPages(); IWorkbenchPage page = pages[0]; IViewPart yourView = page.findView(YourView.ID);
private static IEditorPart[] getDirtyEditors() { List result = new ArrayList(0); IWorkbench workbench = PlatformUI.getWorkbench(); IWorkbenchWindow[] windows = workbench.getWorkbenchWindows(); for (int i = 0; i < windows.length; i++) { IWorkbenchPage[] pages = windows[i].getPages(); for (int x = 0; x < pages.length; x++) { IEditorPart[] editors = pages[x].getDirtyEditors(); for (int z = 0; z < editors.length; z++) { IEditorPart ep = editors[z]; result.add(ep); } } } return (IEditorPart[]) result.toArray(new IEditorPart[result.size()]); }
public static IEditorPart[] getInstanciatedEditors() { List result= new ArrayList(0); IWorkbench workbench= getDefault().getWorkbench(); IWorkbenchWindow[] windows= workbench.getWorkbenchWindows(); for (int windowIndex= 0; windowIndex < windows.length; windowIndex++) { IWorkbenchPage[] pages= windows[windowIndex].getPages(); for (int pageIndex= 0; pageIndex < pages.length; pageIndex++) { IEditorReference[] references= pages[pageIndex].getEditorReferences(); for (int refIndex= 0; refIndex < references.length; refIndex++) { IEditorPart editor= references[refIndex].getEditor(false); if (editor != null) result.add(editor); } } } return (IEditorPart[])result.toArray(new IEditorPart[result.size()]); }
/** * Constructs a new selection tracker for the given window and part id. * * @param window workbench window * @param partId part identifier */ public WindowPartSelectionTracker(IWorkbenchWindow window, String partId) { super(partId); setWindow(window); window.addPageListener(this); for (IWorkbenchPage page : window.getPages()) { pageOpened(page); } }
/** * Get active workbench page. * <p> * This method acts as a convenience for plug-in implementors. * </P> * * @return IWorkbenchPage the workbench page for this plug-in */ public static IWorkbenchPage getActiveWorkbenchPage() { IWorkbenchPage workbenchPage = getActiveWorkbenchWindow().getActivePage(); if (workbenchPage != null) { return workbenchPage; } IWorkbenchPage[] workbenchPages = getActiveWorkbenchWindow().getPages(); if (workbenchPages.length > 0) { return workbenchPages[0]; } return null; }
private void initEditors() { IWorkbenchPage[] pages= fWindow.getPages(); for (int i = 0; i < pages.length; i++) { IEditorReference[] editors= pages[i].getEditorReferences(); for (int j = 0; j < editors.length; j++) { IEditorPart editor= editors[j].getEditor(false); if (editor != null && pages[i].isPartVisible(editor)) { startHighlighting(editor); } } } }
private void initEditors() { IWorkbenchPage[] pages= fWindow.getPages(); for (IWorkbenchPage page : pages) { IEditorReference[] editors= page.getEditorReferences(); for (IEditorReference editor2 : editors) { IEditorPart editor= editor2.getEditor(false); if (editor != null && page.isPartVisible(editor)) { startHighlighting(editor); } } } }
@Override public void run() { IWorkbenchWindow windows[] = getWorkbenchWindows(); for (IWorkbenchWindow window : windows) { IWorkbenchPage pages[] = window.getPages(); for (IWorkbenchPage page : pages) { IViewReference[] references = page.getViewReferences(); for (IViewReference reference : references) { if (reference.getView(false) != null) { ((ViewReference) reference).persist(); } } } } } });
private static boolean isOpened(IDocument document) { for(IWorkbenchWindow window : PlatformUI.getWorkbench().getWorkbenchWindows()) { for(IWorkbenchPage page : window.getPages()) { //page.getEditors() - this call restores all the pages content, didn't feel like doing so, unless // we can bring to life only the maven pom editors.. for(IEditorReference ref : page.getEditorReferences()) { IEditorPart editor = ref.getEditor(false); if(editor != null) { IDocument doc = editor.getAdapter(IDocument.class); if(doc != null && doc.equals(document)) { return true; } } } } } return false; }
@Inject(optional=true) protected void initialize(final IWorkbench workbench) { Assert.isNotNull(Display.getCurrent()); partListener = new PartListener(); pageListener = new PageListener(); for (IWorkbenchWindow window : workbench.getWorkbenchWindows()) { window.addPageListener(pageListener); for (IWorkbenchPage page : window.getPages()) { page.addPartListener(partListener); for (IEditorReference editorRef : page.getEditorReferences()) { Pair<URI, IXtextDocument> entry = getEntry(editorRef); if (entry != null) { resourceUri2document.put(entry.getFirst(), entry.getSecond()); } } } } }
public void run() { IWorkbenchPage[] pages = getSite().getWorkbenchWindow() .getPages(); for (int i = 0; i < pages.length; i++) { if (((FileEditorInput) editor.getEditorInput()) .getFile().getProject().equals( event.getResource())) { IEditorPart editorPart = pages[i].findEditor(editor .getEditorInput()); pages[i].closeEditor(editorPart, true); } } } });
/** * Returns a map from IFile to IDocument for all open, dirty editors. After creation this map * is not modified, so returning a non-synchronized map is ok. * * @return a map from IFile to IDocument for all open, dirty editors */ private Map<IFile, IDocument> evalNonFileBufferDocuments() { Map<IFile, IDocument> result= new HashMap<>(); IWorkbench workbench= SearchPlugin.getDefault().getWorkbench(); IWorkbenchWindow[] windows= workbench.getWorkbenchWindows(); for (IWorkbenchWindow window : windows) { IWorkbenchPage[] pages= window.getPages(); for (IWorkbenchPage page : pages) { IEditorReference[] editorRefs= page.getEditorReferences(); for (IEditorReference editorRef : editorRefs) { IEditorPart ep= editorRef.getEditor(false); if (ep instanceof ITextEditor && ep.isDirty()) { // only dirty editors evaluateTextEditor(result, ep); } } } } return result; }
final JavaEditor getEditor(IFile file) { FileEditorInput fei= new FileEditorInput(file); IWorkbench workbench= JavaPlugin.getDefault().getWorkbench(); IWorkbenchWindow[] windows= workbench.getWorkbenchWindows(); for (int i= 0; i < windows.length; i++) { IWorkbenchPage[] pages= windows[i].getPages(); for (int x= 0; x < pages.length; x++) { IEditorPart[] editors= pages[x].getDirtyEditors(); for (int z= 0; z < editors.length; z++) { IEditorPart ep= editors[z]; if (ep instanceof JavaEditor) { JavaEditor je= (JavaEditor) ep; if (fei.equals(je.getEditorInput())) return (JavaEditor) ep; } } } } return null; }
final JavaEditor getEditor(IFile file) { FileEditorInput fei= new FileEditorInput(file); IWorkbench workbench= JavaPlugin.getDefault().getWorkbench(); IWorkbenchWindow[] windows= workbench.getWorkbenchWindows(); for (int i= 0; i < windows.length; i++) { IWorkbenchPage[] pages= windows[i].getPages(); for (int x= 0; x < pages.length; x++) { IEditorPart[] editors= pages[x].getDirtyEditors(); for (int z= 0; z < editors.length; z++) { IEditorPart ep= editors[z]; if (ep instanceof JavaEditor) { JavaEditor je= (JavaEditor) ep; if (fei.equals(je.getEditorInput())) return (JavaEditor) ep; } } } } return null; }
final JavaEditor getEditor(IFile file) { FileEditorInput fei= new FileEditorInput(file); IWorkbench workbench= JavaPlugin.getDefault().getWorkbench(); IWorkbenchWindow[] windows= workbench.getWorkbenchWindows(); for (int i= 0; i < windows.length; i++) { IWorkbenchPage[] pages= windows[i].getPages(); for (int x= 0; x < pages.length; x++) { IEditorPart[] editors= pages[x].getDirtyEditors(); for (int z= 0; z < editors.length; z++) { IEditorPart ep= editors[z]; if (ep instanceof JavaEditor) { JavaEditor je= (JavaEditor) ep; if (fei.equals(je.getEditorInput())) return (JavaEditor) ep; } } } } return null; }
public void run() { IWorkbenchPage[] pages = getSite().getWorkbenchWindow() .getPages(); for (int i = 0; i < pages.length; i++) { if (((FileEditorInput) editor.getEditorInput()) .getFile().getProject().equals( event.getResource())) { IEditorPart editorPart = pages[i].findEditor(editor .getEditorInput()); pages[i].closeEditor(editorPart, true); } } } });
@Override public void run() { TAEConfiguratorPlugin plugin = TAEConfiguratorPlugin.getDefault(); Preferences prefs = plugin.getPluginPreferences(); boolean bFullyQualifiedTypeNames = !prefs .getBoolean(PreferencePage.P_SHOW_FULLY_QUALIFIED_NAMES); qualifiedTypesAction.setChecked(bFullyQualifiedTypeNames); prefs.setValue(PreferencePage.P_SHOW_FULLY_QUALIFIED_NAMES, bFullyQualifiedTypeNames); // mark all pages as stale for all editors, since this is a global setting IWorkbenchPage[] pages = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getPages(); for (int i = 0; i < pages.length; i++) { IWorkbenchPart[] editors = pages[i].getEditors(); for (int j = 0; j < editors.length; j++) { if (editors[j] != null && editors[j] instanceof MultiPageEditor) { ((MultiPageEditor) editors[j]).markAllPagesStale(); } } } } };