]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.ui/src/org/simantics/scl/ui/editor2/SCLPresentationReconciler.java
Change editor font in UI and update on editor reload.
[simantics/platform.git] / bundles / org.simantics.scl.ui / src / org / simantics / scl / ui / editor2 / SCLPresentationReconciler.java
index b74e35fb29d2da65ced075b24ff40b0204d0a9c2..7a937f8a31a68053a6db27bee4c24697098469d4 100644 (file)
@@ -1,6 +1,7 @@
 package org.simantics.scl.ui.editor2;
 
 import org.eclipse.jface.resource.FontDescriptor;
+import org.eclipse.jface.resource.FontRegistry;
 import org.eclipse.jface.resource.ResourceManager;
 import org.eclipse.jface.text.IDocument;
 import org.eclipse.jface.text.TextAttribute;
@@ -17,11 +18,16 @@ import org.eclipse.jface.text.rules.WordRule;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.graphics.Font;
 import org.eclipse.swt.graphics.RGB;
+import org.eclipse.ui.PlatformUI;
 import org.simantics.scl.ui.info.SCLInfo;
 
 public class SCLPresentationReconciler extends PresentationReconciler {
-    private static final FontDescriptor FONT_NORMAL = FontDescriptor.createFrom("Consolas", 10, SWT.NORMAL); //$NON-NLS-1$
-    private static final FontDescriptor FONT_BOLD = FontDescriptor.createFrom("Consolas", 10, SWT.BOLD); //$NON-NLS-1$
+    
+    
+    private final FontRegistry fontRegistry = PlatformUI.getWorkbench().getThemeManager().getCurrentTheme().getFontRegistry();
+    
+    private final FontDescriptor FONT_NORMAL = FontDescriptor.createFrom( fontRegistry.getFontData("org.simantics.scl.editorfont") );
+    private final FontDescriptor FONT_BOLD = FONT_NORMAL.setStyle(SWT.BOLD);
     
     public SCLPresentationReconciler(ResourceManager resourceManager) {
         Font font = resourceManager.createFont(FONT_NORMAL);
@@ -52,8 +58,8 @@ public class SCLPresentationReconciler extends PresentationReconciler {
             setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);
         }
     }
-    
-    private static ITokenScanner getSclTokenScanner(ResourceManager resourceManager) {
+
+    private ITokenScanner getSclTokenScanner(ResourceManager resourceManager) {
         RuleBasedScanner scanner = new RuleBasedScanner();
         
         Token defaultToken = new Token(