Class GTaskMonitor

java.lang.Object
ghidra.framework.task.GTaskMonitor
All Implemented Interfaces:
CancelledListener, TaskMonitor

public class GTaskMonitor extends Object implements TaskMonitor, CancelledListener
Implementation of a TaskMontor that can be "attached" to a GProgressBar. The GTaskMonitor is a non-gui object for tracking the progress of a GTaskGroup or GTask. It is created by the GTaskManager as tasks are scheduled. GUIs that wish to display the progress of the groups and tasks can set a GProgressBar into a GTaskMonitor and it will display the progress.
  • Constructor Details

    • GTaskMonitor

      public GTaskMonitor()
  • Method Details

    • isCancelled

      public boolean isCancelled()
      Description copied from interface: TaskMonitor
      Returns true if the user has cancelled the operation
      Specified by:
      isCancelled in interface TaskMonitor
      Returns:
      true if the user has cancelled the operation
    • 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
      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
      Parameters:
      message - the message to display
    • setProgress

      public void setProgress(long value)
      Description copied from interface: TaskMonitor
      Sets the current progress value
      Specified by:
      setProgress in interface TaskMonitor
      Parameters:
      value - progress value
    • initialize

      public void initialize(long maxValue)
      Description copied from interface: TaskMonitor
      Initialized this TaskMonitor to the given max values. The current value of this monitor will be set to zero.
      Specified by:
      initialize in interface TaskMonitor
      Parameters:
      maxValue - maximum value for progress
    • 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 new max value.

      Specified by:
      setMaximum in interface TaskMonitor
      Parameters:
      max - maximum value for progress
    • getMaximum

      public long getMaximum()
      Description copied from interface: TaskMonitor
      Returns the current maximum value for progress
      Specified by:
      getMaximum in interface TaskMonitor
      Returns:
      the maximum progress value
    • 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
      Parameters:
      indeterminate - true if indeterminate
    • isIndeterminate

      public boolean isIndeterminate()
      Description copied from interface: TaskMonitor
      Returns true if this monitor shows no progress
      Specified by:
      isIndeterminate in interface TaskMonitor
      Returns:
      true if this monitor shows no progress
    • checkCanceled

      public void checkCanceled() throws CancelledException
      Description copied from interface: TaskMonitor
      Check to see if this monitor has been cancelled
      Specified by:
      checkCanceled in interface TaskMonitor
      Throws:
      CancelledException - if monitor has been cancelled
    • 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
      Parameters:
      incrementAmount - The amount by which to increment the progress
    • getProgress

      public long getProgress()
      Description copied from interface: TaskMonitor
      Returns the current progress value or TaskMonitor.NO_PROGRESS_VALUE if there is no value set
      Specified by:
      getProgress in interface TaskMonitor
      Returns:
      the current progress value or TaskMonitor.NO_PROGRESS_VALUE if there is no value set
    • cancel

      public void cancel()
      Description copied from interface: TaskMonitor
      Cancel the task
      Specified by:
      cancel in interface TaskMonitor
    • addCancelledListener

      public void addCancelledListener(CancelledListener mcl)
      Description copied from interface: TaskMonitor
      Add cancelled listener
      Specified by:
      addCancelledListener in interface TaskMonitor
      Parameters:
      mcl - the cancel listener
    • removeCancelledListener

      public void removeCancelledListener(CancelledListener mcl)
      Description copied from interface: TaskMonitor
      Remove cancelled listener
      Specified by:
      removeCancelledListener in interface TaskMonitor
      Parameters:
      mcl - the cancel listener
    • setCancelEnabled

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

      public boolean isCancelEnabled()
      Description copied from interface: TaskMonitor
      Returns true if cancel ability is enabled
      Specified by:
      isCancelEnabled in interface TaskMonitor
      Returns:
      true if cancel ability is enabled
    • clearCanceled

      public void clearCanceled()
      Description copied from interface: TaskMonitor
      Clear the cancellation so that this TaskMonitor may be reused
      Specified by:
      clearCanceled in interface TaskMonitor
    • isInderminate

      public boolean isInderminate()
    • isShowingProgressValue

      public boolean isShowingProgressValue()
    • getMessage

      public String getMessage()
      Description copied from interface: TaskMonitor
      Gets the last set message of this monitor
      Specified by:
      getMessage in interface TaskMonitor
      Returns:
      the message
    • cancelled

      public void cancelled()
      Description copied from interface: CancelledListener
      Provides notification when a task is cancelled.
      Specified by:
      cancelled in interface CancelledListener
    • setProgressBar

      public void setProgressBar(GProgressBar gProgressBar)
      Set the GProgressBar to use to display the progress.
      Parameters:
      gProgressBar - the GProgressBar to use.