Browse Source

echarts开发文档

pull/1/head
richie 9 years ago
parent
commit
61e1d372cf
  1. 28
      document/echarts_type_pane.md
  2. 2
      readme.md
  3. 33
      src/com/fr/solution/plugin/chart/echarts/common/ui/AbstractEChartsTypePane.java
  4. 2
      src/com/fr/solution/plugin/chart/echarts/pie/ui/EChartsPieChartTypePane.java

28
document/echarts_type_pane.md

@ -0,0 +1,28 @@
# AbstractEChartsTypePane子类介绍
具有子类型的图表,都需要继承该类以实现各种子类型选择以及切换.
需要实现几个重要的方法
// 该选择界面能收的图表类型
`public boolean accept(Object ob)`
// 默认选中的图表
`public Chart getDefaultChart()`
// 图表选择界面读取并展现
`public void populateBean(Chart chart)`
// 获取选中的图表类型
`public Plot getSelectedClonedPlot()`
// 图表各种子类型的图标
`public String[] getIconsOfTypes()`
// 图表各种子类型的名字
`public String[] getNamesOfTypes()`

2
readme.md

@ -40,7 +40,7 @@
// 该方法用于描述图表类型选择界面(一种图表还会有若干种子类型,所以需要这个界面) // 该方法用于描述图表类型选择界面(一种图表还会有若干种子类型,所以需要这个界面)
`public AbstractChartTypePane getPlotTypePane()` [`public AbstractChartTypePane getPlotTypePane()`](document/echarts_type_pane.md)
// 该方法用于描述此种图表类型的使用数据集数据时的数据设置界面 // 该方法用于描述此种图表类型的使用数据集数据时的数据设置界面

33
src/com/fr/solution/plugin/chart/echarts/common/ui/AbstractEChartsTypePane.java

@ -8,6 +8,7 @@ import com.fr.design.mainframe.chart.gui.type.AbstractChartTypePane;
import com.fr.design.mainframe.chart.gui.type.ChartImagePane; import com.fr.design.mainframe.chart.gui.type.ChartImagePane;
import com.fr.general.FRLogger; import com.fr.general.FRLogger;
import com.fr.solution.plugin.chart.echarts.common.base.ECharts; import com.fr.solution.plugin.chart.echarts.common.base.ECharts;
import com.fr.stable.ArrayUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -22,8 +23,7 @@ public abstract class AbstractEChartsTypePane extends AbstractChartTypePane{
@Override @Override
protected String[] getTypeLayoutPath() { protected String[] getTypeLayoutPath() {
return new String[]{ return ArrayUtils.EMPTY_STRING_ARRAY;
};
} }
@Override @Override
@ -31,17 +31,32 @@ public abstract class AbstractEChartsTypePane extends AbstractChartTypePane{
return getIconsOfTypes(); return getIconsOfTypes();
} }
/**
* 各种图表子类型的图标,需要和图表的字类型数量一致
* @return 子类型图标的集合
*/
public abstract String[] getIconsOfTypes(); public abstract String[] getIconsOfTypes();
/** /**
* 不同字类型图表的名字 * 各种图表子类型的名字,需要和图表的字类型数量一致
* @return 名字 * @return 子类型的名字的集合
*/ */
public abstract String[] getNamesOfTypes(); public abstract String[] getNamesOfTypes();
/**
* 返回选择的图表子类型
* @return 图表类型
*/
public abstract Plot getSelectedClonedPlot(); public abstract Plot getSelectedClonedPlot();
/**
* 该选择界面能接收的图表类型
* @param ob 待判断的对象
* @return 如果该选择界面能接收,则返回true,否则返回false
*/
public abstract boolean accept(Object ob);
@Override @Override
protected List<ChartImagePane> initDemoList() { protected List<ChartImagePane> initDemoList() {
List <ChartImagePane> demoList = new ArrayList<ChartImagePane>(); List <ChartImagePane> demoList = new ArrayList<ChartImagePane>();
@ -73,10 +88,6 @@ public abstract class AbstractEChartsTypePane extends AbstractChartTypePane{
} }
} }
public boolean accept(Object ob) {
return ob instanceof ECharts;
}
protected void checkTypeChange(){ protected void checkTypeChange(){
for(int i = 0; i < typeDemo.size(); i++){ for(int i = 0; i < typeDemo.size(); i++){
if(typeDemo.get(i).isPressing && i != lastTypeIndex){ if(typeDemo.get(i).isPressing && i != lastTypeIndex){
@ -100,10 +111,4 @@ public abstract class AbstractEChartsTypePane extends AbstractChartTypePane{
FRLogger.getLogger().error(e.getMessage(), e); FRLogger.getLogger().error(e.getMessage(), e);
} }
} }
protected void cloneOldConditionCollection(Plot oldPlot, Plot newPlot) throws CloneNotSupportedException{
if (oldPlot.getConditionCollection() != null) {
newPlot.setConditionCollection((ConditionCollection)oldPlot.getConditionCollection().clone());
}
}
} }

2
src/com/fr/solution/plugin/chart/echarts/pie/ui/EChartsPieChartTypePane.java

@ -33,7 +33,7 @@ public class EChartsPieChartTypePane extends AbstractEChartsTypePane {
* @return 界面是否接受对象 * @return 界面是否接受对象
*/ */
public boolean accept(Object ob) { public boolean accept(Object ob) {
return (ob instanceof Chart) && ((Chart) ob).getPlot().accept(EChartsPiePlot.class); return (ob instanceof ECharts) && ((ECharts) ob).getPlot().accept(EChartsPiePlot.class);
} }
@Override @Override

Loading…
Cancel
Save