4141import org .scijava .ui .console .ConsolePane ;
4242import org .scijava .ui .viewer .DisplayWindow ;
4343import org .scijava .widget .FileWidget ;
44+ import org .scijava .widget .WidgetStyle ;
4445
4546/**
4647 * An end-user SciJava application user interface.
@@ -160,11 +161,11 @@ DialogPrompt dialogPrompt(String message, String title,
160161 default File chooseFile (final File file , final String style ) {
161162 final String title ;
162163 // style can be a string with multiple comma-separated keywords
163- // TODO use a utility class for style handling, e.g. StyleUtils.isStyle(style, ...)
164164 if (style == null ) title = "Choose a file" ;
165- else if (style .toLowerCase ().contains (FileWidget .DIRECTORY_STYLE )) title = "Choose a directory" ;
166- else if (style .toLowerCase ().contains (FileWidget .OPEN_STYLE )) title = "Open" ;
167- else if (style .toLowerCase ().contains (FileWidget .SAVE_STYLE )) title = "Save" ;
165+ else if (WidgetStyle .isStyle (style , FileWidget .DIRECTORY_STYLE )) title = "Choose a directory" ;
166+ else if (WidgetStyle .isStyle (style , FileWidget .FILE_AND_DIRECTORY_STYLE )) title = "Choose a file or directory" ;
167+ else if (WidgetStyle .isStyle (style , FileWidget .OPEN_STYLE )) title = "Open" ;
168+ else if (WidgetStyle .isStyle (style , FileWidget .SAVE_STYLE )) title = "Save" ;
168169 else title = "Choose a file" ;
169170
170171 return chooseFile (title , file , style );
@@ -180,6 +181,7 @@ default File chooseFile(final File file, final String style) {
180181 * <li>{@link FileWidget#OPEN_STYLE}</li>
181182 * <li>{@link FileWidget#SAVE_STYLE}</li>
182183 * <li>{@link FileWidget#DIRECTORY_STYLE}</li>
184+ * <li>{@link FileWidget#FILE_AND_DIRECTORY_STYLE}</li>
183185 * </ul>
184186 * @return The {@link File} chosen by the user, or null if prompt is not
185187 * available
0 commit comments