From 683ee67089bf8cc448dd9f0a7440005b187fe66a Mon Sep 17 00:00:00 2001 From: Hades Date: Wed, 5 Dec 2018 15:48:19 +0800 Subject: [PATCH 1/4] =?UTF-8?q?REPORT-12974=20pc=E7=AB=AF=E3=80=8B?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E3=80=81=E8=A1=A8=E5=8D=95=E7=95=8C=E9=9D=A2?= =?UTF-8?q?=E3=80=8B=E6=89=AB=E7=A0=81=E4=BC=98=E5=8C=96=E3=80=8B=E7=A7=BB?= =?UTF-8?q?=E5=8A=A8=E7=AB=AF=E5=B1=9E=E6=80=A7=E6=B2=A1=E6=9C=89=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E6=89=AB=E7=A0=81=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/mainframe/WidgetPropertyPane.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java index af17389be..da3e56ec1 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java @@ -16,6 +16,7 @@ import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.widget.ui.FormWidgetCardPane; import com.fr.design.widget.ui.designer.mobile.MobileWidgetDefinePane; +import com.fr.general.ComparatorUtils; import com.fr.stable.ArrayUtils; import javax.swing.*; @@ -173,7 +174,13 @@ public class WidgetPropertyPane extends FormDockView implements BaseWidgetProper FormSelection selection = designer.getSelectionModel().getSelection(); WidgetPropertyUIProvider[] embeddedPropertyUIProviders = null; if (selection != null && selection.getSelectedCreator() != null) { + XCreator xCreator = selection.getSelectedCreator(); embeddedPropertyUIProviders = selection.getSelectedCreator().getWidgetPropertyUIProviders(); + if (xCreator instanceof XWScaleLayout + && ComparatorUtils.equals(((XWScaleLayout) xCreator).getXCreatorCount(), 1) + && ((XWScaleLayout) xCreator).getXCreator(0) instanceof XTextEditor) { + embeddedPropertyUIProviders = ((XWScaleLayout) xCreator).getXCreator(0).getWidgetPropertyUIProviders(); + } } Set set = ExtraDesignClassManager.getInstance().getArray(WidgetPropertyUIProvider.XML_TAG); return ArrayUtils.addAll(embeddedPropertyUIProviders, set.toArray(new WidgetPropertyUIProvider[set.size()])); From 67e4444afcf3bdbf66f020553608b6deb20faefe Mon Sep 17 00:00:00 2001 From: Hades Date: Wed, 5 Dec 2018 15:51:29 +0800 Subject: [PATCH 2/4] =?UTF-8?q?REPORT-12974=20pc=E7=AB=AF=E3=80=8B?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E3=80=81=E8=A1=A8=E5=8D=95=E7=95=8C=E9=9D=A2?= =?UTF-8?q?=E3=80=8B=E6=89=AB=E7=A0=81=E4=BC=98=E5=8C=96=E3=80=8B=E7=A7=BB?= =?UTF-8?q?=E5=8A=A8=E7=AB=AF=E5=B1=9E=E6=80=A7=E6=B2=A1=E6=9C=89=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E6=89=AB=E7=A0=81=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/fr/design/mainframe/WidgetPropertyPane.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java index da3e56ec1..d355c2420 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java @@ -175,7 +175,7 @@ public class WidgetPropertyPane extends FormDockView implements BaseWidgetProper WidgetPropertyUIProvider[] embeddedPropertyUIProviders = null; if (selection != null && selection.getSelectedCreator() != null) { XCreator xCreator = selection.getSelectedCreator(); - embeddedPropertyUIProviders = selection.getSelectedCreator().getWidgetPropertyUIProviders(); + embeddedPropertyUIProviders = xCreator.getWidgetPropertyUIProviders(); if (xCreator instanceof XWScaleLayout && ComparatorUtils.equals(((XWScaleLayout) xCreator).getXCreatorCount(), 1) && ((XWScaleLayout) xCreator).getXCreator(0) instanceof XTextEditor) { From 8066d95cf7aae08451abac65d72659b42008daeb Mon Sep 17 00:00:00 2001 From: Hades Date: Wed, 5 Dec 2018 16:50:08 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B4=A8=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../design/mainframe/WidgetPropertyPane.java | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java index d355c2420..5a25ad1ec 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java @@ -174,18 +174,26 @@ public class WidgetPropertyPane extends FormDockView implements BaseWidgetProper FormSelection selection = designer.getSelectionModel().getSelection(); WidgetPropertyUIProvider[] embeddedPropertyUIProviders = null; if (selection != null && selection.getSelectedCreator() != null) { - XCreator xCreator = selection.getSelectedCreator(); - embeddedPropertyUIProviders = xCreator.getWidgetPropertyUIProviders(); - if (xCreator instanceof XWScaleLayout - && ComparatorUtils.equals(((XWScaleLayout) xCreator).getXCreatorCount(), 1) - && ((XWScaleLayout) xCreator).getXCreator(0) instanceof XTextEditor) { - embeddedPropertyUIProviders = ((XWScaleLayout) xCreator).getXCreator(0).getWidgetPropertyUIProviders(); - } + embeddedPropertyUIProviders = getEmbeddedPropertyUIProviders(selection.getSelectedCreator()); } Set set = ExtraDesignClassManager.getInstance().getArray(WidgetPropertyUIProvider.XML_TAG); return ArrayUtils.addAll(embeddedPropertyUIProviders, set.toArray(new WidgetPropertyUIProvider[set.size()])); } + /** + * 获取当前控件扩展的属性tab + * @param xCreator + * @return + */ + private WidgetPropertyUIProvider[] getEmbeddedPropertyUIProviders(XCreator xCreator) { + if (xCreator instanceof XWScaleLayout + && ComparatorUtils.equals(((XWScaleLayout) xCreator).getXCreatorCount(), 1) + && ((XWScaleLayout) xCreator).getXCreator(0) instanceof XTextEditor) { + return ((XWScaleLayout) xCreator).getXCreator(0).getWidgetPropertyUIProviders(); + } + return xCreator.getWidgetPropertyUIProviders(); + } + /** * 判断是将拓展的tab放入属性表还是将原来的tab放入属性表 * From b38901e8b13ed29e0842f37299bf9a95eaa7b528 Mon Sep 17 00:00:00 2001 From: Hades Date: Wed, 5 Dec 2018 19:20:18 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B4=A8=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../design/designer/creator/XWScaleLayout.java | 13 +++++++++++++ .../fr/design/mainframe/WidgetPropertyPane.java | 17 +---------------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XWScaleLayout.java b/designer-form/src/main/java/com/fr/design/designer/creator/XWScaleLayout.java index 2ffe6c6eb..1db5e4045 100644 --- a/designer-form/src/main/java/com/fr/design/designer/creator/XWScaleLayout.java +++ b/designer-form/src/main/java/com/fr/design/designer/creator/XWScaleLayout.java @@ -10,6 +10,7 @@ import java.awt.event.ContainerEvent; import com.fr.design.designer.beans.LayoutAdapter; import com.fr.design.designer.beans.adapters.layout.FRScaleLayoutAdapter; import com.fr.design.form.layout.FRScaleLayout; +import com.fr.design.fun.WidgetPropertyUIProvider; import com.fr.form.ui.Widget; import com.fr.form.ui.container.WScaleLayout; import com.fr.form.ui.container.WAbsoluteLayout.BoundsWidget; @@ -166,4 +167,16 @@ public class XWScaleLayout extends DedicateLayoutContainer { XCreator child = getXCreator(INDEX); child.firePropertyChange(); } + + /** + * 获取被包装的XCreator扩展的属性tab + * @return + */ + @Override + public WidgetPropertyUIProvider[] getWidgetPropertyUIProviders() { + if (this.getXCreatorCount() > 0) { + return this.getXCreator(0).getWidgetPropertyUIProviders(); + } + return super.getWidgetPropertyUIProviders(); + } } \ No newline at end of file diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java index 5a25ad1ec..af17389be 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java @@ -16,7 +16,6 @@ import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.widget.ui.FormWidgetCardPane; import com.fr.design.widget.ui.designer.mobile.MobileWidgetDefinePane; -import com.fr.general.ComparatorUtils; import com.fr.stable.ArrayUtils; import javax.swing.*; @@ -174,26 +173,12 @@ public class WidgetPropertyPane extends FormDockView implements BaseWidgetProper FormSelection selection = designer.getSelectionModel().getSelection(); WidgetPropertyUIProvider[] embeddedPropertyUIProviders = null; if (selection != null && selection.getSelectedCreator() != null) { - embeddedPropertyUIProviders = getEmbeddedPropertyUIProviders(selection.getSelectedCreator()); + embeddedPropertyUIProviders = selection.getSelectedCreator().getWidgetPropertyUIProviders(); } Set set = ExtraDesignClassManager.getInstance().getArray(WidgetPropertyUIProvider.XML_TAG); return ArrayUtils.addAll(embeddedPropertyUIProviders, set.toArray(new WidgetPropertyUIProvider[set.size()])); } - /** - * 获取当前控件扩展的属性tab - * @param xCreator - * @return - */ - private WidgetPropertyUIProvider[] getEmbeddedPropertyUIProviders(XCreator xCreator) { - if (xCreator instanceof XWScaleLayout - && ComparatorUtils.equals(((XWScaleLayout) xCreator).getXCreatorCount(), 1) - && ((XWScaleLayout) xCreator).getXCreator(0) instanceof XTextEditor) { - return ((XWScaleLayout) xCreator).getXCreator(0).getWidgetPropertyUIProviders(); - } - return xCreator.getWidgetPropertyUIProviders(); - } - /** * 判断是将拓展的tab放入属性表还是将原来的tab放入属性表 *