Ignore:
Timestamp:
2020-03-21T21:27:36+01:00 (6 years ago)
Author:
Don-vip
Message:

fix #18962 - introduce DataSet.update to avoid repetitive begin/endUpdate statements

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/dialogs/ValidatorDialog.java

    r15586 r16187  
    694694         */
    695695        private void tryUndo() {
    696             final DataSet ds = MainApplication.getLayerManager().getActiveDataSet();
    697             int i = fixCommands.size() - 1;
    698             ds.beginUpdate();
    699             for (; i >= 0; i--) {
    700                 fixCommands.get(i).undoCommand();
    701             }
    702             ds.endUpdate();
    703         }
    704 
     696            MainApplication.getLayerManager().getActiveDataSet().update(() -> {
     697                for (int i = fixCommands.size() - 1; i >= 0; i--) {
     698                    fixCommands.get(i).undoCommand();
     699                }
     700            });
     701        }
    705702    }
    706703
     
    723720        @Override
    724721        public void undoCommand() {
    725             getAffectedDataSet().beginUpdate();
    726             super.undoCommand();
    727             getAffectedDataSet().endUpdate();
     722            getAffectedDataSet().update(super::undoCommand);
    728723        }
    729724
    730725        @Override
    731726        public boolean executeCommand() {
    732             getAffectedDataSet().beginUpdate();
    733             boolean rc = super.executeCommand();
    734             getAffectedDataSet().endUpdate();
    735             return rc;
     727            return getAffectedDataSet().update(super::executeCommand);
    736728        }
    737729    }
Note: See TracChangeset for help on using the changeset viewer.