Package ghidra.util.task
Class CancelOnlyWrappingTaskMonitor
- java.lang.Object
-
- ghidra.util.task.WrappingTaskMonitor
-
- ghidra.util.task.CancelOnlyWrappingTaskMonitor
-
- All Implemented Interfaces:
TaskMonitor
public class CancelOnlyWrappingTaskMonitor extends WrappingTaskMonitor
A monitor that is designed for sub-tasks, where the outer task handles reporting messages and progress. This class is really just for checking cancelled.This class wants the following methods related to cancelling to work normally:
- isCancelled()
- checkCanceled()
- cancel()
- addCancelledListener(CancelledListener)
- removeCancelledListener(CancelledListener)
- addIssueListener(IssueListener)
- removeIssueListener(IssueListener)
- isCancelEnabled()
The rest of TaskMonitor should be stubbed out. This means that if any methods are added to the TaskMonitor interface, and subsequently implemented in this class's parent, then this class needs to override them.
-
-
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 CancelOnlyWrappingTaskMonitor(TaskMonitor delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clearCanceled()
Clear the cancellation so that this TaskMonitor may be reused.long
getMaximum()
Returns the current maximum value for progress.long
getProgress()
Returns the current progress value orTaskMonitor.NO_PROGRESS_VALUE
if there is no value set.void
incrementProgress(long incrementAmount)
A convenience method to increment the current progress by the given value.void
initialize(long max)
Initialized this TaskMonitor to the given max values.void
reportIssue(Issue issue)
Notify that an issue occurred while processing.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(java.lang.String message)
Sets a message giving additional information about the current progress.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, addIssueListener, cancel, checkCanceled, isCancelEnabled, isCancelled, removeCancelledListener, removeIssueListener
-
-
-
-
Constructor Detail
-
CancelOnlyWrappingTaskMonitor
public CancelOnlyWrappingTaskMonitor(TaskMonitor delegate)
-
-
Method Detail
-
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 interfaceTaskMonitor
- Overrides:
setShowProgressValue
in classWrappingTaskMonitor
- Parameters:
showProgressValue
- true to paint the progress value; false to not
-
setMessage
public void setMessage(java.lang.String message)
Description copied from interface:TaskMonitor
Sets a message giving additional information about the current progress.- Specified by:
setMessage
in interfaceTaskMonitor
- Overrides:
setMessage
in classWrappingTaskMonitor
- Parameters:
message
- more information
-
setProgress
public void setProgress(long value)
Description copied from interface:TaskMonitor
Sets the current progress value.- Specified by:
setProgress
in interfaceTaskMonitor
- Overrides:
setProgress
in classWrappingTaskMonitor
- Parameters:
value
- progress value
-
initialize
public void initialize(long max)
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 interfaceTaskMonitor
- Overrides:
initialize
in classWrappingTaskMonitor
- Parameters:
max
- 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 interfaceTaskMonitor
- Overrides:
setMaximum
in classWrappingTaskMonitor
- 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 interfaceTaskMonitor
- Overrides:
getMaximum
in classWrappingTaskMonitor
- Returns:
-
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 interfaceTaskMonitor
- Overrides:
setIndeterminate
in classWrappingTaskMonitor
-
incrementProgress
public void incrementProgress(long incrementAmount)
Description copied from interface:TaskMonitor
A convenience method to increment the current progress by the given value.- Specified by:
incrementProgress
in interfaceTaskMonitor
- Overrides:
incrementProgress
in classWrappingTaskMonitor
- Parameters:
incrementAmount
- The amount by which to increment the progress.
-
getProgress
public long getProgress()
Description copied from interface:TaskMonitor
Returns the current progress value orTaskMonitor.NO_PROGRESS_VALUE
if there is no value set.- Specified by:
getProgress
in interfaceTaskMonitor
- Overrides:
getProgress
in classWrappingTaskMonitor
- Returns:
- the current progress value or
TaskMonitor.NO_PROGRESS_VALUE
if there is no value set.
-
reportIssue
public void reportIssue(Issue issue)
Description copied from interface:TaskMonitor
Notify that an issue occurred while processing.- Specified by:
reportIssue
in interfaceTaskMonitor
- Overrides:
reportIssue
in classWrappingTaskMonitor
- Parameters:
issue
- the issue that was encountered
-
setCancelEnabled
public void setCancelEnabled(boolean enable)
Description copied from interface:TaskMonitor
Set the enablement of the Cancel button.- Specified by:
setCancelEnabled
in interfaceTaskMonitor
- Overrides:
setCancelEnabled
in classWrappingTaskMonitor
- Parameters:
enable
- true means to enable the cancel button
-
clearCanceled
public void clearCanceled()
Description copied from interface:TaskMonitor
Clear the cancellation so that this TaskMonitor may be reused.- Specified by:
clearCanceled
in interfaceTaskMonitor
- Overrides:
clearCanceled
in classWrappingTaskMonitor
-
-