Package ghidra.util.task

# Class PreserveStateWrappingTaskMonitor

java.lang.Object
ghidra.util.task.WrappingTaskMonitor
ghidra.util.task.PreserveStateWrappingTaskMonitor

All Implemented Interfaces:
  `TaskMonitor`, `Closeable`, `AutoCloseable`

public class PreserveStateWrappingTaskMonitor extends WrappingTaskMonitor implements Closeable
A `TaskMonitor` wrapper that restores all changed values of the wrapped TaskMonitor when the wrapper is `closed`.

- ## Field Summary

  ### Fields inherited from class ghidra.util.task.WrappingTaskMonitor

  `delegate`

  ### Fields inherited from interface ghidra.util.task.TaskMonitor

  `DUMMY, NO_PROGRESS_VALUE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `PreserveStateWrappingTaskMonitor(TaskMonitor delegate)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  `void`
  `incrementProgress(long incrementAmount)`
  Changes the progress value by the specified amount.
  `void`
  `setCancelEnabled(boolean enable)`
  Set the enablement of the Cancel button
  `void`
  `setIndeterminate(boolean indeterminate)`
  An indeterminate task monitor may choose to show an animation instead of updating progress
  `void`
  `setMaximum(long max)`
  Set the progress maximum value
  `void`
  `setMessage(String message)`
  Sets the message displayed on the task monitor
  `void`
  `setProgress(long value)`
  Sets the current progress value
  `void`
  `setShowProgressValue(boolean showProgressValue)`
  True (the default) signals to paint the progress information inside of the progress bar

  ### Methods inherited from class ghidra.util.task.WrappingTaskMonitor

  `addCancelledListener, cancel, checkCanceled, checkCancelled, clearCanceled, getMaximum, getMessage, getProgress, initialize, isCancelEnabled, isCancelled, isIndeterminate, removeCancelledListener, setDelegate`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface ghidra.util.task.TaskMonitor

  `clearCancelled, increment, increment, incrementProgress, initialize`

- ## Constructor Details

  - ### PreserveStateWrappingTaskMonitor

    public PreserveStateWrappingTaskMonitor(TaskMonitor delegate)

- ## Method Details

  - ### close

    public void close()
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`

  - ### setCancelEnabled

    public void setCancelEnabled(boolean enable)
    Description copied from interface: `TaskMonitor`
    Set the enablement of the Cancel button
    Specified by:
      `setCancelEnabled` in interface `TaskMonitor`
    Overrides:
      `setCancelEnabled` in class `WrappingTaskMonitor`
    Parameters:
      `enable` - true means to enable the cancel button

  - ### setIndeterminate

    public void setIndeterminate(boolean indeterminate)
    Description copied from interface: `TaskMonitor`
    An indeterminate task monitor may choose to show an animation instead of updating progress
    Specified by:
      `setIndeterminate` in interface `TaskMonitor`
    Overrides:
      `setIndeterminate` in class `WrappingTaskMonitor`
    Parameters:
      `indeterminate` - true if indeterminate

  - ### setShowProgressValue

    public void setShowProgressValue(boolean showProgressValue)
    Description copied from interface: `TaskMonitor`
    True (the default) signals to paint the progress information inside of the progress bar
    Specified by:
      `setShowProgressValue` in interface `TaskMonitor`
    Overrides:
      `setShowProgressValue` in class `WrappingTaskMonitor`
    Parameters:
      `showProgressValue` - true to paint the progress value; false to not

  - ### setMessage

    public void setMessage(String message)
    Description copied from interface: `TaskMonitor`
    Sets the message displayed on the task monitor
    Specified by:
      `setMessage` in interface `TaskMonitor`
    Overrides:
      `setMessage` in class `WrappingTaskMonitor`
    Parameters:
      `message` - the message to display

  - ### setMaximum

    public void setMaximum(long max)
    Description copied from interface: `TaskMonitor`
    Set the progress maximum value

    Note: setting this value will reset the progress to be the max if the progress is currently greater than the new max value.

    Specified by:
      `setMaximum` in interface `TaskMonitor`
    Overrides:
      `setMaximum` in class `WrappingTaskMonitor`
    Parameters:
      `max` - maximum value for progress

  - ### setProgress

    public void setProgress(long value)
    Description copied from interface: `TaskMonitor`
    Sets the current progress value
    Specified by:
      `setProgress` in interface `TaskMonitor`
    Overrides:
      `setProgress` in class `WrappingTaskMonitor`
    Parameters:
      `value` - progress value

  - ### incrementProgress

    public void incrementProgress(long incrementAmount)
    Description copied from interface: `TaskMonitor`
    Changes the progress value by the specified amount.
    Specified by:
      `incrementProgress` in interface `TaskMonitor`
    Overrides:
      `incrementProgress` in class `WrappingTaskMonitor`
    Parameters:
      `incrementAmount` - The amount by which to increment the progress