]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.document.ui/src/org/simantics/document/ui/wizard/FileDocumentImportWizard.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.document.ui / src / org / simantics / document / ui / wizard / FileDocumentImportWizard.java
diff --git a/bundles/org.simantics.document.ui/src/org/simantics/document/ui/wizard/FileDocumentImportWizard.java b/bundles/org.simantics.document.ui/src/org/simantics/document/ui/wizard/FileDocumentImportWizard.java
new file mode 100644 (file)
index 0000000..db5d632
--- /dev/null
@@ -0,0 +1,43 @@
+package org.simantics.document.ui.wizard;\r
+\r
+import java.io.File;\r
+\r
+import org.eclipse.jface.wizard.IWizardPage;\r
+import org.eclipse.jface.wizard.Wizard;\r
+import org.simantics.db.Resource;\r
+import org.simantics.document.ui.graphfile.FileDocumentUtil;\r
+\r
+public abstract  class FileDocumentImportWizard extends Wizard{\r
+       \r
+       FileSelectionPage fileSelectionPage;\r
+       \r
+       public FileDocumentImportWizard(Resource lib) {\r
+               setWindowTitle("Document File import");\r
+               setNeedsProgressMonitor(false);\r
+       }\r
+       \r
+       public abstract Resource getLib();\r
+       \r
+       public abstract Resource getRel();\r
+       \r
+       @Override\r
+       public void addPage(IWizardPage page) {\r
+               addPage(fileSelectionPage = new FileSelectionPage());\r
+       }\r
+       \r
+       @Override\r
+       public boolean performFinish() {\r
+               final String fileName = fileSelectionPage.getFileName();\r
+               if (fileName == null || fileName.length() == 0) \r
+                       return false;\r
+               File file = new File(fileName);\r
+               if (!file.exists() || !file.canRead())\r
+                       return false;\r
+               FileDocumentUtil.importFileAsync(fileName, getLib(), getRel());\r
+               \r
+               return true;\r
+       }\r
+       \r
+       \r
+\r
+}\r