X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.district.selection.ui%2Fsrc%2Forg%2Fsimantics%2Fdistrict%2Fselection%2Fui%2Fhandlers%2FCreateNewElementSelector.java;h=10ea9e81346c364da8eccfcab7dc0a2b51b853bd;hb=363468682f0e4f48b1e0ab040f6f06005266db35;hp=b9df8b8460c5da6fb910465bc04ad7ca893e4bb1;hpb=09b78f5c26bb8b521beb6eeeb5c3f44ac1aa4d07;p=simantics%2Fdistrict.git diff --git a/org.simantics.district.selection.ui/src/org/simantics/district/selection/ui/handlers/CreateNewElementSelector.java b/org.simantics.district.selection.ui/src/org/simantics/district/selection/ui/handlers/CreateNewElementSelector.java index b9df8b84..10ea9e81 100644 --- a/org.simantics.district.selection.ui/src/org/simantics/district/selection/ui/handlers/CreateNewElementSelector.java +++ b/org.simantics.district.selection.ui/src/org/simantics/district/selection/ui/handlers/CreateNewElementSelector.java @@ -3,12 +3,15 @@ package org.simantics.district.selection.ui.handlers; import org.eclipse.e4.core.contexts.IEclipseContext; import org.eclipse.e4.core.di.annotations.CanExecute; import org.eclipse.e4.core.di.annotations.Execute; +import org.eclipse.e4.ui.services.IServiceConstants; import org.eclipse.e4.ui.workbench.IWorkbench; import org.eclipse.e4.ui.workbench.modeling.ESelectionService; import org.eclipse.jface.window.Window; import org.eclipse.swt.widgets.Shell; +import org.simantics.db.Resource; import org.simantics.db.exception.DatabaseException; import org.simantics.district.selection.ui.parts.EditSelectorDialog; +import org.simantics.utils.ui.AdaptionUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -23,8 +26,10 @@ public class CreateNewElementSelector { @Execute public void createNewElementSelector(IEclipseContext context, IWorkbench workbench) { + Object currentSelection = context.get(IServiceConstants.ACTIVE_SELECTION); + Shell shell = context.getActive(Shell.class); - EditSelectorDialog dialog = new EditSelectorDialog(shell, null); + EditSelectorDialog dialog = new EditSelectorDialog(shell, null, AdaptionUtils.adaptToCollection(currentSelection, Resource.class)); LOGGER.debug("Opening dialog"); int result = dialog.open(); LOGGER.debug("Dialog closed with result code " + result);