Browse Source

REPORT-63760 【主题切换】撤销以后,样式设置有问题

【问题原因】
背景色控件中父组件ColorBackgroundQuickPane
和子组件NewColorSelectBox内部实现,都给
NewColorSelectBox添加了监听器,导致颜色值发生
一次更改后,调用了两次回调,产生了两个UndoState

【改动思路】
ColorBackgroundQuickPane的UIObserver实现置空
feature/x
Starryi 3 years ago
parent
commit
fafd3b57bd
  1. 13
      designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ColorBackgroundQuickPane.java

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

@ -40,16 +40,15 @@ public class ColorBackgroundQuickPane extends BackgroundQuickPane {
return this.colorSelectBox.getSelectObject();
}
/**
* 给组件登记一个观察者监听事件
*
* @param listener 观察者监听事件
*/
@Override
public void registerChangeListener(final UIObserverListener listener) {
this.colorSelectBox.addSelectChangeListener(new ChangeListenerImpl(listener));
public boolean shouldResponseChangeListener() {
// NewColorSelectBox实现了UIObserver接口,这里就不要重复注册监听器了,以避免产生重复UndoState.
return false;
}
@Override
public void registerChangeListener(final UIObserverListener listener) { }
@Override
/**
* 是否为ColorBackground 类型

Loading…
Cancel
Save