Java Code Examples for org.eclipse.ui.IEditorPart#isDirty()
The following examples show how to use
org.eclipse.ui.IEditorPart#isDirty() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: RunAnalysisHandler.java From CogniCrypt with Eclipse Public License 2.0 | 6 votes |
@Override public Object execute(ExecutionEvent event) throws ExecutionException { final AnalysisKickOff akf = new AnalysisKickOff(); IEditorPart openEditor = UIUtils.getCurrentlyOpenEditor(); // check if there are unsaved changes if (openEditor != null && openEditor.isDirty()) { int answr = saveFile(Utils.getCurrentlyOpenFile()); // save file and analyze if (answr == JOptionPane.YES_OPTION) { openEditor.doSave(null); } // no analyze no save file else if (answr == JOptionPane.CLOSED_OPTION) { return null; } } if (akf.setUp(JavaCore.create(Utils.getCurrentlySelectedIProject()))) { akf.run(); } return null; }
Example 2
Source File: ModulaSearchUtils.java From xds-ide with Eclipse Public License 1.0 | 6 votes |
public static Map<IFile, IDocument> evalDirtyDocs(IFile filter) { Map<IFile, IDocument> result = new HashMap<IFile, IDocument>(); IWorkbench workbench = SearchCorePlugin.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++) { IEditorReference[] editorRefs = pages[x].getEditorReferences(); for (int z = 0; z < editorRefs.length; z++) { IEditorPart ep = editorRefs[z].getEditor(false); if (ep instanceof ITextEditor && ep.isDirty()) { // only // dirty // editors evaluateTextEditor(result, ep, filter); } } } } return result; }
Example 3
Source File: ResourceCloseManagement.java From birt with Eclipse Public License 1.0 | 6 votes |
private static void checkAndAddToEditorLists( List<IEditorPart> openedEditorRefs, List<IEditorPart> openedDirtyEditorRefs, IEditorReference fileRef ) { if ( fileRef != null ) { IEditorPart part = (IEditorPart) fileRef.getPart( false ); if ( part != null ) { if ( part.isDirty( ) ) { openedDirtyEditorRefs.add( part ); } openedEditorRefs.add( part ); } } }
Example 4
Source File: ResourceCloseManagement.java From birt with Eclipse Public License 1.0 | 5 votes |
/** * Saves any modified files after confirmation from the user (if needed). * * @return true if the files were saved, false otherwise. */ public static boolean checkAndSaveAllFiles( ) { ArrayList<IEditorPart> editorsToSave = new ArrayList<IEditorPart>( ); IWorkbench workbench = PlatformUI.getWorkbench( ); IWorkbenchWindow windows[] = workbench.getWorkbenchWindows( ); for ( int currWindow = 0; currWindow < windows.length; currWindow++ ) { IWorkbenchPage pages[] = windows[currWindow].getPages( ); for ( int currPage = 0; currPage < pages.length; currPage++ ) { IEditorReference editors[] = pages[currPage].getEditorReferences( ); for ( IEditorReference currEditorRef : editors ) { IEditorPart currEditor = currEditorRef.getEditor( false ); if ( currEditor != null && currEditor.isDirty( ) ) { editorsToSave.add( currEditor ); } } } } // Ask to save open files return checkAndSaveDirtyFiles( editorsToSave ); }
Example 5
Source File: SaveHelper.java From xtext-eclipse with Eclipse Public License 2.0 | 4 votes |
protected void saveDeclaringEditor(IRenameElementContext context, IWorkbenchPage workbenchPage) { IEditorPart declaringEditor = getOpenEditor(context.getTargetElementURI(), workbenchPage); if (declaringEditor != null && declaringEditor.isDirty()) declaringEditor.doSave(new NullProgressMonitor()); }
Example 6
Source File: BuilderUtilities.java From gwt-eclipse-plugin with Eclipse Public License 1.0 | 4 votes |
/** * Forces re-validation of a set of compilation units by the JDT Java Builder. * * @param cus the compilation units to re-validate * @param description a brief description of the external job that forcing the * re-validation. This shows up in the Eclipse status bar while * re-validation is taking place. */ public static void revalidateCompilationUnits( final Set<ICompilationUnit> cus, String description) { WorkspaceJob revalidateJob = new WorkspaceJob(description) { @Override public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException { final IWorkingCopyManager wcManager = JavaPlugin.getDefault().getWorkingCopyManager(); for (ICompilationUnit cu : cus) { if (!cu.getResource().exists()) { CorePluginLog.logWarning(MessageFormat.format( "Cannot revalidate non-existent compilation unit {0}", cu.getElementName())); continue; } final IEditorPart editorPart = getOpenEditor(cu); /* * If the .java file is open in an editor (without unsaved changes), * make a "null" edit by inserting an empty string at the top of the * file and then tell the editor to save. If incremental building is * enabled, this will trigger a re-validation of the file. */ if (editorPart != null && !editorPart.isDirty()) { // Need to do the editor stuff from the UI thread Display.getDefault().asyncExec(new Runnable() { public void run() { try { // Get the working copy open in the editor ICompilationUnit wc = wcManager.getWorkingCopy(editorPart.getEditorInput()); wc.getBuffer().replace(0, 0, ""); editorPart.doSave(new NullProgressMonitor()); } catch (JavaModelException e) { CorePluginLog.logError(e); } } }); } else { /* * If the .java file is not currently open, or if it's open with * unsaved changes, trigger re-validation by touching the underlying * resource. */ cu.getResource().touch(null); } } return StatusUtilities.OK_STATUS; } }; revalidateJob.schedule(); }
Example 7
Source File: PublishTemplateNavigatorAction.java From birt with Eclipse Public License 1.0 | 4 votes |
/** * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction) */ public void run( IAction action ) { IFile file = getSelectedFile( ); if ( file != null ) { String url = file.getLocation( ).toOSString( ); try { ModuleHandle handle = SessionHandleAdapter.getInstance( ) .getSessionHandle( ) .openDesign( url ); if ( handle == null ) { action.setEnabled( false ); return; } IEditorPart editor = org.eclipse.birt.report.designer.internal.ui.util.UIUtil.findOpenedEditor( url ); if ( editor != null && editor.isDirty( ) ) { MessageDialog md = new MessageDialog( UIUtil.getDefaultShell( ), Messages.getString( "PublishTemplateAction.SaveBeforeGenerating.dialog.title" ), //$NON-NLS-1$ null, Messages.getFormattedString( "PublishTemplateAction.SaveBeforeGenerating.dialog.message", new Object[]{file.getName( )} ), //$NON-NLS-1$ MessageDialog.CONFIRM, new String[]{ Messages.getString( "PublishTemplateAction.SaveBeforeGenerating.dialog.button.yes" ), //$NON-NLS-1$ Messages.getString( "PublishTemplateAction.SaveBeforeGenerating.dialog.button.no" ) //$NON-NLS-1$ }, 0 ); switch ( md.open( ) ) { case 0 : editor.doSave( null ); break; case 1 : default : } } WizardDialog dialog = new BaseWizardDialog( UIUtil.getDefaultShell( ), new PublishTemplateWizard( (ReportDesignHandle) handle ) ); dialog.setPageSize( 500, 250 ); dialog.open( ); handle.close( ); } catch ( Exception e ) { ExceptionUtil.handle( e ); return; } } else { action.setEnabled( false ); } }
Example 8
Source File: SaveCommandHandler.java From bonita-studio with GNU General Public License v2.0 | 4 votes |
protected boolean isDirty() { final IEditorPart part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor(); return part != null && part.isDirty(); }