debugger.gui.debugging
Class TraceHistoryPanel

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended bydebugger.gui.debugging.TraceHistoryPanel
All Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, Serializable

public class TraceHistoryPanel
extends JPanel

Copyright (c) Ontos AG (http://www.ontosearch.com). This class is part of JAPE Debugger component for GATE (Copyright (c) "The University of Sheffield" see http://gate.ac.uk/)
This class creates GUI of debugging (now TraceHistory) part of JAPEDebugger.

Author:
Andrey Shafirin, Vladimir Karasev
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
private  AnnotationSet currentAnnotationCut
           
private  int currentEndOffset
           
private  PhaseModel currentPhaseModel
           
private  RuleModel currentRuleModel
           
private  RuleTrace currentRuleTrace
           
private  int currentStartOffset
           
private  TraceContainer currentTraces
           
private  Document document
           
private  JButton nextAnnotationButton
           
private  JLabel phaseName
           
private  JButton previousAnnotationButton
           
private  JLabel ruleName
           
private  JTextPane rulePane
           
private  JPanel rulePanel
           
private  JTextPane selectedTextPane
           
private  TraceContainer traceContainer
           
 
Fields inherited from class javax.swing.JPanel
 
Fields inherited from class javax.swing.JComponent
accessibleContext, 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.Container
 
Fields inherited from class java.awt.Component
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
 
Constructor Summary
TraceHistoryPanel()
           
 
Method Summary
private  JComponent createAnnotationPanel(AnnotationSet annotations, String annotationsType, RuleTrace ruleTrace, boolean withHighlighting)
          This method creates a panel with annotations of the given input type, which are contained in a selected interval.
 RuleModel getCurrentRuleModel()
          This method should be deleted later - it violates the architecture.
 RuleTrace getCurrentRuleTrace()
          This method should be deleted later - it violates the architecture.
private  JTextPane getRulePane()
           
private  JComponent getRulePanel()
           
private  JComponent getSelectedTextPane()
           
private  JComponent getUpperPanel()
           
private  void initGui()
           
private  long min(long a, long b)
          Return whichever of two longs has the smallest value.
 void setCurrentPhase(PhaseModel phaseModel)
          Updates panel after user has selected a phase in the ResourceTree.
 void setCurrentRule(RuleModel ruleModel)
          Updates panel after user has selected a rule in the ResourceTree.
 void setText(int startOffset, int endOffset, Document document)
          This method is called from ShowResultAction action, when user selects text, on which he'd like to see the results of matching the rules.
 void updateRulePanel(RuleModel ruleModel, RuleTrace currentTrace)
          Creates panels with input annotations.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

rulePanel

private JPanel rulePanel

phaseName

private JLabel phaseName

ruleName

private JLabel ruleName

selectedTextPane

private JTextPane selectedTextPane

rulePane

private JTextPane rulePane

nextAnnotationButton

private JButton nextAnnotationButton

previousAnnotationButton

private JButton previousAnnotationButton

currentPhaseModel

private PhaseModel currentPhaseModel

currentRuleModel

private RuleModel currentRuleModel

traceContainer

private TraceContainer traceContainer

document

private Document document

currentStartOffset

private int currentStartOffset

currentEndOffset

private int currentEndOffset

currentTraces

private TraceContainer currentTraces

currentRuleTrace

private RuleTrace currentRuleTrace

currentAnnotationCut

private AnnotationSet currentAnnotationCut
Constructor Detail

TraceHistoryPanel

public TraceHistoryPanel()
Method Detail

initGui

private void initGui()

getRulePane

private JTextPane getRulePane()

getSelectedTextPane

private JComponent getSelectedTextPane()

getRulePanel

private JComponent getRulePanel()

getUpperPanel

private JComponent getUpperPanel()

setText

public void setText(int startOffset,
                    int endOffset,
                    Document document)
This method is called from ShowResultAction action, when user selects text, on which he'd like to see the results of matching the rules.

Parameters:
startOffset -
endOffset -
document -

min

private long min(long a,
                 long b)
Return whichever of two longs has the smallest value.

Parameters:
a - The first of the longs.
b - The second of the longs.
Returns:
The value of the long that's smallest.

createAnnotationPanel

private JComponent createAnnotationPanel(AnnotationSet annotations,
                                         String annotationsType,
                                         RuleTrace ruleTrace,
                                         boolean withHighlighting)
This method creates a panel with annotations of the given input type, which are contained in a selected interval. All of the annotations which matched in the current selected rule are highlighted. (Input type is one of the inputs in the phase, to which current rule belongs.)

Parameters:
annotations - AnnotationSet with annotations of the given input type from a selected interval (offsets are currentStartOffset and currentEndOffset)
annotationsType - type of annotations, i.e. Lookup, Morph
ruleTrace - RuleTrace of currently selected rule, can be null, if no rule is selected
withHighlighting - whether highlighting is on/off
Returns:

updateRulePanel

public void updateRulePanel(RuleModel ruleModel,
                            RuleTrace currentTrace)
Creates panels with input annotations.

Parameters:
ruleModel -
currentTrace -

setCurrentRule

public void setCurrentRule(RuleModel ruleModel)
Updates panel after user has selected a rule in the ResourceTree.

Parameters:
ruleModel - RuleModel which user has selected in the resources tree
See Also:
RuleModel, ResourceTree

setCurrentPhase

public void setCurrentPhase(PhaseModel phaseModel)
Updates panel after user has selected a phase in the ResourceTree.

Parameters:
phaseModel - PhaseModel which user has selected in the resources tree
See Also:
PhaseModel, ResourceTree

getCurrentRuleTrace

public RuleTrace getCurrentRuleTrace()
This method should be deleted later - it violates the architecture.

Returns:

getCurrentRuleModel

public RuleModel getCurrentRuleModel()
This method should be deleted later - it violates the architecture.

Returns: