diff --git a/designer-chart/src/main/java/com/fr/design/locale/impl/EmptyDataMark.java b/designer-chart/src/main/java/com/fr/design/locale/impl/EmptyDataMark.java deleted file mode 100644 index 6b7a2f5fbd..0000000000 --- a/designer-chart/src/main/java/com/fr/design/locale/impl/EmptyDataMark.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.fr.design.locale.impl; - -import com.fr.general.GeneralContext; -import com.fr.general.IOUtils; -import com.fr.general.locale.LocaleMark; - -import java.awt.image.BufferedImage; -import java.util.HashMap; -import java.util.Locale; -import java.util.Map; - -/** - * 根据本地化信息设置服务器图表空数据提示图标 - * - * @author obo - * @version 11.0 - * Created by obo on 2023/3/22 - */ -public class EmptyDataMark implements LocaleMark { - - private Map map = new HashMap<>(); - - private static final BufferedImage ZH_EMPTY_DATA = IOUtils.readImage("com/fr/design/images/zh_emptydata.png"); - private static final BufferedImage US_EMPTY_DATA = IOUtils.readImage("/com/fr/design/images/us_emptydata.png"); - private static final BufferedImage ZH_TRADITIONAL_EMPTY_DATA = IOUtils.readImage("/com/fr/design/images/zh_traditional_emptydata.png"); - - public EmptyDataMark() { - map.put(Locale.CHINA, ZH_EMPTY_DATA); - map.put(Locale.US, US_EMPTY_DATA); - map.put(Locale.TAIWAN, ZH_TRADITIONAL_EMPTY_DATA); - } - @Override - public BufferedImage getValue() { - BufferedImage result = map.get(GeneralContext.getLocale()); - return result == null ? US_EMPTY_DATA : result; - } -} diff --git a/designer-chart/src/main/java/com/fr/design/module/ChartEmptyDataStylePane.java b/designer-chart/src/main/java/com/fr/design/module/ChartEmptyDataStylePane.java index e73bae010e..4f11af9102 100644 --- a/designer-chart/src/main/java/com/fr/design/module/ChartEmptyDataStylePane.java +++ b/designer-chart/src/main/java/com/fr/design/module/ChartEmptyDataStylePane.java @@ -10,13 +10,12 @@ import com.fr.design.gui.ibutton.UIRadioButton; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.locale.impl.EmptyDataMark; import com.fr.design.style.background.image.ImageFileChooser; import com.fr.design.style.background.image.ImagePreviewPane; import com.fr.design.utils.ImageUtils; import com.fr.design.utils.gui.GUICoreUtils; -import com.fr.general.locale.LocaleCenter; -import com.fr.general.locale.LocaleMark; +import com.fr.general.locale.image.LocaleImageFactory; +import com.fr.general.locale.image.LocaleImageMark; import com.fr.stable.Constants; import com.fr.stable.CoreGraphHelper; import com.fr.stable.StringUtils; @@ -63,10 +62,11 @@ public class ChartEmptyDataStylePane extends AbstractAttrNoScrollPane { private Image emptyDataImage = DEFAULT_EMPTY_DATA_IMAGE; private SwingWorker imageWorker; + private static final String EMPTY_DATA_IMAGE_PATH = "/com/fr/design/images/emptydata.png"; static { - LocaleMark localeMark = LocaleCenter.getMark(EmptyDataMark.class); - DEFAULT_EMPTY_DATA_IMAGE = localeMark.getValue(); + LocaleImageMark localeImageMark = LocaleImageFactory.getOrCreateLocaleMark(EMPTY_DATA_IMAGE_PATH); + DEFAULT_EMPTY_DATA_IMAGE = localeImageMark.getValue(); } @Override diff --git a/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java b/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java index f80bf08d5a..efd6ec73de 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java @@ -293,12 +293,24 @@ public class VanChartHyperLinkPane extends VanChartUIListControlPane { if (template == null) { return false; } - Class[] classes = new Class[]{ChartHyperRelateCellLink.class, ChartHyperRelateFloatLink.class}; - for (Class aClass : classes) { - if (template.getEditingReportIndex() == BaseJForm.FORM_TAB) { - // 编辑的是决策报表中的图表,那么没有ChartHyperRelateFloatLink 和 ChartHyperRelateCellLink 选项,有FormHyperlink 选项 - if (ComparatorUtils.equals(aClass, clazz)) { - return false; + + if (template.isJWorkBook()) { + // 如果是普通报表单元格,那么没有 FormHyperlink 选项 + FormHyperlinkProvider formHyperlink = StableFactory.getMarkedInstanceObjectFromClass(FormHyperlinkProvider.XML_TAG, FormHyperlinkProvider.class); + return !ComparatorUtils.equals(clazz, formHyperlink.getClass()); + } else { + // 如果是决策报表 + if (template.getEditingReportIndex() == BaseJForm.ELEMENTCASE_TAB) { + // 编辑的是决策报表中的报表块,那么没有 ChartHyperRelateFloatLink选项 + return !ComparatorUtils.equals(clazz, ChartHyperRelateFloatLink.class); + } + Class[] classes = new Class[]{ChartHyperRelateCellLink.class, ChartHyperRelateFloatLink.class}; + for (Class aClass : classes) { + if (template.getEditingReportIndex() == BaseJForm.FORM_TAB) { + // 编辑的是决策报表中的图表,那么没有 ChartHyperRelateFloatLink 和 ChartHyperRelateCellLink 选项 + if (ComparatorUtils.equals(aClass, clazz)) { + return false; + } } } } diff --git a/designer-chart/src/main/resources/com/fr/design/images/us_emptydata.png b/designer-chart/src/main/resources/com/fr/design/images/en_us_emptydata.png similarity index 100% rename from designer-chart/src/main/resources/com/fr/design/images/us_emptydata.png rename to designer-chart/src/main/resources/com/fr/design/images/en_us_emptydata.png diff --git a/designer-chart/src/main/resources/com/fr/design/images/zh_emptydata.png b/designer-chart/src/main/resources/com/fr/design/images/zh_cn_emptydata.png similarity index 100% rename from designer-chart/src/main/resources/com/fr/design/images/zh_emptydata.png rename to designer-chart/src/main/resources/com/fr/design/images/zh_cn_emptydata.png diff --git a/designer-chart/src/main/resources/com/fr/design/images/zh_traditional_emptydata.png b/designer-chart/src/main/resources/com/fr/design/images/zh_tw_emptydata.png similarity index 100% rename from designer-chart/src/main/resources/com/fr/design/images/zh_traditional_emptydata.png rename to designer-chart/src/main/resources/com/fr/design/images/zh_tw_emptydata.png