From aea4417ab2bb84eacdbced2f6b92740c3eb57188 Mon Sep 17 00:00:00 2001 From: Jan Eglinger Date: Thu, 3 Sep 2020 21:08:51 +0200 Subject: [PATCH] WIP: use WidgetStyle utility class to correctly determine styles TODO: - fix SwingFileWidget.createFileFilter - add tests --- pom.xml | 5 ++--- src/main/java/org/scijava/ui/swing/AbstractSwingUI.java | 9 +++++---- .../org/scijava/ui/swing/widget/SwingFileListWidget.java | 1 - 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 5f54f75..2f4c0f9 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ org.scijava pom-scijava - 28.0.0 + 29.2.1 @@ -108,8 +108,7 @@ 1.3.2 0.1 - 5.2 - 0.1.7 + 2.85.0 diff --git a/src/main/java/org/scijava/ui/swing/AbstractSwingUI.java b/src/main/java/org/scijava/ui/swing/AbstractSwingUI.java index 64cf927..12a6ce0 100644 --- a/src/main/java/org/scijava/ui/swing/AbstractSwingUI.java +++ b/src/main/java/org/scijava/ui/swing/AbstractSwingUI.java @@ -69,6 +69,7 @@ import org.scijava.ui.viewer.DisplayViewer; import org.scijava.widget.FileListWidget; import org.scijava.widget.FileWidget; +import org.scijava.widget.WidgetStyle; /** * Abstract superclass for Swing-based user interfaces. @@ -141,11 +142,11 @@ public File chooseFile(final File file, final String style) { // be a deadlock, particularly on macOS. See scijava/scijava-ui-swing#28. threadService.invoke(() -> { final JFileChooser chooser = new JFileChooser(file); - if (FileWidget.DIRECTORY_STYLE.equals(style)) { + if (WidgetStyle.isStyle(style, FileWidget.DIRECTORY_STYLE)) { chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); } final int rval; - if (FileWidget.SAVE_STYLE.equals(style)) { + if (WidgetStyle.isStyle(style, FileWidget.SAVE_STYLE)) { rval = chooser.showSaveDialog(appFrame); } else { // default behavior @@ -172,10 +173,10 @@ public File[] chooseFiles(final File parent, final File[] files, final FileFilte threadService.invoke(() -> { final JFileChooser chooser = new JFileChooser(parent); chooser.setMultiSelectionEnabled(true); - if (style.equals(FileListWidget.FILES_AND_DIRECTORIES)) { + if (WidgetStyle.isStyle(style, FileListWidget.FILES_AND_DIRECTORIES)) { chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); } - else if (style.equals(FileListWidget.DIRECTORIES_ONLY)) { + else if (WidgetStyle.isStyle(style, FileListWidget.DIRECTORIES_ONLY)) { chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); } else { diff --git a/src/main/java/org/scijava/ui/swing/widget/SwingFileListWidget.java b/src/main/java/org/scijava/ui/swing/widget/SwingFileListWidget.java index 19ed2b7..c745bc0 100644 --- a/src/main/java/org/scijava/ui/swing/widget/SwingFileListWidget.java +++ b/src/main/java/org/scijava/ui/swing/widget/SwingFileListWidget.java @@ -65,7 +65,6 @@ import org.scijava.plugin.Parameter; import org.scijava.plugin.Plugin; import org.scijava.thread.ThreadService; -import org.scijava.ui.UIService; import org.scijava.widget.FileListWidget; import org.scijava.widget.FileWidget; import org.scijava.widget.InputWidget;