Package ghidra.util.task
Class TaskMonitorComponent
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- ghidra.util.task.TaskMonitorComponent
-
- All Implemented Interfaces:
TaskMonitor
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
public class TaskMonitorComponent extends javax.swing.JPanel implements TaskMonitor
Component that contains a progress bar, a progress icon, and a cancel button to cancel the task that is associated with this task monitor.By default the progress bar and progress icon (spinning globe) are visible.
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface ghidra.util.task.TaskMonitor
DUMMY, NO_PROGRESS_VALUE
-
-
Constructor Summary
Constructors Constructor Description TaskMonitorComponent()
ConstructorTaskMonitorComponent(boolean includeTextField, boolean includeCancelButton)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCancelledListener(CancelledListener mcl)
Add cancelled listenervoid
cancel()
Cancel the taskvoid
checkCanceled()
Check to see if this monitor has been canceledvoid
clearCanceled()
Clear the cancellation so that this TaskMonitor may be reusedlong
getMaximum()
Returns the current maximum value for progressjava.lang.String
getMessage()
Gets the last set message of this monitorlong
getProgress()
Returns the current progress value orTaskMonitor.NO_PROGRESS_VALUE
if there is no value setvoid
incrementProgress(long incrementAmount)
A convenience method to increment the current progress by the given valuevoid
initialize(long maxValue)
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 operationboolean
isIndeterminate()
Returns true ifsetIndeterminate(boolean)
with a value oftrue
has been called.protected void
notifyCancelListeners()
void
removeCancelledListener(CancelledListener mcl)
Remove cancelled listenervoid
reset()
Reset this monitor so that it can be reusedvoid
setCancelButtonVisibility(boolean visible)
Set the visibility of the cancel buttonvoid
setCancelEnabled(boolean enable)
Set the enablement of the Cancel buttonvoid
setIndeterminate(boolean indeterminate)
Sets theindeterminate
property of the progress bar, which determines whether the progress bar is in determinate or indeterminate mode.void
setMaximum(long max)
Set the progress maximum valuevoid
setMessage(java.lang.String message)
Sets the message displayed on the task monitorvoid
setProgress(long value)
Sets the current progress valuevoid
setShowProgressValue(boolean showProgressValue)
True (the default) signals to paint the progress information inside of the progress barvoid
setTaskName(java.lang.String name)
Set the name of the task; the name shows up in the tool tip for the cancel button.void
showProgress(boolean show)
Set whether the progress bar should be visiblevoid
showProgressIcon(boolean visible)
Sets the visibility of the progress icon-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Constructor Detail
-
TaskMonitorComponent
public TaskMonitorComponent()
Constructor
-
TaskMonitorComponent
public TaskMonitorComponent(boolean includeTextField, boolean includeCancelButton)
Constructor- Parameters:
includeTextField
- if true, the dialog can display a status progressMessage with progress detailsincludeCancelButton
- if true, a cancel button will be displayed
-
-
Method Detail
-
addCancelledListener
public void addCancelledListener(CancelledListener mcl)
Description copied from interface:TaskMonitor
Add cancelled listener- Specified by:
addCancelledListener
in interfaceTaskMonitor
- Parameters:
mcl
- the cancel listener
-
removeCancelledListener
public void removeCancelledListener(CancelledListener mcl)
Description copied from interface:TaskMonitor
Remove cancelled listener- Specified by:
removeCancelledListener
in interfaceTaskMonitor
- Parameters:
mcl
- the cancel listener
-
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
-
isCancelled
public boolean isCancelled()
Description copied from interface:TaskMonitor
Returns true if the user has cancelled the operation- Specified by:
isCancelled
in interfaceTaskMonitor
- Returns:
- true if the user has cancelled the operation
-
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 the message displayed on the task monitor- Specified by:
setMessage
in interfaceTaskMonitor
- Parameters:
message
- the message to display
-
getMessage
public java.lang.String getMessage()
Description copied from interface:TaskMonitor
Gets the last set message of this monitor- Specified by:
getMessage
in interfaceTaskMonitor
- Returns:
- the message
-
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
-
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 interfaceTaskMonitor
- Parameters:
maxValue
- maximum value for progress
-
setMaximum
public void setMaximum(long max)
Description copied from interface:TaskMonitor
Set the progress maximum valueNote: 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
-
setIndeterminate
public void setIndeterminate(boolean indeterminate)
Sets theindeterminate
property of the progress bar, which determines whether the progress bar is in determinate or indeterminate mode.An indeterminate progress bar continuously displays animation indicating that an operation of unknown length is occurring. By default, this property is
false
. Some look and feels might not support indeterminate progress bars; they will ignore this property.- Specified by:
setIndeterminate
in interfaceTaskMonitor
- Parameters:
indeterminate
- true if indeterminate- See Also:
JProgressBar
-
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
- Returns:
- true if cancel ability is enabled
-
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
-
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
-
getMaximum
public long getMaximum()
Description copied from interface:TaskMonitor
Returns the current maximum value for progress- Specified by:
getMaximum
in interfaceTaskMonitor
- Returns:
- the maximum progress value
-
reset
public void reset()
Reset this monitor so that it can be reused
-
isIndeterminate
public boolean isIndeterminate()
Returns true ifsetIndeterminate(boolean)
with a value oftrue
has been called.- Specified by:
isIndeterminate
in interfaceTaskMonitor
- Returns:
- true if
setIndeterminate(boolean)
with a value oftrue
has been called.
-
showProgress
public void showProgress(boolean show)
Set whether the progress bar should be visible- Parameters:
show
- true if the progress bar should be visible
-
setTaskName
public void setTaskName(java.lang.String name)
Set the name of the task; the name shows up in the tool tip for the cancel button.- Parameters:
name
- the name of the task
-
setCancelButtonVisibility
public void setCancelButtonVisibility(boolean visible)
Set the visibility of the cancel button- Parameters:
visible
- if true, show the cancel button; false otherwise
-
showProgressIcon
public void showProgressIcon(boolean visible)
Sets the visibility of the progress icon- Parameters:
visible
- if true, display the progress icon
-
notifyCancelListeners
protected void notifyCancelListeners()
-
-