Browse Source

Merge pull request #3390 in DESIGN/design from feature/10.0 to research/10.0

* commit 'a159bab44e80c35eb5228e371afc72aa6b897d22':
  REPORT-47073 【冒烟】安装插件,本来应该在设计面板右侧显示的现在不显示了 【问题原因】在EastRegionContainerPane中会根据按钮的不同状态,切换其icon后缀,之前的是_normal.png/_disabled.png等,但是在换图标迭代中,主jar里的这部分图标都换成了svg,所以给后缀改成了_normal.svg等,但是某些插件中用的也是这个逻辑,但是插件中没有适配svg图标,所以会造成找不到图标,然后表现为图标显示为空白 【改动思路】在IconUtils中为这种类型的图标做适配,面对带明确后缀.svg的图标,如果没找到资源,就换成.png去获取图标
  REPORT-46971 release->final
  无JIRA任务 接口签名重复
research/10.0
superman 4 years ago
parent
commit
6671c24714
  1. 7
      designer-base/src/main/java/com/fr/base/svg/IconUtils.java
  2. 2
      designer-form/src/main/java/com/fr/design/designer/beans/LayoutAdapter.java

7
designer-base/src/main/java/com/fr/base/svg/IconUtils.java

@ -35,7 +35,12 @@ public class IconUtils {
if (resource.contains(SUFFIX_SEPARATOR)) {
// 判断是否以.svg结尾
if (resource.endsWith(ICON_SUFFIX_SVG)) {
return SVGIcon.readSVGIcon(resource);
if (IOUtils.readResource(resource) != null) {
return SVGIcon.readSVGIcon(resource);
}
// 适配某些插件里是_normal.png、_selected.png的情况
String pngResource = resource.replace(ICON_SUFFIX_SVG, ICON_SUFFIX_PNG);
return IOUtils.readIcon(pngResource);
}
return IOUtils.readIcon(resource);
}

2
designer-form/src/main/java/com/fr/design/designer/beans/LayoutAdapter.java

@ -54,7 +54,7 @@ public interface LayoutAdapter {
* @return 是否添加成功成功返回true否则false
*/
boolean addBean(XCreator creator, int x, int y, boolean accept);
/**
* 返回该布局管理适配器的Painter为容器提供放置位置的标识
*/

Loading…
Cancel
Save