Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Leherbauer2007-08-17 08:04:09 +0000
committerAnton Leherbauer2007-08-17 08:04:09 +0000
commit1cba2fab4ef5982b48c4551b9c583997b94b2119 (patch)
treeaa783cd53022f2c426e8fb0af713dddd8f259e2d /build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor
parentf4cfd2873651bc9fc20ceeedaba86e2e896e366e (diff)
downloadorg.eclipse.cdt-1cba2fab4ef5982b48c4551b9c583997b94b2119.tar.gz
org.eclipse.cdt-1cba2fab4ef5982b48c4551b9c583997b94b2119.tar.xz
org.eclipse.cdt-1cba2fab4ef5982b48c4551b9c583997b94b2119.zip
Fix for 194198: No syntax highlighting when comparing makefiles
Diffstat (limited to 'build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor')
-rw-r--r--build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileEditor.java36
-rw-r--r--build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileSourceConfiguration.java47
2 files changed, 53 insertions, 30 deletions
diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileEditor.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileEditor.java
index 7885758e897..e5b48e631c4 100644
--- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileEditor.java
+++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileEditor.java
@@ -22,17 +22,34 @@ import org.eclipse.core.runtime.ListenerList;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.*;
+import org.eclipse.jface.text.BadLocationException;
+import org.eclipse.jface.text.FindReplaceDocumentAdapter;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.IRegion;
+import org.eclipse.jface.text.ITextOperationTarget;
+import org.eclipse.jface.text.ITextViewerExtension;
import org.eclipse.jface.text.rules.IWordDetector;
-import org.eclipse.jface.text.source.*;
-import org.eclipse.jface.text.source.projection.*;
+import org.eclipse.jface.text.source.IOverviewRuler;
+import org.eclipse.jface.text.source.ISourceViewer;
+import org.eclipse.jface.text.source.IVerticalRuler;
+import org.eclipse.jface.text.source.SourceViewerConfiguration;
+import org.eclipse.jface.text.source.projection.ProjectionAnnotationModel;
+import org.eclipse.jface.text.source.projection.ProjectionSupport;
+import org.eclipse.jface.text.source.projection.ProjectionViewer;
import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.*;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.*;
-import org.eclipse.ui.editors.text.EditorsUI;
+import org.eclipse.ui.IPartService;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.editors.text.TextEditor;
-import org.eclipse.ui.texteditor.*;
+import org.eclipse.ui.texteditor.DefaultRangeIndicator;
+import org.eclipse.ui.texteditor.ITextEditorActionConstants;
+import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;
+import org.eclipse.ui.texteditor.TextOperationAction;
import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
public class MakefileEditor extends TextEditor implements ISelectionChangedListener, IReconcilingParticipant {
@@ -107,10 +124,7 @@ public class MakefileEditor extends TextEditor implements ISelectionChangedListe
setEditorContextMenuId("#MakefileEditorContext"); //$NON-NLS-1$
setRulerContextMenuId("#MakefileRulerContext"); //$NON-NLS-1$
setDocumentProvider(MakeUIPlugin.getDefault().getMakefileDocumentProvider());
- IPreferenceStore[] stores = new IPreferenceStore[2];
- stores[0] = MakeUIPlugin.getDefault().getPreferenceStore();
- stores[1] = EditorsUI.getPreferenceStore();
- ChainedPreferenceStore chainedStore = new ChainedPreferenceStore(stores);
+ IPreferenceStore chainedStore = MakeUIPlugin.getDefault().getCombinedPreferenceStore();
setPreferenceStore(chainedStore);
setSourceViewerConfiguration(new MakefileSourceConfiguration(chainedStore, this));
}
diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileSourceConfiguration.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileSourceConfiguration.java
index d2ffcbd7be2..a255c1ca4e5 100644
--- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileSourceConfiguration.java
+++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/MakefileSourceConfiguration.java
@@ -82,23 +82,26 @@ public class MakefileSourceConfiguration extends TextSourceViewerConfiguration {
* @see org.eclipse.jface.text.source.SourceViewerConfiguration#getContentAssistant(ISourceViewer)
*/
public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {
- ContentAssistant assistant = new ContentAssistant();
- assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), IDocument.DEFAULT_CONTENT_TYPE);
- assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_COMMENT_PARTITION);
- assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_DEF_BLOCK_PARTITION);
- assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_IF_BLOCK_PARTITION);
- assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_INCLUDE_BLOCK_PARTITION);
- assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_MACRO_ASSIGNEMENT_PARTITION);
-
- assistant.enableAutoActivation(true);
- assistant.setAutoActivationDelay(500);
-
- assistant.setProposalPopupOrientation(IContentAssistant.CONTEXT_INFO_BELOW);
- assistant.setContextInformationPopupOrientation(IContentAssistant.CONTEXT_INFO_BELOW);
- //Set to Carolina blue
- assistant.setContextInformationPopupBackground(colorManager.getColor(new RGB(0, 191, 255)));
-
- return assistant;
+ if (fEditor != null && fEditor.isEditable()) {
+ ContentAssistant assistant = new ContentAssistant();
+ assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), IDocument.DEFAULT_CONTENT_TYPE);
+ assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_COMMENT_PARTITION);
+ assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_DEF_BLOCK_PARTITION);
+ assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_IF_BLOCK_PARTITION);
+ assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_INCLUDE_BLOCK_PARTITION);
+ assistant.setContentAssistProcessor(new MakefileCompletionProcessor(fEditor), MakefilePartitionScanner.MAKEFILE_MACRO_ASSIGNEMENT_PARTITION);
+
+ assistant.enableAutoActivation(true);
+ assistant.setAutoActivationDelay(500);
+
+ assistant.setProposalPopupOrientation(IContentAssistant.CONTEXT_INFO_BELOW);
+ assistant.setContextInformationPopupOrientation(IContentAssistant.CONTEXT_INFO_BELOW);
+ //Set to Carolina blue
+ assistant.setContextInformationPopupBackground(colorManager.getColor(new RGB(0, 191, 255)));
+
+ return assistant;
+ }
+ return null;
}
protected MakefileCodeScanner getCodeScanner() {
@@ -167,13 +170,19 @@ public class MakefileSourceConfiguration extends TextSourceViewerConfiguration {
* @see org.eclipse.jface.text.source.SourceViewerConfiguration#getTextHover(org.eclipse.jface.text.source.ISourceViewer, java.lang.String)
*/
public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType) {
- return new MakefileTextHover(fEditor);
+ if (fEditor != null) {
+ return new MakefileTextHover(fEditor);
+ }
+ return super.getTextHover(sourceViewer, contentType);
}
/* (non-Javadoc)
* @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAnnotationHover(org.eclipse.jface.text.source.ISourceViewer)
*/
public IAnnotationHover getAnnotationHover(ISourceViewer sourceViewer) {
- return new MakefileAnnotationHover(fEditor);
+ if (fEditor != null) {
+ return new MakefileAnnotationHover(fEditor);
+ }
+ return super.getAnnotationHover(sourceViewer);
}
/**

Back to the top