Class AbstractDetailsPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- ghidra.framework.plugintool.dialog.AbstractDetailsPanel
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
public abstract class AbstractDetailsPanel extends javax.swing.JPanel
Abstract class that defines a panel for displaying name/value pairs with html-formatting.This is used with the
ExtensionDetailsPanel
and thePluginDetailsPanel
- 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 Modifier and Type Field Description protected java.awt.Font
defaultFont
protected static int
LEFT_COLUMN_WIDTH
protected static int
RIGHT_MARGIN
protected javax.swing.JScrollPane
sp
protected javax.swing.JLabel
textLabel
protected static javax.swing.text.SimpleAttributeSet
titleAttrSet
-
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
-
-
Constructor Summary
Constructors Constructor Description AbstractDetailsPanel()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
clear()
Clears the text in the details pane.protected javax.swing.text.SimpleAttributeSet
createAttributeSet(java.awt.Color color)
Returns a newSimpleAttributeSet
with the following default attributes set: FontFamily: "Tahoma" FontSize: 11 Bold: Trueprotected javax.swing.text.SimpleAttributeSet
createAttributeSet(java.lang.String fontFamily, int fontSize, boolean bold, java.awt.Color color)
Returns a newSimpleAttributeSet
with all attributes set by the caller.protected java.lang.String
createColorString(java.awt.Color color)
Returns a stringified version of theColor
provided; eg: "8c0000"protected abstract void
createFieldAttributes()
Sets attributes for the different pieces of information being displayed in this panel.protected void
createMainPanel()
Creates the main dialog components.protected java.lang.String
formatDescription(java.lang.String descr)
Returns a string with line breaks at the boundary of the window it's being displayed in.protected int
getMaxStringWidth()
Returns the maximum size that one line of text can be when formatting the description.protected void
insertHTMLLine(java.lang.String string, javax.swing.text.SimpleAttributeSet attributeSet, java.lang.StringBuilder buffer)
Inserts a single line of html into aStringBuffer
, with the given attributes.protected void
insertHTMLString(java.lang.String string, javax.swing.text.SimpleAttributeSet attributeSet, java.lang.StringBuilder buffer)
Adds text to a string buffer as an html-formatted string, adding formatting information as specified.protected void
insertRowTitle(java.lang.StringBuilder buffer, java.lang.String rowName)
Inserts an html-formatted string into the given buffer.protected void
insertRowValue(java.lang.StringBuilder buffer, java.lang.String value, javax.swing.text.SimpleAttributeSet attrSet)
Inserts an html-formatted string into the given buffer.-
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
-
-
-
-
Field Detail
-
LEFT_COLUMN_WIDTH
protected static final int LEFT_COLUMN_WIDTH
- See Also:
- Constant Field Values
-
RIGHT_MARGIN
protected static final int RIGHT_MARGIN
- See Also:
- Constant Field Values
-
titleAttrSet
protected static javax.swing.text.SimpleAttributeSet titleAttrSet
-
textLabel
protected javax.swing.JLabel textLabel
-
defaultFont
protected java.awt.Font defaultFont
-
sp
protected javax.swing.JScrollPane sp
-
-
Method Detail
-
createFieldAttributes
protected abstract void createFieldAttributes()
Sets attributes for the different pieces of information being displayed in this panel.
-
createAttributeSet
protected javax.swing.text.SimpleAttributeSet createAttributeSet(java.lang.String fontFamily, int fontSize, boolean bold, java.awt.Color color)
Returns a newSimpleAttributeSet
with all attributes set by the caller.- Parameters:
fontFamily
- the font to usefontSize
- the font sizebold
- if true, render text boldcolor
- the foreground text color- Returns:
- a new attribute set
-
createAttributeSet
protected javax.swing.text.SimpleAttributeSet createAttributeSet(java.awt.Color color)
Returns a newSimpleAttributeSet
with the following default attributes set:- FontFamily: "Tahoma"
- FontSize: 11
- Bold: True
- Parameters:
color
- the foreground text color- Returns:
- a new attribute set
-
clear
protected void clear()
Clears the text in the details pane.
-
createMainPanel
protected void createMainPanel()
Creates the main dialog components.
-
insertRowTitle
protected void insertRowTitle(java.lang.StringBuilder buffer, java.lang.String rowName)
Inserts an html-formatted string into the given buffer. This is meant to be used for inserting the name of each row in the description text.- Parameters:
buffer
- the string buffer to add torowName
- the name of the row to add
-
insertRowValue
protected void insertRowValue(java.lang.StringBuilder buffer, java.lang.String value, javax.swing.text.SimpleAttributeSet attrSet)
Inserts an html-formatted string into the given buffer. This is meant to be used for inserting the value of each row in the description text.- Parameters:
buffer
- the string buffer to add tovalue
- the text to addattrSet
- the structure containing formatting information
-
insertHTMLString
protected void insertHTMLString(java.lang.String string, javax.swing.text.SimpleAttributeSet attributeSet, java.lang.StringBuilder buffer)
Adds text to a string buffer as an html-formatted string, adding formatting information as specified.- Parameters:
string
- the string to addattributeSet
- the formatting instructionsbuffer
- the string buffer to add to
-
insertHTMLLine
protected void insertHTMLLine(java.lang.String string, javax.swing.text.SimpleAttributeSet attributeSet, java.lang.StringBuilder buffer)
Inserts a single line of html into aStringBuffer
, with the given attributes.- Parameters:
string
- the string to insertattributeSet
- the attributes to applybuffer
- the string buffer
-
createColorString
protected java.lang.String createColorString(java.awt.Color color)
Returns a stringified version of theColor
provided; eg: "8c0000"- Parameters:
color
- the color to parse- Returns:
- string version of the color
-
formatDescription
protected java.lang.String formatDescription(java.lang.String descr)
Returns a string with line breaks at the boundary of the window it's being displayed in. Without this the description would just run on in one long line.- Parameters:
descr
- the string to format- Returns:
- the formatted string
-
getMaxStringWidth
protected int getMaxStringWidth()
Returns the maximum size that one line of text can be when formatting the description.- Returns:
- the number of characters in the string
-
-