|
|
|
@ -10,12 +10,22 @@ import com.fr.chart.chartattr.ChartCollection;
|
|
|
|
|
import com.fr.chart.charttypes.ChartTypeManager; |
|
|
|
|
import com.fr.chartx.attr.ChartProvider; |
|
|
|
|
import com.fr.design.ChartTypeInterfaceManager; |
|
|
|
|
import com.fr.design.chart.fun.ChartTypeUIProvider; |
|
|
|
|
import com.fr.design.designer.TargetComponent; |
|
|
|
|
import com.fr.design.gui.chart.BaseChartPropertyPane; |
|
|
|
|
import com.fr.design.gui.chart.ChartEditPaneProvider; |
|
|
|
|
import com.fr.design.gui.frpane.UITitlePanel; |
|
|
|
|
import com.fr.design.mainframe.chart.ChartEditPane; |
|
|
|
|
import com.fr.design.module.DesignModuleFactory; |
|
|
|
|
import com.fr.design.utils.gui.GUICoreUtils; |
|
|
|
|
import com.fr.general.GeneralContext; |
|
|
|
|
import com.fr.plugin.context.PluginContext; |
|
|
|
|
import com.fr.plugin.injectable.PluginModule; |
|
|
|
|
import com.fr.plugin.injectable.SpecialLevel; |
|
|
|
|
import com.fr.plugin.manage.PluginFilter; |
|
|
|
|
import com.fr.plugin.observer.PluginEvent; |
|
|
|
|
import com.fr.plugin.observer.PluginEventListener; |
|
|
|
|
import com.fr.plugin.observer.PluginEventType; |
|
|
|
|
import com.fr.stable.AssistUtils; |
|
|
|
|
|
|
|
|
|
import javax.swing.BorderFactory; |
|
|
|
@ -39,8 +49,11 @@ public class ChartPropertyPane extends BaseChartPropertyPane {
|
|
|
|
|
//ID一样的话 不用新建chartEditPane
|
|
|
|
|
private String currentID; |
|
|
|
|
|
|
|
|
|
private static PluginEventListener pluginEventListener; |
|
|
|
|
|
|
|
|
|
private ChartPropertyPane() { |
|
|
|
|
initComponent(); |
|
|
|
|
addListener(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
protected void initComponent() { |
|
|
|
@ -48,6 +61,27 @@ public class ChartPropertyPane extends BaseChartPropertyPane {
|
|
|
|
|
this.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void addListener() { |
|
|
|
|
if (pluginEventListener != null) { |
|
|
|
|
GeneralContext.stopListenPlugin(pluginEventListener); |
|
|
|
|
} |
|
|
|
|
pluginEventListener = new PluginEventListener() { |
|
|
|
|
@Override |
|
|
|
|
public void on(PluginEvent event) { |
|
|
|
|
//禁用启用图表插件 这边id置空。这样展示图表配置属性不管和上一个id是否一样 都新建chartEditPane
|
|
|
|
|
currentID = null; |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
GeneralContext.listenPlugin(PluginEventType.AfterRun, pluginEventListener, new PluginFilter() { |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public boolean accept(PluginContext context) { |
|
|
|
|
|
|
|
|
|
return context.contain(PluginModule.ExtraChartDesign); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void updateChartEditPane(String plotID) { |
|
|
|
|
if (!AssistUtils.equals(currentID, plotID)) { |
|
|
|
|