Module org.autogui
Package org.autogui.swing.log
Class GuiSwingLogEntryException.ExceptionStackTraceRenderer
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.autogui.swing.util.TextCellRenderer<GuiLogEntryException>
org.autogui.swing.log.GuiSwingLogEntryException.ExceptionStackTraceRenderer
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,Accessible,ListCellRenderer<GuiLogEntryException>,TableCellRenderer
- Enclosing class:
GuiSwingLogEntryException
public static class GuiSwingLogEntryException.ExceptionStackTraceRenderer
extends TextCellRenderer<GuiLogEntryException>
a renderer for a stack-trace lines
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.autogui.swing.util.TextCellRenderer
TextCellRenderer.LineInfo, TextCellRenderer.LineInfoMatchNested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected float[]protected booleanprotected float[]protected StringBuilderFields inherited from class org.autogui.swing.util.TextCellRenderer
baseHeight, baseWidth, findPattern, findText, forMouseEvents, lastMatch, maxWidth, originalBackground, selected, selectionBackground, selectionEnd, selectionForeground, selectionStart, testImage, text, textToBackToColor, valueFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidappend(String str, Map<AttributedCharacterIterator.Attribute, Object> attrs) voidfloat[]multiply maxWidth set byTextCellRenderer.buildFromValue()and size of lines by base char size (TextCellRenderer.getBaseSize()) , and border size byTextCellRenderer.getBorderSize()createLine(TextCellRenderer.LineInfo prevLine, int lineIndex, int start, String line) create a line-infoformat(GuiLogEntryException value) voidformatStackTrace(Throwable ex, Set<Throwable> history, String lineHead, GuiSwingLogEntryException.StackTraceAttributeSet attrSet, List<StackTraceElement> prevStackTrace) voidformatStackTraceElement(StackTraceElement e, String lineHead, GuiSwingLogEntryException.StackTraceAttributeSet attrSet) voidformatStackTraceEnclosing(Throwable ex, Set<Throwable> history, String head, String lineHead, List<StackTraceElement> stackTrace) float[]intgetCommons(List<StackTraceElement> nextStackTrace, List<StackTraceElement> prevStackTrace) getFocusNextFound(GuiLogEntryException value, Object prevIndex, boolean forward) focus next matched range and return it.protected voidprotected voidbooleanvoidsetExpanded(boolean expanded) booleansetValue(GuiLogEntryException value, boolean forMouseEvents) Methods inherited from class org.autogui.swing.util.TextCellRenderer
buildLines, clearSelectionRange, createBorder, createBorder, createCellTableBorderOuter, findTextForComposition, formatPreProcess, getBaseSize, getBorderSize, getCellBackground, getFindPattern, getFocusNextFoundForComposition, getGridColor, getIndex, getLineFindColor, getLineFindMatchColor, getLines, getListCellRendererComponent, getSelectedTextForComposition, getSelectionBackground, getSelectionForeground, getTableCellRendererComponent, getText, getTextSelection, getValue, initColor, isCellTableEnd, isLastMatch, isValueSame, mouseUpdateForComposition, paintCellSelection, paintComponent, paintLineFinds, paintLineSelection, paintOrLayoutComponentLines, paintRowsBorderSelection, paintSetUpGraphics, paintStartX, setBackground, setCellBorderDefault, setCellDefaultProperties, setCellListColor, setCellListColorDropTarget, setCellTableBorder, setCellTableBorderWithMargin, setCellTableColor, setCellTableColorDropTarget, setCellTableMargin, setDefaultAttributes, setFindHighlights, setProperty, setProperty, setSelectionBackground, setSelectionForeground, setSelectionFromValue, setSelectionRange, setValueForComposition, updateFindPattern, updateFindPattern, updateFindPatternForComposition, wrapBorderMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods 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, 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, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateMethods 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, validateTreeMethods 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 Details
-
topSet
-
middleSet
-
lastSet
-
expandedStackSize
protected float[] expandedStackSize -
collapsedStackSize
protected float[] collapsedStackSize -
expanded
protected boolean expanded -
lines
-
lineAttrs
-
line
-
-
Constructor Details
-
ExceptionStackTraceRenderer
public ExceptionStackTraceRenderer()
-
-
Method Details
-
initBorder
protected void initBorder()- Overrides:
initBorderin classTextCellRenderer<GuiLogEntryException>
-
initAttributes
protected void initAttributes() -
setValue
Description copied from class:TextCellRenderercalled fromTextCellRenderer.getTableCellRendererComponent(JTable, Object, boolean, boolean, int, int)(alsoTextCellRenderer.getListCellRendererComponent(JList, Object, int, boolean, boolean))- check the value by
TextCellRenderer.isValueSame(Object, boolean). if the value is same, returns false - updates value and text with
TextCellRenderer.format(Object) TextCellRenderer.buildFromValue(): constructsTextCellRenderer.LineInfos (TextCellRenderer.buildLines(String, List)andTextCellRenderer.createLine(LineInfo, int, int, String)), and update preferredSize withTextCellRenderer.buildSize(). Also, if forMouseEvents is false,TextCellRenderer.setSelectionFromValue(Object)
- Overrides:
setValuein classTextCellRenderer<GuiLogEntryException>- Parameters:
value- a new valueforMouseEvents-TextCellRenderer.setSelectionFromValue(Object)will be skipped- Returns:
- true if updated
- check the value by
-
buildFromValue
public void buildFromValue()- Overrides:
buildFromValuein classTextCellRenderer<GuiLogEntryException>
-
buildSize
public float[] buildSize()Description copied from class:TextCellRenderermultiply maxWidth set byTextCellRenderer.buildFromValue()and size of lines by base char size (TextCellRenderer.getBaseSize()) , and border size byTextCellRenderer.getBorderSize()- Overrides:
buildSizein classTextCellRenderer<GuiLogEntryException>- Returns:
- {width, height}
-
createLine
public TextCellRenderer.LineInfo createLine(TextCellRenderer.LineInfo prevLine, int lineIndex, int start, String line) Description copied from class:TextCellRenderercreate a line-info- Overrides:
createLinein classTextCellRenderer<GuiLogEntryException>- Parameters:
prevLine- a previous line-info or null for first linelineIndex- the line number indexstart- the start position of the lineline- the line string without new-line- Returns:
- a created line info for the line
-
format
- Overrides:
formatin classTextCellRenderer<GuiLogEntryException>- Parameters:
value- the source value- Returns:
- the formatted line: should be processed by
TextCellRenderer.formatPreProcess(String)
-
append
-
formatStackTrace
public void formatStackTrace(Throwable ex, Set<Throwable> history, String lineHead, GuiSwingLogEntryException.StackTraceAttributeSet attrSet, List<StackTraceElement> prevStackTrace) -
formatStackTraceEnclosing
-
getCommons
public int getCommons(List<StackTraceElement> nextStackTrace, List<StackTraceElement> prevStackTrace) -
formatStackTraceElement
public void formatStackTraceElement(StackTraceElement e, String lineHead, GuiSwingLogEntryException.StackTraceAttributeSet attrSet) -
getCollapsedSize
public float[] getCollapsedSize() -
setExpanded
public void setExpanded(boolean expanded) -
isExpanded
public boolean isExpanded() -
getFocusNextFound
Description copied from class:TextCellRendererfocus next matched range and return it.m = null; m = getFocusNextFound(v, m, true); m = getFocusNextFound(v, m, true); ...- Overrides:
getFocusNextFoundin classTextCellRenderer<GuiLogEntryException>- Parameters:
value- the value to be setprevIndex- the previous focus object or initially nullforward- true for forward or false for backward- Returns:
- a focus object
TextCellRenderer.LineInfoMatchor null
-