Package docking.widgets.tree
Class TreeTaskMonitor
java.lang.Object
docking.widgets.tree.TreeTaskMonitor
- All Implemented Interfaces:
TaskMonitor
TaskMonitor implementation that is useful for monitor work when traversing trees.
It works by subdividing the distance of the top-most progress bar (represented by the top-most
monitor) into equal size chunks depending on how many children have to be visited. For example,
assume the root node has 5 children, then the task bar for that node would increment 20% of
the bar as it completed work on each of its children. Now, assume each child of the root node
has 10 children. The task monitor for each root child will operate entirely with its 20% as
mentioned above. So the first child of the first child will increment the progress bar
2% (10% of 20%) when it is complete.
-
Field Summary
Fields inherited from interface ghidra.util.task.TaskMonitor
DUMMY, NO_PROGRESS_VALUE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCancelledListener(CancelledListener listener) Add cancelled listenervoidcancel()Cancel the taskvoidCheck to see if this monitor has been cancelledvoidClear the cancellation so that this TaskMonitor may be reusedlongReturns the current maximum value for progressGets the last set message of this monitorlongReturns the current progress value orTaskMonitor.NO_PROGRESS_VALUEif there is no value setvoidincrementProgress(long incrementAmount) Changes the progress value by the specified amount.voidinitialize(long maxValue) Initialized this TaskMonitor to the given max values.booleanReturns true if cancel ability is enabledbooleanReturns true if the user has cancelled the operationbooleanReturns true if this monitor shows no progressvoidremoveCancelledListener(CancelledListener listener) Remove cancelled listenervoidsetCancelEnabled(boolean enable) Set the enablement of the Cancel buttonvoidsetIndeterminate(boolean indeterminate) An indeterminate task monitor may choose to show an animation instead of updating progressvoidsetMaximum(long maxValue) Set the progress maximum valuevoidsetMessage(String message) Sets the message displayed on the task monitorvoidsetProgress(long value) Sets the current progress valuevoidsetShowProgressValue(boolean showProgressValue) True (the default) signals to paint the progress information inside of the progress barMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ghidra.util.task.TaskMonitor
checkCancelled, clearCancelled, increment, increment, incrementProgress, initialize
-
Constructor Details
-
TreeTaskMonitor
-
-
Method Details
-
isCancelled
public boolean isCancelled()Description copied from interface:TaskMonitorReturns true if the user has cancelled the operation- Specified by:
isCancelledin interfaceTaskMonitor- Returns:
- true if the user has cancelled the operation
-
setShowProgressValue
public void setShowProgressValue(boolean showProgressValue) Description copied from interface:TaskMonitorTrue (the default) signals to paint the progress information inside of the progress bar- Specified by:
setShowProgressValuein interfaceTaskMonitor- Parameters:
showProgressValue- true to paint the progress value; false to not
-
setMessage
Description copied from interface:TaskMonitorSets the message displayed on the task monitor- Specified by:
setMessagein interfaceTaskMonitor- Parameters:
message- the message to display
-
getMessage
Description copied from interface:TaskMonitorGets the last set message of this monitor- Specified by:
getMessagein interfaceTaskMonitor- Returns:
- the message
-
setProgress
public void setProgress(long value) Description copied from interface:TaskMonitorSets the current progress value- Specified by:
setProgressin interfaceTaskMonitor- Parameters:
value- progress value
-
initialize
public void initialize(long maxValue) Description copied from interface:TaskMonitorInitialized this TaskMonitor to the given max values. The current value of this monitor will be set to zero.- Specified by:
initializein interfaceTaskMonitor- Parameters:
maxValue- maximum value for progress
-
setMaximum
public void setMaximum(long maxValue) Description copied from interface:TaskMonitorSet the progress maximum valueNote: setting this value will reset the progress to be the max if the progress is currently greater than the new max value.
- Specified by:
setMaximumin interfaceTaskMonitor- Parameters:
maxValue- maximum value for progress
-
getMaximum
public long getMaximum()Description copied from interface:TaskMonitorReturns the current maximum value for progress- Specified by:
getMaximumin interfaceTaskMonitor- Returns:
- the maximum progress value
-
setIndeterminate
public void setIndeterminate(boolean indeterminate) Description copied from interface:TaskMonitorAn indeterminate task monitor may choose to show an animation instead of updating progress- Specified by:
setIndeterminatein interfaceTaskMonitor- Parameters:
indeterminate- true if indeterminate
-
isIndeterminate
public boolean isIndeterminate()Description copied from interface:TaskMonitorReturns true if this monitor shows no progress- Specified by:
isIndeterminatein interfaceTaskMonitor- Returns:
- true if this monitor shows no progress
-
checkCanceled
Description copied from interface:TaskMonitorCheck to see if this monitor has been cancelled- Specified by:
checkCanceledin interfaceTaskMonitor- Throws:
CancelledException- if monitor has been cancelled
-
incrementProgress
public void incrementProgress(long incrementAmount) Description copied from interface:TaskMonitorChanges the progress value by the specified amount.- Specified by:
incrementProgressin interfaceTaskMonitor- Parameters:
incrementAmount- The amount by which to increment the progress
-
getProgress
public long getProgress()Description copied from interface:TaskMonitorReturns the current progress value orTaskMonitor.NO_PROGRESS_VALUEif there is no value set- Specified by:
getProgressin interfaceTaskMonitor- Returns:
- the current progress value or
TaskMonitor.NO_PROGRESS_VALUEif there is no value set
-
cancel
public void cancel()Description copied from interface:TaskMonitorCancel the task- Specified by:
cancelin interfaceTaskMonitor
-
addCancelledListener
Description copied from interface:TaskMonitorAdd cancelled listener- Specified by:
addCancelledListenerin interfaceTaskMonitor- Parameters:
listener- the cancel listener
-
removeCancelledListener
Description copied from interface:TaskMonitorRemove cancelled listener- Specified by:
removeCancelledListenerin interfaceTaskMonitor- Parameters:
listener- the cancel listener
-
setCancelEnabled
public void setCancelEnabled(boolean enable) Description copied from interface:TaskMonitorSet the enablement of the Cancel button- Specified by:
setCancelEnabledin interfaceTaskMonitor- Parameters:
enable- true means to enable the cancel button
-
isCancelEnabled
public boolean isCancelEnabled()Description copied from interface:TaskMonitorReturns true if cancel ability is enabled- Specified by:
isCancelEnabledin interfaceTaskMonitor- Returns:
- true if cancel ability is enabled
-
clearCanceled
public void clearCanceled()Description copied from interface:TaskMonitorClear the cancellation so that this TaskMonitor may be reused- Specified by:
clearCanceledin interfaceTaskMonitor
-