Browse Source

Pull request #13250: REPORT-107972 【UI翻新】翻新底部SheetTab&东区属性面板侧边栏

Merge in DESIGN/design from ~LEVY.XIE/design:newui to newui

* commit 'b71d6f55a6bdc8e16e43d4142380eb93a80f9368':
  REPORT-107972 【UI翻新】翻新东区属性面板侧边栏
  REPORT-107972 【UI翻新】翻新底部SheetTab
newui
Levy.Xie-解安森 12 months ago
parent
commit
8b462ba29c
  1. 38
      designer-base/src/main/java/com/fine/theme/light/ui/FineLightIconSet.java
  2. 39
      designer-base/src/main/java/com/fine/theme/light/ui/PropertiesItemUI.java
  3. 2
      designer-base/src/main/java/com/fine/theme/light/ui/UIFlatTreeUI.java
  4. 45
      designer-base/src/main/java/com/fr/design/gui/icontainer/UIEastResizableContainer.java
  5. 55
      designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java
  6. 5
      designer-base/src/main/resources/com/fine/theme/icon/add.svg
  7. 5
      designer-base/src/main/resources/com/fine/theme/icon/add_disable.svg
  8. 5
      designer-base/src/main/resources/com/fine/theme/icon/drag_left.svg
  9. 5
      designer-base/src/main/resources/com/fine/theme/icon/drag_right.svg
  10. 7
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/authorityedit.svg
  11. 8
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/authorityedit_disabled.svg
  12. 7
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/authorityedit_selected.svg
  13. 6
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellattr.svg
  14. 6
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellattr_disabled.svg
  15. 8
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellattr_selected.svg
  16. 3
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellelement.svg
  17. 3
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellelement_disabled.svg
  18. 6
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellelement_selected.svg
  19. 3
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/conditionattr.svg
  20. 3
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/conditionattr_disabled.svg
  21. 5
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/conditionattr_selected.svg
  22. 7
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/configuredroles.svg
  23. 7
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/configuredroles_disabled.svg
  24. 7
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/configuredroles_selected.svg
  25. 10
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/floatelement.svg
  26. 10
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/floatelement_disabled.svg
  27. 14
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/floatelement_selected.svg
  28. 5
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/hyperLink_selected.svg
  29. 4
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/hyperlink.svg
  30. 4
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/hyperlink_disabled.svg
  31. 5
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetlib.svg
  32. 5
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetlib_disabled.svg
  33. 8
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetlib_selected.svg
  34. 10
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetsettings.svg
  35. 6
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetsettings_disabled.svg
  36. 8
      designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetsettings_selected.svg
  37. 20
      designer-base/src/main/resources/com/fine/theme/icon/sheet/add_frm.svg
  38. 24
      designer-base/src/main/resources/com/fine/theme/icon/sheet/add_frm_disable.svg
  39. 24
      designer-base/src/main/resources/com/fine/theme/icon/sheet/add_sheet.svg
  40. 20
      designer-base/src/main/resources/com/fine/theme/icon/sheet/add_sheet_disable.svg
  41. 20
      designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties
  42. 187
      designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java

38
designer-base/src/main/java/com/fine/theme/light/ui/FineLightIconSet.java

