Package ghidra.util.task
Class TaskMonitorAdapter
- java.lang.Object
-
- ghidra.util.task.TaskMonitorAdapter
-
- All Implemented Interfaces:
TaskMonitor
- Direct Known Subclasses:
ConsoleTaskMonitor
,DummyCancellableTaskMonitor
,SpyTaskMonitor
,UnknownProgressWrappingTaskMonitor
public class TaskMonitorAdapter extends java.lang.Object implements TaskMonitor
Create a "do nothing" task monitor that we can pass along to methods that need a task monitor. This can be used when methods provide detailed task progress information that we don't want to show the user.This monitor can be configured to allow cancelling via
setCancelEnabled(boolean)
. If this cancelling is enabled, the the monitor may be cancelled programmatically.
-
-
Field Summary
Fields Modifier and Type Field Description static TaskMonitor
DUMMY_MONITOR
Deprecated.useTaskMonitor.DUMMY
instead-
Fields inherited from interface ghidra.util.task.TaskMonitor
DUMMY, NO_PROGRESS_VALUE
-
-
Constructor Summary
Constructors Constructor Description TaskMonitorAdapter()
TaskMonitorAdapter(boolean cancelEnabled)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCancelledListener(CancelledListener listener)
Add cancelled listener.void
addIssueListener(IssueListener listener)
Add an issue listener to this monitor.void
cancel()
Cancel the task.void
checkCanceled()
Check to see if this monitor has been canceled.void
clearCanceled()
Clear the cancellation so that this TaskMonitor may be reused.long
getMaximum()
Returns the current maximum value for progress.int
getMinimum()
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.boolean
isCancelEnabled()
Returns true if cancel ability is enabledboolean
isCancelled()
Returns true if the user has cancelled the operation.protected void
notifyChangeListeners()
void
removeCancelledListener(CancelledListener listener)
Remove cancelled listener.void
removeIssueListener(IssueListener listener)
Removes an issue listener to this monitor.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
setMinimum(int min)
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.
-
-
-
Field Detail
-
DUMMY_MONITOR
@Deprecated public static final TaskMonitor DUMMY_MONITOR
Deprecated.useTaskMonitor.DUMMY
insteadProvides a static instance ofTaskMonitorAdapter
which is a non-cancellable task monitor with no visual components.
-
-
Method Detail
-
isCancelled
public boolean isCancelled()
Description copied from interface:TaskMonitor
Returns true if the user has cancelled the operation.- Specified by:
isCancelled
in interfaceTaskMonitor
-
checkCanceled
public void checkCanceled() throws CancelledException
Description copied from interface:TaskMonitor
Check to see if this monitor has been canceled.- Specified by:
checkCanceled
in interfaceTaskMonitor
- Throws:
CancelledException
- if monitor has been cancelled.
-
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
- 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
- Parameters:
value
- progress value
-
getMinimum
public int getMinimum()
-
setMinimum
public void setMinimum(int min)
-
getMaximum
public long getMaximum()
Description copied from interface:TaskMonitor
Returns the current maximum value for progress.- Specified by:
getMaximum
in interfaceTaskMonitor
- Returns:
-
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
- 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
- Parameters:
max
- maximum value for progress
-
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
- Parameters:
showProgressValue
- true to paint the progress value; false to not
-
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
-
setCancelEnabled
public void setCancelEnabled(boolean enable)
Description copied from interface:TaskMonitor
Set the enablement of the Cancel button.- Specified by:
setCancelEnabled
in interfaceTaskMonitor
- 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 interfaceTaskMonitor
-
cancel
public void cancel()
Description copied from interface:TaskMonitor
Cancel the task.- Specified by:
cancel
in interfaceTaskMonitor
-
clearCanceled
public void clearCanceled()
Description copied from interface:TaskMonitor
Clear the cancellation so that this TaskMonitor may be reused.- Specified by:
clearCanceled
in interfaceTaskMonitor
-
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
- 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
- Returns:
- the current progress value or
TaskMonitor.NO_PROGRESS_VALUE
if there is no value set.
-
notifyChangeListeners
protected void notifyChangeListeners()
-
addCancelledListener
public void addCancelledListener(CancelledListener listener)
Description copied from interface:TaskMonitor
Add cancelled listener.- Specified by:
addCancelledListener
in interfaceTaskMonitor
-
removeCancelledListener
public void removeCancelledListener(CancelledListener listener)
Description copied from interface:TaskMonitor
Remove cancelled listener.- Specified by:
removeCancelledListener
in interfaceTaskMonitor
-
addIssueListener
public void addIssueListener(IssueListener listener)
Description copied from interface:TaskMonitor
Add an issue listener to this monitor.- Specified by:
addIssueListener
in interfaceTaskMonitor
- Parameters:
listener
- the listener
-
removeIssueListener
public void removeIssueListener(IssueListener listener)
Description copied from interface:TaskMonitor
Removes an issue listener to this monitor.- Specified by:
removeIssueListener
in interfaceTaskMonitor
- Parameters:
listener
- the listener
-
reportIssue
public void reportIssue(Issue issue)
Description copied from interface:TaskMonitor
Notify that an issue occurred while processing.- Specified by:
reportIssue
in interfaceTaskMonitor
- Parameters:
issue
- the issue that was encountered
-
-