2222
2323package processing .app .platform ;
2424
25- import java .awt .Color ;
26- import java .awt .Component ;
27- import java .awt .Desktop ;
28- import java .awt .Graphics ;
25+ import java .awt .*;
2926import java .io .File ;
3027import java .io .FileNotFoundException ;
3128import java .io .IOException ;
3532import javax .swing .JMenu ;
3633import javax .swing .JMenuBar ;
3734import javax .swing .UIManager ;
35+ import javax .swing .plaf .FontUIResource ;
3836
3937import processing .app .Base ;
4038import processing .app .Messages ;
4139import processing .app .Preferences ;
4240import processing .app .ui .About ;
41+ import processing .app .ui .Toolkit ;
4342
4443
4544/**
@@ -106,8 +105,14 @@ public void initBase(Base base) {
106105 public void setLookAndFeel () throws Exception {
107106 super .setLookAndFeel ();
108107
109- String laf = Preferences .get ("editor.laf" );
110- if ("org.violetlib.aqua.AquaLookAndFeel" .equals (laf )) {
108+ String laf = UIManager .getLookAndFeel ().getClass ().getName ();
109+ if ("com.apple.laf.AquaLookAndFeel" .equals (laf )) {
110+ //setUIFont(new FontUIResource(".AppleSystemUIFont", Font.PLAIN, 12));
111+ // oh my god, the kerning, the tracking, my eyes...
112+ //setUIFont(new FontUIResource(".SFNS-Regular", Font.PLAIN, 13));
113+ //setUIFont(new FontUIResource(Toolkit.getSansFont(14, Font.PLAIN)));
114+
115+ } else if ("org.violetlib.aqua.AquaLookAndFeel" .equals (laf )) {
111116 Icon collapse = new VAquaTreeIcon (true );
112117 Icon open = new VAquaTreeIcon (false );
113118 Icon leaf = new VAquaEmptyIcon ();
@@ -120,6 +125,17 @@ public void setLookAndFeel() throws Exception {
120125 }
121126
122127
128+ // Rewritten from https://stackoverflow.com/a/7434935
129+ static private void setUIFont (FontUIResource f ) {
130+ for (Object key : UIManager .getLookAndFeelDefaults ().keySet ()) {
131+ Object value = UIManager .get (key );
132+ if (value instanceof FontUIResource ) {
133+ UIManager .put (key , f );
134+ }
135+ }
136+ }
137+
138+
123139 public File getSettingsFolder () throws Exception {
124140 return new File (getLibraryFolder (), "Processing" );
125141 }
0 commit comments