1 package org.simantics.utils.ui.wizard;
\r
3 import org.eclipse.jface.resource.ImageDescriptor;
\r
4 import org.eclipse.jface.wizard.WizardPage;
\r
5 import org.eclipse.swt.SWT;
\r
6 import org.eclipse.swt.layout.GridLayout;
\r
7 import org.eclipse.swt.widgets.Composite;
\r
8 import org.simantics.utils.ui.widgets.FileOrDirectorySelectionWidget;
\r
9 import org.simantics.utils.ui.widgets.FileSelectionListener;
\r
10 import org.simantics.utils.ui.widgets.FileSelectionWidget;
\r
13 public class FileSelectionPage extends WizardPage implements FileSelectionListener{
\r
15 FileSelectionWidget fileSelectionWidget;
\r
16 Composite composite;
\r
17 String[] filterExtensions = new String[]{"*.*"};
\r
18 String[] filterNames = new String[]{"All files"};
\r
19 int style = SWT.OPEN;
\r
21 public FileSelectionPage() {
\r
22 this("Select a file",null);
\r
26 public void createControl(Composite parent) {
\r
27 composite = new Composite(parent,SWT.NONE);
\r
28 composite.setLayout(new GridLayout(1,false));
\r
29 fileSelectionWidget = new FileSelectionWidget(composite, getGroupName(), style);
\r
30 fileSelectionWidget.setFilterNames(filterNames);
\r
31 fileSelectionWidget.setFilterExtensions(filterExtensions);
\r
32 fileSelectionWidget.addListener(this);
\r
33 setControl(composite);
\r
34 setPageComplete(false);
\r
37 protected String getGroupName() {
\r
41 public FileSelectionPage(String title, ImageDescriptor image) {
\r
42 this("FileSelection",title,image);
\r
45 public FileSelectionPage(String pageName,String title, ImageDescriptor image) {
\r
46 super(pageName,title,image);
\r
49 public String[] getFilterExtensions() {
\r
50 return filterExtensions;
\r
53 public String[] getFilterNames() {
\r
57 public void setFilterExtensions(String[] filterExtensions) {
\r
58 this.filterExtensions = filterExtensions;
\r
61 public void setFilterNames(String[] filterNames) {
\r
62 this.filterNames = filterNames;
\r
65 public int getStyle() {
\r
69 public void setStyle(int style) {
\r
73 public String[] getFilename() {
\r
74 return fileSelectionWidget.getFilename();
\r
78 public void fileSelected(FileOrDirectorySelectionWidget source, String[] filename) {
\r
79 setPageComplete(filename != null && filename.length > 0);
\r