From d1108bf94a19d982729f93246acee799facda438 Mon Sep 17 00:00:00 2001 From: hades Date: Thu, 24 Sep 2020 14:03:32 +0800 Subject: [PATCH 01/11] =?UTF-8?q?MOBILE-29490=20=E3=80=90H5=E3=80=9110.4.8?= =?UTF-8?q?0=E5=8D=87=E7=BA=A7=E5=88=B010.4.90=E5=90=8E=EF=BC=8C=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E4=B8=AD=E6=9C=89=E4=BA=9B=E5=86=85=E5=AE=B9=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E4=B8=8D=E5=85=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../design/form/util/FormDesignerUtils.java | 21 +++++++++++++++++++ .../mobile/ChartEditorDefinePane.java | 14 ++++++++++++- .../mobile/ElementCaseDefinePane.java | 12 ++++++++++- 3 files changed, 45 insertions(+), 2 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/form/util/FormDesignerUtils.java b/designer-form/src/main/java/com/fr/design/form/util/FormDesignerUtils.java index 352aa80e5..3e248f3ba 100644 --- a/designer-form/src/main/java/com/fr/design/form/util/FormDesignerUtils.java +++ b/designer-form/src/main/java/com/fr/design/form/util/FormDesignerUtils.java @@ -1,5 +1,8 @@ package com.fr.design.form.util; +import com.fr.design.designer.creator.XCreator; +import com.fr.design.designer.creator.XWAbsoluteBodyLayout; +import com.fr.design.designer.creator.XWAbsoluteLayout; import com.fr.design.designer.creator.XWFitLayout; import com.fr.design.file.HistoryTemplateListCache; import com.fr.design.mainframe.FormDesigner; @@ -8,6 +11,7 @@ import com.fr.design.mainframe.template.info.ComponentCreateOperate; import com.fr.design.mainframe.template.info.ComponentDeleteOperate; import com.fr.form.ui.Widget; import com.fr.form.ui.container.WFitLayout; +import java.awt.Container; public class FormDesignerUtils { @@ -46,4 +50,21 @@ public class FormDesignerUtils { jTemplate.getProcessInfo().updateTemplateOperationInfo(new ComponentDeleteOperate(widget)); } + /** + * 判断当前UI组件是否在绝对画布块中 + * + * @param xCreator + * @return + */ + public static boolean isInAbsoluteLayout(XCreator xCreator) { + Container parent = xCreator.getParent(); + while (parent != null) { + if (parent instanceof XWAbsoluteLayout && !(parent instanceof XWAbsoluteBodyLayout)) { + return true; + } + parent = parent.getParent(); + } + return false; + } + } diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java index 7427a0281..8a9c3b4d4 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java @@ -24,6 +24,7 @@ import com.fr.design.mainframe.mobile.ui.MobileCollapsedStylePane; import com.fr.design.mainframe.mobile.ui.MobileComboBoxDialogEditor; import com.fr.form.ui.BaseChartEditor; import com.fr.form.ui.ChartEditor; +import com.fr.form.ui.ElementCaseEditor; import com.fr.form.ui.mobile.MobileCollapsedStyle; import javax.swing.BorderFactory; @@ -202,8 +203,19 @@ public class ChartEditorDefinePane extends MobileWidgetDefinePane { MobileCollapsedStyle style = ((ChartEditor) xCreator.toData()).getMobileCollapsedStyle(); this.mobileCollapsedStyleEditor.setStyle(style); this.mobileCollapsedStyleEditor.setSelected(style.isCollapsedWork()); + fix(style); } + /** + * 根据组件当前位置修正下属性 + * + * @param style + */ + private void fix(MobileCollapsedStyle style) { + style.setCollapsedWork(!FormDesignerUtils.isInAbsoluteLayout(xCreator)); + } + + @Override public void update() { ChartMobileAttrProvider mobileAttr = ((BaseChartEditor)xCreator.toData()).getMobileAttr(); @@ -219,7 +231,7 @@ public class ChartEditorDefinePane extends MobileWidgetDefinePane { MobileCollapsedStyle style = this.mobileCollapsedStyleEditor.getStyle(); if (style != null) { ((ChartEditor) xCreator.toData()).setMobileCollapsedStyle(style); - style.setCollapsedWork(this.mobileCollapsedStyleEditor.isSelectedCustom()); + style.setCollapsedWork(this.mobileCollapsedStyleEditor.isSelectedCustom() && !FormDesignerUtils.isInAbsoluteLayout(xCreator)); } DesignerContext.getDesignerFrame().getSelectedJTemplate().fireTargetModified(); // 触发设计器保存按钮亮起来 } diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java index 723616280..596f04682 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java @@ -177,6 +177,16 @@ public class ElementCaseDefinePane extends MobileWidgetDefinePane { this.functionalWhenUnactivatedCheckBox.setSelected(!elementCaseEditor.isFunctionalWhenUnactivated()); this.mobileCollapsedStyleEditor.setStyle(elementCaseEditor.getMobileCollapsedStyle()); this.mobileCollapsedStyleEditor.setSelected(elementCaseEditor.getMobileCollapsedStyle().isCollapsedWork()); + fix(elementCaseEditor.getMobileCollapsedStyle()); + } + + /** + * 根据组件当前位置修正下属性 + * + * @param style + */ + private void fix(MobileCollapsedStyle style) { + style.setCollapsedWork(!FormDesignerUtils.isInAbsoluteLayout(xCreator)); } @Override @@ -207,7 +217,7 @@ public class ElementCaseDefinePane extends MobileWidgetDefinePane { } MobileCollapsedStyle style = this.mobileCollapsedStyleEditor.getStyle(); if (style != null) { - style.setCollapsedWork(this.mobileCollapsedStyleEditor.isSelectedCustom()); + style.setCollapsedWork(this.mobileCollapsedStyleEditor.isSelectedCustom() && !FormDesignerUtils.isInAbsoluteLayout(xCreator)); ((ElementCaseEditor) xCreator.toData()).setMobileCollapsedStyle(style); } } From 85fcea5fba367eb83b0da25c71dde38a7a43023d Mon Sep 17 00:00:00 2001 From: hades Date: Thu, 24 Sep 2020 14:20:23 +0800 Subject: [PATCH 02/11] =?UTF-8?q?MOBILE-29490=20=E3=80=90H5=E3=80=9110.4.8?= =?UTF-8?q?0=E5=8D=87=E7=BA=A7=E5=88=B010.4.90=E5=90=8E=EF=BC=8C=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E4=B8=AD=E6=9C=89=E4=BA=9B=E5=86=85=E5=AE=B9=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E4=B8=8D=E5=85=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../widget/ui/designer/mobile/ChartEditorDefinePane.java | 4 ++-- .../widget/ui/designer/mobile/ElementCaseDefinePane.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java index 8a9c3b4d4..69e438401 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java @@ -202,8 +202,8 @@ public class ChartEditorDefinePane extends MobileWidgetDefinePane { MobileCollapsedStyle style = ((ChartEditor) xCreator.toData()).getMobileCollapsedStyle(); this.mobileCollapsedStyleEditor.setStyle(style); - this.mobileCollapsedStyleEditor.setSelected(style.isCollapsedWork()); fix(style); + this.mobileCollapsedStyleEditor.setSelected(style.isCollapsedWork()); } /** @@ -212,7 +212,7 @@ public class ChartEditorDefinePane extends MobileWidgetDefinePane { * @param style */ private void fix(MobileCollapsedStyle style) { - style.setCollapsedWork(!FormDesignerUtils.isInAbsoluteLayout(xCreator)); + style.setCollapsedWork(style.isCollapsedWork() && !FormDesignerUtils.isInAbsoluteLayout(xCreator)); } diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java index 596f04682..bdd5b7d35 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java @@ -176,8 +176,8 @@ public class ElementCaseDefinePane extends MobileWidgetDefinePane { this.allowFullCheckBox.setSelected(elementCaseEditor.isAllowFullScreen()); this.functionalWhenUnactivatedCheckBox.setSelected(!elementCaseEditor.isFunctionalWhenUnactivated()); this.mobileCollapsedStyleEditor.setStyle(elementCaseEditor.getMobileCollapsedStyle()); - this.mobileCollapsedStyleEditor.setSelected(elementCaseEditor.getMobileCollapsedStyle().isCollapsedWork()); fix(elementCaseEditor.getMobileCollapsedStyle()); + this.mobileCollapsedStyleEditor.setSelected(elementCaseEditor.getMobileCollapsedStyle().isCollapsedWork()); } /** @@ -186,7 +186,7 @@ public class ElementCaseDefinePane extends MobileWidgetDefinePane { * @param style */ private void fix(MobileCollapsedStyle style) { - style.setCollapsedWork(!FormDesignerUtils.isInAbsoluteLayout(xCreator)); + style.setCollapsedWork(style.isCollapsedWork() && !FormDesignerUtils.isInAbsoluteLayout(xCreator)); } @Override From 465dafee980b07c8835f24816302329fc9b9812c Mon Sep 17 00:00:00 2001 From: kerry Date: Thu, 24 Sep 2020 14:50:22 +0800 Subject: [PATCH 03/11] =?UTF-8?q?=E6=8F=90=E5=88=B0final?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mainframe/EditingMouseListener.java | 42 +++++++++++++------ 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java b/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java index 01de4a1da..0e66964b4 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java @@ -177,8 +177,8 @@ public class EditingMouseListener extends MouseInputAdapter { if (designer.isDrawLineMode()) { designer.updateDrawLineMode(e); } else { - int relativeX = Math.max(0, designer.getRelativeX(e.getX())); - int relativeY = Math.max(0, designer.getRelativeY(e.getY())); + int relativeX = Math.max(0, e.getX()); + int relativeY = Math.max(0, e.getY()); if (selectionModel.hasSelectionComponent() && selectionModel.getSelection().getRelativeBounds().contains( @@ -363,7 +363,7 @@ public class EditingMouseListener extends MouseInputAdapter { designer.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); } // component.getParent() 是报表块所在的XWTitleLayout int minX = button.getX() + getParentPositionX(component, 0) - designer.getHorizontalScaleValue(); - int minY = button.getY() + getParentPositionY(component, 0) - designer.getVerticalScaleValue(); + int minY = button.getY() + getParentPositionY(component, 0) - designer.getVerticalScaleValue() + xElementCase.getY(); if (e.getX() + GAP - xElementCase.getInsets().left > minX && e.getX() - GAP - xElementCase.getInsets().left < minX + button.getWidth()) { if (e.getY() + GAP - xElementCase.getInsets().top > minY && e.getY() - GAP - xElementCase.getInsets().top < minY + button.getHeight()) { designer.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); @@ -405,16 +405,7 @@ public class EditingMouseListener extends MouseInputAdapter { } private void setCoverPaneNotDisplay(XCreator component, MouseEvent e, boolean isLinkedHelpDialog) { - if (xElementCase != null) { - int x = getParentPositionX(xElementCase, 0) - designer.getArea().getHorizontalValue(); - int y = getParentPositionY(xElementCase, 0) - designer.getArea().getVerticalValue(); - Rectangle rect = new Rectangle(x, y, xElementCase.getWidth(), xElementCase.getHeight()); - if (rect.contains(e.getPoint())) { - return; - } - xElementCase.displayCoverPane(false); - } if (xChartEditor != null) { xChartEditor.displayCoverPane(false); } @@ -425,6 +416,15 @@ public class EditingMouseListener extends MouseInputAdapter { if (xTopLayoutContainer != null) { xTopLayoutContainer.setMouseEnter(false); } + //不知道为什么要对XElementCase进行判断,但是直接return会有bug,所以把他放在最后 + if (xElementCase != null) { + int x = getParentPositionX(xElementCase, 0) - designer.getArea().getHorizontalValue(); + int y = getParentPositionY(xElementCase, 0) - designer.getArea().getVerticalValue(); + Rectangle rect = new Rectangle(x, y, xElementCase.getWidth(), xElementCase.getHeight()); + if (!rect.contains(e.getPoint())) { + xElementCase.displayCoverPane(false); + } + } designer.repaint(); } @@ -462,7 +462,7 @@ public class EditingMouseListener extends MouseInputAdapter { designer.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); } int minX = button.getX() + getParentPositionX(component, 0) - designer.getHorizontalScaleValue(); - int minY = button.getY() + getParentPositionY(component, 0) - designer.getVerticalScaleValue(); + int minY = button.getY() + getParentPositionY(component, 0) - designer.getVerticalScaleValue() + xChartEditor.getY(); if (e.getX() + GAP > minX && e.getX() - GAP < minX + button.getWidth()) { if (e.getY() + GAP > minY && e.getY() - GAP < minY + button.getHeight()) { designer.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); @@ -700,6 +700,7 @@ public class EditingMouseListener extends MouseInputAdapter { currentXCreator.stopEditing(); currentXCreator = null; currentEditor = null; + refreshTopXCreator(); return true; } return true; @@ -727,4 +728,19 @@ public class EditingMouseListener extends MouseInputAdapter { } currentEditor.getEditorTarget().setBounds(bounds); } + + /** + * 刷新顶层组件 + * */ + public void refreshTopXCreator(boolean isEditing){ + designer.refreshTopXCreator(isEditing); + } + + /** + * 刷新顶层组件 + * */ + public void refreshTopXCreator(){ + refreshTopXCreator(false); + } + } From a66a183f2fdb0738860a81fdba4d0156c68b6bab Mon Sep 17 00:00:00 2001 From: kerry Date: Thu, 24 Sep 2020 14:55:34 +0800 Subject: [PATCH 04/11] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mainframe/EditingMouseListener.java | 38 ++++++------------- 1 file changed, 11 insertions(+), 27 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java b/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java index 0e66964b4..f482f7c97 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java @@ -363,7 +363,7 @@ public class EditingMouseListener extends MouseInputAdapter { designer.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); } // component.getParent() 是报表块所在的XWTitleLayout int minX = button.getX() + getParentPositionX(component, 0) - designer.getHorizontalScaleValue(); - int minY = button.getY() + getParentPositionY(component, 0) - designer.getVerticalScaleValue() + xElementCase.getY(); + int minY = button.getY() + getParentPositionY(component, 0) - designer.getVerticalScaleValue(); if (e.getX() + GAP - xElementCase.getInsets().left > minX && e.getX() - GAP - xElementCase.getInsets().left < minX + button.getWidth()) { if (e.getY() + GAP - xElementCase.getInsets().top > minY && e.getY() - GAP - xElementCase.getInsets().top < minY + button.getHeight()) { designer.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); @@ -405,7 +405,16 @@ public class EditingMouseListener extends MouseInputAdapter { } private void setCoverPaneNotDisplay(XCreator component, MouseEvent e, boolean isLinkedHelpDialog) { + if (xElementCase != null) { + int x = getParentPositionX(xElementCase, 0) - designer.getArea().getHorizontalValue(); + int y = getParentPositionY(xElementCase, 0) - designer.getArea().getVerticalValue(); + Rectangle rect = new Rectangle(x, y, xElementCase.getWidth(), xElementCase.getHeight()); + if (rect.contains(e.getPoint())) { + return; + } + xElementCase.displayCoverPane(false); + } if (xChartEditor != null) { xChartEditor.displayCoverPane(false); } @@ -416,15 +425,6 @@ public class EditingMouseListener extends MouseInputAdapter { if (xTopLayoutContainer != null) { xTopLayoutContainer.setMouseEnter(false); } - //不知道为什么要对XElementCase进行判断,但是直接return会有bug,所以把他放在最后 - if (xElementCase != null) { - int x = getParentPositionX(xElementCase, 0) - designer.getArea().getHorizontalValue(); - int y = getParentPositionY(xElementCase, 0) - designer.getArea().getVerticalValue(); - Rectangle rect = new Rectangle(x, y, xElementCase.getWidth(), xElementCase.getHeight()); - if (!rect.contains(e.getPoint())) { - xElementCase.displayCoverPane(false); - } - } designer.repaint(); } @@ -462,7 +462,7 @@ public class EditingMouseListener extends MouseInputAdapter { designer.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); } int minX = button.getX() + getParentPositionX(component, 0) - designer.getHorizontalScaleValue(); - int minY = button.getY() + getParentPositionY(component, 0) - designer.getVerticalScaleValue() + xChartEditor.getY(); + int minY = button.getY() + getParentPositionY(component, 0) - designer.getVerticalScaleValue(); if (e.getX() + GAP > minX && e.getX() - GAP < minX + button.getWidth()) { if (e.getY() + GAP > minY && e.getY() - GAP < minY + button.getHeight()) { designer.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); @@ -700,7 +700,6 @@ public class EditingMouseListener extends MouseInputAdapter { currentXCreator.stopEditing(); currentXCreator = null; currentEditor = null; - refreshTopXCreator(); return true; } return true; @@ -728,19 +727,4 @@ public class EditingMouseListener extends MouseInputAdapter { } currentEditor.getEditorTarget().setBounds(bounds); } - - /** - * 刷新顶层组件 - * */ - public void refreshTopXCreator(boolean isEditing){ - designer.refreshTopXCreator(isEditing); - } - - /** - * 刷新顶层组件 - * */ - public void refreshTopXCreator(){ - refreshTopXCreator(false); - } - } From e1011109d10d8cc9b6241353f27fd2970ee3d0cc Mon Sep 17 00:00:00 2001 From: vito Date: Thu, 24 Sep 2020 16:44:24 +0800 Subject: [PATCH 05/11] =?UTF-8?q?REPORT-38537=20=E9=83=A8=E5=88=86?= =?UTF-8?q?=E9=9D=A2=E6=9D=BF=E6=98=BE=E7=A4=BA=E4=B8=8D=E5=85=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/fr/design/constants/UIConstants.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer-base/src/main/java/com/fr/design/constants/UIConstants.java b/designer-base/src/main/java/com/fr/design/constants/UIConstants.java index 15a7c87c0..93dc57a8f 100644 --- a/designer-base/src/main/java/com/fr/design/constants/UIConstants.java +++ b/designer-base/src/main/java/com/fr/design/constants/UIConstants.java @@ -37,7 +37,7 @@ public interface UIConstants { public static final Image APPFIT_H3 = IOUtils.readImage("/com/fr/design/images/dialog/appfit/H3.png"); public static final Image APPFIT_H4 = IOUtils.readImage("/com/fr/design/images/dialog/appfit/H4.png"); - public static final Border CELL_ATTR_ZEROBORDER = BorderFactory.createEmptyBorder(0, 0, 0, 0); + public static final Border CELL_ATTR_ZEROBORDER = BorderFactory.createEmptyBorder(0, 1, 0, 0); public static final Border CELL_ATTR_EMPTYBORDER = BorderFactory.createEmptyBorder(0, 10, 0, 0); public static final Border CELL_ATTR_PRESENTBORDER = BorderFactory.createEmptyBorder(0, 5, 0, 0); public static final Border CELL_ATTR_NORMALBORDER = BorderFactory.createEmptyBorder(0, 10, 0, 15); From 5e4ad9b890d2211a35bb6ef3957658f33446ce0b Mon Sep 17 00:00:00 2001 From: Yvan Date: Thu, 24 Sep 2020 17:10:51 +0800 Subject: [PATCH 06/11] =?UTF-8?q?REPORT-40613=20=E3=80=90=E4=BA=8C?= =?UTF-8?q?=E8=BD=AE=E5=9B=9E=E5=BD=92=E3=80=91=E6=95=B0=E6=8D=AE=E5=88=97?= =?UTF-8?q?=E5=8F=B3=E4=BE=A7=E5=B1=9E=E6=80=A7=E9=9D=A2=E6=9D=BF=E7=9A=84?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=E6=9D=A1=E4=BB=B6=E7=BC=96=E8=BE=91=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E8=BE=83=E9=95=BF=20=E3=80=90=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E5=8E=9F=E5=9B=A0=E3=80=91=E7=BC=96=E8=BE=91=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E6=AF=94=E8=BE=83=E9=95=BF=E6=98=AF=E5=9B=A0=E4=B8=BA=E5=89=8D?= =?UTF-8?q?=E9=9D=A2=E7=9A=84=E8=BF=87=E6=BB=A4=E6=9D=A1=E4=BB=B6=E8=BF=99?= =?UTF-8?q?=E4=B8=AALabel=E7=9A=84=E5=AE=BD=E5=BA=A6=E6=98=AFTableLayout.P?= =?UTF-8?q?REFERRED=EF=BC=8C=E8=80=8C=E4=B8=8A=E9=9D=A2=E9=82=A3=E4=BA=9BL?= =?UTF-8?q?abel=E7=9A=84=E5=AE=BD=E5=BA=A6=E6=98=AF=E5=AE=9A=E5=80=BC60?= =?UTF-8?q?=EF=BC=8C=E6=89=80=E4=BB=A5=E6=98=BE=E7=A4=BA=E8=B5=B7=E6=9D=A5?= =?UTF-8?q?=E5=8F=B3=E8=BE=B9=E7=9A=84=E7=BC=96=E8=BE=91=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E5=AE=BD=E5=BA=A6=E6=B2=A1=E6=9C=89=E4=B8=8E=E4=B8=8A=E9=9D=A2?= =?UTF-8?q?=E7=9A=84=E4=BF=9D=E6=8C=81=E4=B8=80=E8=87=B4=20=E3=80=90?= =?UTF-8?q?=E6=94=B9=E5=8A=A8=E6=80=9D=E8=B7=AF=E3=80=91=E5=B0=86=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E6=8C=89=E9=92=AE=E5=B7=A6=E4=BE=A7=E7=9A=84=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E6=9D=A1=E4=BB=B6Label=E7=9A=84=E5=AE=BD=E5=BA=A6?= =?UTF-8?q?=E4=B9=9F=E4=BF=AE=E6=94=B9=E4=B8=BA=E5=AE=9A=E5=80=BC60?= =?UTF-8?q?=EF=BC=8C=E5=8F=A6=E5=A4=96=E4=BF=AE=E6=94=B9=E4=BA=86=E4=B8=80?= =?UTF-8?q?=E4=BA=9BToolKit=E7=9A=84=E5=AF=BC=E5=8C=85=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cellquick/CellDSColumnEditor.java | 53 ++++++++++--------- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java b/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java index fb80e8891..cfc0e9adb 100644 --- a/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java +++ b/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java @@ -22,6 +22,7 @@ import com.fr.design.gui.ilable.MultilineLabel; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.gui.itextfield.UITextField; +import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; @@ -251,15 +252,15 @@ public class CellDSColumnEditor extends CellQuickEditor { dataPane.setListener(dataListener); groupPane.setListener(groupListener); - double[] rowSize = {P}, columnSize = {P, F}; - UILabel uiLabel = FRWidgetFactory.createLineWrapLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Filter_Conditions")); + double[] rowSize = {P}, columnSize = {60, F}; + UILabel uiLabel = FRWidgetFactory.createLineWrapLabel(Toolkit.i18nText("Fine-Design_Report_Filter_Conditions")); condition = new DSColumnConditionAction(); if (tc != null) { condition.setEditingComponent(tc); } //丢掉icon,修改按钮名称为编辑 condition.setSmallIcon(null); - condition.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Edit")); + condition.setName(Toolkit.i18nText("Fine-Design_Basic_Edit")); conditionUIButton = new UIButton(condition); Component[][] components = new Component[][]{ new Component[]{uiLabel, UIComponentUtils.wrapWithBorderLayoutPane(conditionUIButton)} @@ -273,12 +274,12 @@ public class CellDSColumnEditor extends CellQuickEditor { @Override public String getIconPath() { - return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"); + return Toolkit.i18nText("Fine-Design_Report_Basic"); } @Override public String title4PopupWindow() { - return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"); + return Toolkit.i18nText("FR-Designer_Basic"); } @@ -441,12 +442,12 @@ public class CellDSColumnEditor extends CellQuickEditor { @Override public String getIconPath() { - return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Advanced"); + return Toolkit.i18nText("Fine-Design_Report_Advanced"); } @Override public String title4PopupWindow() { - return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Advanced"); + return Toolkit.i18nText("Fine-Design_Report_Advanced"); } @@ -570,19 +571,19 @@ public class CellDSColumnEditor extends CellQuickEditor { //可扩展性 JPanel extendableDirectionPane = FRGUIPaneFactory.createYBoxEmptyBorderPane(); - extendableDirectionPane.add(heCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Horizontal_Extendable"))); - extendableDirectionPane.add(veCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Vertical_Extendable"))); + extendableDirectionPane.add(heCheckBox = new UICheckBox(Toolkit.i18nText("Fine-Design_Report_ExpandD_Horizontal_Extendable"))); + extendableDirectionPane.add(veCheckBox = new UICheckBox(Toolkit.i18nText("Fine-Design_Report_ExpandD_Vertical_Extendable"))); //补充空白数据 JPanel multiNumPane = FRGUIPaneFactory.createYBoxEmptyBorderPane(); - useMultiNumCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Fill_Blank_Data")); + useMultiNumCheckBox = new UICheckBox(Toolkit.i18nText("Fine-Design_Report_Fill_Blank_Data")); JPanel checkBoxPane = new JPanel(new BorderLayout()); checkBoxPane.add(useMultiNumCheckBox, BorderLayout.WEST); multiNumPane.add(checkBoxPane); multiNumSpinner = new UISpinner(1, 10000, 1, 1); //数据倍数 - UILabel multipleLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Column_Multiple")); + UILabel multipleLabel = new UILabel(Toolkit.i18nText("Fine-Design_Report_Column_Multiple")); multiPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{ new Component[]{ multipleLabel, multiNumSpinner @@ -659,17 +660,17 @@ public class CellDSColumnEditor extends CellQuickEditor { IOUtils.readIcon("/com/fr/design/images/expand/asc.png"), IOUtils.readIcon("/com/fr/design/images/expand/des.png") }; - String[] nameArray = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Original"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Ascending"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Descending")}; + String[] nameArray = {Toolkit.i18nText("Fine-Design_Report_Sort_Original"), Toolkit.i18nText("Fine-Design_Report_Sort_Ascending"), Toolkit.i18nText("Fine-Design_Report_Sort_Descending")}; sortTypePane = new UIButtonGroup(iconArray); sortTypePane.setAllToolTips(nameArray); - sortTypePane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ExpandD_Sort_After_Expand")); + sortTypePane.setGlobalName(Toolkit.i18nText("Fine-Design_Basic_ExpandD_Sort_After_Expand")); cardLayout = new CardLayout(); centerPane = new JPanel(cardLayout); formulaField = new JFormulaField(DEFAULT_VALUE); centerPane.add(new JPanel(), "none"); centerPane.add(formulaField, "content"); - UILabel sortLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Sort_Order")); + UILabel sortLabel = new UILabel(Toolkit.i18nText("Fine-Design_Report_Sort_Sort_Order")); sortLabel.setPreferredSize(LABEL_DIMENSION); sortTypePane.addChangeListener(new ChangeListener() { @Override @@ -849,15 +850,15 @@ public class CellDSColumnEditor extends CellQuickEditor { public ResultSetFilterConfigPane() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); - UILabel filterLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Results_Filter")); + UILabel filterLabel = new UILabel(Toolkit.i18nText("Fine-Design_Report_Bind_Column_Results_Filter")); //结果集筛选下拉框 rsComboBox = new UIComboBox(new String[]{ - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Undefined"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Top_N"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Bottom_N"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Odd"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Even"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Specify") + Toolkit.i18nText("Fine-Design_Report_Undefined"), + Toolkit.i18nText("Fine-Design_Report_Bind_Column_Top_N"), + Toolkit.i18nText("Fine-Design_Report_Bind_Column_Bottom_N"), + Toolkit.i18nText("Fine-Design_Report_Odd"), + Toolkit.i18nText("Fine-Design_Report_Even"), + Toolkit.i18nText("Fine-Design_Report_Specify") }); rsComboBox.addActionListener(actionListener); //配置展示CardLayout @@ -881,20 +882,20 @@ public class CellDSColumnEditor extends CellQuickEditor { //奇数 UILabel 占一行作为提示信息 setCardPane.add(new JPanel(), ODD.name()); - MultilineLabel oddTip = new MultilineLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DS_Filter_Odd_Tip")); + MultilineLabel oddTip = new MultilineLabel(Toolkit.i18nText("Fine-Design_Report_DS_Filter_Odd_Tip")); oddTip.setForeground(TIP_FONT_COLOR); tipCardPane.add(oddTip, ODD.name()); //偶数 UILabel 占一行作为提示信息 setCardPane.add(new JPanel(), EVEN.name()); - MultilineLabel evenTip = new MultilineLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DS_Filter_Even_Tip")); + MultilineLabel evenTip = new MultilineLabel(Toolkit.i18nText("Fine-Design_Report_DS_Filter_Even_Tip")); evenTip.setForeground(TIP_FONT_COLOR); tipCardPane.add(evenTip, EVEN.name()); //输入框占用右半边,提示信息占一行 serialTextField = new UITextField(16); setCardPane.add(serialTextField, SPECIFY.name()); - MultilineLabel specifyTip = new MultilineLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DS_Filter_Specify_Tip")); + MultilineLabel specifyTip = new MultilineLabel(Toolkit.i18nText("Fine-Design_Report_DS_Filter_Specify_Tip")); specifyTip.setForeground(TIP_FONT_COLOR); tipCardPane.add(specifyTip, SPECIFY.name()); contentPane = TableLayoutHelper.createDiffVGapTableLayoutPane(new Component[][]{ @@ -1072,7 +1073,7 @@ public class CellDSColumnEditor extends CellQuickEditor { textFieldPane.add(formulaTextField, BorderLayout.CENTER); textFieldPane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 5)); UIButton formulaButton = new UIButton(IOUtils.readIcon("/com/fr/design/images/m_insert/formula.png")); - formulaButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Formula") + "..."); + formulaButton.setToolTipText(Toolkit.i18nText("Fine-Design_Report_Formula") + "..."); formulaButton.setPreferredSize(new Dimension(20, formulaTextField.getPreferredSize().height)); formulaButton.addActionListener(formulaButtonActionListener); @@ -1157,7 +1158,7 @@ public class CellDSColumnEditor extends CellQuickEditor { public CustomValuePane() { this.setLayout(new BorderLayout()); - UILabel customValueLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value")); + UILabel customValueLabel = new UILabel(Toolkit.i18nText("Fine-Design_Basic_Display_Value")); customValueLabel.setPreferredSize(LABEL_DIMENSION); formulaField = new JFormulaField(DEFAULT_VALUE); this.add(TableLayoutHelper.createGapTableLayoutPane(new Component[][]{ From cc2fa9218f2e7d57efc68bed04be779729b19b35 Mon Sep 17 00:00:00 2001 From: hades Date: Thu, 24 Sep 2020 20:47:32 +0800 Subject: [PATCH 07/11] =?UTF-8?q?REPORT-34955=20linux=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E9=80=89=E4=B8=AD=E6=9F=90=E4=B8=AA=E5=AD=97=E4=BD=93?= =?UTF-8?q?=E5=90=8E=20=E5=88=87=E6=8D=A2=E5=8D=95=E5=85=83=E6=A0=BC?= =?UTF-8?q?=E5=90=8E=E5=AD=97=E4=BD=93=E6=9C=AA=E9=87=8D=E6=96=B0=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E6=9C=AA=E9=BB=98=E8=AE=A4=E5=AD=97=E4=BD=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../actions/cell/style/ReportFontNameAction.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/designer-realize/src/main/java/com/fr/design/actions/cell/style/ReportFontNameAction.java b/designer-realize/src/main/java/com/fr/design/actions/cell/style/ReportFontNameAction.java index 1acf4a404..5023e6f4f 100644 --- a/designer-realize/src/main/java/com/fr/design/actions/cell/style/ReportFontNameAction.java +++ b/designer-realize/src/main/java/com/fr/design/actions/cell/style/ReportFontNameAction.java @@ -3,6 +3,7 @@ */ package com.fr.design.actions.cell.style; +import com.fr.stable.os.OperatingSystem; import java.awt.Dimension; import javax.swing.ComboBoxModel; @@ -49,6 +50,7 @@ public class ReportFontNameAction extends AbstractStyleAction { public void setFontName(String fontName) { Object object = this.getValue(UIComboBox.class.getName()); + boolean find = false; if (object != null && object instanceof UIComboBox) { UIComboBox comboBox = (UIComboBox) object; ComboBoxModel comboBoxModel = comboBox.getModel(); @@ -60,9 +62,17 @@ public class ReportFontNameAction extends AbstractStyleAction { comboBox.removeActionListener(this); comboBox.setSelectedIndex(i); comboBox.addActionListener(this); + find = true; break; } } + // linux设计器下面 找不到默认就是第一个字体 + boolean access = OperatingSystem.isLinux() && !find && comboBoxModel.getSize() > 0; + if (access) { + comboBox.removeActionListener(this); + comboBox.setSelectedIndex(0); + comboBox.addActionListener(this); + } } } From 163c5a1a2d03803bd35ac2222adeb6e8f5d83271 Mon Sep 17 00:00:00 2001 From: hades Date: Fri, 25 Sep 2020 11:27:26 +0800 Subject: [PATCH 08/11] =?UTF-8?q?REPORT-40259=E3=80=90=E5=9B=9E=E5=BD=92?= =?UTF-8?q?=E3=80=91Tomcat=20=E4=B8=8B=E9=80=9A=E8=BF=87=20IP=20=E7=9B=B4?= =?UTF-8?q?=E6=8E=A5=E8=AE=BF=E9=97=AE=E6=95=B0=E6=8D=AE=E5=86=B3=E7=AD=96?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=EF=BC=8C=E5=88=87=E6=8D=A2=E8=BF=9C=E7=A8=8B?= =?UTF-8?q?=E4=B9=8B=E5=90=8E=E9=85=8D=E7=BD=AE=E9=A1=B5=E9=9D=A2url?= =?UTF-8?q?=E5=8F=98=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/fr/env/RemoteEnvPane.java | 34 ------------------- 1 file changed, 34 deletions(-) diff --git a/designer-base/src/main/java/com/fr/env/RemoteEnvPane.java b/designer-base/src/main/java/com/fr/env/RemoteEnvPane.java index 54cfddc8d..515ce3690 100644 --- a/designer-base/src/main/java/com/fr/env/RemoteEnvPane.java +++ b/designer-base/src/main/java/com/fr/env/RemoteEnvPane.java @@ -1,7 +1,5 @@ package com.fr.env; -import com.fr.base.FRContext; -import com.fr.base.ServerConfig; import com.fr.design.DesignerEnvManager; import com.fr.design.ExtraDesignClassManager; import com.fr.design.beans.BasicBeanPane; @@ -444,38 +442,6 @@ public class RemoteEnvPane extends BasicBeanPane { new double[]{FILL} )); - setDefaultAppAndServlet(); - } - - /** - * 设置 app 和 servlet 默认值 - */ - private void setDefaultAppAndServlet() { - setWrap(webAppNameInput, () -> FRContext.getCommonOperator().getAppName(), RemoteWorkspaceURL.DEFAULT_WEB_APP_NAME); - setWrap(servletNameInput, () -> ServerConfig.getInstance().getServletName(), RemoteWorkspaceURL.DEFAULT_SERVLET_NAME); - } - - private void setWrap(final UITextField textField, final Supplier supplier, final String defaultName) { - new SwingWorker() { - - @Override - protected String doInBackground() throws Exception { - return supplier.get(); - } - - @Override - protected void done() { - String name = defaultName; - try { - name = get(); - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage() , e); - } - if (StringUtils.isEmpty(textField.getText())) { - textField.setText(name); - } - } - }.execute(); } From a1b92c6eb83cf3134ec50a6a23f9e2c80ea87ddd Mon Sep 17 00:00:00 2001 From: Yvan Date: Fri, 25 Sep 2020 11:50:22 +0800 Subject: [PATCH 09/11] =?UTF-8?q?REPORT-40495=20=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E9=9D=A2=E6=9D=BF-=E5=A4=9Asheet-windows=E4=B8=8B=E9=9F=A9?= =?UTF-8?q?=E6=96=87=E5=90=8D=E7=A7=B0=E7=9A=84sheet=E4=B8=8D=E8=A2=AB?= =?UTF-8?q?=E9=80=89=E4=B8=AD=E6=97=B6=E4=B8=8D=E6=98=BE=E7=A4=BA=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=20=E3=80=90=E9=97=AE=E9=A2=98=E5=8E=9F=E5=9B=A0?= =?UTF-8?q?=E3=80=91=E4=B9=8B=E5=89=8D=E7=94=A8=E7=9A=84Graphics2D?= =?UTF-8?q?=E7=9A=84drawString=E6=96=B9=E6=B3=95=EF=BC=8C=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E7=94=BB=E5=87=BA=E9=9F=A9=E6=96=87=E7=9A=84sheetName?= =?UTF-8?q?=EF=BC=8Cdebug=E5=8F=91=E7=8E=B0=E8=B5=B0=E5=88=B0=E9=87=8C?= =?UTF-8?q?=E9=9D=A2=EF=BC=8CfontInfo=E4=B8=AD=E7=9A=84font=3Dnull?= =?UTF-8?q?=EF=BC=8C=E8=80=8CGraphHelper=E7=9A=84drawString=E6=96=B9?= =?UTF-8?q?=E6=B3=95=EF=BC=8C=E8=BF=99=E4=B8=AA=E6=96=B9=E6=B3=95debug?= =?UTF-8?q?=E8=B5=B0=E5=88=B0=E9=87=8C=E9=9D=A2=E5=8F=91=E7=8E=B0font?= =?UTF-8?q?=E4=B8=80=E7=9B=B4=E6=98=AF=E6=AD=A3=E5=B8=B8=E7=9A=84=EF=BC=8C?= =?UTF-8?q?=E5=B9=B6=E4=B8=94=E4=B8=A4=E4=B8=AA=E6=96=B9=E6=B3=95=E9=87=8C?= =?UTF-8?q?=E9=9D=A2=E7=9A=84Graphics2D=E4=B9=9F=E9=83=BD=E6=98=AFSunGraph?= =?UTF-8?q?ics2D=EF=BC=8C=E5=B0=B1=E5=BE=88=E5=A5=87=E6=80=AA=EF=BC=8C?= =?UTF-8?q?=E6=B2=A1=E6=90=9E=E6=87=82=E4=B8=BA=E5=95=A5=20=E3=80=90?= =?UTF-8?q?=E6=94=B9=E5=8A=A8=E6=80=9D=E8=B7=AF=E3=80=91=E5=B0=86=E8=B0=83?= =?UTF-8?q?=E7=94=A8Graphics2D=E7=9A=84drawString=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E6=9B=BF=E6=8D=A2=E4=B8=BA=E8=B0=83=E7=94=A8GraphHelper?= =?UTF-8?q?=E7=9A=84drawString=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/mainframe/SheetNameTabPane.java | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java index 52f1fe1f0..0c7c359f0 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java @@ -134,7 +134,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse * 编辑的对象实例 */ private ReportComponentComposite reportComposite; - + private int selectedIndex = -1; private JPanel buttonPane; @@ -332,7 +332,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse leftButton.setEnabled(buttonEnabled); rightButton.setEnabled(buttonEnabled); } - + /** * 抽出来方便OEM * @return @@ -417,10 +417,10 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse // 画两个添加sheet图标 iconLocation = isOvertakeWidth ? (int) (maxWidth) : addIconlocation + GRAP; - + paintAddButton(g2d); } - + protected void paintAddButton(Graphics2D g2d){ getAddWorkSheet().paintIcon(this, g2d, iconLocation, 3); ADD_POLY_SHEET.paintIcon(this, g2d, iconLocation + getAddWorkSheet().getIconWidth() + ICON_SEP_DISTANCE, 3); @@ -496,7 +496,8 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse sheetIcon.paintIcon(this, g2d, (int) textX + charWidth, 2); g2d.setPaint(getForeground()); - g2d.drawString(sheetName, (int) textX + charWidth + 14, textAscent); + // REPORT-40495 之前的g2d.drawString()无法画出韩文sheetName,修改成GraphHelper的drawString + GraphHelper.drawString(g2d, sheetName, (int) textX + charWidth + 14, textAscent); } /** @@ -626,7 +627,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse processRightMouseButton(evtX, evtY); } } - + private void processRightMouseButton(int evtX, int evtY){ MenuDef def = new MenuDef(); addInsertGridShortCut(def); @@ -636,14 +637,14 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse def.updateMenu(); GUICoreUtils.showPopupMenu(tabPop, this, evtX - 1, evtY - 1); } - + private void processLeftMouseButton(int evtX){ if (evtX > iconLocation && evtX < iconLocation + GRID_TOSHEET_RIGHT) { firstInsertActionPerformed(); } else if (evtX > iconLocation + POLY_TOSHEET_LEFT && evtX < iconLocation + POLY_TOSHEET_RIGHT) { new PolyReportInsertAction().actionPerformed(null); } - + } protected void addInsertGridShortCut(MenuDef def){ @@ -847,7 +848,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse } protected class GridReportInsertAction extends SheetInsertAction { - + @Override protected TemplateReport newTemplateReport() { return new WorkSheet(); From b6085f1a3e24e28e4c11bb759c04abdab8f16c89 Mon Sep 17 00:00:00 2001 From: hades Date: Fri, 25 Sep 2020 12:28:27 +0800 Subject: [PATCH 10/11] =?UTF-8?q?REPORT-38557=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E3=80=90JDK11=E3=80=91=E6=B7=BB=E5=8A=A0=E6=8E=A7=E4=BB=B6?= =?UTF-8?q?=E5=9B=BE=E6=A0=87=E7=9A=84=E9=9D=A2=E6=9D=BF=E9=87=8C=E8=BE=93?= =?UTF-8?q?=E5=85=A5=E6=A1=86=E6=98=BE=E7=A4=BA=E4=B8=8D=E5=85=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/fr/design/web/CustomIconPane.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java b/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java index 12c72c5cd..54f1755b9 100644 --- a/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java +++ b/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java @@ -4,6 +4,7 @@ import com.fr.base.BaseUtils; import com.fr.base.GraphHelper; import com.fr.base.Icon; import com.fr.base.IconManager; +import com.fr.design.designer.IntervalConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.dialog.FineJOptionPane; @@ -401,9 +402,9 @@ public class CustomIconPane extends BasicPane { private void init() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); double p = TableLayout.PREFERRED; - double rowSize[] = {p, p}; - double columnSize[] = {p, p, p}; - + double[] rowSize = {p, p}; + double[] columnSize = {p, p}; + int[][] rowCount = {{1, 1}, {1, 1}}; UIButton browseButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom_Icon_SelectIcon")); browseButton.setPreferredSize(new Dimension(80, 25)); browseButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Click_this_button")); @@ -442,7 +443,7 @@ public class CustomIconPane extends BasicPane { imagePane.add(browseButton); Component[][] components = {{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name") + ":"), nameTextField}, {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon") + ":"), imagePane}}; - JPanel centerPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + JPanel centerPane = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W0, IntervalConstants.INTERVAL_L1); this.add(centerPane, BorderLayout.CENTER); } From 2cb92e14d1fa0564fe262200b08d3997adbbe4a2 Mon Sep 17 00:00:00 2001 From: Yvan Date: Fri, 25 Sep 2020 14:28:18 +0800 Subject: [PATCH 11/11] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=EF=BC=8C=E6=98=8E=E7=A1=AEbug=E5=8E=9F=E5=9B=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/fr/design/mainframe/SheetNameTabPane.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java index 0c7c359f0..ead1cf2f1 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java @@ -496,7 +496,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse sheetIcon.paintIcon(this, g2d, (int) textX + charWidth, 2); g2d.setPaint(getForeground()); - // REPORT-40495 之前的g2d.drawString()无法画出韩文sheetName,修改成GraphHelper的drawString + // REPORT-40495 之前的g2d.drawString(),在windows下默认宋体时,无法绘制韩文字符,而GraphHelper的drawString中对韩文做了额外处理,可以绘制韩文字符 GraphHelper.drawString(g2d, sheetName, (int) textX + charWidth + 14, textAscent); }