From 862cbf69eab0a888c7823cd7362f5bb880fef0bc Mon Sep 17 00:00:00 2001 From: shine Date: Tue, 24 Sep 2019 16:54:44 +0800 Subject: [PATCH] =?UTF-8?q?CHART-10225=20=E6=8A=98=E7=8E=B0=E7=BA=BF?= =?UTF-8?q?=E5=9E=8B=20=E9=85=8D=E7=BD=AE=E7=95=8C=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../designer/component/LineTypeComboBox.java | 2 +- .../component/VanChartLineTypePane.java | 64 +++++++++++++------ .../component/VanChartLineWidthPane.java | 4 +- .../VanChartScatterLineTypePane.java | 9 +-- 4 files changed, 48 insertions(+), 31 deletions(-) diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/LineTypeComboBox.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/LineTypeComboBox.java index 00408aca0..0b3bc7571 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/LineTypeComboBox.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/LineTypeComboBox.java @@ -30,7 +30,7 @@ public class LineTypeComboBox extends UIComboBox { this.setRenderer(new CellRenderer()); } - private class CellRenderer extends UIComboBoxRenderer { + private static class CellRenderer extends UIComboBoxRenderer { private LineType lineType; diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLineTypePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLineTypePane.java index f095b385a..1fe987f1a 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLineTypePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLineTypePane.java @@ -32,10 +32,11 @@ public class VanChartLineTypePane extends BasicPane { protected UIButtonGroup lineStyle;//形态 private UIButtonGroup nullValueBreak;//空值断开 + private JPanel lineWidthPane; + public VanChartLineTypePane() { - lineTypeComboBox = new LineTypeComboBox(new LineType[]{LineType.NONE, LineType.NORMAL, LineType.DASH}); - lineWidthSpinner = new UISpinner(0.5, Integer.MAX_VALUE, 0.5, 2); + JPanel typeAndWidthPane = createTypeAndWidthPane(); createLineStyle(); @@ -52,14 +53,10 @@ public class VanChartLineTypePane extends BasicPane { double f = TableLayout.FILL; double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - Component[] lineTypeComponent = new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Line_Style")), lineTypeComboBox}, - lineWidthComponent = new Component[]{ - FRWidgetFactory.createLineWrapLabel(Toolkit.i18nText("Fine-Design_Chart_Line_Width")), - UIComponentUtils.wrapWithBorderLayoutPane(lineWidthSpinner)}, - lineStyleComponent = new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Style_Present")), lineStyle}, + Component[] lineStyleComponent = new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Style_Present")), lineStyle}, nullValueBreakComponent = new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Null_Value_Break")), nullValueBreak}; - Component[][] components = createContentComponent(lineTypeComponent, lineWidthComponent, lineStyleComponent, nullValueBreakComponent); + Component[][] components = createContentComponent(lineStyleComponent, nullValueBreakComponent); double[] row = new double[components.length]; Arrays.fill(row, p); @@ -67,16 +64,45 @@ public class VanChartLineTypePane extends BasicPane { JPanel contentPane = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, col); - this.setLayout(new BorderLayout()); + this.setLayout(new BorderLayout(0, 6)); + this.add(typeAndWidthPane, BorderLayout.NORTH); this.add(contentPane, BorderLayout.CENTER); } private JPanel createTypeAndWidthPane() { - //todo@shinerefactor:当前兼容工作到这边,因为finekit和移动端,暂停 - JPanel panel = new JPanel(new BorderLayout(0, 6)); + lineTypeComboBox = new LineTypeComboBox(new LineType[]{LineType.NONE, LineType.NORMAL, LineType.DASH}); + + lineWidthSpinner = new UISpinner(0.5, Integer.MAX_VALUE, 0.5, 2); + + lineTypeComboBox.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + checkLineWidth(); + } + }); + + Component[][] lineTypeComps = new Component[][]{ + new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Line_Style")), lineTypeComboBox} + }; + Component[][] lineWidthComps = new Component[][]{ + new Component[]{ + FRWidgetFactory.createLineWrapLabel(Toolkit.i18nText("Fine-Design_Chart_Line_Width")), + UIComponentUtils.wrapWithBorderLayoutPane(lineWidthSpinner)} + }; + + double p = TableLayout.PREFERRED, f = TableLayout.FILL, e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; + double[] row = {p}, col = {f, e}; + + JPanel lineTypePane = TableLayout4VanChartHelper.createGapTableLayoutPane(lineTypeComps, row, col); + lineWidthPane = TableLayout4VanChartHelper.createGapTableLayoutPane(lineWidthComps, row, col); + + JPanel contentPane = new JPanel(new BorderLayout(0, 6)); + + contentPane.add(lineTypePane, BorderLayout.CENTER); + contentPane.add(lineWidthPane, BorderLayout.SOUTH); - return panel; + return contentPane; } protected void createLineStyle() { @@ -85,25 +111,21 @@ public class VanChartLineTypePane extends BasicPane { lineStyle = new UIButtonGroup(textArray, LineStyle.values()); } - protected Component[][] createContentComponent(Component[] lineTypeComponent, Component[] lineWidthComponent, - Component[] lineStyleComponent, Component[] nullValueBreakComponent) { + protected Component[][] createContentComponent(Component[] lineStyleComponent, Component[] nullValueBreakComponent) { return new Component[][]{ - new Component[]{null,null}, - lineTypeComponent, - lineWidthComponent, lineStyleComponent, nullValueBreakComponent }; } private void checkLineWidth() { - if (lineWidthSpinner != null && lineTypeComboBox != null) { - lineWidthSpinner.setVisible(!ComparatorUtils.equals(lineTypeComboBox.getSelectedItem(), LineType.NONE)); + if (lineWidthPane != null && lineTypeComboBox != null) { + lineWidthPane.setVisible(!ComparatorUtils.equals(lineTypeComboBox.getSelectedItem(), LineType.NONE)); } } - public void checkLarge(boolean large){ - if(large){ + public void checkLarge(boolean large) { + if (large) { lineTypeComboBox.setSelectedItem(LineType.NONE); } lineTypeComboBox.setEnabled(!large); diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLineWidthPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLineWidthPane.java index 91e5612d1..48f622654 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLineWidthPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLineWidthPane.java @@ -9,10 +9,8 @@ public class VanChartLineWidthPane extends VanChartLineTypePane { private static final long serialVersionUID = 4537158946119294689L; @Override - protected Component[][] createContentComponent(Component[] lineTypeComponent, Component[] lineWidthComponent, Component[] lineStyleComponent, Component[] nullValueBreakComponent) { + protected Component[][] createContentComponent(Component[] lineStyleComponent, Component[] nullValueBreakComponent) { return new Component[][]{ - lineTypeComponent, - lineWidthComponent, nullValueBreakComponent }; } diff --git a/designer-chart/src/main/java/com/fr/van/chart/scatter/component/VanChartScatterLineTypePane.java b/designer-chart/src/main/java/com/fr/van/chart/scatter/component/VanChartScatterLineTypePane.java index 9e00449fb..7ac507408 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/scatter/component/VanChartScatterLineTypePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/scatter/component/VanChartScatterLineTypePane.java @@ -16,23 +16,20 @@ public class VanChartScatterLineTypePane extends VanChartLineTypePane { @Override protected void createLineStyle() { String[] textArray = new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Normal_Line"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_CurveLine")}; + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_CurveLine")}; lineStyle = new UIButtonGroup(textArray, new LineStyle[]{LineStyle.NORMAL, LineStyle.CURVE}); } @Override - protected Component[][] createContentComponent(Component[] lineTypeComponent, Component[] lineWidthComponent, Component[] lineStyleComponent, Component[] nullValueBreakComponent) { + protected Component[][] createContentComponent(Component[] lineStyleComponent, Component[] nullValueBreakComponent) { return new Component[][]{ - new Component[]{null, null}, - lineTypeComponent, - lineWidthComponent, lineStyleComponent }; } @Override protected VanChartAttrLine initVanChartAttrLine() { - VanChartAttrLine attrLine = new VanChartAttrLine(); + VanChartAttrLine attrLine = new VanChartAttrLine(); //默认为无线型,且默認空值不斷開 attrLine.setLineType(LineType.NONE); attrLine.setNullValueBreak(false);