The Meta-Environment API

nl.cwi.sen1.visbase.factbrowser
Class FactBrowserWindow

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by nl.cwi.sen1.visbase.factbrowser.FactBrowserWindow
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class FactBrowserWindow
extends javax.swing.JPanel

This is the FactBrowserWindow responsible for displaying the tree containing the rstores with all the facts for this RStore. For every fact is displays the possible visualisations This class has no testUnit because it is mostly GUI Related.

Author:
Renze de Vries
See Also:
Serialized Form

Nested Class Summary
(package private)  class FactBrowserWindow.TreeIconCellRenderer
          Internal class responsible for painting the icons on the nodes in the Tree.
 
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
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  java.util.Enumeration<javax.swing.tree.TreePath> expansionState
           
private static int INVALID_RSTORE
           
private  FactBrowserDataManager m_dataManager
           
private  javax.swing.tree.DefaultTreeModel mdlTree
           
private  javax.swing.tree.DefaultMutableTreeNode rootNode
           
private  javax.swing.JScrollPane scrlTreeScroller
           
private static long serialVersionUID
           
private  javax.swing.JTree treeRstores
           
 
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.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
FactBrowserWindow()
          The constructor calling the method responsible for building the panel containing the JTree
 
Method Summary
 void addMouseListener(java.awt.event.MouseListener listener)
          This method is responsible for adding the TreeListener so that a click or event from the tree is responded to by the listener
 void addRStore(RStore rstoreNode)
          This method will make it possible to display the loaded RStores with the facts contained within the RStore.
 int getHorizontalBarOffset()
          Get the horizontal scrollbar offset.
 javax.swing.tree.DefaultMutableTreeNode getRStoreNode(int rstoreID)
          Gets the rstore tree node from the tree with a specified rstoreID.
 javax.swing.tree.DefaultMutableTreeNode getSelectedNode()
          This method returns the last selected node in the visual tree and returns it to the requestor
 int getVerticalBarOffset()
          Get the vertical scrollbar offset.
private  void initComponents()
          This method builds a JPanel containing the elements to display the Tree with the RStores and nodes.
 void redrawTree()
          This method makes it possible to see mutations in the tree when a node is added.
 void removeRStoreTreeNode(int rstoreID)
          Removes a rstore tree node with a specified rstoreID from the tree.
private  void restoreExpansionState()
          Restores the expansion state of treeRstores
 void selectNodeAtPosition(int x, int y)
          Select a node at a given position (X & Y).
private  void storeExpansionState()
          Stores the current expansion state of treeRstores
 
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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

INVALID_RSTORE

private static final int INVALID_RSTORE
See Also:
Constant Field Values

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

scrlTreeScroller

private javax.swing.JScrollPane scrlTreeScroller

treeRstores

private javax.swing.JTree treeRstores

rootNode

private javax.swing.tree.DefaultMutableTreeNode rootNode

mdlTree

private javax.swing.tree.DefaultTreeModel mdlTree

m_dataManager

private FactBrowserDataManager m_dataManager

expansionState

private java.util.Enumeration<javax.swing.tree.TreePath> expansionState
Constructor Detail

FactBrowserWindow

public FactBrowserWindow()
The constructor calling the method responsible for building the panel containing the JTree

Method Detail

addMouseListener

public void addMouseListener(java.awt.event.MouseListener listener)
This method is responsible for adding the TreeListener so that a click or event from the tree is responded to by the listener

Overrides:
addMouseListener in class java.awt.Component
Parameters:
listener - The listener which will respond to events

getSelectedNode

public javax.swing.tree.DefaultMutableTreeNode getSelectedNode()
This method returns the last selected node in the visual tree and returns it to the requestor

Returns:
The last selected node in the tree

redrawTree

public void redrawTree()
This method makes it possible to see mutations in the tree when a node is added.


storeExpansionState

private void storeExpansionState()
Stores the current expansion state of treeRstores


restoreExpansionState

private void restoreExpansionState()
Restores the expansion state of treeRstores


addRStore

public void addRStore(RStore rstoreNode)
This method will make it possible to display the loaded RStores with the facts contained within the RStore.

Parameters:
rstoreName - The name of the RStore
rstoreFacts - A list containing all the Facts within the RStore

getRStoreNode

public javax.swing.tree.DefaultMutableTreeNode getRStoreNode(int rstoreID)
Gets the rstore tree node from the tree with a specified rstoreID.

Parameters:
rstoreID -
Returns:

removeRStoreTreeNode

public void removeRStoreTreeNode(int rstoreID)
Removes a rstore tree node with a specified rstoreID from the tree.

Parameters:
rstoreID -

initComponents

private void initComponents()
This method builds a JPanel containing the elements to display the Tree with the RStores and nodes. It was generated by a GUI builder.


selectNodeAtPosition

public void selectNodeAtPosition(int x,
                                 int y)
Select a node at a given position (X & Y). If no node can be selected the selection of the tree will be cleared. If we don't do this you can select a node in the tree and at any point you can double click or right click. With this method you need to double click or right click at a specific node.

Parameters:
x -
y -

getVerticalBarOffset

public int getVerticalBarOffset()
Get the vertical scrollbar offset.

Returns:
Offset integer

getHorizontalBarOffset

public int getHorizontalBarOffset()
Get the horizontal scrollbar offset.

Returns:
Offset integer

The Meta-Environment API