diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormSelectionUtils.java b/designer-form/src/main/java/com/fr/design/mainframe/FormSelectionUtils.java index 84b8f6bf38..7d3b17f5b7 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/FormSelectionUtils.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/FormSelectionUtils.java @@ -84,24 +84,22 @@ public class FormSelectionUtils { } private static FormSelection filterFormSelection(FormSelection clipboard, XLayoutContainer parent) { - FormSelection newSelection = new FormSelection(); for (XCreator xCreator : clipboard.getSelectedCreators()) { if (parent.acceptType(XWParameterLayout.class)) { - if (xCreator.canEnterIntoParaPane()) { - newSelection.addSelectedCreator(xCreator); + if (!xCreator.canEnterIntoParaPane()) { + clipboard.removeCreator(xCreator); } } else if (parent.acceptType(XWAbsoluteLayout.class)) { - if (xCreator.canEnterIntoAbsolutePane()) { - newSelection.addSelectedCreator(xCreator); + if (!xCreator.canEnterIntoAbsolutePane()) { + clipboard.removeCreator(xCreator); } } else if (parent.acceptType(XWFitLayout.class)) { - if (xCreator.canEnterIntoAdaptPane()) { - newSelection.addSelectedCreator(xCreator); + if (!xCreator.canEnterIntoAdaptPane()) { + clipboard.removeCreator(xCreator); } } - } - return newSelection; + return clipboard; } private static boolean isExtraContainer(XLayoutContainer parent) {