]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.utils.ui/src/org/simantics/utils/ui/widgets/DirectorySelectionWidget.java
Fixed multiple issues causing dangling references to discarded queries
[simantics/platform.git] / bundles / org.simantics.utils.ui / src / org / simantics / utils / ui / widgets / DirectorySelectionWidget.java
1 package org.simantics.utils.ui.widgets;
2
3 import java.io.File;
4
5 import org.eclipse.swt.SWT;
6 import org.eclipse.swt.widgets.Composite;
7 import org.eclipse.swt.widgets.DirectoryDialog;
8
9 public class DirectorySelectionWidget extends FileOrDirectorySelectionWidget{
10
11         
12         private int style;
13         
14         public DirectorySelectionWidget(Composite parent, String name, int style) {
15                 super(parent, name, style&~(SWT.OPEN|SWT.CLOSE));
16                 this.style = style & (SWT.OPEN|SWT.CLOSE);
17         }
18
19         @Override
20         protected String[] openDialog() {
21                 DirectoryDialog dialog = new DirectoryDialog(getShell(),style);
22                 String name = dialog.open();
23                 if (name == null)
24                         return null;
25                 return new String[]{name};
26         }
27         
28         @Override
29         protected boolean isValid(File file) {
30                 return (file.exists() && file.isDirectory());
31         }
32 }