Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcletavernie2013-04-23 11:15:37 +0000
committercletavernie2013-04-23 11:15:37 +0000
commit8db6778b4068826b332d22403bd993dac5491595 (patch)
treeca1d8c19f280dd95244f82a80cf7521ec52a3057 /plugins/uml/org.eclipse.papyrus.uml.import/src/org
parent68bf15098f6e3a76d1255b526746fb81318566e6 (diff)
downloadorg.eclipse.papyrus-8db6778b4068826b332d22403bd993dac5491595.tar.gz
org.eclipse.papyrus-8db6778b4068826b332d22403bd993dac5491595.tar.xz
org.eclipse.papyrus-8db6778b4068826b332d22403bd993dac5491595.zip
399869: [Widgets] Papyrus shall implement extension filters on the “import…” UI
https://bugs.eclipse.org/bugs/show_bug.cgi?id=399869
Diffstat (limited to 'plugins/uml/org.eclipse.papyrus.uml.import/src/org')
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportPackageFromUserModelHandler.java43
1 files changed, 22 insertions, 21 deletions
diff --git a/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportPackageFromUserModelHandler.java b/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportPackageFromUserModelHandler.java
index 536b6851c5b..548c4240884 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportPackageFromUserModelHandler.java
+++ b/plugins/uml/org.eclipse.papyrus.uml.import/src/org/eclipse/papyrus/uml/importt/handlers/ImportPackageFromUserModelHandler.java
@@ -14,9 +14,10 @@
package org.eclipse.papyrus.uml.importt.handlers;
import java.util.Collection;
+import java.util.LinkedHashMap;
+import java.util.Map;
import org.eclipse.emf.common.command.Command;
-import org.eclipse.emf.edit.command.ChangeCommand;
import org.eclipse.jface.window.Window;
import org.eclipse.papyrus.uml.importt.ui.PackageImportDialog;
import org.eclipse.papyrus.uml.profile.ui.dialogs.ElementImportTreeSelectionDialog.ImportSpec;
@@ -41,6 +42,7 @@ public class ImportPackageFromUserModelHandler extends AbstractImportHandler {
* Specific {@link ChangeCommand} that imports libraries from repository
*/
public class ImportFromFileCommand extends AbstractImportCommand {
+
/**
* Creates a new ImportLibraryFromRepositoryCommand
*
@@ -61,33 +63,32 @@ public class ImportPackageFromUserModelHandler extends AbstractImportHandler {
// Retrieve shell instance
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
- Collection<Package> packages = PackageImportSourceDialog
- .open(shell, "Select the models to import",
- getSelection());
+ Map<String, String> extensionFilters = new LinkedHashMap<String, String>();
+ extensionFilters.put("*.uml", "UML (*.uml)");
+ extensionFilters.put("*.profile.uml", "UML Profiles (*.profile.uml)");
+ extensionFilters.put("*", "All (*)");
+
+ Collection<Package> packages = PackageImportSourceDialog.open(shell, "Select the models to import", getSelection(), extensionFilters);
- if (packages == null) {
+ if(packages == null) {
return; // user cancelled the dialog
}
- if (!packages.isEmpty()) {
- PackageImportDialog dialog = new PackageImportDialog(
- PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- packages);
+ if(!packages.isEmpty()) {
+ PackageImportDialog dialog = new PackageImportDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), packages);
- if (dialog.open() == Window.OK) {
+ if(dialog.open() == Window.OK) {
Collection<ImportSpec<Package>> result = dialog.getResult();
- for (ImportSpec<Package> resultElement : result) {
- Package selectedPackage = resultElement
- .getElement();
- switch (resultElement.getAction()) {
- case COPY :
- handleCopyPackage(selectedPackage);
- break;
- default :
- handleImportPackage(selectedPackage);
- break;
+ for(ImportSpec<Package> resultElement : result) {
+ Package selectedPackage = resultElement.getElement();
+ switch(resultElement.getAction()) {
+ case COPY:
+ handleCopyPackage(selectedPackage);
+ break;
+ default:
+ handleImportPackage(selectedPackage);
+ break;
}
}
}

Back to the top