Search in sources :

Example 26 with Worker

use of ini.trakem2.utils.Worker in project TrakEM2 by trakem2.

the class DistortionCorrectionTask method correctDistortionFromSelectionTask.

public static final Bureaucrat correctDistortionFromSelectionTask(final Selection selection) {
    final Worker worker = new Worker("Distortion Correction", false, true) {

        @Override
        public void run() {
            startedWorking();
            try {
                correctDistortionFromSelection(selection);
                Display.repaint(selection.getLayer());
            } catch (final Throwable e) {
                IJError.print(e);
            } finally {
                finishedWorking();
            }
        }

        @Override
        public void cleanup() {
            if (!selection.isEmpty())
                selection.getLayer().getParent().undoOneStep();
        }
    };
    return Bureaucrat.createAndStart(worker, selection.getProject());
}
Also used : Worker(ini.trakem2.utils.Worker)

Aggregations

Worker (ini.trakem2.utils.Worker)20 ArrayList (java.util.ArrayList)10 ImagePlus (ij.ImagePlus)9 Patch (ini.trakem2.display.Patch)8 File (java.io.File)8 GenericDialog (ij.gui.GenericDialog)7 Displayable (ini.trakem2.display.Displayable)7 Rectangle (java.awt.Rectangle)7 HashSet (java.util.HashSet)7 IOException (java.io.IOException)6 Future (java.util.concurrent.Future)6 FormatException (loci.formats.FormatException)6 DirectoryChooser (ij.io.DirectoryChooser)5 Project (ini.trakem2.Project)5 Layer (ini.trakem2.display.Layer)5 VectorString3D (ini.trakem2.vector.VectorString3D)5 HashMap (java.util.HashMap)5 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)5 Calibration (ij.measure.Calibration)4 ZDisplayable (ini.trakem2.display.ZDisplayable)4