From 81edb605b10a0007f4cf85f6650735dd83e94e5e Mon Sep 17 00:00:00 2001 From: Yvan Date: Thu, 22 Oct 2020 10:39:52 +0800 Subject: [PATCH 1/7] =?UTF-8?q?REPORT-41450=20=E3=80=90JDK11=E5=86=92?= =?UTF-8?q?=E7=83=9F=E3=80=91=E6=9C=80=E6=96=B0=E7=9A=84release=EF=BC=8C?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E5=99=A8=E9=87=8C=E6=9C=89=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=96=87=E6=9C=AC=E6=A1=86=E6=98=BE=E7=A4=BA=E4=B8=8D=E5=85=A8?= =?UTF-8?q?=20=E3=80=90=E9=97=AE=E9=A2=98=E5=8E=9F=E5=9B=A0=E3=80=91window?= =?UTF-8?q?s=E7=8E=AF=E5=A2=83=E4=B8=8B=EF=BC=8C=E5=9B=A0=E4=B8=BA?= =?UTF-8?q?=E7=BC=A9=E6=94=BE=E4=BC=9A=E9=80=A0=E6=88=90=E7=BB=98=E5=88=B6?= =?UTF-8?q?=E9=97=AE=E9=A2=98=EF=BC=8Cbug=E6=88=AA=E5=9B=BE=E4=B8=AD?= =?UTF-8?q?=E5=B7=A6=E4=BE=A7=E5=AD=97=E4=BD=93=E5=8F=98=E5=A4=A7=E4=BA=86?= =?UTF-8?q?=E8=A6=86=E7=9B=96=E4=BA=86=E5=8F=B3=E4=BE=A7=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E7=9A=84=E5=B7=A6=E8=BE=B9=E6=A1=86=20=E3=80=90=E6=94=B9?= =?UTF-8?q?=E5=8A=A8=E6=80=9D=E8=B7=AF=E3=80=91=E5=9C=A8=E5=B7=A6=E4=BE=A7?= =?UTF-8?q?Label=E5=92=8C=E5=8F=B3=E4=BE=A7=E7=BB=84=E4=BB=B6=E4=B9=8B?= =?UTF-8?q?=E9=97=B4=E5=A2=9E=E5=8A=A0Gap=EF=BC=9B=E5=8F=A6=E5=A4=96?= =?UTF-8?q?=E4=BF=AE=E6=94=B9ToolKit=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 --- .../data/datapane/connect/JDBCDefPane.java | 55 ++++++++++--------- 1 file changed, 28 insertions(+), 27 deletions(-) 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 683b38e01..d603b56bf 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 @@ -11,6 +11,7 @@ import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ipasswordfield.UIPasswordFieldWithFixedLength; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.gui.ilable.ActionLabel; +import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; @@ -90,9 +91,9 @@ public class JDBCDefPane extends JPanel { private IntegerEditor DBCP_MAX_WAIT = new IntegerEditor(); private UITextField DBCP_VALIDATION_QUERY = new UITextField(); - private UIComboBox DBCP_TESTONBORROW = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_No"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Yes")}); - private UIComboBox DBCP_TESTONRETURN = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_No"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Yes")}); - private UIComboBox DBCP_TESTWHILEIDLE = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_No"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Yes")}); + private UIComboBox DBCP_TESTONBORROW = new UIComboBox(new String[]{Toolkit.i18nText("Fine-Design_Basic_No"), Toolkit.i18nText("Fine-Design_Basic_Yes")}); + private UIComboBox DBCP_TESTONRETURN = new UIComboBox(new String[]{Toolkit.i18nText("Fine-Design_Basic_No"), Toolkit.i18nText("Fine-Design_Basic_Yes")}); + private UIComboBox DBCP_TESTWHILEIDLE = new UIComboBox(new String[]{Toolkit.i18nText("Fine-Design_Basic_No"), Toolkit.i18nText("Fine-Design_Basic_Yes")}); private IntegerEditor DBCP_TIMEBETWEENEVICTIONRUNSMILLS = new IntegerEditor(); private IntegerEditor DBCP_NUMTESTSPEREVICTIONRUN = new IntegerEditor(); @@ -120,13 +121,13 @@ public class JDBCDefPane extends JPanel { userNameTextField.setName(USER_NAME); passwordTextField = new UIPasswordFieldWithFixedLength(15); dbtypeButton = new UIButton("."); - dbtypeButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Click_Get_Default_URL")); + dbtypeButton.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_Click_Get_Default_URL")); dbtypeButton.addActionListener(dbtypeButtonActionListener); double p = TableLayout.PREFERRED; double f = TableLayout.FILL; JPanel dbtypePane = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane(); - dbtypePane.add(new UILabel((com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Database") + ":"))); + dbtypePane.add(new UILabel((Toolkit.i18nText("Fine-Design_Basic_Database") + ":"))); JPanel dbtypeComPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); Component[][] dbtypeComComponents = {{dbtypeComboBox}}; double[] dbtypeRowSize = {p}; @@ -134,10 +135,10 @@ public class JDBCDefPane extends JPanel { dbtypeComPane = TableLayoutHelper.createTableLayoutPane(dbtypeComComponents, dbtypeRowSize, dbtypeColumnSize); JPanel driverPane = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane(); - driverPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Driver") + ":")); + driverPane.add(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Driver") + ":")); // 选择ODBC数据源的时候的提示链接 JPanel odbcTipsPane = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane(); - odbcTipsLink = new ActionLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Odbc_Tips")) { + odbcTipsLink = new ActionLabel(Toolkit.i18nText("Fine-Design_Basic_Odbc_Tips")) { @Override public void paintComponent(Graphics _gfx) { super.paintComponent(_gfx); @@ -146,7 +147,7 @@ public class JDBCDefPane extends JPanel { } }; odbcTipsPane.add(odbcTipsLink); - odbcTipsLink.setPreferredSize(new Dimension(GraphHelper.getWidth(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Odbc_Tips")), odbcTipsLink.getPreferredSize().height)); + odbcTipsLink.setPreferredSize(new Dimension(GraphHelper.getWidth(Toolkit.i18nText("Fine-Design_Basic_Odbc_Tips")), odbcTipsLink.getPreferredSize().height)); odbcTipsLink.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { String url = CloudCenter.getInstance().acquireUrlByKind("odbc.help"); @@ -167,26 +168,26 @@ public class JDBCDefPane extends JPanel { urlComPane = TableLayoutHelper.createCommonTableLayoutPane(urlComComponents, urlRowSize, urlColumnSize, 4); JPanel userPane = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane(); - userPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_UserName") + ":")); + userPane.add(new UILabel(Toolkit.i18nText("Fine-Design_Report_UserName") + ":")); JPanel userComPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - Component[][] userComComponents = {{userNameTextField, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Password") + ":"), passwordTextField}}; + Component[][] userComComponents = {{userNameTextField, new UILabel(Toolkit.i18nText("Fine-Design_Basic_Password") + ":"), passwordTextField}}; double[] userRowSize = {p}; double[] userColumnSize = {f, p, f}; userComPane = TableLayoutHelper.createCommonTableLayoutPane(userComComponents, userRowSize, userColumnSize, 4); JPanel passwordPane = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane(); - passwordPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Password") + ":")); + passwordPane.add(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Password") + ":")); Component[][] components = {{dbtypePane, dbtypeComPane}, {driverPane, driverComboBoxAndTips}, {urlPane, urlComPane}, {userPane, userComPane},}; double[] rowSize = {p, p, p, p}; double[] columnSize = {p, f, 22}; - JPanel centerPanel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, 0, 6); + JPanel centerPanel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, 6, 6); innerthis.add(centerPanel); JPanel southPanel = FRGUIPaneFactory.createBorderLayout_S_Pane(); innerthis.add(southPanel); southPanel.setBorder(BorderFactory.createEmptyBorder(10, 0, 4, 20)); - ActionLabel actionLabel = new ActionLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ConnectionPool_Attr")); + ActionLabel actionLabel = new ActionLabel(Toolkit.i18nText("Fine-Design_Basic_ConnectionPool_Attr")); southPanel.add(actionLabel, BorderLayout.EAST); actionLabel.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { @@ -331,7 +332,7 @@ public class JDBCDefPane extends JPanel { if (ComparatorUtils.equals(dbtypeComboBox.getSelectedItem(), ("Access"))) { // ben:这个能不能换种处理方案- - JFileChooser filechooser = new JFileChooser(); - filechooser.setDialogTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Open")); + filechooser.setDialogTitle(Toolkit.i18nText("Fine-Design_Basic_Open")); filechooser.setMultiSelectionEnabled(false); filechooser.addChoosableFileFilter(new ChooseFileFilter(new String[]{"accdb", "mdb"}, "Microsoft Office Access")); int result = filechooser.showOpenDialog(DesignerContext.getDesignerFrame()); @@ -373,19 +374,19 @@ public class JDBCDefPane extends JPanel { double[] rowSize = {f, f, f, f, f, f, f, f, f, f, f, f}; double[] columnSize = {f, f}; Component[][] comps = { - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Initial_Size") + ":", SwingConstants.RIGHT), DBCP_INITIAL_SIZE}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Max_Active") + ":", SwingConstants.RIGHT), DBCP_MAX_ACTIVE}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Max_Idle") + ":", SwingConstants.RIGHT), DBCP_MAX_IDLE}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Min_Idle") + ":", SwingConstants.RIGHT), DBCP_MIN_IDLE}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Max_Wait_Time") + ":", SwingConstants.RIGHT), DBCP_MAX_WAIT}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Validation_Query") + ":", SwingConstants.RIGHT), DBCP_VALIDATION_QUERY}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Borrow") + ":", SwingConstants.RIGHT), DBCP_TESTONBORROW}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Return") + ":", SwingConstants.RIGHT), DBCP_TESTONRETURN}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_While_Idle") + ":", SwingConstants.RIGHT), DBCP_TESTWHILEIDLE}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Evictionruns_millis") + ":", SwingConstants.RIGHT), + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Initial_Size") + ":", SwingConstants.RIGHT), DBCP_INITIAL_SIZE}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Max_Active") + ":", SwingConstants.RIGHT), DBCP_MAX_ACTIVE}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Max_Idle") + ":", SwingConstants.RIGHT), DBCP_MAX_IDLE}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Min_Idle") + ":", SwingConstants.RIGHT), DBCP_MIN_IDLE}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Max_Wait_Time") + ":", SwingConstants.RIGHT), DBCP_MAX_WAIT}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Validation_Query") + ":", SwingConstants.RIGHT), DBCP_VALIDATION_QUERY}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Borrow") + ":", SwingConstants.RIGHT), DBCP_TESTONBORROW}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Return") + ":", SwingConstants.RIGHT), DBCP_TESTONRETURN}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_While_Idle") + ":", SwingConstants.RIGHT), DBCP_TESTWHILEIDLE}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Evictionruns_millis") + ":", SwingConstants.RIGHT), DBCP_TIMEBETWEENEVICTIONRUNSMILLS}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Num_Test_Per_Evction_Run") + ":", SwingConstants.RIGHT), DBCP_NUMTESTSPEREVICTIONRUN}, - {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Mix_Evictable_Idle_Time_Millis") + ":", SwingConstants.RIGHT), + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Num_Test_Per_Evction_Run") + ":", SwingConstants.RIGHT), DBCP_NUMTESTSPEREVICTIONRUN}, + {new UILabel(Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Mix_Evictable_Idle_Time_Millis") + ":", SwingConstants.RIGHT), DBCP_MINEVICTABLEIDLETIMEMILLIS}}; JPanel contextPane = TableLayoutHelper.createGapTableLayoutPane(comps, rowSize, columnSize, 10, 4); @@ -395,7 +396,7 @@ public class JDBCDefPane extends JPanel { @Override protected String title4PopupWindow() { - return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ConnectionPool_Attr"); + return Toolkit.i18nText("Fine-Design_Basic_ConnectionPool_Attr"); } } From d95c5c2df02e9f4f8cb95bec3eef74de1c600715 Mon Sep 17 00:00:00 2001 From: Yvan Date: Thu, 22 Oct 2020 11:23:11 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=94=B9=E5=8A=A8?= =?UTF-8?q?=E6=A0=87=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/data/datapane/connect/JDBCDefPane.java | 1 + 1 file changed, 1 insertion(+) 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 d603b56bf..4bf6bf190 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 @@ -182,6 +182,7 @@ public class JDBCDefPane extends JPanel { double[] rowSize = {p, p, p, p}; double[] columnSize = {p, f, 22}; + // REPORT-41450 Windows环境的jdk11下dpi为125%时会因为缩放导致显示问题,因此加个水平gap值 JPanel centerPanel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, 6, 6); innerthis.add(centerPanel); JPanel southPanel = FRGUIPaneFactory.createBorderLayout_S_Pane(); From ef933e235fb5d474d0b248685686b229710c549e Mon Sep 17 00:00:00 2001 From: Yvan Date: Thu, 22 Oct 2020 15:47:25 +0800 Subject: [PATCH 3/7] =?UTF-8?q?REPORT-41895=20=E8=AE=BE=E8=AE=A1=E9=9D=A2?= =?UTF-8?q?=E6=9D=BF-SQL=E8=BE=93=E5=85=A5=E6=A1=86=E7=9A=84=E5=85=89?= =?UTF-8?q?=E6=A0=87=EF=BC=8C=E9=97=AA=E7=83=81=E6=97=B6=E4=BC=9A=E7=95=99?= =?UTF-8?q?=E4=B8=8B=E4=B8=80=E4=B8=AA=E5=B0=8F=E7=82=B9=20=E3=80=90?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E5=8E=9F=E5=9B=A0=E3=80=91=E5=85=89=E6=A0=87?= =?UTF-8?q?=E7=9A=84=E9=95=BF=E5=BA=A6=E6=AF=94=E8=83=8C=E6=99=AF=E9=AB=98?= =?UTF-8?q?=E4=BA=AE=E8=A6=81=E9=95=BF=EF=BC=8C=E8=B6=85=E5=87=BA=E9=83=A8?= =?UTF-8?q?=E5=88=86=E4=B8=8D=E4=BC=9A=E9=97=AA=E7=83=81=EF=BC=8C=E5=9B=A0?= =?UTF-8?q?=E6=AD=A4=E7=95=99=E4=B8=8B=E5=B0=8F=E7=82=B9=20=E3=80=90?= =?UTF-8?q?=E6=94=B9=E5=8A=A8=E6=80=9D=E8=B7=AF=E3=80=91=E5=87=8F=E5=B0=8F?= =?UTF-8?q?=E5=85=89=E6=A0=87=E7=9A=84=E7=AB=96=E7=9B=B4height?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gui/syntax/ui/rtextarea/ConfigurableCaret.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rtextarea/ConfigurableCaret.java b/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rtextarea/ConfigurableCaret.java index 233fcd598..3582c4ad9 100644 --- a/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rtextarea/ConfigurableCaret.java +++ b/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rtextarea/ConfigurableCaret.java @@ -2,7 +2,7 @@ * 12/21/2004 * * ConfigurableCaret.java - The caret used by RTextArea. - * + * * This library is distributed under a modified BSD license. See the included * RSyntaxTextArea.License.txt file for details. */ @@ -159,7 +159,7 @@ public class ConfigurableCaret extends DefaultCaret { textArea.isRequestFocusEnabled()) { if (inWindow) textArea.requestFocusInWindow(); - else + else textArea.requestFocus(); } } @@ -458,7 +458,8 @@ public class ConfigurableCaret extends DefaultCaret { Graphics2D g2 = (Graphics2D) g; g2.setStroke(new BasicStroke(2)); // 向右再移动一个位置 避免光标太接近文字内容 - g2.draw(new Line2D.Float(r.x + 1, r.y, r.x + 1, r.y + r.height)); + // REPORT-41895 光标上方超出背景高亮的部分不会闪烁,会形成一个停留的小点,因此将光标的超出部分截去 + g2.draw(new Line2D.Float(r.x + 1, r.y + 1, r.x + 1, r.y + r.height)); break; } // End of switch (style). @@ -676,7 +677,7 @@ public class ConfigurableCaret extends DefaultCaret { if (line Date: Fri, 23 Oct 2020 09:16:40 +0800 Subject: [PATCH 4/7] =?UTF-8?q?REPORT-39952=20=E3=80=90=E4=BA=A7=E5=93=81?= =?UTF-8?q?=E9=AA=8C=E6=94=B6=E3=80=91=E3=80=90JDK11=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E3=80=91150%=E6=97=B6=20=E6=8F=92=E4=BB=B6=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E6=98=BE=E7=A4=BA=E8=BF=87=E5=A4=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/fr/design/extra/ShopDialog.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/extra/ShopDialog.java b/designer-base/src/main/java/com/fr/design/extra/ShopDialog.java index 69ad0f08d..e0170cef8 100644 --- a/designer-base/src/main/java/com/fr/design/extra/ShopDialog.java +++ b/designer-base/src/main/java/com/fr/design/extra/ShopDialog.java @@ -2,6 +2,7 @@ package com.fr.design.extra; import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.UIDialog; +import com.fr.design.jdk.JdkVersion; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.stable.StableUtils; @@ -12,7 +13,6 @@ import java.awt.*; * Created by vito on 16/4/18. */ public class ShopDialog extends UIDialog { - private static final Dimension DEFAULT_SHOP = new Dimension(900, 700); public ShopDialog(Frame frame, BasicPane pane) { super(frame); @@ -22,11 +22,21 @@ public class ShopDialog extends UIDialog { JPanel panel = (JPanel) getContentPane(); panel.setLayout(new BorderLayout()); add(pane, BorderLayout.CENTER); - setSize(DEFAULT_SHOP); + setSize(createDefaultDimension()); GUICoreUtils.centerWindow(this); setResizable(false); } + private Dimension createDefaultDimension() { + Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); + // jdk11 分辨率较低 缩放较大时 屏幕高度小于或接近设定的高度 需要调整下 + if (JdkVersion.GE_9.support() && screenSize.height - 700 < 50) { + return new Dimension(900, screenSize.height - 100); + } else { + return new Dimension(900, 700); + } + } + @Override public void checkValid() throws Exception { // do nothing From 18ff7bf04990489771d461a28c3bfeb6d87dda87 Mon Sep 17 00:00:00 2001 From: Hans Date: Thu, 22 Oct 2020 12:32:44 +0800 Subject: [PATCH 5/7] =?UTF-8?q?MOBILE-29820=20=E7=A7=BB=E5=8A=A8=E7=AB=AFt?= =?UTF-8?q?ab=E6=A0=B7=E5=BC=8F=E9=A1=B5=E9=9D=A2=E7=BC=BA=E5=B0=91?= =?UTF-8?q?=E6=BB=9A=E5=8A=A8=E6=9D=A1=20=E5=AF=B9=E9=BD=90=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=E9=9D=A2=E6=9D=BF=20=E6=96=B0=E5=A2=9Escroll=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=E5=92=8C=E6=BB=9A=E5=8A=A8=E6=9D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mobile/TabMobileWidgetDefinePane.java | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TabMobileWidgetDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TabMobileWidgetDefinePane.java index ee7a28c29..b6a6b7eaf 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TabMobileWidgetDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TabMobileWidgetDefinePane.java @@ -4,6 +4,8 @@ import com.fr.base.iofile.attr.FormTabPaddingAttrMark; import com.fr.design.constants.LayoutConstants; import com.fr.design.designer.IntervalConstants; import com.fr.design.designer.creator.XCreator; +import com.fr.design.dialog.AttrScrollPane; +import com.fr.design.dialog.BasicScrollPane; import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.form.util.FormDesignerUtils; import com.fr.design.gui.frpane.AttributeChangeListener; @@ -15,7 +17,6 @@ import com.fr.design.mainframe.FormDesigner; import com.fr.design.mainframe.WidgetPropertyPane; import com.fr.design.mainframe.widget.accessibles.AccessibleTemplateStyleEditor; import com.fr.design.mainframe.widget.accessibles.MobileTemplateStylePane; -import com.fr.design.widget.ui.designer.mobile.component.MobileAdvanceInnerPane; import com.fr.design.widget.ui.designer.mobile.component.MobileBookMarkUsePane; import com.fr.design.widget.ui.designer.mobile.component.MobileComponentMarginPane; import com.fr.design.widget.ui.designer.mobile.component.MobileComponentLayoutIntervalPane; @@ -24,6 +25,7 @@ import com.fr.form.ui.container.cardlayout.WCardTagLayout; import com.fr.general.cardtag.mobile.MobileTemplateStyle; import javax.swing.JPanel; +import javax.swing.BorderFactory; import java.awt.BorderLayout; import java.awt.Component; @@ -36,9 +38,20 @@ public class TabMobileWidgetDefinePane extends MobileWidgetDefinePane { private MobileComponentLayoutIntervalPane intervalPane; private MobileBookMarkUsePane mobileBookMarkUsePane; private MobileTabCommonSettingPane mobileTabCommonSettingPane; + private JPanel contentJPanel; + private BasicScrollPane scrollPane; public TabMobileWidgetDefinePane(XCreator xCreator) { this.xCreator = xCreator; + contentJPanel = new JPanel(); + scrollPane = new AttrScrollPane() { + @Override + protected JPanel createContentPane() { + return contentJPanel; + } + }; + scrollPane.setBorder(null); + } private void bindListeners2Widgets() { @@ -61,6 +74,7 @@ public class TabMobileWidgetDefinePane extends MobileWidgetDefinePane { @Override public void initPropertyGroups(Object source) { this.setLayout(FRGUIPaneFactory.createBorderLayout()); + this.setBorder(BorderFactory.createEmptyBorder(10, 0, 10, 0)); this.designer = WidgetPropertyPane.getInstance().getEditingFormDesigner(); UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Tab_Style_Template")); templateStyleEditor = new AccessibleTemplateStyleEditor(new MobileTemplateStylePane((WCardTagLayout) xCreator.toData())); @@ -89,7 +103,8 @@ public class TabMobileWidgetDefinePane extends MobileWidgetDefinePane { //高级 holder.add(advancePane, BorderLayout.CENTER); - this.add(holder, BorderLayout.NORTH); + contentJPanel.add(holder, BorderLayout.CENTER); + this.add(scrollPane, BorderLayout.CENTER); } @Override From 65a78e486fbcf0fe5c354d3ac64dd5a019a454a9 Mon Sep 17 00:00:00 2001 From: Hans Date: Fri, 23 Oct 2020 10:08:13 +0800 Subject: [PATCH 6/7] =?UTF-8?q?MOBILE-29820=20=E7=A7=BB=E5=8A=A8=E7=AB=AFt?= =?UTF-8?q?ab=E6=A0=B7=E5=BC=8F=E9=A1=B5=E9=9D=A2=E7=BC=BA=E5=B0=91?= =?UTF-8?q?=E6=BB=9A=E5=8A=A8=E6=9D=A1=20=E6=B7=BB=E5=8A=A0=E6=BB=9A?= =?UTF-8?q?=E5=8A=A8=E6=9D=A1=20=E6=9C=80=E5=A4=96=E5=B1=82=E7=9B=B4?= =?UTF-8?q?=E6=8E=A5=E4=BD=BF=E7=94=A8JPanel=EF=BC=8C=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E5=B8=83=E5=B1=80=E7=BA=A6=E6=9D=9F=E5=AF=BC=E8=87=B4=E5=B8=83?= =?UTF-8?q?=E5=B1=80=E5=BC=82=E5=B8=B8=EF=BC=8C=E9=9C=80=E8=A6=81=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mobile/TabMobileWidgetDefinePane.java | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TabMobileWidgetDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TabMobileWidgetDefinePane.java index b6a6b7eaf..af591abdd 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TabMobileWidgetDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/TabMobileWidgetDefinePane.java @@ -24,6 +24,7 @@ import com.fr.design.widget.ui.designer.mobile.component.MobileTabCommonSettingP import com.fr.form.ui.container.cardlayout.WCardTagLayout; import com.fr.general.cardtag.mobile.MobileTemplateStyle; +import java.awt.Dimension; import javax.swing.JPanel; import javax.swing.BorderFactory; import java.awt.BorderLayout; @@ -40,10 +41,12 @@ public class TabMobileWidgetDefinePane extends MobileWidgetDefinePane { private MobileTabCommonSettingPane mobileTabCommonSettingPane; private JPanel contentJPanel; private BasicScrollPane scrollPane; + private JPanel holder; + private Dimension dimension; public TabMobileWidgetDefinePane(XCreator xCreator) { this.xCreator = xCreator; - contentJPanel = new JPanel(); + contentJPanel = FRGUIPaneFactory.createCenterFlowZeroGapBorderPane(); scrollPane = new AttrScrollPane() { @Override protected JPanel createContentPane() { @@ -79,7 +82,18 @@ public class TabMobileWidgetDefinePane extends MobileWidgetDefinePane { UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Tab_Style_Template")); templateStyleEditor = new AccessibleTemplateStyleEditor(new MobileTemplateStylePane((WCardTagLayout) xCreator.toData())); JPanel jPanel = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{label, templateStyleEditor}, {new UILabel()}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L1, LayoutConstants.VGAP_LARGE); - JPanel holder = FRGUIPaneFactory.createBorderLayout_S_Pane(); + holder = new JPanel(new BorderLayout()) { + @Override + public Dimension getPreferredSize() { + if (dimension == null) { + return super.getPreferredSize(); + } else { + Dimension defaultDimension = super.getPreferredSize(); + defaultDimension.width = dimension.width; + return defaultDimension; + } + } + }; holder.add(jPanel, BorderLayout.NORTH); JPanel innerAdvancePane = FRGUIPaneFactory.createBorderLayout_S_Pane(); if (!shouldHidePadding(designer)) { @@ -111,6 +125,9 @@ public class TabMobileWidgetDefinePane extends MobileWidgetDefinePane { public void populate(FormDesigner designer) { WCardTagLayout wCardTagLayout = (WCardTagLayout) xCreator.toData(); MobileTemplateStyle mobileTemplateStyle = wCardTagLayout.getMobileTemplateStyle(); + if (dimension == null) { + dimension = holder.getPreferredSize(); + } templateStyleEditor.setValue(mobileTemplateStyle); // 数据 populate 完成后,再设置监听 this.bindListeners2Widgets(); From a80b9cbbb7b714f41a28d8205adeb3219220f748 Mon Sep 17 00:00:00 2001 From: Hans Date: Wed, 21 Oct 2020 14:52:35 +0800 Subject: [PATCH 7/7] =?UTF-8?q?MOBILE-29857=E3=80=90RN=E3=80=91=E8=AE=BE?= =?UTF-8?q?=E8=AE=A1=E5=99=A8=E4=B8=8A=E5=9C=86=E7=82=B9=E6=8C=87=E7=A4=BA?= =?UTF-8?q?=E5=99=A8=E9=80=89=E4=B8=AD=E5=A1=AB=E5=85=85=E8=89=B2=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E5=90=8E=E6=B2=A1=E6=9C=89=E7=94=9F=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../component/MobileTabCommonSettingPane.java | 31 ++++++++++++------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/component/MobileTabCommonSettingPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/component/MobileTabCommonSettingPane.java index 4670456ae..def9cf795 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/component/MobileTabCommonSettingPane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/component/MobileTabCommonSettingPane.java @@ -35,6 +35,7 @@ public class MobileTabCommonSettingPane extends BasicPane { private ModeButtonGroup buttonGroup; private NewColorSelectBox initDotColorBox; private NewColorSelectBox selectDotColorBox; + private boolean isPopulate; public MobileTabCommonSettingPane(boolean isTopComponent) { initComponent(isTopComponent); @@ -89,23 +90,27 @@ public class MobileTabCommonSettingPane extends BasicPane { initDotColorBox = new NewColorSelectBox(0){ @Override protected void iniListener() { - } - - @Override - public void mouseClicked(MouseEvent e) { - super.mouseClicked(e); - this.attributeChange(); + this.addSelectChangeListener(new ChangeListener() { + @Override + public void stateChanged(ChangeEvent e) { + if (!isPopulate) { + attributeChange(); + } + } + }); } }; selectDotColorBox = new NewColorSelectBox(0){ @Override protected void iniListener() { - } - - @Override - public void mouseClicked(MouseEvent e) { - super.mouseClicked(e); - this.attributeChange(); + this.addSelectChangeListener(new ChangeListener() { + @Override + public void stateChanged(ChangeEvent e) { + if (!isPopulate) { + attributeChange(); + } + } + }); } }; JPanel initDotColorPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{initColorLabel, initDotColorBox}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L1, LayoutConstants.VGAP_MEDIUM); @@ -189,7 +194,9 @@ public class MobileTabCommonSettingPane extends BasicPane { color = defaultColor; } if (color != colorBox.getSelectObject()) { + isPopulate = true; colorBox.setSelectObject(color); + isPopulate = false; } }