1 package freemarker.eclipse.editors; 2 3 import org.eclipse.jface.text.TextAttribute; 4 5 import org.eclipse.jface.text.rules.*; 6 import org.eclipse.swt.graphics.Color; 7 8 import freemarker.eclipse.preferences.IPreferenceConstants; 9 10 11 18 public class TokenManager implements IPreferenceConstants, ITokenManager { 19 20 private ColorManager manager = null; 21 22 public TokenManager() { 23 manager = new ColorManager(); 24 } 25 26 public IToken getInterpolationToken() { 27 return getTokenFromPreferenceColor(COLOR_INTERPOLATION); 28 } 29 30 public IToken getXmlToken() { 31 return getTokenFromPreferenceColor(COLOR_XML_TAG); 32 } 33 34 public IToken getXmlCommentToken() { 35 return getTokenFromPreferenceColor(COLOR_XML_COMMENT); 36 } 37 38 public IToken getTextToken() { 39 return getTokenFromPreferenceColor(COLOR_TEXT); 40 } 41 42 public IToken getDirectiveToken() { 43 return getTokenFromPreferenceColor(COLOR_DIRECTIVE); 44 } 45 46 public IToken getStringToken() { 47 return getTokenFromPreferenceColor(COLOR_STRING); 48 } 49 50 public IToken getCommentToken() { 51 return getTokenFromPreferenceColor(COLOR_COMMENT); 52 } 53 54 private IToken getTokenFromPreferenceColor(String color) { 55 Color c = manager.getColorFromPreference(color); 56 return new Token(new TextAttribute(c)); 57 } 58 59 public IToken getWhitespaceToken() { 60 return Token.WHITESPACE; 61 } 62 63 public void dispose() { 64 manager.dispose(); 65 } 66 67 } 68 | Popular Tags |