Author: KrisVerlaenen Date: 2006-05-21 17:56:33 -0400 (Sun, 21 May 2006) New Revision: 4335 Added: labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/java_keywords.properties Modified: labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/Keywords.java labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/scanners/DRLScanner.java labs/jbossrules/trunk/drools-ide/src/test/java/org/drools/ide/editors/completion/KeywordsTest.java Log: Added syntax highlighting of Java keywords Modified: labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/Keywords.java =================================================================== --- labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/Keywords.java 2006-05-20 21:33:33 UTC (rev 4334) +++ labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/Keywords.java 2006-05-21 21:56:33 UTC (rev 4335) @@ -14,7 +14,8 @@ */ public class Keywords { - private String[] all; + private String[] allDrools; + private String[] allJava; private static Keywords instance; public static Keywords getInstance() { @@ -25,13 +26,22 @@ } - public String[] getAll() { - return all; + public String[] getAllDroolsKeywords() { + return allDrools; } + public String[] getAllJavaKeywords() { + return allJava; + } + private Keywords() { - InputStream stream = this.getClass().getResourceAsStream("keywords.properties"); + allDrools = readKeywords("keywords.properties"); + allJava = readKeywords("java_keywords.properties"); + } + + private String[] readKeywords(String fileName) { + InputStream stream = this.getClass().getResourceAsStream(fileName); try { BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); @@ -42,10 +52,7 @@ if (!line.startsWith( "#" )) list.add( line ); } - all = new String[list.size()]; - list.toArray( all ); - - + return (String[]) list.toArray( new String[list.size()] ); } catch ( IOException e ) { throw new IllegalArgumentException("Could not load keywords for editor."); @@ -58,7 +65,6 @@ throw new IllegalStateException("Error closing stream."); } } - } Added: labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/java_keywords.properties =================================================================== --- labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/java_keywords.properties 2006-05-20 21:33:33 UTC (rev 4334) +++ labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/java_keywords.properties 2006-05-21 21:56:33 UTC (rev 4335) @@ -0,0 +1,43 @@ +# this contains the java keywords for syntax highlighting +# all java keywords are present, those that are not relevant are commented out + +# abstract +# assert +break +case +catch +# class +# const +continue +default +do +else +# enum +# extends +final +finally +for +goto +if +# implements +# import +instanceof +# interface +# native +new +# package +# private +# protected +# public +return +# static +# super +switch +# synchronized +# this +throw +# throws +# transient +try +# volatile +while \ No newline at end of file Modified: labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/scanners/DRLScanner.java =================================================================== --- labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/scanners/DRLScanner.java 2006-05-20 21:33:33 UTC (rev 4334) +++ labs/jbossrules/trunk/drools-ide/src/main/java/org/drools/ide/editors/scanners/DRLScanner.java 2006-05-21 21:56:33 UTC (rev 4335) @@ -31,11 +31,12 @@ private static Color STRING_COLOR = ColorManager.getInstance().getColor(ColorManager.STRING); private static Color DEFAULT = ColorManager.getInstance().getColor(ColorManager.DEFAULT); - private static String[] fgKeywords= Keywords.getInstance().getAll(); + private static String[] fgDroolsKeywords= Keywords.getInstance().getAllDroolsKeywords(); + private static String[] fgJavaKeywords= Keywords.getInstance().getAllJavaKeywords(); - private static String[] fgTypes= { }; + private static String[] fgTypes= { "void", "boolean", "char", "byte", "short", "strictfp", "int", "long", "float", "double" }; - private static String[] fgConstants= { "false", "true" }; + private static String[] fgConstants= { "false", "true", "null" }; public DRLScanner() { @@ -62,8 +63,10 @@ // Add word rule for keywords, types, and constants. WordRule wordRule= new WordRule(new RuleWordDetector(), other); - for (int i= 0; i < fgKeywords.length; i++) - wordRule.addWord(fgKeywords[i], keyword); + for (int i= 0; i < fgDroolsKeywords.length; i++) + wordRule.addWord(fgDroolsKeywords[i], keyword); + for (int i= 0; i < fgJavaKeywords.length; i++) + wordRule.addWord(fgJavaKeywords[i], keyword); for (int i= 0; i < fgTypes.length; i++) wordRule.addWord(fgTypes[i], keyword); for (int i= 0; i < fgConstants.length; i++) @@ -74,9 +77,6 @@ rules.toArray(result); setRules(result); - - } - } Modified: labs/jbossrules/trunk/drools-ide/src/test/java/org/drools/ide/editors/completion/KeywordsTest.java =================================================================== --- labs/jbossrules/trunk/drools-ide/src/test/java/org/drools/ide/editors/completion/KeywordsTest.java 2006-05-20 21:33:33 UTC (rev 4334) +++ labs/jbossrules/trunk/drools-ide/src/test/java/org/drools/ide/editors/completion/KeywordsTest.java 2006-05-21 21:56:33 UTC (rev 4335) @@ -8,7 +8,7 @@ public void testAll() { Keywords keys = Keywords.getInstance(); - String[] all = keys.getAll(); + String[] all = keys.getAllDroolsKeywords(); assertTrue(all.length > 0); assertEquals("when", all[0]); |