Browse Source

Merge branch 'release/10.0' of http://code.fineres.com/scm/~harrison/design into release/10.0

feature/big-screen
Harrison 4 years ago
parent
commit
b7c618b4c5
  1. 6
      designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java
  2. 28
      designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java
  3. 2
      designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java
  4. 16
      designer-base/src/main/java/com/fr/design/layout/FRGUIPaneFactory.java
  5. 31
      designer-base/src/main/java/com/fr/design/layout/VerticalFlowLayout.java
  6. 83
      designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxBorderPane.java
  7. 19
      designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxConditionPane.java
  8. 6
      designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxPlotPane.java
  9. 30
      designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxSeriesPane.java
  10. 2
      designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxTooltipContentPane.java
  11. 49
      designer-chart/src/main/java/com/fr/van/chart/box/condition/VanChartBoxBorderConditionPane.java
  12. 51
      designer-chart/src/main/java/com/fr/van/chart/box/condition/VanChartBoxNormalMarkerConditionPane.java
  13. 51
      designer-chart/src/main/java/com/fr/van/chart/box/condition/VanChartBoxOutlierMarkerConditionPane.java
  14. 8
      designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartMarkerPane.java

6
designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java

@ -256,7 +256,7 @@ public class PreferencePane extends BasicPane {
} }
private void createVcsSettingPane(JPanel generalPane) { private void createVcsSettingPane(JPanel generalPane) {
JPanel vcsPane = FRGUIPaneFactory.createVerticalTitledBorderPane(i18nText("Fine-Design_Vcs_Title")); JPanel vcsPane = FRGUIPaneFactory.createTopVerticalTitledBorderPane(i18nText("Fine-Design_Vcs_Title"));
generalPane.add(vcsPane); generalPane.add(vcsPane);
remindVcsLabel = new UILabel(i18nText("Fine-Design_Vcs_Remind")); remindVcsLabel = new UILabel(i18nText("Fine-Design_Vcs_Remind"));
remindVcsLabel.setVisible(!VcsHelper.getInstance().needInit()); remindVcsLabel.setVisible(!VcsHelper.getInstance().needInit());
@ -449,10 +449,6 @@ public class PreferencePane extends BasicPane {
JPanel colorSettingPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Preference_Setting_Colors")); JPanel colorSettingPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Preference_Setting_Colors"));
generalPane.add(colorSettingPane); generalPane.add(colorSettingPane);
new UILabel(i18nText("Fine-Design_Basic_Preference_Grid_Line_Color"));
new UILabel(i18nText("Fine-Design_Basic_Preference_Pagination_Line_Color"));
gridLineColorTBButton = new UIColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png")); gridLineColorTBButton = new UIColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png"));
gridLineColorTBButton.setEnabled(this.isEnabled()); gridLineColorTBButton.setEnabled(this.isEnabled());

28
designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java

