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.JPanelAbstract class that defines a panel for displaying name/value pairs with html-formatting.This is used with the
ExtensionDetailsPaneland 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.FontdefaultFontprotected static intLEFT_COLUMN_WIDTHprotected static intRIGHT_MARGINprotected javax.swing.JScrollPanespprotected javax.swing.JLabeltextLabelprotected static javax.swing.text.SimpleAttributeSettitleAttrSet-
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 voidclear()Clears the text in the details pane.protected javax.swing.text.SimpleAttributeSetcreateAttributeSet(java.awt.Color color)Returns a newSimpleAttributeSetwith the following default attributes set: FontFamily: "Tahoma" FontSize: 11 Bold: Trueprotected javax.swing.text.SimpleAttributeSetcreateAttributeSet(java.lang.String fontFamily, int fontSize, boolean bold, java.awt.Color color)Returns a newSimpleAttributeSetwith all attributes set by the caller.protected java.lang.StringcreateColorString(java.awt.Color color)Returns a stringified version of theColorprovided; eg: "8c0000"protected abstract voidcreateFieldAttributes()Sets attributes for the different pieces of information being displayed in this panel.protected voidcreateMainPanel()Creates the main dialog components.protected java.lang.StringformatDescription(java.lang.String descr)Returns a string with line breaks at the boundary of the window it's being displayed in.protected intgetMaxStringWidth()Returns the maximum size that one line of text can be when formatting the description.protected voidinsertHTMLLine(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 voidinsertHTMLString(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 voidinsertRowTitle(java.lang.StringBuilder buffer, java.lang.String rowName)Inserts an html-formatted string into the given buffer.protected voidinsertRowValue(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 newSimpleAttributeSetwith 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 newSimpleAttributeSetwith 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 theColorprovided; 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
-
-