Skip to content

Commit f1fb50f

Browse files
committed
Move FlatLaf installing to UIUtils.installFlatLafInfos() helper method
1 parent 601cda7 commit f1fb50f

File tree

2 files changed

+26
-10
lines changed

2 files changed

+26
-10
lines changed

src/main/java/bdv/BigDataViewer.java

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,14 @@
2929
package bdv;
3030

3131
import bdv.tools.PreferencesDialog;
32+
import bdv.ui.UIUtils;
3233
import bdv.ui.keymap.Keymap;
3334
import bdv.ui.keymap.KeymapManager;
3435
import bdv.ui.keymap.KeymapSettingsPage;
3536
import bdv.viewer.ConverterSetups;
3637
import bdv.viewer.ViewerState;
3738
import bdv.ui.appearance.AppearanceManager;
3839
import bdv.ui.appearance.AppearanceSettingsPage;
39-
import com.formdev.flatlaf.FlatDarculaLaf;
40-
import com.formdev.flatlaf.FlatDarkLaf;
41-
import com.formdev.flatlaf.FlatIntelliJLaf;
42-
import com.formdev.flatlaf.FlatLightLaf;
4340
import dev.dirs.ProjectDirectories;
4441
import java.io.File;
4542
import java.io.FileNotFoundException;
@@ -778,16 +775,12 @@ public void collapseCardPanel()
778775

779776
public static void main( final String[] args )
780777
{
781-
final String fn = "/Users/pietzsch/workspace/data/111010_weber_full.xml";
778+
final String fn = "/Users/pietzsch/workspace/data/111010_weber_resave.xml";
782779
try
783780
{
784781
System.setProperty( "apple.laf.useScreenMenuBar", "true" );
785782
// System.setProperty( "apple.awt.application.appearance", "system" );
786-
787-
FlatLightLaf.installLafInfo();
788-
FlatDarkLaf.installLafInfo();
789-
FlatDarculaLaf.installLafInfo();
790-
FlatIntelliJLaf.installLafInfo();
783+
UIUtils.installFlatLafInfos();
791784

792785
System.out.println( "reading config files from \"" + configDir + "\"" );
793786
final BigDataViewer bdv = open( fn, new File( fn ).getName(), new ProgressWriterConsole(), ViewerOptions.options() );

src/main/java/bdv/ui/UIUtils.java

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,22 @@
2828
*/
2929
package bdv.ui;
3030

31+
import com.formdev.flatlaf.FlatDarculaLaf;
32+
import com.formdev.flatlaf.FlatDarkLaf;
33+
import com.formdev.flatlaf.FlatIntelliJLaf;
34+
import com.formdev.flatlaf.FlatLightLaf;
3135
import java.awt.Color;
3236
import java.awt.Component;
3337
import java.awt.Dimension;
3438
import java.awt.Font;
3539
import java.awt.FontMetrics;
3640
import java.awt.Graphics;
3741
import java.awt.Rectangle;
42+
import java.util.Arrays;
43+
import java.util.Set;
3844
import java.util.WeakHashMap;
3945

46+
import java.util.stream.Collectors;
4047
import javax.swing.UIManager;
4148

4249
import com.formdev.flatlaf.util.UIScale;
@@ -253,4 +260,20 @@ public static boolean getUIBoolean( final String key, final boolean defaultValue
253260
else
254261
return defaultValue;
255262
}
263+
264+
public static synchronized void installFlatLafInfos()
265+
{
266+
final Set< String > lafNames = Arrays
267+
.stream( UIManager.getInstalledLookAndFeels() )
268+
.map( UIManager.LookAndFeelInfo::getName )
269+
.collect( Collectors.toSet() );
270+
if ( !lafNames.contains( FlatLightLaf.NAME ) )
271+
FlatLightLaf.installLafInfo();
272+
if ( !lafNames.contains( FlatDarkLaf.NAME ) )
273+
FlatDarkLaf.installLafInfo();
274+
if ( !lafNames.contains( FlatDarculaLaf.NAME ) )
275+
FlatDarculaLaf.installLafInfo();
276+
if ( !lafNames.contains( FlatIntelliJLaf.NAME ) )
277+
FlatIntelliJLaf.installLafInfo();
278+
}
256279
}

0 commit comments

Comments
 (0)