Browse Source

Merge pull request #12082 in DESIGN/design from release/10.0 to bugfix/10.0

* commit '27d3ddffa1ab74177118b4adfbf8da2b7f17e671':
  REPORT-94597 安装【平台内打开标签页】插件,FR图表超链会多两个重复下拉项 改用ListMap
  REPORT-94597 安装【平台内打开标签页】插件,FR图表超链会多两个重复下拉项
bugfix/10.0
superman 2 years ago
parent
commit
7a6ac53d9e
  1. 15
      designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java

15
designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java

@ -152,24 +152,23 @@ public class VanChartHyperLinkPane extends VanChartUIListControlPane {
setPlot(plot); setPlot(plot);
HashMap paneMap = getHyperlinkMap(plot); HashMap paneMap = getHyperlinkMap(plot);
//安装平台内打开插件时,添加相应按钮
Set<HyperlinkProvider> providers = ExtraDesignClassManager.getInstance().getArray(HyperlinkProvider.XML_TAG);
java.util.List<UIMenuNameableCreator> list = refreshList(paneMap); java.util.List<UIMenuNameableCreator> list = refreshList(paneMap);
Map<String, NameObjectCreator> creators = new ListMap<>();
int size = list.size(); int size = list.size();
NameObjectCreator[] creators = new NameObjectCreator[list.size() + providers.size()];
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
UIMenuNameableCreator uiMenuNameableCreator = list.get(i); UIMenuNameableCreator uiMenuNameableCreator = list.get(i);
creators[i] = new NameObjectCreator(uiMenuNameableCreator.getName(), uiMenuNameableCreator.getObj().getClass(), uiMenuNameableCreator.getPaneClazz()); NameObjectCreator creator = new NameObjectCreator(uiMenuNameableCreator.getName(), uiMenuNameableCreator.getObj().getClass(), uiMenuNameableCreator.getPaneClazz());
creators.put(uiMenuNameableCreator.getName(), creator);
} }
//安装平台内打开插件时, 添加/替换 相应按钮
Set<HyperlinkProvider> providers = ExtraDesignClassManager.getInstance().getArray(HyperlinkProvider.XML_TAG);
for (HyperlinkProvider provider : providers) { for (HyperlinkProvider provider : providers) {
NameableCreator creator = provider.createHyperlinkCreator(); NameableCreator creator = provider.createHyperlinkCreator();
if (creator != null) { if (creator != null) {
creators[size] = new NameObjectCreator(creator.menuName(), creator.getHyperlink(), creator.getUpdatePane()); creators.put(creator.menuName(), new NameObjectCreator(creator.menuName(), creator.getHyperlink(), creator.getUpdatePane()));
size++;
} }
} }
refreshNameableCreator(creators.values().toArray(new NameObjectCreator[0]));
refreshNameableCreator(creators);
java.util.List<NameObject> nameObjects = new ArrayList<NameObject>(); java.util.List<NameObject> nameObjects = new ArrayList<NameObject>();

Loading…
Cancel
Save