Browse Source

REPORT-67329 填报-web端预览-10升级11,透明的纸张背景变成了白色

bugfix/11.0
kerry 3 years ago
parent
commit
6394044df6
  1. 2
      designer-base/src/main/java/com/fr/design/gui/style/ReportBackgroundSpecialPane.java
  2. 9
      designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ColorBackgroundQuickPane.java
  3. 11
      designer-base/src/main/java/com/fr/design/style/color/NewColorSelectBox.java

2
designer-base/src/main/java/com/fr/design/gui/style/ReportBackgroundSpecialPane.java

@ -29,7 +29,7 @@ public class ReportBackgroundSpecialPane extends BackgroundPane {
protected BackgroundQuickPane[] supportKindsOfBackgroundUI() { protected BackgroundQuickPane[] supportKindsOfBackgroundUI() {
NullBackgroundQuickPane nullBackgroundPane = new NullBackgroundQuickPane(); NullBackgroundQuickPane nullBackgroundPane = new NullBackgroundQuickPane();
ColorBackgroundQuickPane colorBackgroundPane = new ColorBackgroundQuickPane(); ColorBackgroundQuickPane colorBackgroundPane = new ColorBackgroundQuickPane(true);
colorBackgroundPane.registerChangeListener(new UIObserverListener() { colorBackgroundPane.registerChangeListener(new UIObserverListener() {
@Override @Override
public void doChange() { public void doChange() {

9
designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ColorBackgroundQuickPane.java

@ -16,10 +16,9 @@ public class ColorBackgroundQuickPane extends BackgroundQuickPane {
private NewColorSelectBox colorSelectBox; private NewColorSelectBox colorSelectBox;
public ColorBackgroundQuickPane(boolean supportTransparent) {
public ColorBackgroundQuickPane() {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
colorSelectBox = new NewColorSelectBox(100) { colorSelectBox = new NewColorSelectBox(100, supportTransparent) {
@Override @Override
public boolean shouldResponseChangeListener() { public boolean shouldResponseChangeListener() {
// ColorBackgroundQuickPane注册监听器ChangeListenerImpl的逻辑不能丢,因为里面有修改字段backgroundChange的逻辑. // ColorBackgroundQuickPane注册监听器ChangeListenerImpl的逻辑不能丢,因为里面有修改字段backgroundChange的逻辑.
@ -33,6 +32,10 @@ public class ColorBackgroundQuickPane extends BackgroundQuickPane {
this.add(colorSelectBox, BorderLayout.NORTH); this.add(colorSelectBox, BorderLayout.NORTH);
} }
public ColorBackgroundQuickPane() {
this(false);
}
public void populateBean(Background background) { public void populateBean(Background background) {
ColorBackground colorBackgroud = (ColorBackground) background; ColorBackground colorBackgroud = (ColorBackground) background;
populateColor(colorBackgroud.getColor()); populateColor(colorBackgroud.getColor());

11
designer-base/src/main/java/com/fr/design/style/color/NewColorSelectBox.java

@ -20,12 +20,19 @@ public class NewColorSelectBox extends AbstractSelectBox<Color> implements UIObs
private static final long serialVersionUID = 2782150678943960557L; private static final long serialVersionUID = 2782150678943960557L;
private Color color; private Color color;
private NewColorSelectPane colorPane = new NewColorSelectPane(false); private NewColorSelectPane colorPane;
private UIObserverListener uiObserverListener; private UIObserverListener uiObserverListener;
private String newColorSelectBoxName = ""; private String newColorSelectBoxName = "";
private GlobalNameListener globalNameListener = null; private GlobalNameListener globalNameListener = null;
private boolean supportTransparent;
public NewColorSelectBox(int preferredWidth) { public NewColorSelectBox(int preferredWidth) {
this(preferredWidth, false);
}
public NewColorSelectBox(int preferredWidth, boolean supportTransparent) {
this.colorPane = new NewColorSelectPane(supportTransparent);
this.supportTransparent = supportTransparent;
initBox(preferredWidth); initBox(preferredWidth);
iniListener(); iniListener();
} }
@ -58,7 +65,7 @@ public class NewColorSelectBox extends AbstractSelectBox<Color> implements UIObs
*/ */
public JPanel initWindowPane(double preferredWidth) { public JPanel initWindowPane(double preferredWidth) {
// 下拉的时候重新生成面板,以刷新最近使用颜色 // 下拉的时候重新生成面板,以刷新最近使用颜色
colorPane = new NewColorSelectPane(false); colorPane = new NewColorSelectPane(this.supportTransparent);
colorPane.setColor(this.getSelectObject()); colorPane.setColor(this.getSelectObject());
colorPane.addChangeListener(new ChangeListener() { colorPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) { public void stateChanged(ChangeEvent e) {

Loading…
Cancel
Save