Browse Source

CHART-21951 第三方图表插件无法创建复用组件

bugfix/11.0
kuangshuai 3 years ago
parent
commit
39703b20da
  1. 32
      designer-realize/src/main/java/com/fr/design/share/effect/EffectItemGroup.java

32
designer-realize/src/main/java/com/fr/design/share/effect/EffectItemGroup.java

@ -109,16 +109,7 @@ public class EffectItemGroup {
Object value = cellElement.getValue(); Object value = cellElement.getValue();
if (value instanceof ChartCollection) { if (value instanceof ChartCollection) {
ChartCollection chartCollection = (ChartCollection) value; ChartCollection chartCollection = (ChartCollection) value;
for (int index = 0; index < chartCollection.getChartCount(); index++) { initChartEditorByChartCollection(chartCollection, cellSourceNode);
Chart chart= (Chart) chartCollection.getChart(index, ChartProvider.class);
Plot plot = chart.getPlot();
if (plot == null) {
continue;
}
SourceNode chartSourceNode = SourceNodeUtils.createSourceNode(plot, chartCollection.getChartName(index), cellSourceNode);
initChartPlot(plot, chartSourceNode, false);
}
} }
} }
@ -127,16 +118,23 @@ public class EffectItemGroup {
private void initChartEditor() { private void initChartEditor() {
ChartEditor editor = (ChartEditor) this.widget; ChartEditor editor = (ChartEditor) this.widget;
ChartCollection chartCollection = (ChartCollection) editor.getChartCollection(); ChartCollection chartCollection = (ChartCollection) editor.getChartCollection();
initChartEditorByChartCollection(chartCollection, null);
}
private void initChartEditorByChartCollection(ChartCollection chartCollection, SourceNode sourceNode) {
for (int index = 0; index < chartCollection.getChartCount(); index++) { for (int index = 0; index < chartCollection.getChartCount(); index++) {
Chart chart= (Chart) chartCollection.getChart(index, ChartProvider.class); ChartProvider chartProvider = chartCollection.getChart(index, ChartProvider.class);
Plot plot = chart.getPlot(); if (chartProvider instanceof Chart) {
if (plot == null) { Chart chart= (Chart) chartCollection.getChart(index, ChartProvider.class);
continue; Plot plot = chart.getPlot();
if (plot == null) {
continue;
}
SourceNode plotSourceNode = SourceNodeUtils.createSourceNode(plot, chartCollection.getChartName(index), sourceNode);
initChartPlot(plot, plotSourceNode, false);
} }
SourceNode plotSourceNode = SourceNodeUtils.createSourceNode(plot, chartCollection.getChartName(index), null);
initChartPlot(plot, plotSourceNode, false);
} }
} }
private void initChartPlot(Plot plot, SourceNode sourceNode, boolean isSubChart) { private void initChartPlot(Plot plot, SourceNode sourceNode, boolean isSubChart) {

Loading…
Cancel
Save