From 3cbc1ffddc515727ff716c402d5527a0bf4cf731 Mon Sep 17 00:00:00 2001 From: lemon Date: Fri, 15 Nov 2024 16:26:40 +0800 Subject: [PATCH 1/2] =?UTF-8?q?REPORT-140603=20fix:=20=E6=96=B0=E5=BB=BA?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=A4=B9=E5=BC=B9=E7=AA=97=E7=BC=A9=E6=94=BE?= =?UTF-8?q?=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/actions/file/RenameAction.java | 2 +- .../DesignerFrameFileDealerPane.java | 33 +++++++------------ 2 files changed, 13 insertions(+), 22 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/actions/file/RenameAction.java b/designer-base/src/main/java/com/fr/design/actions/file/RenameAction.java index ac19f107b6..9ef710c787 100644 --- a/designer-base/src/main/java/com/fr/design/actions/file/RenameAction.java +++ b/designer-base/src/main/java/com/fr/design/actions/file/RenameAction.java @@ -186,7 +186,7 @@ public class RenameAction extends UpdateAction { warnLabel.setPreferredSize(FineUIScale.scale(new Dimension(300, 50))); warnLabel.setHorizontalAlignment(SwingConstants.LEFT); warnLabel.setVerticalAlignment(SwingConstants.TOP); - warnLabel.setForeground(Color.RED); + FineUIStyle.setStyle(warnLabel, FineUIStyle.LABEL_WARNING_TIP); warnLabel.setVisible(false); JPanel midPanel = new JPanel(new BorderLayout()); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java index ce282861e4..cbda592149 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java @@ -1,8 +1,10 @@ package com.fr.design.mainframe; import com.fanruan.repository.TemplateRepository; +import com.fine.swing.ui.layout.Layouts; import com.fine.theme.icon.LazyIcon; import com.fine.theme.utils.FineLayoutBuilder; +import com.fine.theme.utils.FineUIScale; import com.fine.theme.utils.FineUIStyle; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseUtils; @@ -641,11 +643,7 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt this.setModal(true); // 输入框前提示 - UILabel newNameLabel = new UILabel(Toolkit.i18nText( - "Fine-Design_Basic_Enter_New_Folder_Name") - ); - newNameLabel.setHorizontalAlignment(SwingConstants.RIGHT); - newNameLabel.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 10)); + UILabel newNameLabel = new UILabel(Toolkit.i18nText("Fine-Design_Basic_Enter_New_Folder_Name")); // 文件名输入框 nameField = new UITextField(); @@ -667,12 +665,9 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt } }); nameField.selectAll(); - nameField.setPreferredSize(new Dimension(180, 20)); - JPanel topPanel = new JPanel(new FlowLayout(FlowLayout.LEFT, 0, 5)); - topPanel.setBorder(BorderFactory.createEmptyBorder(15, 15, 0, 15)); - topPanel.add(newNameLabel); - topPanel.add(nameField); + JPanel topPanel = Layouts.row(10, Layouts.cell(newNameLabel), Layouts.cell(nameField).weight(1)).getComponent(); + topPanel.setBorder(new ScaledEmptyBorder(15, 10, 0, 10)); // 增加enter以及esc快捷键的支持 nameField.addKeyListener(new KeyAdapter() { @@ -689,15 +684,14 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt }); // 重名提示 warnLabel = new UILabel(); - warnLabel.setPreferredSize(new Dimension(300, 50)); warnLabel.setHorizontalAlignment(SwingConstants.LEFT); warnLabel.setVerticalAlignment(SwingConstants.TOP); - warnLabel.setForeground(Color.RED); warnLabel.setVisible(false); + FineUIStyle.setStyle(warnLabel, FineUIStyle.LABEL_WARNING_TIP); JPanel midPanel = new JPanel(new BorderLayout()); - midPanel.setBorder(BorderFactory.createEmptyBorder(0, 15, 0, 15)); - midPanel.add(warnLabel, BorderLayout.WEST); + midPanel.setBorder(new ScaledEmptyBorder(0, 10, 0, 10)); + midPanel.add(Layouts.column(Layouts.flex(), Layouts.cell(warnLabel), Layouts.flex()).getComponent()); // 确认按钮 confirmButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Confirm")); @@ -719,10 +713,8 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt } }); - JPanel bottomPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT, 10, 0)); - bottomPanel.setBorder(BorderFactory.createEmptyBorder(10, 15, 10, 10)); - bottomPanel.add(confirmButton); - bottomPanel.add(cancelButton); + JPanel bottomPanel = Layouts.row(10, Layouts.flex(), Layouts.cell(confirmButton), Layouts.cell(cancelButton)).getComponent(); + bottomPanel.setBorder(new ScaledEmptyBorder(10, 10, 10, 10)); this.add( TableLayoutHelper.createTableLayoutPane( @@ -731,13 +723,12 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt new Component[]{midPanel}, new Component[]{bottomPanel} }, - new double[]{TableLayout.FILL, TableLayout.PREFERRED, TableLayout.PREFERRED}, + new double[]{TableLayout.PREFERRED, TableLayout.FILL, TableLayout.PREFERRED}, new double[]{TableLayout.FILL} ), BorderLayout.CENTER); - - this.setSize(380, 200); + this.setSize(FineUIScale.createScaleDimension(380, 200)); this.setTitle(Toolkit.i18nText("Fine-Design_Basic_Mkdir")); this.setResizable(false); this.setAlwaysOnTop(true); From 2bb444c3155548bd528f4c06c70c263684dff18e Mon Sep 17 00:00:00 2001 From: lemon Date: Mon, 20 Jan 2025 10:54:22 +0800 Subject: [PATCH 2/2] =?UTF-8?q?REPORT-146903=20fix:UIComboCheckBox=20?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../TableDataDesensitizationTableModel.java | 26 +--------- .../gui/icombocheckbox/UIComboCheckBox.java | 48 +++++++------------ .../components/ComboCheckBoxStoryBoard.java | 13 +---- .../model/DesensitizationCellPane.java | 18 ------- 4 files changed, 19 insertions(+), 86 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/setting/TableDataDesensitizationTableModel.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/setting/TableDataDesensitizationTableModel.java index b55479dc9a..2196b58eea 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/setting/TableDataDesensitizationTableModel.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/setting/TableDataDesensitizationTableModel.java @@ -347,10 +347,10 @@ public class TableDataDesensitizationTableModel extends UITableModelAdapter textEditor.getWidth()) { @@ -497,26 +503,4 @@ public class UIComboCheckBox extends JComboBox implements UIObserver, GlobalName public String getUIClassID() { return UI_CLASS_ID; } - - /** - * 简单的测试demo - * - * @param args - */ - public static void main(String args[]) { - UIComboCheckBox comboBox = new UIComboCheckBox(new Object[] - {"MATA", "HANA", "KAKA", "KUKA", "INFI", "LILY", "RIBO", "CUBE", "MATA", "HANA", "KAKA", "KUKA"}); - - comboBox.isShowOmitText(false); - comboBox.setPopupMaxDisplayNumber(6); - - JPanel jPanel = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - jPanel.add(comboBox); - - JFrame jFrame = new JFrame(); - jFrame.setVisible(true); - jFrame.setSize(600, 400); - jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - jFrame.add(jPanel, BorderLayout.CENTER); - } } diff --git a/designer-base/src/test/java/com/fr/design/gui/storybook/components/ComboCheckBoxStoryBoard.java b/designer-base/src/test/java/com/fr/design/gui/storybook/components/ComboCheckBoxStoryBoard.java index 21a2bc7e28..7b51ff8710 100644 --- a/designer-base/src/test/java/com/fr/design/gui/storybook/components/ComboCheckBoxStoryBoard.java +++ b/designer-base/src/test/java/com/fr/design/gui/storybook/components/ComboCheckBoxStoryBoard.java @@ -3,11 +3,8 @@ package com.fr.design.gui.storybook.components; import com.fr.design.gui.icombocheckbox.UIComboCheckBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.storybook.StoryBoard; -import com.fr.design.layout.FRGUIPaneFactory; import com.fr.stable.ArrayUtils; -import javax.swing.JPanel; -import java.awt.BorderLayout; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.flex; @@ -32,15 +29,7 @@ public class ComboCheckBoxStoryBoard extends StoryBoard { } private UIComboCheckBox getComboCheckBox(Object[] array) { - return new UIComboCheckBox(array, true) { - protected void setLayoutAndAddComponents() { - // 使用BorderLayout,否则默认使用的FlowLayout会让整个下拉选框使用最小Size,然后TableCell这边会出现空白 - this.setLayout(FRGUIPaneFactory.createBorderLayout()); - JPanel pane = getClickPane(); - pane.setOpaque(false); - this.add(pane, BorderLayout.CENTER); - } - }; + return new UIComboCheckBox(array, true) {}; } } diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/desensitization/model/DesensitizationCellPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/desensitization/model/DesensitizationCellPane.java index 75d8058c27..843168091f 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/desensitization/model/DesensitizationCellPane.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/desensitization/model/DesensitizationCellPane.java @@ -17,16 +17,13 @@ import com.fr.design.gui.icombocheckbox.UIComboCheckBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.FRGUIPaneFactory; import com.fr.report.cell.desensitization.CellDesensitizationBean; import com.fr.stable.StringUtils; import com.fr.third.org.apache.commons.collections4.map.HashedMap; import javax.swing.BorderFactory; -import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.SwingUtilities; -import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; import java.awt.FontMetrics; @@ -288,21 +285,6 @@ public class DesensitizationCellPane extends BasicBeanPane { super(DesensitizationCellPane.this.roleMap.values().toArray(), true); } - @Override - protected void setLayoutAndAddComponents() { - // 使用BorderLayout,否则默认使用的FlowLayout会让整个下拉选框使用最小Size,然后TableCell这边会出现空白 - this.setLayout(FRGUIPaneFactory.createBorderLayout()); - this.add(getClickPane(), BorderLayout.CENTER); - } - - @Override - protected void setEditorToolTipText(JComponent editor, String text) { - // 选项过多时,已选中的值会做省略显示处理,此处添加一个Tooltips,显示完整值 - if (text != null) { - editor.setToolTipText(text); - } - } - @Override protected void setEditorPlaceHolder(UITextField editor) { editor.setPlaceholder(this.getPlaceHolder());