@ -71,28 +71,42 @@ public class TableDataCreatorProducer {
} }
public TableDataNameObjectCreator[] createServerTableDataCreator() { public TableDataNameObjectCreator[] createServerTableDataCreator() {
TableDataNameObjectCreator dataBase = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_DS_Database_Query"), "/com/fr/design/images/data/dock/serverdatabase.png", DBTableData.class, TableDataNameObjectCreator dataBase = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_DS_Database_Query"),
"ds",
"/com/fr/design/images/data/dock/serverdatabase.png", DBTableData.class,
DBTableDataPane.class); DBTableDataPane.class);
TableDataNameObjectCreator ds_Class = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Class"), "/com/fr/design/images/data/dock/serverclasstabledata.png", ClassTableData.class, TableDataNameObjectCreator ds_Class = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Class"),
"Class",
"/com/fr/design/images/data/dock/serverclasstabledata.png", ClassTableData.class,
ClassTableDataPane.class); ClassTableDataPane.class);
TableDataNameObjectCreator table = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Embedded"), "/com/fr/design/images/data/dock/serverdatatable.png", EmbeddedTableData.class, TableDataNameObjectCreator table = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Embedded"),
"Embedded",
"/com/fr/design/images/data/dock/serverdatatable.png", EmbeddedTableData.class,
EmbeddedTableDataPane.class); EmbeddedTableDataPane.class);
TableDataNameObjectCreator fileTable = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_File"), "/com/fr/design/images/data/file.png", FileTableData.class, TableDataNameObjectCreator fileTable = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_File"),
"File",
"/com/fr/design/images/data/file.png", FileTableData.class,
FileTableDataSmallPane.class); FileTableDataSmallPane.class);
TableDataNameObjectCreator treeTable = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Tree"), "/com/fr/design/images/data/tree.png", TableDataNameObjectCreator treeTable = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Tree"),
"Tree",
"/com/fr/design/images/data/tree.png",
RecursionTableData.class, GlobalTreeTableDataPane.class) { RecursionTableData.class, GlobalTreeTableDataPane.class) {
public boolean isNeedParameterWhenPopulateJControlPane() { public boolean isNeedParameterWhenPopulateJControlPane() {
return true; return true;
} }
}; };
TableDataNameObjectCreator multiTable = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Relation"), "/com/fr/design/images/data/multi.png", TableDataNameObjectCreator multiTable = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Relation"),
"Multi",
"/com/fr/design/images/data/multi.png",
ConditionTableData.class, GlobalMultiTDTableDataPane.class) { ConditionTableData.class, GlobalMultiTDTableDataPane.class) {
public boolean isNeedParameterWhenPopulateJControlPane() { public boolean isNeedParameterWhenPopulateJControlPane() {
return true; return true;
} }
}; };
TableDataNameObjectCreator storeProcedure = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Stored_Procedure"), "/com/fr/design/images/data/store_procedure.png", TableDataNameObjectCreator storeProcedure = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tabledata_Type_Stored_Procedure"),
"Proc",
"/com/fr/design/images/data/store_procedure.png",
StoreProcedure.class, ProcedureDataPane.class) { StoreProcedure.class, ProcedureDataPane.class) {
@Override @Override
public boolean shouldInsertSeparator() { public boolean shouldInsertSeparator() {

2
designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java vendored

@ -1,6 +1,6 @@
package com.fr.design.env; package com.fr.design.env;
import com.fr.cluster.engine.remote.ClusterOperator; import com.fr.cluster.engine.rpc.remote.ClusterOperator;
import com.fr.design.i18n.Toolkit; import com.fr.design.i18n.Toolkit;
import com.fr.base.operator.common.CommonOperator; import com.fr.base.operator.common.CommonOperator;
import com.fr.rpc.ExceptionHandler; import com.fr.rpc.ExceptionHandler;

16
designer-base/src/main/java/com/fr/design/layout/FRGUIPaneFactory.java

@ -168,6 +168,22 @@ public class FRGUIPaneFactory {
return jp; return jp;
} }
/**
* 创建一个带标题边框面板垂直居左布局组件顶对齐
*
* @param string 边框标题
* @return JPanel对象
*/
public static JPanel createTopVerticalTitledBorderPane(String string) {
JPanel jp = new JPanel();
UITitledBorder explainBorder = UITitledBorder.createBorderWithTitle(string);
jp.setBorder(explainBorder);
VerticalFlowLayout layout = new VerticalFlowLayout(VerticalFlowLayout.TOP);
layout.setAlignLeft(true);
jp.setLayout(layout);
return jp;
}
/** /**
* 创建一个带标题边框面板并且居中显示 * 创建一个带标题边框面板并且居中显示
* *

31
designer-base/src/main/java/com/fr/design/layout/VerticalFlowLayout.java

@ -16,20 +16,17 @@ import java.awt.LayoutManager;
public class VerticalFlowLayout implements LayoutManager, java.io.Serializable { public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
/** /**
* This value indicates that each row of components * 竖直方向上将子组件设置为顶对齐方式
* should be left-justified.
*/ */
public static final int TOP = 0; public static final int TOP = 0;
/** /**
* This value indicates that each row of components * 竖直方向上将子组件设置为居中对齐方式
* should be centered.
*/ */
public static final int CENTER = 1; public static final int CENTER = 1;
/** /**
* This value indicates that each row of components * 竖直方向上将子组件设置为底对齐方式
* should be right-justified.
*/ */
public static final int BOTTOM = 2; public static final int BOTTOM = 2;
@ -71,7 +68,9 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
*/ */
int newAlign; // This is the one we actually use int newAlign; // This is the one we actually use
// 当列宽不一致时,是否需要左对齐(默认居中对齐) /**
* 当列宽不一致时是否需要将水平方向设置成左对齐默认水平方向为居中对齐
*/
boolean isAlignLeft = false; boolean isAlignLeft = false;
/** /**
@ -220,6 +219,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
* @param name the name of the component * @param name the name of the component
* @param comp the component to be added * @param comp the component to be added
*/ */
@Override
public void addLayoutComponent(String name, Component comp) { public void addLayoutComponent(String name, Component comp) {
} }
@ -230,6 +230,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
* @param comp the component to remove * @param comp the component to remove
* @see java.awt.Container#removeAll * @see java.awt.Container#removeAll
*/ */
@Override
public void removeLayoutComponent(Component comp) { public void removeLayoutComponent(Component comp) {
} }
@ -244,6 +245,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
* @see #minimumLayoutSize * @see #minimumLayoutSize
* @see java.awt.Container#getPreferredSize * @see java.awt.Container#getPreferredSize
*/ */
@Override
public Dimension preferredLayoutSize(Container target) { public Dimension preferredLayoutSize(Container target) {
synchronized (target.getTreeLock()) { synchronized (target.getTreeLock()) {
Dimension dim = new Dimension(0, 0); Dimension dim = new Dimension(0, 0);
@ -255,7 +257,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
if (m.isVisible()) { if (m.isVisible()) {
Dimension d = m.getPreferredSize(); Dimension d = m.getPreferredSize();
firstVisibleComponent = dialWithDim4PreferredLayoutSize(dim, d, firstVisibleComponent); firstVisibleComponent = dealWithDim4PreferredLayoutSize(dim, d, firstVisibleComponent);
} }
} }
Insets insets = target.getInsets(); Insets insets = target.getInsets();
@ -265,7 +267,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
} }
} }
protected boolean dialWithDim4PreferredLayoutSize(Dimension dim, Dimension d, boolean firstVisibleComponent) { protected boolean dealWithDim4PreferredLayoutSize(Dimension dim, Dimension d, boolean firstVisibleComponent) {
dim.width = Math.max(dim.width, d.width); dim.width = Math.max(dim.width, d.width);
if (firstVisibleComponent) { if (firstVisibleComponent) {
firstVisibleComponent = false; firstVisibleComponent = false;
@ -289,6 +291,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
* @see java.awt.Container * @see java.awt.Container
* @see java.awt.Container#doLayout * @see java.awt.Container#doLayout
*/ */
@Override
public Dimension minimumLayoutSize(Container target) { public Dimension minimumLayoutSize(Container target) {
synchronized (target.getTreeLock()) { synchronized (target.getTreeLock()) {
Dimension dim = new Dimension(0, 0); Dimension dim = new Dimension(0, 0);
@ -300,7 +303,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
if (m.isVisible()) { if (m.isVisible()) {
Dimension d = m.getMinimumSize(); Dimension d = m.getMinimumSize();
firstVisibleComponent = dialWithDim4MinimumLayoutSize(dim, d, i, firstVisibleComponent); firstVisibleComponent = dealWithDim4MinimumLayoutSize(dim, d, i, firstVisibleComponent);
} }
} }
Insets insets = target.getInsets(); Insets insets = target.getInsets();
@ -310,7 +313,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
} }
} }
protected boolean dialWithDim4MinimumLayoutSize(Dimension dim, Dimension d, int i, boolean firstVisibleComponent) { protected boolean dealWithDim4MinimumLayoutSize(Dimension dim, Dimension d, int i, boolean firstVisibleComponent) {
dim.width = Math.max(dim.width, d.width); dim.width = Math.max(dim.width, d.width);
if (i > 0) { if (i > 0) {
dim.height += vgap; dim.height += vgap;
@ -370,6 +373,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
* @see java.awt.Container * @see java.awt.Container
* @see java.awt.Container#doLayout * @see java.awt.Container#doLayout
*/ */
@Override
public void layoutContainer(Container target) { public void layoutContainer(Container target) {
synchronized (target.getTreeLock()) { synchronized (target.getTreeLock()) {
Insets insets = target.getInsets(); Insets insets = target.getInsets();
@ -410,7 +414,9 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
protected int[] dealWithDim4LayoutContainer(Container target, Insets insets, Dimension d, int x, int y, int roww, int start, int maxlen, int i, boolean ltr) { protected int[] dealWithDim4LayoutContainer(Container target, Insets insets, Dimension d, int x, int y, int roww, int start, int maxlen, int i, boolean ltr) {
if ((y == 0) || ((y + d.height) <= maxlen)) { if ((y == 0) || ((y + d.height) <= maxlen)) {
if (y > 0) y += vgap; if (y > 0) {
y += vgap;
}
y += d.height; y += d.height;
roww = Math.max(roww, d.width); roww = Math.max(roww, d.width);
} else { } else {
@ -449,6 +455,7 @@ public class VerticalFlowLayout implements LayoutManager, java.io.Serializable {
* *
* @return a string representation of this layout * @return a string representation of this layout
*/ */
@Override
public String toString() { public String toString() {
String str = ""; String str = "";
switch (this.newAlign) { switch (this.newAlign) {

83
designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxBorderPane.java

@ -0,0 +1,83 @@
package com.fr.van.chart.box;
import com.fr.base.background.ColorBackground;
import com.fr.design.beans.BasicBeanPane;
import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.ispinner.UISpinner;
import com.fr.design.i18n.Toolkit;
import com.fr.design.layout.TableLayout;
import com.fr.plugin.chart.base.AttrBorderWithWidth;
import com.fr.stable.StringUtils;
import com.fr.van.chart.designer.TableLayout4VanChartHelper;
import com.fr.van.chart.designer.component.background.VanChartMarkerBackgroundPane;
import javax.swing.JPanel;
import java.awt.BorderLayout;
import java.awt.Component;
public class VanChartBoxBorderPane extends BasicBeanPane<AttrBorderWithWidth> {
private VanChartMarkerBackgroundPane colorBackground;
private UISpinner lineWidth;
public VanChartBoxBorderPane() {
colorBackground = new VanChartMarkerBackgroundPane() {
protected Component[][] getPaneComponents() {
return new Component[][]{
new Component[]{null, null},
new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Color")), typeComboBox},
new Component[]{null, centerPane},
};
}
};
lineWidth = new UISpinner(0.5, Double.MAX_VALUE, 0.5, 0.5);
Component[][] components = new Component[][]{
new Component[]{null, null},
new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Line_Width")), lineWidth},
new Component[]{colorBackground, null}
};
double p = TableLayout.PREFERRED;
double f = TableLayout.FILL;
double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH;
double[] columnSize = {f, e};
double[] rowSize = {p, p, p};
JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize);
this.setLayout(new BorderLayout());
this.add(panel, BorderLayout.CENTER);
}
public void populateBean(AttrBorderWithWidth border) {
if (border.getBorderColor() != null) {
this.colorBackground.populate(ColorBackground.getInstance(border.getBorderColor()));
}
this.lineWidth.setValue(border.getLineWidth());
}
public AttrBorderWithWidth updateBean() {
AttrBorderWithWidth border = new AttrBorderWithWidth();
ColorBackground colorBackground = this.colorBackground.update();
if (colorBackground == null) {
border.setBorderColor(null);
} else {
border.setBorderColor(colorBackground.getColor());
}
if (this.lineWidth != null) {
border.setLineWidth(this.lineWidth.getValue());
}
return border;
}
protected String title4PopupWindow() {
return StringUtils.EMPTY;
}
}

19
designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxConditionPane.java

@ -2,15 +2,19 @@ package com.fr.van.chart.box;
import com.fr.chart.base.AttrAlpha; import com.fr.chart.base.AttrAlpha;
import com.fr.chart.base.AttrBackground; import com.fr.chart.base.AttrBackground;
import com.fr.chart.base.AttrBorder;
import com.fr.chart.chartattr.Plot; import com.fr.chart.chartattr.Plot;
import com.fr.design.chart.series.SeriesCondition.ChartConditionPane; import com.fr.design.chart.series.SeriesCondition.ChartConditionPane;
import com.fr.design.chart.series.SeriesCondition.DataSeriesConditionPane; import com.fr.design.chart.series.SeriesCondition.DataSeriesConditionPane;
import com.fr.design.chart.series.SeriesCondition.LabelAlphaPane; import com.fr.design.chart.series.SeriesCondition.LabelAlphaPane;
import com.fr.plugin.chart.base.AttrBorderWithWidth;
import com.fr.plugin.chart.box.VanChartAttrNormalMarker;
import com.fr.plugin.chart.box.VanChartAttrOutlierMarker;
import com.fr.plugin.chart.box.VanChartBoxPlot; import com.fr.plugin.chart.box.VanChartBoxPlot;
import com.fr.plugin.chart.type.ConditionKeyType; import com.fr.plugin.chart.type.ConditionKeyType;
import com.fr.van.chart.column.VanChartColumnLabelBorderPane; import com.fr.van.chart.box.condition.VanChartBoxBorderConditionPane;
import com.fr.van.chart.designer.other.condition.item.VanChartColumnSeriesColorConditionPane; import com.fr.van.chart.box.condition.VanChartBoxNormalMarkerConditionPane;
import com.fr.van.chart.box.condition.VanChartBoxOutlierMarkerConditionPane;
import com.fr.van.chart.designer.other.condition.item.VanChartSeriesColorConditionPane;
import java.awt.Dimension; import java.awt.Dimension;
@ -27,9 +31,14 @@ public class VanChartBoxConditionPane extends DataSeriesConditionPane {
} }
protected void addBasicAction() { protected void addBasicAction() {
classPaneMap.put(AttrBackground.class, new VanChartColumnSeriesColorConditionPane(this)); classPaneMap.put(AttrBackground.class, new VanChartSeriesColorConditionPane(this));
classPaneMap.put(AttrAlpha.class, new LabelAlphaPane(this)); classPaneMap.put(AttrAlpha.class, new LabelAlphaPane(this));
classPaneMap.put(AttrBorder.class, new VanChartColumnLabelBorderPane(this)); classPaneMap.put(AttrBorderWithWidth.class, new VanChartBoxBorderConditionPane(this));
if (((VanChartBoxPlot) plot).isDetailed()) {
classPaneMap.put(VanChartAttrNormalMarker.class, new VanChartBoxNormalMarkerConditionPane(this));
classPaneMap.put(VanChartAttrOutlierMarker.class, new VanChartBoxOutlierMarkerConditionPane(this));
}
} }
protected void addStyleAction() { protected void addStyleAction() {

6
designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxPlotPane.java

@ -3,6 +3,7 @@ package com.fr.van.chart.box;
import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.Chart;
import com.fr.chart.chartattr.Plot; import com.fr.chart.chartattr.Plot;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.plugin.chart.base.VanChartTools;
import com.fr.plugin.chart.box.BoxIndependentVanChart; import com.fr.plugin.chart.box.BoxIndependentVanChart;
import com.fr.plugin.chart.box.VanChartBoxPlot; import com.fr.plugin.chart.box.VanChartBoxPlot;
import com.fr.van.chart.designer.type.AbstractVanChartTypePane; import com.fr.van.chart.designer.type.AbstractVanChartTypePane;
@ -42,4 +43,9 @@ public class VanChartBoxPlotPane extends AbstractVanChartTypePane {
return BoxIndependentVanChart.BoxVanChartTypes[0]; return BoxIndependentVanChart.BoxVanChartTypes[0];
} }
protected VanChartTools createVanChartTools() {
VanChartTools tools = new VanChartTools();
tools.setSort(false);
return tools;
}
} }

30
designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxSeriesPane.java

@ -9,7 +9,6 @@ import com.fr.plugin.chart.box.VanChartBoxPlot;
import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.TableLayout4VanChartHelper;
import com.fr.van.chart.designer.component.VanChartBeautyPane; import com.fr.van.chart.designer.component.VanChartBeautyPane;
import com.fr.van.chart.designer.component.VanChartMarkerPane; import com.fr.van.chart.designer.component.VanChartMarkerPane;
import com.fr.van.chart.designer.component.border.VanChartBorderPane;
import com.fr.van.chart.designer.style.series.VanChartAbstractPlotSeriesPane; import com.fr.van.chart.designer.style.series.VanChartAbstractPlotSeriesPane;
import javax.swing.JPanel; import javax.swing.JPanel;
@ -18,6 +17,8 @@ import java.awt.Component;
public class VanChartBoxSeriesPane extends VanChartAbstractPlotSeriesPane { public class VanChartBoxSeriesPane extends VanChartAbstractPlotSeriesPane {
private VanChartBoxBorderPane boxBorderPane;
private JPanel normalMarker; private JPanel normalMarker;
private JPanel outlierMarker; private JPanel outlierMarker;
@ -36,7 +37,7 @@ public class VanChartBoxSeriesPane extends VanChartAbstractPlotSeriesPane {
double[] rowSize = {p, p, p}; double[] rowSize = {p, p, p};
Component[][] components = new Component[][]{ Component[][] components = new Component[][]{
new Component[]{createBorderPane()}, new Component[]{createBoxBorderPane()},
new Component[]{createNormalValuePane()}, new Component[]{createNormalValuePane()},
new Component[]{createOutlierValuePane()} new Component[]{createOutlierValuePane()}
}; };
@ -46,20 +47,21 @@ public class VanChartBoxSeriesPane extends VanChartAbstractPlotSeriesPane {
return contentPane; return contentPane;
} }
protected VanChartBorderPane createDiffBorderPane() { private JPanel createBoxBorderPane() {
return new VanChartBorderPane(); boxBorderPane = new VanChartBoxBorderPane();
return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Toolkit.i18nText("Fine-Design_Chart_Border"), boxBorderPane);
} }
private JPanel createNormalValuePane() { private JPanel createNormalValuePane() {
normalValuePane = new VanChartMarkerPane(); normalValuePane = new VanChartMarkerPane();
normalMarker = TableLayout4VanChartHelper.createExpandablePaneWithTitle(Toolkit.i18nText("Fine-Engine_Chart_Normal_Value"), normalValuePane); normalMarker = TableLayout4VanChartHelper.createExpandablePaneWithTitle(Toolkit.i18nText("Fine-Design_Chart_Normal_Value"), normalValuePane);
return normalMarker; return normalMarker;
} }
private JPanel createOutlierValuePane() { private JPanel createOutlierValuePane() {
outlierValuePane = new VanChartMarkerPane(); outlierValuePane = new VanChartMarkerPane();
outlierMarker = TableLayout4VanChartHelper.createExpandablePaneWithTitle(Toolkit.i18nText("Fine-Engine_Chart_Outlier_Value"), outlierValuePane); outlierMarker = TableLayout4VanChartHelper.createExpandablePaneWithTitle(Toolkit.i18nText("Fine-Design_Chart_Outlier_Value"), outlierValuePane);
return outlierMarker; return outlierMarker;
} }
@ -85,10 +87,13 @@ public class VanChartBoxSeriesPane extends VanChartAbstractPlotSeriesPane {
super.populateBean(plot); super.populateBean(plot);
if (plot instanceof VanChartBoxPlot) { if (plot instanceof VanChartBoxPlot) {
normalValuePane.populate(((VanChartBoxPlot) plot).getNormalValue()); VanChartBoxPlot boxPlot = (VanChartBoxPlot) plot;
outlierValuePane.populate(((VanChartBoxPlot) plot).getOutlierValue());
boxBorderPane.populateBean(boxPlot.getBorder());
normalValuePane.populate(boxPlot.getNormalValue());
outlierValuePane.populate(boxPlot.getOutlierValue());
checkMarkerPane(((VanChartBoxPlot) plot).isDetailed()); checkMarkerPane(boxPlot.isDetailed());
} }
} }
@ -98,8 +103,11 @@ public class VanChartBoxSeriesPane extends VanChartAbstractPlotSeriesPane {
} }
if (plot instanceof VanChartBoxPlot) { if (plot instanceof VanChartBoxPlot) {
((VanChartBoxPlot) plot).setNormalValue(normalValuePane.update()); VanChartBoxPlot boxPlot = (VanChartBoxPlot) plot;
((VanChartBoxPlot) plot).setOutlierValue(outlierValuePane.update());
boxPlot.setBorder(boxBorderPane.updateBean());
boxPlot.setNormalValue(normalValuePane.update());
boxPlot.setOutlierValue(outlierValuePane.update());
} }
super.updateBean(plot); super.updateBean(plot);

2
designer-chart/src/main/java/com/fr/van/chart/box/VanChartBoxTooltipContentPane.java

@ -62,7 +62,7 @@ public class VanChartBoxTooltipContentPane extends VanChartTooltipContentPane {
}; };
outlier = new VanChartFormatPaneWithCheckBox(parent, showOnPane) { outlier = new VanChartFormatPaneWithCheckBox(parent, showOnPane) {
protected String getCheckBoxText() { protected String getCheckBoxText() {
return Toolkit.i18nText("Fine-Engine_Chart_Outlier_Value"); return Toolkit.i18nText("Fine-Design_Chart_Outlier_Value");
} }
}; };
} }

49
designer-chart/src/main/java/com/fr/van/chart/box/condition/VanChartBoxBorderConditionPane.java

@ -0,0 +1,49 @@
package com.fr.van.chart.box.condition;
import com.fr.chart.base.DataSeriesCondition;
import com.fr.design.condition.ConditionAttributesPane;
import com.fr.design.i18n.Toolkit;
import com.fr.plugin.chart.base.AttrBorderWithWidth;
import com.fr.van.chart.box.VanChartBoxBorderPane;
import com.fr.van.chart.designer.other.condition.item.AbstractNormalMultiLineConditionPane;
import javax.swing.JPanel;
public class VanChartBoxBorderConditionPane extends AbstractNormalMultiLineConditionPane {
private VanChartBoxBorderPane borderPane;
protected JPanel initContentPane() {
borderPane = new VanChartBoxBorderPane();
return borderPane;
}
public VanChartBoxBorderConditionPane(ConditionAttributesPane conditionAttributesPane) {
super(conditionAttributesPane);
}
public String nameForPopupMenuItem() {
return Toolkit.i18nText("Fine-Design_Chart_Border");
}
protected String getItemLabelString() {
return nameForPopupMenuItem();
}
protected String title4PopupWindow() {
return nameForPopupMenuItem();
}
public void setDefault() {
borderPane.populateBean(new AttrBorderWithWidth());
}
public void populate(DataSeriesCondition condition) {
if (condition instanceof AttrBorderWithWidth) {
this.borderPane.populateBean((AttrBorderWithWidth) condition);
}
}
public DataSeriesCondition update() {
return this.borderPane.updateBean();
}
}

51
designer-chart/src/main/java/com/fr/van/chart/box/condition/VanChartBoxNormalMarkerConditionPane.java

@ -0,0 +1,51 @@
package com.fr.van.chart.box.condition;
import com.fr.chart.base.DataSeriesCondition;
import com.fr.design.condition.ConditionAttributesPane;
import com.fr.design.i18n.Toolkit;
import com.fr.plugin.chart.base.VanChartAttrMarker;
import com.fr.plugin.chart.box.VanChartAttrNormalMarker;
import com.fr.plugin.chart.marker.type.MarkerType;
import com.fr.van.chart.designer.component.VanChartMarkerPane;
import com.fr.van.chart.designer.other.condition.item.VanChartMarkerConditionPane;
public class VanChartBoxNormalMarkerConditionPane extends VanChartMarkerConditionPane {
public VanChartBoxNormalMarkerConditionPane(ConditionAttributesPane conditionAttributesPane) {
super(conditionAttributesPane);
}
public String nameForPopupMenuItem() {
return Toolkit.i18nText("Fine-Design_Chart_Normal_Value");
}
protected String getItemLabelString() {
return nameForPopupMenuItem();
}
protected void initMarkerPane() {
markerPane = new VanChartMarkerPane() {
protected VanChartAttrMarker createNewAttrMarker() {
return new VanChartAttrNormalMarker();
}
};
}
public void setDefault() {
VanChartAttrNormalMarker normalMarker = new VanChartAttrNormalMarker();
normalMarker.setMarkerType(MarkerType.MARKER_CIRCLE);
markerPane.populate(new VanChartAttrNormalMarker());
}
public void populate(DataSeriesCondition condition) {
if (condition instanceof VanChartAttrNormalMarker) {
markerPane.populate((VanChartAttrNormalMarker) condition);
}
}
public DataSeriesCondition update() {
return markerPane.update();
}
}

51
designer-chart/src/main/java/com/fr/van/chart/box/condition/VanChartBoxOutlierMarkerConditionPane.java

@ -0,0 +1,51 @@
package com.fr.van.chart.box.condition;
import com.fr.chart.base.DataSeriesCondition;
import com.fr.design.condition.ConditionAttributesPane;
import com.fr.design.i18n.Toolkit;
import com.fr.plugin.chart.base.VanChartAttrMarker;
import com.fr.plugin.chart.box.VanChartAttrOutlierMarker;
import com.fr.plugin.chart.marker.type.MarkerType;
import com.fr.van.chart.designer.component.VanChartMarkerPane;
import com.fr.van.chart.designer.other.condition.item.VanChartMarkerConditionPane;
public class VanChartBoxOutlierMarkerConditionPane extends VanChartMarkerConditionPane {
public VanChartBoxOutlierMarkerConditionPane(ConditionAttributesPane conditionAttributesPane) {
super(conditionAttributesPane);
}
public String nameForPopupMenuItem() {
return Toolkit.i18nText("Fine-Design_Chart_Outlier_Value");
}
protected String getItemLabelString() {
return nameForPopupMenuItem();
}
public void setDefault() {
VanChartAttrOutlierMarker outlierMarker = new VanChartAttrOutlierMarker();
outlierMarker.setMarkerType(MarkerType.MARKER_CIRCLE_HOLLOW);
markerPane.populate(outlierMarker);
}
protected void initMarkerPane() {
markerPane = new VanChartMarkerPane() {
protected VanChartAttrMarker createNewAttrMarker() {
return new VanChartAttrOutlierMarker();
}
};
}
public void populate(DataSeriesCondition condition) {
if (condition instanceof VanChartAttrOutlierMarker) {
markerPane.populate((VanChartAttrOutlierMarker) condition);
}
}
public DataSeriesCondition update() {
return markerPane.update();
}
}

8
designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartMarkerPane.java

@ -104,9 +104,13 @@ public class VanChartMarkerPane extends BasicPane {
return Toolkit.i18nText("Fine-Design_Chart_Marker"); return Toolkit.i18nText("Fine-Design_Chart_Marker");
} }
protected VanChartAttrMarker createNewAttrMarker(){
return new VanChartAttrMarker();
}
public void populate(VanChartAttrMarker marker) { public void populate(VanChartAttrMarker marker) {
if(marker == null){ if(marker == null){
marker = new VanChartAttrMarker(); marker = createNewAttrMarker();
} }
commonORCustom.setSelectedIndex(marker.isCommon() ? 0 : 1); commonORCustom.setSelectedIndex(marker.isCommon() ? 0 : 1);
if(marker.isCommon()){ if(marker.isCommon()){
@ -120,7 +124,7 @@ public class VanChartMarkerPane extends BasicPane {
} }
public VanChartAttrMarker update() { public VanChartAttrMarker update() {
VanChartAttrMarker marker = new VanChartAttrMarker(); VanChartAttrMarker marker = createNewAttrMarker();
if(commonORCustom.getSelectedIndex() == 0){ if(commonORCustom.getSelectedIndex() == 0){
commonMarkerPane.updateBean(marker); commonMarkerPane.updateBean(marker);
} else { } else {

Loading…
Cancel
Save