[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cdt-patch] Fix for C++ header files keyword highlighting only c keywords
|
Fix for problem where a header file in a CPP project was treated (parsed) as
a C header file, which resulted in C++ keywords not being highlighted and C
keywords being highlighted.
***
cvs diff -N -u "CEditor.java"
Index: CEditor.java
===================================================================
RCS file:
/home/tools/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CEdito
r.java,v
retrieving revision 1.8
diff -u -r1.8 CEditor.java
--- CEditor.java 1 Oct 2002 01:19:32 -0000 1.8
+++ CEditor.java 17 Oct 2002 19:01:59 -0000
@@ -12,6 +12,7 @@
import java.util.Map;
import org.eclipse.cdt.core.model.CModelException;
+import org.eclipse.cdt.core.model.CoreModel;
import org.eclipse.cdt.core.model.ISourceRange;
import org.eclipse.cdt.core.model.ISourceReference;
import org.eclipse.cdt.internal.ui.CPlugin;
@@ -21,6 +22,7 @@
import org.eclipse.cdt.internal.ui.text.IColorManager;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IWorkspaceRoot;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
@@ -1408,9 +1410,14 @@
protected ISourceViewer createSourceViewer(Composite parent,
IVerticalRuler ruler, int styles) {
// Figure out if this is a C or C++ source file
String filename = getEditorInput().getName();
- boolean c_file = false;
- c_file |= filename.endsWith(".c");
- c_file |= filename.endsWith(".h");
+ boolean c_file = filename.endsWith(".c");
+
+ if (!c_file && filename.endsWith(".h")){
+ // ensure that this .h file is part of a C project &
not a CPP project
+
+ IProject project = getInputFile().getProject();
+ c_file =
!CoreModel.getDefault().hasCCNature(project);
+ }
return new AdaptedSourceViewer(parent, ruler, styles, c_file
? LANGUAGE_C : LANGUAGE_CPP);
}
¨¨¨°ºo§oº°¨¨¨¨°ºo§oº°¨¨¨¨°ºo§oº°¨¨¨¨°ºo§oº°¨¨¨
Judy N. Green (w) 613 591-0931 x 9709
Software Engineer (c) 613 863-2791
QNX Software Systems Ltd. 75 Terence Matthews Cres.
www.qnx.com Kanata, Ont. K2M 1W8
¨¨¨°ºo§oº°¨¨¨¨°ºo§oº°¨¨¨¨°ºo§oº°¨¨¨¨°ºo§oº°¨¨¨