--- a/tools/JavaSourceHighlighter.st Fri Sep 20 10:57:50 2013 +0100
+++ b/tools/JavaSourceHighlighter.st Sat Sep 21 05:23:41 2013 +0100
@@ -96,6 +96,18 @@
!JavaSourceHighlighter class methodsFor:'formatting'!
+_formatClassDefinition:newCode line: ln number: lnr in:cls
+ ^self new formatClassDefinition:newCode line: ln number: lnr in:cls.
+
+ "Created: / 21-09-2013 / 04:22:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_formatMethod:mthd source:newCode line: ln number: lnr in:cls using:syntaxPreferences
+ ^ self new formatMethod:mthd source:newCode line: ln number: lnr in:cls using:syntaxPreferences
+
+ "Created: / 21-09-2013 / 04:22:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
formatClass: javaClass
^self new formatClassDefinition: javaClass source in: javaClass
@@ -117,12 +129,6 @@
"Created: / 04-08-2011 / 23:44:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-formatClassDefinition:newCode line: ln number: lnr in:cls
- ^self new formatClassDefinition:newCode line: ln number: lnr in:cls.
-
- "Created: / 04-08-2013 / 00:25:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
formatExpression:source in:class
^self new formatExpression:source in:class
@@ -156,32 +162,11 @@
^self new formatMethod:mth source:source in:class using: preferences elementsInto: elements
"Created: / 04-08-2011 / 23:42:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-formatMethod:mthd source:newCode line: ln number: lnr in:cls using:syntaxPreferences
- ^ self new formatMethod:mthd source:newCode line: ln number: lnr in:cls using:syntaxPreferences
-
- "Created: / 04-08-2013 / 00:26:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!JavaSourceHighlighter methodsFor:'formatting'!
-formatClassDefinition:source in:class
-
- ^ self format: source kind: #start in: class
-
- "Created: / 04-08-2011 / 23:44:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-formatClassDefinition:source in:class elementsInto: els
-
- sourceIndex := els.
- ^self formatClassDefinition:source in:class
-
- "Created: / 04-08-2011 / 23:44:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-formatClassDefinition:newCode line: line number: lnr in:cls
+_formatClassDefinition:newCode line: line number: lnr in:cls
| scanner |
line isEmptyOrNil ifTrue:[ ^ nil ].
@@ -199,8 +184,44 @@
].
^ sourceText
- "Created: / 04-08-2013 / 00:25:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified (format): / 05-09-2013 / 02:54:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Created: / 21-09-2013 / 04:19:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_formatMethod:mthd source:newCode line: line number: lnr in:cls using:syntaxPreferences
+ | scanner |
+
+ line isEmptyOrNil ifTrue:[ ^ nil ].
+
+ sourceText := line asText.
+ preferences := syntaxPreferences.
+ preferences isNil ifTrue:[
+ preferences := UserPreferences current.
+ ].
+ scanner := Scanner for: line asString.
+ scanner highlighter: self.
+ [
+ [ scanner nextToken ~~ #EOF ] whileTrue.
+ ] on: Error do:[
+
+ ].
+ ^ sourceText
+
+ "Created: / 21-09-2013 / 04:20:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+formatClassDefinition:source in:class
+
+ ^ self format: source kind: #start in: class
+
+ "Created: / 04-08-2011 / 23:44:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+formatClassDefinition:source in:class elementsInto: els
+
+ sourceIndex := els.
+ ^self formatClassDefinition:source in:class
+
+ "Created: / 04-08-2011 / 23:44:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
formatExpression:source in:class
@@ -315,7 +336,7 @@
preferences isNil ifTrue:[
preferences := UserPreferences current.
].
- cacheIt := kind == #start and: [class notNil].
+ cacheIt := kind == #start and: [class notNil and:[class isJavaClass]].
cacheIt ifTrue:[
document := JavaSourceDocument cachedDocumentFor: class theNonMetaclass.
document notNil ifTrue:[
@@ -377,7 +398,7 @@
]
"Created: / 17-03-2012 / 14:02:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 19-09-2013 / 10:55:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 21-09-2013 / 04:46:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!JavaSourceHighlighter methodsFor:'queries'!