Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcvs2svn2004-10-19 09:36:42 +0000
committercvs2svn2004-10-19 09:36:42 +0000
commit8b5be967020cf9f851f530ee8f1fa2c9977ee551 (patch)
treedfdd245f6ad2827197f607c1a6d1d152078b7aab
parent8048882152e3dd8bb9dd4d25ae2968c9aba05fdb (diff)
downloadeclipse.platform.text-8b5be967020cf9f851f530ee8f1fa2c9977ee551.tar.gz
eclipse.platform.text-8b5be967020cf9f851f530ee8f1fa2c9977ee551.tar.xz
eclipse.platform.text-8b5be967020cf9f851f530ee8f1fa2c9977ee551.zip
This commit was manufactured by cvs2svn to create branch 'perf_213'.
Sprout from master 2004-04-14 15:46:14 UTC Dani Megert <dmegert> 'Initial Release - work in progress' Cherrypick from master 2004-10-19 09:36:41 UTC Kai Maetzel <kmaetzel> 'fixing tests': org.eclipse.core.filebuffers.tests/.settings/org.eclipse.jdt.core.prefs org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/FileTool.java org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/ResourceHelper.java org.eclipse.core.filebuffers.tests/test.xml org.eclipse.jface.text.tests/.settings/org.eclipse.jdt.core.prefs org.eclipse.jface.text.tests/test.xml org.eclipse.text.tests/.settings/org.eclipse.jdt.core.prefs org.eclipse.text.tests/src/org/eclipse/text/tests/Accessor.java org.eclipse.text.tests/test.xml org.eclipse.ui.editors.tests/.settings/org.eclipse.jdt.core.prefs org.eclipse.ui.editors.tests/test.xml org.eclipse.ui.workbench.texteditor.tests/.settings/org.eclipse.jdt.core.prefs org.eclipse.ui.workbench.texteditor.tests/test.xml Delete: org.eclipse.core.filebuffers/.classpath org.eclipse.core.filebuffers/.cvsignore org.eclipse.core.filebuffers/.project org.eclipse.core.filebuffers/about.html org.eclipse.core.filebuffers/build.properties org.eclipse.core.filebuffers/hglegal2003.htm org.eclipse.core.filebuffers/ngibmcpy2003.gif org.eclipse.core.filebuffers/plugin.properties org.eclipse.core.filebuffers/plugin.xml org.eclipse.core.filebuffers/schema/documentCreation.exsd org.eclipse.core.filebuffers/schema/documentSetup.exsd org.eclipse.core.filebuffers/scripts/exportplugin.xml org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/FileBuffers.java org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentFactory.java org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentSetupParticipant.java org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBuffer.java org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferListener.java org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferManager.java org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ISynchronizationContext.java org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBuffer.java org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBufferManager.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/AbstractFileBuffer.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ContainerGenerator.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/DefaultDocumentFactory.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ExtensionsRegistry.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/FileBuffersPlugin.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaFileBuffer.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaTextFileBuffer.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceFileBuffer.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceTextFileBuffer.java org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/TextFileBufferManager.java org.eclipse.jface.text/.classpath org.eclipse.jface.text/.cvsignore org.eclipse.jface.text/.options org.eclipse.jface.text/.project org.eclipse.jface.text/about.html org.eclipse.jface.text/build.properties org.eclipse.jface.text/plugin.properties org.eclipse.jface.text/plugin.xml org.eclipse.jface.text/projection/org/eclipse/jface/text/source/OutlinerRulerColumn.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionAnnotation.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionSourceViewer.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/AnnotationBag.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotation.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationHover.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionRulerColumn.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSummary.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSupport.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionViewer.java org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/SourceViewerInformationControl.java org.eclipse.jface.text/scripts/exportplugin.xml org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/AdditionalInfoController2.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/CompletionProposalPopup2.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/ContentAssistant2.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/ContextInformationPopup2.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/HTML2TextReader.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/HTMLTextPresenter.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/Helper2.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/IContentAssistListener2.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/IProposalListener.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/JFaceTextMessages2.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/LineBreakingReader.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/PopupCloser2.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/SingleCharReader.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/SubstitutionTextReader.java org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/AbstractHoverInformationControlManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/AbstractInformationControlManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/CursorLinePainter.java org.eclipse.jface.text/src/org/eclipse/jface/text/DefaultAutoIndentStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/DefaultInformationControl.java org.eclipse.jface.text/src/org/eclipse/jface/text/DefaultTextDoubleClickStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/DefaultUndoManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/DocumentAdapter.java org.eclipse.jface.text/src/org/eclipse/jface/text/DocumentCommand.java org.eclipse.jface.text/src/org/eclipse/jface/text/IAutoEditStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/IAutoIndentStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/IDocumentAdapter.java org.eclipse.jface.text/src/org/eclipse/jface/text/IDocumentAdapterExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/IEventConsumer.java org.eclipse.jface.text/src/org/eclipse/jface/text/IFindReplaceTarget.java org.eclipse.jface.text/src/org/eclipse/jface/text/IFindReplaceTargetExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/IFindReplaceTargetExtension3.java org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControl.java org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlCreator.java org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlCreatorExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlExtension2.java org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlExtension3.java org.eclipse.jface.text/src/org/eclipse/jface/text/IMarkRegionTarget.java org.eclipse.jface.text/src/org/eclipse/jface/text/IMarkSelection.java org.eclipse.jface.text/src/org/eclipse/jface/text/IPaintPositionManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/IPainter.java org.eclipse.jface.text/src/org/eclipse/jface/text/IRewriteTarget.java org.eclipse.jface.text/src/org/eclipse/jface/text/ISelectionValidator.java org.eclipse.jface.text/src/org/eclipse/jface/text/ISynchronizable.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextDoubleClickStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextHover.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextHoverExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextInputListener.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextListener.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextOperationTarget.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextOperationTargetExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextPresentationListener.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextSelection.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewer.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension2.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension3.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension4.java org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension5.java org.eclipse.jface.text/src/org/eclipse/jface/text/IUndoManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/IViewportListener.java org.eclipse.jface.text/src/org/eclipse/jface/text/IWidgetTokenKeeper.java org.eclipse.jface.text/src/org/eclipse/jface/text/IWidgetTokenKeeperExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/IWidgetTokenOwner.java org.eclipse.jface.text/src/org/eclipse/jface/text/IWidgetTokenOwnerExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/JFaceTextMessages.java org.eclipse.jface.text/src/org/eclipse/jface/text/JFaceTextMessages.properties org.eclipse.jface.text/src/org/eclipse/jface/text/MarginPainter.java org.eclipse.jface.text/src/org/eclipse/jface/text/MarkSelection.java org.eclipse.jface.text/src/org/eclipse/jface/text/PaintManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/PropagatingFontFieldEditor.java org.eclipse.jface.text/src/org/eclipse/jface/text/TextAttribute.java org.eclipse.jface.text/src/org/eclipse/jface/text/TextEvent.java org.eclipse.jface.text/src/org/eclipse/jface/text/TextPresentation.java org.eclipse.jface.text/src/org/eclipse/jface/text/TextSelection.java org.eclipse.jface.text/src/org/eclipse/jface/text/TextViewer.java org.eclipse.jface.text/src/org/eclipse/jface/text/TextViewerHoverManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/AbstractControlContentAssistSubjectAdapter.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/AdditionalInfoController.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ComboContentAssistSubjectAdapter.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/CompletionProposal.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContentAssistSubjectAdapter.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContentAssistant.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformation.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformationPopup.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformationValidator.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/Helper.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ICompletionProposal.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ICompletionProposalExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ICompletionProposalExtension2.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ICompletionProposalExtension3.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistListener.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistProcessor.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistProcessorExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistSubject.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistant.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistantExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformation.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationPresenter.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationPresenterExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationValidator.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationValidatorExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/JFaceTextMessages.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/PopupCloser.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/TextContentAssistSubjectAdapter.java org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/images/content_assist_cue.gif org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/images/error_small.gif org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/ContentFormatter.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/ContextBasedFormattingStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/FormattingContext.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/FormattingContextProperties.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IContentFormatter.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IContentFormatterExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IContentFormatterExtension2.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IFormattingContext.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IFormattingStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IFormattingStrategyExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/MultiPassContentFormatter.java org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationPresenter.java org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationPresenterExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationProvider.java org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationProviderExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationProviderExtension2.java org.eclipse.jface.text/src/org/eclipse/jface/text/information/InformationPresenter.java org.eclipse.jface.text/src/org/eclipse/jface/text/information/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/link/LinkedPositionAnnotations.java org.eclipse.jface.text/src/org/eclipse/jface/text/link/LinkedUIControl.java org.eclipse.jface.text/src/org/eclipse/jface/text/link/ProposalPosition.java org.eclipse.jface.text/src/org/eclipse/jface/text/link/TabStopIterator.java org.eclipse.jface.text/src/org/eclipse/jface/text/link/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/IPresentationDamager.java org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/IPresentationReconciler.java org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/IPresentationReconcilerExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/IPresentationRepairer.java org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/PresentationReconciler.java org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/AbstractReconcileStep.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/AbstractReconciler.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/CompositeReconcilingStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/DirtyRegion.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/DirtyRegionQueue.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/DocumentAdapter.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcilableModel.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcileResult.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcileStep.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconciler.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcilerExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcilingStrategy.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcilingStrategyExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/MonoReconciler.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/Reconciler.java org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/rules/BufferedRuleBasedScanner.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/DefaultDamagerRepairer.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/DefaultPartitioner.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/EndOfLineRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/ICharacterScanner.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IPartitionTokenScanner.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IPredicateRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IToken.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/ITokenScanner.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IWhitespaceDetector.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IWordDetector.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/MultiLineRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/NumberRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/PatternRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/RuleBasedDamagerRepairer.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/RuleBasedPartitionScanner.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/RuleBasedPartitioner.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/RuleBasedScanner.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/SingleLineRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/Token.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/WhitespaceRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/WordPatternRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/WordRule.java org.eclipse.jface.text/src/org/eclipse/jface/text/rules/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/source/Annotation.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationBarHoverManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationColumn.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationEvent.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationMap.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationModel.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationModelEvent.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationPainter.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationRulerColumn.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ChangeRulerColumn.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/CompositeRuler.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationAccess.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationAccessExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationHover.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationHoverExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationHoverExtension2.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationListener.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationMap.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationModel.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationModelExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationModelListener.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationModelListenerExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationPresentation.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IChangeRulerColumn.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ICharacterPairMatcher.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ILineDiffInfo.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ILineDiffer.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IOverviewRuler.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ISharedTextColors.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ISourceViewer.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ISourceViewerExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ISourceViewerExtension2.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ITagHandler.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ITagHandlerFactory.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ITranslator.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/ITranslatorResultCollector.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRuler.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRulerColumn.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRulerExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRulerInfo.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRulerInfoExtension.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/JFaceTextMessages.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineChangeHover.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineNumberChangeRulerColumn.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineNumberRulerColumn.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/OverviewRuler.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/OverviewRulerHoverManager.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/SourceViewer.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/SourceViewerConfiguration.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/TagHandlerFactory.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/VerticalRuler.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/VisualAnnotationModel.java org.eclipse.jface.text/src/org/eclipse/jface/text/source/package.html org.eclipse.jface.text/src/org/eclipse/jface/text/templates/ContextTypeRegistry.java org.eclipse.jface.text/src/org/eclipse/jface/text/templates/PositionBasedCompletionProposal.java org.eclipse.jface.text/src/org/eclipse/jface/text/templates/TemplateCompletionProcessor.java org.eclipse.jface.text/src/org/eclipse/jface/text/templates/TemplateProposal.java org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateMessages.java org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateMessages.properties org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplatePersistenceData.java org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateReaderWriter.java org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateSet.java org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateStore.java org.eclipse.search.tests/.classpath org.eclipse.search.tests/.cvsignore org.eclipse.search.tests/.project org.eclipse.search.tests/.template org.eclipse.search.tests/build.properties org.eclipse.search.tests/plugin.xml org.eclipse.search.tests/src/org/eclipse/search/core/tests/AllSearchModelTests.java org.eclipse.search.tests/src/org/eclipse/search/core/tests/LongQuery.java org.eclipse.search.tests/src/org/eclipse/search/core/tests/NullQuery.java org.eclipse.search.tests/src/org/eclipse/search/core/tests/NullSearchResult.java org.eclipse.search.tests/src/org/eclipse/search/core/tests/QueryManagerTest.java org.eclipse.search.tests/src/org/eclipse/search/core/tests/TestSearchResult.java org.eclipse.search.tests/src/org/eclipse/search/tests/AllSearchTests.java org.eclipse.search.tests/src/org/eclipse/search/tests/SearchTestPlugin.java org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/AllFileSearchTests.java org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/AnnotationManagerTest.java org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/SearchResultPageTest.java org.eclipse.search.tests/testresources/junit37-noUI-src.zip org.eclipse.search/.classpath org.eclipse.search/.cvsignore org.eclipse.search/.project org.eclipse.search/about.html org.eclipse.search/build.properties org.eclipse.search/buildnotes_search.html org.eclipse.search/hglegal2003.htm org.eclipse.search/icons/full/clcl16/flatLayout.gif org.eclipse.search/icons/full/clcl16/hierarchicalLayout.gif org.eclipse.search/icons/full/clcl16/search_goto.gif org.eclipse.search/icons/full/clcl16/search_history.gif org.eclipse.search/icons/full/clcl16/search_next.gif org.eclipse.search/icons/full/clcl16/search_prev.gif org.eclipse.search/icons/full/clcl16/search_rem.gif org.eclipse.search/icons/full/clcl16/search_remall.gif org.eclipse.search/icons/full/clcl16/search_sortmatch.gif org.eclipse.search/icons/full/clcl16/stop.gif org.eclipse.search/icons/full/ctool16/search.gif org.eclipse.search/icons/full/cview16/searchres.gif org.eclipse.search/icons/full/dlcl16/flatLayout.gif org.eclipse.search/icons/full/dlcl16/hierarchicalLayout.gif org.eclipse.search/icons/full/dlcl16/search_goto.gif org.eclipse.search/icons/full/dlcl16/search_history.gif org.eclipse.search/icons/full/dlcl16/search_next.gif org.eclipse.search/icons/full/dlcl16/search_prev.gif org.eclipse.search/icons/full/dlcl16/search_rem.gif org.eclipse.search/icons/full/dlcl16/search_remall.gif org.eclipse.search/icons/full/dlcl16/search_sortmatch.gif org.eclipse.search/icons/full/dlcl16/stop.gif org.eclipse.search/icons/full/dtool16/search.gif org.eclipse.search/icons/full/elcl16/flatLayout.gif org.eclipse.search/icons/full/elcl16/hierarchicalLayout.gif org.eclipse.search/icons/full/elcl16/search_goto.gif org.eclipse.search/icons/full/elcl16/search_history.gif org.eclipse.search/icons/full/elcl16/search_next.gif org.eclipse.search/icons/full/elcl16/search_prev.gif org.eclipse.search/icons/full/elcl16/search_rem.gif org.eclipse.search/icons/full/elcl16/search_remall.gif org.eclipse.search/icons/full/elcl16/search_sortmatch.gif org.eclipse.search/icons/full/elcl16/stop.gif org.eclipse.search/icons/full/etool16/search.gif org.eclipse.search/icons/full/eview16/searchres.gif org.eclipse.search/icons/full/obj16/searchm_obj.gif org.eclipse.search/icons/full/obj16/tsearch_dpdn_obj.gif org.eclipse.search/icons/full/obj16/tsearch_obj.gif org.eclipse.search/new search/org/eclipse/search/ui/IQueryListener.java org.eclipse.search/new search/org/eclipse/search/ui/ISearchQuery.java org.eclipse.search/new search/org/eclipse/search/ui/ISearchResult.java org.eclipse.search/new search/org/eclipse/search/ui/ISearchResultListener.java org.eclipse.search/new search/org/eclipse/search/ui/ISearchResultPage.java org.eclipse.search/new search/org/eclipse/search/ui/ISearchResultViewPart.java org.eclipse.search/new search/org/eclipse/search/ui/NewSearchUI.java org.eclipse.search/new search/org/eclipse/search/ui/SearchResultEvent.java org.eclipse.search/new search/org/eclipse/search/ui/package.html org.eclipse.search/new search/org/eclipse/search/ui/text/AbstractTextSearchResult.java org.eclipse.search/new search/org/eclipse/search/ui/text/AbstractTextSearchViewPage.java org.eclipse.search/new search/org/eclipse/search/ui/text/Match.java org.eclipse.search/new search/org/eclipse/search/ui/text/MatchEvent.java org.eclipse.search/new search/org/eclipse/search/ui/text/RemoveAllEvent.java org.eclipse.search/new search/org/eclipse/search/ui/text/package.html org.eclipse.search/new search/org/eclipse/search2/internal/ui/CancelSearchAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/InternalSearchUI.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/ListDialog.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/QueryManager.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/RemoveAllSearchesAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchAgainAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchDropDownAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchMessages.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchMessages.properties org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchPageRegistry.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchView.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/ShowSearchAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/ShowSearchesAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/ThrottlingProgressMonitor.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/INavigate.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/RemoveAllResultsAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/RemoveMatchAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/SearchResultsTableViewer.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/SearchResultsTreeViewer.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/SetLayoutAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/ShowNextResultAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/ShowPreviousResultAction.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/text/AnnotationManager.java org.eclipse.search/new search/org/eclipse/search2/internal/ui/text/PositionTracker.java org.eclipse.search/ngibmcpy2003.gif org.eclipse.search/old_buildnotes_search_2.1.html org.eclipse.search/old_buildnotes_search_2_0.html org.eclipse.search/plugin.properties org.eclipse.search/plugin.xml org.eclipse.search/schema/searchPages.exsd org.eclipse.search/schema/searchResultSorters.exsd org.eclipse.search/schema/searchResultViewPages.exsd org.eclipse.search/scripts/exportplugin.xml org.eclipse.search/search/org/eclipse/search/internal/core/ISearchScope.java org.eclipse.search/search/org/eclipse/search/internal/core/SearchScope.java org.eclipse.search/search/org/eclipse/search/internal/core/text/AmountOfWorkCalculator.java org.eclipse.search/search/org/eclipse/search/internal/core/text/FileMatchCollector.java org.eclipse.search/search/org/eclipse/search/internal/core/text/IMatchCollector.java org.eclipse.search/search/org/eclipse/search/internal/core/text/ITextSearchResultCollector.java org.eclipse.search/search/org/eclipse/search/internal/core/text/MatchLocator.java org.eclipse.search/search/org/eclipse/search/internal/core/text/TextSearchEngine.java org.eclipse.search/search/org/eclipse/search/internal/core/text/TextSearchScope.java org.eclipse.search/search/org/eclipse/search/internal/core/text/TextSearchVisitor.java org.eclipse.search/search/org/eclipse/search/internal/core/text/TypedResourceVisitor.java org.eclipse.search/search/org/eclipse/search/internal/ui/CopyToClipboardAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/GotoMarkerAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/ISearchHelpContextIds.java org.eclipse.search/search/org/eclipse/search/internal/ui/OpenFileSearchPageAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/OpenSearchDialogAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/RemoveAllResultsAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/RemoveAllSearchesAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/RemoveMatchAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/RemovePotentialMatchesAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/RemoveResultAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/ResourceToItemsMapper.java org.eclipse.search/search/org/eclipse/search/internal/ui/ScopePart.java org.eclipse.search/search/org/eclipse/search/internal/ui/Search.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchAgainAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchDialog.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchDropDownAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchManager.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchMessages.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchMessages.properties org.eclipse.search/search/org/eclipse/search/internal/ui/SearchPageDescriptor.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchPlugin.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchPluginImages.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchPreferencePage.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultContentProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultLabelProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultView.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultViewEntry.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultViewEntryAdapterFactory.java org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultViewer.java org.eclipse.search/search/org/eclipse/search/internal/ui/SelectAllAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/ShowNextResultAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/ShowPreviousResultAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/ShowSearchAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/ShowSearchesAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/SortDropDownAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/SorterDescriptor.java org.eclipse.search/search/org/eclipse/search/internal/ui/WorkInProgressPreferencePage.java org.eclipse.search/search/org/eclipse/search/internal/ui/WorkingSetComparator.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/DelegatingLabelProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileContentProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileLabelProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileMatch.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchDescription.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchPage.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchQuery.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchResult.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileTableContentProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileTreeContentProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/GotoMarkerAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/GroupByKeyComputer.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/NameSorter.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/NewTextSearchActionGroup.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/PathSorter.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/ReplaceAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/ReplaceAction2.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/ReplaceDialog.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/ReplaceDialog2.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/ResourcePathSorter.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/ResourcenameSorter.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/SearchAgainConfirmationDialog.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/SortAction.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchActionGroup.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchOperation.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchPage.java org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchResultCollector.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/ComboFieldEditor.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/ExceptionHandler.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/ExtendedDialogWindow.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/FileLabelProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/FileTypeEditor.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/ListContentProvider.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/ListDialog.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/MessageLine.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/PixelConverter.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/RowLayouter.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/SWTUtil.java org.eclipse.search/search/org/eclipse/search/internal/ui/util/TypeFilteringDialog.java org.eclipse.search/search/org/eclipse/search/ui/IActionGroupFactory.java org.eclipse.search/search/org/eclipse/search/ui/IContextMenuConstants.java org.eclipse.search/search/org/eclipse/search/ui/IContextMenuContributor.java org.eclipse.search/search/org/eclipse/search/ui/IGroupByKeyComputer.java org.eclipse.search/search/org/eclipse/search/ui/IReplacePage.java org.eclipse.search/search/org/eclipse/search/ui/ISearchPage.java org.eclipse.search/search/org/eclipse/search/ui/ISearchPageContainer.java org.eclipse.search/search/org/eclipse/search/ui/ISearchPageScoreComputer.java org.eclipse.search/search/org/eclipse/search/ui/ISearchResultView.java org.eclipse.search/search/org/eclipse/search/ui/ISearchResultViewEntry.java org.eclipse.search/search/org/eclipse/search/ui/SearchUI.java org.eclipse.search/search/org/eclipse/search/ui/package.html org.eclipse.text/.classpath org.eclipse.text/.cvsignore org.eclipse.text/.project org.eclipse.text/about.html org.eclipse.text/build.properties org.eclipse.text/plugin.properties org.eclipse.text/plugin.xml org.eclipse.text/projection/org/eclipse/jface/text/CoordinatesTranslator.java org.eclipse.text/projection/org/eclipse/jface/text/Fragment.java org.eclipse.text/projection/org/eclipse/jface/text/FragmentUpdater.java org.eclipse.text/projection/org/eclipse/jface/text/ProjectionDocument.java org.eclipse.text/projection/org/eclipse/jface/text/ProjectionDocumentManager.java org.eclipse.text/projection/org/eclipse/jface/text/ProjectionPosition.java org.eclipse.text/projection/org/eclipse/jface/text/ProjectionPositionUpdater.java org.eclipse.text/projection/org/eclipse/jface/text/ProjectionTextStore.java org.eclipse.text/projection/org/eclipse/jface/text/projection/ChildDocument.java org.eclipse.text/projection/org/eclipse/jface/text/projection/ChildDocumentManager.java org.eclipse.text/projection/org/eclipse/jface/text/projection/Fragment.java org.eclipse.text/projection/org/eclipse/jface/text/projection/FragmentUpdater.java org.eclipse.text/projection/org/eclipse/jface/text/projection/IMinimalMapping.java org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionDocument.java org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionDocumentEvent.java org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionDocumentManager.java org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionMapping.java org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionTextStore.java org.eclipse.text/projection/org/eclipse/jface/text/projection/Segment.java org.eclipse.text/projection/org/eclipse/jface/text/projection/SegmentUpdater.java org.eclipse.text/scripts/exportplugin.xml org.eclipse.text/src/org/eclipse/jface/text/AbstractDocument.java org.eclipse.text/src/org/eclipse/jface/text/AbstractLineTracker.java org.eclipse.text/src/org/eclipse/jface/text/Assert.java org.eclipse.text/src/org/eclipse/jface/text/BadLocationException.java org.eclipse.text/src/org/eclipse/jface/text/BadPartitioningException.java org.eclipse.text/src/org/eclipse/jface/text/BadPositionCategoryException.java org.eclipse.text/src/org/eclipse/jface/text/ChildDocument.java org.eclipse.text/src/org/eclipse/jface/text/ChildDocumentManager.java org.eclipse.text/src/org/eclipse/jface/text/ConfigurableLineTracker.java org.eclipse.text/src/org/eclipse/jface/text/DefaultLineTracker.java org.eclipse.text/src/org/eclipse/jface/text/DefaultPositionUpdater.java org.eclipse.text/src/org/eclipse/jface/text/Document.java org.eclipse.text/src/org/eclipse/jface/text/DocumentEvent.java org.eclipse.text/src/org/eclipse/jface/text/DocumentPartitioningChangedEvent.java org.eclipse.text/src/org/eclipse/jface/text/FindReplaceDocumentAdapter.java org.eclipse.text/src/org/eclipse/jface/text/FindReplaceOperationCode.java org.eclipse.text/src/org/eclipse/jface/text/GapTextStore.java org.eclipse.text/src/org/eclipse/jface/text/IDocument.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentExtension.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentExtension2.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentExtension3.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentInformationMapping.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentInformationMappingExtension.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentListener.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitioner.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitionerExtension.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitionerExtension2.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitioningListener.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitioningListenerExtension.java org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitioningListenerExtension2.java org.eclipse.text/src/org/eclipse/jface/text/ILineTracker.java org.eclipse.text/src/org/eclipse/jface/text/IPositionUpdater.java org.eclipse.text/src/org/eclipse/jface/text/IRegion.java org.eclipse.text/src/org/eclipse/jface/text/IRepairableDocument.java org.eclipse.text/src/org/eclipse/jface/text/ISlaveDocumentManager.java org.eclipse.text/src/org/eclipse/jface/text/ISlaveDocumentManagerExtension.java org.eclipse.text/src/org/eclipse/jface/text/ITextStore.java org.eclipse.text/src/org/eclipse/jface/text/ITypedRegion.java org.eclipse.text/src/org/eclipse/jface/text/Line.java org.eclipse.text/src/org/eclipse/jface/text/ParentChildMapping.java org.eclipse.text/src/org/eclipse/jface/text/Position.java org.eclipse.text/src/org/eclipse/jface/text/Region.java org.eclipse.text/src/org/eclipse/jface/text/SequentialRewriteTextStore.java org.eclipse.text/src/org/eclipse/jface/text/SlaveDocumentEvent.java org.eclipse.text/src/org/eclipse/jface/text/TextUtilities.java org.eclipse.text/src/org/eclipse/jface/text/TypedPosition.java org.eclipse.text/src/org/eclipse/jface/text/TypedRegion.java org.eclipse.text/src/org/eclipse/jface/text/link/ExclusivePositionUpdater.java org.eclipse.text/src/org/eclipse/jface/text/link/ILinkedListener.java org.eclipse.text/src/org/eclipse/jface/text/link/InclusivePositionUpdater.java org.eclipse.text/src/org/eclipse/jface/text/link/LinkedEnvironment.java org.eclipse.text/src/org/eclipse/jface/text/link/LinkedManager.java org.eclipse.text/src/org/eclipse/jface/text/link/LinkedPosition.java org.eclipse.text/src/org/eclipse/jface/text/link/LinkedPositionGroup.java org.eclipse.text/src/org/eclipse/jface/text/link/package.html org.eclipse.text/src/org/eclipse/jface/text/templates/ContextType.java org.eclipse.text/src/org/eclipse/jface/text/templates/DocumentTemplateContext.java org.eclipse.text/src/org/eclipse/jface/text/templates/GlobalVariables.java org.eclipse.text/src/org/eclipse/jface/text/templates/SimpleVariableResolver.java org.eclipse.text/src/org/eclipse/jface/text/templates/Template.java org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateBuffer.java org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateContext.java org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateException.java org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateMessages.java org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateMessages.properties org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateTranslator.java org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateVariable.java org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateVariableResolver.java org.eclipse.text/src/org/eclipse/text/edits/CopySourceEdit.java org.eclipse.text/src/org/eclipse/text/edits/CopyTargetEdit.java org.eclipse.text/src/org/eclipse/text/edits/CopyingRangeMarker.java org.eclipse.text/src/org/eclipse/text/edits/DeleteEdit.java org.eclipse.text/src/org/eclipse/text/edits/EditDocument.java org.eclipse.text/src/org/eclipse/text/edits/ISourceModifier.java org.eclipse.text/src/org/eclipse/text/edits/InsertEdit.java org.eclipse.text/src/org/eclipse/text/edits/MalformedTreeException.java org.eclipse.text/src/org/eclipse/text/edits/Messages.properties org.eclipse.text/src/org/eclipse/text/edits/MoveSourceEdit.java org.eclipse.text/src/org/eclipse/text/edits/MoveTargetEdit.java org.eclipse.text/src/org/eclipse/text/edits/MultiTextEdit.java org.eclipse.text/src/org/eclipse/text/edits/RangeMarker.java org.eclipse.text/src/org/eclipse/text/edits/ReplaceEdit.java org.eclipse.text/src/org/eclipse/text/edits/TextEdit.java org.eclipse.text/src/org/eclipse/text/edits/TextEditCopier.java org.eclipse.text/src/org/eclipse/text/edits/TextEditGroup.java org.eclipse.text/src/org/eclipse/text/edits/TextEditMessages.java org.eclipse.text/src/org/eclipse/text/edits/TextEditProcessor.java org.eclipse.text/src/org/eclipse/text/edits/TextEditVisitor.java org.eclipse.text/src/org/eclipse/text/edits/TreeIterationInfo.java org.eclipse.text/src/org/eclipse/text/edits/UndoCollector.java org.eclipse.text/src/org/eclipse/text/edits/UndoEdit.java org.eclipse.ui.editors/.classpath org.eclipse.ui.editors/.cvsignore org.eclipse.ui.editors/.project org.eclipse.ui.editors/_buildnotes_text_2_0.html org.eclipse.ui.editors/_buildnotes_text_2_1.html org.eclipse.ui.editors/about.html org.eclipse.ui.editors/build.properties org.eclipse.ui.editors/buildnotes_text.html org.eclipse.ui.editors/icons/full/ctool16/last_edit_pos.gif org.eclipse.ui.editors/icons/full/ctool16/next_nav.gif org.eclipse.ui.editors/icons/full/ctool16/prev_nav.gif org.eclipse.ui.editors/icons/full/dtool16/last_edit_pos.gif org.eclipse.ui.editors/icons/full/dtool16/next_nav.gif org.eclipse.ui.editors/icons/full/dtool16/prev_nav.gif org.eclipse.ui.editors/icons/full/etool16/last_edit_pos.gif org.eclipse.ui.editors/icons/full/etool16/next_nav.gif org.eclipse.ui.editors/icons/full/etool16/prev_nav.gif org.eclipse.ui.editors/icons/full/obj16/file_obj.gif org.eclipse.ui.editors/migration_guidelines.html org.eclipse.ui.editors/plugin.properties org.eclipse.ui.editors/plugin.xml org.eclipse.ui.editors/schema/annotationTypes.exsd org.eclipse.ui.editors/schema/documentProviders.exsd org.eclipse.ui.editors/schema/markerAnnotationSpecification.exsd org.eclipse.ui.editors/schema/markerUpdaters.exsd org.eclipse.ui.editors/schema/templates.exsd org.eclipse.ui.editors/scripts/exportplugin.xml org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/DefaultEncodingSupport.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/EditorsUI.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/EncodingActionGroup.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/FileDocumentProvider.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IEncodingActionsConstants.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IEncodingActionsDefinitionIds.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IEncodingActionsHelpContextIds.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IEncodingSupport.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/ILocationProvider.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/ISchedulingRuleProvider.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IStorageDocumentProvider.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/ITextEditorHelpContextIds.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/StorageDocumentProvider.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditor.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorActionContributor.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorMessages.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorMessages.properties org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorPreferenceConstants.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorPreferencePage.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextFileDocumentProvider.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextSourceViewerConfiguration.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/UISynchronizationContext.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/WorkspaceOperationRunner.java org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/package.html org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/quickdiff/LastSaveReferenceProvider.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/quickdiff/QuickDiffMessages.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/quickdiff/QuickDiffMessages.properties org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/ColorEditor.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/EditorsPlugin.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/FileEditorInputAdapterFactory.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/IEditorsStatusConstants.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/JavaFileEditorInput.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/NextPreviousPulldownActionDelegate.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/NextPulldownActionDelegate.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/OpenExternalFileAction.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/OverlayPreferenceStore.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/PreviousPulldownActionDelegate.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/SharedTextColors.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/StatusInfo.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TabFolderLayout.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TextEditorMessages.java org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TextEditorMessages.properties org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TextEditorPreferencePage2.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractMarkerAnnotationModel.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AddMarkerAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AddTaskAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AnnotationPreferenceLookup.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AnnotationType.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AnnotationTypeHierarchy.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AnnotationTypeLookup.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/BasicMarkerUpdater.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/BookmarkRulerAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/DefaultMarkerAnnotationAccess.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/DelegatingAnnotationPreference.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/DocumentProviderRegistry.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/ExtendedTextEditor.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/ExtendedTextEditorPreferenceConstants.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/IMarkerUpdater.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/ImageUtilities.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerAnnotation.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerAnnotationPreferences.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerRulerAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerRulerInfoAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerUpdater.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerUtilities.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/ResourceMarkerAnnotationModel.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/SelectMarkerRulerAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/SelectMarkerRulerInfoAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/SelectRulerAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/TaskRulerAction.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/TextEditorMessages.java org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/TextEditorMessages.properties org.eclipse.ui.examples.javaeditor/.classpath org.eclipse.ui.examples.javaeditor/.cvsignore org.eclipse.ui.examples.javaeditor/.project org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaActionContributor.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaAnnotationHover.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaContentOutlinePage.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaDocumentSetupParticipant.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaEditor.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaEditorExamplePlugin.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaEditorMessages.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaEditorMessages.properties org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaPartitionScanner.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaSourceViewerConfiguration.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaTextHover.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/PresentationAction.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaAutoIndentStrategy.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaCodeScanner.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaCompletionProcessor.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaDoubleClickSelector.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaEditorMessages.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/javadoc/JavaDocCompletionProcessor.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/javadoc/JavaDocScanner.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/togglepresentation.gif org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/util/JavaColorProvider.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/util/JavaWhitespaceDetector.java org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/util/JavaWordDetector.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/ColorManager.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/IXMLColorConstants.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/NonRuleBasedDamagerRepairer.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TagRule.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TemplateEditor.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TemplateEditorUI.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TemplateMessages.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TemplateMessages.properties org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLConfiguration.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLDocumentProvider.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLDoubleClickStrategy.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLPartitionScanner.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLScanner.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLTagScanner.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLWhitespaceDetector.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/preferences/TemplatesPreferencePage.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/template/AntVariableResolver.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/template/XMLCompletionProcessor.java org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/template/XMLContextType.java org.eclipse.ui.examples.javaeditor/about.html org.eclipse.ui.examples.javaeditor/build.properties org.eclipse.ui.examples.javaeditor/doc-html/hglegal.htm org.eclipse.ui.examples.javaeditor/doc-html/hglegal2002.htm org.eclipse.ui.examples.javaeditor/doc-html/hglegal2003.htm org.eclipse.ui.examples.javaeditor/doc-html/ngibmcpy.gif org.eclipse.ui.examples.javaeditor/doc-html/ngibmcpy2002.gif org.eclipse.ui.examples.javaeditor/doc-html/ngibmcpy2003.gif org.eclipse.ui.examples.javaeditor/doc-html/ui_javaeditor_ex.html org.eclipse.ui.examples.javaeditor/doc-html/ui_templateeditor_ex.html org.eclipse.ui.examples.javaeditor/icons/obj16/java.gif org.eclipse.ui.examples.javaeditor/icons/resolver.gif org.eclipse.ui.examples.javaeditor/icons/sample.gif org.eclipse.ui.examples.javaeditor/icons/template.gif org.eclipse.ui.examples.javaeditor/plugin.properties org.eclipse.ui.examples.javaeditor/plugin.xml org.eclipse.ui.examples.javaeditor/templates/ant.properties org.eclipse.ui.examples.javaeditor/templates/ant.xml org.eclipse.ui.workbench.texteditor/.classpath org.eclipse.ui.workbench.texteditor/.cvsignore org.eclipse.ui.workbench.texteditor/.project org.eclipse.ui.workbench.texteditor/about.html org.eclipse.ui.workbench.texteditor/build.properties org.eclipse.ui.workbench.texteditor/icons/full/ctool16/segment_edit.gif org.eclipse.ui.workbench.texteditor/icons/full/dtool16/segment_edit.gif org.eclipse.ui.workbench.texteditor/icons/full/etool16/segment_edit.gif org.eclipse.ui.workbench.texteditor/plugin.properties org.eclipse.ui.workbench.texteditor/plugin.xml org.eclipse.ui.workbench.texteditor/schema/quickDiffReferenceProvider.exsd org.eclipse.ui.workbench.texteditor/scripts/exportplugin.xml org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/AnnotationExpandHover.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/AnnotationExpansionControl.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/EditPosition.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/EditorMessages.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/EditorMessages.properties org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/GotoLastEditPositionAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/LinearLayouter.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/TextEditorPlugin.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/DiffRegion.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/DocumentLineDiffer.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/QuickDiffMessages.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/QuickDiffMessages.properties org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/QuickDiffRestoreAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/ReferenceSelectionAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/RestoreAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/RevertBlockAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/RevertLineAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/RevertSelectionAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/DifferencesIterator.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/DocLineComparator.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/IRangeComparator.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/ITokenComparator.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/LinkedRangeDifference.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/RangeDifference.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/RangeDifferencer.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/package.html org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/package.html org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/AbstractDocumentProvider.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/AbstractRulerActionDelegate.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/AbstractTextEditor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/AnnotationPreference.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/BasicTextEditorActionContributor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/CaseAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ChainedPreferenceStore.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ConfigurationElementSorter.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ContentAssistAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ConvertLineDelimitersAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/DefaultRangeIndicator.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/DeleteLineAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/DeleteLineTarget.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/EditorMessages.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/EditorMessages.properties org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/EditorStatusLine.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindNextAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceTarget.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/GotoLineAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IAbstractTextEditorHelpContextIds.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IAnnotationImageProvider.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IDocumentProvider.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IDocumentProviderExtension.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IDocumentProviderExtension2.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IDocumentProviderExtension3.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IEditorStatusLine.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IElementStateListener.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IElementStateListenerExtension.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IFindReplaceTargetExtension2.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IReadOnlyDependent.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ISchedulingRuleProvider.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IStatusField.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IStatusFieldExtension.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorActionConstants.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorActionDefinitionIds.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorExtension.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorExtension2.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorExtension3.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IUpdate.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IWorkbenchActionDefinitionIds.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IncrementalFindAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IncrementalFindTarget.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/InfoForm.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/MarkAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/MarkRegionTarget.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/MoveLinesAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/PreferencesAdapter.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/PropagatingFontFieldEditor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/RegExContentAssistProcessor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ResourceAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/RetargetTextEditorAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/RevertToSavedAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SaveAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SelectMarkerRulerAction2.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ShiftAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SmartEnterAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/StatusLineContributionItem.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/StatusTextEditor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/TextEditorAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/TextNavigationAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/TextOperationAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/TextSelectionNavigationLocation.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ValidateStateException.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/WorkbenchChainedTextFontFieldEditor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/link/EditorHistoryUpdater.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/link/EditorTarget.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/package.html org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/IQuickDiffProviderImplementation.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/IQuickDiffReferenceProvider.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/QuickDiff.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/QuickDiffToggleAction.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/ReferenceProviderDescriptor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/package.html org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/EditTemplateDialog.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/MessageLine.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/StatusDialog.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/StatusInfo.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateContentProvider.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateMessages.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateMessages.properties org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplatePreferencePage.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateVariableProcessor.java org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateVariableProposal.java
-rw-r--r--org.eclipse.core.filebuffers.tests/.settings/org.eclipse.jdt.core.prefs64
-rw-r--r--org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/FileTool.java249
-rw-r--r--org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/ResourceHelper.java147
-rw-r--r--org.eclipse.core.filebuffers.tests/test.xml53
-rw-r--r--org.eclipse.core.filebuffers/.classpath7
-rw-r--r--org.eclipse.core.filebuffers/.cvsignore1
-rw-r--r--org.eclipse.core.filebuffers/.project31
-rw-r--r--org.eclipse.core.filebuffers/about.html30
-rw-r--r--org.eclipse.core.filebuffers/build.properties17
-rw-r--r--org.eclipse.core.filebuffers/hglegal2003.htm14
-rw-r--r--org.eclipse.core.filebuffers/ngibmcpy2003.gifbin1101 -> 0 bytes
-rw-r--r--org.eclipse.core.filebuffers/plugin.properties15
-rw-r--r--org.eclipse.core.filebuffers/plugin.xml35
-rw-r--r--org.eclipse.core.filebuffers/schema/documentCreation.exsd114
-rw-r--r--org.eclipse.core.filebuffers/schema/documentSetup.exsd114
-rw-r--r--org.eclipse.core.filebuffers/scripts/exportplugin.xml28
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/FileBuffers.java108
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentFactory.java29
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentSetupParticipant.java28
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBuffer.java130
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferListener.java98
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferManager.java138
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ISynchronizationContext.java26
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBuffer.java48
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBufferManager.java64
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/AbstractFileBuffer.java36
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ContainerGenerator.java118
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/DefaultDocumentFactory.java32
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ExtensionsRegistry.java231
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/FileBuffersPlugin.java84
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaFileBuffer.java218
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaTextFileBuffer.java338
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceFileBuffer.java406
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceTextFileBuffer.java365
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/TextFileBufferManager.java301
-rw-r--r--org.eclipse.jface.text.tests/.settings/org.eclipse.jdt.core.prefs64
-rw-r--r--org.eclipse.jface.text.tests/test.xml55
-rw-r--r--org.eclipse.jface.text/.classpath8
-rw-r--r--org.eclipse.jface.text/.cvsignore1
-rw-r--r--org.eclipse.jface.text/.options7
-rw-r--r--org.eclipse.jface.text/.project32
-rw-r--r--org.eclipse.jface.text/about.html30
-rw-r--r--org.eclipse.jface.text/build.properties16
-rw-r--r--org.eclipse.jface.text/plugin.properties12
-rw-r--r--org.eclipse.jface.text/plugin.xml23
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/OutlinerRulerColumn.java117
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionAnnotation.java121
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionSourceViewer.java265
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/AnnotationBag.java50
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotation.java187
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationHover.java131
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java207
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionRulerColumn.java176
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSummary.java189
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSupport.java181
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionViewer.java659
-rw-r--r--org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/SourceViewerInformationControl.java330
-rw-r--r--org.eclipse.jface.text/scripts/exportplugin.xml29
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/AdditionalInfoController2.java255
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/CompletionProposalPopup2.java882
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/ContentAssistant2.java1595
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/ContextInformationPopup2.java629
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/HTML2TextReader.java300
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/HTMLTextPresenter.java191
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/Helper2.java32
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/IContentAssistListener2.java35
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/IProposalListener.java26
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/JFaceTextMessages2.java32
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/LineBreakingReader.java114
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/PopupCloser2.java100
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/SingleCharReader.java61
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/SubstitutionTextReader.java151
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/package.html16
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/AbstractHoverInformationControlManager.java485
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/AbstractInformationControlManager.java984
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/CursorLinePainter.java245
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/DefaultAutoIndentStrategy.java91
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/DefaultInformationControl.java415
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/DefaultTextDoubleClickStrategy.java218
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/DefaultUndoManager.java810
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/DocumentAdapter.java361
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/DocumentCommand.java467
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IAutoEditStrategy.java33
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IAutoIndentStrategy.java20
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IDocumentAdapter.java37
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IDocumentAdapterExtension.java39
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IEventConsumer.java41
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IFindReplaceTarget.java72
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IFindReplaceTargetExtension.java89
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IFindReplaceTargetExtension3.java53
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControl.java145
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlCreator.java33
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlCreatorExtension.java39
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlExtension.java29
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlExtension2.java31
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IInformationControlExtension3.java73
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IMarkRegionTarget.java32
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IMarkSelection.java48
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IPaintPositionManager.java40
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IPainter.java94
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IRewriteTarget.java55
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ISelectionValidator.java36
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ISynchronizable.java36
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextDoubleClickStrategy.java33
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextHover.java52
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextHoverExtension.java29
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextInputListener.java40
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextListener.java39
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextOperationTarget.java101
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextOperationTargetExtension.java32
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextPresentationListener.java34
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextSelection.java84
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewer.java435
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension.java103
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension2.java108
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension3.java96
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension4.java50
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/ITextViewerExtension5.java108
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IUndoManager.java94
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IViewportListener.java30
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IWidgetTokenKeeper.java34
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IWidgetTokenKeeperExtension.java46
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IWidgetTokenOwner.java45
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/IWidgetTokenOwnerExtension.java37
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/JFaceTextMessages.java32
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/JFaceTextMessages.properties37
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/MarginPainter.java171
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/MarkSelection.java69
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/PaintManager.java378
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/PropagatingFontFieldEditor.java132
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/TextAttribute.java121
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/TextEvent.java119
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/TextPresentation.java617
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/TextSelection.java188
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/TextViewer.java4807
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/TextViewerHoverManager.java416
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/AbstractControlContentAssistSubjectAdapter.java900
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/AdditionalInfoController.java265
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ComboContentAssistSubjectAdapter.java222
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/CompletionProposal.java135
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java1089
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContentAssistSubjectAdapter.java406
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContentAssistant.java1792
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformation.java96
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformationPopup.java783
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformationValidator.java80
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/Helper.java32
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ICompletionProposal.java87
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ICompletionProposalExtension.java68
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ICompletionProposalExtension2.java74
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ICompletionProposalExtension3.java75
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistListener.java36
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistProcessor.java86
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistProcessorExtension.java50
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistSubject.java296
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistant.java91
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContentAssistantExtension.java42
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformation.java63
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationExtension.java29
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationPresenter.java47
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationPresenterExtension.java31
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationValidator.java44
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/IContextInformationValidatorExtension.java30
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/JFaceTextMessages.java32
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/PopupCloser.java100
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/TextContentAssistSubjectAdapter.java203
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/images/content_assist_cue.gifbin836 -> 0 bytes
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/images/error_small.gifbin820 -> 0 bytes
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/package.html25
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/ContentFormatter.java793
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/ContextBasedFormattingStrategy.java121
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/FormattingContext.java165
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/FormattingContextProperties.java98
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IContentFormatter.java55
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IContentFormatterExtension.java27
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IContentFormatterExtension2.java75
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IFormattingContext.java157
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IFormattingStrategy.java55
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/IFormattingStrategyExtension.java61
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/MultiPassContentFormatter.java319
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/formatter/package.html57
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationPresenter.java66
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationPresenterExtension.java27
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationProvider.java54
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationProviderExtension.java42
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/information/IInformationProviderExtension2.java31
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/information/InformationPresenter.java492
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/information/package.html22
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/link/LinkedPositionAnnotations.java308
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/link/LinkedUIControl.java1140
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/link/ProposalPosition.java82
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/link/TabStopIterator.java213
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/link/package.html74
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/package.html82
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/IPresentationDamager.java60
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/IPresentationReconciler.java76
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/IPresentationReconcilerExtension.java27
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/IPresentationRepairer.java56
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/PresentationReconciler.java578
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/presentation/package.html24
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/AbstractReconcileStep.java163
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/AbstractReconciler.java517
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/CompositeReconcilingStrategy.java115
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/DirtyRegion.java97
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/DirtyRegionQueue.java104
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/DocumentAdapter.java42
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcilableModel.java21
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcileResult.java22
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcileStep.java100
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconciler.java62
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcilerExtension.java27
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcilingStrategy.java60
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/IReconcilingStrategyExtension.java45
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/MonoReconciler.java107
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/Reconciler.java219
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/reconciler/package.html25
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/BufferedRuleBasedScanner.java133
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/DefaultDamagerRepairer.java218
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/DefaultPartitioner.java576
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/EndOfLineRule.java66
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/ICharacterScanner.java51
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IPartitionTokenScanner.java42
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IPredicateRule.java47
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IRule.java33
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IToken.java53
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/ITokenScanner.java58
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IWhitespaceDetector.java27
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/IWordDetector.java38
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/MultiLineRule.java63
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/NumberRule.java72
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/PatternRule.java273
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/RuleBasedDamagerRepairer.java49
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/RuleBasedPartitionScanner.java106
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/RuleBasedPartitioner.java584
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/RuleBasedScanner.java198
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/SingleLineRule.java88
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/Token.java125
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/WhitespaceRule.java58
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/WordPatternRule.java108
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/WordRule.java145
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/rules/package.html21
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/Annotation.java260
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationBarHoverManager.java476
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationColumn.java30
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationEvent.java49
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationMap.java185
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationModel.java717
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationModelEvent.java249
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationPainter.java1185
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/AnnotationRulerColumn.java708
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ChangeRulerColumn.java690
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/CompositeRuler.java839
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationAccess.java51
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationAccessExtension.java89
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationHover.java33
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationHoverExtension.java61
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationHoverExtension2.java31
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationListener.java50
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationMap.java71
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationModel.java124
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationModelExtension.java105
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationModelListener.java31
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationModelListenerExtension.java30
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IAnnotationPresentation.java41
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IChangeRulerColumn.java63
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ICharacterPairMatcher.java70
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ILineDiffInfo.java70
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ILineDiffer.java70
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IOverviewRuler.java116
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ISharedTextColors.java39
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ISourceViewer.java162
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ISourceViewerExtension.java37
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ISourceViewerExtension2.java37
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ITagHandler.java89
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ITagHandlerFactory.java47
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ITranslator.java74
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/ITranslatorResultCollector.java21
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRuler.java75
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRulerColumn.java74
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRulerExtension.java41
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRulerInfo.java63
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/IVerticalRulerInfoExtension.java47
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/JFaceTextMessages.java66
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineChangeHover.java321
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineNumberChangeRulerColumn.java432
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/LineNumberRulerColumn.java832
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java240
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/OverviewRuler.java1191
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/OverviewRulerHoverManager.java77
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/SourceViewer.java894
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/SourceViewerConfiguration.java308
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/TagHandlerFactory.java64
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/VerticalRuler.java569
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/VisualAnnotationModel.java146
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/source/package.html26
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/ContextTypeRegistry.java204
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/PositionBasedCompletionProposal.java166
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/TemplateCompletionProcessor.java210
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/TemplateProposal.java425
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateMessages.java61
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateMessages.properties16
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplatePersistenceData.java173
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateReaderWriter.java288
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateSet.java392
-rw-r--r--org.eclipse.jface.text/src/org/eclipse/jface/text/templates/persistence/TemplateStore.java428
-rw-r--r--org.eclipse.search.tests/.classpath7
-rw-r--r--org.eclipse.search.tests/.cvsignore1
-rw-r--r--org.eclipse.search.tests/.project32
-rw-r--r--org.eclipse.search.tests/.template4
-rw-r--r--org.eclipse.search.tests/build.properties4
-rw-r--r--org.eclipse.search.tests/plugin.xml28
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/core/tests/AllSearchModelTests.java39
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/core/tests/LongQuery.java43
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/core/tests/NullQuery.java42
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/core/tests/NullSearchResult.java84
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/core/tests/QueryManagerTest.java120
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/core/tests/TestSearchResult.java183
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/tests/AllSearchTests.java29
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/tests/SearchTestPlugin.java74
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/AllFileSearchTests.java27
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/AnnotationManagerTest.java177
-rw-r--r--org.eclipse.search.tests/src/org/eclipse/search/tests/filesearch/SearchResultPageTest.java103
-rw-r--r--org.eclipse.search.tests/testresources/junit37-noUI-src.zipbin44676 -> 0 bytes
-rw-r--r--org.eclipse.search/.classpath8
-rw-r--r--org.eclipse.search/.cvsignore1
-rw-r--r--org.eclipse.search/.project39
-rw-r--r--org.eclipse.search/about.html30
-rw-r--r--org.eclipse.search/build.properties19
-rw-r--r--org.eclipse.search/buildnotes_search.html202
-rw-r--r--org.eclipse.search/hglegal2003.htm14
-rw-r--r--org.eclipse.search/icons/full/clcl16/flatLayout.gifbin100 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/hierarchicalLayout.gifbin106 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/search_goto.gifbin169 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/search_history.gifbin181 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/search_next.gifbin105 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/search_prev.gifbin132 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/search_rem.gifbin97 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/search_remall.gifbin117 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/search_sortmatch.gifbin160 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/clcl16/stop.gifbin109 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/ctool16/search.gifbin153 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/cview16/searchres.gifbin179 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/flatLayout.gifbin71 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/hierarchicalLayout.gifbin75 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/search_goto.gifbin97 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/search_history.gifbin103 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/search_next.gifbin82 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/search_prev.gifbin82 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/search_rem.gifbin66 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/search_remall.gifbin75 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/search_sortmatch.gifbin90 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dlcl16/stop.gifbin85 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/dtool16/search.gifbin94 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/flatLayout.gifbin82 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/hierarchicalLayout.gifbin103 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/search_goto.gifbin163 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/search_history.gifbin169 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/search_next.gifbin103 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/search_prev.gifbin105 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/search_rem.gifbin97 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/search_remall.gifbin111 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/search_sortmatch.gifbin158 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/elcl16/stop.gifbin88 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/etool16/search.gifbin150 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/eview16/searchres.gifbin177 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/obj16/searchm_obj.gifbin136 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/obj16/tsearch_dpdn_obj.gifbin148 -> 0 bytes
-rw-r--r--org.eclipse.search/icons/full/obj16/tsearch_obj.gifbin245 -> 0 bytes
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/IQueryListener.java47
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/ISearchQuery.java57
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/ISearchResult.java60
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/ISearchResultListener.java34
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/ISearchResultPage.java83
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/ISearchResultViewPart.java36
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/NewSearchUI.java102
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/SearchResultEvent.java42
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/package.html16
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/text/AbstractTextSearchResult.java317
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/text/AbstractTextSearchViewPage.java800
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/text/Match.java77
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/text/MatchEvent.java80
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/text/RemoveAllEvent.java22
-rw-r--r--org.eclipse.search/new search/org/eclipse/search/ui/text/package.html14
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/CancelSearchAction.java34
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/InternalSearchUI.java364
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/ListDialog.java125
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/QueryManager.java133
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/RemoveAllSearchesAction.java32
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchAgainAction.java43
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchDropDownAction.java90
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchMessages.java37
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchMessages.properties35
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchPageRegistry.java129
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/SearchView.java536
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/ShowSearchAction.java40
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/ShowSearchesAction.java84
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/ThrottlingProgressMonitor.java83
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/INavigate.java21
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/RemoveAllResultsAction.java37
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/RemoveMatchAction.java39
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/SearchResultsTableViewer.java55
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/SearchResultsTreeViewer.java205
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/SetLayoutAction.java36
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/ShowNextResultAction.java35
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/basic/views/ShowPreviousResultAction.java35
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/text/AnnotationManager.java266
-rw-r--r--org.eclipse.search/new search/org/eclipse/search2/internal/ui/text/PositionTracker.java330
-rw-r--r--org.eclipse.search/ngibmcpy2003.gifbin1101 -> 0 bytes
-rw-r--r--org.eclipse.search/old_buildnotes_search_2.1.html3403
-rw-r--r--org.eclipse.search/old_buildnotes_search_2_0.html925
-rw-r--r--org.eclipse.search/plugin.properties50
-rw-r--r--org.eclipse.search/plugin.xml244
-rw-r--r--org.eclipse.search/schema/searchPages.exsd234
-rw-r--r--org.eclipse.search/schema/searchResultSorters.exsd165
-rw-r--r--org.eclipse.search/schema/searchResultViewPages.exsd112
-rw-r--r--org.eclipse.search/scripts/exportplugin.xml32
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/ISearchScope.java37
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/SearchScope.java101
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/AmountOfWorkCalculator.java61
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/FileMatchCollector.java38
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/IMatchCollector.java21
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/ITextSearchResultCollector.java44
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/MatchLocator.java189
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/TextSearchEngine.java75
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/TextSearchScope.java226
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/TextSearchVisitor.java203
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/core/text/TypedResourceVisitor.java67
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/CopyToClipboardAction.java90
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/GotoMarkerAction.java29
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/ISearchHelpContextIds.java33
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/OpenFileSearchPageAction.java61
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/OpenSearchDialogAction.java84
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/RemoveAllResultsAction.java26
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/RemoveAllSearchesAction.java26
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/RemoveMatchAction.java60
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/RemovePotentialMatchesAction.java117
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/RemoveResultAction.java96
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/ResourceToItemsMapper.java163
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/ScopePart.java424
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/Search.java213
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchAgainAction.java27
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchDialog.java576
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchDropDownAction.java92
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchManager.java507
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchMessages.java65
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchMessages.properties230
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchPageDescriptor.java342
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchPlugin.java384
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchPluginImages.java113
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchPreferencePage.java224
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultContentProvider.java39
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultLabelProvider.java72
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultView.java325
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultViewEntry.java198
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultViewEntryAdapterFactory.java52
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SearchResultViewer.java728
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SelectAllAction.java43
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/ShowNextResultAction.java30
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/ShowPreviousResultAction.java30
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/ShowSearchAction.java37
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/ShowSearchesAction.java128
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SortDropDownAction.java218
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/SorterDescriptor.java106
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/WorkInProgressPreferencePage.java53
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/WorkingSetComparator.java37
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/DelegatingLabelProvider.java52
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileContentProvider.java33
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileLabelProvider.java134
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileMatch.java32
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchDescription.java35
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchPage.java165
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchQuery.java139
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchResult.java88
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileTableContentProvider.java53
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileTreeContentProvider.java155
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/GotoMarkerAction.java145
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/GroupByKeyComputer.java25
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/NameSorter.java36
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/NewTextSearchActionGroup.java106
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/PathSorter.java28
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/ReplaceAction.java207
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/ReplaceAction2.java243
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/ReplaceDialog.java679
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/ReplaceDialog2.java587
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/ResourcePathSorter.java66
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/ResourcenameSorter.java66
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/SearchAgainConfirmationDialog.java118
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/SortAction.java33
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchActionGroup.java159
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchOperation.java106
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchPage.java777
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/text/TextSearchResultCollector.java139
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/ComboFieldEditor.java186
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/ExceptionHandler.java143
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/ExtendedDialogWindow.java356
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/FileLabelProvider.java132
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/FileTypeEditor.java109
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/ListContentProvider.java47
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/ListDialog.java125
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/MessageLine.java144
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/PixelConverter.java58
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/RowLayouter.java172
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/SWTUtil.java122
-rw-r--r--org.eclipse.search/search/org/eclipse/search/internal/ui/util/TypeFilteringDialog.java291
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/IActionGroupFactory.java40
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/IContextMenuConstants.java114
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/IContextMenuContributor.java35
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/IGroupByKeyComputer.java29
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/IReplacePage.java31
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/ISearchPage.java47
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/ISearchPageContainer.java121
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/ISearchPageScoreComputer.java50
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/ISearchResultView.java184
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/ISearchResultViewEntry.java66
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/SearchUI.java183
-rw-r--r--org.eclipse.search/search/org/eclipse/search/ui/package.html25
-rw-r--r--org.eclipse.text.tests/.settings/org.eclipse.jdt.core.prefs64
-rw-r--r--org.eclipse.text.tests/src/org/eclipse/text/tests/Accessor.java284
-rw-r--r--org.eclipse.text.tests/test.xml55
-rw-r--r--org.eclipse.text/.classpath8
-rw-r--r--org.eclipse.text/.cvsignore1
-rw-r--r--org.eclipse.text/.project28
-rw-r--r--org.eclipse.text/about.html30
-rw-r--r--org.eclipse.text/build.properties6
-rw-r--r--org.eclipse.text/plugin.properties12
-rw-r--r--org.eclipse.text/plugin.xml16
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/CoordinatesTranslator.java350
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/Fragment.java53
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/FragmentUpdater.java121
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/ProjectionDocument.java835
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/ProjectionDocumentManager.java321
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/ProjectionPosition.java64
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/ProjectionPositionUpdater.java71
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/ProjectionTextStore.java154
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/ChildDocument.java87
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/ChildDocumentManager.java32
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/Fragment.java27
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/FragmentUpdater.java138
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/IMinimalMapping.java49
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionDocument.java781
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionDocumentEvent.java54
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionDocumentManager.java221
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionMapping.java467
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionTextStore.java159
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/Segment.java50
-rw-r--r--org.eclipse.text/projection/org/eclipse/jface/text/projection/SegmentUpdater.java130
-rw-r--r--org.eclipse.text/scripts/exportplugin.xml29
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/AbstractDocument.java1297
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/AbstractLineTracker.java557
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/Assert.java178
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/BadLocationException.java36
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/BadPartitioningException.java35
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/BadPositionCategoryException.java38
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ChildDocument.java454
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ChildDocumentManager.java466
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ConfigurableLineTracker.java64
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/DefaultLineTracker.java80
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/DefaultPositionUpdater.java239
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/Document.java73
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/DocumentEvent.java95
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/DocumentPartitioningChangedEvent.java120
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/FindReplaceDocumentAdapter.java313
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/FindReplaceOperationCode.java64
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/GapTextStore.java259
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocument.java571
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentExtension.java83
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentExtension2.java53
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentExtension3.java146
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentInformationMapping.java113
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentInformationMappingExtension.java46
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentListener.java39
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitioner.java110
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitionerExtension.java41
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitionerExtension2.java107
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitioningListener.java33
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitioningListenerExtension.java33
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IDocumentPartitioningListenerExtension2.java27
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ILineTracker.java136
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IPositionUpdater.java39
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IRegion.java38
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/IRepairableDocument.java31
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ISlaveDocumentManager.java92
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ISlaveDocumentManagerExtension.java28
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ITextStore.java63
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ITypedRegion.java30
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/Line.java69
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/ParentChildMapping.java161
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/Position.java189
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/Region.java69
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/SequentialRewriteTextStore.java273
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/SlaveDocumentEvent.java45
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/TextUtilities.java499
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/TypedPosition.java74
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/TypedRegion.java62
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/link/ExclusivePositionUpdater.java102
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/link/ILinkedListener.java52
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/link/InclusivePositionUpdater.java104
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/link/LinkedEnvironment.java712
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/link/LinkedManager.java232
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/link/LinkedPosition.java158
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/link/LinkedPositionGroup.java511
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/link/package.html74
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/ContextType.java288
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/DocumentTemplateContext.java151
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/GlobalVariables.java173
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/SimpleVariableResolver.java58
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/Template.java173
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateBuffer.java71
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateContext.java115
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateException.java56
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateMessages.java61
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateMessages.properties158
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateTranslator.java247
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateVariable.java198
-rw-r--r--org.eclipse.text/src/org/eclipse/jface/text/templates/TemplateVariableResolver.java169
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/CopySourceEdit.java309
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/CopyTargetEdit.java161
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/CopyingRangeMarker.java78
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/DeleteEdit.java75
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/EditDocument.java209
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/ISourceModifier.java49
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/InsertEdit.java96
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/MalformedTreeException.java61
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/Messages.properties33
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/MoveSourceEdit.java419
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/MoveTargetEdit.java192
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/MultiTextEdit.java142
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/RangeMarker.java72
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/ReplaceEdit.java99
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/TextEdit.java833
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/TextEditCopier.java99
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/TextEditGroup.java137
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/TextEditMessages.java41
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/TextEditProcessor.java205
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/TextEditVisitor.java213
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/TreeIterationInfo.java59
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/UndoCollector.java64
-rw-r--r--org.eclipse.text/src/org/eclipse/text/edits/UndoEdit.java105
-rw-r--r--org.eclipse.ui.editors.tests/.settings/org.eclipse.jdt.core.prefs64
-rw-r--r--org.eclipse.ui.editors.tests/test.xml55
-rw-r--r--org.eclipse.ui.editors/.classpath7
-rw-r--r--org.eclipse.ui.editors/.cvsignore1
-rw-r--r--org.eclipse.ui.editors/.project35
-rw-r--r--org.eclipse.ui.editors/_buildnotes_text_2_0.html971
-rw-r--r--org.eclipse.ui.editors/_buildnotes_text_2_1.html267
-rw-r--r--org.eclipse.ui.editors/about.html30
-rw-r--r--org.eclipse.ui.editors/build.properties18
-rw-r--r--org.eclipse.ui.editors/buildnotes_text.html374
-rw-r--r--org.eclipse.ui.editors/icons/full/ctool16/last_edit_pos.gifbin348 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/ctool16/next_nav.gifbin346 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/ctool16/prev_nav.gifbin336 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/dtool16/last_edit_pos.gifbin226 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/dtool16/next_nav.gifbin217 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/dtool16/prev_nav.gifbin211 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/etool16/last_edit_pos.gifbin348 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/etool16/next_nav.gifbin346 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/etool16/prev_nav.gifbin336 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/icons/full/obj16/file_obj.gifbin354 -> 0 bytes
-rw-r--r--org.eclipse.ui.editors/migration_guidelines.html57
-rw-r--r--org.eclipse.ui.editors/plugin.properties75
-rw-r--r--org.eclipse.ui.editors/plugin.xml533
-rw-r--r--org.eclipse.ui.editors/schema/annotationTypes.exsd130
-rw-r--r--org.eclipse.ui.editors/schema/documentProviders.exsd147
-rw-r--r--org.eclipse.ui.editors/schema/markerAnnotationSpecification.exsd327
-rw-r--r--org.eclipse.ui.editors/schema/markerUpdaters.exsd142
-rw-r--r--org.eclipse.ui.editors/schema/templates.exsd317
-rw-r--r--org.eclipse.ui.editors/scripts/exportplugin.xml31
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/DefaultEncodingSupport.java234
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/EditorsUI.java77
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/EncodingActionGroup.java393
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/FileDocumentProvider.java884
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IEncodingActionsConstants.java70
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IEncodingActionsDefinitionIds.java70
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IEncodingActionsHelpContextIds.java73
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IEncodingSupport.java41
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/ILocationProvider.java30
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/ISchedulingRuleProvider.java18
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/IStorageDocumentProvider.java47
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/ITextEditorHelpContextIds.java51
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/StorageDocumentProvider.java420
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditor.java324
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorActionContributor.java127
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorMessages.java36
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorMessages.properties116
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorPreferenceConstants.java261
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextEditorPreferencePage.java120
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextFileDocumentProvider.java1028
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/TextSourceViewerConfiguration.java91
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/UISynchronizationContext.java42
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/WorkspaceOperationRunner.java75
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/editors/text/package.html13
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/quickdiff/LastSaveReferenceProvider.java406
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/quickdiff/QuickDiffMessages.java44
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/quickdiff/QuickDiffMessages.properties1
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/ColorEditor.java159
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/EditorsPlugin.java170
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/FileEditorInputAdapterFactory.java62
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/IEditorsStatusConstants.java28
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/JavaFileEditorInput.java112
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/NextPreviousPulldownActionDelegate.java189
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/NextPulldownActionDelegate.java29
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/OpenExternalFileAction.java162
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/OverlayPreferenceStore.java514
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/PreviousPulldownActionDelegate.java30
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/SharedTextColors.java76
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/StatusInfo.java185
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TabFolderLayout.java66
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TextEditorMessages.java52
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TextEditorMessages.properties66
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/internal/editors/text/TextEditorPreferencePage2.java962
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractMarkerAnnotationModel.java619
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AddMarkerAction.java324
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AddTaskAction.java60
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AnnotationPreferenceLookup.java103
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AnnotationType.java62
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AnnotationTypeHierarchy.java109
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AnnotationTypeLookup.java208
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/BasicMarkerUpdater.java98
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/BookmarkRulerAction.java31
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/DefaultMarkerAnnotationAccess.java329
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/DelegatingAnnotationPreference.java248
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/DocumentProviderRegistry.java300
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/ExtendedTextEditor.java1074
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/ExtendedTextEditorPreferenceConstants.java297
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/IMarkerUpdater.java59
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/ImageUtilities.java86
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerAnnotation.java320
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerAnnotationPreferences.java359
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerRulerAction.java457
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerRulerInfoAction.java31
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerUpdater.java65
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/MarkerUtilities.java408
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/ResourceMarkerAnnotationModel.java152
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/SelectMarkerRulerAction.java319
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/SelectMarkerRulerInfoAction.java32
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/SelectRulerAction.java30
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/TaskRulerAction.java76
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/TextEditorMessages.java36
-rw-r--r--org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/TextEditorMessages.properties71
-rw-r--r--org.eclipse.ui.examples.javaeditor/.classpath8
-rw-r--r--org.eclipse.ui.examples.javaeditor/.cvsignore1
-rw-r--r--org.eclipse.ui.examples.javaeditor/.project35
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaActionContributor.java90
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaAnnotationHover.java38
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaContentOutlinePage.java237
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaDocumentSetupParticipant.java41
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaEditor.java146
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaEditorExamplePlugin.java99
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaEditorMessages.java36
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaEditorMessages.properties39
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaPartitionScanner.java105
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaSourceViewerConfiguration.java166
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/JavaTextHover.java45
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/PresentationAction.java52
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaAutoIndentStrategy.java263
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaCodeScanner.java69
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaCompletionProcessor.java111
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaDoubleClickSelector.java240
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/java/JavaEditorMessages.java32
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/javadoc/JavaDocCompletionProcessor.java68
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/javadoc/JavaDocScanner.java80
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/togglepresentation.gifbin125 -> 0 bytes
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/util/JavaColorProvider.java58
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/util/JavaWhitespaceDetector.java27
-rw-r--r--org.eclipse.ui.examples.javaeditor/Eclipse Java Editor Example/org/eclipse/ui/examples/javaeditor/util/JavaWordDetector.java34
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/ColorManager.java28
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/IXMLColorConstants.java11
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/NonRuleBasedDamagerRepairer.java138
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TagRule.java31
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TemplateEditor.java57
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TemplateEditorUI.java96
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TemplateMessages.java65
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/TemplateMessages.properties3
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLConfiguration.java91
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLDocumentProvider.java25
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLDoubleClickStrategy.java112
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLPartitionScanner.java22
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLScanner.java22
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLTagScanner.java24
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/editors/XMLWhitespaceDetector.java10
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/preferences/TemplatesPreferencePage.java40
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/template/AntVariableResolver.java50
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/template/XMLCompletionProcessor.java99
-rw-r--r--org.eclipse.ui.examples.javaeditor/Template Editor Example/org/eclipse/ui/examples/templateeditor/template/XMLContextType.java43
-rw-r--r--org.eclipse.ui.examples.javaeditor/about.html30
-rw-r--r--org.eclipse.ui.examples.javaeditor/build.properties23
-rw-r--r--org.eclipse.ui.examples.javaeditor/doc-html/hglegal.htm14
-rw-r--r--org.eclipse.ui.examples.javaeditor/doc-html/hglegal2002.htm13
-rw-r--r--org.eclipse.ui.examples.javaeditor/doc-html/hglegal2003.htm14
-rw-r--r--org.eclipse.ui.examples.javaeditor/doc-html/ngibmcpy.gifbin814 -> 0 bytes
-rw-r--r--org.eclipse.ui.examples.javaeditor/doc-html/ngibmcpy2002.gifbin1045 -> 0 bytes
-rw-r--r--org.eclipse.ui.examples.javaeditor/doc-html/ngibmcpy2003.gifbin1101 -> 0 bytes
-rw-r--r--org.eclipse.ui.examples.javaeditor/doc-html/ui_javaeditor_ex.html237
-rw-r--r--org.eclipse.ui.examples.javaeditor/doc-html/ui_templateeditor_ex.html69
-rw-r--r--org.eclipse.ui.examples.javaeditor/icons/obj16/java.gifbin140 -> 0 bytes
-rw-r--r--org.eclipse.ui.examples.javaeditor/icons/resolver.gifbin983 -> 0 bytes
-rw-r--r--org.eclipse.ui.examples.javaeditor/icons/sample.gifbin983 -> 0 bytes
-rw-r--r--org.eclipse.ui.examples.javaeditor/icons/template.gifbin155 -> 0 bytes
-rw-r--r--org.eclipse.ui.examples.javaeditor/plugin.properties38
-rw-r--r--org.eclipse.ui.examples.javaeditor/plugin.xml119
-rw-r--r--org.eclipse.ui.examples.javaeditor/templates/ant.properties2
-rw-r--r--org.eclipse.ui.examples.javaeditor/templates/ant.xml14
-rw-r--r--org.eclipse.ui.workbench.texteditor.tests/.settings/org.eclipse.jdt.core.prefs64
-rw-r--r--org.eclipse.ui.workbench.texteditor.tests/test.xml55
-rw-r--r--org.eclipse.ui.workbench.texteditor/.classpath7
-rw-r--r--org.eclipse.ui.workbench.texteditor/.cvsignore1
-rw-r--r--org.eclipse.ui.workbench.texteditor/.project31
-rw-r--r--org.eclipse.ui.workbench.texteditor/about.html30
-rw-r--r--org.eclipse.ui.workbench.texteditor/build.properties18
-rw-r--r--org.eclipse.ui.workbench.texteditor/icons/full/ctool16/segment_edit.gifbin590 -> 0 bytes
-rw-r--r--org.eclipse.ui.workbench.texteditor/icons/full/dtool16/segment_edit.gifbin590 -> 0 bytes
-rw-r--r--org.eclipse.ui.workbench.texteditor/icons/full/etool16/segment_edit.gifbin590 -> 0 bytes
-rw-r--r--org.eclipse.ui.workbench.texteditor/plugin.properties157
-rw-r--r--org.eclipse.ui.workbench.texteditor/plugin.xml1076
-rw-r--r--org.eclipse.ui.workbench.texteditor/schema/quickDiffReferenceProvider.exsd149
-rw-r--r--org.eclipse.ui.workbench.texteditor/scripts/exportplugin.xml32
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/AnnotationExpandHover.java281
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/AnnotationExpansionControl.java795
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/EditPosition.java87
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/EditorMessages.java35
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/EditorMessages.properties16
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/GotoLastEditPositionAction.java176
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/LinearLayouter.java58
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/TextEditorPlugin.java124
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/DiffRegion.java204
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/DocumentLineDiffer.java1304
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/QuickDiffMessages.java52
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/QuickDiffMessages.properties25
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/QuickDiffRestoreAction.java159
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/ReferenceSelectionAction.java171
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/RestoreAction.java100
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/RevertBlockAction.java91
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/RevertLineAction.java89
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/RevertSelectionAction.java102
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/DifferencesIterator.java77
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/DocLineComparator.java221
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/IRangeComparator.java60
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/ITokenComparator.java56
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/LinkedRangeDifference.java57
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/RangeDifference.java288
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/RangeDifferencer.java542
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/compare/rangedifferencer/package.html12
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/quickdiff/package.html13
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/AbstractDocumentProvider.java1022
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/AbstractRulerActionDelegate.java146
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/AbstractTextEditor.java4962
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/AnnotationPreference.java931
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/BasicTextEditorActionContributor.java293
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/CaseAction.java129
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ChainedPreferenceStore.java551
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ConfigurationElementSorter.java157
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ContentAssistAction.java122
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ConvertLineDelimitersAction.java271
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/DefaultRangeIndicator.java167
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/DeleteLineAction.java173
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/DeleteLineTarget.java326
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/EditorMessages.java36
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/EditorMessages.properties426
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/EditorStatusLine.java133
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindNextAction.java396
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceAction.java250
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceDialog.java1817
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/FindReplaceTarget.java220
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/GotoLineAction.java188
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IAbstractTextEditorHelpContextIds.java305
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IAnnotationImageProvider.java55
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IDocumentProvider.java203
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IDocumentProviderExtension.java115
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IDocumentProviderExtension2.java38
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IDocumentProviderExtension3.java29
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IEditorStatusLine.java35
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IElementStateListener.java66
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IElementStateListenerExtension.java47
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IFindReplaceTargetExtension2.java29
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IReadOnlyDependent.java37
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ISchedulingRuleProvider.java30
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IStatusField.java39
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IStatusFieldExtension.java65
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditor.java177
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorActionConstants.java433
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorActionDefinitionIds.java450
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorExtension.java64
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorExtension2.java46
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ITextEditorExtension3.java71
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IUpdate.java24
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IWorkbenchActionDefinitionIds.java149
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IncrementalFindAction.java119
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/IncrementalFindTarget.java782
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/InfoForm.java227
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/MarkAction.java73
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/MarkRegionTarget.java124
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/MoveLinesAction.java504
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/PreferencesAdapter.java311
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/PropagatingFontFieldEditor.java29
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/RegExContentAssistProcessor.java355
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ResourceAction.java149
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/RetargetTextEditorAction.java241
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/RevertToSavedAction.java56
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SaveAction.java56
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SelectMarkerRulerAction2.java98
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ShiftAction.java159
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SmartEnterAction.java177
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/SourceViewerDecorationSupport.java936
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/StatusLineContributionItem.java288
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/StatusTextEditor.java197
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/TextEditorAction.java144
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/TextNavigationAction.java302
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/TextOperationAction.java156
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/TextSelectionNavigationLocation.java343
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/ValidateStateException.java32
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/WorkbenchChainedTextFontFieldEditor.java69
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/link/EditorHistoryUpdater.java52
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/link/EditorTarget.java73
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/package.html30
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/IQuickDiffProviderImplementation.java52
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/IQuickDiffReferenceProvider.java51
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/QuickDiff.java162
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/QuickDiffToggleAction.java212
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/ReferenceProviderDescriptor.java128
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/quickdiff/package.html13
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/EditTemplateDialog.java520
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/MessageLine.java73
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/StatusDialog.java172
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/StatusInfo.java171
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateContentProvider.java51
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateMessages.java61
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateMessages.properties88
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplatePreferencePage.java803
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateVariableProcessor.java152
-rw-r--r--org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/texteditor/templates/TemplateVariableProposal.java106
930 files changed, 1273 insertions, 154068 deletions
diff --git a/org.eclipse.core.filebuffers.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.core.filebuffers.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..8901c09cd
--- /dev/null
+++ b/org.eclipse.core.filebuffers.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,64 @@
+#Fri Aug 27 09:16:12 CEST 2004
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
+org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=error
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.builder.invalidClasspath=abort
+org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.source=1.3
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.compliance=1.4
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
+org.eclipse.jdt.core.builder.cleanOutputFolder=clean
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
+org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
+org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.incompatibleJDKLevel=ignore
+eclipse.preferences.version=1
+org.eclipse.jdt.core.circularClasspath=error
+org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
+org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
+org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.doc.comment.support=enabled
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
+org.eclipse.jdt.core.incompleteClasspath=error
+org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.builder.duplicateResourceTask=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
diff --git a/org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/FileTool.java b/org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/FileTool.java
new file mode 100644
index 000000000..cad283faf
--- /dev/null
+++ b/org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/FileTool.java
@@ -0,0 +1,249 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2004 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Common Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.core.filebuffers.tests;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.Reader;
+import java.io.Writer;
+import java.net.URL;
+import java.util.Enumeration;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Plugin;
+
+
+public class FileTool {
+
+ private final static int MAX_RETRY= 5;
+
+ /**
+ * A buffer.
+ */
+ private static byte[] buffer = new byte[8192];
+
+ /**
+ * Unzips the given zip file to the given destination directory
+ * extracting only those entries the pass through the given
+ * filter.
+ *
+ * @param zipFile the zip file to unzip
+ * @param dstDir the destination directory
+ * @throws IOException in case of problem
+ */
+ public static void unzip(ZipFile zipFile, File dstDir) throws IOException {
+ unzip(zipFile, dstDir, dstDir, 0);
+ }
+
+ private static void unzip(ZipFile zipFile, File rootDstDir, File dstDir, int depth) throws IOException {
+
+ Enumeration entries = zipFile.entries();
+
+ try {
+ while(entries.hasMoreElements()){
+ ZipEntry entry = (ZipEntry)entries.nextElement();
+ if(entry.isDirectory()){
+ continue;
+ }
+ String entryName = entry.getName();
+ File file = new File(dstDir, changeSeparator(entryName, '/', File.separatorChar));
+ file.getParentFile().mkdirs();
+ InputStream src = null;
+ OutputStream dst = null;
+ try {
+ src = zipFile.getInputStream(entry);
+ dst = new FileOutputStream(file);
+ transferData(src, dst);
+ } finally {
+ if(dst != null){
+ try {
+ dst.close();
+ } catch(IOException e){
+ }
+ }
+ if(src != null){
+ try {
+ src.close();
+ } catch(IOException e){
+ }
+ }
+ }
+ }
+ } finally {
+ try {
+ zipFile.close();
+ } catch(IOException e){
+ }
+ }
+ }
+
+ /**
+ * Returns the given file path with its separator
+ * character changed from the given old separator to the
+ * given new separator.
+ *
+ * @param path a file path
+ * @param oldSeparator a path separator character
+ * @param newSeparator a path separator character
+ * @return the file path with its separator character
+ * changed from the given old separator to the given new
+ * separator
+ */
+ public static String changeSeparator(String path, char oldSeparator, char newSeparator){
+ return path.replace(oldSeparator, newSeparator);
+ }
+
+ /**
+ * Copies all bytes in the given source file to
+ * the given destination file.
+ *
+ * @param source the given source file
+ * @param destination the given destination file
+ * @throws IOException in case of error
+ */
+ public static void transferData(File source, File destination) throws IOException {
+ destination.getParentFile().mkdirs();
+ InputStream is = null;
+ OutputStream os = null;
+ try {
+ is = new FileInputStream(source);
+ os = new FileOutputStream(destination);
+ transferData(is, os);
+ } finally {
+ if(os != null){
+ try {
+ os.close();
+ } catch(IOException e){
+ }
+ }
+ if(is != null){
+ try {
+ is.close();
+ } catch(IOException e){
+ }
+ }
+ }
+ }
+
+ /**
+ * Copies all bytes in the given source stream to
+ * the given destination stream. Neither streams
+ * are closed.
+ *
+ * @param source the given source stream
+ * @param destination the given destination stream
+ * @throws IOException in case of error
+ */
+ public static void transferData(InputStream source, OutputStream destination) throws IOException {
+ int bytesRead = 0;
+ while(bytesRead != -1){
+ bytesRead = source.read(buffer, 0, buffer.length);
+ if(bytesRead != -1){
+ destination.write(buffer, 0, bytesRead);
+ }
+ }
+ }
+
+ /**
+ * Copies the given source file to the given destination file.
+ *
+ * @param src the given source file
+ * @param dst the given destination file
+ * @throws IOException in case of error
+ */
+ public static void copy(File src, File dst) throws IOException {
+ if(src.isDirectory()){
+ String[] srcChildren = src.list();
+ for(int i = 0; i < srcChildren.length; ++i){
+ File srcChild= new File(src, srcChildren[i]);
+ File dstChild= new File(dst, srcChildren[i]);
+ copy(srcChild, dstChild);
+ }
+ } else
+ transferData(src, dst);
+ }
+
+ public static File getFileInPlugin(Plugin plugin, IPath path) {
+ try {
+ URL installURL= plugin.getBundle().getEntry(path.toString());
+ URL localURL= Platform.asLocalURL(installURL);
+ return new File(localURL.getFile());
+ } catch (IOException e) {
+ return null;
+ }
+ }
+
+ public static File createTempFileInPlugin(Plugin plugin, IPath path) {
+ IPath stateLocation= plugin.getStateLocation();
+ stateLocation= stateLocation.append(path);
+ return stateLocation.toFile();
+ }
+
+ public static StringBuffer read(String fileName) throws IOException {
+ return read(new FileReader(fileName));
+ }
+
+ public static StringBuffer read(Reader reader) throws IOException {
+ StringBuffer s= new StringBuffer();
+ try {
+ char[] charBuffer= new char[8196];
+ int chars= reader.read(charBuffer);
+ while (chars != -1) {
+ s.append(charBuffer, 0, chars);
+ chars= reader.read(charBuffer);
+ }
+ } finally {
+ try {
+ reader.close();
+ } catch (IOException e) {
+ }
+ }
+ return s;
+ }
+
+ public static void write(String fileName, StringBuffer content) throws IOException {
+ Writer writer= new FileWriter(fileName);
+ try {
+ writer.write(content.toString());
+ } finally {
+ try {
+ writer.close();
+ } catch (IOException e) {
+ }
+ }
+ }
+
+ public static void delete(File file) throws CoreException {
+ if (file.exists()) {
+ for (int i= 0; i < MAX_RETRY; i++) {
+ if (file.delete())
+ i= MAX_RETRY;
+ else {
+ try {
+ Thread.sleep(1000); // sleep a second
+ } catch (InterruptedException e) {
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/ResourceHelper.java b/org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/ResourceHelper.java
new file mode 100644
index 000000000..1b76b5833
--- /dev/null
+++ b/org.eclipse.core.filebuffers.tests/src/org/eclipse/core/filebuffers/tests/ResourceHelper.java
@@ -0,0 +1,147 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2004 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Common Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/cpl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.core.filebuffers.tests;
+
+import java.io.File;
+import java.io.InputStream;
+import java.io.StringBufferInputStream;
+
+import org.eclipse.core.internal.filebuffers.ContainerGenerator;
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectDescription;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Plugin;
+
+/**
+ * @since 3.0
+ */
+public class ResourceHelper {
+
+ private final static IProgressMonitor NULL_MONITOR= new NullProgressMonitor();
+ private static final int MAX_RETRY= 5;
+
+ public static IProject createProject(String projectName) throws CoreException {
+
+ IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot();
+ IProject project= root.getProject(projectName);
+ if (!project.exists())
+ project.create(NULL_MONITOR);
+ else
+ project.refreshLocal(IResource.DEPTH_INFINITE, null);
+
+ if (!project.isOpen())
+ project.open(NULL_MONITOR);
+
+ return project;
+ }
+
+ public static void deleteProject(String projectName) throws CoreException {
+ IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot();
+ IProject project= root.getProject(projectName);
+ if (project.exists())
+ delete(project);
+ }
+
+ public static void delete(final IProject project) throws CoreException {
+ delete(project, true);
+ }
+
+ public static void delete(final IProject project, boolean deleteContent) throws CoreException {
+ for (int i= 0; i < MAX_RETRY; i++) {
+ try {
+ project.delete(deleteContent, true, NULL_MONITOR);
+ i= MAX_RETRY;
+ } catch (CoreException x) {
+ if (i == MAX_RETRY - 1) {
+ FileBuffersTestPlugin.getDefault().getLog().log(x.getStatus());
+// throw x;
+ }
+ try {
+ Thread.sleep(1000); // sleep a second
+ } catch (InterruptedException e) {
+ }
+ }
+ }
+ }
+
+ public static IFolder createFolder(String folderPath) throws CoreException {
+ ContainerGenerator generator= new ContainerGenerator(ResourcesPlugin.getWorkspace(), new Path(folderPath));
+ IContainer container= generator.generateContainer(NULL_MONITOR);
+ if (container instanceof IFolder)
+ return (IFolder) container;
+ return null;
+ }
+
+ public static IFile createFile(IFolder folder, String name, String contents) throws CoreException {
+ IFile file= folder.getFile(name);
+ if (contents == null)
+ contents= "";
+ InputStream inputStream= new StringBufferInputStream(contents);
+ file.create(inputStream, true, NULL_MONITOR);
+ return file;
+ }
+
+ public static IFile createLinkedFile(IContainer container, IPath linkPath, File linkedFileTarget) throws CoreException {
+ IFile iFile= container.getFile(linkPath);
+ iFile.createLink(new Path(linkedFileTarget.getAbsolutePath()), IResource.ALLOW_MISSING_LOCAL, NULL_MONITOR);
+ return iFile;
+ }
+
+ public static IFile createLinkedFile(IContainer container, IPath linkPath, Plugin plugin, IPath linkedFileTargetPath) throws CoreException {
+ File file= FileTool.getFileInPlugin(plugin, linkedFileTargetPath);
+ IFile iFile= container.getFile(linkPath);
+ iFile.createLink(new Path(file.getAbsolutePath()), IResource.ALLOW_MISSING_LOCAL, NULL_MONITOR);
+ return iFile;
+ }
+
+ public static IFolder createLinkedFolder(IContainer container, IPath linkPath, File linkedFolderTarget) throws CoreException {
+ IFolder folder= container.getFolder(linkPath);
+ folder.createLink(new Path(linkedFolderTarget.getAbsolutePath()), IResource.ALLOW_MISSING_LOCAL, NULL_MONITOR);
+ return folder;
+ }
+
+ public static IFolder createLinkedFolder(IContainer container, IPath linkPath, Plugin plugin, IPath linkedFolderTargetPath) throws CoreException {
+ File file= FileTool.getFileInPlugin(plugin, linkedFolderTargetPath);
+ IFolder iFolder= container.getFolder(linkPath);
+ iFolder.createLink(new Path(file.getAbsolutePath()), IResource.ALLOW_MISSING_LOCAL, NULL_MONITOR);
+ return iFolder;
+ }
+
+ public static IProject createLinkedProject(String projectName, Plugin plugin, IPath linkPath) throws CoreException {
+ IWorkspace workspace= ResourcesPlugin.getWorkspace();
+ IProject project= workspace.getRoot().getProject(projectName);
+
+ IProjectDescription desc= workspace.newProjectDescription(projectName);
+ File file= FileTool.getFileInPlugin(plugin, linkPath);
+ IPath projectLocation= new Path(file.getAbsolutePath());
+ if (Platform.getLocation().equals(projectLocation))
+ projectLocation= null;
+ desc.setLocation(projectLocation);
+
+ project.create(desc, NULL_MONITOR);
+ if (!project.isOpen())
+ project.open(NULL_MONITOR);
+
+ return project;
+ }
+}
diff --git a/org.eclipse.core.filebuffers.tests/test.xml b/org.eclipse.core.filebuffers.tests/test.xml
new file mode 100644
index 000000000..d6b8b99f7
--- /dev/null
+++ b/org.eclipse.core.filebuffers.tests/test.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<project name="testsuite" default="run" basedir=".">
+ <!-- The property ${eclipse-home} should be passed into this script -->
+ <!-- Set a meaningful default value for when it is not. -->
+ <property name="eclipse-home" value="${basedir}\..\.."/>
+
+ <!-- sets the properties eclipse-home, and library-file -->
+ <property name="plugin-name" value="org.eclipse.core.filebuffers.tests"/>
+ <property name="library-file"
+ value="${eclipse-home}/plugins/org.eclipse.test/library.xml"/>
+
+ <!-- This target holds all initialization code that needs to be done for -->
+ <!-- all tests that are to be run. Initialization for individual tests -->
+ <!-- should be done within the body of the suite target. -->
+ <target name="init">
+ <tstamp/>
+ <delete>
+ <fileset dir="${eclipse-home}" includes="org*.xml"/>
+ </delete>
+ </target>
+
+ <!-- This target defines the tests that need to be run. -->
+ <target name="suite">
+ <property name="core-filebuffers-folder"
+ value="${eclipse-home}/core_filebuffers_folder"/>
+ <delete dir="${core-filebuffers-folder}" quiet="true"/>
+ <ant target="core-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="data-dir" value="${core-filebuffers-folder}"/>
+ <property name="plugin-name" value="${plugin-name}"/>
+ <property name="classname"
+ value="org.eclipse.core.filebuffers.tests.FileBuffersTestSuite"/>
+ </ant>
+ </target>
+
+ <!-- This target holds code to cleanup the testing environment after -->
+ <!-- after all of the tests have been run. You can use this target to -->
+ <!-- delete temporary files that have been created. -->
+ <target name="cleanup">
+ </target>
+
+ <!-- This target runs the test suite. Any actions that need to happen -->
+ <!-- after all the tests have been run should go here. -->
+ <target name="run" depends="init,suite,cleanup">
+ <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="includes" value="org*.xml"/>
+ <property name="output-file" value="${plugin-name}.xml"/>
+ </ant>
+ </target>
+
+ <target name="performance">
+ </target>
+</project>
diff --git a/org.eclipse.core.filebuffers/.classpath b/org.eclipse.core.filebuffers/.classpath
deleted file mode 100644
index 065ac06e1..000000000
--- a/org.eclipse.core.filebuffers/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.core.filebuffers/.cvsignore b/org.eclipse.core.filebuffers/.cvsignore
deleted file mode 100644
index c5e82d745..000000000
--- a/org.eclipse.core.filebuffers/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin \ No newline at end of file
diff --git a/org.eclipse.core.filebuffers/.project b/org.eclipse.core.filebuffers/.project
deleted file mode 100644
index ac71d98c0..000000000
--- a/org.eclipse.core.filebuffers/.project
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.core.filebuffers</name>
- <comment></comment>
- <projects>
- <project>org.eclipse.core.resources</project>
- <project>org.eclipse.core.runtime.compatibility</project>
- <project>org.eclipse.text</project>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
diff --git a/org.eclipse.core.filebuffers/about.html b/org.eclipse.core.filebuffers/about.html
deleted file mode 100644
index 9db411aab..000000000
--- a/org.eclipse.core.filebuffers/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>20th June, 2002</p>
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;). A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License. In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html> \ No newline at end of file
diff --git a/org.eclipse.core.filebuffers/build.properties b/org.eclipse.core.filebuffers/build.properties
deleted file mode 100644
index 95c07dee4..000000000
--- a/org.eclipse.core.filebuffers/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.properties,\
- plugin.xml,\
- *.jar,\
- about.html
-src.includes = about.html,\
- schema/
-source.filebuffers.jar = src/
diff --git a/org.eclipse.core.filebuffers/hglegal2003.htm b/org.eclipse.core.filebuffers/hglegal2003.htm
deleted file mode 100644
index 47c8540c8..000000000
--- a/org.eclipse.core.filebuffers/hglegal2003.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <LINK REL="stylesheet" HREF="book.css" CHARSET="ISO-8859-1" TYPE="text/css">
- <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright (c) 2000, 2003 IBM Corporation and others. All Rights Reserved.
-</body>
-</html>
diff --git a/org.eclipse.core.filebuffers/ngibmcpy2003.gif b/org.eclipse.core.filebuffers/ngibmcpy2003.gif
deleted file mode 100644
index c786e43e1..000000000
--- a/org.eclipse.core.filebuffers/ngibmcpy2003.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.core.filebuffers/plugin.properties b/org.eclipse.core.filebuffers/plugin.properties
deleted file mode 100644
index 23d210cea..000000000
--- a/org.eclipse.core.filebuffers/plugin.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-pluginName= File Buffers
-providerName= Eclipse.org
-documentCreationPoint= Document Creation
-documentSetupPoint= Document Setup
-defaultDocumentFactory= Default Document Factory
diff --git a/org.eclipse.core.filebuffers/plugin.xml b/org.eclipse.core.filebuffers/plugin.xml
deleted file mode 100644
index f961a99a3..000000000
--- a/org.eclipse.core.filebuffers/plugin.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
- id="org.eclipse.core.filebuffers"
- name="%pluginName"
- version="3.0"
- provider-name="%providerName"
- class="org.eclipse.core.internal.filebuffers.FileBuffersPlugin">
-
- <runtime>
- <library name="filebuffers.jar">
- <export name="*"/>
- <packages prefixes="org.eclipse.core.filebuffers,org.eclipse.core.internal.filebuffers"/>
- </library>
- </runtime>
- <requires>
- <import plugin="org.eclipse.core.runtime.compatibility"/>
- <import plugin="org.eclipse.core.resources"/>
- <import plugin="org.eclipse.text"/>
- </requires>
-
-
- <extension-point id="documentCreation" name="%documentCreationPoint" schema="schema/documentCreation.exsd"/>
- <extension-point id="documentSetup" name="%documentSetupPoint" schema="schema/documentSetup.exsd"/>
-
- <extension
- id="DefaultDocumentFactory"
- name="%defaultDocumentFactory"
- point="org.eclipse.core.filebuffers.documentCreation">
- <factory
- extensions="*"
- class="org.eclipse.core.internal.filebuffers.DefaultDocumentFactory">
- </factory>
- </extension>
-</plugin>
diff --git a/org.eclipse.core.filebuffers/schema/documentCreation.exsd b/org.eclipse.core.filebuffers/schema/documentCreation.exsd
deleted file mode 100644
index 1d3ddc7e7..000000000
--- a/org.eclipse.core.filebuffers/schema/documentCreation.exsd
+++ /dev/null
@@ -1,114 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.core.filebuffers">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.core.filebuffers" id="documentCreation" name="Document Creation"/>
- </appInfo>
- <documentation>
- This extension point is interesting for your if you want the file buffer manager to instantiate a specific document implementation for certain file extensions.
- </documentation>
- </annotation>
-
- <element name="extension">
- <complexType>
- <sequence>
- <element ref="factory"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="factory">
- <complexType>
- <attribute name="class" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- <appInfo>
- <meta.attribute kind="java"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="extensions" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="since"/>
- </appInfo>
- <documentation>
- 3.0
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- [Enter extension point usage example here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiInfo"/>
- </appInfo>
- <documentation>
- [Enter API information here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
- [Enter information about supplied implementation of this extension point.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="copyright"/>
- </appInfo>
- <documentation>
- &lt;p&gt;
-&lt;a href=&quot;hglegal.htm&quot;&gt;
- &lt;img SRC=&quot;ngibmcpy.gif&quot;
- ALT=&quot;Copyright (c) 2000, 2003 IBM Corporation and others. All Rights Reserved.&quot;
- BORDER=&quot;0&quot; height=&quot;14&quot; width=&quot;324&quot;&gt;&lt;/a&gt;
-&lt;/p&gt;
- </documentation>
- </annotation>
-
-</schema>
diff --git a/org.eclipse.core.filebuffers/schema/documentSetup.exsd b/org.eclipse.core.filebuffers/schema/documentSetup.exsd
deleted file mode 100644
index 1f3908d35..000000000
--- a/org.eclipse.core.filebuffers/schema/documentSetup.exsd
+++ /dev/null
@@ -1,114 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.core.filebuffers">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.core.filebuffers" id="documentSetup" name="Document Setup"/>
- </appInfo>
- <documentation>
- This extension point is interesting if you want to install specific partitioners etc. on documents created by the file buffer manager for certain file extensions.
- </documentation>
- </annotation>
-
- <element name="extension">
- <complexType>
- <sequence>
- <element ref="participant"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="participant">
- <complexType>
- <attribute name="class" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- <appInfo>
- <meta.attribute kind="java"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="extensions" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="since"/>
- </appInfo>
- <documentation>
- 3.0
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- [Enter extension point usage example here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiInfo"/>
- </appInfo>
- <documentation>
- [Enter API information here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
- [Enter information about supplied implementation of this extension point.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="copyright"/>
- </appInfo>
- <documentation>
- &lt;p&gt;
-&lt;a href=&quot;hglegal.htm&quot;&gt;
- &lt;img SRC=&quot;ngibmcpy.gif&quot;
- ALT=&quot;Copyright (c) 2000, 2003 IBM Corporation and others. All Rights Reserved.&quot;
- BORDER=&quot;0&quot; height=&quot;14&quot; width=&quot;324&quot;&gt;&lt;/a&gt;
-&lt;/p&gt;
- </documentation>
- </annotation>
-
-</schema>
diff --git a/org.eclipse.core.filebuffers/scripts/exportplugin.xml b/org.eclipse.core.filebuffers/scripts/exportplugin.xml
deleted file mode 100644
index 57d44f387..000000000
--- a/org.eclipse.core.filebuffers/scripts/exportplugin.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<project name="Export Text" default="export" basedir="..">
- <target name="init">
- <tstamp/>
- <property name="destdir" value="../../plugin-export" />
- <property name="plugin" value="org.eclipse.core.filebuffers" />
- <property name="version" value="_3.0.0" />
- <property name="dest" value="${destdir}/${plugin}${version}" />
- </target>
-
- <target name="build" depends="init">
- <eclipse.incrementalBuild project="${plugin}" kind="incr"/>
- </target>
-
- <target name="export" depends="build">
- <mkdir dir="${destdir}" />
- <delete dir="${dest}" />
- <mkdir dir="${dest}" />
- <jar
- jarfile="${dest}/filebuffers.jar"
- basedir="bin"
- />
- <copy file="plugin.xml" todir="${dest}"/>
- <copy file="plugin.properties" todir="${dest}"/>
- <zip zipfile="${dest}/filebufferssrc.zip">
- <fileset dir="src" />
- </zip>
- </target>
-</project>
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/FileBuffers.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/FileBuffers.java
deleted file mode 100644
index 447f95e5d..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/FileBuffers.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.filebuffers;
-
-import java.io.File;
-
-import org.eclipse.core.internal.filebuffers.FileBuffersPlugin;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-
-/**
- * Facade for the file buffers plug-in. Provides access to the
- * text file buffer manager.
- *
- * @since 3.0
- */
-public final class FileBuffers {
-
- /**
- * Cannot be instantiated.
- */
- private FileBuffers() {
- }
-
- /**
- * Returns the text file buffer manager.
- *
- * @return the text file buffer manager
- */
- public static ITextFileBufferManager getTextFileBufferManager() {
- return FileBuffersPlugin.getDefault().getFileBufferManager();
- }
-
- /**
- * Returns the workspace file at the given location or <code>null</code> if
- * the location is not a valid location in the workspace.
- *
- * @param location the location
- * @return the workspace file at the location or <code>null</code>
- */
- public static IFile getWorkspaceFileAtLocation(IPath location) {
- IPath normalized= normalizeLocation(location);
- if (normalized.segmentCount() >= 2) {
- // @see IContainer#getFile for the required number of segments
- IWorkspaceRoot workspaceRoot= ResourcesPlugin.getWorkspace().getRoot();
- IFile file= workspaceRoot.getFile(normalized);
- if (file != null && file.exists())
- return file;
- }
- return null;
- }
-
- /**
- * Returns a copy of the given location in a normalized form.
- *
- * @param location the location to be normalized
- * @return normalized copy of location
- */
- public static IPath normalizeLocation(IPath location) {
- IWorkspaceRoot workspaceRoot= ResourcesPlugin.getWorkspace().getRoot();
- IProject[] projects= workspaceRoot.getProjects();
-
- for (int i= 0, length= projects.length; i < length; i++) {
- IPath path= projects[i].getLocation();
- if (path.isPrefixOf(location)) {
- IPath filePath= location.removeFirstSegments(path.segmentCount());
- filePath= projects[i].getFullPath().append(filePath);
- return filePath.makeAbsolute();
- }
-
- }
- return location.makeAbsolute();
- }
-
- /**
- * Returns the file in the local file system for the given location.
- * <p>
- * The location is either a full path of a workspace resource or an
- * absolute path in the local file system.
- * </p>
- *
- * @param location
- * @return
- */
- public static File getSystemFileAtLocation(IPath location) {
- if (location == null)
- return null;
-
- IFile file= getWorkspaceFileAtLocation(location);
- if (file != null) {
- IPath path= file.getLocation();
- return path.toFile();
- }
-
- return location.toFile();
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentFactory.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentFactory.java
deleted file mode 100644
index 989ecf993..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentFactory.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.filebuffers;
-
-import org.eclipse.jface.text.IDocument;
-
-/**
- * Factory for text file buffer documents. Used by the text file buffer
- * manager to create the document for a new text file buffer.
- *
- * @since 3.0
- */
-public interface IDocumentFactory {
-
- /**
- * Creates and returns a new, empty document.
- *
- * @return a new, empty document
- */
- IDocument createDocument();
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentSetupParticipant.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentSetupParticipant.java
deleted file mode 100644
index 93a5d5ad8..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IDocumentSetupParticipant.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.filebuffers;
-
-import org.eclipse.jface.text.IDocument;
-
-/**
- * Participates in the setup of a text file buffer document.
- *
- * @since 3.0
- */
-public interface IDocumentSetupParticipant {
-
- /**
- * Sets up the document to be ready for use by a text file buffer.
- *
- * @param document the document to be set up
- */
- void setup(IDocument document);
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBuffer.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBuffer.java
deleted file mode 100644
index 28b82b12f..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBuffer.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.filebuffers;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-
-/**
- * A file buffer represents a file that can be edited by more than one client. Editing is
- * session oriented. This means that editing is a sequence of modification steps. The
- * start of the sequence and the end of the sequence are explicitly indicated. There are
- * no time constraints connected with the sequence of modification steps. A file buffer
- * reifies editing sessions and allows them to interleave.<p>
- * It is not specified whether simultaneous editing sessions can be owned by different
- * threads.
- *
- * @since 3.0
- */
-public interface IFileBuffer {
-
- /**
- * Returns the location of this file buffer.
- * <p>
- * The location is either a full path of a workspace resource or an
- * absolute path in the local file system.
- * </p>
- *
- * @return the location of this file buffer
- */
- IPath getLocation();
-
- /**
- * Returns whether this file buffer is synchronized with the file system. This is when
- * the file buffer's underlying file is in sync with the file system and the file buffer
- * has been initialized after the underlying files has been modified the last time.
- *
- * @return <code>true</code> if the file buffer is synchronized with the file system
- */
- boolean isSynchronized();
-
- /**
- * Reverts the contents of this file buffer to the content of its underlying file. After
- * that call successfully returned, <code>isDirty</code> returns <code>false</code> and
- * <code>isSynchronized</code> returns <code>true</code>.
- *
- * @param monitor the progress monitor
- * @throws CoreException if reading or accessing the underlying file fails
- */
- void revert(IProgressMonitor monitor) throws CoreException;
-
- /**
- * Commits this file buffer by changing the contents of th underlying file to
- * the contents of this file buffer. After that call, <code>isDirty</code>
- * returns <code>false</code> and <code>isSynchronized</code> returns
- * <code>true</code>.
- *
- * @param monitor the progress monitor
- * @param overwrite indicates whether the underlying file should be overwritten if it is not synchronized with the file system
- * @throws CoreException if writing or accessing the underlying file fails
- */
- void commit(IProgressMonitor monitor, boolean overwrite) throws CoreException;
-
- /**
- * Returns whether changes have been applied to this file buffer since initialization, or the most
- * recent <code>revert</code> or <code>commit</code> call.
- *
- * @return <code>true</code> if changes have been applied to this buffer
- */
- boolean isDirty();
-
- /**
- * Returns whether this file buffer is shared by more than one client.
- *
- * @return <code>true</code> if this file buffer is shared by more than one client
- */
- boolean isShared();
-
- /**
- * Validates the state of this file buffer and tries to bring the buffer's
- * underlying file into a state in which it can be modified. If state
- * validation is not supported this operation does nothing.
- *
- * @param monitor the progress monitor
- * @param computationContext the context in which the validation is
- * performed, e.g., a SWT shell
- * @exception CoreException if the underlying file can not be accessed to
- * it's state cannot be changed
- */
- void validateState(IProgressMonitor monitor, Object computationContext) throws CoreException;
-
- /**
- * Returns whether the state of this file buffer has been validated. If
- * state validation is not supported this method always returns <code>true</code>.
- *
- * @return <code>true</code> if the state has been validated, <code>false</code>
- * otherwise
- */
- boolean isStateValidated();
-
- /**
- * Resets state validation. If state validation is supported, <code>isStateValidated</code>
- * afterwars returns <code>false</code> unti the state is revalidated.
- */
- void resetStateValidation();
-
- /**
- * Returns the status of this file buffer. This is the result of the last operation peformed on this file buffer or
- * internally initiated by this file buffer.
- *
- * @return the status of this file buffer
- */
- IStatus getStatus();
-
- /**
- * Returns the modification stamp of the file underlying this file buffer.
- *
- * @return the modification stamp of the file underlying this file buffer
- */
- long getModificationStamp();
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferListener.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferListener.java
deleted file mode 100644
index 06f8e244f..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferListener.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.filebuffers;
-
-import org.eclipse.core.runtime.IPath;
-
-/**
- * Interface for listeners of file buffer changes.
- *
- * @since 3.0
- */
-public interface IFileBufferListener {
-
- /**
- * Informs the listener about the creation of the given buffer.
- *
- * @param buffer the created file buffer
- */
- void bufferCreated(IFileBuffer buffer);
-
- /**
- * Informs the listener about the disposal of the given buffer.
- *
- * @param buffer
- */
- void bufferDisposed(IFileBuffer buffer);
-
- /**
- * Informs the listener about an upcoming replace of the contents of the given buffer.
- *
- * @param buffer the effected file buffer
- */
- void bufferContentAboutToBeReplaced(IFileBuffer buffer);
-
- /**
- * Informs the listener that the buffer of the given buffer has been replaced.
- *
- * @param buffer the effected file buffer
- */
- void bufferContentReplaced(IFileBuffer buffer);
-
- /**
- * Informs the listener about the start of a state changing operation on
- * the given buffer.
- *
- * @param buffer the effected file buffer
- */
- void stateChanging(IFileBuffer buffer);
-
- /**
- * Informs the listener that the dirty state of the given buffer changed
- * to the specified value
- *
- * @param buffer the effected file buffer
- * @param isDirty <code>true</code> if the buffer is dirty, <code>false</code> otherwise
- */
- void dirtyStateChanged(IFileBuffer buffer, boolean isDirty);
-
- /**
- * Informs the listener that the state validation changed to the specified value.
- *
- * @param buffer the effected file buffer
- * @param isStateValidated <code>true</code> if the buffer state is validated, <code>false</code> otherwise
- */
- void stateValidationChanged(IFileBuffer buffer, boolean isStateValidated);
-
- /**
- * Informs the listener that the file underlying the given file buffer has been moved to the
- * given location.
- *
- * @param buffer the effected file buffer
- * @param target the new location (not just the container)
- */
- void underlyingFileMoved(IFileBuffer buffer, IPath path);
-
- /**
- * Informs the listener that the file underlying the given file buffer has been deleted.
- *
- * @param buffer the effected file buffer
- */
- void underlyingFileDeleted(IFileBuffer buffer);
-
- /**
- * Informs the listener that a state changing operation on the given
- * file buffer failed.
- *
- * @param buffer the effected file buffer
- */
- void stateChangeFailed(IFileBuffer buffer);
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferManager.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferManager.java
deleted file mode 100644
index f0e7cae7f..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/IFileBufferManager.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-
-package org.eclipse.core.filebuffers;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-
-/**
- * A file buffer manager manages file buffers for files while the files are
- * connected to the file buffer manager. In order to connect a file to a file
- * buffer manager call <code>connect</code>. After that call has
- * successfully completed the file buffer can be obtained by <code>getFileBuffer</code>.
- * The file buffer is created on the first connect and destroyed on the last
- * disconnect. I.e. the file buffer manager keeps track of how often a file is
- * connected and returns the same file buffer to each client as long as the
- * file is connected.
- *
- * @since 3.0
- */
-public interface IFileBufferManager {
-
- /**
- * Connects the file at the given location to this manager. After that call
- * successfully completed it is guaranteed that each call to <code>getFileBuffer</code>
- * returns the same file buffer until <code>disconnect</code> is called.
- * <p>
- * The provided location is either a full path of a workspace resource or
- * an absolute path in the local file system. The file buffer manager does
- * not resolve the location of workspace resources in the case of linked
- * resources.
- * </p>
- *
- * @param location the location of the file to be connected
- * @param monitor the progress monitor
- * @throws CoreException if the file could not successfully be connected
- */
- void connect(IPath location, IProgressMonitor monitor) throws CoreException;
-
- /**
- * Disconnects the file at the given location from this manager. After that
- * call successfully completed there is no guarantee that <code>getFileBuffer</code>
- * will return a valid file buffer.
- * <p>
- * The provided location is either a full path of a workspace resource or
- * an absolute path in the local file system. The file buffer manager does
- * not resolve the location of workspace resources in the case of linked
- * resources.
- * </p>
- *
- * @param location the location of the file to be disconnected
- * @param monitor the progress monitor
- * @throws CoreException if the file could not successfully be disconnected
- */
- void disconnect(IPath location, IProgressMonitor monitor) throws CoreException;
-
- /**
- * Returns the file buffer managed for the given location or <code>null</code>
- * if there is no such file buffer.
- * <p>
- * The provided location is either a full path of a workspace resource or
- * an absolute path in the local file system. The file buffer manager does
- * not resolve the location of workspace resources in the case of linked
- * resources.
- * </p>
- *
- * @param location the location
- * @return the file buffer managed for that location or <code>null</code>
- */
- IFileBuffer getFileBuffer(IPath location);
-
- /**
- * Sets the synchronization context for this file buffer manager, i.e., for
- * all file buffers this manager manages.
- *
- * @param context the synchronization context managed by this file buffer
- * manager
- */
- void setSynchronizationContext(ISynchronizationContext context);
-
- /**
- * Requests that the synchronization context is used to synchronize the
- * given location with its file buffer. This call as no effect if there is
- * no file buffer managed for the given location.
- * <p>
- * The provided location is either a full path of a workspace resource or
- * an absolute path in the local file system. The file buffer manager does
- * not resolve the location of workspace resources in the case of linked
- * resources.
- * </p>
- *
- * @param location the location
- */
- void requestSynchronizationContext(IPath location);
-
- /**
- * No longer requests the synchronization context for the filebuffer for
- * the given location. This method has no effect if there is no file buffer
- * managed for this location.
- * <p>
- * The provided location is either a full path of a workspace resource or
- * an absolute path in the local file system. The file buffer manager does
- * not resolve the location of workspace resources in the case of linked
- * resources.
- * </p>
- *
- * @param location the location
- */
- void releaseSynchronizationContext(IPath location);
-
- /**
- * Adds the given listener to the list of file buffer listeners. After that
- * call the listener is informated about changes related to this file
- * buffer. If the listener is already registered with the file buffer, this
- * call has no effect.
- *
- * @param listener the listener to be added
- */
- void addFileBufferListener(IFileBufferListener listener);
-
- /**
- * Removes the given listener from the list of file buffer listeners. If
- * the listener is not registered with this file buffer, this call has no
- * effect.
- *
- * @param listener the listener to be removed
- */
- void removeFileBufferListener(IFileBufferListener listener);
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ISynchronizationContext.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ISynchronizationContext.java
deleted file mode 100644
index 046e9a93d..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ISynchronizationContext.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.filebuffers;
-
-/**
- * Executes runnables that describe how to synchronize a file buffer with its underlying file.
- *
- * @since 3.0
- */
-public interface ISynchronizationContext {
-
- /**
- * Executes the given runnable.
- *
- * @param runnable the runnable to be executed
- */
- void run(Runnable runnable);
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBuffer.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBuffer.java
deleted file mode 100644
index 60da3a8bb..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBuffer.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.filebuffers;
-
-
-import org.eclipse.jface.text.IDocument;
-
-/**
- * A text file buffer is a file buffer for text files. The contents of a text file buffe is
- * given in the form of a document. Also, the text file buffer provides methods to
- * manage the character encoding used to read and write the buffer's underlying
- * text file.
- *
- * @since 3.0
- */
-public interface ITextFileBuffer extends IFileBuffer {
-
- /**
- * Returns the document of this text file buffer.
- *
- * @return the document of this text file buffer
- */
- IDocument getDocument();
-
- /**
- * Returns the character encoding to be used for reading and writing the
- * buffer's underlying file.
- *
- * @return the character encoding
- */
- String getEncoding();
-
- /**
- * Sets the character encoding to be used for reading and writing the buffer's
- * underlyning file.
- *
- * @param encoding the encoding
- */
- void setEncoding(String encoding);
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBufferManager.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBufferManager.java
deleted file mode 100644
index 6897cdf56..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/ITextFileBufferManager.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-
-package org.eclipse.core.filebuffers;
-
-import org.eclipse.core.runtime.IPath;
-
-import org.eclipse.jface.text.IDocument;
-
-
-/**
- * A text file buffer manager manages text file buffers for files whose contents
- * could be considered text.
- *
- * @since 3.0
- */
-public interface ITextFileBufferManager extends IFileBufferManager {
-
- /**
- * Returns the text file buffer managed for the file at the given location
- * or <code>null</code> if either there is no such text file buffer.
- * <p>
- * The provided location is either a full path of a workspace resource or
- * an absolute path in the local file system. The file buffer manager does
- * not resolve the location of workspace resources in the case of linked
- * resources.
- * </p>
- *
- * @param location the location
- * @return the text file buffer managed for that location or <code>null</code>
- */
- ITextFileBuffer getTextFileBuffer(IPath location);
-
- /**
- * Returns the default encoding that is used to read the contents of text files
- * if no other encoding is specified.
- *
- * @return the default text file encoding
- */
- String getDefaultEncoding();
-
- /**
- * Creates a new empty document . The document is set up in the same way as
- * it would be used in a text file buffer for a file at the given location.
- * <p>
- * The provided location is either a full path of a workspace resource or
- * an absolute path in the local file system. The file buffer manager does
- * not resolve the location of workspace resources in the case of linked
- * resources.
- * </p>
- *
- * @param location the location used to set up the newly created document
- * @return a new empty document
- */
- IDocument createEmptyDocument(IPath location);
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/AbstractFileBuffer.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/AbstractFileBuffer.java
deleted file mode 100644
index 6be8c2a9e..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/AbstractFileBuffer.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-
-import org.eclipse.core.filebuffers.IFileBuffer;
-
-/**
- * @since 3.0
- */
-public abstract class AbstractFileBuffer implements IFileBuffer {
-
-
- public abstract void create(IPath location, IProgressMonitor monitor) throws CoreException;
-
- public abstract void connect();
-
- public abstract void disconnect() throws CoreException;
-
- public abstract boolean isDisposed();
-
- public abstract void requestSynchronizationContext();
-
- public abstract void releaseSynchronizationContext();
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ContainerGenerator.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ContainerGenerator.java
deleted file mode 100644
index c1b0c7066..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ContainerGenerator.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.SubProgressMonitor;
-
-public class ContainerGenerator {
-
- private IPath fContainerFullPath;
- private IContainer fContainer;
- private IWorkspace fWorkspace;
-
- public ContainerGenerator(IWorkspace workspace, IPath containerPath) {
- fWorkspace= workspace;
- fContainerFullPath = containerPath;
- }
-
- private IFolder createFolder(IFolder folderHandle, IProgressMonitor monitor) throws CoreException {
- folderHandle.create(false, true, monitor);
- if (monitor.isCanceled())
- throw new OperationCanceledException();
- return folderHandle;
- }
-
- private IFolder createFolderHandle(IContainer container, String folderName) {
- return container.getFolder(new Path(folderName));
- }
-
- private IProject createProject(IProject projectHandle, IProgressMonitor monitor) throws CoreException {
- try {
- monitor.beginTask("",2000);//$NON-NLS-1$
-
- projectHandle.create(new SubProgressMonitor(monitor, 1000));
- if (monitor.isCanceled())
- throw new OperationCanceledException();
-
- projectHandle.open(new SubProgressMonitor(monitor, 1000));
- if (monitor.isCanceled())
- throw new OperationCanceledException();
-
- } finally {
- monitor.done();
- }
-
- return projectHandle;
- }
-
- private IProject createProjectHandle(IWorkspaceRoot root, String projectName) {
- return root.getProject(projectName);
- }
-
- public IContainer generateContainer(IProgressMonitor monitor) throws CoreException {
- IWorkspaceRunnable runnable= new IWorkspaceRunnable() {
- public void run(IProgressMonitor monitor) throws CoreException {
- monitor.beginTask("creating container", 1000 * fContainerFullPath.segmentCount());
- if (fContainer != null)
- return;
-
- // Does the container exist already?
- IWorkspaceRoot root= fWorkspace.getRoot();
- fContainer= (IContainer) root.findMember(fContainerFullPath);
- if (fContainer != null)
- return;
-
- // Create the container for the given path
- fContainer= root;
- for (int i = 0; i < fContainerFullPath.segmentCount(); i++) {
- String currentSegment = fContainerFullPath.segment(i);
- IResource resource = fContainer.findMember(currentSegment);
- if (resource != null) {
- fContainer= (IContainer) resource;
- monitor.worked(1000);
- }
- else {
- if (i == 0) {
- IProject projectHandle= createProjectHandle(root, currentSegment);
- fContainer= createProject(projectHandle, new SubProgressMonitor(monitor,1000));
- }
- else {
- IFolder folderHandle= createFolderHandle(fContainer, currentSegment);
- fContainer= createFolder(folderHandle, new SubProgressMonitor(monitor,1000));
- }
- }
- }
- }
- };
-
- // Get scheduling rule
- IWorkspaceRoot root= fWorkspace.getRoot();
- IPath existingParentPath= fContainerFullPath;
- while (!root.exists(existingParentPath))
- existingParentPath= existingParentPath.removeLastSegments(1);
-
- IResource schedulingRule= root.findMember(existingParentPath);
- fWorkspace.run(runnable, schedulingRule, IWorkspace.AVOID_UPDATE, monitor);
- return fContainer;
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/DefaultDocumentFactory.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/DefaultDocumentFactory.java
deleted file mode 100644
index 0a4973ab2..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/DefaultDocumentFactory.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-import org.eclipse.core.filebuffers.IDocumentFactory;
-
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-
-/**
- * The default document factory.
- */
-public class DefaultDocumentFactory implements IDocumentFactory {
-
- public DefaultDocumentFactory() {
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IDocumentFactory#createDocument()
- */
- public IDocument createDocument() {
- return new Document();
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ExtensionsRegistry.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ExtensionsRegistry.java
deleted file mode 100644
index f8fc178c3..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ExtensionsRegistry.java
+++ /dev/null
@@ -1,231 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.filebuffers.IDocumentFactory;
-import org.eclipse.core.filebuffers.IDocumentSetupParticipant;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.ILog;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-
-
-/**
- * This registry manages shareable document factories. Document factories are specified
- * in <code>plugin.xml</code> per file name extension.
- */
-public class ExtensionsRegistry {
-
- private final static String WILDCARD= "*"; //$NON-NLS-1$
-
- /** The mapping between name extensions and configuration elements describing document factories. */
- private Map fFactoryDescriptors= new HashMap();
- /** The mapping between configuration elements for document factories and instantiated document factories. */
- private Map fFactories= new HashMap();
- /** The mapping between name extensions and configuration elements describing document setup participants. */
- private Map fSetupParticipantDescriptors= new HashMap();
- /** The mapping between configuration elements for setup participants and instantiated setup participants. */
- private Map fSetupParticipants= new HashMap();
-
-
- /**
- * Creates a new document factory registry and intializes it with the information
- * found in the plugin registry.
- */
- public ExtensionsRegistry() {
- initialize("documentCreation", "extensions", fFactoryDescriptors); //$NON-NLS-1$ //$NON-NLS-2$
- initialize("documentSetup", "extensions", fSetupParticipantDescriptors); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- /**
- * Reads the comma-separated value of the given configuration element for the given attribute name and remembers the configuration element
- * in the given map under the individual tokens of the attribute value.
- */
- private void read(String attributeName, IConfigurationElement element, Map map) {
- String value= element.getAttribute(attributeName);
- if (value != null) {
- StringTokenizer tokenizer= new StringTokenizer(value, ","); //$NON-NLS-1$
- while (tokenizer.hasMoreTokens()) {
- String token= tokenizer.nextToken().trim();
-
- Set s= (Set) map.get(token);
- if (s == null) {
- s= new HashSet();
- map.put(token, s);
- }
- s.add(element);
- }
- }
- }
-
- /**
- * Adds an entry to the log of this plugin for the given status
- * @param status the status to log
- */
- private void log(IStatus status) {
- ILog log= Platform.getPlugin(FileBuffersPlugin.PLUGIN_ID).getLog();
- log.log(status);
- }
-
- /**
- * Initializes this registry. It retrieves all implementers of the given
- * extension point and remembers those implementers based on the
- * file name extensions in the given map.
- *
- * @param extensionPointName the name of the extension point
- * @param childElementName the name of the child elements
- * @param descriptors the map to be filled
- */
- private void initialize(String extensionPointName, String childElementName, Map descriptors) {
-
- IExtensionPoint extensionPoint= Platform.getPluginRegistry().getExtensionPoint(FileBuffersPlugin.PLUGIN_ID, extensionPointName);
- if (extensionPoint == null) {
- log(new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, 0, MessageFormat.format("Extension point \"{0}\" not found.", new Object[] { extensionPointName}), null));
- return;
- }
-
- IConfigurationElement[] elements= extensionPoint.getConfigurationElements();
- for (int i= 0; i < elements.length; i++)
- read(childElementName, elements[i], descriptors);
- }
-
- /**
- * Returns the executable extension for the given configuration element.
- * If there is no instantiated extension remembered for this
- * element, a new extension is created and put into the cache if it is of the requested type.
- *
- * @param entry the configuration element
- * @param extensions the map of instantiated extensions
- * @param extensionType the requested result type
- */
- private Object getExtension(IConfigurationElement entry, Map extensions, Class extensionType) {
- Object extension= extensions.get(entry);
- if (extension != null)
- return extension;
-
- try {
- extension= entry.createExecutableExtension("class"); //$NON-NLS-1$
- } catch (CoreException x) {
- log(x.getStatus());
- }
-
- if (extensionType.isInstance(extension)) {
- extensions.put(entry, extension);
- return extension;
- }
-
- return null;
- }
-
- /**
- * Returns the first enumerated element of the given set.
- *
- * @param set the set from which to choose
- */
- private IConfigurationElement selectConfigurationElement(Set set) {
- if (set != null && !set.isEmpty()) {
- Iterator e= set.iterator();
- return (IConfigurationElement) e.next();
- }
- return null;
- }
-
- /**
- * Returns a shareable document factory for the given file name extension.
- *
- * @param extension the name extension to be used for lookup
- * @return the shareable document factory or <code>null</code>
- */
- private IDocumentFactory getDocumentFactory(String extension) {
-
- Set set= (Set) fFactoryDescriptors.get(extension);
- if (set != null) {
- IConfigurationElement entry= selectConfigurationElement(set);
- return (IDocumentFactory) getExtension(entry, fFactories, IDocumentFactory.class);
- }
- return null;
- }
-
- /**
- * Returns the set of setup participants for the given file name.
- *
- * @param extension the name extension to be used for lookup
- * @return the shareable set of document setup participants
- */
- private List getDocumentSetupParticipants(String extension) {
-
- Set set= (Set) fSetupParticipantDescriptors.get(extension);
- if (set == null)
- return null;
-
- List participants= new ArrayList();
- Iterator e= set.iterator();
- while (e.hasNext()) {
- IConfigurationElement entry= (IConfigurationElement) e.next();
- Object participant= getExtension(entry, fSetupParticipants, IDocumentSetupParticipant.class);
- if (participant != null)
- participants.add(participant);
- }
-
- return participants;
- }
-
- /**
- * Returns the shareable document factory for the given location.
- *
- * @param location the location for which to looked up the factory
- * @return the shareable document factory
- */
- public IDocumentFactory getDocumentFactory(IPath location) {
- IDocumentFactory factory= getDocumentFactory(location.getFileExtension());
- if (factory == null)
- factory= getDocumentFactory(WILDCARD);
- return factory;
- }
-
- /**
- * Returns the shareable set of document setup participants for the given location.
- *
- * @param location the location for which to look up the setup participants
- * @return the shareable set of document setup participants
- */
- public IDocumentSetupParticipant[] getDocumentSetupParticipants(IPath location) {
- List participants= new ArrayList();
-
- List p= getDocumentSetupParticipants(location.getFileExtension());
- if (p != null)
- participants.addAll(p);
-
- p= getDocumentSetupParticipants(WILDCARD);
- if (p != null)
- participants.addAll(p);
-
- IDocumentSetupParticipant[] result= new IDocumentSetupParticipant[participants.size()];
- participants.toArray(result);
- return result;
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/FileBuffersPlugin.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/FileBuffersPlugin.java
deleted file mode 100644
index 752cffe28..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/FileBuffersPlugin.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package org.eclipse.core.internal.filebuffers;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.filebuffers.ITextFileBufferManager;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPluginDescriptor;
-import org.eclipse.core.runtime.Plugin;
-
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class FileBuffersPlugin extends Plugin {
-
- public final static String PLUGIN_ID= "org.eclipse.core.filebuffers"; //$NON-NLS-1$
-
- /** The shared plug-in instance */
- private static FileBuffersPlugin fgPlugin;
- /** The resource bundle */
- private ResourceBundle fResourceBundle;
- /** The file buffer manager */
- private ITextFileBufferManager fTextFileBufferManager;
-
- /**
- * The constructor.
- */
- public FileBuffersPlugin(IPluginDescriptor descriptor) {
- super(descriptor);
- fgPlugin = this;
- try {
- fResourceBundle= ResourceBundle.getBundle("org.eclipse.core.internal.filebuffers.FileBuffersPlugin"); //$NON-NLS-1$
- } catch (MissingResourceException x) {
- fResourceBundle = null;
- }
- }
-
- /**
- * Returns the shared instance.
- */
- public static FileBuffersPlugin getDefault() {
- return fgPlugin;
- }
-
- /**
- * Returns the workspace instance.
- */
- public static IWorkspace getWorkspace() {
- return ResourcesPlugin.getWorkspace();
- }
-
- /**
- * Returns the string from the plugin's resource bundle,
- * or 'key' if not found.
- */
- public static String getResourceString(String key) {
- ResourceBundle bundle= FileBuffersPlugin.getDefault().getResourceBundle();
- try {
- return (bundle!=null ? bundle.getString(key) : key);
- } catch (MissingResourceException e) {
- return key;
- }
- }
-
- /**
- * Returns the plugin's resource bundle,
- */
- public ResourceBundle getResourceBundle() {
- return fResourceBundle;
- }
-
- /**
- * Returns the text file buffer manager of this plug-in.
- *
- * @return the text file buffer manager of this plug-in
- */
- public ITextFileBufferManager getFileBufferManager() {
- if (fTextFileBufferManager == null)
- fTextFileBufferManager= new TextFileBufferManager();
- return fTextFileBufferManager;
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaFileBuffer.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaFileBuffer.java
deleted file mode 100644
index d636116ad..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaFileBuffer.java
+++ /dev/null
@@ -1,218 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-import java.io.File;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.ILog;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-
-/**
- * @since 3.0
- */
-public abstract class JavaFileBuffer extends AbstractFileBuffer {
-
- /** The location */
- protected IPath fLocation;
- /** The element for which the info is stored */
- protected File fFile;
- /** How often the element has been connected */
- protected int fReferenceCount;
- /** Can the element be saved */
- protected boolean fCanBeSaved= false;
- /** The status of this element */
- protected IStatus fStatus;
- /** The time stamp at which this buffer synchronized with the underlying file. */
- protected long fSynchronizationStamp= IFile.NULL_STAMP;
- /** How often the synchronization context has been requested */
- protected int fSynchronizationContextCount;
- /** The text file buffer manager */
- protected TextFileBufferManager fManager;
-
-
- public JavaFileBuffer(TextFileBufferManager manager) {
- super();
- fManager= manager;
- }
-
- abstract protected void addFileBufferContentListeners();
-
- abstract protected void removeFileBufferContentListeners();
-
- abstract protected void initializeFileBufferContent(IProgressMonitor monitor) throws CoreException;
-
- abstract protected void commitFileBufferContent(IProgressMonitor monitor, boolean overwrite) throws CoreException;
-
- /**
- * Returns the file at the given location or <code>null</code> if
- * there is no such file.
- *
- * @param location the location
- * @return the file at the given location
- */
- private File getFileAtLocation(IPath location) {
- File file= FileBuffers.getSystemFileAtLocation(location);
- return file.exists() ? file : null;
- }
-
- public void create(IPath location, IProgressMonitor monitor) throws CoreException {
- File file= getFileAtLocation(location);
- if (file == null)
- throw new CoreException(new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, "File does not exist", null));
-
- fLocation= location;
- fFile= file;
- initializeFileBufferContent(monitor);
- fSynchronizationStamp= fFile.lastModified();
-
- addFileBufferContentListeners();
- }
-
- public void connect() {
- ++ fReferenceCount;
- }
-
- public void disconnect() throws CoreException {
- -- fReferenceCount;
- }
-
- /**
- * Returns whether this file buffer has already been disposed.
- *
- * @return <code>true</code> if already disposed, <code>false</code> otherwise
- */
- public boolean isDisposed() {
- return fReferenceCount <= 0;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#getLocation()
- */
- public IPath getLocation() {
- return fLocation;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#commit(org.eclipse.core.runtime.IProgressMonitor, boolean)
- */
- public void commit(IProgressMonitor monitor, boolean overwrite) throws CoreException {
- if (!isDisposed() && fCanBeSaved) {
-
- fManager.fireStateChanging(this);
-
- try {
- commitFileBufferContent(monitor, overwrite);
- } catch (CoreException x) {
- fManager.fireStateChangeFailed(this);
- throw x;
- } catch (RuntimeException x) {
- fManager.fireStateChangeFailed(this);
- throw x;
- }
-
- fCanBeSaved= false;
- addFileBufferContentListeners();
- fManager.fireDirtyStateChanged(this, fCanBeSaved);
- }
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#isDirty()
- */
- public boolean isDirty() {
- return fCanBeSaved;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#isShared()
- */
- public boolean isShared() {
- return fReferenceCount > 1;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#validateState(org.eclipse.core.runtime.IProgressMonitor, java.lang.Object)
- */
- public void validateState(IProgressMonitor monitor, Object computationContext) throws CoreException {
- // nop
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#isStateValidated()
- */
- public boolean isStateValidated() {
- return true;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#resetStateValidation()
- */
- public void resetStateValidation() {
- // nop
- }
-
- /**
- * Sends out the notification that the file serving as document input has been moved.
- *
- * @param newLocation the path of the new location of the file
- */
- protected void handleFileMoved(IPath newLocation) {
- fManager.fireUnderlyingFileMoved(this, newLocation);
- }
-
- /**
- * Defines the standard procedure to handle <code>CoreExceptions</code>. Exceptions
- * are written to the plug-in log.
- *
- * @param exception the exception to be logged
- * @param message the message to be logged
- */
- protected void handleCoreException(CoreException exception) {
- ILog log= Platform.getPlugin(FileBuffersPlugin.PLUGIN_ID).getLog();
- log.log(exception.getStatus());
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#isSynchronized()
- */
- public boolean isSynchronized() {
- return fSynchronizationStamp == fFile.lastModified();
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#getModificationStamp()
- */
- public long getModificationStamp() {
- return fFile.lastModified();
- }
-
- /**
- * Requests the file buffer manager's synchronization context for this file buffer.
- */
- public void requestSynchronizationContext() {
- ++ fSynchronizationContextCount;
- }
-
- /**
- * Releases the file buffer manager's synchronization context for this file buffer.
- */
- public void releaseSynchronizationContext() {
- -- fSynchronizationContextCount;
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaTextFileBuffer.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaTextFileBuffer.java
deleted file mode 100644
index d4b05920b..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/JavaTextFileBuffer.java
+++ /dev/null
@@ -1,338 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.io.Reader;
-
-import org.eclipse.core.resources.IResourceStatus;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-
-import org.eclipse.core.filebuffers.ITextFileBuffer;
-
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-
-/**
- * @since 3.0
- */
-public class JavaTextFileBuffer extends JavaFileBuffer implements ITextFileBuffer {
-
-
- private class DocumentListener implements IDocumentListener {
-
- /*
- * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
- */
- public void documentAboutToBeChanged(DocumentEvent event) {
- }
-
- /*
- * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)
- */
- public void documentChanged(DocumentEvent event) {
- fCanBeSaved= true;
- removeFileBufferContentListeners();
- fManager.fireDirtyStateChanged(JavaTextFileBuffer.this, fCanBeSaved);
- }
- }
-
- /**
- * Reader chunk size.
- */
- static final private int READER_CHUNK_SIZE= 2048;
- /**
- * Buffer size.
- */
- static final private int BUFFER_SIZE= 8 * READER_CHUNK_SIZE;
- /**
- * Constant for representing the ok status. This is considered a value object.
- */
- static final private IStatus STATUS_OK= new Status(IStatus.OK, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, "OK", null);
- /**
- * Constant for representing the error status. This is considered a value object.
- */
- static final private IStatus STATUS_ERROR= new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.INFO, "Error", null);
-
-
-
- /** The element's document */
- protected IDocument fDocument;
- /** The encoding used to create the document from the storage or <code>null</code> for workbench encoding. */
- protected String fEncoding;
- /** Internal document listener */
- protected IDocumentListener fDocumentListener= new DocumentListener();
-
-
-
- public JavaTextFileBuffer(TextFileBufferManager manager) {
- super(manager);
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedTextFile#getDocument()
- */
- public IDocument getDocument() {
- return fDocument;
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedTextFile#getEncoding()
- */
- public String getEncoding() {
- return fEncoding;
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedTextFile#setEncoding(java.lang.String)
- */
- public void setEncoding(String encoding) {
- fEncoding= encoding;
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedFile#getStatus()
- */
- public IStatus getStatus() {
- if (!isDisposed()) {
- if (fStatus != null)
- return fStatus;
- return (fDocument == null ? STATUS_ERROR : STATUS_OK);
- }
- return STATUS_ERROR;
- }
-
- private InputStream getFileContents(IProgressMonitor monitor) {
- try {
- return new FileInputStream(fFile);
- } catch (FileNotFoundException e) {
- }
- return null;
- }
-
- private void setFileContents(InputStream stream, boolean overwrite, IProgressMonitor monitor) {
- try {
- OutputStream out= new FileOutputStream(fFile, false);
-
- try {
- byte[] buffer = new byte[8192];
- while (true) {
- int bytesRead = -1;
- try {
- bytesRead = stream.read(buffer);
- } catch (IOException e) {
- }
- if (bytesRead == -1)
- break;
- try {
- out.write(buffer, 0, bytesRead);
- } catch (IOException e) {
- }
- monitor.worked(1);
- }
- } finally {
- try {
- stream.close();
- } catch (IOException e) {
- } finally {
- try {
- out.close();
- } catch (IOException e) {
- }
- }
- }
- } catch (FileNotFoundException e) {
- }
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#revert(org.eclipse.core.runtime.IProgressMonitor)
- */
- public void revert(IProgressMonitor monitor) throws CoreException {
- if (isDisposed())
- return;
-
- IDocument original= null;
- IStatus status= null;
-
- try {
- original= fManager.createEmptyDocument(getLocation());
- setDocumentContent(original, getFileContents(monitor), fEncoding);
- } catch (CoreException x) {
- status= x.getStatus();
- }
-
- fStatus= status;
-
- if (original != null) {
-
- String originalContents= original.get();
- boolean replaceContents= !originalContents.equals(fDocument.get());
-
- if (replaceContents) {
- fManager.fireBufferContentAboutToBeReplaced(this);
- fDocument.set(original.get());
- }
-
- if (fCanBeSaved) {
- fCanBeSaved= false;
- addFileBufferContentListeners();
- }
-
- if (replaceContents)
- fManager.fireBufferContentReplaced(this);
-
- fManager.fireDirtyStateChanged(this, fCanBeSaved);
- }
- }
-
- /*
- * @see org.eclipse.core.internal.filebuffers.FileBuffer#addFileBufferContentListeners()
- */
- protected void addFileBufferContentListeners() {
- if (fDocument != null)
- fDocument.addDocumentListener(fDocumentListener);
- }
-
- /*
- * @see org.eclipse.core.internal.filebuffers.FileBuffer#removeFileBufferContentListeners()
- */
- protected void removeFileBufferContentListeners() {
- if (fDocument != null)
- fDocument.removeDocumentListener(fDocumentListener);
- }
-
- /*
- * @see org.eclipse.core.internal.filebuffers.FileBuffer#initializeFileBufferContent(org.eclipse.core.runtime.IProgressMonitor)
- */
- protected void initializeFileBufferContent(IProgressMonitor monitor) throws CoreException {
- try {
- fDocument= fManager.createEmptyDocument(getLocation());
- setDocumentContent(fDocument, getFileContents(monitor), fEncoding);
- } catch (CoreException x) {
- fDocument= fManager.createEmptyDocument(getLocation());
- fStatus= x.getStatus();
- }
- }
-
- /*
- * @see org.eclipse.core.internal.filebuffers.FileBuffer#commitFileBufferContent(org.eclipse.core.runtime.IProgressMonitor, boolean)
- */
- protected void commitFileBufferContent(IProgressMonitor monitor, boolean overwrite) throws CoreException {
- try {
-
- String encoding= getEncoding();
- if (encoding == null)
- encoding= fManager.getDefaultEncoding();
-
- InputStream stream= new ByteArrayInputStream(fDocument.get().getBytes(encoding));
-
- if (fFile.exists()) {
-
- if (!overwrite)
- checkSynchronizationState();
-
-
- // here the file synchronizer should actually be removed and afterwards added again. However,
- // we are already inside an operation, so the delta is sent AFTER we have added the listener
- setFileContents(stream, overwrite, monitor);
- // set synchronization stamp to know whether the file synchronizer must become active
- fSynchronizationStamp= fFile.lastModified();
-
- // TODO if there is an annotation model update it here
-
- } else {
-
-// try {
-// monitor.beginTask("Saving", 2000); //$NON-NLS-1$
-// ContainerGenerator generator = new ContainerGenerator(fFile.getWorkspace(), fFile.getParent().getFullPath());
-// generator.generateContainer(new SubProgressMonitor(monitor, 1000));
-// fFile.create(stream, false, new SubProgressMonitor(monitor, 1000));
-// }
-// finally {
-// monitor.done();
-// }
-
- }
-
- } catch (IOException x) {
- String message= (x.getMessage() != null ? x.getMessage() : ""); //$NON-NLS-1$
- IStatus s= new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, message, x);
- throw new CoreException(s);
- }
- }
-
- /**
- * Intitializes the given document with the given stream using the given encoding.
- *
- * @param document the document to be initialized
- * @param contentStream the stream which delivers the document content
- * @param encoding the character encoding for reading the given stream
- * @exception CoreException if the given stream can not be read
- */
- private void setDocumentContent(IDocument document, InputStream contentStream, String encoding) throws CoreException {
- Reader in= null;
- try {
-
- if (encoding == null)
- encoding= fManager.getDefaultEncoding();
-
- in= new BufferedReader(new InputStreamReader(contentStream, encoding), BUFFER_SIZE);
- StringBuffer buffer= new StringBuffer(BUFFER_SIZE);
- char[] readBuffer= new char[READER_CHUNK_SIZE];
- int n= in.read(readBuffer);
- while (n > 0) {
- buffer.append(readBuffer, 0, n);
- n= in.read(readBuffer);
- }
-
- document.set(buffer.toString());
-
- } catch (IOException x) {
- String msg= x.getMessage() == null ? "" : x.getMessage(); //$NON-NLS-1$
- IStatus s= new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, msg, x);
- throw new CoreException(s);
- } finally {
- if (in != null) {
- try {
- in.close();
- } catch (IOException x) {
- }
- }
- }
- }
-
- /**
- * Checks whether the given file is synchronized with the the local file system.
- * If the file has been changed, a <code>CoreException</code> is thrown.
- *
- * @param file the file to check
- * @exception CoreException if file has been changed on the file system
- */
- private void checkSynchronizationState() throws CoreException {
- if (!isSynchronized()) {
- Status status= new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IResourceStatus.OUT_OF_SYNC_LOCAL, "out of sync", null);
- throw new CoreException(status);
- }
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceFileBuffer.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceFileBuffer.java
deleted file mode 100644
index d28d10ba0..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceFileBuffer.java
+++ /dev/null
@@ -1,406 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-import java.io.File;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.ILog;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-
-
-public abstract class ResourceFileBuffer extends AbstractFileBuffer {
-
- /**
- * Runnable encapsulating an element state change. This runnable ensures
- * that a element change failed message is sent out to the element state
- * listeners in case an exception occurred.
- */
- private class SafeFileChange implements Runnable {
-
- /**
- * Creates a new safe runnable for the given file.
- */
- public SafeFileChange() {
- }
-
- /**
- * Execute the change.
- * Subclass responsibility.
- *
- * @exception an exception in case of error
- */
- protected void execute() throws Exception {
- }
-
- /**
- * Does everything necessary prior to execution.
- */
- public void preRun() {
- fManager.fireStateChanging(ResourceFileBuffer.this);
- }
-
- /*
- * @see java.lang.Runnable#run()
- */
- public void run() {
-
- if (isDisposed()) {
- fManager.fireStateChangeFailed(ResourceFileBuffer.this);
- return;
- }
-
- try {
- execute();
- } catch (Exception x) {
- FileBuffersPlugin.getDefault().getLog().log(new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, "Exception when synchronizing", x)); //$NON-NLS-1$
- fManager.fireStateChangeFailed(ResourceFileBuffer.this);
- }
- }
- }
-
- /**
- * Synchronizes the document with external resource changes.
- */
- private class FileSynchronizer implements IResourceChangeListener, IResourceDeltaVisitor {
-
- /** A flag indicating whether this synchronizer is installed or not. */
- private boolean fIsInstalled= false;
-
- /**
- * Creates a new file synchronizer. Is not yet installed on a file.
- */
- public FileSynchronizer() {
- }
-
- /**
- * Installs the synchronizer on the file.
- */
- public void install() {
- fFile.getWorkspace().addResourceChangeListener(this);
- fIsInstalled= true;
- }
-
- /**
- * Uninstalls the synchronizer from the file.
- */
- public void uninstall() {
- fFile.getWorkspace().removeResourceChangeListener(this);
- fIsInstalled= false;
- }
-
- /*
- * @see IResourceChangeListener#resourceChanged(IResourceChangeEvent)
- */
- public void resourceChanged(IResourceChangeEvent e) {
- IResourceDelta delta= e.getDelta();
- try {
- if (delta != null && fIsInstalled)
- delta.accept(this);
- } catch (CoreException x) {
- handleCoreException(x);
- }
- }
-
- /*
- * @see IResourceDeltaVisitor#visit(org.eclipse.core.resources.IResourceDelta)
- */
- public boolean visit(IResourceDelta delta) throws CoreException {
-
- if (delta != null && fFile.equals(delta.getResource())) {
-
- SafeFileChange fileChange= null;
-
- switch (delta.getKind()) {
- case IResourceDelta.CHANGED:
- if ((IResourceDelta.CONTENT & delta.getFlags()) != 0) {
- if (!isDisposed() && !fCanBeSaved && !isSynchronized()) {
- fileChange= new SafeFileChange() {
- protected void execute() throws Exception {
- handleFileContentChanged();
- }
- };
- }
- }
- break;
- case IResourceDelta.REMOVED:
- if ((IResourceDelta.MOVED_TO & delta.getFlags()) != 0) {
- final IPath path= delta.getMovedToPath();
- fileChange= new SafeFileChange() {
- protected void execute() throws Exception {
- handleFileMoved(path);
- }
- };
- } else {
- if (!isDisposed() && !fCanBeSaved) {
- fileChange= new SafeFileChange() {
- protected void execute() throws Exception {
- handleFileDeleted();
- }
- };
- }
- }
- break;
- }
-
- if (fileChange != null) {
- fileChange.preRun();
- fManager.execute(fileChange, fSynchronizationContextCount > 0);
- }
- }
-
- return true; // because we are sitting on files anyway
- }
- }
-
-
-
- /** The location */
- protected IPath fLocation;
- /** The element for which the info is stored */
- protected IFile fFile;
- /** How often the element has been connected */
- protected int fReferenceCount;
- /** Can the element be saved */
- protected boolean fCanBeSaved= false;
- /** Has element state been validated */
- protected boolean fIsStateValidated= false;
- /** The status of this element */
- protected IStatus fStatus;
- /** The file synchronizer. */
- protected FileSynchronizer fFileSynchronizer;
- /** The time stamp at which this buffer synchronized with the underlying file. */
- protected long fSynchronizationStamp= IFile.NULL_STAMP;
- /** How often the synchronization context has been requested */
- protected int fSynchronizationContextCount;
- /** The text file buffer manager */
- protected TextFileBufferManager fManager;
-
-
-
-
- public ResourceFileBuffer(TextFileBufferManager manager) {
- super();
- fManager= manager;
- }
-
- abstract protected void handleFileContentChanged();
-
- abstract protected void addFileBufferContentListeners();
-
- abstract protected void removeFileBufferContentListeners();
-
- abstract protected void initializeFileBufferContent(IProgressMonitor monitor) throws CoreException;
-
- abstract protected void commitFileBufferContent(IProgressMonitor monitor, boolean overwrite) throws CoreException;
-
- public void create(IPath location, IProgressMonitor monitor) throws CoreException {
- IFile file= FileBuffers.getWorkspaceFileAtLocation(location);
- if (file == null || !file.exists())
- throw new CoreException(new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, "File does not exist", null));
-
- fLocation= location;
- fFile= file;
- fFileSynchronizer= new FileSynchronizer();
-
- refreshFile(monitor);
- initializeFileBufferContent(monitor);
- fSynchronizationStamp= fFile.getModificationStamp();
-
- addFileBufferContentListeners();
- }
-
- public void connect() {
- ++ fReferenceCount;
- if (fReferenceCount == 1)
- fFileSynchronizer.install();
- }
-
- public void disconnect() throws CoreException {
- -- fReferenceCount;
- if (fReferenceCount == 0) {
- if (fFileSynchronizer != null)
- fFileSynchronizer.uninstall();
- fFileSynchronizer= null;
- }
- }
-
- /**
- * Returns whether this file buffer has already been disposed.
- *
- * @return <code>true</code> if already disposed, <code>false</code> otherwise
- */
- public boolean isDisposed() {
- return fFileSynchronizer == null;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#getLocation()
- */
- public IPath getLocation() {
- return fLocation;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#commit(org.eclipse.core.runtime.IProgressMonitor, boolean)
- */
- public void commit(IProgressMonitor monitor, boolean overwrite) throws CoreException {
- if (!isDisposed() && fCanBeSaved) {
-
- fManager.fireStateChanging(this);
-
- try {
- commitFileBufferContent(monitor, overwrite);
- } catch (CoreException x) {
- fManager.fireStateChangeFailed(this);
- throw x;
- } catch (RuntimeException x) {
- fManager.fireStateChangeFailed(this);
- throw x;
- }
-
- fCanBeSaved= false;
- addFileBufferContentListeners();
- fManager.fireDirtyStateChanged(this, fCanBeSaved);
- }
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#isDirty()
- */
- public boolean isDirty() {
- return fCanBeSaved;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#isShared()
- */
- public boolean isShared() {
- return fReferenceCount > 1;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#validateState(org.eclipse.core.runtime.IProgressMonitor, java.lang.Object)
- */
- public void validateState(IProgressMonitor monitor, Object computationContext) throws CoreException {
- if (!isDisposed() && !fIsStateValidated) {
-
- if (fFile.isReadOnly()) {
- IWorkspace workspace= fFile.getWorkspace();
- fStatus= workspace.validateEdit(new IFile[] { fFile }, computationContext);
- }
- fIsStateValidated= true;
- fManager.fireStateValidationChanged(this, fIsStateValidated);
- }
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#isStateValidated()
- */
- public boolean isStateValidated() {
- return fIsStateValidated;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#resetStateValidation()
- */
- public void resetStateValidation() {
- if (fIsStateValidated) {
- fIsStateValidated= false;
- fManager.fireStateValidationChanged(this, fIsStateValidated);
- }
- }
-
- /**
- * Sends out the notification that the file serving as document input has been moved.
- *
- * @param newLocation the path of the new location of the file
- */
- protected void handleFileMoved(IPath newLocation) {
- fManager.fireUnderlyingFileMoved(this, newLocation);
- }
-
- /**
- * Sends out the notification that the file serving as document input has been deleted.
- */
- protected void handleFileDeleted() {
- fManager.fireUnderlyingFileDeleted(this);
- }
-
- /**
- * Refreshes the given file.
- */
- protected void refreshFile(IProgressMonitor monitor) {
- try {
- fFile.refreshLocal(IFile.DEPTH_INFINITE, monitor);
- } catch (OperationCanceledException x) {
- } catch (CoreException x) {
- handleCoreException(x);
- }
- }
-
- /**
- * Defines the standard procedure to handle <code>CoreExceptions</code>. Exceptions
- * are written to the plug-in log.
- *
- * @param exception the exception to be logged
- * @param message the message to be logged
- */
- protected void handleCoreException(CoreException exception) {
- ILog log= Platform.getPlugin(FileBuffersPlugin.PLUGIN_ID).getLog();
- log.log(exception.getStatus());
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#isSynchronized()
- */
- public boolean isSynchronized() {
- return fSynchronizationStamp == fFile.getModificationStamp() && fFile.isSynchronized(IResource.DEPTH_ZERO);
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#getModificationStamp()
- */
- public long getModificationStamp() {
- File file= FileBuffers.getSystemFileAtLocation(getLocation());
- if (file != null)
- return file.lastModified();
- return IResource.NULL_STAMP;
- }
-
- /**
- * Requests the file buffer manager's synchronization context for this file buffer.
- */
- public void requestSynchronizationContext() {
- ++ fSynchronizationContextCount;
- }
-
- /**
- * Releases the file buffer manager's synchronization context for this file buffer.
- */
- public void releaseSynchronizationContext() {
- -- fSynchronizationContextCount;
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceTextFileBuffer.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceTextFileBuffer.java
deleted file mode 100644
index 9a3535835..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/ResourceTextFileBuffer.java
+++ /dev/null
@@ -1,365 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
-
-import org.eclipse.core.filebuffers.ITextFileBuffer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResourceStatus;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.SubProgressMonitor;
-
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-
-/**
- *
- */
-public class ResourceTextFileBuffer extends ResourceFileBuffer implements ITextFileBuffer {
-
-
- private class DocumentListener implements IDocumentListener {
-
- /*
- * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
- */
- public void documentAboutToBeChanged(DocumentEvent event) {
- }
-
- /*
- * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)
- */
- public void documentChanged(DocumentEvent event) {
- fCanBeSaved= true;
- removeFileBufferContentListeners();
- fManager.fireDirtyStateChanged(ResourceTextFileBuffer.this, fCanBeSaved);
- }
- }
-
- /**
- * Reader chunk size.
- */
- static final private int READER_CHUNK_SIZE= 2048;
- /**
- * Buffer size.
- */
- static final private int BUFFER_SIZE= 8 * READER_CHUNK_SIZE;
- /**
- * Qualified name for the encoding key.
- */
- static final private QualifiedName ENCODING_KEY= new QualifiedName(FileBuffersPlugin.PLUGIN_ID, "encoding"); //$NON-NLS-1$
- /**
- * Constant for representing the ok status. This is considered a value object.
- */
- static final private IStatus STATUS_OK= new Status(IStatus.OK, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, "OK", null);
- /**
- * Constant for representing the error status. This is considered a value object.
- */
- static final private IStatus STATUS_ERROR= new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.INFO, "Error", null);
-
-
-
- /** The element's document */
- protected IDocument fDocument;
- /** The encoding used to create the document from the storage or <code>null</code> for workbench encoding. */
- protected String fEncoding;
- /** Internal document listener */
- protected IDocumentListener fDocumentListener= new DocumentListener();
-
-
-
- public ResourceTextFileBuffer(TextFileBufferManager manager) {
- super(manager);
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedTextFile#getDocument()
- */
- public IDocument getDocument() {
- return fDocument;
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedTextFile#getEncoding()
- */
- public String getEncoding() {
- return fEncoding;
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedTextFile#setEncoding(java.lang.String)
- */
- public void setEncoding(String encoding) {
- fEncoding= encoding;
- try {
- fFile.setCharset(encoding);
- } catch (CoreException x) {
- handleCoreException(x);
- }
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedFile#getStatus()
- */
- public IStatus getStatus() {
- if (!isDisposed()) {
- if (fStatus != null)
- return fStatus;
- return (fDocument == null ? STATUS_ERROR : STATUS_OK);
- }
- return STATUS_ERROR;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBuffer#revert(org.eclipse.core.runtime.IProgressMonitor)
- */
- public void revert(IProgressMonitor monitor) throws CoreException {
- if (isDisposed())
- return;
-
- refreshFile(monitor);
-
- IDocument original= null;
- IStatus status= null;
-
- try {
- original= fManager.createEmptyDocument(fFile.getLocation());
- setDocumentContent(original, fFile.getContents(), fEncoding);
- } catch (CoreException x) {
- status= x.getStatus();
- }
-
- fStatus= status;
-
- if (original != null) {
-
- String originalContents= original.get();
- boolean replaceContents= !originalContents.equals(fDocument.get());
-
- if (replaceContents) {
- fManager.fireBufferContentAboutToBeReplaced(this);
- fDocument.set(original.get());
- }
-
- if (fCanBeSaved) {
- fCanBeSaved= false;
- addFileBufferContentListeners();
- }
-
- if (replaceContents)
- fManager.fireBufferContentReplaced(this);
-
- fManager.fireDirtyStateChanged(this, fCanBeSaved);
- }
- }
-
- /*
- * @see org.eclipse.core.internal.filebuffers.FileBuffer#addFileBufferContentListeners()
- */
- protected void addFileBufferContentListeners() {
- if (fDocument != null)
- fDocument.addDocumentListener(fDocumentListener);
- }
-
- /*
- * @see org.eclipse.core.internal.filebuffers.FileBuffer#removeFileBufferContentListeners()
- */
- protected void removeFileBufferContentListeners() {
- if (fDocument != null)
- fDocument.removeDocumentListener(fDocumentListener);
- }
-
- /*
- * @see org.eclipse.core.internal.filebuffers.FileBuffer#initializeFileBufferContent(org.eclipse.core.runtime.IProgressMonitor)
- */
- protected void initializeFileBufferContent(IProgressMonitor monitor) throws CoreException {
- try {
- fEncoding= null;
- try {
- fEncoding= fFile.getPersistentProperty(ENCODING_KEY);
- } catch (CoreException x) {
- // we ignore exceptions here because we support the ENCODING_KEY property only for compatibility reasons
- }
- if (fEncoding != null) {
- // if we found an old encoding property, we try to migrate it to the new core.resources encoding support
- try {
- fFile.setCharset(fEncoding);
- // if successful delete old property
- fFile.setPersistentProperty(ENCODING_KEY, null);
- } catch (CoreException ex) {
- // log problem because we could not migrate the property successfully
- handleCoreException(ex);
- }
- } else {
- fEncoding= fFile.getCharset();
- }
- fDocument= fManager.createEmptyDocument(fFile.getLocation());
- setDocumentContent(fDocument, fFile.getContents(), fEncoding);
- } catch (CoreException x) {
- fDocument= fManager.createEmptyDocument(fFile.getLocation());
- fStatus= x.getStatus();
- }
- }
-
- /*
- * @see org.eclipse.core.internal.filebuffers.FileBuffer#commitFileBufferContent(org.eclipse.core.runtime.IProgressMonitor, boolean)
- */
- protected void commitFileBufferContent(IProgressMonitor monitor, boolean overwrite) throws CoreException {
- try {
-
- String encoding= getEncoding();
- if (encoding == null)
- encoding= fManager.getDefaultEncoding();
-
- InputStream stream= new ByteArrayInputStream(fDocument.get().getBytes(encoding));
-
- if (fFile.exists()) {
-
- if (!overwrite)
- checkSynchronizationState();
-
-
- // here the file synchronizer should actually be removed and afterwards added again. However,
- // we are already inside an operation, so the delta is sent AFTER we have added the listener
- fFile.setContents(stream, overwrite, true, monitor);
- // set synchronization stamp to know whether the file synchronizer must become active
- fSynchronizationStamp= fFile.getModificationStamp();
-
- // TODO if there is an annotation model update it here
-
- } else {
-
- try {
- monitor.beginTask("Saving", 2000); //$NON-NLS-1$
- ContainerGenerator generator = new ContainerGenerator(fFile.getWorkspace(), fFile.getParent().getFullPath());
- generator.generateContainer(new SubProgressMonitor(monitor, 1000));
- fFile.create(stream, false, new SubProgressMonitor(monitor, 1000));
- }
- finally {
- monitor.done();
- }
- }
-
- } catch (IOException x) {
- String message= (x.getMessage() != null ? x.getMessage() : ""); //$NON-NLS-1$
- IStatus s= new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, message, x);
- throw new CoreException(s);
- }
- }
-
- /**
- * Updates the element info to a change of the file content and sends out appropriate notifications.
- */
- protected void handleFileContentChanged() {
- if (isDisposed())
- return;
-
- IDocument document= fManager.createEmptyDocument(fFile.getLocation());
- IStatus status= null;
-
- try {
- setDocumentContent(document, fFile.getContents(false), fEncoding);
- } catch (CoreException x) {
- status= x.getStatus();
- }
-
- String newContent= document.get();
-
- if ( !newContent.equals(fDocument.get())) {
-
- fManager.fireBufferContentAboutToBeReplaced(this);
-
- removeFileBufferContentListeners();
- fDocument.set(newContent);
- fCanBeSaved= false;
- fSynchronizationStamp= fFile.getModificationStamp();
- fStatus= status;
- addFileBufferContentListeners();
-
- fManager.fireBufferContentReplaced(this);
-
- } else {
-
- removeFileBufferContentListeners();
- fCanBeSaved= false;
- fSynchronizationStamp= fFile.getModificationStamp();
- fStatus= status;
- addFileBufferContentListeners();
-
- fManager.fireDirtyStateChanged(this, fCanBeSaved);
- }
- }
-
- /**
- * Intitializes the given document with the given stream using the given encoding.
- *
- * @param document the document to be initialized
- * @param contentStream the stream which delivers the document content
- * @param encoding the character encoding for reading the given stream
- * @exception CoreException if the given stream can not be read
- */
- private void setDocumentContent(IDocument document, InputStream contentStream, String encoding) throws CoreException {
- Reader in= null;
- try {
-
- if (encoding == null)
- encoding= fManager.getDefaultEncoding();
-
- in= new BufferedReader(new InputStreamReader(contentStream, encoding), BUFFER_SIZE);
- StringBuffer buffer= new StringBuffer(BUFFER_SIZE);
- char[] readBuffer= new char[READER_CHUNK_SIZE];
- int n= in.read(readBuffer);
- while (n > 0) {
- buffer.append(readBuffer, 0, n);
- n= in.read(readBuffer);
- }
-
- document.set(buffer.toString());
-
- } catch (IOException x) {
- String message= (x.getMessage() != null ? x.getMessage() : ""); //$NON-NLS-1$
- IStatus s= new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IStatus.OK, message, x);
- throw new CoreException(s);
- } finally {
- if (in != null) {
- try {
- in.close();
- } catch (IOException x) {
- }
- }
- }
- }
-
- /**
- * Checks whether the given file is synchronized with the the local file system.
- * If the file has been changed, a <code>CoreException</code> is thrown.
- *
- * @param file the file to check
- * @exception CoreException if file has been changed on the file system
- */
- private void checkSynchronizationState() throws CoreException {
- if (!fFile.isSynchronized(IFile.DEPTH_ZERO)) {
- Status status= new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, IResourceStatus.OUT_OF_SYNC_LOCAL, "out of sync", null);
- throw new CoreException(status);
- }
- }
-}
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/TextFileBufferManager.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/TextFileBufferManager.java
deleted file mode 100644
index e26855620..000000000
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/internal/filebuffers/TextFileBufferManager.java
+++ /dev/null
@@ -1,301 +0,0 @@
-/**********************************************************************
-Copyright (c) 2000, 2003 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
-**********************************************************************/
-package org.eclipse.core.internal.filebuffers;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-import org.eclipse.core.filebuffers.IDocumentFactory;
-import org.eclipse.core.filebuffers.IDocumentSetupParticipant;
-import org.eclipse.core.filebuffers.IFileBuffer;
-import org.eclipse.core.filebuffers.IFileBufferListener;
-import org.eclipse.core.filebuffers.ISynchronizationContext;
-import org.eclipse.core.filebuffers.ITextFileBuffer;
-import org.eclipse.core.filebuffers.ITextFileBufferManager;
-
-import org.eclipse.jface.text.Assert;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-
-/**
- * @since 3.0
- */
-public class TextFileBufferManager implements ITextFileBufferManager {
-
- private Map fFilesBuffers= new HashMap();
- private List fFileBufferListeners= new ArrayList();
- private ExtensionsRegistry fRegistry;
- private ISynchronizationContext fSynchronizationContext;
-
-
- public TextFileBufferManager() {
- fRegistry= new ExtensionsRegistry();
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBufferManager#connect(org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IProgressMonitor)
- */
- public void connect(IPath location, IProgressMonitor monitor) throws CoreException {
- Assert.isNotNull(location);
- location= FileBuffers.normalizeLocation(location);
-
- AbstractFileBuffer fileBuffer= (AbstractFileBuffer) fFilesBuffers.get(location);
- if (fileBuffer == null) {
-
- fileBuffer= createFileBuffer(location);
- if (fileBuffer == null)
- throw new CoreException(new Status(IStatus.ERROR, FileBuffersPlugin.PLUGIN_ID, 0, "Cannot create file buffer.", null));
-
- fileBuffer.create(location, monitor);
- fileBuffer.connect();
- fFilesBuffers.put(location, fileBuffer);
- fireBufferCreated(fileBuffer);
-
- } else {
- fileBuffer.connect();
- }
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBufferManager#disconnect(org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IProgressMonitor)
- */
- public void disconnect(IPath location, IProgressMonitor monitor) throws CoreException {
- Assert.isNotNull(location);
- location= FileBuffers.normalizeLocation(location);
-
- AbstractFileBuffer fileBuffer= (AbstractFileBuffer) fFilesBuffers.get(location);
- if (fileBuffer != null) {
- fileBuffer.disconnect();
- if (fileBuffer.isDisposed()) {
- fFilesBuffers.remove(location);
- fireBufferDisposed(fileBuffer);
- }
- }
- }
-
- private AbstractFileBuffer createFileBuffer(IPath location) {
- if (!isTextFile(location))
- return null;
-
- if (isWorkspaceResource(location))
- return new ResourceTextFileBuffer(this);
-
- return new JavaTextFileBuffer(this);
- }
-
- private boolean isWorkspaceResource(IPath location) {
- return FileBuffers.getWorkspaceFileAtLocation(location) != null;
- }
-
- private boolean isTextFile(IPath location) {
- return true;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBufferManager#getFileBuffer(org.eclipse.core.runtime.IPath)
- */
- public IFileBuffer getFileBuffer(IPath location) {
- location= FileBuffers.normalizeLocation(location);
- return (IFileBuffer) fFilesBuffers.get(location);
- }
-
- /*
- * @see org.eclipse.core.filebuffers.ITextFileBufferManager#getTextFileBuffer(org.eclipse.core.runtime.IPath)
- */
- public ITextFileBuffer getTextFileBuffer(IPath location) {
- location= FileBuffers.normalizeLocation(location);
- return (ITextFileBuffer) fFilesBuffers.get(location);
- }
-
- /*
- * @see org.eclipse.core.buffer.text.IBufferedFileManager#getDefaultEncoding()
- */
- public String getDefaultEncoding() {
- return ResourcesPlugin.getEncoding();
- }
-
- /*
- * @see org.eclipse.core.filebuffers.ITextFileBufferManager#createEmptyDocument(org.eclipse.core.runtime.IPath)
- */
- public IDocument createEmptyDocument(IPath location) {
- Assert.isNotNull(location);
- location= FileBuffers.normalizeLocation(location);
-
- IDocumentFactory factory= fRegistry.getDocumentFactory(location);
-
- IDocument document= null;
- if (factory != null)
- document= factory.createDocument();
- else
- document= new Document();
-
- IDocumentSetupParticipant[] participants= fRegistry.getDocumentSetupParticipants(location);
- if (participants != null) {
- for (int i= 0; i < participants.length; i++)
- participants[i].setup(document);
- }
-
- return document;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBufferManager#addFileBufferListener(org.eclipse.core.filebuffers.IFileBufferListener)
- */
- public void addFileBufferListener(IFileBufferListener listener) {
- Assert.isNotNull(listener);
- if (!fFileBufferListeners.contains(listener))
- fFileBufferListeners.add(listener);
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBufferManager#removeFileBufferListener(org.eclipse.core.filebuffers.IFileBufferListener)
- */
- public void removeFileBufferListener(IFileBufferListener listener) {
- Assert.isNotNull(listener);
- fFileBufferListeners.remove(listener);
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBufferManager#setSynchronizationContext(org.eclipse.core.filebuffers.ISynchronizationContext)
- */
- public void setSynchronizationContext(ISynchronizationContext context) {
- fSynchronizationContext= context;
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBufferManager#requestSynchronizationContext(org.eclipse.core.runtime.IPath)
- */
- public void requestSynchronizationContext(IPath location) {
- Assert.isNotNull(location);
- location= FileBuffers.normalizeLocation(location);
-
- AbstractFileBuffer fileBuffer= (AbstractFileBuffer) fFilesBuffers.get(location);
- if (fileBuffer != null)
- fileBuffer.requestSynchronizationContext();
- }
-
- /*
- * @see org.eclipse.core.filebuffers.IFileBufferManager#releaseSynchronizationContext(org.eclipse.core.runtime.IPath)
- */
- public void releaseSynchronizationContext(IPath location) {
- Assert.isNotNull(location);
- location= FileBuffers.normalizeLocation(location);
-
- AbstractFileBuffer fileBuffer= (AbstractFileBuffer) fFilesBuffers.get(location);
- if (fileBuffer != null)
- fileBuffer.releaseSynchronizationContext();
- }
-
- /**
- * Executes the given runnable in the synchronization context of this file buffer manager.
- * If there is no synchronization context connected with this manager, the runnable is
- * directly executed.
- *
- * @param runnable the runnable to be executed
- */
- public void execute(Runnable runnable, boolean requestSynchronizationContext) {
- if (requestSynchronizationContext && fSynchronizationContext != null)
- fSynchronizationContext.run(runnable);
- else
- runnable.run();
- }
-
- protected void fireDirtyStateChanged(IFileBuffer buffer, boolean isDirty) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.dirtyStateChanged(buffer, isDirty);
- }
- }
-
- protected void fireBufferContentAboutToBeReplaced(IFileBuffer buffer) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.bufferContentAboutToBeReplaced(buffer);
- }
- }
-
- protected void fireBufferContentReplaced(IFileBuffer buffer) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.bufferContentReplaced(buffer);
- }
- }
-
- protected void fireUnderlyingFileMoved(IFileBuffer buffer, IPath target) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.underlyingFileMoved(buffer, target);
- }
- }
-
- protected void fireUnderlyingFileDeleted(IFileBuffer buffer) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.underlyingFileDeleted(buffer);
- }
- }
-
- protected void fireStateValidationChanged(IFileBuffer buffer, boolean isStateValidated) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.stateValidationChanged(buffer, isStateValidated);
- }
- }
-
- protected void fireStateChanging(IFileBuffer buffer) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.stateChanging(buffer);
- }
- }
-
- protected void fireStateChangeFailed(IFileBuffer buffer) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.stateChangeFailed(buffer);
- }
- }
-
- protected void fireBufferCreated(IFileBuffer buffer) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.bufferCreated(buffer);
- }
- }
-
- protected void fireBufferDisposed(IFileBuffer buffer) {
- Iterator e= new ArrayList(fFileBufferListeners).iterator();
- while (e.hasNext()) {
- IFileBufferListener l= (IFileBufferListener) e.next();
- l.bufferDisposed(buffer);
- }
- }
-}
diff --git a/org.eclipse.jface.text.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jface.text.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..8901c09cd
--- /dev/null
+++ b/org.eclipse.jface.text.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,64 @@
+#Fri Aug 27 09:16:12 CEST 2004
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
+org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=error
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.builder.invalidClasspath=abort
+org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.source=1.3
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.compliance=1.4
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
+org.eclipse.jdt.core.builder.cleanOutputFolder=clean
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
+org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
+org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.incompatibleJDKLevel=ignore
+eclipse.preferences.version=1
+org.eclipse.jdt.core.circularClasspath=error
+org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
+org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
+org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.doc.comment.support=enabled
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
+org.eclipse.jdt.core.incompleteClasspath=error
+org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.builder.duplicateResourceTask=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
diff --git a/org.eclipse.jface.text.tests/test.xml b/org.eclipse.jface.text.tests/test.xml
new file mode 100644
index 000000000..b318da2fc
--- /dev/null
+++ b/org.eclipse.jface.text.tests/test.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<project name="testsuite" default="run" basedir=".">
+ <!-- The property ${eclipse-home} should be passed into this script -->
+ <!-- Set a meaningful default value for when it is not. -->
+ <property name="eclipse-home" value="${basedir}\..\.."/>
+
+ <!-- sets the properties eclipse-home, and library-file -->
+ <property name="plugin-name" value="org.eclipse.jface.text.tests"/>
+ <property name="library-file"
+ value="${eclipse-home}/plugins/org.eclipse.test/library.xml"/>
+
+ <!-- This target holds all initialization code that needs to be done for -->
+ <!-- all tests that are to be run. Initialization for individual tests -->
+ <!-- should be done within the body of the suite target. -->
+ <target name="init">
+ <tstamp/>
+ <delete>
+ <fileset dir="${eclipse-home}" includes="org*.xml"/>
+ </delete>
+ </target>
+
+ <!-- This target defines the tests that need to be run. -->
+ <target name="suite">
+ <property name="jface-text-folder"
+ value="${eclipse-home}/jface_text_folder"/>
+ <delete dir="${jface-text-folder}" quiet="true"/>
+ <ant target="core-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="data-dir" value="${jface-text-folder}"/>
+ <property name="plugin-name" value="${plugin-name}"/>
+ <property name="classname"
+ value="org.eclipse.jface.text.tests.JFaceTextTestSuite"/>
+ </ant>
+ </target>
+
+ <!-- This target holds code to cleanup the testing environment after -->
+ <!-- after all of the tests have been run. You can use this target to -->
+ <!-- delete temporary files that have been created. -->
+ <target name="cleanup">
+ </target>
+
+ <!-- This target runs the test suite. Any actions that need to happen -->
+ <!-- after all the tests have been run should go here. -->
+ <target name="run" depends="init,suite,cleanup">
+ <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="includes" value="org*.xml"/>
+ <property name="output-file" value="${plugin-name}.xml"/>
+ </ant>
+ </target>
+
+ <!-- This target runs the performance test suites. -->
+ <target name="performance">
+ </target>
+
+</project>
diff --git a/org.eclipse.jface.text/.classpath b/org.eclipse.jface.text/.classpath
deleted file mode 100644
index f2a7ad8ee..000000000
--- a/org.eclipse.jface.text/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="projection"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.jface.text/.cvsignore b/org.eclipse.jface.text/.cvsignore
deleted file mode 100644
index ba077a403..000000000
--- a/org.eclipse.jface.text/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/org.eclipse.jface.text/.options b/org.eclipse.jface.text/.options
deleted file mode 100644
index 9435aefcd..000000000
--- a/org.eclipse.jface.text/.options
+++ /dev/null
@@ -1,7 +0,0 @@
-# Debugging options for the org.eclipse.jface.text plug-in
-
-# Prints debug information related to AnnotationPainter
-org.eclipse.jface.text/debug/AnnotationPainter= true
-
-# Prints debug information related to AbstractContentAssistSubjectAdapter and its subclasses
-org.eclipse.jface.text/debug/ContentAssistSubjectAdapters= true \ No newline at end of file
diff --git a/org.eclipse.jface.text/.project b/org.eclipse.jface.text/.project
deleted file mode 100644
index 4c2048403..000000000
--- a/org.eclipse.jface.text/.project
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jface.text</name>
- <comment></comment>
- <projects>
- <project>org.eclipse.core.runtime.compatibility</project>
- <project>org.eclipse.jface</project>
- <project>org.eclipse.swt</project>
- <project>org.eclipse.text</project>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/org.eclipse.jface.text/about.html b/org.eclipse.jface.text/about.html
deleted file mode 100644
index 9db411aab..000000000
--- a/org.eclipse.jface.text/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>20th June, 2002</p>
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;). A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License. In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html> \ No newline at end of file
diff --git a/org.eclipse.jface.text/build.properties b/org.eclipse.jface.text/build.properties
deleted file mode 100644
index 01abca14c..000000000
--- a/org.eclipse.jface.text/build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.properties,\
- plugin.xml,\
- *.jar,\
- about.html
-source.jfacetext.jar = src/,\
- projection/
diff --git a/org.eclipse.jface.text/plugin.properties b/org.eclipse.jface.text/plugin.properties
deleted file mode 100644
index eb2956660..000000000
--- a/org.eclipse.jface.text/plugin.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-pluginName = JFace Text
-providerName = Eclipse.org
diff --git a/org.eclipse.jface.text/plugin.xml b/org.eclipse.jface.text/plugin.xml
deleted file mode 100644
index 0e997a546..000000000
--- a/org.eclipse.jface.text/plugin.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
- id="org.eclipse.jface.text"
- name="%pluginName"
- version="3.0.0"
- provider-name="%providerName">
-
- <runtime>
- <library name="jfacetext.jar">
- <export name="*"/>
- <packages prefixes="org.eclipse.jface.text"/>
- </library>
- </runtime>
-
- <requires>
- <import plugin="org.eclipse.core.runtime.compatibility"/>
- <import plugin="org.eclipse.text" export="true"/>
- <import plugin="org.eclipse.swt"/>
- <import plugin="org.eclipse.jface"/>
- </requires>
-
-</plugin>
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/OutlinerRulerColumn.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/OutlinerRulerColumn.java
deleted file mode 100644
index d8a7e9bd6..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/OutlinerRulerColumn.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source;
-
-
-import java.util.Iterator;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-
-
-/**
- * A ruler column for controlling the behavior of a <code>ProjectionSourceViewer</code>.
- * This class is for internal use only.
- *
- * @since 2.1
- * @deprecated
- */
-public class OutlinerRulerColumn extends AnnotationRulerColumn {
-
- /**
- * Creates a new outliner ruler column.
- *
- * @param model the column's annotation model
- * @param width the width in pixels
- */
- public OutlinerRulerColumn(IAnnotationModel model, int width) {
- super(model, width);
- }
-
- /*
- * @see org.eclipse.jface.text.source.AnnotationRulerColumn#mouseDoubleClicked(int)
- */
- protected void mouseDoubleClicked(int line) {
- ProjectionAnnotation annotation= findAnnotation(line);
- if (annotation != null)
- annotation.run(getCachedTextViewer());
- }
-
- /**
- * Returns the projection annotation of the column's annotation
- * model that contains the given line.
- *
- * @param line the line
- * @return the projection annotation containing the given line
- */
- private ProjectionAnnotation findAnnotation(int line) {
- IAnnotationModel model= getModel();
- if (model != null) {
- Iterator e= model.getAnnotationIterator();
- while (e.hasNext()) {
- Object next= e.next();
- if (next instanceof ProjectionAnnotation) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) next;
- Position p= model.getPosition(annotation);
- if (contains(p, line))
- return annotation;
- }
- }
- }
- return null;
- }
-
- /**
- * Returns whether the given position contains the given line.
- *
- * @param p the position
- * @param line the line
- * @return <code>true</code> if the given position contains the given line, <code>false</code> otherwise
- */
- private boolean contains(Position p, int line) {
-
- IDocument document= getCachedTextViewer().getDocument();
-
- try {
-
- int startLine= document.getLineOfOffset(p.getOffset());
- if (line < startLine)
- return false;
- if (line == startLine)
- return true;
-
- int endLine= document.getLineOfOffset(p.getOffset() + Math.max(p.getLength() -1, 0));
- return (startLine < line && line <= endLine) ;
-
- } catch (BadLocationException x) {
- }
-
- return false;
- }
-
- /*
- * @see org.eclipse.jface.text.source.IVerticalRulerColumn#createControl(org.eclipse.jface.text.source.CompositeRuler, org.eclipse.swt.widgets.Composite)
- */
- public Control createControl(CompositeRuler parentRuler, Composite parentControl) {
- Control control= super.createControl(parentRuler, parentControl);
- Display display= parentControl.getDisplay();
- Color background= display.getSystemColor(SWT.COLOR_LIST_BACKGROUND);
- control.setBackground(background);
- return control;
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionAnnotation.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionAnnotation.java
deleted file mode 100644
index 822b3a7b8..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionAnnotation.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Position;
-
-/**
- * Annotation used to represent the projection of a master document onto
- * a <code>ProjectionDocument</code>. A projection annotation can be either
- * expanded or collapsed. If expaned it corresponds to a fragment of the
- * projection document. If collapsed, it represents a region of the master document
- * that does not have a corresponding fragment in the projection document. <p>
- * Draws itself in a tree like fashion.<p>
- * This class if for internal use only.
- *
- * @since 2.1
- * @deprecated
- */
-public class ProjectionAnnotation extends Annotation implements IAnnotationPresentation {
-
- private static final int OUTER_MARGIN= 1;
- private static final int INNER_MARGIN= 1;
- private static final int PIXELS= 1;
- private static final int LEGS= 2;
- private static final int MIDDLE= PIXELS + INNER_MARGIN + LEGS;
- private static final int SIZE= 2 * MIDDLE + PIXELS;
-
- /** The range in the master document */
- private Position fProjectionRange;
- /** The state of this annotation */
- private boolean fIsFolded= false;
-
- /**
- * Creates a new projection annotation for the given range of the master document.
- *
- * @param range the range.
- */
- public ProjectionAnnotation(Position range) {
- fProjectionRange= range;
- }
-
- /*
- * @see org.eclipse.jface.text.source.Annotation#paint(org.eclipse.swt.graphics.GC, org.eclipse.swt.widgets.Canvas, org.eclipse.swt.graphics.Rectangle)
- */
- public void paint(GC gc, Canvas canvas, Rectangle rectangle) {
- Color fg= gc.getForeground();
- gc.setForeground(canvas.getDisplay().getSystemColor(SWT.COLOR_BLUE));
-
-
- Rectangle r= new Rectangle(rectangle.x + OUTER_MARGIN, rectangle.y + OUTER_MARGIN, SIZE -1 , SIZE -1);
- gc.drawRectangle(r);
- gc.drawLine(r.x + PIXELS + INNER_MARGIN, r.y + MIDDLE, r.x + r.width - PIXELS - INNER_MARGIN , r.y + MIDDLE);
- if (fIsFolded) {
- gc.drawLine(r.x + MIDDLE, r.y + PIXELS + INNER_MARGIN, r.x + MIDDLE, r.y + r.height - PIXELS - INNER_MARGIN);
- } else {
- gc.drawLine(r.x + MIDDLE, r.y + r.height, r.x + MIDDLE, rectangle.y + rectangle.height - OUTER_MARGIN);
- gc.drawLine(r.x + MIDDLE, rectangle.y + rectangle.height - OUTER_MARGIN, r.x + r.width - INNER_MARGIN, rectangle.y + rectangle.height - OUTER_MARGIN);
- }
-
- gc.setForeground(fg);
- }
-
- /**
- * Toogles the state of this annotation and updates the given viewer accordingly.
- *
- * @param viewer the viewer
- */
- public void run(ITextViewer viewer) {
-
- if (viewer instanceof ProjectionSourceViewer) {
- ProjectionSourceViewer projectionViewer= (ProjectionSourceViewer) viewer;
-
- if (fIsFolded) {
-
- fIsFolded= false;
- projectionViewer.expand(fProjectionRange.getOffset(), fProjectionRange.getLength());
-
- } else {
-
- try {
- IDocument document= projectionViewer.getDocument();
- int line= document.getLineOfOffset(fProjectionRange.getOffset());
- int offset= document.getLineOffset(line + 1);
-
- int length= fProjectionRange.getLength() - (offset - fProjectionRange.getOffset());
- if (length > 0) {
- fIsFolded= true;
- projectionViewer.collapse(offset, length);
- }
- } catch (BadLocationException x) {
- }
- }
- }
- }
-
- /**
- * Returns the state of this annotation.
- *
- * @return <code>true</code> if collapsed
- */
- public boolean isFolded() {
- return fIsFolded;
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionSourceViewer.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionSourceViewer.java
deleted file mode 100644
index 855283d02..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/ProjectionSourceViewer.java
+++ /dev/null
@@ -1,265 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jface.text.source;
-
-
-import java.util.Iterator;
-
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.VerifyEvent;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ISlaveDocumentManager;
-import org.eclipse.jface.text.ITextViewerExtension3;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.ProjectionDocument;
-import org.eclipse.jface.text.ProjectionDocumentManager;
-
-
-/**
- * A projection source viewer is a source viewer which does not support the concept of a visible region. Instead it supports
- * to dynamically hide and show regions of its document. Uses <code>ProjectionDocumentManager</code> as it internal slave document manager.<p>
- * This class is for internal use only.
- *
- * @since 2.1
- * @deprecated
- */
-public class ProjectionSourceViewer extends SourceViewer implements ISourceViewer, ITextViewerExtension3 {
-
- /** The projection annotation model */
- private IAnnotationModel fProjectionAnnotationModel;
-
- /**
- * Creates a new projection source viewer.
- *
- * @param parent the SWT parent control
- * @param ruler the vertical ruler
- * @param styles the SWT style bits
- */
- public ProjectionSourceViewer(Composite parent, IVerticalRuler ruler, int styles) {
- super(parent, ruler, styles);
- }
-
- /*
- * @see ISourceViewer#setDocument(IDocument, IAnnotationModel, int, int)
- */
- public void setDocument(IDocument document, IAnnotationModel annotationModel, int visibleRegionOffset, int visibleRegionLength) {
- if (getDocument() != null && fProjectionAnnotationModel != null)
- fProjectionAnnotationModel.disconnect(getDocument());
-
- super.setDocument(document, annotationModel, visibleRegionOffset, visibleRegionLength);
-
- if (getDocument() != null && fProjectionAnnotationModel != null)
- fProjectionAnnotationModel.connect(getDocument());
- }
-
- /*
- * @see TextViewer#handleDispose()
- */
- protected void handleDispose() {
-
- if (getDocument() != null && fProjectionAnnotationModel != null) {
- fProjectionAnnotationModel.disconnect(getDocument());
- fProjectionAnnotationModel= null;
- }
-
- super.handleDispose();
- }
-
- /**
- * Returns the projection annotation model.
- *
- * @return the projection annotation model
- */
- public IAnnotationModel getProjectionAnnotationModel() {
- return fProjectionAnnotationModel;
- }
-
- /**
- * Sets the projection annotation model.
- *
- * @param projectionAnnotationModel the projection annotation model
- */
- public void setProjectionAnnotationModel(IAnnotationModel projectionAnnotationModel) {
- fProjectionAnnotationModel= projectionAnnotationModel;
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#createSlaveDocumentManager()
- */
- protected ISlaveDocumentManager createSlaveDocumentManager() {
- return new ProjectionDocumentManager();
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#updateVisibleDocument(org.eclipse.jface.text.IDocument, int, int)
- */
- protected boolean updateVisibleDocument(IDocument visibleDocument, int visibleRegionOffset, int visibleRegionLength) throws BadLocationException {
- if (visibleDocument instanceof ProjectionDocument) {
- ProjectionDocument document= (ProjectionDocument) visibleDocument;
- document.addFragment(visibleRegionOffset, visibleRegionLength);
- }
- return true;
- }
-
- /**
- * Hides the given range by collapsing it.
- *
- * @param offset the offset of the range to hide
- * @param length the length of the range to hide
- */
- public void collapse(int offset, int length) {
-
- IDocument previous= getVisibleDocument();
- IDocument slave= createSlaveDocument(previous);
-
- if (slave instanceof ProjectionDocument) {
-
- StyledText textWidget= getTextWidget();
- try {
-
- if (textWidget != null)
- textWidget.setRedraw(false);
-
-
- int topIndex= getTopIndex();
- Point selection= getSelectedRange();
-
- // adapt selection
- int selectionEnd= selection.x + selection.y;
- if (offset < selectionEnd && selectionEnd <= offset + length) {
-
- int lineEnd= offset;
-
- try {
- IDocument document= getDocument();
- int line= document.getLineOfOffset(offset);
- IRegion lineInfo= document.getLineInformation(Math.max(line -1, 0));
- lineEnd= lineInfo.getOffset() + lineInfo.getLength();
- } catch (BadLocationException x) {
- }
-
- if (offset <= selection.x && selection.x < offset + length) {
- selection.x= lineEnd;
- selection.y= 0;
- } else {
- selection.y= Math.max(lineEnd - selection.x, 0);
- }
-
- } else if (offset <= selection.x && selection.x < offset + length) {
- int delta= offset + length - selection.x;
- selection.x= offset + length;
- selection.y -= delta;
- }
-
- ((ProjectionDocument) slave).hide(offset, length);
- setVisibleDocument(slave);
-
- setSelectedRange(selection.x, selection.y);
- setTopIndex(topIndex);
-
- } finally {
- if(textWidget != null)
- textWidget.setRedraw(true);
- }
- }
- }
-
- /**
- * Makes all hidden ranges in the given range visible again.
- *
- * @param offset the offset of the range
- * @param length the length of the range
- */
- public void expand(int offset, int length) {
- if (getVisibleDocument() instanceof ProjectionDocument) {
- ProjectionDocument document= (ProjectionDocument) getVisibleDocument();
-
- StyledText textWidget= getTextWidget();
- try {
-
- if (textWidget != null)
- textWidget.setRedraw(false);
-
- Point selection= getSelectedRange();
- int topIndex= getTopIndex();
-
- document.show(offset, length);
- setVisibleDocument(document);
-
- setSelectedRange(selection.x, selection.y);
- setTopIndex(topIndex);
-
- } finally {
- if (textWidget != null)
- textWidget.setRedraw(true);
- }
- }
- }
-
- /*
- * @see org.eclipse.jface.text.ITextViewer#getVisibleRegion()
- */
- public IRegion getVisibleRegion() {
- return null;
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#getVisibleRegionOffset()
- */
- protected int getVisibleRegionOffset() {
- return -1;
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#internalGetVisibleRegion()
- */
- protected IRegion internalGetVisibleRegion() {
- return null;
- }
-
- /*
- * @see org.eclipse.jface.text.ITextViewer#overlapsWithVisibleRegion(int,int)
- */
- public boolean overlapsWithVisibleRegion(int offset, int length) {
- return false;
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#getVisibleDocument()
- */
- public IDocument getVisibleDocument() {
- return super.getVisibleDocument();
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#handleVerifyEvent(org.eclipse.swt.events.VerifyEvent)
- */
- protected void handleVerifyEvent(VerifyEvent e) {
- IRegion modelRange= event2ModelRange(e);
- Iterator iterator= fProjectionAnnotationModel.getAnnotationIterator();
- while (iterator.hasNext()) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) iterator.next();
- if (annotation.isFolded()) {
- Position position= fProjectionAnnotationModel.getPosition(annotation);
- if (position.overlapsWith(modelRange.getOffset(), modelRange.getLength()) /* || is a delete at the boundary */ ) {
- e.doit= false;
- annotation.run(this);
- }
- }
- }
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/AnnotationBag.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/AnnotationBag.java
deleted file mode 100644
index 830c9fed4..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/AnnotationBag.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.jface.text.source.Annotation;
-
-/**
- * A bag of annotations.
- */
-public class AnnotationBag extends Annotation {
-
- private Set fAnnotations;
-
- /** Creates a new annotation bag.
- *
- * @param type the annotation type
- */
- public AnnotationBag(String type) {
- super(type, false, null);
- }
-
- public void add(Annotation annotation) {
- if (fAnnotations == null)
- fAnnotations= new HashSet(2);
- fAnnotations.add(annotation);
- }
-
- public void remove(Annotation annotation) {
- if (fAnnotations != null) {
- fAnnotations.remove(annotation);
- if (fAnnotations.isEmpty())
- fAnnotations= null;
- }
- }
-
- public boolean isEmpty() {
- return fAnnotations == null;
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotation.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotation.java
deleted file mode 100644
index dbaf8e897..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotation.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.jface.text.source.IAnnotationPresentation;
-
-/**
- * Annotation used to represent the projection of a master document onto a
- * <code>ProjectionDocument</code>. A projection annotation can be either
- * expanded or collapsed. If expanded it corresponds to a segment of the
- * projection document. If collapsed, it represents a region of the master
- * document that does not have a corresponding segment in the projection
- * document.
- * <p>
- * Internal class. Do not use. Public only for testing purposes.
- *
- * @since 3.0
- */
-public class ProjectionAnnotation extends Annotation implements IAnnotationPresentation {
-
- /**
- * The type of projection annotations.
- */
- public static final String TYPE= "org.eclipse.projection";
-
- private static final boolean PLUS= false;
- private static final int COLOR= SWT.COLOR_DARK_GRAY;
-
- private static final int OUTER_MARGIN= 1;
- private static final int INNER_MARGIN= 1;
- private static final int PIXELS= 1;
- private static final int LEGS= 2;
- private static final int MIDDLE= PIXELS + INNER_MARGIN + LEGS;
- private static final int SIZE= 2 * MIDDLE + PIXELS;
-
- /** The state of this annotation */
- private boolean fIsCollapsed= false;
- /** Indicates whether this annotation should be painted as range */
- private boolean fIsRangeIndication= false;
-
- /**
- * Creates a new projection annotation.
- */
- public ProjectionAnnotation() {
- this(false);
- }
-
- public ProjectionAnnotation(boolean isCollapsed) {
- super(TYPE, false, null);
- fIsCollapsed= isCollapsed;
- }
-
- public void setRangeIndication(boolean rangeIndication) {
- fIsRangeIndication= rangeIndication;
- }
-
- private void paintPlus(GC gc, Canvas canvas, Rectangle rectangle) {
- Color fg= gc.getForeground();
- gc.setForeground(canvas.getDisplay().getSystemColor(COLOR));
-
-
- Rectangle r= new Rectangle(rectangle.x + OUTER_MARGIN, rectangle.y + OUTER_MARGIN, SIZE -1 , SIZE -1);
- gc.drawRectangle(r);
- gc.drawLine(r.x + PIXELS + INNER_MARGIN, r.y + MIDDLE, r.x + r.width - PIXELS - INNER_MARGIN , r.y + MIDDLE);
- if (fIsCollapsed) {
- gc.drawLine(r.x + MIDDLE, r.y + PIXELS + INNER_MARGIN, r.x + MIDDLE, r.y + r.height - PIXELS - INNER_MARGIN);
- } else {
- gc.drawLine(r.x + MIDDLE, r.y + r.height, r.x + MIDDLE, rectangle.y + rectangle.height - OUTER_MARGIN);
- gc.drawLine(r.x + MIDDLE, rectangle.y + rectangle.height - OUTER_MARGIN, r.x + r.width - INNER_MARGIN, rectangle.y + rectangle.height - OUTER_MARGIN);
- }
-
- gc.setForeground(fg);
- }
-
- private int[] computePolygon(Rectangle rectangle) {
-
- int leftX= rectangle.x;
- int rightX= rectangle.x + rectangle.width;
- int middleX= (leftX + rightX)/2;
-
- int upperY= rectangle.y;
- int lowerY= rectangle.y + rectangle.height;
- int middleY= (upperY + lowerY)/2;
-
- if (isCollapsed()) {
- Point upperLeft= new Point(leftX, upperY - 1);
- Point middleRight= new Point(rightX, middleY);
- Point lowerLeft= new Point(leftX, lowerY);
- return new int[] {upperLeft.x, upperLeft.y, middleRight.x, middleRight.y, lowerLeft.x, lowerLeft.y};
- } else {
- Point middleLeft= new Point(leftX, upperY);
- Point middleRight= new Point(rightX, upperY);
- Point lowerMiddle= new Point(middleX, lowerY);
- return new int[] {middleLeft.x, middleLeft.y, middleRight.x , middleRight.y, lowerMiddle.x, lowerMiddle.y };
- }
- }
-
- private Rectangle computeRectangle(Rectangle rectangle, int lineHeight) {
- final int MARGIN= 2;
- int leftX= rectangle.x + MARGIN;
- int length= rectangle.width - 2*MARGIN;
- int yDelta= (lineHeight - length)/2;
- int upperY= rectangle.y + yDelta;
- return new Rectangle(leftX, upperY, length, length);
- }
-
- private Point paintTriangle(GC gc, Canvas canvas, Rectangle rectangle) {
- Point endPoint= null;
- int lineHeight= gc.getFontMetrics().getHeight();
- int[] polygon= computePolygon(computeRectangle(rectangle, lineHeight));
- if (isCollapsed()) {
- Color bg= gc.getBackground();
- gc.setBackground(canvas.getDisplay().getSystemColor(COLOR));
- gc.fillPolygon(polygon);
- gc.setBackground(bg);
- } else {
- Color fg= gc.getForeground();
- gc.setForeground(canvas.getDisplay().getSystemColor(COLOR));
- gc.drawPolygon(polygon);
- gc.setForeground(fg);
- endPoint= new Point(polygon[polygon.length -2], polygon[polygon.length -1] + 2);
- }
- return endPoint;
- }
-
- private void paintRangeIndication(GC gc, Canvas canvas, Rectangle rectangle, Point startPoint) {
- final int MARGIN= 3;
- Color fg= gc.getForeground();
- gc.setForeground(canvas.getDisplay().getSystemColor(COLOR));
- gc.setLineWidth(1);
- gc.drawLine(startPoint.x, startPoint.y, startPoint.x, rectangle.y + rectangle.height - MARGIN);
- gc.drawLine(startPoint.x, rectangle.y + rectangle.height - MARGIN, rectangle.x + rectangle.width - MARGIN, rectangle.y + rectangle.height - MARGIN);
- gc.setForeground(fg);
- }
-
- /*
- * @see org.eclipse.jface.text.source.Annotation#paint(org.eclipse.swt.graphics.GC, org.eclipse.swt.widgets.Canvas, org.eclipse.swt.graphics.Rectangle)
- */
- public void paint(GC gc, Canvas canvas, Rectangle rectangle) {
- if (PLUS)
- paintPlus(gc, canvas, rectangle);
- else {
- Point p= paintTriangle(gc, canvas, rectangle);
- if (p != null && fIsRangeIndication)
- paintRangeIndication(gc, canvas, rectangle, p);
- }
- }
-
- /**
- * Returns the state of this annotation.
- *
- * @return <code>true</code> if collapsed
- */
- public boolean isCollapsed() {
- return fIsCollapsed;
- }
-
- /**
- * Marks this annotation as being collapsed.
- */
- public void markCollapsed() {
- fIsCollapsed= true;
- }
-
- /**
- * Marks this annotation as being unfolded.
- */
- public void markExpanded() {
- fIsCollapsed= false;
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationHover.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationHover.java
deleted file mode 100644
index 91bf1c7dc..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationHover.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-import java.util.Iterator;
-
-import org.eclipse.swt.widgets.Shell;
-
-import org.eclipse.jface.resource.JFaceResources;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IInformationControl;
-import org.eclipse.jface.text.IInformationControlCreator;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.IAnnotationHover;
-import org.eclipse.jface.text.source.IAnnotationHoverExtension;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.jface.text.source.IAnnotationModelExtension;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.jface.text.source.ISourceViewerExtension2;
-
-/**
- * Annotation hover for projection annotations.
- * <p>
- * Internal class. Do not use. Public for testing purposes only.
- *
- * @since 3.0
- */
-public class ProjectionAnnotationHover implements IAnnotationHover, IAnnotationHoverExtension {
-
- /*
- * @see org.eclipse.jface.text.source.IAnnotationHover#getHoverInfo(org.eclipse.jface.text.source.ISourceViewer, int)
- */
- public String getHoverInfo(ISourceViewer sourceViewer, int lineNumber) {
- // this is a no-op as semantics is defined by the implementation of the annotation hover extension
- return null;
- }
-
- /*
- * @see org.eclipse.jface.text.source.IAnnotationHoverExtension#getLineRange(org.eclipse.jface.text.source.ISourceViewer, int, int, int)
- */
- public ITextSelection getLineRange(ISourceViewer viewer, int line, int first, int number) {
- return null; // go for the default behavior
- }
-
- /*
- * @see org.eclipse.jface.text.source.IAnnotationHoverExtension#getInformationControlCreator()
- */
- public IInformationControlCreator getInformationControlCreator() {
- return new IInformationControlCreator() {
- public IInformationControl createInformationControl(Shell parent) {
- return new SourceViewerInformationControl(parent, JFaceResources.TEXT_FONT);
- }
- };
- }
-
- /*
- * @see org.eclipse.jface.text.source.IAnnotationHoverExtension#getHoverInfo(org.eclipse.jface.text.source.ISourceViewer, int, int, int)
- */
- public String getHoverInfo(ISourceViewer sourceViewer, int lineNumber, int first, int number) {
- return getProjectionTextAtLine(sourceViewer, lineNumber, number);
- }
-
- private int compareRulerLine(Position position, IDocument document, int line) {
- if (position.getOffset() > -1 && position.getLength() > -1) {
- try {
- int startLine= document.getLineOfOffset(position.getOffset());
- if (line == startLine)
- return 1;
- if (startLine <= line && line <= document.getLineOfOffset(position.getOffset() + position.getLength()))
- return 2;
- } catch (BadLocationException x) {
- }
- }
- return 0;
- }
-
- private String getProjectionTextAtLine(ISourceViewer viewer, int line, int numberOfLines) {
-
- IAnnotationModel model= null;
- if (viewer instanceof ISourceViewerExtension2) {
- ISourceViewerExtension2 viewerExtension= (ISourceViewerExtension2) viewer;
- IAnnotationModel visual= viewerExtension.getVisualAnnotationModel();
- if (visual instanceof IAnnotationModelExtension) {
- IAnnotationModelExtension modelExtension= (IAnnotationModelExtension) visual;
- model= modelExtension.getAnnotationModel(ProjectionViewer.PROJECTION_ANNOTATION_MODEL);
- }
- }
-
- if (model != null) {
- try {
- IDocument document= viewer.getDocument();
- Iterator e= model.getAnnotationIterator();
- while (e.hasNext()) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) e.next();
- if (!annotation.isCollapsed())
- continue;
-
- Position position= model.getPosition(annotation);
- if (position == null)
- continue;
-
- if (1 == compareRulerLine(position, document, line))
- return getText(document, position.getOffset(), position.getLength(), numberOfLines);
-
- }
- } catch (BadLocationException x) {
- }
- }
-
- return null;
- }
-
- private String getText(IDocument document, int offset, int length, int numberOfLines) throws BadLocationException {
- int endLine= document.getLineOfOffset(offset) + Math.max(0, numberOfLines -1);
- IRegion lineInfo= document.getLineInformation(endLine);
- int endOffset= Math.min(offset + length, lineInfo.getOffset() + lineInfo.getLength());
- return document.get(offset, endOffset - offset);
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java
deleted file mode 100644
index 72c9779eb..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionAnnotationModel.java
+++ /dev/null
@@ -1,207 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.NullProgressMonitor;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.jface.text.source.AnnotationModel;
-
-
-/**
- * A projection annotation model.
- * <p>
- * Internal class. Do not use. Public only for testing purposes.
- *
- * @since 3.0
- */
-public class ProjectionAnnotationModel extends AnnotationModel {
-
-
- private class Summarizer extends Thread {
-
- public Summarizer() {
- setDaemon(true);
- start();
- synchronized (fLock) {
- fHasStarted= false;
- }
- }
-
- /*
- * @see java.lang.Thread#run()
- */
- public void run() {
-
- synchronized (fLock) {
- fHasStarted= true;
- }
-
- fProjectionSummary.updateSummaries(new NullProgressMonitor());
-
- synchronized (fLock) {
- if (fSummarizer == this)
- fSummarizer= null;
- }
- }
- }
-
-
- private ProjectionSummary fProjectionSummary;
-
- private Object fLock= new Object();
- private volatile Summarizer fSummarizer;
- private volatile boolean fHasStarted= false;
-
-
- public ProjectionAnnotationModel(ProjectionSummary summary) {
- fProjectionSummary= summary;
- }
-
- public void setProjectionSummary(ProjectionSummary summary) {
- fProjectionSummary= summary;
- }
-
- private void updateSummaries() {
- if (fProjectionSummary == null)
- return;
-
- synchronized (fLock) {
- if (fSummarizer == null || fHasStarted)
- fSummarizer= new Summarizer();
- }
- }
-
- /**
- * Changes the state of the given annotation to collapsed. An appropriate
- * annotation model change event is sent out.
- *
- * @param annotation the annotation
- */
- public void collapse(Annotation annotation) {
- if (annotation instanceof ProjectionAnnotation) {
- ProjectionAnnotation projection= (ProjectionAnnotation) annotation;
- if (!projection.isCollapsed()) {
- projection.markCollapsed();
- modifyAnnotation(projection, true);
- updateSummaries();
- }
- }
- }
-
- /**
- * Changes the state of the given annotation to expanded. An appropriate
- * annotation model change event is sent out.
- *
- * @param annotation the annotation
- */
- public void expand(Annotation annotation) {
- if (annotation instanceof ProjectionAnnotation) {
- ProjectionAnnotation projection= (ProjectionAnnotation) annotation;
- if (projection.isCollapsed()) {
- projection.markExpanded();
- modifyAnnotation(projection, true);
- updateSummaries();
- }
- }
- }
-
- /**
- * Toggles the expansion state of the given annotation. An appropriate
- * annotation model change event is sent out.
- *
- * @param annotation the annotation
- */
- public void toggleExpansionState(Annotation annotation) {
- if (annotation instanceof ProjectionAnnotation) {
- ProjectionAnnotation projection= (ProjectionAnnotation) annotation;
-
- if (projection.isCollapsed())
- projection.markExpanded();
- else
- projection.markCollapsed();
-
- modifyAnnotation(projection, true);
- updateSummaries();
- }
- }
-
- /**
- * Expands all annotations that overlap with the given range and are collapsed.
- *
- * @param offset the range offset
- * @param length the range length
- * @return <code>true</code> if any annotation has been expanded, <code>false</code> otherwise
- */
- public boolean expandAll(int offset, int length) {
- return expandAll(offset, length, true);
- }
-
- /**
- * Expands all annotations that overlap with the given range and are collapsed. Fires a model change event if
- * requested.
- *
- * @param offset the offset of the range
- * @param length the length of the range
- * @param fireModelChanged <code>true</code> if a model change event
- * should be fired, <code>false</code> otherwise
- * @return <code>true</code> if any annotation has been expanded, <code>false</code> otherwise
- */
- protected boolean expandAll(int offset, int length, boolean fireModelChanged) {
-
- boolean expanding= false;
-
- Iterator iterator= getAnnotationIterator();
- while (iterator.hasNext()) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) iterator.next();
- if (annotation.isCollapsed()) {
- Position position= getPosition(annotation);
- if (position.overlapsWith(offset, length) /* || is a delete at the boundary */ ) {
- annotation.markExpanded();
- modifyAnnotation(annotation, false);
- expanding= true;
- }
- }
- }
-
- if (expanding) {
- if (fireModelChanged)
- fireModelChanged();
- updateSummaries();
- }
-
- return expanding;
- }
-
- /**
- * Modifies the annotation model.
- *
- * @param deletions the list of deleted annotations
- * @param additions the set of annotations to add together with their associated position
- * @param modifications the list of modified annotations
- */
- public void modifyAnnotations(Annotation[] deletions, Map additions, Annotation[] modifications) {
- try {
- replaceAnnotations(deletions, additions, false);
- if (modifications != null) {
- for (int i= 0; i < modifications.length; i++)
- modifyAnnotation(modifications[i], false);
- }
- } catch (BadLocationException x) {
- }
- fireModelChanged();
- }
-} \ No newline at end of file
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionRulerColumn.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionRulerColumn.java
deleted file mode 100644
index faa45b649..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionRulerColumn.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-
-import java.util.Iterator;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseMoveListener;
-import org.eclipse.swt.events.MouseTrackAdapter;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.AnnotationRulerColumn;
-import org.eclipse.jface.text.source.CompositeRuler;
-import org.eclipse.jface.text.source.IAnnotationAccess;
-import org.eclipse.jface.text.source.IAnnotationModel;
-
-
-/**
- * A ruler column for controlling the behavior of a
- * <code>ProjectionSourceViewer</code>.
- * <p>
- * Internal class. Do not use. Public only for testing purposes.
- *
- * @since 3.0
- */
-public class ProjectionRulerColumn extends AnnotationRulerColumn {
-
- private ProjectionAnnotation fCurrentAnnotation;
-
- /**
- * Creates a new outliner ruler column.
- *
- * @param model the column's annotation model
- * @param width the width in pixels
- */
- public ProjectionRulerColumn(IAnnotationModel model, int width, IAnnotationAccess annotationAccess) {
- super(model, width, annotationAccess);
- }
-
- /*
- * @see org.eclipse.jface.text.source.AnnotationRulerColumn#mouseClicked(int)
- */
- protected void mouseClicked(int line) {
- clearCurrentAnnotation();
- ProjectionAnnotation annotation= findAnnotation(line);
- if (annotation != null) {
- ProjectionAnnotationModel model= (ProjectionAnnotationModel) getModel();
- model.toggleExpansionState(annotation);
- }
- }
-
- /**
- * Returns the projection annotation of the column's annotation
- * model that contains the given line.
- *
- * @param line the line
- * @return the projection annotation containing the given line
- */
- private ProjectionAnnotation findAnnotation(int line) {
-
- ProjectionAnnotation previousAnnotation= null;
-
- IAnnotationModel model= getModel();
- if (model != null) {
- IDocument document= getCachedTextViewer().getDocument();
-
- int previousDistance= Integer.MAX_VALUE;
-
- Iterator e= model.getAnnotationIterator();
- while (e.hasNext()) {
- Object next= e.next();
- if (next instanceof ProjectionAnnotation) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) next;
- Position p= model.getPosition(annotation);
-
- int distance= getDistance(p, document, line);
- if (distance == -1)
- continue;
-
- if (distance < previousDistance) {
- previousAnnotation= annotation;
- previousDistance= distance;
- }
- }
- }
-
- }
-
- return previousAnnotation;
- }
-
- /**
- * Returns the distance of the given line to the the start line of the given position in the given document. The distance is
- * <code>-1</code> when the line is not included in the given position.
- *
- * @param position the position
- * @param document the document
- * @param line the line
- * @return <code>-1</code> if line is not contained, a position number otherwise
- */
- private int getDistance(Position position, IDocument document, int line) {
- if (position.getOffset() > -1 && position.getLength() > -1) {
- try {
- int startLine= document.getLineOfOffset(position.getOffset());
- int endLine= document.getLineOfOffset(position.getOffset() + position.getLength());
- if (startLine <= line && line < endLine)
- return line - startLine;
- } catch (BadLocationException x) {
- }
- }
- return -1;
- }
-
- private boolean clearCurrentAnnotation() {
- if (fCurrentAnnotation != null) {
- fCurrentAnnotation.setRangeIndication(false);
- fCurrentAnnotation= null;
- return true;
- }
- return false;
- }
-
- /*
- * @see org.eclipse.jface.text.source.IVerticalRulerColumn#createControl(org.eclipse.jface.text.source.CompositeRuler, org.eclipse.swt.widgets.Composite)
- */
- public Control createControl(CompositeRuler parentRuler, Composite parentControl) {
- Control control= super.createControl(parentRuler, parentControl);
- // set background
- Display display= parentControl.getDisplay();
- Color background= display.getSystemColor(SWT.COLOR_LIST_BACKGROUND);
- control.setBackground(background);
- // install hover listener
- control.addMouseTrackListener(new MouseTrackAdapter() {
- public void mouseHover(MouseEvent e) {
- boolean redraw= clearCurrentAnnotation();
- ProjectionAnnotation annotation= findAnnotation(toDocumentLineNumber(e.y));
- if (annotation != null && !annotation.isCollapsed()) {
- annotation.setRangeIndication(true);
- fCurrentAnnotation= annotation;
- redraw= true;
- }
- if (redraw)
- redraw();
-
- }
- public void mouseExit(MouseEvent e) {
- if (clearCurrentAnnotation())
- redraw();
- }
- });
- // install mouse move listener
- control.addMouseMoveListener(new MouseMoveListener() {
- public void mouseMove(MouseEvent e) {
- if (clearCurrentAnnotation())
- redraw();
- }
- });
- return control;
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSummary.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSummary.java
deleted file mode 100644
index 814325b73..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSummary.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.jface.text.source.IAnnotationAccess;
-import org.eclipse.jface.text.source.IAnnotationAccessExtension;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.jface.text.source.IAnnotationModelExtension;
-
-/**
- * Strategy for managing annotation summaries for collapsed ranges.
- *
- * @since 3.0
- */
-public class ProjectionSummary {
-
- private ProjectionViewer fProjectionViewer;
- private IAnnotationModel fAnnotationModel;
- private IAnnotationAccess fAnnotationAccess;
- private List fConfiguredAnnotationTypes;
-
- public ProjectionSummary(ProjectionViewer projectionViewer, IAnnotationAccess annotationAccess) {
- super();
- fProjectionViewer= projectionViewer;
- fAnnotationAccess= annotationAccess;
- }
-
- public void addAnnotationType(String annotationType) {
- if (fConfiguredAnnotationTypes == null) {
- fConfiguredAnnotationTypes= new ArrayList();
- fConfiguredAnnotationTypes.add(annotationType);
- } else if (!fConfiguredAnnotationTypes.contains(annotationType))
- fConfiguredAnnotationTypes.add(annotationType);
- }
-
- public void removeAnnotationType(String annotationType) {
- if (fConfiguredAnnotationTypes != null) {
- fConfiguredAnnotationTypes.remove(annotationType);
- if (fConfiguredAnnotationTypes.size() == 0)
- fConfiguredAnnotationTypes= null;
- }
- }
-
- public void updateSummaries(IProgressMonitor monitor) {
- fAnnotationModel= fProjectionViewer.getVisualAnnotationModel();
- removeSummaries(monitor);
- createSummaries(monitor);
- }
-
- private boolean isCanceled(IProgressMonitor monitor) {
- return monitor != null && monitor.isCanceled();
- }
-
- public void removeSummaries(IProgressMonitor monitor) {
- IAnnotationModelExtension extension= null;
- List bags= null;
-
- if (fAnnotationModel instanceof IAnnotationModelExtension) {
- extension= (IAnnotationModelExtension) fAnnotationModel;
- bags= new ArrayList();
- }
-
- Iterator e= fAnnotationModel.getAnnotationIterator();
- while (e.hasNext()) {
- Annotation annotation= (Annotation) e.next();
- if (annotation instanceof AnnotationBag) {
- if (bags == null)
- fAnnotationModel.removeAnnotation(annotation);
- else
- bags.add(annotation);
- }
-
- if (isCanceled(monitor))
- return;
- }
-
- if (bags != null && bags.size() > 0) {
- Annotation[] deletions= new Annotation[bags.size()];
- bags.toArray(deletions);
- if (!isCanceled(monitor))
- extension.replaceAnnotations(deletions, null);
- }
- }
-
- public void createSummaries(IProgressMonitor monitor) {
- Map additions= new HashMap();
-
- ProjectionAnnotationModel model= fProjectionViewer.getProjectionAnnotationModel();
- Iterator e= model.getAnnotationIterator();
- while (e.hasNext()) {
- ProjectionAnnotation projection= (ProjectionAnnotation) e.next();
- if (projection.isCollapsed()) {
- Position position= model.getPosition(projection);
- IRegion summaryRegion= fProjectionViewer.computeCollapsedRegion(position);
- if (summaryRegion != null) {
- Position summaryAnchor= fProjectionViewer.computeCollapsedRegionAnchor(position);
- if (summaryAnchor != null)
- createSummary(additions, summaryRegion, summaryAnchor);
- }
- }
-
- if (isCanceled(monitor))
- return;
- }
-
- if (additions.size() > 0) {
- if (fAnnotationModel instanceof IAnnotationModelExtension) {
- IAnnotationModelExtension extension= (IAnnotationModelExtension) fAnnotationModel;
- if (!isCanceled(monitor))
- extension.replaceAnnotations(null, additions);
- } else {
- Iterator e1= additions.keySet().iterator();
- while (e1.hasNext()) {
- AnnotationBag bag= (AnnotationBag) e1.next();
- Position position= (Position) additions.get(bag);
- if (isCanceled(monitor))
- return;
- fAnnotationModel.addAnnotation(bag, position);
- }
- }
- }
- }
-
- private void createSummary(Map additions, IRegion summaryRange, Position summaryAnchor) {
- Map map= new HashMap();
-
- int size= fConfiguredAnnotationTypes.size();
- for (int i= 0; i < size; i++) {
- String type= (String) fConfiguredAnnotationTypes.get(i);
- map.put(type, new AnnotationBag(type));
- }
-
- IAnnotationModel model= fProjectionViewer.getAnnotationModel();
- Iterator e= model.getAnnotationIterator();
- while (e.hasNext()) {
- Annotation annotation= (Annotation) e.next();
- AnnotationBag bag= findBagForType(map, annotation.getType());
- if (bag != null) {
- Position position= model.getPosition(annotation);
- if (includes(summaryRange, position))
- bag.add(annotation);
- }
- }
-
- for (int i= 0; i < size; i++) {
- AnnotationBag bag= (AnnotationBag) map.get(fConfiguredAnnotationTypes.get(i));
- if (!bag.isEmpty())
- additions.put(bag, new Position(summaryAnchor.getOffset(), summaryAnchor.getLength()));
- }
- }
-
- private AnnotationBag findBagForType(Map bagMap, String annotationType) {
- if (fAnnotationAccess instanceof IAnnotationAccessExtension) {
- IAnnotationAccessExtension extension= (IAnnotationAccessExtension) fAnnotationAccess;
- Object[] superTypes= extension.getSupertypes(annotationType);
- for (int i= 0; i < superTypes.length; i++) {
- AnnotationBag bag= (AnnotationBag) bagMap.get(superTypes[i]);
- if (bag != null)
- return bag;
- }
- }
- return null;
- }
-
- private boolean includes(IRegion range, Position position) {
- if (!position.isDeleted())
- return range.getOffset() <= position.getOffset() && position.getOffset() + position.getLength() <= range.getOffset() + range.getLength();
- return false;
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSupport.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSupport.java
deleted file mode 100644
index 13a5ef92f..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionSupport.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.custom.StyledTextContent;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.jface.text.source.AnnotationPainter;
-import org.eclipse.jface.text.source.IAnnotationAccess;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.jface.text.source.ISharedTextColors;
-import org.eclipse.jface.text.source.ISourceViewer;
-
-/**
- * Supports the configuration of projection capabilities for projection viewers.
- * <p>
- * API in progress. Do not yet use.
- *
- * @since 3.0
- */
-public class ProjectionSupport {
-
-
- private static class ProjectionAnnotationsPainter extends AnnotationPainter {
- public ProjectionAnnotationsPainter(ISourceViewer sourceViewer, IAnnotationAccess access) {
- super(sourceViewer, access);
- }
-
- /*
- * @see org.eclipse.jface.text.source.AnnotationPainter#isRepaintReason(int)
- */
- protected boolean isRepaintReason(int reason) {
- return true;
- }
-
- /*
- * @see org.eclipse.jface.text.source.AnnotationPainter#findAnnotationModel(org.eclipse.jface.text.source.ISourceViewer)
- */
- protected IAnnotationModel findAnnotationModel(ISourceViewer sourceViewer) {
- if (sourceViewer instanceof ProjectionViewer) {
- ProjectionViewer projectionViewer= (ProjectionViewer) sourceViewer;
- return projectionViewer.getProjectionAnnotationModel();
- }
- return null;
- }
- }
-
- private static class ProjectionDrawingStrategy implements AnnotationPainter.IDrawingStrategy {
- /*
- * @see org.eclipse.jface.text.source.AnnotationPainter.IDrawingStrategy#draw(org.eclipse.swt.graphics.GC, org.eclipse.swt.custom.StyledText, int, int, org.eclipse.swt.graphics.Color)
- */
- public void draw(Annotation annotation, GC gc, StyledText textWidget, int offset, int length, Color color) {
- if (gc != null && annotation instanceof ProjectionAnnotation) {
- ProjectionAnnotation projectionAnnotation= (ProjectionAnnotation) annotation;
- if (projectionAnnotation.isCollapsed()) {
-
- StyledTextContent content= textWidget.getContent();
- int line= content.getLineAtOffset(offset);
- int lineStart= content.getOffsetAtLine(line);
- String text= content.getLine(line);
- int lineLength= text == null ? 0 : text.length();
- int lineEnd= lineStart + lineLength;
- Point p= textWidget.getLocationAtOffset(lineEnd);
-
- Color c= gc.getForeground();
- gc.setForeground(color);
-
- FontMetrics metrics= gc.getFontMetrics();
- int lineHeight= metrics.getHeight();
- int verticalMargin= lineHeight/10;
- int height= lineHeight - 2*verticalMargin;
- int width= metrics.getAverageCharWidth();
- gc.drawRectangle(p.x, p.y + verticalMargin, width, height);
- int third= width/3;
- int dotsVertical= p.y + metrics.getLeading() + metrics.getAscent();
- gc.drawPoint(p.x + third, dotsVertical);
- gc.drawPoint(p.x + 2*third, dotsVertical);
-
- gc.setForeground(c);
- }
- }
- }
- }
-
- private final static Object PROJECTION= new Object();
- private List fSummarizableTypes;
-
- public ProjectionSupport() {
- }
-
- public void addSummarizableAnnotationType(String annotationType) {
- if (fSummarizableTypes == null) {
- fSummarizableTypes= new ArrayList();
- fSummarizableTypes.add(annotationType);
- } else if (!fSummarizableTypes.contains(annotationType))
- fSummarizableTypes.add(annotationType);
- }
-
- public void removeSummarizableAnnotationType(String annotationType) {
- if (fSummarizableTypes != null)
- fSummarizableTypes.remove(annotationType);
- if (fSummarizableTypes.size() == 0)
- fSummarizableTypes= null;
- }
-
- /**
- * Enable projection for the given viewer
- *
- * @param viewer the viewer
- * @param annotationAccess the annotation access
- * @param sharedTextColors the shared text colors
- */
- public void enableProjection(ISourceViewer viewer, IAnnotationAccess annotationAccess, ISharedTextColors sharedTextColors) {
-
- if (viewer instanceof ProjectionViewer) {
- ProjectionViewer projectionViewer= (ProjectionViewer) viewer;
-
- projectionViewer.setProjectionSummary(createProjectionSummary(projectionViewer, annotationAccess));
-
- AnnotationPainter painter= new ProjectionAnnotationsPainter(projectionViewer, annotationAccess);
- painter.addDrawingStrategy(PROJECTION, new ProjectionDrawingStrategy());
- painter.addAnnotationType(ProjectionAnnotation.TYPE, PROJECTION);
- painter.setAnnotationTypeColor(ProjectionAnnotation.TYPE, sharedTextColors.getColor(getColor()));
- projectionViewer.addPainter(painter);
-
- ProjectionRulerColumn column= new ProjectionRulerColumn(projectionViewer.getProjectionAnnotationModel(), 9, annotationAccess);
- column.addAnnotationType(ProjectionAnnotation.TYPE);
- // TODO make hover configurable from outside
- column.setHover(new ProjectionAnnotationHover());
- projectionViewer.addVerticalRulerColumn(column);
- }
- }
-
- private ProjectionSummary createProjectionSummary(ProjectionViewer projectionViewer, IAnnotationAccess annotationAccess) {
- ProjectionSummary summary= new ProjectionSummary(projectionViewer, annotationAccess);
- if (fSummarizableTypes != null) {
- int size= fSummarizableTypes.size();
- for (int i= 0; i < size; i++)
- summary.addAnnotationType((String) fSummarizableTypes.get(i));
- }
- return summary;
- }
-
- /**
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter(ISourceViewer viewer, Class required) {
- if (ProjectionAnnotationModel.class.equals(required)) {
- if (viewer instanceof ProjectionViewer) {
- ProjectionViewer projectionViewer= (ProjectionViewer) viewer;
- return projectionViewer.getProjectionAnnotationModel();
- }
- }
- return null;
- }
-
- private RGB getColor() {
- // TODO read out preference settings
- Color c= Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY);
- return c.getRGB();
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionViewer.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionViewer.java
deleted file mode 100644
index be9bd5e51..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/ProjectionViewer.java
+++ /dev/null
@@ -1,659 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.VerifyEvent;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Layout;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ISlaveDocumentManager;
-import org.eclipse.jface.text.ITextViewerExtension5;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.projection.ProjectionDocument;
-import org.eclipse.jface.text.projection.ProjectionDocumentEvent;
-import org.eclipse.jface.text.projection.ProjectionDocumentManager;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.jface.text.source.AnnotationModelEvent;
-import org.eclipse.jface.text.source.CompositeRuler;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.jface.text.source.IAnnotationModelExtension;
-import org.eclipse.jface.text.source.IAnnotationModelListener;
-import org.eclipse.jface.text.source.IAnnotationModelListenerExtension;
-import org.eclipse.jface.text.source.IOverviewRuler;
-import org.eclipse.jface.text.source.IVerticalRuler;
-import org.eclipse.jface.text.source.IVerticalRulerColumn;
-import org.eclipse.jface.text.source.SourceViewer;
-
-
-/**
- * A projection source viewer is a source viewer which does not support the
- * concept of a single visible region. Instead it supports multiple visible
- * regions which can dynamically be changed.
- * <p>
- * A projection source viewer uses a <code>ProjectionDocumentManager</code>
- * for the management of the visible document.
- * <p>
- * API in progress. Do not yet use.
- *
- * @since 3.0
- */
-public class ProjectionViewer extends SourceViewer implements ITextViewerExtension5 {
-
- /**
- * Internal listener to changes of the projection annotation model.
- */
- private class ProjectionAnnotationModelListener implements IAnnotationModelListener, IAnnotationModelListenerExtension {
-
- /*
- * @see org.eclipse.jface.text.source.IAnnotationModelListener#modelChanged(org.eclipse.jface.text.source.IAnnotationModel)
- */
- public void modelChanged(IAnnotationModel model) {
- postCatchupRequest(null);
- }
-
- /*
- * @see org.eclipse.jface.text.source.IAnnotationModelListenerExtension#modelChanged(org.eclipse.jface.text.source.AnnotationModelEvent)
- */
- public void modelChanged(AnnotationModelEvent event) {
- postCatchupRequest(event);
- }
- }
-
- /**
- * Key of the projection annotation model inside the visual annotation model.
- */
- protected final static Object PROJECTION_ANNOTATION_MODEL= new Object();
-
-
- /** The projection annotation model used by this viewer. */
- private ProjectionAnnotationModel fProjectionAnnotationModel;
- /** The projection annotation model listener */
- private IAnnotationModelListener fProjectionAnnotationModelListener= new ProjectionAnnotationModelListener();
- /** The projection summary. */
- private ProjectionSummary fProjectionSummary;
- /** Indication that an annotation world change has not yet been processed. */
- private boolean fPendingAnnotationWorldChange= false;
- /** Indication whether projection changes in the visible document should be considered. */
- private boolean fHandleProjectionChanges= true;
-
- /**
- * Creates a new projection source viewer.
- *
- * @param parent the SWT parent control
- * @param ruler the vertical ruler
- * @param styles the SWT style bits
- */
- public ProjectionViewer(Composite parent, IVerticalRuler ruler, IOverviewRuler overviewRuler, boolean showsAnnotationOverview, int styles) {
- super(parent, ruler, overviewRuler, showsAnnotationOverview, styles);
- }
-
- /*
- * @see org.eclipse.jface.text.source.SourceViewer#createLayout()
- */
- protected Layout createLayout() {
- return new RulerLayout(1);
- }
-
- /**
- * Sets the projection summary for this viewer.
- *
- * @param projectionSummary the projection summary.
- */
- public void setProjectionSummary(ProjectionSummary projectionSummary) {
- fProjectionSummary= projectionSummary;
- ProjectionAnnotationModel model= getProjectionAnnotationModel();
- if (model != null)
- model.setProjectionSummary(fProjectionSummary);
- }
-
- /**
- * Adds the projection annotation model to the given annotation model.
- *
- * @param model the model to which the projection annotation model is added
- */
- private void addProjectionAnnotationModel(IAnnotationModel model) {
- if (model instanceof IAnnotationModelExtension) {
- IAnnotationModelExtension extension= (IAnnotationModelExtension) model;
- extension.addAnnotationModel(PROJECTION_ANNOTATION_MODEL, fProjectionAnnotationModel);
- fProjectionAnnotationModel.addAnnotationModelListener(fProjectionAnnotationModelListener);
- }
- }
-
- /**
- * Removes the projection annotation model from the given annotation model.
- *
- * @param model the mode from which the projection annotation model is removed
- */
- private void removeProjectionAnnotationModel(IAnnotationModel model) {
- if (model instanceof IAnnotationModelExtension) {
- fProjectionAnnotationModel.removeAnnotationModelListener(fProjectionAnnotationModelListener);
- IAnnotationModelExtension extension= (IAnnotationModelExtension) model;
- extension.removeAnnotationModel(PROJECTION_ANNOTATION_MODEL);
- }
- }
-
- /*
- * @see org.eclipse.jface.text.source.SourceViewer#createVisualAnnotationModel(org.eclipse.jface.text.source.IAnnotationModel)
- */
- protected IAnnotationModel createVisualAnnotationModel(IAnnotationModel annotationModel) {
- IAnnotationModel model= super.createVisualAnnotationModel(annotationModel);
- fProjectionAnnotationModel= new ProjectionAnnotationModel(fProjectionSummary);
- addProjectionAnnotationModel(model);
- return model;
- }
-
- /**
- * Returns the projection annotation model.
- *
- * @return the projection annotation model
- */
- public ProjectionAnnotationModel getProjectionAnnotationModel() {
- IAnnotationModel model= getVisualAnnotationModel();
- if (model instanceof IAnnotationModelExtension) {
- IAnnotationModelExtension extension= (IAnnotationModelExtension) model;
- return (ProjectionAnnotationModel) extension.getAnnotationModel(PROJECTION_ANNOTATION_MODEL);
- }
- return null;
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#createSlaveDocumentManager()
- */
- protected ISlaveDocumentManager createSlaveDocumentManager() {
- return new ProjectionDocumentManager();
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#updateSlaveDocument(org.eclipse.jface.text.IDocument, int, int)
- */
- protected boolean updateSlaveDocument(IDocument slaveDocument, int modelRangeOffset, int modelRangeLength) throws BadLocationException {
- if (slaveDocument instanceof ProjectionDocument) {
- ProjectionDocument document= (ProjectionDocument) slaveDocument;
- try {
- fHandleProjectionChanges= false;
- document.replaceMasterDocumentRanges(modelRangeOffset, modelRangeLength);
- } finally {
- fHandleProjectionChanges= true;
- }
- return true;
- }
- return false;
- }
-
- /**
- * Returns whether this viewer is in projection mode.
- *
- * @return <code>true</code> if this viewer is in projection mode,
- * <code>false</code> otherwise
- */
- private boolean isProjectionMode() {
- return getProjectionAnnotationModel() != null;
- }
-
- /**
- * Disables the projection mode.
- */
- private void disableProjection() {
- if (isProjectionMode()) {
- removeProjectionAnnotationModel(getVisualAnnotationModel());
- fProjectionAnnotationModel.removeAllAnnotations();
- }
- }
-
- /**
- * Enables the projection mode.
- */
- private void enableProjection() {
- if (!isProjectionMode())
- addProjectionAnnotationModel(getVisualAnnotationModel());
- }
-
- /**
- * Remembers whether to listen to projection changes of the visible
- * document.
- *
- * @see ProjectionDocument#addMasterDocumentRange(int, int)
- */
- private void addMasterDocumentRange(ProjectionDocument projection, int offset, int length) throws BadLocationException {
- try {
- fHandleProjectionChanges= false;
- projection.addMasterDocumentRange(offset, length);
- } finally {
- fHandleProjectionChanges= true;
- }
- }
-
- /**
- * Remembers whether to listen to projection changes of the visible
- * document.
- *
- * @see ProjectionDocument#removeMasterDocumentRange(int, int)
- */
- private void removeMasterDocumentRange(ProjectionDocument projection, int offset, int length) throws BadLocationException {
- try {
- fHandleProjectionChanges= false;
- projection.removeMasterDocumentRange(offset, length);
- } finally {
- fHandleProjectionChanges= true;
- }
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#setVisibleRegion(int, int)
- */
- public void setVisibleRegion(int start, int length) {
- disableProjection();
- super.setVisibleRegion(start, length);
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#resetVisibleRegion()
- */
- public void resetVisibleRegion() {
- super.resetVisibleRegion();
- enableProjection();
- }
-
- /*
- * @see org.eclipse.jface.text.ITextViewer#getVisibleRegion()
- */
- public IRegion getVisibleRegion() {
- disableProjection();
- return super.getVisibleRegion();
- }
-
- /*
- * @see org.eclipse.jface.text.ITextViewer#overlapsWithVisibleRegion(int,int)
- */
- public boolean overlapsWithVisibleRegion(int offset, int length) {
- disableProjection();
- return super.overlapsWithVisibleRegion(offset, length);
- }
-
- /**
- * Replace the visible document with the given document. Maintains the
- * scroll offset and the selection.
- *
- * @param visibleDocument the visible document
- */
- private void replaceVisibleDocument(IDocument visibleDocument) {
- StyledText textWidget= getTextWidget();
- try {
- if (textWidget != null && !textWidget.isDisposed())
- textWidget.setRedraw(false);
-
- int topIndex= getTopIndex();
- Point selection= getSelectedRange();
- setVisibleDocument(visibleDocument);
- setSelectedRange(selection.x, selection.y);
- setTopIndex(topIndex);
-
- } finally {
- if (textWidget != null && !textWidget.isDisposed())
- textWidget.setRedraw(true);
- }
- }
-
- /**
- * Hides the given range by collapsing it. If requested, a redraw request is issued.
- *
- * @param offset the offset of the range to hide
- * @param length the length of the range to hide
- * @param fireRedraw <code>true</code> if a redraw request should be issued, <code>false</code> otherwise
- * @throws BadLocationException in case the range is invalid
- */
- private void collapse(int offset, int length, boolean fireRedraw) throws BadLocationException {
- ProjectionDocument projection= null;
-
- IDocument visibleDocument= getVisibleDocument();
- if (visibleDocument instanceof ProjectionDocument)
- projection= (ProjectionDocument) visibleDocument;
- else {
- IDocument master= getDocument();
- IDocument slave= createSlaveDocument(getDocument());
- if (slave instanceof ProjectionDocument) {
- projection= (ProjectionDocument) slave;
- addMasterDocumentRange(projection, 0, master.getLength());
- replaceVisibleDocument(projection);
- }
- }
-
- if (projection != null) {
- removeMasterDocumentRange(projection, offset, length);
- if (fireRedraw) {
- // repaint line above
- IDocument document= getDocument();
- int line= document.getLineOfOffset(offset);
- if (line > 0) {
- IRegion info= document.getLineInformation(line - 1);
- invalidateTextPresentation(info.getOffset(), info.getLength());
- }
- }
- }
- }
-
- /**
- * Makes the given range visible again while keeping the given collapsed
- * ranges. If requested, a redraw request is issued.
- *
- * @param expanded the range to be expanded
- * @param collapsed a sequence of collapsed ranges completely contained by
- * the expanded range
- * @param fireRedraw <code>true</code> if a redraw request should be
- * issued, <code>false</code> otherwise
- * @throws BadLocationException in case the range is invalid
- */
- private void expand(Position expanded, Position[] collapsed, boolean fireRedraw) throws BadLocationException {
- IDocument slave= getVisibleDocument();
- if (slave instanceof ProjectionDocument) {
- ProjectionDocument projection= (ProjectionDocument) slave;
-
- StyledText textWidget= getTextWidget();
- try {
-
- if (textWidget != null && !textWidget.isDisposed())
- textWidget.setRedraw(false);
-
- // expand
- addMasterDocumentRange(projection, expanded.getOffset(), expanded.getLength());
-
- // collapse contained regions
- if (collapsed != null) {
- for (int i= 0; i < collapsed.length; i++) {
- IRegion p= computeCollapsedRegion(collapsed[i]);
- removeMasterDocumentRange(projection, p.getOffset(), p.getLength());
- }
- }
-
- } finally {
- if (textWidget != null && !textWidget.isDisposed())
- textWidget.setRedraw(true);
- }
-
-
-
- IDocument master= getDocument();
- if (slave.getLength() == master.getLength()) {
- replaceVisibleDocument(master);
- freeSlaveDocument(slave);
- } else if (fireRedraw){
- invalidateTextPresentation(expanded.getOffset(), expanded.getLength());
- }
- }
- }
-
- /**
- * Posts the request for catch up with the annotation model into the UI thread.
- *
- * @param event the annotation model event
- */
- protected final void postCatchupRequest(final AnnotationModelEvent event) {
- StyledText widget= getTextWidget();
- if (widget != null) {
- Display display= widget.getDisplay();
- if (display != null) {
- // check for dead locks
- display.syncExec(new Runnable() {
- public void run() {
- catchupWithProjectionAnnotationModel(event);
- }
- });
- }
-
- }
- }
-
- /**
- * Adapts the slave visual document of this viewer to the changes described
- * in the annotation model event. When the event is <code>null</code>,
- * this is identical to a world change event.
- *
- * @param event the annotation model event or <code>null</code>
- */
- private void catchupWithProjectionAnnotationModel(AnnotationModelEvent event) {
- try {
- if (event == null) {
-
- fPendingAnnotationWorldChange= false;
- reinitializeProjection();
-
- } else if (event.isWorldChange()) {
-
- if (event.isValid()) {
- fPendingAnnotationWorldChange= false;
- reinitializeProjection();
- } else
- fPendingAnnotationWorldChange= true;
-
- } else {
-
- if (fPendingAnnotationWorldChange) {
- if (event.isValid()) {
- fPendingAnnotationWorldChange= false;
- reinitializeProjection();
- }
- } else {
-
- boolean fireRedraw= true;
-
- processDeletions(event, fireRedraw);
- processAdditions(event, fireRedraw);
- processModifications(event, fireRedraw);
-
- if (!fireRedraw) {
- //TODO compute minimal scope for invalidation
- invalidateTextPresentation();
- }
- }
-
- }
- } catch (BadLocationException e) {
- throw new IllegalArgumentException();
- }
- }
-
- private boolean includes(Position expanded, Position position) {
- if (!expanded.equals(position) && !position.isDeleted())
- return expanded.getOffset() <= position.getOffset() && position.getOffset() + position.getLength() <= expanded.getOffset() + expanded.getLength();
- return false;
- }
-
- private Position[] computeCollapsedRanges(Position expanded) {
- List positions= new ArrayList(5);
- Iterator e= fProjectionAnnotationModel.getAnnotationIterator();
- while (e.hasNext()) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) e.next();
- if (annotation.isCollapsed()) {
- Position position= fProjectionAnnotationModel.getPosition(annotation);
- if (includes(expanded, position))
- positions.add(position);
- }
- }
-
- if (positions.size() > 0) {
- Position[] result= new Position[positions.size()];
- positions.toArray(result);
- return result;
- }
-
- return null;
- }
-
- private void processDeletions(AnnotationModelEvent event, boolean fireRedraw) throws BadLocationException {
- Annotation[] annotations= event.getRemovedAnnotations();
- for (int i= 0; i < annotations.length; i++) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) annotations[i];
- if (annotation.isCollapsed()) {
- Position expanded= event.getPositionOfRemovedAnnotation(annotation);
- Position[] collapsed= computeCollapsedRanges(expanded);
- expand(expanded, collapsed, false);
- if (fireRedraw)
- invalidateTextPresentation(expanded.getOffset(), expanded.getLength());
- }
- }
- }
-
- public IRegion computeCollapsedRegion(Position position) {
- try {
- IDocument document= getDocument();
- int line= document.getLineOfOffset(position.getOffset());
- int offset= document.getLineOffset(line + 1);
-
- int length= position.getLength() - (offset - position.getOffset());
- if (length > 0)
- return new Region(offset, length);
- } catch (BadLocationException x) {
- }
-
- return null;
- }
-
- public Position computeCollapsedRegionAnchor(Position position) {
- try {
- IDocument document= getDocument();
- IRegion lineInfo= document.getLineInformationOfOffset(position.getOffset());
- return new Position(lineInfo.getOffset() + lineInfo.getLength(), 0);
- } catch (BadLocationException x) {
- }
- return null;
- }
-
- private void processAdditions(AnnotationModelEvent event, boolean fireRedraw) throws BadLocationException {
- Annotation[] annotations= event.getAddedAnnotations();
- for (int i= 0; i < annotations.length; i++) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) annotations[i];
- if (annotation.isCollapsed()) {
- Position position= fProjectionAnnotationModel.getPosition(annotation);
- IRegion region= computeCollapsedRegion(position);
- if (region != null)
- collapse(region.getOffset(), region.getLength(), fireRedraw);
- }
- }
- }
-
- private void processModifications(AnnotationModelEvent event, boolean fireRedraw) throws BadLocationException {
- Annotation[] annotations= event.getChangedAnnotations();
- for (int i= 0; i < annotations.length; i++) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) annotations[i];
- Position position= fProjectionAnnotationModel.getPosition(annotation);
- if (annotation.isCollapsed()) {
- IRegion region= computeCollapsedRegion(position);
- if (region != null)
- collapse(region.getOffset(), region.getLength(), fireRedraw);
- } else {
- Position[] collapsed= computeCollapsedRanges(position);
- expand(position, collapsed, false);
- if (fireRedraw)
- invalidateTextPresentation(position.getOffset(), position.getLength());
- }
- }
- }
-
- private void reinitializeProjection() throws BadLocationException {
-
- ProjectionDocument projection= null;
-
- ISlaveDocumentManager manager= getSlaveDocumentManager();
- if (manager != null) {
- IDocument master= getDocument();
- if (master != null) {
- IDocument slave= manager.createSlaveDocument(master);
- if (slave instanceof ProjectionDocument) {
- projection= (ProjectionDocument) slave;
- addMasterDocumentRange(projection, 0, master.getLength());
- }
- }
- }
-
- if (projection != null) {
- Iterator e= fProjectionAnnotationModel.getAnnotationIterator();
- while (e.hasNext()) {
- ProjectionAnnotation annotation= (ProjectionAnnotation) e.next();
- if (annotation.isCollapsed()) {
- Position position= fProjectionAnnotationModel.getPosition(annotation);
- IRegion region= computeCollapsedRegion(position);
- if (region != null)
- removeMasterDocumentRange(projection, region.getOffset(), region.getLength());
- }
- }
-
- }
-
- replaceVisibleDocument(projection);
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#handleVerifyEvent(org.eclipse.swt.events.VerifyEvent)
- */
- protected void handleVerifyEvent(VerifyEvent e) {
- IRegion modelRange= event2ModelRange(e);
- if (exposeModelRange(modelRange))
- e.doit= false;
- else
- super.handleVerifyEvent(e);
- }
-
- /**
- * Adds the give column as last column to this viewer's vertical ruler.
- *
- * @param column the column to be added
- */
- public void addVerticalRulerColumn(IVerticalRulerColumn column) {
- IVerticalRuler ruler= getVerticalRuler();
- if (ruler instanceof CompositeRuler) {
- CompositeRuler compositeRuler= (CompositeRuler) ruler;
- compositeRuler.addDecorator(99, column);
- }
- }
-
- /*
- * @see org.eclipse.jface.text.ITextViewerExtension5#exposeModelRange(org.eclipse.jface.text.IRegion)
- */
- public boolean exposeModelRange(IRegion modelRange) {
- if (isProjectionMode())
- return fProjectionAnnotationModel.expandAll(modelRange.getOffset(), modelRange.getLength());
- return false;
- }
-
- /*
- * @see org.eclipse.jface.text.source.SourceViewer#setRangeIndication(int, int, boolean)
- */
- public void setRangeIndication(int start, int length, boolean moveCursor) {
- // TODO experimental code
- if (moveCursor)
- exposeModelRange(new Region(start, length));
- super.setRangeIndication(start, length, moveCursor);
- }
-
- /*
- * @see org.eclipse.jface.text.TextViewer#handleVisibleDocumentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
- */
- protected void handleVisibleDocumentChanged(DocumentEvent event) {
- if (fHandleProjectionChanges && event instanceof ProjectionDocumentEvent && isProjectionMode()) {
- ProjectionDocumentEvent e= (ProjectionDocumentEvent) event;
- if (ProjectionDocumentEvent.PROJECTION_CHANGE == e.getChangeType() && e.getLength() == 0 && e.getText().length() != 0)
- fProjectionAnnotationModel.expandAll(e.getMasterOffset(), e.getMasterLength());
- }
- }
-}
diff --git a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/SourceViewerInformationControl.java b/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/SourceViewerInformationControl.java
deleted file mode 100644
index 5528e75b3..000000000
--- a/org.eclipse.jface.text/projection/org/eclipse/jface/text/source/projection/SourceViewerInformationControl.java
+++ /dev/null
@@ -1,330 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jface.text.source.projection;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.events.FocusListener;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-
-import org.eclipse.jface.resource.JFaceResources;
-
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IInformationControl;
-import org.eclipse.jface.text.IInformationControlExtension;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-
-/**
- * Source viewer based implementation of <code>IInformationControl</code>.
- * Displays information in a source viewer.
- * <p>
- * Internal class. Do not use. Public only for testing purposes.
- *
- * @since 3.0
- */
-public class SourceViewerInformationControl implements IInformationControl, IInformationControlExtension, DisposeListener {
-
- /** Border thickness in pixels. */
- private static final int BORDER= 1;
-
-
- /** The control's shell */
- private Shell fShell;
- /** The control's text widget */
- private StyledText fText;
- /** The control's source viewer */
- private SourceViewer fViewer;
- /** The optional status field. */
- private Label fStatusField;
- /** The separator for the optional status field. */
- private Label fSeparator;
- /** The font of the optional status text label.*/
- private Font fStatusTextFont;
-
-
- /**
- * Creates a source viewer information control with the given shell as
- * parent and the given font.
- *
- * @param parent the parent shell
- * @param symbolicFontName the symbolic font name
- */
- public SourceViewerInformationControl(Shell parent, String symbolicFontName) {
- this(parent, SWT.NO_TRIM, SWT.NONE, symbolicFontName, null);
- }
-
- /**
- * Creates a source viewer information control with the given shell as
- * parent. The given shell styles are applied to the created shell. The
- * given styles are applied to the created styled text widget. The text
- * widget will be initialized with the given font. The status field will
- * contain the given text or be hidden.
- *
- * @param parent the parent shell
- * @param shellStyle the additional styles for the shell
- * @param style the additional styles for the styled text widget
- * @param symbolicFontName the symbolic font name
- * @param statusFieldText the text to be used in the optional status field
- * or <code>null</code> if the status field should be hidden
- */
- public SourceViewerInformationControl(Shell parent, int shellStyle, int style, String symbolicFontName, String statusFieldText) {
- GridLayout layout;
- GridData gd;
-
- fShell= new Shell(parent, SWT.NO_FOCUS | SWT.ON_TOP | shellStyle);
- Display display= fShell.getDisplay();
- fShell.setBackground(display.getSystemColor(SWT.COLOR_BLACK));
-
- Composite composite= fShell;
- layout= new GridLayout(1, false);
- int border= ((shellStyle & SWT.NO_TRIM) == 0) ? 0 : BORDER;
- layout.marginHeight= border;
- layout.marginWidth= border;
- composite.setLayout(layout);
- gd= new GridData(GridData.FILL_HORIZONTAL);
- composite.setLayoutData(gd);
-
- if (statusFieldText != null) {
- composite= new Composite(composite, SWT.NONE);
- layout= new GridLayout(1, false);
- layout.marginHeight= 0;
- layout.marginWidth= 0;
- composite.setLayout(layout);
- gd= new GridData(GridData.FILL_BOTH);
- composite.setLayoutData(gd);
- composite.setForeground(display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));
- composite.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
- }
-
- // Source viewer
- fViewer= new SourceViewer(composite, null, style);
- fViewer.configure(new SourceViewerConfiguration());
- fViewer.setEditable(false);
-
- fText= fViewer.getTextWidget();
- gd= new GridData(GridData.BEGINNING | GridData.FILL_BOTH);
- fText.setLayoutData(gd);
- fText.setForeground(parent.getDisplay().getSystemColor(SWT.COLOR_INFO_FOREGROUND));
- fText.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_INFO_BACKGROUND));
- fText.setFont(JFaceResources.getFont(symbolicFontName));
-
- fText.addKeyListener(new KeyListener() {
-
- public void keyPressed(KeyEvent e) {
- if (e.character == 0x1B) // ESC
- fShell.dispose();
- }
-
- public void keyReleased(KeyEvent e) {}
- });
-
- // Status field
- if (statusFieldText != null) {
-
- // Horizontal separator line
- fSeparator= new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL | SWT.LINE_DOT);
- fSeparator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
- // Status field label
- fStatusField= new Label(composite, SWT.RIGHT);
- fStatusField.setText(statusFieldText);
- Font font= fStatusField.getFont();
- FontData[] fontDatas= font.getFontData();
- for (int i= 0; i < fontDatas.length; i++)
- fontDatas[i].setHeight(fontDatas[i].getHeight() * 9 / 10);
- fStatusTextFont= new Font(fStatusField.getDisplay(), fontDatas);
- fStatusField.setFont(fStatusTextFont);
- GridData gd2= new GridData(GridData.FILL_VERTICAL | GridData.FILL_HORIZONTAL | GridData.HORIZONTAL_ALIGN_BEGINNING | GridData.VERTICAL_ALIGN_BEGINNING);
- fStatusField.setLayoutData(gd2);
-
- // Regarding the color see bug 41128
- fStatusField.setForeground(display.getSystemColor(SWT.COLOR_WIDGET_DARK_SHADOW));
-
- fStatusField.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
- }
-
- addDisposeListener(this);
- }
-
- /*
- * @see org.eclipse.jface.text.IInformationControlExtension2#setInput(java.lang.Object)
- */
- public void setInput(Object input) {
- if (input instanceof String)
- setInformation((String)input);
- else
- setInformation(null);
- }
-
- /*
- * @see IInformationControl#setInformation(String)
- */
- public void setInformation(String content) {
- if (content == null) {
- fViewer.setInput(null);
- return;
- }
-
- IDocument doc= new Document(content);
- fViewer.setInput(doc);
- }
-
- /*
- * @see IInformationControl#setVisible(boolean)
- */
- public void setVisible(boolean visible) {
- fShell.setVisible(visible);
- }
-
- /*
- * @see org.eclipse.swt.events.DisposeListener#widgetDisposed(org.eclipse.swt.events.DisposeEvent)
- */
- public void widgetDisposed(DisposeEvent event) {
- if (fStatusTextFont != null && !fStatusTextFont.isDisposed())
- fStatusTextFont.dispose();
-
- fStatusTextFont= null;
- fShell= null;
- fText= null;
- }
-
- /*
- * @see org.eclipse.jface.text.IInformationControl#dispose()
- */
- public final void dispose() {
- if (fShell != null && !fShell.isDisposed())
- fShell.dispose();
- else
- widgetDisposed(null);
- }
-
- /*
- * @see IInformationControl#setSize(int, int)
- */
- public void setSize(int width, int height) {
-
- if (fStatusField != null) {
- GridData gd= (GridData)fViewer.getTextWidget().getLayoutData();
- Point statusSize= fStatusField.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
- Point separatorSize= fSeparator.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
- gd.heightHint= height - statusSize.y - separatorSize.y;
- }
- fShell.setSize(width, height);
-
- if (fStatusField != null)
- fShell.pack(true);
- }
-
- /*
- * @see IInformationControl#setLocation(Point)
- */
- public void setLocation(Point location) {
- Rectangle trim= fShell.computeTrim(0, 0, 0, 0);
- Point textLocation= fText.getLocation();
- location.x += trim.x - textLocation.x;
- location.y += trim.y - textLocation.y;
- fShell.setLocation(location);
- }
-
- /*
- * @see IInformationControl#setSizeConstraints(int, int)
- */
- public void setSizeConstraints(int maxWidth, int maxHeight) {
- maxWidth= maxHeight;
- }
-
- /*
- * @see IInformationControl#computeSizeHint()
- */
- public Point computeSizeHint() {
- return fShell.computeSize(SWT.DEFAULT, SWT.DEFAULT);
- }
-
- /*
- * @see IInformationControl#addDisposeListener(DisposeListener)
- */
- public void addDisposeListener(DisposeListener listener) {
- fShell.addDisposeListener(listener);
- }
-
- /*
- * @see IInformationControl#removeDisposeListener(DisposeListener)
- */
- public void removeDisposeListener(DisposeListener listener) {
- fShell.removeDisposeListener(listener);
- }
-
- /*
- * @see IInformationControl#setForegroundColor(Color)
- */
- public void setForegroundColor(Color foreground) {
- fText.setForeground(foreground);
- }
-
- /*
- * @see IInformationControl#setBackgroundColor(Color)
- */
- public void setBackgroundColor(Color background) {
- fText.setBackground(background);
- }
-
- /*
- * @see IInformationControl#isFocusControl()
- */
- public boolean isFocusControl() {
- return fText.isFocusControl();
- }
-
- /*
- * @see IInformationControl#setFocus()
- */
- public void setFocus() {
- fShell.forceFocus();
- fText.setFocus();
- }
-
- /*
- * @see IInformationControl#addFocusListener(FocusListener)
- */
- public void addFocusListener(FocusListener listener) {
- fText.addFocusListener(listener);
- }
-
- /*
- * @see IInformationControl#removeFocusListener(FocusListener)
- */
- public void removeFocusListener(FocusListener listener) {
- fText.removeFocusListener(listener);
- }
-
- /*
- * @see IInformationControlExtension#hasContents()
- */
- public boolean hasContents() {
- return fText.getCharCount() > 0;
- }
-}
diff --git a/org.eclipse.jface.text/scripts/exportplugin.xml b/org.eclipse.jface.text/scripts/exportplugin.xml
deleted file mode 100644
index 9db702b0f..000000000
--- a/org.eclipse.jface.text/scripts/exportplugin.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<project name="Export JFace Text" default="export" basedir="..">
- <target name="init">
- <tstamp/>
- <property name="destdir" value="../../plugin-export" />
- <property name="plugin" value="org.eclipse.jface.text" />
- <property name="version" value="_3.0.0" />
- <property name="dest" value="${destdir}/${plugin}${version}" />
- </target>
-
- <target name="build" depends="init">
- <eclipse.incrementalBuild project="${plugin}" kind="incr"/>
- </target>
-
- <target name="export" depends="build">
- <mkdir dir="${destdir}" />
- <delete dir="${dest}" />
- <mkdir dir="${dest}" />
- <jar
- jarfile="${dest}/jfacetext.jar"
- basedir="bin"
- />
- <copy file="plugin.xml" todir="${dest}"/>
- <copy file="plugin.properties" todir="${dest}"/>
- <zip zipfile="${dest}/jfacetextsrc.zip">
- <fileset dir="src" />
- <fileset dir="projection"/>
- </zip>
- </target>
-</project>
diff --git a/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/AdditionalInfoController2.java b/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/AdditionalInfoController2.java
deleted file mode 100644
index 068f0bf1f..000000000
--- a/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/AdditionalInfoController2.java
+++ /dev/null
@@ -1,255 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jface.internal.text.link.contentassist;
-
-
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableItem;
-
-import org.eclipse.jface.text.AbstractInformationControlManager;
-import org.eclipse.jface.text.Assert;
-import org.eclipse.jface.text.IInformationControl;
-import org.eclipse.jface.text.IInformationControlCreator;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposalExtension3;
-
-
-
-/**
- * Displays the additional information available for a completion proposal.
- *
- * @since 2.0
- */
-class AdditionalInfoController2 extends AbstractInformationControlManager implements Runnable {
-
- /**
- * Internal table selection listener.
- */
- private class TableSelectionListener implements SelectionListener {
-
- /*
- * @see SelectionListener#widgetSelected(SelectionEvent)
- */
- public void widgetSelected(SelectionEvent e) {
- handleTableSelectionChanged();
- }
-
- /*
- * @see SelectionListener#widgetDefaultSelected(SelectionEvent)
- */
- public void widgetDefaultSelected(SelectionEvent e) {
- }
- }
-
-
- /** The proposal table */
- private Table fProposalTable;
- /** The thread controlling the delayed display of the additional info */
- private Thread fThread;
- /** Indicates whether the display delay has been reset */
- private boolean fIsReset= false;
- /** Object to synchronize display thread and table selection changes */
- private final Object fMutex= new Object();
- /** Thread access lock. */
- private final Object fThreadAccess= new Object();
- /** Object to synchronize initial display of additonal info */
- private Object fStartSignal;
- /** The table selection listener */
- private SelectionListener fSelectionListener= new TableSelectionListener();
- /** The delay after which additional information is displayed */
- private int fDelay;
-
-
- /**
- * Creates a new additional information controller.
- *
- * @param creator the information control creator to be used by this controller
- * @param delay time in milliseconds after which additional info should be displayed
- */
- AdditionalInfoController2(IInformationControlCreator creator, int delay) {
- super(creator);
- fDelay= delay;
- setAnchor(ANCHOR_RIGHT);
- setFallbackAnchors(new Anchor[] { ANCHOR_LEFT, ANCHOR_BOTTOM, ANCHOR_RIGHT });
- }
-
- /*
- * @see AbstractInformationControlManager#install(Control)
- */
- public void install(Control control) {
-
- if (fProposalTable == control) {
- // already installed
- return;
- }
-
- super.install(control);
-
- Assert.isTrue(control instanceof Table);
- fProposalTable= (Table) control;
- fProposalTable.addSelectionListener(fSelectionListener);
- synchronized (fThreadAccess) {
- if (fThread != null)
- fThread.interrupt();
- fThread= new Thread(this, JFaceTextMessages2.getString("InfoPopup.info_delay_timer_name")); //$NON-NLS-1$
-
- fStartSignal= new Object();
- synchronized (fStartSignal) {
- fThread.start();
- try {
- // wait until thread is ready
- fStartSignal.wait();
- } catch (InterruptedException x) {
- }
- }
- }
- }
-
- /*
- * @see AbstractInformationControlManager#disposeInformationControl()
- */
- public void disposeInformationControl() {
-
- synchronized (fThreadAccess) {
- if (fThread != null) {
- fThread.interrupt();
- fThread= null;
- }
- }
-
- if (fProposalTable != null && !fProposalTable.isDisposed()) {
- fProposalTable.removeSelectionListener(fSelectionListener);
- fProposalTable= null;
- }
-
- super.disposeInformationControl();
- }
-
- /*
- * @see java.lang.Runnable#run()
- */
- public void run() {
- try {
- while (true) {
-
- synchronized (fMutex) {
-
- if (fStartSignal != null) {
- synchronized (fStartSignal) {
- fStartSignal.notifyAll();
- fStartSignal= null;
- }
- }
-
- // Wait for a selection event to occur.
- fMutex.wait();
-
- while (true) {
- fIsReset= false;
- // Delay before showing the popup.
- fMutex.wait(fDelay);
- if (!fIsReset)
- break;
- }
- }
-
- if (fProposalTable != null && !fProposalTable.isDisposed()) {
- fProposalTable.getDisplay().asyncExec(new Runnable() {
- public void run() {
- if (!fIsReset)
- showInformation();
- }
- });
- }
-
- }
- } catch (InterruptedException e) {
- }
-
- synchronized (fThreadAccess) {
- // only null fThread if it is us!
- if (Thread.currentThread() == fThread)
- fThread= null;
- }
- }
-
- /**
- *Handles a change of the line selected in the associated selector.
- */
- public void handleTableSelectionChanged() {
-
- if (fProposalTable != null && !fProposalTable.isDisposed() && fProposalTable.isVisible()) {
- synchronized (fMutex) {
- fIsReset= true;
- fMutex.notifyAll();
- }
- }
- }
-
- /*
- * @see AbstractInformationControlManager#computeInformation()
- */
- protected void computeInformation() {
-
- if (fProposalTable == null || fProposalTable.isDisposed())
- return;
-
- TableItem[] selection= fProposalTable.getSelection();
- if (selection != null && selection.length > 0) {
-
- TableItem item= selection[0];
-
- // compute information
- String information= null;
- Object d= item.getData();
-
- if (d instanceof ICompletionProposal) {
- ICompletionProposal p= (ICompletionProposal) d;
- information= p.getAdditionalProposalInfo();
- }
-
- if (d instanceof ICompletionProposalExtension3)
- setCustomInformationControlCreator(((ICompletionProposalExtension3) d).getInformationControlCreator());
- else
- setCustomInformationControlCreator(null);
-
- // compute subject area
- setMargins(4, -1);
- Rectangle area= fProposalTable.getBounds();
- area.x= 0; // subject area is the whole subject control
- area.y= 0;
-
- // set information & subject area
- setInformation(information, area);
- }
- }
-
- /*
- * @see org.eclipse.jface.text.AbstractInformationControlManager#computeSizeConstraints(Control, IInformationControl)
- */
- protected Point computeSizeConstraints(Control subjectControl, IInformationControl informationControl) {
- Point sizeConstraint= super.computeSizeConstraints(subjectControl, informationControl);
- Point size= subjectControl.getSize();
- if (sizeConstraint.x < size.x)
- sizeConstraint.x= size.x;
- if (sizeConstraint.y < size.y)
- sizeConstraint.y= size.y;
- return sizeConstraint;
- }
-}
-
-
diff --git a/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/CompletionProposalPopup2.java b/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/CompletionProposalPopup2.java
deleted file mode 100644
index 3ec68dfca..000000000
--- a/org.eclipse.jface.text/src/org/eclipse/jface/internal/text/link/contentassist/CompletionProposalPopup2.java
+++ /dev/null
@@ -1,882 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jface.internal.text.link.contentassist;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.ControlEvent;
-import org.eclipse.swt.events.ControlListener;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.events.VerifyEvent;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableItem;
-
-import org.eclipse.jface.resource.JFaceResources;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.jface.text.IRewriteTarget;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.ITextViewerExtension;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposalExtension;
-import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;
-import org.eclipse.jface.text.contentassist.ICompletionProposalExtension3;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-
-
-
-/**
- * This class is used to present proposals to the user. If additional
- * information exists for a proposal, then selecting that proposal
- * will result in the information being displayed in a secondary
- * window.
- *
- * @see org.eclipse.jface.text.contentassist.ICompletionProposal
- * @see org.eclipse.jface.text.contentassist.AdditionalInfoController
- */
-class CompletionProposalPopup2 implements IContentAssistListener2 {
-
- /** The associated text viewer */
- private ITextViewer fViewer;
- /** The associated content assistant */
- private ContentAssistant2 fContentAssistant;
- /** The used additional info controller */
- private AdditionalInfoController2 fAdditionalInfoController;
- /** The closing strategy for this completion proposal popup */
- private PopupCloser2 fPopupCloser= new PopupCloser2();
- /** The popup shell */
- private Shell fProposalShell;
- /** The proposal table */
- private Table fProposalTable;
- /** Indicates whether a completion proposal is being inserted */
- private boolean fInserting= false;
- /** The key listener to control navigation */
- private KeyListener fKeyListener;
- /** List of document events used for filtering proposals */
- private List fDocumentEvents= new ArrayList();
- /** Listener filling the document event queue */
- private IDocumentListener fDocumentListener;
- /** Reentrance count for <code>filterProposals</code> */
- private long fInvocationCounter= 0;
- /** The filter list of proposals */
- private ICompletionProposal[] fFilteredProposals;
- /** The computed list of proposals */
- private ICompletionProposal[] fComputedProposals;
- /** The offset for which the proposals have been computed */
- private int fInvocationOffset;
- /** The offset for which the computed proposaks have been filtered */
- private int fFilterOffset;
- /** The default line delimiter of the viewer's widget */
- private String fLineDelimiter;
- /** The most recently selected proposal. */
- private ICompletionProposal fLastProposal;
-
-
- /**
- * Creates a new completion proposal popup for the given elements.
- *
- * @param contentAssistant the content assistant feeding this popup
- * @param viewer the viewer on top of which this popup appears
- * @param infoController the info control collaborating with this popup
- * @since 2.0
- */
- public CompletionProposalPopup2(ContentAssistant2 contentAssistant, ITextViewer viewer, AdditionalInfoController2 infoController) {
- fContentAssistant= contentAssistant;
- fViewer= viewer;
- fAdditionalInfoController= infoController;
- }
-
- /**
- * Computes and presents completion proposals. The flag indicates whether this call has
- * be made out of an auto activation context.
- *
- * @param autoActivated <code>true</code> if auto activation context
- * @return an error message or <code>null</code> in case of no error
- */
- public String showProposals(final boolean autoActivated) {
-
- if (fKeyListener == null) {
- fKeyListener= new KeyListener() {
- public void keyPressed(KeyEvent e) {
- if (!Helper2.okToUse(fProposalShell))
- return;
-
- if (e.character == 0 && e.keyCode == SWT.MOD1) {
- // http://dev.eclipse.org/bugs/show_bug.cgi?id=34754
- int index= fProposalTable.getSelectionIndex();
- if (index >= 0)
- selectProposal(index, true);
- }
- }
-
- public void keyReleased(KeyEvent e) {
- if (!Helper2.okToUse(fProposalShell))
- return;
-
- if (e.character == 0 && e.keyCode == SWT.MOD1) {
- // http://dev.eclipse.org/bugs/show_bug.cgi?id=34754
- int index= fProposalTable.getSelectionIndex();
- if (index >= 0)
- selectProposal(index, false);
- }
- }
- };
- }
-
- final StyledText styledText= fViewer.getTextWidget();
- if (styledText != null && !styledText.isDisposed())
- styledText.addKeyListener(fKeyListener);
-
-// BusyIndicator.showWhile(styledText.getDisplay(), new Runnable() {
-// public void run() {
-
- fInvocationOffset= fViewer.getSelectedRange().x;
- // lazily compute proposals
-// if (fComputedProposals == null) fComputedProposals= computeProposals(fContentAssistant.getCompletionPosition());
- fComputedProposals= computeProposals(fInvocationOffset);
-
- int count= (fComputedProposals == null ? 0 : fComputedProposals.length);
- if (count == 0) {
-
- if (!autoActivated)
- styledText.getDisplay().beep();
-
- } else {
-
- if (count == 1 && !autoActivated && fContentAssistant.isAutoInserting())
-
- insertProposal(fComputedProposals[0], (char) 0, 0, fInvocationOffset);
-
- else {
-
- if (fLineDelimiter == null)
- fLineDelimiter= styledText.getLineDelimiter();
-
- createProposalSelector();
- setProposals(fComputedProposals);
- resizeProposalSelector(true);
- displayProposals();
- }
- }
-// }
-// });
-
- return getErrorMessage();
- }
-
- /**
- * Returns the completion proposal available at the given offset of the
- * viewer's document. Delegates the work to the content assistant.
- *
- * @param offset the offset
- * @return the completion proposals available at this offset
- */
- private ICompletionProposal[] computeProposals(int offset) {
- return fContentAssistant.computeCompletionProposals(fViewer, offset);
- }
-
- /**
- * Returns the error message.
- *
- * @return the error message
- */
- private String getErrorMessage() {
- return fContentAssistant.getErrorMessage();
- }
-
- /**
- * Creates the proposal selector.
- */
- private void createProposalSelector() {
- if (Helper2.okToUse(fProposalShell))
- return;
-
- Control control= fViewer.getTextWidget();
- fProposalShell= new Shell(control.getShell(), SWT.ON_TOP);
-// fProposalShell= new Shell(control.getShell(), SWT.ON_TOP | SWT.RESIZE );
- fProposalTable= new Table(fProposalShell, SWT.H_