Allow batching several changes before firing a changeEvent

This commit is contained in:
bkuker 2012-12-13 13:32:43 -05:00
parent e97ae2f4b0
commit 5a8833738c

View File

@ -27,6 +27,8 @@ public class AppearanceBuilder extends AbstractChangeSource {
private String image; private String image;
private Decal.EdgeMode edgeMode; private Decal.EdgeMode edgeMode;
private boolean batch;
public AppearanceBuilder() { public AppearanceBuilder() {
resetToDefaults(); resetToDefaults();
} }
@ -217,7 +219,15 @@ public class AppearanceBuilder extends AbstractChangeSource {
@Override @Override
protected void fireChangeEvent() { protected void fireChangeEvent() {
super.fireChangeEvent(); if ( !batch )
super.fireChangeEvent();
}
public void batch(Runnable r){
batch = true;
r.run();
batch = false;
fireChangeEvent();
} }
} }