@ -31,6 +31,9 @@ public class FineLightIconSet extends AbstractIconSet {
new SvgIconSource("template_theme", "com/fine/theme/icon/template_theme.svg", true),
new SvgIconSource("remove", "com/fine/theme/icon/remove.svg", true),
new SvgIconSource("search", "com/fine/theme/icon/search.svg", true),
new SvgIconSource("add", "com/fine/theme/icon/add.svg", true),
new SvgIconSource("drag_left", "com/fine/theme/icon/drag_left.svg", true),
new SvgIconSource("drag_right", "com/fine/theme/icon/drag_right.svg", true),
// 数据集相关Icon
new SvgIconSource("database", "com/fine/theme/icon/dataset/database.svg", true),
@ -65,6 +68,41 @@ public class FineLightIconSet extends AbstractIconSet {
new SvgIconSource("refresh", "com/fine/theme/icon/filetree/refresh.svg", true),
new SvgIconSource("new_folder", "com/fine/theme/icon/filetree/new_folder.svg", true),
// 属性面板Icon
new SvgIconSource("cellattr", "com/fine/theme/icon/propertiestab/cellattr.svg", false),
new SvgIconSource("cellattr_disabled", "com/fine/theme/icon/propertiestab/cellattr_disabled.svg", false),
new SvgIconSource("cellattr_selected", "com/fine/theme/icon/propertiestab/cellattr_selected.svg", false),
new SvgIconSource("cellelement", "com/fine/theme/icon/propertiestab/cellelement.svg", false),
new SvgIconSource("cellelement_disabled", "com/fine/theme/icon/propertiestab/cellelement_disabled.svg", false),
new SvgIconSource("cellelement_selected", "com/fine/theme/icon/propertiestab/cellelement_selected.svg", false),
new SvgIconSource("conditionattr", "com/fine/theme/icon/propertiestab/conditionattr.svg", false),
new SvgIconSource("conditionattr_disabled", "com/fine/theme/icon/propertiestab/conditionattr_disabled.svg", false),
new SvgIconSource("conditionattr_selected", "com/fine/theme/icon/propertiestab/conditionattr_selected.svg", false),
new SvgIconSource("floatelement", "com/fine/theme/icon/propertiestab/floatelement.svg", false),
new SvgIconSource("floatelement_disabled", "com/fine/theme/icon/propertiestab/floatelement_disabled.svg", false),
new SvgIconSource("floatelement_selected", "com/fine/theme/icon/propertiestab/floatelement_selected.svg", false),
new SvgIconSource("hyperlink", "com/fine/theme/icon/propertiestab/hyperlink.svg", false),
new SvgIconSource("hyperlink_disabled", "com/fine/theme/icon/propertiestab/hyperlink_disabled.svg", false),
new SvgIconSource("hyperlink_selected", "com/fine/theme/icon/propertiestab/hyperlink_selected.svg", false),
new SvgIconSource("widgetlib", "com/fine/theme/icon/propertiestab/widgetlib.svg", false),
new SvgIconSource("widgetlib_disabled", "com/fine/theme/icon/propertiestab/widgetlib_disabled.svg", false),
new SvgIconSource("widgetlib_selected", "com/fine/theme/icon/propertiestab/widgetlib_selected.svg", false),
new SvgIconSource("widgetsettings", "com/fine/theme/icon/propertiestab/widgetsettings.svg", false),
new SvgIconSource("widgetsettings_disabled", "com/fine/theme/icon/propertiestab/widgetsettings_disabled.svg", false),
new SvgIconSource("widgetsettings_selected", "com/fine/theme/icon/propertiestab/widgetsettings_selected.svg", false),
// TODO: 视觉未提供,先用旧的,待视觉提供后替换
new SvgIconSource("configuredroles", "com/fine/theme/icon/propertiestab/configuredroles.svg", false),
new SvgIconSource("configuredroles_selected", "com/fine/theme/icon/propertiestab/configuredroles_selected.svg", false),
new SvgIconSource("configuredroles_disabled", "com/fine/theme/icon/propertiestab/configuredroles_disabled.svg", false),
new SvgIconSource("authorityedit", "com/fine/theme/icon/propertiestab/authorityedit.svg", false),
new SvgIconSource("authorityedit_disabled", "com/fine/theme/icon/propertiestab/authorityedit_disabled.svg", false),
new SvgIconSource("authorityedit_selected", "com/fine/theme/icon/propertiestab/authorityedit_selected.svg", false),
// sheet标签栏相关icon
new SvgIconSource("add_worksheet", "com/fine/theme/icon/sheet/add_sheet.svg", true),
// TODO: 待视觉提供后替换
new SvgIconSource("add_polysheet", "com/fine/theme/icon/sheet/add_frm.svg", true),
// CheckBox相关Icon
new SvgIconSource("checkbox_checked", "com/fine/theme/icon/checkbox/checked.svg", true),
new SvgIconSource("checkbox_unchecked", "com/fine/theme/icon/checkbox/unchecked.svg", true),

39
designer-base/src/main/java/com/fine/theme/light/ui/PropertiesItemUI.java

@ -0,0 +1,39 @@
package com.fine.theme.light.ui;
import com.formdev.flatlaf.ui.FlatButtonUI;
import com.formdev.flatlaf.ui.FlatUIUtils;
import javax.swing.JComponent;
import java.awt.*;
/**
* 东区属性面板属性按钮UI
*
* @author Levy.Xie
* @since 11.0
* Created on 2023/11/30
*/
public class PropertiesItemUI extends FlatButtonUI {
public PropertiesItemUI(boolean shared) {
super(shared);
}
@Override
protected void paintBackground(Graphics g, JComponent c) {
Color background = getBackground( c );
if( background == null ) {
return;
}
Graphics2D g2 = (Graphics2D) g.create();
try {
FlatUIUtils.setRenderingHints( g2 );
g2.setColor(FlatUIUtils.deriveColor(background, getBackgroundBase(c, true)));
float focusWidth = FlatUIUtils.getBorderFocusWidth( c );
FlatUIUtils.paintComponentBackground( g2, 0, 0, c.getWidth(), c.getHeight(), focusWidth, 0 );
} finally {
g2.dispose();
}
}
}

2
designer-base/src/main/java/com/fr/design/gui/itree/UIFlatTreeUI.java → designer-base/src/main/java/com/fine/theme/light/ui/UIFlatTreeUI.java

@ -1,4 +1,4 @@
package com.fr.design.gui.itree;
package com.fine.theme.light.ui;
import com.fine.theme.icon.LazyIcon;
import com.formdev.flatlaf.ui.FlatTreeUI;

45
designer-base/src/main/java/com/fr/design/gui/icontainer/UIEastResizableContainer.java

@ -1,23 +1,27 @@
package com.fr.design.gui.icontainer;
import com.fine.theme.icon.LazyIcon;
import com.fr.design.base.mode.DesignModeContext;
import com.fr.design.constants.UIConstants;
import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.layout.VerticalFlowLayout;
import com.fr.design.mainframe.DesignerContext;
import com.fr.design.utils.SvgDrawUtils;
import com.fr.design.utils.gui.GUICoreUtils;
import javax.swing.BorderFactory;
import javax.swing.UIManager;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Icon;
import javax.swing.border.Border;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Container;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.LayoutManager;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
@ -34,20 +38,18 @@ public class UIEastResizableContainer extends JPanel {
private int containerWidth = 240;
private int preferredWidth = 240;
private int topToolPaneHeight = 25;
private int topToolPaneHeight = 40;
private int leftPaneWidth = 42;
private JComponent leftPane;
private JComponent rightPane;
// private HorizotalToolPane horizontToolPane;
private TopToolPane topToolPane;
private static final int ARROW_MARGIN = 15;
private static final int ARROW_RANGE = 35;
// private boolean isRightPaneVisible = true;
public UIEastResizableContainer() {
this(new JPanel(), new JPanel());
@ -68,21 +70,17 @@ public class UIEastResizableContainer extends JPanel {
}
// public void setRightPaneVisible(boolean isVisible){
// this.isRightPaneVisible = isVisible;
// }
private void setPreferredWidth(int width) {
this.preferredWidth = width;
}
public UIEastResizableContainer(JComponent leftPane, JComponent rightPane) {
// setBackground(UIConstants.PROPERTY_PANE_BACKGROUND);
this.leftPane = leftPane;
this.rightPane = rightPane;
this.topToolPane = new TopToolPane();
// topToolPane.setBackground(UIConstants.PROPERTY_PANE_BACKGROUND);
topToolPane.setLayout(new VerticalFlowLayout(VerticalFlowLayout.TOP, 1, 0));
topToolPane.setBorder(BorderFactory.createMatteBorder(1 ,1, 0, 1, UIManager.getColor("East.border")));
setLayout(containerLayout);
add(topToolPane);
@ -176,12 +174,8 @@ public class UIEastResizableContainer extends JPanel {
if (topToolPane == null || rightPane == null) {
return;
}
// topToolPane.setBounds(0, 0, containerWidth, topToolPaneHeight);//0,0,10,462
topToolPane.setBounds(0, 0, leftPaneWidth, topToolPaneHeight);//0,0,10,462
leftPane.setBounds(0, topToolPaneHeight, leftPaneWidth, getHeight() - topToolPaneHeight);
// parameterPane.setBounds(20, 0, 230, getParameterPaneHeight());//10,0,230,462
rightPane.setBounds(leftPaneWidth, 0, containerWidth - leftPaneWidth, getHeight());//20,0,230,0
}
@ -322,21 +316,18 @@ public class UIEastResizableContainer extends JPanel {
@Override
public void paint(Graphics g) {
Image button;
// 绘制边框
Border border = getBorder();
if (border != null) {
border.paintBorder(this, g, 0, 0, getWidth(), getHeight());
}
Icon button;
if (containerWidth == leftPaneWidth) {
if (model == UIConstants.MODEL_NORMAL) {
button = UIConstants.DRAG_LEFT_NORMAL;
} else {
button = UIConstants.DRAG_LEFT_PRESS;
}
button = new LazyIcon("drag_left");
} else {
if (model == UIConstants.MODEL_NORMAL) {
button = UIConstants.DRAG_RIGHT_NORMAL;
} else {
button = UIConstants.DRAG_RIGHT_PRESS;
}
button = new LazyIcon("drag_right");
}
SvgDrawUtils.doDrawSVG(g, () -> SvgDrawUtils.drawImage(g, button, 10, 7, null));
button.paintIcon(this, g, 12, 12);
}
}
}

55
designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java

@ -1,9 +1,10 @@
package com.fr.design.mainframe;
import com.fine.theme.icon.LazyIcon;
import com.fine.theme.light.ui.PropertiesItemUI;
import com.formdev.flatlaf.FlatDarkLaf;
import com.formdev.flatlaf.ui.FlatLineBorder;
import com.fr.base.FRContext;
import com.fr.base.svg.IconUtils;
import com.fr.base.vcs.DesignerMode;
import com.fr.design.DesignerEnvManager;
import com.fr.design.ExtraDesignClassManager;
@ -80,9 +81,9 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
private static final int CONTAINER_WIDTH = containerWidth();
private static final int TAB_WIDTH = 42;
private static final int TAB_BUTTON_WIDTH = 40;
private static final int TAB_BUTTON_HEIGHT = 34;
private static final int TAB_BUTTON_HEIGHT = 40;
private static final int CONTENT_WIDTH = CONTAINER_WIDTH - TAB_WIDTH;
private static final int POPUP_TOOLPANE_HEIGHT = 27;
private static final int POPUP_TOOLPANE_HEIGHT = 40;
private static final int ARROW_RANGE_START = CONTENT_WIDTH - 30;
// 弹出对话框高度
private static final int POPUP_MIN_HEIGHT = 145;
@ -416,7 +417,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
// 左侧按钮面板
private void initLeftPane() {
leftPane = new JPanel();
leftPane.setLayout(new VerticalFlowLayout(VerticalFlowLayout.TOP, 1, 4));
leftPane.setLayout(new VerticalFlowLayout(VerticalFlowLayout.TOP, 1, 0));
for (PropertyItem item : propertyItemMap.values()) {
if (item.isPoppedOut() || !item.isVisible()) {
continue;
@ -767,16 +768,15 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
// 完整icon路径为 ICON_BASE_DIR + btnIconName + iconSuffix
private static final String ICON_BASE_DIR = "/com/fr/design/standard/propertiestab/";
private static final String ICON_SUFFIX_NORMAL = "_normal.svg";
private static final String ICON_SUFFIX_DISABLED = "_disabled.svg";
private static final String ICON_SUFFIX_SELECTED = "_selected.svg";
private static final String ICON_SUFFIX_NORMAL = StringUtils.EMPTY;
private static final String ICON_SUFFIX_DISABLED = "_disabled";
private static final String ICON_SUFFIX_SELECTED = "_selected";
private static final int ICON_WIDTH = 18;
private static final int ICON_HEIGHT = 18;
private String btnIconName;
private String iconBaseDir;
private String iconSuffix = ICON_SUFFIX_NORMAL; // normal, diabled, selected, 三者之一
private final Color selectedBtnBackground = new Color(0xF5F5F7);
private Color originBtnBackground;
private final Color selectedBtnBackground = UIManager.getColor("East.TabSelectedColor");
private ActionListener actionListener;
@ -967,15 +967,18 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
}
private String getBtnIconUrl() {
return getIconBaseDir() + btnIconName + iconSuffix;
}
private String getBtnIconId() {
return btnIconName + iconSuffix;
}
public void resetButtonIcon() {
button.setBackground(null);
if (iconSuffix.equals(ICON_SUFFIX_SELECTED)) {
iconSuffix = ICON_SUFFIX_NORMAL;
button.setIcon(IconUtils.readIcon(getBtnIconUrl()));
// button.setBackground(originBtnBackground);
button.setIcon(new LazyIcon(getBtnIconId()));
button.setOpaque(false);
}
}
@ -983,8 +986,8 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
public void setTabButtonSelected() {
resetPropertyIcons();
iconSuffix = ICON_SUFFIX_SELECTED;
button.setIcon(IconUtils.readIcon(getBtnIconUrl()));
// button.setBackground(selectedBtnBackground);
button.setIcon(new LazyIcon(getBtnIconId()));
button.setBackground(selectedBtnBackground);
button.setOpaque(true);
selectedItem = this;
}
@ -994,28 +997,14 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
}
private void initButton() {
button = new UIButton(IconUtils.readIcon(getBtnIconUrl())) {
button = new UIButton(new LazyIcon(getBtnIconId())) {
public Dimension getPreferredSize() {
return new Dimension(TAB_BUTTON_WIDTH, TAB_BUTTON_HEIGHT);
}
};
button.setDisabledIcon(IconUtils.readIcon(getIconBaseDir() + btnIconName + ICON_SUFFIX_DISABLED));
button.setDisabledIcon(new LazyIcon(btnIconName + ICON_SUFFIX_DISABLED));
button.set4LargeToolbarButton();
// button.setUI(new UIButtonUI() {
// @Override
// protected void doExtraPainting(UIButton b, Graphics2D g2d, int w, int h, String selectedRoles) {
// if (isPressed(b) && b.isPressedPainted()) {
// Color pressColor = isTabButtonSelected() ? UIConstants.TAB_BUTTON_PRESS_SELECTED : UIConstants.TAB_BUTTON_PRESS;
// GUIPaintUtils.fillPressed(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), pressColor);
// } else if (isRollOver(b)) {
// Color hoverColor = isTabButtonSelected() ? UIConstants.TAB_BUTTON_HOVER_SELECTED : UIConstants.TAB_BUTTON_HOVER;
// GUIPaintUtils.fillRollOver(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted(), hoverColor);
// } else if (b.isNormalPainted()) {
// GUIPaintUtils.fillNormal(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted());
// }
// }
// });
originBtnBackground = button.getBackground();
button.setUI(new PropertiesItemUI(false));
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@ -1284,9 +1273,9 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
this.propertyItem = propertyItem;
this.title = propertyItem.getTitle();
originColor = UIConstants.UI_TOOLBAR_COLOR;
this.setForeground(UIManager.getColor("DarkenedFontColor"));
contentPane = new JPanel();
// contentPane.setBackground(originColor);
contentPane.setLayout(new BorderLayout());
UILabel label = new UILabel(title);
contentPane.add(label, BorderLayout.WEST);
@ -1294,7 +1283,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
setLayout(new BorderLayout());
add(contentPane, BorderLayout.CENTER);
setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, UIConstants.TOOLBAR_BORDER_COLOR));
setBorder(BorderFactory.createMatteBorder(1, 0, 1, 0, UIManager.getColor("East.border")));
initToolButton(buttonType);
}

5
designer-base/src/main/resources/com/fine/theme/icon/add.svg

@ -0,0 +1,5 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="&#229;&#144;&#141;&#231;&#167;&#176;=&#230;&#183;&#187;&#229;&#138;&#160;, &#231;&#166;&#129;&#231;&#148;&#168;=off">
<path id="Union" d="M14.8 17.2L14.8 27.8C14.8 28.4627 15.3373 29 16 29C16.6627 29 17.2 28.4627 17.2 27.8V17.2H27.8C28.4627 17.2 29 16.6627 29 16C29 15.3373 28.4627 14.8 27.8 14.8H17.2V4.2C17.2 3.53726 16.6627 3 16 3C15.3373 3 14.8 3.53726 14.8 4.2L14.8 14.8H4.2C3.53726 14.8 3 15.3373 3 16C3 16.6627 3.53726 17.2 4.2 17.2H14.8Z" fill="#0A1C38" fill-opacity="0.9"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 598 B

5
designer-base/src/main/resources/com/fine/theme/icon/add_disable.svg

@ -0,0 +1,5 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="&#229;&#144;&#141;&#231;&#167;&#176;=&#230;&#183;&#187;&#229;&#138;&#160;, &#231;&#166;&#129;&#231;&#148;&#168;=on">
<path id="Union" d="M14.8 17.2L14.8 27.8C14.8 28.4627 15.3373 29 16 29C16.6627 29 17.2 28.4627 17.2 27.8V17.2H27.8C28.4627 17.2 29 16.6627 29 16C29 15.3373 28.4627 14.8 27.8 14.8H17.2V4.2C17.2 3.53726 16.6627 3 16 3C15.3373 3 14.8 3.53726 14.8 4.2L14.8 14.8H4.2C3.53726 14.8 3 15.3373 3 16C3 16.6627 3.53726 17.2 4.2 17.2H14.8Z" fill="#0A1C38" fill-opacity="0.29"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 598 B

5
designer-base/src/main/resources/com/fine/theme/icon/drag_left.svg

@ -0,0 +1,5 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="&#230;&#150;&#185;&#229;&#144;&#145;=&#229;&#144;&#145;&#229;&#183;&#166;">
<path id="Union" fill-rule="evenodd" clip-rule="evenodd" d="M22.9369 23.841C23.3274 24.2315 23.9606 24.2315 24.3511 23.841C24.7417 23.4505 24.7417 22.8173 24.3511 22.4268L17.2801 15.3557L24.3511 8.28467C24.7417 7.89415 24.7417 7.261 24.3511 6.87046C23.9606 6.47992 23.3275 6.47993 22.9369 6.87046L14.4516 15.3557L22.9369 23.841ZM13.8407 23.841C14.2313 24.2315 14.8644 24.2315 15.255 23.841C15.6455 23.4505 15.6455 22.8173 15.255 22.4268L8.18389 15.3557L15.255 8.28467C15.6455 7.89415 15.6455 7.261 15.255 6.87046C14.8644 6.47992 14.2313 6.47993 13.8407 6.87046L5.35546 15.3557L13.8407 23.841Z" fill="#0A1C38" fill-opacity="0.9"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 821 B

5
designer-base/src/main/resources/com/fine/theme/icon/drag_right.svg

@ -0,0 +1,5 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="&#230;&#150;&#185;&#229;&#144;&#145;=&#229;&#144;&#145;&#229;&#143;&#179;">
<path id="Union" fill-rule="evenodd" clip-rule="evenodd" d="M9.06258 25.1296C8.67206 25.5201 8.03889 25.5201 7.64837 25.1296C7.25784 24.7391 7.25785 24.1059 7.64837 23.7154L14.7194 16.6443L7.64837 9.57325C7.25784 9.18272 7.25783 8.54957 7.64837 8.15903C8.03891 7.76849 8.67206 7.76851 9.06258 8.15903L17.5479 16.6443L9.06258 25.1296ZM18.1588 25.1296C17.7683 25.5201 17.1351 25.5201 16.7446 25.1296C16.354 24.7391 16.354 24.1059 16.7446 23.7154L23.8156 16.6443L16.7446 9.57324C16.354 9.18272 16.354 8.54957 16.7446 8.15903C17.1351 7.76849 17.7682 7.76851 18.1588 8.15903L26.6441 16.6443L18.1588 25.1296Z" fill="#0A1C38" fill-opacity="0.9"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 831 B

7
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/authorityedit.svg

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>icon_属性_权限编辑_normal</title>
<g id="icon_属性_权限编辑_normal" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M9,0 C10.4036177,1.03323193 12.1509417,1.63103242 14.0038909,1.63103242 C14.3296318,1.63103242 14.7913276,1.56301051 15.3889782,1.4269667 C15.6582471,1.36562643 15.9262313,1.53422973 15.9875275,1.80350869 C15.9958164,1.83992242 16,1.87715012 16,1.91449535 L16,9.08215842 C16,9.77619285 15.7342394,10.6415117 15.2314445,11.584522 C14.7050914,12.5717347 13.9159202,13.645573 12.9492231,14.6900054 C12.1057303,15.6013435 11.1135511,16.5015748 10.1554738,17.2249214 C9.74266787,17.5365673 9.39859373,17.7693418 9.12860813,17.9378543 C8.99842505,18.0191043 8.83359313,18.0208462 8.70184453,17.9421247 C8.43538605,17.7829022 8.09483905,17.5590619 7.68650327,17.2536904 C6.75785014,16.5592065 5.78988933,15.6718988 4.96093887,14.7552039 C4.02753262,13.7230208 3.26367368,12.6506248 2.75195723,11.6539535 C2.26002664,10.695847 2,9.80651646 2,9.0821584 L2,1.91446377 C2,1.63833384 2.22387007,1.4144863 2.5,1.4144863 C2.53734105,1.4144863 2.57456457,1.41866951 2.61097419,1.42695767 C3.20863679,1.56300751 3.67034214,1.63103242 3.99609024,1.63103242 C5.84903947,1.63103242 7.59636348,1.03323193 9,0 Z M9,2.36417668 C7.4854345,3.18748636 5.7676434,3.63037957 4,3.6310317 L4,9.0821584 C4,9.45104665 4.17312121,10.0431453 4.5311549,10.7404681 C4.95854929,11.5729051 5.62212701,12.5045187 6.44436469,13.4137689 C7.1880488,14.236172 8.06071333,15.0361293 8.88429196,15.6520343 C8.91798794,15.6531625 8.93413837,15.641016 8.95037407,15.628759 C9.81328106,14.9772657 10.7176871,14.1566565 11.4814426,13.3314693 C12.3377436,12.4063102 13.0263882,11.4692542 13.4666268,10.6435552 C13.8275377,9.96665349 14,9.40512489 14,9.08215841 L14,3.63103171 C12.23235,3.63038272 10.514552,3.18748928 9,2.36417668 Z M9,5 C10.1045695,5 11,5.8954305 11,7 C11,7.7398375 10.5982846,8.38584934 10.0010775,8.73181186 L10,11 C10,11.5522847 9.55228475,12 9,12 C8.44771525,12 8,11.5522847 8,11 L7.99992752,8.73239368 C7.40216612,8.38657394 7,7.74025244 7,7 C7,5.8954305 7.8954305,5 9,5 Z" id="Combined-Shape" fill="#62646E" fill-rule="nonzero"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

8
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/authorityedit_disabled.svg

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>icon_属性_权限编辑_disabled</title>
<g id="icon_属性_权限编辑_disabled" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" opacity="0.3">
<path d="M9,5 C10.1045695,5 11,5.8954305 11,7 C11,7.7398375 10.5982846,8.38584934 10.0010775,8.73181186 L10,11 C10,11.5522847 9.55228475,12 9,12 C8.44771525,12 8,11.5522847 8,11 L7.99992752,8.73239368 C7.40216612,8.38657394 7,7.74025244 7,7 C7,5.8954305 7.8954305,5 9,5 Z" id="Combined-Shape" fill="#333334" fill-rule="nonzero"></path>
<path d="M9,2.36417668 C7.4854345,3.18748636 5.7676434,3.63037957 4,3.6310317 L4,9.0821584 C4,9.45104665 4.17312121,10.0431453 4.5311549,10.7404681 C4.95854929,11.5729051 5.62212701,12.5045187 6.44436469,13.4137689 C7.1880488,14.236172 8.06071333,15.0361293 8.88429196,15.6520343 C8.91798794,15.6531625 8.93413837,15.641016 8.95037407,15.628759 C9.81328106,14.9772657 10.7176871,14.1566565 11.4814426,13.3314693 C12.3377436,12.4063102 13.0263882,11.4692542 13.4666268,10.6435552 C13.8275377,9.96665349 14,9.40512489 14,9.08215841 L14,3.63103171 C12.23235,3.63038272 10.514552,3.18748928 9,2.36417668 Z M14.0038909,1.63103242 C14.3296318,1.63103242 14.7913276,1.56301051 15.3889782,1.4269667 C15.6582471,1.36562643 15.9262313,1.53422973 15.9875275,1.80350869 C15.9958164,1.83992242 16,1.87715012 16,1.91449535 L16,9.08215842 C16,9.77619285 15.7342394,10.6415117 15.2314445,11.584522 C14.7050914,12.5717347 13.9159202,13.645573 12.9492231,14.6900054 C12.1057303,15.6013435 11.1135511,16.5015748 10.1554738,17.2249214 C9.74266787,17.5365673 9.39859373,17.7693418 9.12860813,17.9378543 C8.99842505,18.0191043 8.83359313,18.0208462 8.70184453,17.9421247 C8.43538605,17.7829022 8.09483905,17.5590619 7.68650327,17.2536904 C6.75785014,16.5592065 5.78988933,15.6718988 4.96093887,14.7552039 C4.02753262,13.7230208 3.26367368,12.6506248 2.75195723,11.6539535 C2.26002664,10.695847 2,9.80651646 2,9.0821584 L2,1.91446377 C2,1.63833384 2.22387007,1.4144863 2.5,1.4144863 C2.53734105,1.4144863 2.57456457,1.41866951 2.61097419,1.42695767 C3.20863679,1.56300751 3.67034214,1.63103242 3.99609024,1.63103242 C5.84903947,1.63103242 7.59636348,1.03323193 9,0 C10.4036177,1.03323193 12.1509417,1.63103242 14.0038909,1.63103242 Z" id="Combined-Shape" fill="#333334" fill-rule="nonzero"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

7
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/authorityedit_selected.svg

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>icon_属性_权限编辑_selected</title>
<g id="icon_属性_权限编辑_selected" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M9,0 C10.4036177,1.03323193 12.1509417,1.63103242 14.0038909,1.63103242 C14.3296318,1.63103242 14.7913276,1.56301051 15.3889782,1.4269667 C15.6582471,1.36562643 15.9262313,1.53422973 15.9875275,1.80350869 C15.9958164,1.83992242 16,1.87715012 16,1.91449535 L16,9.08215842 C16,9.77619285 15.7342394,10.6415117 15.2314445,11.584522 C14.7050914,12.5717347 13.9159202,13.645573 12.9492231,14.6900054 C12.1057303,15.6013435 11.1135511,16.5015748 10.1554738,17.2249214 C9.74266787,17.5365673 9.39859373,17.7693418 9.12860813,17.9378543 C8.99842505,18.0191043 8.83359313,18.0208462 8.70184453,17.9421247 C8.43538605,17.7829022 8.09483905,17.5590619 7.68650327,17.2536904 C6.75785014,16.5592065 5.78988933,15.6718988 4.96093887,14.7552039 C4.02753262,13.7230208 3.26367368,12.6506248 2.75195723,11.6539535 C2.26002664,10.695847 2,9.80651646 2,9.0821584 L2,1.91446377 C2.00002254,1.63833384 2.22387007,1.4144863 2.5,1.4144863 C2.53734105,1.4144863 2.57456457,1.41866951 2.61097419,1.42695767 C3.20863679,1.56300751 3.67034214,1.63103242 3.99609024,1.63103242 C5.84903947,1.63103242 7.59636348,1.03323193 9,0 Z M9,5 C7.8954305,5 7,5.8954305 7,7 C7,7.7398375 7.40171539,8.38584934 7.9989225,8.73181186 L8,11 C8,11.5522847 8.44771525,12 9,12 C9.55228475,12 10,11.5522847 10,11 L10,11 L10.0000725,8.73239368 C10.5978339,8.38657394 11,7.74025244 11,7 C11,5.8954305 10.1045695,5 9,5 Z" id="Combined-Shape" fill="#419BF9" fill-rule="nonzero"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

6
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellattr.svg

@ -0,0 +1,6 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4H15V13.5143C15.6142 13.0071 16.2844 12.5652 17 12.1994V4H28V12.7789C28.7316 13.2559 29.4029 13.8176 30 14.4501V4C30 2.89543 29.1046 2 28 2H4C2.89543 2 2 2.89543 2 4V28C2 29.1046 2.89543 30 4 30H14.4501C13.8176 29.4029 13.2559 28.7316 12.7789 28H4V17H12.1994C12.5652 16.2844 13.0071 15.6142 13.5143 15H4V4Z" fill="#0A1C38" fill-opacity="0.9"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M31 22C31 26.9706 26.9706 31 22 31C17.0294 31 13 26.9706 13 22C13 17.0294 17.0294 13 22 13C26.9706 13 31 17.0294 31 22ZM29 22C29 25.866 25.866 29 22 29C18.134 29 15 25.866 15 22C15 18.134 18.134 15 22 15C25.866 15 29 18.134 29 22Z" fill="#0A1C38" fill-opacity="0.9"/>
<path d="M23.5 18.5C23.5 19.3284 22.8284 20 22 20C21.1716 20 20.5 19.3284 20.5 18.5C20.5 17.6716 21.1716 17 22 17C22.8284 17 23.5 17.6716 23.5 18.5Z" fill="#0A1C38" fill-opacity="0.9"/>
<path d="M21 22.5C21 21.9477 21.4477 21.5 22 21.5C22.5523 21.5 23 21.9477 23 22.5V26.5C23 27.0523 22.5523 27.5 22 27.5C21.4477 27.5 21 27.0523 21 26.5V22.5Z" fill="#0A1C38" fill-opacity="0.9"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

6
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellattr_disabled.svg

@ -0,0 +1,6 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4H15V13.5143C15.6142 13.0071 16.2844 12.5652 17 12.1994V4H28V12.7789C28.7316 13.2559 29.4029 13.8176 30 14.4501V4C30 2.89543 29.1046 2 28 2H4C2.89543 2 2 2.89543 2 4V28C2 29.1046 2.89543 30 4 30H14.4501C13.8176 29.4029 13.2559 28.7316 12.7789 28H4V17H12.1994C12.5652 16.2844 13.0071 15.6142 13.5143 15H4V4Z" fill="#0A1C38" fill-opacity="0.29"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M31 22C31 26.9706 26.9706 31 22 31C17.0294 31 13 26.9706 13 22C13 17.0294 17.0294 13 22 13C26.9706 13 31 17.0294 31 22ZM29 22C29 25.866 25.866 29 22 29C18.134 29 15 25.866 15 22C15 18.134 18.134 15 22 15C25.866 15 29 18.134 29 22Z" fill="#0A1C38" fill-opacity="0.29"/>
<path d="M23.5 18.5C23.5 19.3284 22.8284 20 22 20C21.1716 20 20.5 19.3284 20.5 18.5C20.5 17.6716 21.1716 17 22 17C22.8284 17 23.5 17.6716 23.5 18.5Z" fill="#0A1C38" fill-opacity="0.29"/>
<path d="M21 22.5C21 21.9477 21.4477 21.5 22 21.5C22.5523 21.5 23 21.9477 23 22.5V26.5C23 27.0523 22.5523 27.5 22 27.5C21.4477 27.5 21 27.0523 21 26.5V22.5Z" fill="#0A1C38" fill-opacity="0.29"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

8
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellattr_selected.svg

@ -0,0 +1,8 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M17 3.99999C17 2.89543 17.8955 2 19 2H28C29.1046 2 30 2.89543 30 4V14.4501C27.9945 12.3258 25.1521 11 22 11C20.1996 11 18.5002 11.4326 17 12.1994V3.99999ZM12.1994 17H4.00002C2.89546 17 2.00003 17.8954 2.00002 19L2 28C2 29.1046 2.89543 30 4 30H14.4501C12.3258 27.9945 11 25.1521 11 22C11 20.1996 11.4326 18.5001 12.1994 17Z" fill="#105DD1"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 31C26.9706 31 31 26.9706 31 22C31 17.0294 26.9706 13 22 13C17.0294 13 13 17.0294 13 22C13 26.9706 17.0294 31 22 31ZM23.75 17.25C23.75 18.2165 22.9665 19 22 19C21.0335 19 20.25 18.2165 20.25 17.25C20.25 16.2835 21.0335 15.5 22 15.5C22.9665 15.5 23.75 16.2835 23.75 17.25ZM22 21C21.4477 21 21 21.4477 21 22V27C21 27.5523 21.4477 28 22 28C22.5523 28 23 27.5523 23 27V22C23 21.4477 22.5523 21 22 21Z" fill="#2576EF"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 13V4H13V13H4ZM4 2C2.89543 2 2 2.89543 2 4V13C2 14.1046 2.89543 15 4 15H13C13.2044 15 13.4017 14.9693 13.5875 14.9123C13.9908 14.4341 14.4341 13.9908 14.9123 13.5875C14.9693 13.4017 15 13.2044 15 13V4C15 2.89543 14.1046 2 13 2H4Z" fill="#105DD1"/>
<path d="M19 4H28V12.7789C26.2744 11.6538 24.2136 11 22 11C20.96 11 19.9537 11.1443 19 11.4141V4Z" fill="#5493F2"/>
<path d="M11.4141 19H4V28H12.7789C11.6538 26.2744 11 24.2136 11 22C11 20.96 11.1443 19.9537 11.4141 19Z" fill="#5493F2"/>
<path d="M4 4H13V13H4V4Z" fill="#5493F2"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

3
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellelement.svg

@ -0,0 +1,3 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M28 4H22V11H28V4ZM22 20V13H28V20H22ZM28 22H22V28H28V22ZM20 20V4H4V20H20ZM13 22H20V28H13L13 22ZM11 22H4V28H11V22ZM4 2C2.89543 2 2 2.89543 2 4V28C2 29.1046 2.89543 30 4 30H28C29.1046 30 30 29.1046 30 28V4C30 2.89543 29.1046 2 28 2H4Z" fill="#0A1C38" fill-opacity="0.9"/>
</svg>

After

Width:  |  Height:  |  Size: 421 B

3
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellelement_disabled.svg

@ -0,0 +1,3 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M28 4H22V11H28V4ZM22 20V13H28V20H22ZM28 22H22V28H28V22ZM20 20V4H4V20H20ZM13 22H20V28H13L13 22ZM11 22H4V28H11V22ZM4 2C2.89543 2 2 2.89543 2 4V28C2 29.1046 2.89543 30 4 30H28C29.1046 30 30 29.1046 30 28V4C30 2.89543 29.1046 2 28 2H4Z" fill="#0A1C38" fill-opacity="0.29"/>
</svg>

After

Width:  |  Height:  |  Size: 422 B

6
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/cellelement_selected.svg

@ -0,0 +1,6 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="22" y="4" width="6" height="24" fill="#B3CFF9"/>
<rect x="4" y="28" width="6" height="24" transform="rotate(-90 4 28)" fill="#B3CFF9"/>
<rect x="4" y="4" width="18" height="18" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M28 4H22V11H28V4ZM22 20V13H28V20H22ZM28 22H22V28H28V22ZM20 20V4H4V20H20ZM13 22H20V28H13L13 22ZM11 22H4V28H11V22ZM4 2C2.89543 2 2 2.89543 2 4V28C2 29.1046 2.89543 30 4 30H28C29.1046 30 30 29.1046 30 28V4C30 2.89543 29.1046 2 28 2H4Z" fill="#105DD1"/>
</svg>

After

Width:  |  Height:  |  Size: 605 B

3
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/conditionattr.svg

@ -0,0 +1,3 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 4.00001C8 2.89544 8.89543 2.00001 10 2.00001L25 2C26.1046 2 27 2.89543 27 4V12C27 13.1046 26.1046 14 25 14L10 14C8.89543 14 8 13.1046 8 12V9.00004H5C4.44771 9.00004 4 9.44775 4 10V22.0001C4 22.5523 4.44771 23.0001 5 23.0001H8L8 20C8 18.8954 8.89543 18 10 18H28C29.1046 18 30 18.8954 30 20V28C30 29.1046 29.1046 30 28 30H10C8.89543 30 8 29.1046 8 28L8 25H4.00001C2.89544 25 2.00001 24.1046 2.00001 23L2 9.00002C2 7.89545 2.89543 7.00002 4 7.00002H8V4.00001ZM10 12V4.00001H25V12H10ZM10 28V20H28V28H10Z" fill="#0A1C38" fill-opacity="0.9"/>
</svg>

After

Width:  |  Height:  |  Size: 692 B

3
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/conditionattr_disabled.svg

@ -0,0 +1,3 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 3.99998C8 2.89541 8.89543 1.99998 10 1.99998L25 1.99997C26.1046 1.99997 27 2.8954 27 3.99997V12C27 13.1046 26.1046 14 25 14L10 14C8.89543 14 8 13.1046 8 12V9.00001H5C4.44771 9.00001 4 9.44772 4 10V22C4 22.5523 4.44771 23 5 23H8L8 20C8 18.8954 8.89543 18 10 18H28C29.1046 18 30 18.8954 30 20V28C30 29.1045 29.1046 30 28 30H10C8.89543 30 8 29.1046 8 28L8 25H4.00001C2.89544 25 2.00001 24.1045 2.00001 23L2 8.99999C2 7.89542 2.89543 6.99998 4 6.99998H8V3.99998ZM10 12V3.99998H25V12H10ZM10 28V20H28V28H10Z" fill="#0A1C38" fill-opacity="0.29"/>
</svg>

After

Width:  |  Height:  |  Size: 695 B

5
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/conditionattr_selected.svg

@ -0,0 +1,5 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 4.00001C8 2.89544 8.89543 2.00001 10 2.00001L25 2C26.1046 2 27 2.89543 27 4V12C27 13.1046 26.1046 14 25 14L10 14C8.89543 14 8 13.1046 8 12V9.00004H5C4.44771 9.00004 4 9.44775 4 10V22.0001C4 22.5523 4.44771 23.0001 5 23.0001H8L8 20C8 18.8954 8.89543 18 10 18H28C29.1046 18 30 18.8954 30 20V28C30 29.1046 29.1046 30 28 30H10C8.89543 30 8 29.1046 8 28L8 25H4.00001C2.89544 25 2.00001 24.1046 2.00001 23L2 9.00002C2 7.89545 2.89543 7.00002 4 7.00002H8V4.00001ZM10 12V4.00001H25V12H10ZM10 28V20H28V28H10Z" fill="#105DD1"/>
<rect x="10" y="4" width="15" height="8" fill="#5493F2"/>
<rect width="18" height="8" transform="matrix(1 0 0 -1 10 28)" fill="#5493F2"/>
</svg>

After

Width:  |  Height:  |  Size: 811 B

7
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/configuredroles.svg

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>icon_属性_配置角色_normal</title>
<g id="icon_属性_配置角色_normal" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M4.01632125,15.58159 C5.15138437,15.8653558 6.77993827,16 8.7625,16 C10.754965,16 12.3653254,15.8634211 13.4725502,15.5731777 C13.9124868,15.4578545 14.231192,15.3277744 14.4125,15.2119576 C14.4125,15.1652894 14.4125,15.1548971 14.4125,15.13125 L14.4125,14.85 C14.4125,14.9557804 14.4200946,14.975694 14.3765447,14.9152512 C14.2506619,14.7405383 14.0239801,14.5217976 13.7118083,14.2899231 C13.0424081,13.792707 12.0970381,13.3197127 11.0993043,12.9850097 C9.49607329,12.6883775 8.50959183,10.7841703 9.20263379,8.70504447 L9.35193628,8.25713697 L9.68578682,7.92328644 C10.4105557,7.19851756 10.925,5.80034921 10.925,4.3875 C10.925,2.77389367 10.1213412,2 8.7625,2 C7.40365881,2 6.6,2.77389367 6.6,4.3875 C6.6,5.80409932 7.11195135,7.20102415 7.83421364,7.92328644 L8.12449186,8.21356466 L8.27695346,8.59471865 C8.89523505,10.1404226 8.35007114,11.5173382 7.22038505,12.3604538 C7.04790989,12.4891767 6.87469271,12.5964931 6.6948119,12.6928413 C6.59686449,12.7453041 6.49795664,12.7935942 6.45442713,12.8138544 L6.32729717,12.8774194 L6.19245547,12.9223666 C5.20751555,13.2506799 4.28915526,13.7335539 3.65828876,14.2481897 C3.38090155,14.4744712 3.18081392,14.6895331 3.06721218,14.8679092 C3.00991736,14.9578729 3,14.9878135 3,14.9625 C3,15.1239178 3,15.1763444 3,15.2063588 C3.20221523,15.3301561 3.54752216,15.4643902 4.01632125,15.58159 Z M11.1000004,9.3375 C10.6500004,10.6875 11.4275,11.025 11.54,11.025 C14.015,11.8125 16.4125,13.3875 16.4125,14.85 L16.4125,15.4125 C16.4125,17.55 12.475,18 8.7625,18 C5.05,18 1.1125,17.55 1,15.525 L1,14.9625 C1,13.3875 3.19749994,11.8125 5.55999994,11.025 C5.78499994,10.9125 6.87000008,10.4625 6.42000008,9.3375 C5.29500008,8.2125 4.6,6.3 4.6,4.3875 C4.6,1.4625 6.5125,0 8.7625,0 C11.0125,0 12.925,1.4625 12.925,4.3875 C12.925,6.3 12.2250004,8.2125 11.1000004,9.3375 Z" id="Combined-Shape" fill="#62646E" fill-rule="nonzero"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

7
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/configuredroles_disabled.svg

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>icon_属性_配置角色_disabled</title>
<g id="icon_属性_配置角色_disabled" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" opacity="0.3">
<path d="M4.01632125,15.58159 C5.15138437,15.8653558 6.77993827,16 8.7625,16 C10.754965,16 12.3653254,15.8634211 13.4725502,15.5731777 C13.9124868,15.4578545 14.231192,15.3277744 14.4125,15.2119576 C14.4125,15.1652894 14.4125,15.1548971 14.4125,15.13125 L14.4125,14.85 C14.4125,14.9557804 14.4200946,14.975694 14.3765447,14.9152512 C14.2506619,14.7405383 14.0239801,14.5217976 13.7118083,14.2899231 C13.0424081,13.792707 12.0970381,13.3197127 11.0993043,12.9850097 C9.49607329,12.6883775 8.50959183,10.7841703 9.20263379,8.70504447 L9.35193628,8.25713697 L9.68578682,7.92328644 C10.4105557,7.19851756 10.925,5.80034921 10.925,4.3875 C10.925,2.77389367 10.1213412,2 8.7625,2 C7.40365881,2 6.6,2.77389367 6.6,4.3875 C6.6,5.80409932 7.11195135,7.20102415 7.83421364,7.92328644 L8.12449186,8.21356466 L8.27695346,8.59471865 C8.89523505,10.1404226 8.35007114,11.5173382 7.22038505,12.3604538 C7.04790989,12.4891767 6.87469271,12.5964931 6.6948119,12.6928413 C6.59686449,12.7453041 6.49795664,12.7935942 6.45442713,12.8138544 L6.32729717,12.8774194 L6.19245547,12.9223666 C5.20751555,13.2506799 4.28915526,13.7335539 3.65828876,14.2481897 C3.38090155,14.4744712 3.18081392,14.6895331 3.06721218,14.8679092 C3.00991736,14.9578729 3,14.9878135 3,14.9625 C3,15.1239178 3,15.1763444 3,15.2063588 C3.20221523,15.3301561 3.54752216,15.4643902 4.01632125,15.58159 Z M11.1000004,9.3375 C10.6500004,10.6875 11.4275,11.025 11.54,11.025 C14.015,11.8125 16.4125,13.3875 16.4125,14.85 L16.4125,15.4125 C16.4125,17.55 12.475,18 8.7625,18 C5.05,18 1.1125,17.55 1,15.525 L1,14.9625 C1,13.3875 3.19749994,11.8125 5.55999994,11.025 C5.78499994,10.9125 6.87000008,10.4625 6.42000008,9.3375 C5.29500008,8.2125 4.6,6.3 4.6,4.3875 C4.6,1.4625 6.5125,0 8.7625,0 C11.0125,0 12.925,1.4625 12.925,4.3875 C12.925,6.3 12.2250004,8.2125 11.1000004,9.3375 Z" id="Combined-Shape" fill="#333334" fill-rule="nonzero"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

7
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/configuredroles_selected.svg

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>icon_属性_配置角色_selected</title>
<g id="icon_属性_配置角色_selected" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M11.1000004,9.3375 C12.2250004,8.2125 12.925,6.3 12.925,4.3875 C12.925,1.4625 11.0125,0 8.7625,0 C6.5125,0 4.6,1.4625 4.6,4.3875 C4.6,6.3 5.29500008,8.2125 6.42000008,9.3375 C6.87000008,10.4625 5.78499994,10.9125 5.55999994,11.025 C3.19749994,11.8125 1,13.3875 1,14.9625 C1,15.4125 1,15.075 1,15.525 C1.1125,17.55 5.05,18 8.7625,18 C12.475,18 16.4125,17.55 16.4125,15.4125 C16.4125,14.9625 16.4125,15.3 16.4125,14.85 C16.4125,13.3875 14.015,11.8125 11.54,11.025 C11.4275,11.025 10.6500004,10.6875 11.1000004,9.3375 Z" id="Combined-Shape" fill="#419BF9" fill-rule="nonzero"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 961 B

10
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/floatelement.svg

@ -0,0 +1,10 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4V9H9V4H4ZM4 2C2.89543 2 2 2.89543 2 4V9C2 10.1046 2.89543 11 4 11H9C10.1046 11 11 10.1046 11 9V4C11 2.89543 10.1046 2 9 2H4Z" fill="#0A1C38" fill-opacity="0.9"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23 4V9H28V4H23ZM23 2C21.8954 2 21 2.89543 21 4V9C21 10.1046 21.8954 11 23 11H28C29.1046 11 30 10.1046 30 9V4C30 2.89543 29.1046 2 28 2H23Z" fill="#0A1C38" fill-opacity="0.9"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 23V28H9V23H4ZM4 21C2.89543 21 2 21.8954 2 23V28C2 29.1046 2.89543 30 4 30H9C10.1046 30 11 29.1046 11 28V23C11 21.8954 10.1046 21 9 21H4Z" fill="#0A1C38" fill-opacity="0.9"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23 23V28H28V23H23ZM23 21C21.8954 21 21 21.8954 21 23V28C21 29.1046 21.8954 30 23 30H28C29.1046 30 30 29.1046 30 28V23C30 21.8954 29.1046 21 28 21H23Z" fill="#0A1C38" fill-opacity="0.9"/>
<path d="M11 5.5H21V7.5H11V5.5Z" fill="#0A1C38" fill-opacity="0.9"/>
<path d="M5.5 11H7.5V21H5.5V11Z" fill="#0A1C38" fill-opacity="0.9"/>
<path d="M24.5 11H26.5V21H24.5V11Z" fill="#0A1C38" fill-opacity="0.9"/>
<path d="M11 24.5H21V26.5H11V24.5Z" fill="#0A1C38" fill-opacity="0.9"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

10
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/floatelement_disabled.svg

@ -0,0 +1,10 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4V9H9V4H4ZM4 2C2.89543 2 2 2.89543 2 4V9C2 10.1046 2.89543 11 4 11H9C10.1046 11 11 10.1046 11 9V4C11 2.89543 10.1046 2 9 2H4Z" fill="#0A1C38" fill-opacity="0.29"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23 4V9H28V4H23ZM23 2C21.8954 2 21 2.89543 21 4V9C21 10.1046 21.8954 11 23 11H28C29.1046 11 30 10.1046 30 9V4C30 2.89543 29.1046 2 28 2H23Z" fill="#0A1C38" fill-opacity="0.29"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 23V28H9V23H4ZM4 21C2.89543 21 2 21.8954 2 23V28C2 29.1046 2.89543 30 4 30H9C10.1046 30 11 29.1046 11 28V23C11 21.8954 10.1046 21 9 21H4Z" fill="#0A1C38" fill-opacity="0.29"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23 23V28H28V23H23ZM23 21C21.8954 21 21 21.8954 21 23V28C21 29.1046 21.8954 30 23 30H28C29.1046 30 30 29.1046 30 28V23C30 21.8954 29.1046 21 28 21H23Z" fill="#0A1C38" fill-opacity="0.29"/>
<path d="M11 5.5H21V7.5H11V5.5Z" fill="#0A1C38" fill-opacity="0.29"/>
<path d="M5.5 11H7.5V21H5.5V11Z" fill="#0A1C38" fill-opacity="0.29"/>
<path d="M24.5 11H26.5V21H24.5V11Z" fill="#0A1C38" fill-opacity="0.29"/>
<path d="M11 24.5H21V26.5H11V24.5Z" fill="#0A1C38" fill-opacity="0.29"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

14
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/floatelement_selected.svg

@ -0,0 +1,14 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 2C2.89543 2 2 2.89543 2 4V10C2 11.1046 2.89543 12 4 12H10C11.1046 12 12 11.1046 12 10V4C12 2.89543 11.1046 2 10 2H4Z" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4V10H10V4H4ZM2 4C2 2.89543 2.89543 2 4 2H10C11.1046 2 12 2.89543 12 4V10C12 11.1046 11.1046 12 10 12H4C2.89543 12 2 11.1046 2 10V4Z" fill="#105DD1"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 2C20.8954 2 20 2.89543 20 4V10C20 11.1046 20.8954 12 22 12H28C29.1046 12 30 11.1046 30 10V4C30 2.89543 29.1046 2 28 2H22Z" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 4V10H28V4H22ZM20 4C20 2.89543 20.8954 2 22 2H28C29.1046 2 30 2.89543 30 4V10C30 11.1046 29.1046 12 28 12H22C20.8954 12 20 11.1046 20 10V4Z" fill="#105DD1"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 20C2.89543 20 2 20.8954 2 22V28C2 29.1046 2.89543 30 4 30H10C11.1046 30 12 29.1046 12 28V22C12 20.8954 11.1046 20 10 20H4Z" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 22V28H10V22H4ZM2 22C2 20.8954 2.89543 20 4 20H10C11.1046 20 12 20.8954 12 22V28C12 29.1046 11.1046 30 10 30H4C2.89543 30 2 29.1046 2 28V22Z" fill="#105DD1"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 20C20.8954 20 20 20.8954 20 22V28C20 29.1046 20.8954 30 22 30H28C29.1046 30 30 29.1046 30 28V22C30 20.8954 29.1046 20 28 20H22Z" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 22V28H28V22H22ZM20 22C20 20.8954 20.8954 20 22 20H28C29.1046 20 30 20.8954 30 22V28C30 29.1046 29.1046 30 28 30H22C20.8954 30 20 29.1046 20 28V22Z" fill="#105DD1"/>
<path d="M12 6H20V8H12V6Z" fill="#105DD1"/>
<path d="M6 12H8V20H6V12Z" fill="#105DD1"/>
<path d="M24 12H26V20H24V12Z" fill="#105DD1"/>
<path d="M12 24H20V26H12V24Z" fill="#105DD1"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

5
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/hyperLink_selected.svg

@ -0,0 +1,5 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M2 4C2 2.89543 2.89543 2 4 2H28C29.1046 2 30 2.89543 30 4V28C30 29.1046 29.1046 30 28 30H4C2.89543 30 2 29.1046 2 28L2 4Z" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M28 4H4L4 28H28V4ZM4 2C2.89543 2 2 2.89543 2 4V28C2 29.1046 2.89543 30 4 30H28C29.1046 30 30 29.1046 30 28V4C30 2.89543 29.1046 2 28 2H4Z" fill="#105DD1"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M24.1026 7.93697C21.5068 5.31715 17.254 5.31715 14.6582 7.93697L14.0786 8.52191C11.2286 11.3982 11.2286 16.014 14.0786 18.8903L14.718 19.5356C15.1067 19.9279 15.7419 19.9329 16.1368 19.5467C16.5317 19.1606 16.5368 18.5296 16.1481 18.1373L15.5087 17.492C13.4274 15.3915 13.4274 12.0207 15.5087 9.92025L16.0883 9.33531C17.898 7.50887 20.8628 7.50887 22.6725 9.33531C24.4487 11.1279 24.4413 14.0069 22.6558 15.7904L20.6918 17.7522C20.3011 18.1425 20.3028 18.7736 20.6957 19.1617C21.0886 19.5499 21.7239 19.5481 22.1146 19.1578L24.0786 17.196C26.6396 14.6378 26.6504 10.5083 24.1026 7.93697ZM7.88185 24.0494C10.477 26.6686 14.7287 26.6686 17.3238 24.0494L17.9077 23.4601C20.7593 20.5822 20.7593 15.9637 17.9077 13.0857L17.2713 12.4434C16.8826 12.0512 16.2474 12.0462 15.8525 12.4323C15.4576 12.8184 15.4525 13.4495 15.8413 13.8418L16.4776 14.4841C18.5606 16.5862 18.5606 19.9596 16.4776 22.0618L15.8938 22.6511C14.0847 24.4768 11.121 24.4768 9.31191 22.6511C7.53633 20.8591 7.54383 17.9811 9.32871 16.1983L11.2935 14.2358C11.6843 13.8455 11.6825 13.2144 11.2897 12.8262C10.8968 12.4381 10.2615 12.4398 9.87078 12.8301L7.90596 14.7926C5.34546 17.3502 5.33471 21.4787 7.88185 24.0494Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

4
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/hyperlink.svg

@ -0,0 +1,4 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M24.1026 7.93697C21.5068 5.31715 17.254 5.31715 14.6582 7.93697L14.0786 8.52191C11.2286 11.3982 11.2286 16.014 14.0786 18.8903L14.718 19.5356C15.1067 19.9279 15.7419 19.9329 16.1368 19.5467C16.5317 19.1606 16.5368 18.5296 16.1481 18.1373L15.5087 17.492C13.4274 15.3915 13.4274 12.0207 15.5087 9.92025L16.0883 9.33531C17.898 7.50887 20.8628 7.50887 22.6725 9.33531C24.4487 11.1279 24.4413 14.0069 22.6558 15.7904L20.6918 17.7522C20.3011 18.1425 20.3028 18.7736 20.6957 19.1617C21.0886 19.5499 21.7239 19.5481 22.1146 19.1578L24.0786 17.196C26.6396 14.6378 26.6504 10.5083 24.1026 7.93697ZM7.88185 24.0494C10.477 26.6686 14.7287 26.6686 17.3238 24.0494L17.9077 23.4601C20.7593 20.5822 20.7593 15.9637 17.9077 13.0857L17.2713 12.4434C16.8826 12.0512 16.2474 12.0462 15.8525 12.4323C15.4576 12.8184 15.4525 13.4495 15.8413 13.8418L16.4776 14.4841C18.5606 16.5862 18.5606 19.9596 16.4776 22.0618L15.8938 22.6511C14.0847 24.4768 11.121 24.4768 9.31191 22.6511C7.53633 20.8591 7.54383 17.9811 9.32871 16.1983L11.2935 14.2358C11.6843 13.8455 11.6825 13.2144 11.2897 12.8262C10.8968 12.4381 10.2615 12.4398 9.87078 12.8301L7.90596 14.7926C5.34546 17.3502 5.33471 21.4787 7.88185 24.0494Z" fill="#0A1C38" fill-opacity="0.9"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.00006 2C2.8955 2 2.00007 2.89543 2.00006 3.99999L2 28C2 29.1046 2.89543 30 4 30H28C29.1046 30 30 29.1046 30 28V4C30 2.89543 29.1046 2 28 2L4.00006 2ZM3.99999 4.00001L3.99999 28L28 28L28 4.00001H3.99999Z" fill="#0A1C38" fill-opacity="0.9"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

4
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/hyperlink_disabled.svg

@ -0,0 +1,4 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M24.1026 7.93697C21.5068 5.31715 17.254 5.31715 14.6582 7.93697L14.0786 8.52191C11.2286 11.3982 11.2286 16.014 14.0786 18.8903L14.718 19.5356C15.1067 19.9279 15.7419 19.9329 16.1368 19.5467C16.5317 19.1606 16.5368 18.5296 16.1481 18.1373L15.5087 17.492C13.4274 15.3915 13.4274 12.0207 15.5087 9.92025L16.0883 9.33531C17.898 7.50887 20.8628 7.50887 22.6725 9.33531C24.4487 11.1279 24.4413 14.0069 22.6558 15.7904L20.6918 17.7522C20.3011 18.1425 20.3028 18.7736 20.6957 19.1617C21.0886 19.5499 21.7239 19.5481 22.1146 19.1578L24.0786 17.196C26.6396 14.6378 26.6504 10.5083 24.1026 7.93697ZM7.88185 24.0494C10.477 26.6686 14.7287 26.6686 17.3238 24.0494L17.9077 23.4601C20.7593 20.5822 20.7593 15.9637 17.9077 13.0857L17.2713 12.4434C16.8826 12.0512 16.2474 12.0462 15.8525 12.4323C15.4576 12.8184 15.4525 13.4495 15.8413 13.8418L16.4776 14.4841C18.5606 16.5862 18.5606 19.9596 16.4776 22.0618L15.8938 22.6511C14.0847 24.4768 11.121 24.4768 9.31191 22.6511C7.53633 20.8591 7.54383 17.9811 9.32871 16.1983L11.2935 14.2358C11.6843 13.8455 11.6825 13.2144 11.2897 12.8262C10.8968 12.4381 10.2615 12.4398 9.87078 12.8301L7.90596 14.7926C5.34546 17.3502 5.33471 21.4787 7.88185 24.0494Z" fill="#0A1C38" fill-opacity="0.29"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.00006 2C2.8955 2 2.00007 2.89543 2.00006 3.99999L2 28C2 29.1046 2.89543 30 4 30H28C29.1046 30 30 29.1046 30 28V4C30 2.89543 29.1046 2 28 2L4.00006 2ZM3.99999 4.00001L3.99999 28L28 28L28 4.00001H3.99999Z" fill="#0A1C38" fill-opacity="0.29"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

5
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetlib.svg

@ -0,0 +1,5 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4V11H28V4H4ZM2 4C2 2.89543 2.89543 2 4 2H28C29.1046 2 30 2.89543 30 4V11C30 12.1046 29.1046 13 28 13H4C2.89543 13 2 12.1046 2 11V4Z" fill="#0A1C38" fill-opacity="0.9"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 17V28H11V17H4ZM2 17C2 15.8954 2.89543 15 4 15H11C12.1046 15 13 15.8954 13 17V28C13 29.1046 12.1046 30 11 30H4C2.89543 30 2 29.1046 2 28V17Z" fill="#0A1C38" fill-opacity="0.9"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M17 17V28H28V17H17ZM15 17C15 15.8954 15.8954 15 17 15H28C29.1046 15 30 15.8954 30 17V28C30 29.1046 29.1046 30 28 30H17C15.8954 30 15 29.1046 15 28V17Z" fill="#0A1C38" fill-opacity="0.9"/>
</svg>

After

Width:  |  Height:  |  Size: 790 B

5
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetlib_disabled.svg

@ -0,0 +1,5 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4V11H28V4H4ZM2 4C2 2.89543 2.89543 2 4 2H28C29.1046 2 30 2.89543 30 4V11C30 12.1046 29.1046 13 28 13H4C2.89543 13 2 12.1046 2 11V4Z" fill="#0A1C38" fill-opacity="0.29"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 17V28H11V17H4ZM2 17C2 15.8954 2.89543 15 4 15H11C12.1046 15 13 15.8954 13 17V28C13 29.1046 12.1046 30 11 30H4C2.89543 30 2 29.1046 2 28V17Z" fill="#0A1C38" fill-opacity="0.29"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M17 17V28H28V17H17ZM15 17C15 15.8954 15.8954 15 17 15H28C29.1046 15 30 15.8954 30 17V28C30 29.1046 29.1046 30 28 30H17C15.8954 30 15 29.1046 15 28V17Z" fill="#0A1C38" fill-opacity="0.29"/>
</svg>

After

Width:  |  Height:  |  Size: 793 B

8
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetlib_selected.svg

@ -0,0 +1,8 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4V11H28V4H4ZM2 4C2 2.89543 2.89543 2 4 2H28C29.1046 2 30 2.89543 30 4V11C30 12.1046 29.1046 13 28 13H4C2.89543 13 2 12.1046 2 11V4Z" fill="#105DD1"/>
<rect x="4" y="4" width="24" height="7" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 17V28H11V17H4ZM2 17C2 15.8954 2.89543 15 4 15H11C12.1046 15 13 15.8954 13 17V28C13 29.1046 12.1046 30 11 30H4C2.89543 30 2 29.1046 2 28V17Z" fill="#105DD1"/>
<rect x="4" y="17" width="7" height="11" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M17 17V28H28V17H17ZM15 17C15 15.8954 15.8954 15 17 15H28C29.1046 15 30 15.8954 30 17V28C30 29.1046 29.1046 30 28 30H17C15.8954 30 15 29.1046 15 28V17Z" fill="#105DD1"/>
<rect x="17" y="17" width="11" height="11" fill="#5493F2"/>
</svg>

After

Width:  |  Height:  |  Size: 908 B

10
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetsettings.svg

@ -0,0 +1,10 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="&#231;&#177;&#187;&#229;&#158;&#139;=&#230;&#142;&#167;&#228;&#187;&#182;&#232;&#174;&#190;&#231;&#189;&#174;, &#231;&#186;&#191;&#230;&#128;&#167;=on, &#231;&#166;&#129;&#231;&#148;&#168;=off">
<g id="Vector">
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.00003 4C2.00003 2.89543 2.89546 2 4.00003 2H28C29.1046 2 30 2.89543 30 4V12.5C30 13.6046 29.1046 14.5 28 14.5H4.00003C2.89546 14.5 2.00003 13.6046 2.00003 12.5L2.00003 4ZM4.00002 12.5V4H28V12.5H4.00002Z" fill="#0A1C38" fill-opacity="0.9"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.00002 19.5C2.00003 18.3954 2.89546 17.5 4.00002 17.5H28C29.1046 17.5 30 18.3954 30 19.5V28C30 29.1046 29.1046 30 28 30H4C2.89543 30 2 29.1046 2 28L2.00002 19.5ZM4.00002 28V19.5H28V28H4.00002Z" fill="#0A1C38" fill-opacity="0.9"/>
</g>
<path id="Vector_2" d="M20.4403 10.5C20.6356 10.6953 20.9522 10.6953 21.1474 10.5L24.4403 7.20713C24.7553 6.89215 24.5322 6.35358 24.0868 6.35358H17.501C17.0556 6.35358 16.8325 6.89215 17.1474 7.20713L20.4403 10.5Z" fill="#0A1C38" fill-opacity="0.9"/>
<path id="Vector_3" d="M20.4403 26.1464C20.6356 26.3417 20.9522 26.3417 21.1474 26.1464L24.4403 22.8536C24.7553 22.5386 24.5322 22 24.0868 22H17.501C17.0556 22 16.8325 22.5386 17.1474 22.8536L20.4403 26.1464Z" fill="#0A1C38" fill-opacity="0.9"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

6
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetsettings_disabled.svg

@ -0,0 +1,6 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.00003 4C2.00003 2.89543 2.89546 2 4.00003 2H28C29.1046 2 30 2.89543 30 4V12.5C30 13.6046 29.1046 14.5 28 14.5H4.00003C2.89546 14.5 2.00003 13.6046 2.00003 12.5L2.00003 4ZM4.00002 12.5V4H28V12.5H4.00002Z" fill="#0A1C38" fill-opacity="0.29"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.00002 19.5C2.00003 18.3954 2.89546 17.5 4.00002 17.5H28C29.1046 17.5 30 18.3954 30 19.5V28C30 29.1046 29.1046 30 28 30H4C2.89543 30 2 29.1046 2 28L2.00002 19.5ZM4.00002 28V19.5H28V28H4.00002Z" fill="#0A1C38" fill-opacity="0.29"/>
<path d="M20.4403 10.5C20.6356 10.6953 20.9522 10.6953 21.1474 10.5L24.4403 7.20713C24.7553 6.89215 24.5322 6.35358 24.0868 6.35358H17.501C17.0556 6.35358 16.8325 6.89215 17.1474 7.20713L20.4403 10.5Z" fill="#0A1C38" fill-opacity="0.29"/>
<path d="M20.4403 26.1464C20.6356 26.3417 20.9522 26.3417 21.1474 26.1464L24.4403 22.8536C24.7553 22.5386 24.5322 22 24.0868 22H17.501C17.0556 22 16.8325 22.5386 17.1474 22.8536L20.4403 26.1464Z" fill="#0A1C38" fill-opacity="0.29"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

8
designer-base/src/main/resources/com/fine/theme/icon/propertiestab/widgetsettings_selected.svg

@ -0,0 +1,8 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.00005 3.99999C2.00005 2.89542 2.89548 2 4.00005 2H28C29.1046 2 30 2.89543 30 4V12.5C30 13.6046 29.1046 14.5 28 14.5H4C2.89543 14.5 1.99999 13.6046 2 12.5L2.00005 3.99999Z" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M28 4L4.00005 4L4 12.5H28V4ZM4.00005 2C2.89548 2 2.00005 2.89542 2.00005 3.99999L2 12.5C1.99999 13.6046 2.89543 14.5 4 14.5H28C29.1046 14.5 30 13.6046 30 12.5V4C30 2.89543 29.1046 2 28 2H4.00005Z" fill="#105DD1"/>
<path d="M20.1738 9.86354C20.354 10.0455 20.646 10.0455 20.8262 9.86355L23.864 6.79532C24.1546 6.50183 23.9488 6 23.5378 6H17.4622C17.0512 6 16.8454 6.50182 17.136 6.79532L20.1738 9.86354Z" fill="white"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.00005 19.5C2.00005 18.3954 2.89548 17.5 4.00005 17.5H28C29.1046 17.5 30 18.3954 30 19.5V28C30 29.1046 29.1046 30 28 30H4C2.89543 30 1.99999 29.1046 2 28L2.00005 19.5Z" fill="#5493F2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M28 19.5L4.00005 19.5L4 28H28V19.5ZM4.00005 17.5C2.89548 17.5 2.00005 18.3954 2.00005 19.5L2 28C1.99999 29.1046 2.89543 30 4 30H28C29.1046 30 30 29.1046 30 28V19.5C30 18.3954 29.1046 17.5 28 17.5H4.00005Z" fill="#105DD1"/>
<path d="M20.1738 25.8635C20.354 26.0455 20.646 26.0455 20.8262 25.8635L23.864 22.7953C24.1546 22.5018 23.9488 22 23.5378 22H17.4622C17.0512 22 16.8454 22.5018 17.136 22.7953L20.1738 25.8635Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

20
designer-base/src/main/resources/com/fine/theme/icon/sheet/add_frm.svg

@ -0,0 +1,20 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16 11.5C16 13.7091 14.2091 15.5 12 15.5C9.79086 15.5 8 13.7091 8 11.5C8 9.29086 9.79086 7.5 12 7.5C14.2091 7.5 16 9.29086 16 11.5Z" fill="#5AB0F8"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M2 1C1.44772 1 1 1.44772 1 2V14C1 14.5523 1.44772 15 2 15H8.42928C7.54516 14.0981 7 12.8627 7 11.5C7 8.73858 9.23858 6.5 12 6.5C12.9107 6.5 13.7646 6.74349 14.5 7.16891V5.12303C14.5 4.88244 14.4133 4.64991 14.2557 4.4681L11.5491 1.34507C11.3591 1.12591 11.0834 1 10.7934 1H8H2Z" fill="#34B3FA"/>
<path opacity="0.7" fill-rule="evenodd" clip-rule="evenodd" d="M7.82351 14.25H2C1.86193 14.25 1.75 14.1381 1.75 14V2C1.75 1.86193 1.86193 1.75 2 1.75H10.7934C10.8659 1.75 10.9348 1.78148 10.9823 1.83627L13.6889 4.9593C13.7283 5.00475 13.75 5.06289 13.75 5.12303V6.8148C14.011 6.91235 14.2617 7.03108 14.5 7.16891V5.12303C14.5 4.88244 14.4133 4.64991 14.2557 4.4681L11.5491 1.34507C11.3591 1.12591 11.0834 1 10.7934 1H2C1.44772 1 1 1.44772 1 2V14C1 14.5523 1.44772 15 2 15H8.42928C8.20427 14.7705 8.00121 14.5193 7.82351 14.25Z" fill="#1164A3"/>
<path d="M4 5.50012H6.5V8.50012H4V5.50012Z" fill="white" fill-opacity="0.7"/>
<path d="M9 9.00012H11.5V12.0001H9V9.00012Z" fill="white" fill-opacity="0.7"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M7 5.50012H11.5V6.52469C10.0702 6.66664 8.81764 7.41089 7.99954 8.50012H7V5.50012ZM7.66884 9.00012H4V12.0001H7.0247C7.00836 11.8356 7 11.6688 7 11.5C7 10.5893 7.24346 9.73553 7.66884 9.00012Z" fill="white"/>
<path d="M16 11.5C16 13.7091 14.2091 15.5 12 15.5C9.79086 15.5 8 13.7091 8 11.5C8 9.29086 9.79086 7.5 12 7.5C14.2091 7.5 16 9.29086 16 11.5Z" fill="#34B3FA"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M12 15C13.933 15 15.5 13.433 15.5 11.5C15.5 9.567 13.933 8 12 8C10.067 8 8.5 9.567 8.5 11.5C8.5 13.433 10.067 15 12 15ZM12 15.5C14.2091 15.5 16 13.7091 16 11.5C16 9.29086 14.2091 7.5 12 7.5C9.79086 7.5 8 9.29086 8 11.5C8 13.7091 9.79086 15.5 12 15.5Z" fill="#34B3FA"/>
<rect x="9.5" y="11" width="5" height="1" rx="0.5" fill="white"/>
<rect x="9.5" y="11" width="5" height="1" rx="0.5" fill="white"/>
<rect x="9.5" y="11" width="5" height="1" rx="0.5" fill="white"/>
<rect x="9.5" y="11" width="5" height="1" rx="0.5" fill="white"/>
<rect x="9.5" y="11" width="5" height="1" rx="0.5" fill="white"/>
<rect x="12.5" y="9" width="5" height="1" rx="0.5" transform="rotate(90 12.5 9)" fill="white"/>
<rect x="12.5" y="9" width="5" height="1" rx="0.5" transform="rotate(90 12.5 9)" fill="white"/>
<rect x="12.5" y="9" width="5" height="1" rx="0.5" transform="rotate(90 12.5 9)" fill="white"/>
<rect x="12.5" y="9" width="5" height="1" rx="0.5" transform="rotate(90 12.5 9)" fill="white"/>
<rect x="12.5" y="9" width="5" height="1" rx="0.5" transform="rotate(90 12.5 9)" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

24
designer-base/src/main/resources/com/fine/theme/icon/sheet/add_frm_disable.svg

@ -0,0 +1,24 @@
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Group 7883">
<path id="Subtract" fill-rule="evenodd" clip-rule="evenodd" d="M2 0C0.895431 0 0 0.895431 0 2V26C0 27.1046 0.89543 28 2 28H13.9993C12.7439 26.3287 12 24.2512 12 22C12 16.4772 16.4772 12 22 12C23.8214 12 25.5291 12.487 27 13.3378V8.24607C27 7.76488 26.8265 7.29983 26.5114 6.9362L21.0981 0.690139C20.7182 0.251814 20.1668 0 19.5867 0H14H2Z" fill="#B8BFCB"/>
<path id="Subtract_2" fill-rule="evenodd" clip-rule="evenodd" d="M13.0673 26.5H2C1.72386 26.5 1.5 26.2761 1.5 26V2C1.5 1.72386 1.72386 1.5 2 1.5H19.5867C19.7318 1.5 19.8696 1.56295 19.9646 1.67253L25.3778 7.9186C25.4566 8.00951 25.5 8.12577 25.5 8.24607V12.6296C26.0221 12.8247 26.5235 13.0622 27 13.3378V8.24607C27 7.76488 26.8265 7.29983 26.5114 6.9362L21.0981 0.690139C20.7182 0.251814 20.1668 0 19.5867 0H2C0.895431 0 0 0.895431 0 2V26C0 27.1046 0.89543 28 2 28H13.9993C13.6465 27.5304 13.3341 27.0286 13.0673 26.5Z" fill="#A3ADBD"/>
<path id="Ellipse 241" d="M30 22C30 26.4183 26.4183 30 22 30C17.5817 30 14 26.4183 14 22C14 17.5817 17.5817 14 22 14C26.4183 14 30 17.5817 30 22Z" fill="#A3ADBD"/>
<path id="Subtract_3" fill-rule="evenodd" clip-rule="evenodd" d="M14.9 13.5H10V8.1C10 8.04477 9.95523 8 9.9 8H9C7.067 8 5.5 9.567 5.5 11.5V22.9C5.5 22.9552 5.54477 23 5.6 23H9.9C9.95523 23 10 22.9552 10 22.9V18.5H12.6296C13.1473 17.1145 13.9635 15.8746 15 14.8586V13.6C15 13.5448 14.9552 13.5 14.9 13.5Z" fill="white"/>
<path id="Subtract_4" fill-rule="evenodd" clip-rule="evenodd" d="M20.5 12.1118V8.1C20.5 8.04477 20.4552 8 20.4 8H11.1C11.0448 8 11 8.04477 11 8.1V12.4C11 12.4552 11.0448 12.5 11.1 12.5H16V13.9993C17.2928 13.0282 18.8287 12.3632 20.5 12.1118Z" fill="white" fill-opacity="0.8"/>
<path id="Ellipse 241 (Stroke)" fill-rule="evenodd" clip-rule="evenodd" d="M22 29C25.866 29 29 25.866 29 22C29 18.134 25.866 15 22 15C18.134 15 15 18.134 15 22C15 25.866 18.134 29 22 29ZM22 30C26.4183 30 30 26.4183 30 22C30 17.5817 26.4183 14 22 14C17.5817 14 14 17.5817 14 22C14 26.4183 17.5817 30 22 30Z" fill="#A3ADBD"/>
<g id="Rectangle 34624604">
<rect x="17" y="21" width="10" height="2" rx="1" fill="white"/>
<rect x="17" y="21" width="10" height="2" rx="1" fill="white"/>
<rect x="17" y="21" width="10" height="2" rx="1" fill="white"/>
<rect x="17" y="21" width="10" height="2" rx="1" fill="white"/>
<rect x="17" y="21" width="10" height="2" rx="1" fill="white"/>
</g>
<g id="Rectangle 34624605">
<rect x="23" y="17" width="10" height="2" rx="1" transform="rotate(90 23 17)" fill="white"/>
<rect x="23" y="17" width="10" height="2" rx="1" transform="rotate(90 23 17)" fill="white"/>
<rect x="23" y="17" width="10" height="2" rx="1" transform="rotate(90 23 17)" fill="white"/>
<rect x="23" y="17" width="10" height="2" rx="1" transform="rotate(90 23 17)" fill="white"/>
<rect x="23" y="17" width="10" height="2" rx="1" transform="rotate(90 23 17)" fill="white"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

24
designer-base/src/main/resources/com/fine/theme/icon/sheet/add_sheet.svg

@ -0,0 +1,24 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Group 7883">
<path id="Subtract" fill-rule="evenodd" clip-rule="evenodd" d="M1 0C0.447715 0 0 0.447716 0 1V13C0 13.5523 0.447715 14 1 14H6.99963C6.37194 13.1643 6 12.1256 6 11C6 8.23858 8.23858 6 11 6C11.9107 6 12.7646 6.24349 13.5 6.66891V4.12303C13.5 3.88244 13.4133 3.64991 13.2557 3.4681L10.5491 0.345069C10.3591 0.125907 10.0834 0 9.79337 0H7H1Z" fill="#4489F1"/>
<path id="Subtract_2" fill-rule="evenodd" clip-rule="evenodd" d="M6.53365 13.25H1C0.861929 13.25 0.75 13.1381 0.75 13V1C0.75 0.861929 0.861929 0.75 1 0.75H9.79337C9.86588 0.75 9.93481 0.781476 9.98229 0.836267L12.6889 3.9593C12.7283 4.00475 12.75 4.06289 12.75 4.12303V6.3148C13.011 6.41235 13.2617 6.53108 13.5 6.66891V4.12303C13.5 3.88244 13.4133 3.64991 13.2557 3.4681L10.5491 0.345069C10.3591 0.125907 10.0834 0 9.79337 0H1C0.447715 0 0 0.447716 0 1V13C0 13.5523 0.447715 14 1 14H6.99963C6.82325 13.7652 6.66706 13.5143 6.53365 13.25Z" fill="#105DD1"/>
<path id="Ellipse 241" d="M15 11C15 13.2091 13.2091 15 11 15C8.79086 15 7 13.2091 7 11C7 8.79086 8.79086 7 11 7C13.2091 7 15 8.79086 15 11Z" fill="#2576EF"/>
<path id="Subtract_3" fill-rule="evenodd" clip-rule="evenodd" d="M7.45 6.75H5V4.05C5 4.02239 4.97761 4 4.95 4H4.5C3.5335 4 2.75 4.7835 2.75 5.75V11.45C2.75 11.4776 2.77239 11.5 2.8 11.5H4.95C4.97761 11.5 5 11.4776 5 11.45V9.25H6.3148C6.57367 8.55726 6.98177 7.93731 7.5 7.42928V6.8C7.5 6.77239 7.47761 6.75 7.45 6.75Z" fill="white"/>
<path id="Subtract_4" fill-rule="evenodd" clip-rule="evenodd" d="M10.25 6.05588V4.05C10.25 4.02239 10.2276 4 10.2 4H5.55C5.52239 4 5.5 4.02239 5.5 4.05V6.2C5.5 6.22761 5.52239 6.25 5.55 6.25H8V6.99963C8.64642 6.51409 9.41434 6.18158 10.25 6.05588Z" fill="white" fill-opacity="0.8"/>
<path id="Ellipse 241 (Stroke)" fill-rule="evenodd" clip-rule="evenodd" d="M11 14.5C12.933 14.5 14.5 12.933 14.5 11C14.5 9.067 12.933 7.5 11 7.5C9.067 7.5 7.5 9.067 7.5 11C7.5 12.933 9.067 14.5 11 14.5ZM11 15C13.2091 15 15 13.2091 15 11C15 8.79086 13.2091 7 11 7C8.79086 7 7 8.79086 7 11C7 13.2091 8.79086 15 11 15Z" fill="#2576EF"/>
<g id="Rectangle 34624604">
<rect x="8.5" y="10.5" width="5" height="1" rx="0.5" fill="white"/>
<rect x="8.5" y="10.5" width="5" height="1" rx="0.5" fill="white"/>
<rect x="8.5" y="10.5" width="5" height="1" rx="0.5" fill="white"/>
<rect x="8.5" y="10.5" width="5" height="1" rx="0.5" fill="white"/>
<rect x="8.5" y="10.5" width="5" height="1" rx="0.5" fill="white"/>
</g>
<g id="Rectangle 34624605">
<rect x="11.5" y="8.5" width="5" height="1" rx="0.5" transform="rotate(90 11.5 8.5)" fill="white"/>
<rect x="11.5" y="8.5" width="5" height="1" rx="0.5" transform="rotate(90 11.5 8.5)" fill="white"/>
<rect x="11.5" y="8.5" width="5" height="1" rx="0.5" transform="rotate(90 11.5 8.5)" fill="white"/>
<rect x="11.5" y="8.5" width="5" height="1" rx="0.5" transform="rotate(90 11.5 8.5)" fill="white"/>
<rect x="11.5" y="8.5" width="5" height="1" rx="0.5" transform="rotate(90 11.5 8.5)" fill="white"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.0 KiB

20
designer-base/src/main/resources/com/fine/theme/icon/sheet/add_sheet_disable.svg

@ -0,0 +1,20 @@
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M32 23C32 27.4183 28.4183 31 24 31C19.5817 31 16 27.4183 16 23C16 18.5817 19.5817 15 24 15C28.4183 15 32 18.5817 32 23Z" fill="#5AB0F8"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 2C2.89543 2 2 2.89543 2 4V28C2 29.1046 2.89543 30 4 30H16.8586C15.0903 28.1962 14 25.7255 14 23C14 17.4772 18.4772 13 24 13C25.8214 13 27.5291 13.487 29 14.3378V10.2461C29 9.76488 28.8265 9.29983 28.5114 8.9362L23.0981 2.69014C22.7182 2.25181 22.1668 2 21.5867 2H16H4Z" fill="#B8BFCB"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M15.647 28.5H4C3.72386 28.5 3.5 28.2761 3.5 28V4C3.5 3.72386 3.72386 3.5 4 3.5H21.5867C21.7318 3.5 21.8696 3.56295 21.9646 3.67253L27.3778 9.9186C27.4566 10.0095 27.5 10.1258 27.5 10.2461V13.6296C28.0221 13.8247 28.5235 14.0622 29 14.3378V10.2461C29 9.76488 28.8265 9.29983 28.5114 8.9362L23.0981 2.69014C22.7182 2.25181 22.1668 2 21.5867 2H4C2.89543 2 2 2.89543 2 4V28C2 29.1046 2.89543 30 4 30H16.8586C16.4085 29.5409 16.0024 29.0387 15.647 28.5Z" fill="#A3ADBD"/>
<path d="M8 11.0002H13V17.0002H8V11.0002Z" fill="white" fill-opacity="0.7"/>
<path d="M18 18.0002H23V24.0002H18V18.0002Z" fill="white" fill-opacity="0.7"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M14 11.0002H23V13.0494C20.1405 13.3333 17.6353 14.8218 15.9991 17.0002H14V11.0002ZM15.3377 18.0002H8V24.0002H14.0494C14.0167 23.6713 14 23.3376 14 23C14 21.1787 14.4869 19.4711 15.3377 18.0002Z" fill="white"/>
<path d="M32 23C32 27.4183 28.4183 31 24 31C19.5817 31 16 27.4183 16 23C16 18.5817 19.5817 15 24 15C28.4183 15 32 18.5817 32 23Z" fill="#A3ADBD"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M24 30C27.866 30 31 26.866 31 23C31 19.134 27.866 16 24 16C20.134 16 17 19.134 17 23C17 26.866 20.134 30 24 30ZM24 31C28.4183 31 32 27.4183 32 23C32 18.5817 28.4183 15 24 15C19.5817 15 16 18.5817 16 23C16 27.4183 19.5817 31 24 31Z" fill="#A3ADBD"/>
<rect x="19" y="22" width="10" height="2" rx="1" fill="white"/>
<rect x="19" y="22" width="10" height="2" rx="1" fill="white"/>
<rect x="19" y="22" width="10" height="2" rx="1" fill="white"/>
<rect x="19" y="22" width="10" height="2" rx="1" fill="white"/>
<rect x="19" y="22" width="10" height="2" rx="1" fill="white"/>
<rect x="25" y="18" width="10" height="2" rx="1" transform="rotate(90 25 18)" fill="white"/>
<rect x="25" y="18" width="10" height="2" rx="1" transform="rotate(90 25 18)" fill="white"/>
<rect x="25" y="18" width="10" height="2" rx="1" transform="rotate(90 25 18)" fill="white"/>
<rect x="25" y="18" width="10" height="2" rx="1" transform="rotate(90 25 18)" fill="white"/>
<rect x="25" y="18" width="10" height="2" rx="1" transform="rotate(90 25 18)" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

20
designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties

@ -84,7 +84,7 @@ ToggleButtonUI = com.fine.theme.light.ui.FineToggleButtonUI
ToolBarUI = com.formdev.flatlaf.ui.FlatToolBarUI
ToolBarSeparatorUI = com.formdev.flatlaf.ui.FlatToolBarSeparatorUI
ToolTipUI = com.formdev.flatlaf.ui.FlatToolTipUI
TreeUI = com.fr.design.gui.itree.UIFlatTreeUI
TreeUI = com.fine.theme.light.ui.UIFlatTreeUI
ViewportUI = com.formdev.flatlaf.ui.FlatViewportUI
@ -155,7 +155,14 @@ inactiveCaption = #bfcddb
controlHighlight = lighten($controlShadow,12%)
controlLtHighlight = lighten($controlShadow,25%)
controlDkShadow = darken($controlShadow,15%)
DarkenedFontColor = #091E40
DesignerSpaceColor = #FFF
# ---- MainWorkArea ----
CenterOuterShadowColor = #F2F4F8
ZoneBorderColor = #E6E9EF
GridColumnRowColor = #F8F9FC
#---- Button ----
@ -1054,7 +1061,16 @@ Tree.icon.openColor = @icon
Tree.hash = darken($Tree.background,10%)
#---- East ----
East.border = #E9EDF2
East.border = #DADEE7
East.TabSelectedColor = #B3CFF9
#---- South ----
South.SheetTabRadius = 6
South.SheetTabButtonGap = 20
South.SheetIconSepDistance = 16
South.SheetBarHeight = 24
South.SheetAddWidth = 6
South.SheetIconGap = 5
#---- Styles ------------------------------------------------------------------

187
designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java

@ -1,6 +1,7 @@
package com.fr.design.mainframe;
import com.fr.base.BaseUtils;
import com.fine.theme.icon.LazyIcon;
import com.formdev.flatlaf.ui.FlatUIUtils;
import com.fr.base.GraphHelper;
import com.fr.base.svg.IconUtils;
import com.fr.base.theme.ReportTheme;
@ -19,7 +20,6 @@ import com.fr.design.roleAuthority.ReportAndFSManagePane;
import com.fr.design.roleAuthority.RolesAlreadyEditedPane;
import com.fr.design.utils.gui.GUICoreUtils;
import com.fr.general.ComparatorUtils;
import com.fr.general.IOUtils;
import com.fr.main.impl.WorkBook;
import com.fr.poly.PolyDesigner;
import com.fr.report.poly.PolyWorkSheet;
@ -37,7 +37,7 @@ import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FontMetrics;
import java.awt.GradientPaint;
import java.awt.BasicStroke;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Point;
@ -49,8 +49,7 @@ import java.awt.event.ComponentListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.awt.geom.GeneralPath;
import java.awt.geom.Path2D;
import java.awt.geom.RoundRectangle2D;
import java.util.ArrayList;
import java.util.List;
@ -62,29 +61,32 @@ import java.util.List;
*/
public class SheetNameTabPane extends JComponent implements MouseListener, MouseMotionListener, RemoveListener {
private static final Color LINE_COLOR = new Color(0xababab);
private static final Color BORDER_COLOR = UIManager.getColor("ZoneBorderColor");
private static final Color BACKGROUND_COLOR = UIManager.getColor("CenterOuterShadowColor");
private static final Color SELECTED_COLOR = UIManager.getColor("DesignerSpaceColor");
private static final Color FONT_COLOR = UIManager.getColor("DarkenedFontColor");
private static final Icon ADD_WORK_SHEET = IconUtils.readIcon("/com/fr/design/standard/add_worksheet");
protected static final Icon ADD_POLY_SHEET = IconUtils.readIcon("/com/fr/design/standard/add_polysheet");
private static final Icon WORK_SHEET_ICON = IconUtils.readIcon("/com/fr/design/standard/worksheet");
private static final Icon POLY_SHEET_ICON = IconUtils.readIcon("/com/fr/design/standard/polysheet");
private static final Icon ADD_WORK_SHEET = new LazyIcon("add_worksheet");
protected static final Icon ADD_POLY_SHEET = new LazyIcon("add_polysheet");
// TODO: 视觉未提供
private static final Icon LEFT_ICON = IconUtils.readIcon("/com/fr/design/standard/prepage/pre_page");
private static final Icon RIGHT_ICON = IconUtils.readIcon("/com/fr/design/standard/nextpage/next_page");
private static final Icon DISABLED_LEFT_ICON = IconUtils.readIcon("/com/fr/design/standard/prepage/pre_page_disabled.svg");
private static final Icon DISABLED_RIGHT_ICON = IconUtils.readIcon("/com/fr/design/standard/nextpage/next_page_disabled.svg");
private static final int NUM = 10;
private static final int ICON_SEP_DISTANCE = 8;
private static final int TOOLBAR_HEIGHT = 16;
private static final int ADD_WIDTH_BY_SHEETNAME = 20; //sheet名字的文本到图标边框的距离
private static final int GRID_TOSHEET_RIGHT = 20; // 添加grid按钮右侧距sheet面板右侧的距离
private static final int POLY_TOSHEET_LEFT = 30; // 添加poly按钮左侧距sheet面板右侧的距离
private static final int POLY_TOSHEET_RIGHT = 50; // 添加poly按钮右侧距sheet面板右侧的距离
private static final int SHEET_ICON_GAP = 5; // 每个sheet图标之间的距离
private static final int GRAP = 12; // 给两个添加按钮与其他组件预留的间隔
private static final int LEFT_CORNOR = 0;// 左角落.
private static final int RIGHT_CORNOR = 0;// 右角落
private static final int ICON_SEP_DISTANCE = UIManager.getInt("South.SheetIconSepDistance");
private static final int SHEET_ICON_GAP = UIManager.getInt("South.SheetIconGap"); // 每个sheet图标之间的距离
private static final int TOOLBAR_HEIGHT = UIManager.getInt("South.SheetBarHeight");
private static final int ADD_WIDTH_BY_SHEETNAME = UIManager.getInt("South.SheetAddWidth"); //sheet名字的文本到图标边框的距离
private static final int TAB_BUTTON_GAP = UIManager.getInt("South.SheetTabButtonGap"); // 两个添加按钮与其他组件预留的间隔
private static final int SHEET_TAB_RADIUS = UIManager.getInt("South.SheetTabRadius"); // sheet标签栏圆角属性
/**
* 左移和右移按钮
@ -158,25 +160,14 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
this.addMouseListener(this);
this.addMouseMotionListener(this);
this.setBorder(null);
this.setForeground(new Color(99, 99, 99));
this.setForeground(FONT_COLOR);
this.setBackground(BACKGROUND_COLOR);
leftButton = new UIButton(LEFT_ICON) {
@Override
public Dimension getPreferredSize() {
return new Dimension(super.getPreferredSize().width, TOOLBAR_HEIGHT);
}
};
// leftButton.setUI(new UIButtonUI() {
// @Override
// protected void doExtraPainting(UIButton b, Graphics2D g2d, int w, int h, String selectedRoles) {
// if (isPressed(b) && b.isPressedPainted()) {
// GUIPaintUtils.fillPressed(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), UIConstants.PROPERTY_PANE_BACKGROUND);
// } else if (isRollOver(b)) {
// GUIPaintUtils.fillRollOver(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted(), UIConstants.PROPERTY_PANE_BACKGROUND);
// } else if (b.isNormalPainted()) {
// GUIPaintUtils.fillNormal(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted());
// }
// }
// });
leftButton.set4ToolbarButton();
leftButton.setDisabledIcon(DISABLED_LEFT_ICON);
rightButton = new UIButton(RIGHT_ICON) {
@ -185,18 +176,6 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
return new Dimension(super.getPreferredSize().width, TOOLBAR_HEIGHT);
}
};
// rightButton.setUI(new UIButtonUI() {
// @Override
// protected void doExtraPainting(UIButton b, Graphics2D g2d, int w, int h, String selectedRoles) {
// if (isPressed(b) && b.isPressedPainted()) {
// GUIPaintUtils.fillPressed(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), UIConstants.PROPERTY_PANE_BACKGROUND);
// } else if (isRollOver(b)) {
// GUIPaintUtils.fillRollOver(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted(), UIConstants.PROPERTY_PANE_BACKGROUND);
// } else if (b.isNormalPainted()) {
// GUIPaintUtils.fillNormal(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted());
// }
// }
// });
rightButton.set4ToolbarButton();
rightButton.setDisabledIcon(DISABLED_RIGHT_ICON);
buttonPane = new JPanel(new BorderLayout(3, 0));
@ -347,13 +326,11 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
public Icon getAddWorkSheet(){
return ADD_WORK_SHEET;
}
public Icon getWorkSheetIcon(){
return WORK_SHEET_ICON;
}
@Override
/**
* 画Tab
*/
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
isAuthorityEditing = DesignerMode.isAuthorityEditing();
@ -366,7 +343,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
double textHeight = this.getSize().getHeight() - 1;
widthArray = calculateWidthArray();
int operationWidth = GRAP + getAddWorkSheet().getIconWidth() + ICON_SEP_DISTANCE + ADD_POLY_SHEET.getIconWidth();
int operationWidth = TAB_BUTTON_GAP + getAddWorkSheet().getIconWidth() + ICON_SEP_DISTANCE + ADD_POLY_SHEET.getIconWidth();
double maxWidth = getWidth() - operationWidth - buttonPane.getWidth();// 最大宽度
paintBackgroundAndLine(g2d, textHeight, maxWidth, charWidth, textAscent);
checkButton(showCount < widthArray.length);
@ -389,7 +366,6 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
WorkBook workBook = reportComposite.getEditingWorkBook();
int reportCount = workBook.getReportCount();
double textX = 0;
Icon sheeticon;
for (int i = scrollIndex; i < reportCount; i++) {
lastOneIndex = i;
TemplateReport templateReport = workBook.getTemplateReport(i);
@ -398,13 +374,11 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName();
isNeedPaintedAuthority = templateReport.getWorkSheetPrivilegeControl().checkInvisible(selectedRoles);
}
sheeticon = templateReport instanceof WorkSheet ? getWorkSheetIcon() : POLY_SHEET_ICON;
String sheetName = workBook.getReportName(i);
if (i == selectedIndex) {
paintSelectedTab(g2d, sheeticon, textHeight, textX, sheetName, charWidth, textAscent, isNeedPaintedAuthority);
} else {
paintUnSelectedTab(g2d, sheeticon, textHeight, textX, sheetName, charWidth, textAscent, i, isNeedPaintedAuthority);
}
boolean selected = i == selectedIndex;
paintTab(g2d, textHeight, textX, sheetName, charWidth, textAscent, i, isNeedPaintedAuthority, selected);
int width = widthArray[i];
textX += width + 1;
addIconlocation += width;
@ -423,7 +397,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
}
// 画两个添加sheet图标
iconLocation = isOvertakeWidth ? (int) (maxWidth) : addIconlocation + GRAP;
iconLocation = isOvertakeWidth ? (int) (maxWidth) : addIconlocation + TAB_BUTTON_GAP;
paintAddButton(g2d);
}
@ -433,78 +407,29 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
ADD_POLY_SHEET.paintIcon(this, g2d, iconLocation + getAddWorkSheet().getIconWidth() + ICON_SEP_DISTANCE, 3);
}
/**
* 画选中的tab
*
* @param g2d
* @param sheeticon
* @param textHeight
* @param textX
* @param sheetName
* @param charWidth
* @param textAscent
*/
private void paintSelectedTab(Graphics2D g2d, Icon sheeticon, double textHeight, double textX, String sheetName, int charWidth, int textAscent, boolean isNeedPaintAuthority) {
double[] x = {textX, textX, textX + LEFT_CORNOR, textX + widthArray[selectedIndex] - RIGHT_CORNOR, textX + widthArray[selectedIndex] + RIGHT_CORNOR};
double[] y = {0, textHeight - LEFT_CORNOR, textHeight, textHeight, 0};
if (isNeedPaintAuthority) {
g2d.setPaint(new GradientPaint(1, 1, UIConstants.AUTHORITY_SHEET_LIGHT, 1, getHeight() - 1, UIConstants.AUTHORITY_SHEET_DARK));
} else {
g2d.setPaint(new GradientPaint(1, 1, getBackground(), 1, getHeight() - 1, getBackground()));
}
GeneralPath generalPath = new GeneralPath(Path2D.WIND_EVEN_ODD, x.length);
generalPath.moveTo((float) x[0], (float) y[0]);
for (int index = 1; index < x.length; index++) {
generalPath.lineTo((float) x[index], (float) y[index]);
private void paintTab(Graphics2D g2d, double textHeight, double textX, String sheetName, int charWidth, int textAscent, int i, boolean isNeedPaintAuthority, boolean isSelected) {
Color backgroundColor = isSelected ? SELECTED_COLOR: (isNeedPaintAuthority ? UIConstants.AUTHORITY_SHEET_UNSELECTED : getBackground());
g2d.setColor(backgroundColor);
// 绘制圆角矩形背景
if (isSelected) {
FlatUIUtils.setRenderingHints(g2d);
int width = widthArray[i];
int height = (int) textHeight + SHEET_TAB_RADIUS;
RoundRectangle2D.Double backgroundRect = new RoundRectangle2D.Double(textX, -10, width, height, SHEET_TAB_RADIUS, SHEET_TAB_RADIUS);
g2d.fill(backgroundRect);
g2d.setColor(BORDER_COLOR);
g2d.setStroke(new BasicStroke(1));
g2d.draw(backgroundRect);
}
generalPath.closePath();
g2d.fill(generalPath);
sheeticon.paintIcon(this, g2d, (int) textX + charWidth, 2);
// peter:画字符
g2d.setPaint(getForeground());
GraphHelper.drawString(g2d, sheetName, (int) textX + charWidth + 14, textAscent);
}
/**
* 画不是选中状态的tab
*
* @param g2d
* @param sheetIcon
* @param textHeight
* @param textX
* @param sheetName
* @param charWidth
* @param textAscent
* @param i
*/
private void paintUnSelectedTab(Graphics2D g2d, Icon sheetIcon, double textHeight, double textX, String sheetName, int charWidth, int textAscent, int i, boolean isNeedPaintAuthority) {
Color tabBackground = UIConstants.COMBOBOX_BTN_NORMAL;
int width = widthArray[i];
double[] x = {textX, textX, textX + LEFT_CORNOR, textX + width - RIGHT_CORNOR, textX + width, textX + width};
double[] y = {0, textHeight - LEFT_CORNOR, textHeight, textHeight, textHeight - RIGHT_CORNOR, 0};
if (isNeedPaintAuthority) {
g2d.setPaint(UIConstants.AUTHORITY_SHEET_UNSELECTED);
} else{
g2d.setPaint(getBackground());
}
GeneralPath generalPath = new GeneralPath(Path2D.WIND_EVEN_ODD, x.length);
generalPath.moveTo((float) x[0], (float) y[0]);
for (int index = 1; index < x.length; index++) {
generalPath.lineTo((float) x[index], (float) y[index]);
}
generalPath.closePath();
g2d.fill(generalPath);
g2d.setPaint(LINE_COLOR);
double startX = textX > 0 ? textX - 1 : textX;
g2d.drawRect((int)startX, 0, width, (int)textHeight);
sheetIcon.paintIcon(this, g2d, (int) textX + charWidth, 2);
g2d.setPaint(getForeground());
// REPORT-40495 之前的g2d.drawString(),在windows下默认宋体时,无法绘制韩文字符,而GraphHelper的drawString中对韩文做了额外处理,可以绘制韩文字符
GraphHelper.drawString(g2d, sheetName, (int) textX + charWidth + 14, textAscent);
// 绘制文本
g2d.setColor(getForeground());
GraphHelper.drawString(g2d, sheetName, (int) textX + charWidth + 4, textAscent + 2);
}
/**
@ -529,12 +454,8 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
for (int i = 0; i < selectedIndex; i++) {
totalWidth += widthArray[i];
}
int distance = startPointX - totalWidth;
int[] x = {(int) lastPoint.getX() - distance, (int) lastPoint.getX() - distance, (int) lastPoint.getX() - distance + width, (int) lastPoint.getX() + width - distance};
int[] y = {0, (int) (textHeight), (int) (textHeight), 0};
g2d.drawPolygon(x, y, 4);
// peter:画字符
g2d.setPaint(getForeground());
// richie:把当前选中的workSheet的名字画到鼠标拖动产生的图形上.
@ -799,7 +720,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
protected abstract class SheetInsertAction extends UpdateAction {
SheetInsertAction() {
this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Insert") + getTemplateReportType());
this.setSmallIcon(IOUtils.readIcon("/com/fr/base/images/cell/control/add.png"));
this.setSmallIcon(new LazyIcon("add"));
}
@Override
@ -838,7 +759,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
widthArray = calculateWidthArray();
int width = widthArray[i];
textX += width + 1;
int operationWidth = GRAP + getAddWorkSheet().getIconWidth() + ICON_SEP_DISTANCE + ADD_POLY_SHEET.getIconWidth();
int operationWidth = TAB_BUTTON_GAP + getAddWorkSheet().getIconWidth() + ICON_SEP_DISTANCE + ADD_POLY_SHEET.getIconWidth();
double maxWidth = getWidth() - operationWidth - buttonPane.getWidth();// 最大宽度
if (i < widthArray.length - 1 && textX + widthArray[i + 1] + 1 > maxWidth) {
isOvertakeWidth = true;
@ -890,7 +811,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
private class RemoveSheetAction extends UpdateAction {
RemoveSheetAction() {
this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"));
this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/remove.png"));
this.setSmallIcon(new LazyIcon("remove"));
}
@Override
@ -947,7 +868,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
private class RenameSheetAction extends UpdateAction {
RenameSheetAction() {
this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Rename"));
this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/rename.png"));
this.setSmallIcon(new LazyIcon("rename"));
}
@Override
@ -981,7 +902,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
private class CopySheetAction extends UpdateAction {
CopySheetAction() {
this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Copy"));
this.setSmallIcon(IOUtils.readIcon("/com/fr/design/images/m_edit/copy.png"));
this.setSmallIcon(new LazyIcon("copy"));
}
@Override

Loading…
Cancel
Save