From 3d08f416a315c569425b56da9f6d46766c8650e9 Mon Sep 17 00:00:00 2001 From: Carlson Date: Wed, 9 Aug 2023 14:04:02 +0800 Subject: [PATCH 01/10] =?UTF-8?q?REPORT-102520=20fix:=E9=9D=A2=E6=9D=BF?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chart/gui/data/NormalChartDataPane.java | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java index ba1701710..f8f43d232 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java @@ -2,6 +2,7 @@ package com.fr.design.mainframe.chart.gui.data; import com.fr.chart.chartattr.ChartCollection; import com.fr.design.beans.FurtherBasicBeanPane; +import com.fr.design.chartx.data.DataLayoutHelper; import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.frpane.AttributeChangeListener; import com.fr.design.gui.frpane.UIComboBoxPane; @@ -61,15 +62,22 @@ public class NormalChartDataPane extends DataContentsPane { JPanel contentPane = new JPanel(new BorderLayout()); dataPane = new UIComboBoxPane() { protected void initLayout() { - this.setLayout(new BorderLayout(LayoutConstants.HGAP_LARGE,6)); - JPanel northPane = new JPanel(new BorderLayout(LayoutConstants.HGAP_LARGE,0)); - northPane.add(jcb, BorderLayout.CENTER); - UILabel label1 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source")); - label1.setPreferredSize(new Dimension(ChartDataPane.LABEL_WIDTH,ChartDataPane.LABEL_HEIGHT)); - northPane.add(GUICoreUtils.createBorderLayoutPane(new Component[]{jcb, null, null, label1, null})); - northPane.setBorder(BorderFactory.createEmptyBorder(0,5,0,8)); if (ChartEditContext.supportReportData()) { - this.add(northPane, BorderLayout.NORTH); + if (ChartEditContext.normalMode()) { + this.setLayout(new BorderLayout(LayoutConstants.HGAP_LARGE,6)); + JPanel northPane = new JPanel(new BorderLayout(LayoutConstants.HGAP_LARGE,0)); + northPane.add(jcb, BorderLayout.CENTER); + UILabel label1 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source")); + label1.setPreferredSize(new Dimension(ChartDataPane.LABEL_WIDTH,ChartDataPane.LABEL_HEIGHT)); + northPane.add(GUICoreUtils.createBorderLayoutPane(new Component[]{jcb, null, null, label1, null})); + northPane.setBorder(BorderFactory.createEmptyBorder(0,5,0,8)); + this.add(northPane, BorderLayout.NORTH); + } else { + this.setLayout(new BorderLayout(0, 6)); + JPanel northPane = DataLayoutHelper.createDataLayoutPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source"), jcb); + northPane.setBorder(BorderFactory.createEmptyBorder(0, DataLayoutHelper.LEFT_GAP, 0, DataLayoutHelper.RIGHT_GAP)); + this.add(northPane, BorderLayout.NORTH); + } } this.add(cardPane, BorderLayout.CENTER); From f902706eddae15b30aae0175fa20f4ca3735d29d Mon Sep 17 00:00:00 2001 From: Carlson Date: Wed, 9 Aug 2023 16:39:23 +0800 Subject: [PATCH 02/10] =?UTF-8?q?REPORT-102520=20fix:=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E8=B4=A8=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mainframe/chart/gui/data/NormalChartDataPane.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java index f8f43d232..8ea385864 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/NormalChartDataPane.java @@ -62,22 +62,21 @@ public class NormalChartDataPane extends DataContentsPane { JPanel contentPane = new JPanel(new BorderLayout()); dataPane = new UIComboBoxPane() { protected void initLayout() { + this.setLayout(new BorderLayout(ChartEditContext.normalMode() ? LayoutConstants.HGAP_LARGE : 0,6)); if (ChartEditContext.supportReportData()) { + JPanel northPane; if (ChartEditContext.normalMode()) { - this.setLayout(new BorderLayout(LayoutConstants.HGAP_LARGE,6)); - JPanel northPane = new JPanel(new BorderLayout(LayoutConstants.HGAP_LARGE,0)); + northPane = new JPanel(new BorderLayout(LayoutConstants.HGAP_LARGE, 0)); northPane.add(jcb, BorderLayout.CENTER); UILabel label1 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source")); label1.setPreferredSize(new Dimension(ChartDataPane.LABEL_WIDTH,ChartDataPane.LABEL_HEIGHT)); northPane.add(GUICoreUtils.createBorderLayoutPane(new Component[]{jcb, null, null, label1, null})); northPane.setBorder(BorderFactory.createEmptyBorder(0,5,0,8)); - this.add(northPane, BorderLayout.NORTH); } else { - this.setLayout(new BorderLayout(0, 6)); - JPanel northPane = DataLayoutHelper.createDataLayoutPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source"), jcb); + northPane = DataLayoutHelper.createDataLayoutPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source"), jcb); northPane.setBorder(BorderFactory.createEmptyBorder(0, DataLayoutHelper.LEFT_GAP, 0, DataLayoutHelper.RIGHT_GAP)); - this.add(northPane, BorderLayout.NORTH); } + this.add(northPane, BorderLayout.NORTH); } this.add(cardPane, BorderLayout.CENTER); From dc8285cb29808b50b31117cc5f6e5f4d1044b5a2 Mon Sep 17 00:00:00 2001 From: Carlson Date: Tue, 15 Aug 2023 11:38:36 +0800 Subject: [PATCH 03/10] =?UTF-8?q?REPORT-102440=20fix:=E6=B8=85=E9=99=A4?= =?UTF-8?q?=E5=85=AC=E5=BC=8F=E5=86=85=E5=AE=B9=E5=90=8E=E4=B8=8D=E6=98=BE?= =?UTF-8?q?=E7=A4=BA"$$$"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/formula/TinyFormulaPane.java | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java index d3060b42b..75ab40aaa 100644 --- a/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java @@ -11,9 +11,11 @@ import com.fr.design.gui.itextfield.UITextField; import com.fr.design.layout.TableLayout; import com.fr.design.mainframe.DesignerContext; - -import javax.swing.*; -import java.awt.*; +import javax.swing.BorderFactory; +import javax.swing.JPanel; +import java.awt.BorderLayout; +import java.awt.Cursor; +import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -63,11 +65,7 @@ public class TinyFormulaPane extends BasicBeanPane implements UIObserver } protected void populateTextField(BaseFormula fm) { - if (fm.getContent().length() <= 1) { - formulaTextField.setText("$$$"); - } else { - formulaTextField.setText(fm.getContent()); - } + formulaTextField.setText(fm.getContent()); } protected void initLayout() { From a145a559244492b4f6ff6499a15e55bceb2961ce Mon Sep 17 00:00:00 2001 From: Carlson Date: Thu, 17 Aug 2023 15:00:02 +0800 Subject: [PATCH 04/10] =?UTF-8?q?fix:=20=E6=9B=BF=E6=8D=A2=E5=9B=BE?= =?UTF-8?q?=E8=A1=A8=E7=94=A8=E5=88=B0=E7=9A=84TinyFormulaPane=20#REPORT-1?= =?UTF-8?q?02440?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../formula/DefaultTinyFormulaPane.java | 22 +++++++++++++++++++ .../fr/design/formula/TinyFormulaPane.java | 6 ++++- .../report/GisMapReportDataContentPane.java | 17 +++++++++----- .../chart/report/MapMoreReportIndexPane.java | 15 ++++++++----- .../chart/report/MapReportDataSinglePane.java | 16 +++++++++----- .../component/MultiTinyFormulaPane.java | 5 +++-- .../MultiTinyFormulaPaneWithUISpinner.java | 3 ++- .../TinyFormulaPaneEditorComponent.java | 9 ++------ .../LineMapAreaLngLatPaneWithTinyFormula.java | 17 +++++++------- ...PointMapAreaLngLatPaneWithTinyFormula.java | 9 ++++---- .../diff/AreaMapCellDataFieldsPane.java | 3 ++- .../fields/diff/GaugeCellDataFieldsPane.java | 5 +++-- .../diff/LineMapCellDataFieldsPane.java | 3 ++- .../diff/MultiPieCellDataFieldsPane.java | 3 ++- .../SingleCategoryCellDataFieldsPane.java | 3 ++- .../diff/StructureCellDataFieldsPane.java | 9 ++++---- .../diff/WordCloudCellDataFieldsPane.java | 5 +++-- .../mainframe/chart/gui/ChangeConfigPane.java | 3 ++- .../report/AbstractReportDataContentPane.java | 17 +++++++------- .../CategoryPlotReportDataContentPane.java | 11 +++------- .../MeterPlotReportDataContentPane.java | 7 +++--- .../StockPlotReportDataContentPane.java | 12 +++++----- .../table/MeterPlotTableDataContentPane.java | 5 +++-- .../chart/gui/style/ChartAxisTitlePane.java | 12 ++++++---- .../series/ColorPickerPaneWithFormula.java | 3 ++- .../series/ColorPickerPaneWithMaxMin.java | 3 ++- .../series/MapColorPickerPaneWithFormula.java | 3 ++- .../chart/gui/style/title/ChartTitlePane.java | 11 ++++++---- .../AbstractExtendedChartReportDataPane.java | 5 +++-- .../BoxPlotReportResultDataSeriesPane.java | 3 ++- .../data/report/TinyFormulaWithEditLabel.java | 3 ++- ...eDimensionalPlotReportDataContentPane.java | 4 ++-- .../other/VanChartInteractivePane.java | 5 +++-- .../chart/designer/other/zoom/ZoomPane.java | 5 +++-- .../designer/style/VanChartTitlePane.java | 3 ++- .../style/axis/VanChartBaseAxisPane.java | 3 ++- .../background/VanChartAlertValuePane.java | 7 +++--- .../VanChartCustomIntervalBackgroundPane.java | 6 ++--- .../component/GanttReportDataContentPane.java | 4 ++-- .../component/TinyFormulaWithButtonPane.java | 3 ++- .../link/GanttLinkReportDataContentPane.java | 4 ++-- .../data/component/report/AreaPane.java | 3 ++- .../component/report/LongLatAreaPane.java | 7 +++--- .../VanAreaMapPlotReportDataContentPane.java | 3 ++- .../MultiPiePlotReportDataContentPane.java | 6 ++--- .../StructurePlotReportDataContentPane.java | 9 ++++---- .../WordCloudPlotReportDataContentPane.java | 6 ++--- 47 files changed, 199 insertions(+), 127 deletions(-) create mode 100644 designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java diff --git a/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java new file mode 100644 index 000000000..8725a2366 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java @@ -0,0 +1,22 @@ +package com.fr.design.formula; + +import com.fr.base.BaseFormula; +import com.fr.stable.StringUtils; + +/** + * @author Carlson + * @version 11.0 + * Created by Carlson on 2023/8/14 17:15 + * @description + **/ +public class DefaultTinyFormulaPane extends TinyFormulaPane{ + + @Override + protected void populateTextField(BaseFormula fm) { + if (fm.getContent().length() <= 1) { + formulaTextField.setText(StringUtils.EMPTY); + } else { + formulaTextField.setText(fm.getContent()); + } + } +} diff --git a/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java index 75ab40aaa..e5594ddd1 100644 --- a/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java @@ -65,7 +65,11 @@ public class TinyFormulaPane extends BasicBeanPane implements UIObserver } protected void populateTextField(BaseFormula fm) { - formulaTextField.setText(fm.getContent()); + if (fm.getContent().length() <= 1) { + formulaTextField.setText("$$$"); + } else { + formulaTextField.setText(fm.getContent()); + } } protected void initLayout() { diff --git a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapReportDataContentPane.java b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapReportDataContentPane.java index 6b646ce83..583b0a54f 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapReportDataContentPane.java @@ -10,6 +10,7 @@ import com.fr.design.constants.LayoutConstants; import com.fr.design.constants.UIConstants; import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserverListener; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.frpane.UICorrelationPane; import com.fr.design.gui.ibutton.UIButtonGroup; @@ -18,14 +19,18 @@ import com.fr.design.gui.itable.UITableEditor; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; - import com.fr.stable.StableUtils; import com.fr.stable.StringUtils; -import javax.swing.*; +import javax.swing.JComponent; +import javax.swing.JPanel; +import javax.swing.JTable; +import javax.swing.SwingConstants; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; -import java.awt.*; +import java.awt.BorderLayout; +import java.awt.Component; +import java.awt.Dimension; import java.awt.event.FocusAdapter; import java.awt.event.FocusEvent; import java.util.ArrayList; @@ -53,8 +58,8 @@ public class GisMapReportDataContentPane extends FurtherBasicBeanPane(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Address"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_LatLng")}); lnglatOrder = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Longitude_First"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Latitude_First")}); - addressPane = new TinyFormulaPane(); - addressNamePane = new TinyFormulaPane(); + addressPane = new DefaultTinyFormulaPane(); + addressNamePane = new DefaultTinyFormulaPane(); double p = TableLayout.PREFERRED; double f = TableLayout.FILL; double[] columnSize = new double[]{p, f}; @@ -259,7 +264,7 @@ public class GisMapReportDataContentPane extends FurtherBasicBeanPane { @Override protected TinyFormulaPane createJComponent() { - return new TinyFormulaPane(); + return new DefaultTinyFormulaPane(); } @Override diff --git a/designer-chart/src/main/java/com/fr/design/chartx/component/correlation/TinyFormulaPaneEditorComponent.java b/designer-chart/src/main/java/com/fr/design/chartx/component/correlation/TinyFormulaPaneEditorComponent.java index 7470ef62d..5f18eb254 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/component/correlation/TinyFormulaPaneEditorComponent.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/component/correlation/TinyFormulaPaneEditorComponent.java @@ -1,9 +1,9 @@ package com.fr.design.chartx.component.correlation; -import com.fr.base.BaseFormula; import com.fr.base.Utils; import com.fr.design.constants.UIConstants; import com.fr.design.event.UIObserverListener; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.frpane.UICorrelationPane; @@ -20,17 +20,12 @@ public class TinyFormulaPaneEditorComponent extends AbstractEditorComponent { result = Utils.objectToString(content); } } - TinyFormulaPane title = new TinyFormulaPane(); + TinyFormulaPane title = new DefaultTinyFormulaPane(); title.populateBean(result); switchTitles.add(title); switchTitlePane.add(title, collection.getChartName(chartIndex)); diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/AbstractReportDataContentPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/AbstractReportDataContentPane.java index 7a6a1f38d..1073f0e41 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/AbstractReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/AbstractReportDataContentPane.java @@ -8,6 +8,7 @@ import com.fr.chart.chartdata.SeriesDefinition; import com.fr.design.beans.BasicBeanPane; import com.fr.design.constants.UIConstants; import com.fr.design.event.UIObserverListener; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.frpane.UICorrelationPane; import com.fr.design.gui.itable.UITable; @@ -15,10 +16,15 @@ import com.fr.design.gui.itable.UITableEditor; import com.fr.design.layout.TableLayout; import com.fr.stable.StableUtils; -import javax.swing.*; +import javax.swing.BorderFactory; +import javax.swing.JPanel; +import javax.swing.JSeparator; +import javax.swing.JTable; import javax.swing.border.Border; import javax.swing.event.ChangeEvent; -import java.awt.*; +import java.awt.BorderLayout; +import java.awt.Component; +import java.awt.Dimension; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -171,17 +177,12 @@ public abstract class AbstractReportDataContentPane extends BasicBeanPane { } private JPanel createDefaultAttrPane(){ - titleContent = new TinyFormulaPane(); + titleContent = new DefaultTinyFormulaPane(); textAttrPane = new ChartTextAttrPane(); Icon[] alignmentIconArray = {BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal.png"), BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"), diff --git a/designer-chart/src/main/java/com/fr/extended/chart/AbstractExtendedChartReportDataPane.java b/designer-chart/src/main/java/com/fr/extended/chart/AbstractExtendedChartReportDataPane.java index b8758b9f5..e11fec903 100644 --- a/designer-chart/src/main/java/com/fr/extended/chart/AbstractExtendedChartReportDataPane.java +++ b/designer-chart/src/main/java/com/fr/extended/chart/AbstractExtendedChartReportDataPane.java @@ -2,6 +2,7 @@ package com.fr.extended.chart; import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.ChartCollection; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.layout.TableLayout; @@ -42,8 +43,8 @@ public abstract class AbstractExtendedChartReportDataPane { private JPanel createScaleAxisPane() { zoomResize = new UIButtonGroup(new String[]{Toolkit.i18nText("Fine-Design_Chart_Change"), Toolkit.i18nText("Fine-Design_Chart_Non_Adjustment")}); - from = new TinyFormulaPane(); - to = new TinyFormulaPane(); + from = new DefaultTinyFormulaPane(); + to = new DefaultTinyFormulaPane(); Component[][] components = new Component[][]{ new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Widget_Boundary")), zoomResize}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_From")), from}, diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/other/zoom/ZoomPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/other/zoom/ZoomPane.java index dfbf2d640..3fa7f5ff4 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/other/zoom/ZoomPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/other/zoom/ZoomPane.java @@ -4,6 +4,7 @@ import com.fr.chartx.attr.ZoomAttribute; import com.fr.chartx.attr.ZoomInitialDisplayType; import com.fr.chartx.attr.ZoomModeType; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.icombobox.UIComboBox; @@ -140,8 +141,8 @@ public class ZoomPane extends BasicBeanPane { final JPanel topPane = TableLayout4VanChartHelper.createGapTableLayoutPane(components1, new double[]{p}, columnSize); - leftFormulaPane = new TinyFormulaPane(); - rightFormulaPane = new TinyFormulaPane(); + leftFormulaPane = new DefaultTinyFormulaPane(); + rightFormulaPane = new DefaultTinyFormulaPane(); Component[][] components2 = new Component[][]{ new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Left_Boundary")), leftFormulaPane}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Right_Boundary")), rightFormulaPane} diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java index 87d6fbfda..3469e2624 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java @@ -5,6 +5,7 @@ import com.fr.base.BaseUtils; import com.fr.base.Utils; import com.fr.chart.base.TextAttr; import com.fr.chartx.config.info.constant.ConfigType; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.frpane.UIBubbleFloatPane; import com.fr.design.gui.frpane.UINumberDragPane; @@ -152,7 +153,7 @@ public class VanChartTitlePane extends AbstractVanChartScrollPane { } private JPanel createTitleContentPane(double[] row, double[] col) { - titleContent = new TinyFormulaPane(); + titleContent = new DefaultTinyFormulaPane(); useHtml = new UIToggleButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Html")); UIComponentUtils.setLineWrap(useHtml); Component[][] components = new Component[][]{ diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartBaseAxisPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartBaseAxisPane.java index 1197d16b7..fed96db68 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartBaseAxisPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartBaseAxisPane.java @@ -8,6 +8,7 @@ import com.fr.chart.base.TextAttr; import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.Title; import com.fr.design.beans.FurtherBasicBeanPane; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.frpane.UINumberDragPane; import com.fr.design.gui.frpane.UINumberDragPaneWithPercent; @@ -157,7 +158,7 @@ public class VanChartBaseAxisPane extends FurtherBasicBeanPane { showTitle = new UIButtonGroup(new String[]{Toolkit.i18nText("Fine-Design_Chart_Use_Show"), Toolkit.i18nText("Fine-Design_Chart_Hidden")}); titleAlignPane = isXAxis ? getXAxisTitleAlignPane() : getYAxisTitleAlignPane(); titleAlignPane.setSelectedItem(Constants.CENTER); - titleContent = new TinyFormulaPane(); + titleContent = new DefaultTinyFormulaPane(); titleUseHtml = new UIToggleButton(Toolkit.i18nText("Fine-Design_Chart_Html")); UIComponentUtils.setLineWrap(titleUseHtml); titleTextAttrPane = getChartTextAttrPane(); diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAlertValuePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAlertValuePane.java index 49e7f3fa9..e4ceae7fa 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAlertValuePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAlertValuePane.java @@ -5,14 +5,15 @@ import com.fr.base.Utils; import com.fr.chart.base.AttrColor; import com.fr.chart.base.AttrLineStyle; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.gui.ispinner.chart.UISpinnerWithPx; -import com.fr.design.i18n.Toolkit; import com.fr.design.gui.style.FRFontPane; +import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; @@ -86,7 +87,7 @@ public class VanChartAlertValuePane extends BasicBeanPane { } private void initComponents() { - alertValue = new TinyFormulaPane(); + alertValue = new DefaultTinyFormulaPane(); //設置大小,防止文本過長導致界面“變形” alertValue.setPreferredSize(new Dimension(VALUE_WD, HT)); @@ -95,7 +96,7 @@ public class VanChartAlertValuePane extends BasicBeanPane { lineWidthSpinner = new UISpinnerWithPx(LINE_WIDTH_MIN_VALUE, Integer.MAX_VALUE, LINE_WIDTH_DIERTA_VALUE, LINE_WIDTH_DEFAULT_VALUE); alertLineColor = new ColorSelectBox(PREFERRED_WIDTH); alertTextPosition = new UIButtonGroup(new String[]{Toolkit.i18nText("Fine-Design_Chart_Axis_Top"), Toolkit.i18nText("Fine-Design_Chart_Axis_Bottom")}); - alertText = new TinyFormulaPane(); + alertText = new DefaultTinyFormulaPane(); //設置大小,防止文本過長導致界面“變形” alertText.setPreferredSize(new Dimension(TEXT_WD, HT)); diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java index ef6dc0e11..42fcdad8e 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java @@ -3,6 +3,7 @@ package com.fr.van.chart.designer.style.background; import com.fr.base.BaseFormula; import com.fr.base.Utils; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.frpane.UINumberDragPane; import com.fr.design.gui.frpane.UINumberDragPaneWithPercent; @@ -13,7 +14,6 @@ import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; import com.fr.design.style.color.ColorSelectBox; import com.fr.design.utils.gui.GUICoreUtils; - import com.fr.plugin.chart.VanChartAttrHelper; import com.fr.plugin.chart.attr.axis.VanChartCustomIntervalBackground; import com.fr.van.chart.designer.TableLayout4VanChartHelper; @@ -48,8 +48,8 @@ public class VanChartCustomIntervalBackgroundPane extends BasicBeanPane(); for (int i = 0; i < levelNum; i++){ - levelNameList.add(new TinyFormulaPane()); + levelNameList.add(new DefaultTinyFormulaPane()); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/structure/desinger/data/StructurePlotReportDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/structure/desinger/data/StructurePlotReportDataContentPane.java index 1e26e2f55..11f94ef87 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/structure/desinger/data/StructurePlotReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/structure/desinger/data/StructurePlotReportDataContentPane.java @@ -2,6 +2,7 @@ package com.fr.van.chart.structure.desinger.data; import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.chartattr.ChartCollection; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; @@ -33,11 +34,11 @@ public class StructurePlotReportDataContentPane extends AbstractReportDataConten double[] columnSize = {p, f}; double[] rowSize = {p, p, p, p, p}; - nodeName = new TinyFormulaPane(); - nodeID = new TinyFormulaPane(); - parentID = new TinyFormulaPane(); + nodeName = new DefaultTinyFormulaPane(); + nodeID = new DefaultTinyFormulaPane(); + parentID = new DefaultTinyFormulaPane(); seriesName = new UITextField(); - nodeValue = new TinyFormulaPane(); + nodeValue = new DefaultTinyFormulaPane(); Component[][] components = new Component[][]{ new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Node_Name")), nodeName}, diff --git a/designer-chart/src/main/java/com/fr/van/chart/wordcloud/designer/data/WordCloudPlotReportDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/wordcloud/designer/data/WordCloudPlotReportDataContentPane.java index d95a9ddc1..d92400488 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/wordcloud/designer/data/WordCloudPlotReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/wordcloud/designer/data/WordCloudPlotReportDataContentPane.java @@ -2,13 +2,13 @@ package com.fr.van.chart.wordcloud.designer.data; import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.chartattr.ChartCollection; +import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPane; - import com.fr.plugin.chart.wordcloud.data.WordCloudReportDefinition; import javax.swing.BorderFactory; @@ -32,8 +32,8 @@ public class WordCloudPlotReportDataContentPane extends AbstractReportDataConten double[] rowSize = { p, p, p}; name = new UITextField(); - wordName = new TinyFormulaPane(); - wordValue = new TinyFormulaPane(); + wordName = new DefaultTinyFormulaPane(); + wordValue = new DefaultTinyFormulaPane(); Component[][] components = new Component[][]{ new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_MultiPie_Series_Name")), name}, From befb07057e615a4ffca3149a774004c6e50c125c Mon Sep 17 00:00:00 2001 From: Carlson Date: Fri, 18 Aug 2023 13:49:32 +0800 Subject: [PATCH 05/10] =?UTF-8?q?fix:=20=E4=BF=9D=E7=95=99=E2=80=9C=3D?= =?UTF-8?q?=E2=80=9D=20#none?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/formula/DefaultTinyFormulaPane.java | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java index 8725a2366..5a106ea38 100644 --- a/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java @@ -1,7 +1,6 @@ package com.fr.design.formula; import com.fr.base.BaseFormula; -import com.fr.stable.StringUtils; /** * @author Carlson @@ -13,10 +12,6 @@ public class DefaultTinyFormulaPane extends TinyFormulaPane{ @Override protected void populateTextField(BaseFormula fm) { - if (fm.getContent().length() <= 1) { - formulaTextField.setText(StringUtils.EMPTY); - } else { - formulaTextField.setText(fm.getContent()); - } + formulaTextField.setText(fm.getContent()); } } From d24fda3bb736224dacc30d6a24b284665c1d31d7 Mon Sep 17 00:00:00 2001 From: Carlson Date: Mon, 21 Aug 2023 16:51:11 +0800 Subject: [PATCH 06/10] =?UTF-8?q?REPORT-101812=20fix:=20=E5=9B=BD=E9=99=85?= =?UTF-8?q?=E5=8C=96=E6=96=87=E6=9C=AC=E6=88=AA=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/van/chart/column/VanChartColumnSeriesPane.java | 10 +++++----- .../chart/designer/other/VanChartInteractivePane.java | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnSeriesPane.java index 27c588222..a542f100c 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnSeriesPane.java @@ -3,13 +3,13 @@ package com.fr.van.chart.column; import com.fr.base.background.ImageBackground; import com.fr.chart.chartattr.Plot; import com.fr.chart.chartglyph.ConditionAttr; -import com.fr.design.gui.frpane.UINumberDragPaneWithPercent; -import com.fr.design.gui.ispinner.chart.UISpinnerWithPx; -import com.fr.design.i18n.Toolkit; import com.fr.design.gui.frpane.UINumberDragPane; +import com.fr.design.gui.frpane.UINumberDragPaneWithPercent; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; +import com.fr.design.gui.ispinner.chart.UISpinnerWithPx; +import com.fr.design.i18n.Toolkit; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.backgroundpane.ImageBackgroundQuickPane; @@ -91,8 +91,8 @@ public class VanChartColumnSeriesPane extends VanChartAbstractPlotSeriesPane { panel1.add(columnWidth, BorderLayout.CENTER); Component[][] components2 = new Component[][]{ - new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Gap_Series")),seriesGap}, - new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Gap_Category")),categoryGap}, + new Component[]{FRWidgetFactory.createLineWrapLabel(Toolkit.i18nText("Fine-Design_Chart_Gap_Series")),seriesGap}, + new Component[]{FRWidgetFactory.createLineWrapLabel(Toolkit.i18nText("Fine-Design_Chart_Gap_Category")),categoryGap}, }; JPanel panel2 = TableLayout4VanChartHelper.createGapTableLayoutPane(components2, row, col); diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java index 3c2345e2d..01854225d 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java @@ -498,7 +498,7 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane { protected JPanel createAnimationPane() { isChartAnimation = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Open"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Close")}); - chartAnimationLabel = new UILabel(Toolkit.i18nText("Fine-Design_Chart_Animation_Effects")); + chartAnimationLabel = FRWidgetFactory.createLineWrapLabel(Toolkit.i18nText("Fine-Design_Chart_Animation_Effects")); double p = TableLayout.PREFERRED; double f = TableLayout.FILL; double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; From 096fb14523189a0bdb31095eac7b09f1e3dbd7ae Mon Sep 17 00:00:00 2001 From: Carlson Date: Mon, 21 Aug 2023 17:02:57 +0800 Subject: [PATCH 07/10] =?UTF-8?q?=E5=8A=A0=E4=B8=AA=E6=B3=A8=E9=87=8A=20#n?= =?UTF-8?q?one?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/fr/design/formula/DefaultTinyFormulaPane.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java index 5a106ea38..05053eec4 100644 --- a/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java @@ -6,7 +6,7 @@ import com.fr.base.BaseFormula; * @author Carlson * @version 11.0 * Created by Carlson on 2023/8/14 17:15 - * @description + * @description 默认的公式输入面板(包含一个输入框和一个F(x)按钮),清空公式内容后不会显示“$$$”,主要在图表配置面板里使用 **/ public class DefaultTinyFormulaPane extends TinyFormulaPane{ From fea42a047fd3336b0454af84cc3a48197c64df9b Mon Sep 17 00:00:00 2001 From: obo Date: Wed, 23 Aug 2023 11:06:56 +0800 Subject: [PATCH 08/10] =?UTF-8?q?REPORT-103732=20=E6=B5=B7=E5=A4=96?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=9C=B0=E5=9B=BE=E7=BB=84=E4=BB=B6=E7=9A=84?= =?UTF-8?q?GIS=E5=9B=BE=E5=B1=82=E4=BC=98=E5=8C=96-fvs=E4=B8=8B=E6=A0=87?= =?UTF-8?q?=E5=87=86=E8=87=AA=E5=8A=A8=E9=85=8D=E7=BD=AE=E5=88=87=E6=8D=A2?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chart/map/designer/type/GisLayerPane.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/GisLayerPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/GisLayerPane.java index de07a7814..253e5dcf1 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/GisLayerPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/GisLayerPane.java @@ -3,12 +3,14 @@ package com.fr.van.chart.map.designer.type; import com.fr.base.Utils; import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserverListener; +import com.fr.design.file.HistoryTemplateListCache; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; +import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.chart.mode.ChartEditContext; import com.fr.general.ComparatorUtils; import com.fr.general.GeneralContext; @@ -316,6 +318,7 @@ public class GisLayerPane extends JPanel implements UIObserver { if (isAuto()) { layer.setGisLayerType(GISLayerType.AUTO); layer.setLayerName(GISLayerType.getLocString(GISLayerType.AUTO)); + adaptEditingTemplateTheme(layer); } else if (isStandardGis()) { updateStandardGis(layer); } else { @@ -348,4 +351,18 @@ public class GisLayerPane extends JPanel implements UIObserver { break; } } + + /** + * 切换图层时根据主题切换图层名称 + * + * @param layer 图层 + */ + private void adaptEditingTemplateTheme(GisLayer layer) { + JTemplate currentEditingTemplate = HistoryTemplateListCache.getInstance().getCurrentEditingTemplate(); + if(JTemplate.isValid(currentEditingTemplate)) { + boolean dark = currentEditingTemplate.getTemplateTheme().isDark(); + String name = dark ? Toolkit.i18nText("Fine-Design_Chart_Layer_Black") : Toolkit.i18nText("Fine-Design_Chart_Layer_MapBox"); + layer.setLayerName(name); + } + } } From f7e3433cc3518a70d8008b531e630d410036dcda Mon Sep 17 00:00:00 2001 From: Carlson Date: Thu, 24 Aug 2023 14:32:11 +0800 Subject: [PATCH 09/10] =?UTF-8?q?REPORT-100238=20fix:=20=E6=A1=8C=E9=9D=A2?= =?UTF-8?q?=E4=B8=8A=E7=94=A8=E8=AE=BE=E8=AE=A1=E5=99=A8=E6=89=93=E4=B8=8D?= =?UTF-8?q?=E5=BC=80fvs=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/fr/start/module/PreStartActivator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer-realize/src/main/java/com/fr/start/module/PreStartActivator.java b/designer-realize/src/main/java/com/fr/start/module/PreStartActivator.java index fa795fb37..b69561caf 100644 --- a/designer-realize/src/main/java/com/fr/start/module/PreStartActivator.java +++ b/designer-realize/src/main/java/com/fr/start/module/PreStartActivator.java @@ -47,6 +47,6 @@ public class PreStartActivator extends Activator { private String[] startFileSuffix() { - return new String[]{".cpt", ".xls", ".xlsx", ".frm", ".form", ".cht", ".chart"}; + return new String[]{".cpt", ".xls", ".xlsx", ".frm", ".form", ".cht", ".chart", ".fvs"}; } } From 3f3bd4376b009080836cfefc3dc6df479746b2d3 Mon Sep 17 00:00:00 2001 From: obo Date: Thu, 24 Aug 2023 17:12:46 +0800 Subject: [PATCH 10/10] =?UTF-8?q?REPORT-98466=20FileNodeConstants=E4=B8=AD?= =?UTF-8?q?=E4=BD=BF=E7=94=A8List=E5=AD=98=E5=82=A8=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E5=8F=AF=E8=83=BD=E5=AF=BC=E8=87=B4=E9=87=8D?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../design/gui/itree/filetree/FileNodeConstants.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeConstants.java b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeConstants.java index f5da5302c..60d727fda 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeConstants.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeConstants.java @@ -11,9 +11,8 @@ import com.fr.plugin.observer.PluginEventListener; import com.fr.report.ExtraReportClassManager; import com.fr.report.fun.ReportSupportedFileProvider; -import java.util.ArrayList; import java.util.Arrays; -import java.util.List; +import java.util.LinkedHashSet; import java.util.Set; import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; @@ -23,7 +22,7 @@ import java.util.concurrent.locks.ReentrantReadWriteLock; */ public class FileNodeConstants { - private static List supportFileType; + private static Set supportFileType; private static ReadWriteLock rwl = new ReentrantReadWriteLock(); private FileNodeConstants() { @@ -47,16 +46,14 @@ public class FileNodeConstants { private static void addAppExtensions(FileExtension[] extensions) { for (int i = 0, size = extensions.length; i < size; i++) { - if (!supportFileType.contains(extensions[i].getExtension())) { - supportFileType.add(extensions[i].getExtension()); - } + supportFileType.add(extensions[i].getExtension()); } } private static void initSupportedTypes() { try { rwl.writeLock().lock(); - supportFileType = new ArrayList(); + supportFileType = new LinkedHashSet<>(); //通过插件扩展的 Set providers = ExtraReportClassManager.getInstance().getArray(ReportSupportedFileProvider.XML_TAG); for (ReportSupportedFileProvider provider : providers) {