From a1eb39fcc1c3e0b0f7442bd939adbee9c0e08483 Mon Sep 17 00:00:00 2001 From: "Leo.Qin" Date: Wed, 27 Dec 2023 10:06:53 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-107973=20=E4=B8=BB=E9=A1=B5=E5=8F=8A?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E8=A7=86=E8=A7=89=E6=A0=B7=E5=BC=8F=E7=BF=BB?= =?UTF-8?q?=E6=96=B0=20=E3=80=90=E9=97=AE=E9=A2=98=E5=8E=9F=E5=9B=A0?= =?UTF-8?q?=E3=80=91rt=20=E3=80=90=E6=94=B9=E5=8A=A8=E6=80=9D=E8=B7=AF?= =?UTF-8?q?=E3=80=91=E4=B8=BA=E6=96=B0=E5=A2=9Ekey=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fine/theme/light/ui/FineInputUI.java | 7 +++--- .../fine/theme/light/ui/FineLightIconSet.java | 2 +- .../fine/theme/light/ui/FineTooltipUI.java | 7 ++++-- .../com/fine/theme/utils/FineUIUtils.java | 17 +++++++++++-- .../search/pane/FineSearchPane.java | 24 +++++++++++------- .../fr/design/foldablepane/HeaderPane.java | 13 +++++++--- .../design/gui/frpane/UINumberDragPane.java | 8 +++--- .../com/fr/design/gui/ispinner/UISpinner.java | 25 +++++++++++++------ .../fr/design/gui/itextfield/UITextField.java | 6 ++--- .../mainframe/EastRegionContainerPane.java | 7 +++--- .../accessibles/BaseAccessibleEditor.java | 17 ++++++++----- .../theme/light/ui/laf/FineLaf.properties | 1 + 12 files changed, 90 insertions(+), 44 deletions(-) diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineInputUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineInputUI.java index 3c5200118b..2035d1c024 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineInputUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineInputUI.java @@ -1,6 +1,6 @@ package com.fine.theme.light.ui; -import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.formdev.flatlaf.ui.FlatButtonUI; import com.formdev.flatlaf.ui.FlatPanelUI; @@ -12,7 +12,7 @@ import javax.swing.plaf.ComponentUI; import java.beans.PropertyChangeEvent; /** - * Input输入框 UI类 + * Input输入框类组件 UI类 * * @author Leo.Qin * @since 11.0 @@ -22,6 +22,7 @@ public class FineInputUI extends FlatPanelUI { private static final String ENABLED = "enabled"; private static final String EDITABLE = "editable"; + private final int defaultArc = 5; public FineInputUI(boolean shared) { super(shared); @@ -44,7 +45,7 @@ public class FineInputUI extends FlatPanelUI { @Override protected void installDefaults(JPanel p) { super.installDefaults(p); - arc = FineUIScale.scale(UIManager.getInt("Input.arc")); + arc = FineUIUtils.getAndScaleInt("Input.arc", defaultArc); } @Override diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineLightIconSet.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineLightIconSet.java index 65cec1efec..b7fd93133b 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineLightIconSet.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineLightIconSet.java @@ -41,7 +41,7 @@ public class FineLightIconSet extends AbstractIconSet { // 数据集相关Icon new SvgIconSource("database", "com/fine/theme/icon/dataset/database.svg", true), new SvgIconSource("preview", "com/fine/theme/icon/dataset/preview.svg", true), - new SvgIconSource("connection", "com/fine/theme/icon/dataset/connection.svg", true), + new SvgIconSource("connection", "com/fine/theme/icon/dataset/connection.svg"), new SvgIconSource("class_table_data", "com/fine/theme/icon/dataset/class_table_data.svg", true), new SvgIconSource("data_table", "com/fine/theme/icon/dataset/data_table.svg", true), new SvgIconSource("multi", "com/fine/theme/icon/dataset/multi.svg", true), diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineTooltipUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineTooltipUI.java index 87b0295290..b839c52c9f 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineTooltipUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineTooltipUI.java @@ -1,6 +1,7 @@ package com.fine.theme.light.ui; import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.formdev.flatlaf.ui.FlatToolTipUI; import com.formdev.flatlaf.ui.FlatUIUtils; import com.fr.base.BaseUtils; @@ -26,6 +27,8 @@ import java.util.List; * Created on 2023/12/8 */ public class FineTooltipUI extends FlatToolTipUI { + private final int defaultMaxWidth = 392; + private final int defaultArc = 5; private int maxWidth; private int arc; private List lines; @@ -70,8 +73,8 @@ public class FineTooltipUI extends FlatToolTipUI { protected void installDefaults(JComponent c) { super.installDefaults(c); c.setOpaque(false); - arc = FineUIScale.scale(UIManager.getInt("ToolTip.arc")); - maxWidth = FineUIScale.scale(UIManager.getInt("ToolTip.maxWidth")); + arc = FineUIScale.scale(FineUIUtils.getAndScaleInt("ToolTip.arc", defaultArc)); + maxWidth = FineUIUtils.getAndScaleInt("ToolTip.maxWidth", defaultMaxWidth); } diff --git a/designer-base/src/main/java/com/fine/theme/utils/FineUIUtils.java b/designer-base/src/main/java/com/fine/theme/utils/FineUIUtils.java index 25db5c2282..e3065c16fc 100644 --- a/designer-base/src/main/java/com/fine/theme/utils/FineUIUtils.java +++ b/designer-base/src/main/java/com/fine/theme/utils/FineUIUtils.java @@ -6,12 +6,12 @@ import com.fr.value.AtomicClearableLazyValue; import javax.swing.UIManager; import java.awt.Color; +import java.awt.Composite; import java.awt.Graphics; import java.awt.Graphics2D; -import java.awt.Insets; -import java.awt.Composite; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; +import java.awt.Insets; import java.awt.geom.RoundRectangle2D; import java.lang.reflect.Field; @@ -142,6 +142,19 @@ public class FineUIUtils { return (margin != null) ? margin : defaultInsets; } + /** + * 通过key获取UI的边距,如果没有则使用后备边距,并根据dpi进行缩放 + * + * @param key 边距key + * @param defaultInsets 后备边距 + * @return 根据dpi缩放后的边距 + */ + public static Insets getAndScaleUIInsets(String key, Insets defaultInsets) { + Insets margin = UIManager.getInsets(key); + Insets insets = (margin != null) ? margin : defaultInsets; + return FineUIScale.scale(insets); + } + /** * 绘制混合图像,含圆角、背景色设置 * diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/management/search/pane/FineSearchPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/management/search/pane/FineSearchPane.java index 18af10fb6b..9f3f98dfbe 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/management/search/pane/FineSearchPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/management/search/pane/FineSearchPane.java @@ -2,7 +2,7 @@ package com.fr.design.data.datapane.management.search.pane; import com.fine.theme.icon.LazyIcon; import com.fine.theme.light.ui.FineInputUI; -import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.fr.design.event.HoverAware; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ilable.UILabel; @@ -10,7 +10,6 @@ import com.fr.design.gui.itextfield.UITextField; import javax.swing.BorderFactory; import javax.swing.JPanel; -import javax.swing.UIManager; import javax.swing.event.DocumentListener; import java.awt.BorderLayout; import java.awt.Insets; @@ -28,14 +27,23 @@ import java.awt.event.MouseEvent; */ public class FineSearchPane extends JPanel implements HoverAware { + private final Insets defaultLabelInsets = new Insets(3, 6, 3, 4); + private final Insets defaultButtonInsets = new Insets(4, 4, 4, 4); private UITextField searchTextField; private UIButton clearButton; + + private static final String UI_CLASS_ID = "InputUI"; + + @Override + public String getUIClassID() { + return UI_CLASS_ID; + } + private boolean hover; public FineSearchPane() { this.setLayout(new BorderLayout()); - this.setUI(new FineInputUI(false)); initComponents(); } @@ -43,9 +51,8 @@ public class FineSearchPane extends JPanel implements HoverAware { private void initComponents() { // 左侧搜索图标 UILabel searchLabel = new UILabel(new LazyIcon("search")); - Insets labelInsets = UIManager.getInsets("SearchPanel.labelBorderInsets"); - Insets scaledInsets = FineUIScale.scale(labelInsets); - searchLabel.setBorder(BorderFactory.createEmptyBorder(scaledInsets.top, scaledInsets.left, scaledInsets.bottom, scaledInsets.right)); + Insets labelInsets = FineUIUtils.getAndScaleUIInsets("SearchPanel.labelBorderInsets", defaultLabelInsets); + searchLabel.setBorder(BorderFactory.createEmptyBorder(labelInsets.top, labelInsets.left, labelInsets.bottom, labelInsets.right)); // 中间输入框 searchTextField = new UITextField(); @@ -68,9 +75,8 @@ public class FineSearchPane extends JPanel implements HoverAware { // 右侧返回图标 clearButton = new UIButton(new LazyIcon("clear")); clearButton.setUI(new FineInputUI.FineInputButtonUI(false)); - Insets buttonInsets = UIManager.getInsets("SearchPanel.buttonBorderInsets"); - Insets buttonScaledInsets = FineUIScale.scale(buttonInsets); - clearButton.setBorder(BorderFactory.createEmptyBorder(buttonScaledInsets.top, buttonScaledInsets.left, buttonScaledInsets.bottom, buttonScaledInsets.right)); + Insets buttonInsets = FineUIUtils.getAndScaleUIInsets("SearchPanel.buttonBorderInsets", defaultButtonInsets); + clearButton.setBorder(BorderFactory.createEmptyBorder(buttonInsets.top, buttonInsets.left, buttonInsets.bottom, buttonInsets.right)); this.add(searchLabel, BorderLayout.WEST); this.add(searchTextField, BorderLayout.CENTER); diff --git a/designer-base/src/main/java/com/fr/design/foldablepane/HeaderPane.java b/designer-base/src/main/java/com/fr/design/foldablepane/HeaderPane.java index 9d53782d2c..cefeda51f1 100644 --- a/designer-base/src/main/java/com/fr/design/foldablepane/HeaderPane.java +++ b/designer-base/src/main/java/com/fr/design/foldablepane/HeaderPane.java @@ -2,6 +2,7 @@ package com.fr.design.foldablepane; import com.fine.theme.icon.LazyIcon; import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.fr.base.GraphHelper; import javax.swing.BorderFactory; @@ -24,6 +25,9 @@ import java.awt.Insets; */ public class HeaderPane extends JPanel { private static final long serialVersionUID = 1L; + private final Insets defaultInsets = new Insets(0, 6, 0, 6); + private final int defaultWidth = 248; + private final int defaultHeight = 24; private int headWidth; private int headHeight; private Color bgColor; @@ -88,12 +92,13 @@ public class HeaderPane extends JPanel { this.isShow = true; triangleDown = new LazyIcon("triangle_down"); triangleRight = new LazyIcon("triangle_right"); - this.setPreferredSize(FineUIScale.scale(new Dimension(UIManager.getInt("HeaderPane.width"), UIManager.getInt("HeaderPane.height")))); - Insets insets = UIManager.getInsets("ExpandablePane.HeaderPane.borderInsets"); - Insets scaledInsets = FineUIScale.scale(insets); + int width = FineUIUtils.getAndScaleInt("HeaderPane.width", defaultWidth); + int height = FineUIUtils.getAndScaleInt("HeaderPane.height", defaultHeight); + this.setPreferredSize(new Dimension(width, height)); + Insets insets = FineUIUtils.getAndScaleUIInsets("ExpandablePane.HeaderPane.borderInsets", defaultInsets); this.setForeground(UIManager.getColor("ExpandablePane.HeaderPane.foreground")); this.setFont(getFont().deriveFont(Font.BOLD)); - this.setBorder(BorderFactory.createEmptyBorder(scaledInsets.top, scaledInsets.left, scaledInsets.bottom, scaledInsets.right)); + this.setBorder(BorderFactory.createEmptyBorder(insets.top, insets.left, insets.bottom, insets.right)); } public HeaderPane(Color bgColor, String title, int headHeight) { diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java index 7314025724..99bc1205a5 100644 --- a/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java @@ -3,8 +3,8 @@ package com.fr.design.gui.frpane; import com.fr.design.beans.BasicBeanPane; import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameObserver; +import com.fr.design.gui.islider.UISlider; import com.fr.design.gui.ispinner.UISpinner; -import com.fr.design.gui.style.NumberDragBar; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; @@ -14,7 +14,7 @@ import java.awt.Dimension; public class UINumberDragPane extends BasicBeanPane implements GlobalNameObserver { private static final long serialVersionUID = -8681716725163358249L; - private NumberDragBar dragBar; + private UISlider dragBar; private UISpinner spinner; private boolean isEditing = false; private String numberDargPaneName = ""; @@ -33,7 +33,9 @@ public class UINumberDragPane extends BasicBeanPane implements GlobalNam } public UINumberDragPane(double minValue, double maxValue, double dierta) { - dragBar = new NumberDragBar((int) minValue, (int) maxValue); + dragBar = new UISlider((int) minValue, (int) maxValue); + dragBar.setPaintLabels(true); + dragBar.setMajorTickSpacing((int) maxValue); spinner = createUISpinner(minValue, maxValue, dierta); spinner.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")); this.setLayout(new BorderLayout(4, 0)); diff --git a/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java b/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java index b956dbf5e7..08ef5d8101 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java +++ b/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java @@ -3,6 +3,7 @@ package com.fr.design.gui.ispinner; import com.fine.theme.icon.LazyIcon; import com.fine.theme.light.ui.FineInputUI; import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameObserver; import com.fr.design.event.HoverAware; @@ -44,6 +45,8 @@ import java.awt.event.MouseWheelListener; */ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, HoverAware { + private final Insets defaultInsets = new Insets(0, 6, 0, 6); + private final int defaultButtonSize = 24; protected double value; private static final int DEFAULT_NUMBERFIELD_COLUMNS = 2; private UINumberField textField; @@ -64,6 +67,13 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, private boolean hover; + private static final String UI_CLASS_ID = "InputUI"; + + @Override + public String getUIClassID() { + return UI_CLASS_ID; + } + public UISpinner() { } @@ -89,7 +99,6 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, this.dierta = dierta; initComponents(); iniListener(); - setUI(FineInputUI.createUI(this)); } private void iniListener() { @@ -272,6 +281,10 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, textField = initNumberField(); textField.setMaxValue(maxValue); textField.setMinValue(minValue); + Insets insets = FineUIUtils.getAndScaleUIInsets("InputTextField.borderInsets", defaultInsets); + textField.setBorder(BorderFactory.createEmptyBorder(insets.top, insets.left, insets.bottom, insets.right)); + textField.setOpaque(false); + setValue(value); preButton = createArrowButton(new LazyIcon("up_arrow_12")); nextButton = createArrowButton(new LazyIcon("down_arrow_12")); @@ -283,9 +296,9 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, arrowPane.add(nextButton); arrowPane.setOpaque(false); - int buttonWidth = UIManager.getInt("InputButton.width"); - int buttonHeight = UIManager.getInt("InputButton.height"); - arrowPane.setPreferredSize(FineUIScale.scale(new Dimension(buttonWidth, buttonHeight))); + int buttonWidth = FineUIUtils.getAndScaleInt("InputButton.width", defaultButtonSize); + int buttonHeight = FineUIUtils.getAndScaleInt("InputButton.height", defaultButtonSize); + arrowPane.setPreferredSize(new Dimension(buttonWidth, buttonHeight)); add(arrowPane, BorderLayout.EAST); componentInitListeners(); } @@ -370,10 +383,6 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, return false; } }; - Insets insets = UIManager.getInsets("InputTextField.borderInsets"); - Insets scaledInsets = FineUIScale.scale(insets); - numberField.setBorder(BorderFactory.createEmptyBorder(scaledInsets.top, scaledInsets.left, scaledInsets.bottom, scaledInsets.right)); - numberField.setOpaque(false); return numberField; } diff --git a/designer-base/src/main/java/com/fr/design/gui/itextfield/UITextField.java b/designer-base/src/main/java/com/fr/design/gui/itextfield/UITextField.java index 7c33768230..b7bb6a5453 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itextfield/UITextField.java +++ b/designer-base/src/main/java/com/fr/design/gui/itextfield/UITextField.java @@ -1,6 +1,6 @@ package com.fr.design.gui.itextfield; -import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.fr.common.inputevent.InputEventBaseOnOS; import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameObserver; @@ -14,7 +14,6 @@ import com.fr.stable.StringUtils; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextField; -import javax.swing.UIManager; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; import javax.swing.text.Document; @@ -33,6 +32,7 @@ import java.awt.event.MouseEvent; * @since xxx */ public class UITextField extends JTextField implements UIObserver, GlobalNameObserver, HoverAware { + private final int defaultHeight = 24; private boolean isBorderPainted = true; private boolean isRoundBorder = true; private int rectDirection = Constants.NULL; @@ -243,6 +243,6 @@ public class UITextField extends JTextField implements UIObserver, GlobalNameObs @Override public Dimension getPreferredSize() { - return new Dimension(super.getPreferredSize().width, FineUIScale.scale(UIManager.getInt("Input.height"))); + return new Dimension(super.getPreferredSize().width, FineUIUtils.getAndScaleInt("Input.height", defaultHeight)); } } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java b/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java index 1f489489db..14a8f216fe 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java @@ -3,6 +3,7 @@ package com.fr.design.mainframe; import com.fine.theme.icon.LazyIcon; import com.fine.theme.light.ui.RectangleButtonUI; import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.formdev.flatlaf.FlatDarkLaf; import com.formdev.flatlaf.ui.FlatLineBorder; import com.fr.base.FRContext; @@ -1171,6 +1172,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer { // 弹出属性面板的工具条 private class PopupToolPane extends JPanel { private final UIButton popupButton; + private final Insets defaultInsets = new Insets(0, 10, 0, 10); private String title; private PropertyItem propertyItem; private String buttonType; @@ -1263,9 +1265,8 @@ public class EastRegionContainerPane extends UIEastResizableContainer { popupButton = createPopupButton(buttonType); contentPane.add(popupButton, BorderLayout.EAST); - Insets insets = UIManager.getInsets("PopupToolPane.borderInsets"); - Insets scaledInsets = FineUIScale.scale(insets); - contentPane.setBorder(new EmptyBorder(scaledInsets.top, scaledInsets.left, scaledInsets.bottom, scaledInsets.right)); + Insets insets = FineUIUtils.getAndScaleUIInsets("PopupToolPane.borderInsets", defaultInsets); + contentPane.setBorder(new EmptyBorder(insets.top, insets.left, insets.bottom, insets.right)); setLayout(new BorderLayout()); add(contentPane, BorderLayout.CENTER); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java b/designer-base/src/main/java/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java index 9c8c8e2a5b..99a1dc1f66 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java @@ -3,6 +3,7 @@ package com.fr.design.mainframe.widget.accessibles; import com.fine.theme.icon.LazyIcon; import com.fine.theme.light.ui.FineInputUI; import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.fr.design.Exception.ValidationException; import com.fr.design.designer.properties.Decoder; import com.fr.design.designer.properties.Encoder; @@ -39,6 +40,7 @@ import java.util.ArrayList; */ public class BaseAccessibleEditor extends BasicPane implements AccessibleEditor, HoverAware { + private final Insets defaultInsets = new Insets(0, 6, 0, 6); private ArrayList listeners; private boolean showButton; protected Encoder encoder; @@ -47,6 +49,13 @@ public class BaseAccessibleEditor extends BasicPane implements AccessibleEditor, protected ITextComponent txtValue; private boolean hover; + private static final String UI_CLASS_ID = "InputUI"; + + @Override + public String getUIClassID() { + return UI_CLASS_ID; + } + public BaseAccessibleEditor(Encoder enc, Decoder dec, boolean showBtn) { listeners = new ArrayList(); this.showButton = showBtn; @@ -56,12 +65,8 @@ public class BaseAccessibleEditor extends BasicPane implements AccessibleEditor, initListener(); txtValue.setEditable(dec != null); ((JComponent) txtValue).setOpaque(false); - Insets insets = UIManager.getInsets("InputTextField.borderInsets"); - Insets scaledInsets = FineUIScale.scale(insets); - ((JComponent) txtValue).setBorder(BorderFactory.createEmptyBorder(scaledInsets.top, scaledInsets.left, scaledInsets.bottom, scaledInsets.right)); - - this.setUI(FineInputUI.createUI(this)); - setPreferredSize(new Dimension(getPreferredSize().width, FineUIScale.scale(UIManager.getInt("Input.height")))); + Insets insets = FineUIUtils.getAndScaleUIInsets("InputTextField.borderInsets", defaultInsets); + ((JComponent) txtValue).setBorder(BorderFactory.createEmptyBorder(insets.top, insets.left, insets.bottom, insets.right)); } private void initListener() { diff --git a/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLaf.properties b/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLaf.properties index 5e1601c8fd..adb218b4a6 100644 --- a/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLaf.properties +++ b/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLaf.properties @@ -46,4 +46,5 @@ ViewportUI=com.formdev.flatlaf.ui.FlatViewportUI HeadGroupUI=com.fine.theme.light.ui.FineHeadGroupUI ButtonGroupUI= com.fine.theme.light.ui.FineButtonGroupUI SelectBoxUI= com.fine.theme.light.ui.FineSelectBoxUI +InputUI=com.fine.theme.light.ui.FineInputUI GradientBarUI=com.fine.theme.light.ui.FineGradientBarUI \ No newline at end of file