Class CompoundProgressRangeModel

  • All Implemented Interfaces:
    java.io.Serializable, javax.swing.BoundedRangeModel

    public class CompoundProgressRangeModel
    extends javax.swing.DefaultBoundedRangeModel
    Provides the ability to create ProgressListeners that get coalesced into a single BoundedRangeModel. Each progress listener contributes proportionally to the overall progress, with indefinite listeners not contributing.

    This class goes beyond the basic BoundedRangeModel adding in support for the current "note" provided by the progress listener. When a progress listener gets its first value update, it updates the current note and fires a change event.

    This model also makes sure to call events in the EDT, so it is not necessary to worry about which thread is updating values.

    See Also:
    Serialized Form
    • Field Detail

      • resolution

        protected int resolution
      • currentNote

        protected java.lang.String currentNote
      • currentValue

        protected int currentValue
      • opCanceled

        protected boolean opCanceled
    • Constructor Detail

      • CompoundProgressRangeModel

        public CompoundProgressRangeModel()
    • Method Detail

      • getMaxValue

        public int getMaxValue()
      • createNewTaskListener

        public TaskProgressListener createNewTaskListener()
        Creates a new progress listener that will contribute to the overall progress.

        It is basically a normal ProgressListener, except that its note will only be (potentially) display when the first non-0 value is set on setProgress. If it is an indeterminate progress listener, the owner can call setProgress(-1) to indicate that it has started.

      • reset

        public void reset()
        Resets the compound model, clearing out any internal progress listeners contributing to the value.
      • refreshProgress

        protected void refreshProgress()
      • getCurrentValue

        protected int getCurrentValue()
      • updateCurrentNote

        protected void updateCurrentNote​(java.lang.String value)
      • cancelOperations

        public void cancelOperations()
        Sets the canceled flag that will propagate to the running TaskProgressListeners.