Class Progressor

All Implemented Interfaces:
Runnable

public abstract class Progressor
extends RangedRunnable<Integer>
A progress handler.
Since:
3.1.11
Author:
Joel Uckelman
  • Field Summary

    Fields
    Modifier and Type Field Description
    protected int max  

    Fields inherited from class VASSAL.tools.concurrent.RangedRunnable

    range, submitted
  • Constructor Summary

    Constructors
    Constructor Description
    Progressor​(int init, int max)
    Creates a Progressor with the given bounds.
  • Method Summary

    Modifier and Type Method Description
    void add​(int p)
    Adds some amount to the progress.
    int get()
    Gets the progress.
    int getPct()
    Gets the progress as a percentage.
    void increment()
    Increments the progress.
    protected abstract void run​(Pair<Integer,​Integer> prog)
    Updates the current progress.
    void set​(int prog)
    Sets the progress.
    void setPct​(int pct)
    Sets the progress as a percentage.
    protected void submit()
    Submits this Runnable to be run on the Event Dispatch Thread.

    Methods inherited from class VASSAL.tools.concurrent.RangedRunnable

    run, setLast

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • max

      protected final int max
  • Constructor Details

    • Progressor

      public Progressor​(int init, int max)
      Creates a Progressor with the given bounds.
      Parameters:
      init - the initial progress value
      max - the maximum progress value
      Throws:
      IllegalArgumentException - if init is not in [0,max]
      IllegalArgumentException - if max &lt; 0
  • Method Details

    • set

      public void set​(int prog)
      Sets the progress. Setting the progress submits the Runnable only when it would result in a change in the progress percentage.
      Parameters:
      prog - the new progress value
      Throws:
      IllegalArgumentException - if prog is not in [0,max]
      IllegalArgumentException - if prog &lt;= current value
    • get

      public int get()
      Gets the progress.
      Returns:
      the progress value
    • increment

      public void increment()
      Increments the progress.
    • add

      public void add​(int p)
      Adds some amount to the progress.
    • setPct

      public void setPct​(int pct)
      Sets the progress as a percentage.
      Parameters:
      pct - the progress percentage
    • getPct

      public int getPct()
      Gets the progress as a percentage.
      Returns:
      the progress percentage
    • run

      protected abstract void run​(Pair<Integer,​Integer> prog)
      Updates the current progress.
      Specified by:
      run in class RangedRunnable<Integer>
      Parameters:
      prog - the range of progress since the last update
    • submit

      protected void submit()
      Submits this Runnable to be run on the Event Dispatch Thread.
      Specified by:
      submit in class RangedRunnable<Integer>