|
Lines 18-35
Link Here
|
| 18 |
import org.eclipse.ant.internal.ui.model.AntModel; |
18 |
import org.eclipse.ant.internal.ui.model.AntModel; |
| 19 |
import org.eclipse.ant.internal.ui.model.IProblemRequestor; |
19 |
import org.eclipse.ant.internal.ui.model.IProblemRequestor; |
| 20 |
import org.eclipse.ant.internal.ui.model.LocationProvider; |
20 |
import org.eclipse.ant.internal.ui.model.LocationProvider; |
| 21 |
import org.eclipse.core.resources.IFile; |
21 |
|
| 22 |
import org.eclipse.core.runtime.CoreException; |
22 |
import org.eclipse.core.runtime.CoreException; |
|
|
23 |
|
| 24 |
import org.eclipse.core.resources.IFile; |
| 25 |
|
| 23 |
import org.eclipse.jface.text.IDocument; |
26 |
import org.eclipse.jface.text.IDocument; |
|
|
27 |
import org.eclipse.jface.text.IDocumentExtension3; |
| 24 |
import org.eclipse.jface.text.ISynchronizable; |
28 |
import org.eclipse.jface.text.ISynchronizable; |
| 25 |
import org.eclipse.jface.text.source.IAnnotationModel; |
29 |
import org.eclipse.jface.text.source.IAnnotationModel; |
| 26 |
import org.eclipse.ui.IEditorInput; |
30 |
|
| 27 |
import org.eclipse.ui.editors.text.TextFileDocumentProvider; |
31 |
import org.eclipse.ui.editors.text.TextFileDocumentProvider; |
|
|
32 |
|
| 33 |
import org.eclipse.ui.IEditorInput; |
| 28 |
import org.eclipse.ui.texteditor.IDocumentProvider; |
34 |
import org.eclipse.ui.texteditor.IDocumentProvider; |
| 29 |
|
35 |
|
| 30 |
public class AntEditorDocumentProvider extends TextFileDocumentProvider { |
36 |
public class AntEditorDocumentProvider extends TextFileDocumentProvider { |
| 31 |
|
37 |
|
| 32 |
/** |
38 |
private AntDocumentSetupParticipant fAntDocumentSetupParticipant; |
|
|
39 |
|
| 40 |
/** |
| 33 |
* Remembers a Ant document model for each element. |
41 |
* Remembers a Ant document model for each element. |
| 34 |
*/ |
42 |
*/ |
| 35 |
protected class AntFileInfo extends FileInfo { |
43 |
protected class AntFileInfo extends FileInfo { |
|
Lines 43-48
Link Here
|
| 43 |
public AntEditorDocumentProvider() { |
51 |
public AntEditorDocumentProvider() { |
| 44 |
IDocumentProvider provider= new TextFileDocumentProvider(new AntStorageDocumentProvider()); |
52 |
IDocumentProvider provider= new TextFileDocumentProvider(new AntStorageDocumentProvider()); |
| 45 |
setParentDocumentProvider(provider); |
53 |
setParentDocumentProvider(provider); |
|
|
54 |
fAntDocumentSetupParticipant= new AntDocumentSetupParticipant(); |
| 46 |
} |
55 |
} |
| 47 |
|
56 |
|
| 48 |
public AntModel getAntModel(Object element) { |
57 |
public AntModel getAntModel(Object element) { |
|
Lines 138-141
Link Here
|
| 138 |
protected FileInfo createEmptyFileInfo() { |
147 |
protected FileInfo createEmptyFileInfo() { |
| 139 |
return new AntFileInfo(); |
148 |
return new AntFileInfo(); |
| 140 |
} |
149 |
} |
|
|
150 |
|
| 151 |
/* |
| 152 |
* @see org.eclipse.ui.editors.text.TextFileDocumentProvider#connect(java.lang.Object) |
| 153 |
* @since 3.3 |
| 154 |
*/ |
| 155 |
public void connect(Object element) throws CoreException { |
| 156 |
super.connect(element); |
| 157 |
IDocument document= getDocument(element); |
| 158 |
if (document instanceof IDocumentExtension3) { |
| 159 |
IDocumentExtension3 extension= (IDocumentExtension3) document; |
| 160 |
if (extension.getDocumentPartitioner(AntDocumentSetupParticipant.ANT_PARTITIONING) == null) |
| 161 |
fAntDocumentSetupParticipant.setup(document); |
| 162 |
} |
| 163 |
} |
| 141 |
} |
164 |
} |