diff --git a/designer-base/src/main/resources/com/fine/theme/icon/insert/auto_chart_disabled.svg b/designer-base/src/main/resources/com/fine/theme/icon/insert/auto_chart_disabled.svg
new file mode 100644
index 0000000000..565ad5c907
--- /dev/null
+++ b/designer-base/src/main/resources/com/fine/theme/icon/insert/auto_chart_disabled.svg
@@ -0,0 +1,6 @@
+
diff --git a/designer-base/src/main/resources/com/fine/theme/icon/insert/auto_chart_normal.svg b/designer-base/src/main/resources/com/fine/theme/icon/insert/auto_chart_normal.svg
new file mode 100644
index 0000000000..2361fbbd55
--- /dev/null
+++ b/designer-base/src/main/resources/com/fine/theme/icon/insert/auto_chart_normal.svg
@@ -0,0 +1,6 @@
+
diff --git a/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json b/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json
index 3e73413584..cce6c03234 100644
--- a/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json
+++ b/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json
@@ -511,6 +511,10 @@
"normal": "alphafine/alphaFine_template.svg",
"disable": "alphafine/alphaFine_template_disable.svg",
"white": "alphafine/alphaFine_template_white.svg"
+ },
+ "auto_chart": {
+ "normal": "insert/auto_chart_normal.svg",
+ "disable": "insert/auto_chart_disabled.svg"
}
}
}
diff --git a/designer-chart/src/main/java/com/fr/design/chart/AutoChartTypePane.java b/designer-chart/src/main/java/com/fr/design/chart/AutoChartTypePane.java
index 4aaf6a0281..2e07a6e1ae 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/AutoChartTypePane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/AutoChartTypePane.java
@@ -1,9 +1,9 @@
package com.fr.design.chart;
+import com.fine.theme.utils.FineUIStyle;
import com.fr.base.chart.chartdata.CallbackEvent;
import com.fr.chart.chartattr.ChartCollection;
import com.fr.design.chart.auto.AutoTypeCalculate;
-import com.fr.design.data.DesignTableDataManager;
import com.fr.design.data.datapane.TableDataComboBox;
import com.fr.design.data.tabledata.wrapper.TableDataWrapper;
import com.fr.design.dialog.FineJOptionPane;
@@ -18,6 +18,7 @@ import com.fr.design.utils.gui.GUICoreUtils;
import com.fr.general.GeneralUtils;
import com.fr.log.FineLoggerFactory;
import com.fr.plugin.chart.vanchart.VanChart;
+import com.formdev.flatlaf.util.ScaledEmptyBorder;
import javax.swing.BorderFactory;
import javax.swing.DefaultListCellRenderer;
@@ -39,6 +40,7 @@ import java.util.List;
import java.util.Map;
import java.util.concurrent.CancellationException;
import java.awt.Color;
+import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
@@ -46,6 +48,11 @@ import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
+import static com.fine.swing.ui.layout.Layouts.cell;
+import static com.fine.swing.ui.layout.Layouts.row;
+import static com.fine.swing.ui.layout.Layouts.flex;
+import static com.fine.swing.ui.layout.Layouts.column;
+
/**
* @author Bjorn
* @version 10.0
@@ -93,6 +100,7 @@ public class AutoChartTypePane extends ChartWizardPane implements CallbackEvent
this.add(splitPane);
}
+
ListCellRenderer iconCellRenderer = new DefaultListCellRenderer() {
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
@@ -112,26 +120,27 @@ public class AutoChartTypePane extends ChartWizardPane implements CallbackEvent
}
};
+
private JPanel createContentPane() {
- JPanel panel = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
-
- JPanel tableDataPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
- panel.add(tableDataPane);
- tableDataPane.add(new UILabel(Toolkit.i18nText("Fine-Design_Chart_Table_Data") + ":"));
- tableNameComboBox.setPreferredSize(new Dimension(126, 20));
- tableDataPane.add(tableNameComboBox);
-
- JPanel areaNamePane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
- panel.add(areaNamePane);
- areaNamePane.add(new UILabel(Toolkit.i18nText("Fine-Design_Chart_Data_Field") + ":"));
- areaNamePane.add(dataFieldBox);
- panel.add(refreshButton);
- panel.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
- return panel;
+ JPanel contentPane = new JPanel(new BorderLayout());
+ contentPane.add(column(
+ row(10,
+ cell(new UILabel(Toolkit.i18nText("Fine-Design_Chart_Table_Data"))),
+ cell(tableNameComboBox).weight(1),
+ cell(new UILabel(Toolkit.i18nText("Fine-Design_Chart_Data_Field"))),
+ cell(dataFieldBox).weight(1),
+ cell(refreshButton),
+ flex(1)
+ ),
+ flex()
+ ).with(it -> it.setBorder(new ScaledEmptyBorder(10, 10, 10, 10))).getComponent());
+
+ return contentPane;
}
private void initButtonGroup() {
dataFieldBox = new UIComboCheckBox(new Object[0]);
+ dataFieldBox.getClickPane().setOpaque(false);
dataFieldBox.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@@ -180,6 +189,7 @@ public class AutoChartTypePane extends ChartWizardPane implements CallbackEvent
private void initRefreshLabel() {
refreshButton = new UIButton(Toolkit.i18nText("Fine-Design_Chart_Recommend"));
+ FineUIStyle.setStyle(refreshButton, FineUIStyle.STYLE_PRIMARY);
refreshButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/type/AbstractVanChartTypePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/type/AbstractVanChartTypePane.java
index ef58809795..61668a9278 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/designer/type/AbstractVanChartTypePane.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/designer/type/AbstractVanChartTypePane.java
@@ -1,7 +1,9 @@
package com.fr.van.chart.designer.type;
+import com.fine.theme.icon.LazyIcon;
import com.fr.base.BaseUtils;
import com.fr.base.chart.chartdata.TopDefinitionProvider;
+import com.fr.base.svg.IconUtils;
import com.fr.chart.base.AttrFillStyle;
import com.fr.chart.chartattr.Chart;
import com.fr.chart.chartattr.Legend;
@@ -61,7 +63,7 @@ public abstract class AbstractVanChartTypePane extends AbstractChartTypePane