From 316c1eaecf02b1ba5d7fc8120fd8b1379f5ad927 Mon Sep 17 00:00:00 2001 From: Starryi Date: Tue, 6 Apr 2021 11:17:41 +0800 Subject: [PATCH 1/5] =?UTF-8?q?REPORT-50664=20=20=E3=80=90=E7=A7=BB?= =?UTF-8?q?=E5=8A=A8=E7=AB=AF=E3=80=91body=E8=AE=BE=E7=BD=AE=E7=BB=9D?= =?UTF-8?q?=E5=AF=B9=E5=B8=83=E5=B1=80=EF=BC=8C=E7=BB=84=E4=BB=B6=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E4=BE=A7=E8=BE=B9=E5=AF=BC=E8=88=AA=E5=90=8E=EF=BC=8C?= =?UTF-8?q?=E8=BF=98=E8=83=BD=E8=AE=BE=E7=BD=AE=E7=BB=84=E4=BB=B6=E5=86=BB?= =?UTF-8?q?=E7=BB=93=EF=BC=8C=E4=B8=BAbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 【问题原因】 表单绝对布局下的组件结构和自适应布局下的组件结构不同,导致不能获取到body下的直接子组件名称, 从而无法获取启用了快速定位导航的组件,在移动端冻结设置面板看来就像是当前表单没有任何组件启用了 快速定位导航,所以没能在冻结组件列表中将相关组件排除出去. 【改动思路】 根据表单绝对布局的组件结构进行特殊处理,以获取Body布局组件. --- .../component/MobileComponentFrozenPane.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/component/MobileComponentFrozenPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/component/MobileComponentFrozenPane.java index 0dd2fcc15..a06cb1cd0 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/component/MobileComponentFrozenPane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/component/MobileComponentFrozenPane.java @@ -14,6 +14,8 @@ import com.fr.design.widget.FRWidgetFactory; import com.fr.form.main.Form; import com.fr.form.ui.FormWidgetHelper; import com.fr.form.ui.Widget; +import com.fr.form.ui.container.WBodyLayoutType; +import com.fr.form.ui.container.WFitLayout; import com.fr.form.ui.container.WLayout; import com.fr.form.ui.container.WSortLayout; import com.fr.form.ui.widget.CRBoundsWidget; @@ -123,9 +125,7 @@ public class MobileComponentFrozenPane extends BasicPane { } private List frozenWidgets() { - Form form = WidgetPropertyPane.getInstance().getEditingFormDesigner().getTarget(); - WLayout container = form.getContainer(); - WSortLayout wSortLayout = (WSortLayout) container.getWidget(container.getWidgetCount() - 1); + WSortLayout wSortLayout = getBodyWSortLayout(); List list = wSortLayout.getNonContainerWidgetList(); List widgets = new ArrayList<>(); for (String value : list) { @@ -137,6 +137,18 @@ public class MobileComponentFrozenPane extends BasicPane { return widgets; } + private WSortLayout getBodyWSortLayout() { + Form form = WidgetPropertyPane.getInstance().getEditingFormDesigner().getTarget(); + WLayout container = form.getContainer(); + WFitLayout wFitLayout = (WFitLayout) container.getWidget(container.getWidgetCount() - 1); + WSortLayout wSortLayout = wFitLayout; + if (wFitLayout.getBodyLayoutType() == WBodyLayoutType.ABSOLUTE) { + CRBoundsWidget boundsWidget = (CRBoundsWidget) wFitLayout.getWidget(0); + wSortLayout = (WSortLayout) boundsWidget.getWidget(); + } + return wSortLayout; + } + @Override protected String title4PopupWindow() { return "ComponentFrozenPane"; From 33d55e89c8792729da78eda81e3f32125d79a831 Mon Sep 17 00:00:00 2001 From: hades Date: Tue, 6 Apr 2021 18:26:33 +0800 Subject: [PATCH 2/5] =?UTF-8?q?REPORT-50096=20FR=E8=BF=9C=E7=A8=8BBI?= =?UTF-8?q?=EF=BC=8C=E6=9C=AA=E6=94=B9=E5=8A=A8=E9=85=8D=E7=BD=AE=EF=BC=8C?= =?UTF-8?q?=E7=A1=AE=E8=AE=A4=E4=BF=9D=E5=AD=98=E5=90=8E=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E5=8F=91=E7=94=9F=E5=8F=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/data/datapane/connect/JDBCDefPane.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java index 4bf6bf190..0e11c2629 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java @@ -99,6 +99,8 @@ public class JDBCDefPane extends JPanel { private IntegerEditor DBCP_NUMTESTSPEREVICTIONRUN = new IntegerEditor(); private IntegerEditor DBCP_MINEVICTABLEIDLETIMEMILLIS = new IntegerEditor(); + private JDBCDatabaseConnection jdbcDatabase; + public JDBCDefPane() { this.setBorder(UITitledBorder.createBorderWithTitle("JDBC" + ":")); this.setLayout(FRGUIPaneFactory.createLabelFlowLayout()); @@ -202,6 +204,7 @@ public class JDBCDefPane extends JPanel { if (jdbcDatabase == null) { jdbcDatabase = new JDBCDatabaseConnection(); } + this.jdbcDatabase = jdbcDatabase; if (ComparatorUtils.equals(jdbcDatabase.getDriver(), "sun.jdbc.odbc.JdbcOdbcDriver") && jdbcDatabase.getURL().startsWith("jdbc:odbc:Driver={Microsoft")) { this.dbtypeComboBox.setSelectedItem("Access"); @@ -235,6 +238,7 @@ public class JDBCDefPane extends JPanel { if (dbcpAttr == null) { dbcpAttr = new DBCPConnectionPoolAttr(); jdbcDatabase.setDbcpAttr(dbcpAttr); + this.jdbcDatabase.setDbcpAttr(dbcpAttr); } this.DBCP_INITIAL_SIZE.setValue(dbcpAttr.getInitialSize()); this.DBCP_MAX_ACTIVE.setValue(dbcpAttr.getMaxActive()); @@ -251,7 +255,6 @@ public class JDBCDefPane extends JPanel { } public JDBCDatabaseConnection update() { - JDBCDatabaseConnection jdbcDatabase = new JDBCDatabaseConnection(); Object driveItem = this.driverComboBox.getSelectedItem(); jdbcDatabase.setDriver(driveItem == null ? null : driveItem.toString()); jdbcDatabase.setURL(this.urlTextField.getText().trim()); From cc5c4753c9fc73d916ba182007e1fff75873f769 Mon Sep 17 00:00:00 2001 From: hades Date: Tue, 6 Apr 2021 18:28:56 +0800 Subject: [PATCH 3/5] =?UTF-8?q?REPORT-50096=20fix=20=E9=A2=84=E9=98=B2npe?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/data/datapane/connect/JDBCDefPane.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java index 0e11c2629..4d2003144 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java @@ -255,6 +255,9 @@ public class JDBCDefPane extends JPanel { } public JDBCDatabaseConnection update() { + if (jdbcDatabase == null) { + jdbcDatabase = new JDBCDatabaseConnection(); + } Object driveItem = this.driverComboBox.getSelectedItem(); jdbcDatabase.setDriver(driveItem == null ? null : driveItem.toString()); jdbcDatabase.setURL(this.urlTextField.getText().trim()); From e70787b8c48e6037ac390b77d09b3b6ef19eb0d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=99=BD=E5=B2=B3?= <445798420@qq.com> Date: Wed, 7 Apr 2021 14:35:40 +0800 Subject: [PATCH 4/5] =?UTF-8?q?CHART-18772=20=20frm=E4=B8=8B=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96=E9=9C=80=E8=A6=81=E9=80=89=E4=B8=ADgisButton?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/van/chart/map/designer/type/GisLayerPane.java | 1 + 1 file changed, 1 insertion(+) diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/GisLayerPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/GisLayerPane.java index e94c79818..4a43d7619 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/GisLayerPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/GisLayerPane.java @@ -79,6 +79,7 @@ public class GisLayerPane extends JPanel implements UIObserver { private JPanel createGISLayerPane() { gisButton = new UIButtonGroup(new String[]{Toolkit.i18nText("Fine-Design_Form_Widget_Style_Standard"), Toolkit.i18nText("Fine-Design_Chart_Custom")}); + gisButton.setSelectedIndex(0); gisGaoDeLayer = new UIComboBox(MapLayerConfigManager.getGaoDeLayerItems()); gisButton.addActionListener(event -> { refreshZoomLevel(); From e2cc87e26d6daf38ca5d2d29a04e9809e6e848c7 Mon Sep 17 00:00:00 2001 From: hades Date: Wed, 7 Apr 2021 16:13:48 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=20REPORT-50788=20=E3=80=9010.0.15=E3=80=91?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E9=9D=A2=E6=9D=BF=E4=B8=8D=E4=BC=9A=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E7=94=9F=E6=88=90=E7=AC=AC=E4=BA=8C=E4=B8=AA=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E9=9B=86=E8=AE=BE=E7=BD=AE=E7=9A=84=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/DesignModelAdapter.java | 23 ++++++++++++++----- 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/DesignModelAdapter.java b/designer-base/src/main/java/com/fr/design/DesignModelAdapter.java index 9d5ed06e2..73d82f862 100644 --- a/designer-base/src/main/java/com/fr/design/DesignModelAdapter.java +++ b/designer-base/src/main/java/com/fr/design/DesignModelAdapter.java @@ -309,13 +309,13 @@ public abstract class DesignModelAdapter map, ParameterProvider[] parameterProviders, Filter filter) { + if (filter != null) { + ParameterApplyHelper.addPara2Map(map, parameterProviders, filter); + } else { + ParameterApplyHelper.addPara2Map(map, parameterProviders); + } + } + protected void addGlobalParameters(Map map) { // 添加全局参数 Parameter[] glbParas = ParameterConfig.getInstance().getGlobalParameters();