Index: src/org/eclipse/mtj/ui/internal/editors/jad/form/JADFormEditor.java =================================================================== --- src/org/eclipse/mtj/ui/internal/editors/jad/form/JADFormEditor.java (revision 549) +++ src/org/eclipse/mtj/ui/internal/editors/jad/form/JADFormEditor.java (working copy) @@ -49,17 +49,21 @@ import org.eclipse.mtj.ui.internal.editors.jad.form.pages.OverviewEditorPage; import org.eclipse.mtj.ui.internal.utils.ManifestPreferenceStore; import org.eclipse.ui.IEditorInput; +import org.eclipse.ui.IInPlaceEditor; +import org.eclipse.ui.IInPlaceEditorInput; import org.eclipse.ui.IStorageEditorInput; import org.eclipse.ui.PartInitException; import org.eclipse.ui.forms.editor.FormEditor; import org.eclipse.ui.forms.editor.IFormPage; +import org.eclipse.ui.part.FileEditorInput; +import org.eclipse.ui.part.FileInPlaceEditorInput; /** * Editor for specifying the properties of a MIDP application descriptor. * * @author Craig Setera */ -public class JADFormEditor extends FormEditor { +public class JADFormEditor extends FormEditor implements IInPlaceEditor { // all JAD editor page configuration elements private static JADEditorPageConfigElement[] jadEditorPageConfigElements; @@ -423,7 +427,13 @@ */ @Override protected void setInput(IEditorInput input) { - super.setInput(input); + if (input instanceof FileEditorInput) { + FileInPlaceEditorInput fipei = new FileInPlaceEditorInput( ((FileEditorInput)input).getFile()); + fipei.setInPlaceEditor(this); + super.setInput(fipei); + } else { + super.setInput(input); + } // Update the application descriptor instance if (input instanceof IStorageEditorInput) { @@ -447,4 +457,13 @@ } } } + + public void sourceChanged(IInPlaceEditorInput input) { + this.getSite().getPage().closeEditor(this, true); + } + + public void sourceDeleted() { + this.getSite().getPage().closeEditor(this, false); + } + }