public class KnowledgeFlowApp extends javax.swing.JPanel implements java.beans.PropertyChangeListener, BeanCustomizer.ModifyListener
JPanel,
PropertyChangeListener,
Serialized Form| Modifier and Type | Class and Description |
|---|---|
protected class |
KnowledgeFlowApp.BeanIconRenderer |
protected class |
KnowledgeFlowApp.BeanLayout
Used for displaying the bean components and their visible connections
|
protected class |
KnowledgeFlowApp.InvisibleNode |
protected class |
KnowledgeFlowApp.InvisibleTreeModel |
protected class |
KnowledgeFlowApp.JTreeLeafDetails
Inner class for encapsulating information about a bean that is represented
at a leaf in the JTree.
|
protected class |
KnowledgeFlowApp.KFLogPanel |
static interface |
KnowledgeFlowApp.KFPerspective
Interface for perspectives.
|
class |
KnowledgeFlowApp.MainKFPerspective
Main Knowledge Flow perspective
|
protected class |
KnowledgeFlowApp.RunThread |
javax.swing.JPanel.AccessibleJPaneljavax.swing.JComponent.AccessibleJComponent| Modifier and Type | Field and Description |
|---|---|
protected static int |
ADDING |
protected static int |
CONNECTING |
static java.lang.String |
FILE_EXTENSION
the extension for the serialized setups (Java serialization)
|
static java.lang.String |
FILE_EXTENSION_XML
the extension for the serialized setups (Java serialization)
|
protected java.beans.beancontext.BeanContextSupport |
m_bcSupport |
protected javax.swing.JTree |
m_componentTree
Palette of components stored in a JTree
|
protected javax.swing.JPanel |
m_configAndPerspectives
Panel to hold the perspectives toolbar and config button
|
protected boolean |
m_configAndPerspectivesVisible
Whether the perspectives toolbar is visible at present (will never be
visible if there are no plugin perspectives installed)
|
protected javax.swing.JButton |
m_copyB |
protected javax.swing.JButton |
m_cutB |
protected javax.swing.JButton |
m_deleteB |
protected javax.swing.JFileChooser |
m_FileChooser
The file chooser for selecting layout files
|
protected Environment |
m_flowEnvironment
Environment variables for the current flow
|
protected int |
m_FlowHeight
the flow layout height
|
protected int |
m_FlowWidth
the flow layout width
|
protected javax.swing.JButton |
m_groupB |
protected javax.swing.JButton |
m_helpB |
protected javax.swing.filechooser.FileFilter |
m_KfFilter
A filter to ensure only KnowledgeFlow files in binary format get shown in
the chooser
|
protected javax.swing.filechooser.FileFilter |
m_KOMLFilter
A filter to ensure only KnowledgeFlow files in KOML format get shown in the
chooser
|
protected javax.swing.JButton |
m_loadB |
protected KnowledgeFlowApp.KFLogPanel |
m_logPanel |
protected KnowledgeFlowApp.MainKFPerspective |
m_mainKFPerspective
Shortcut to the main perspective
|
protected javax.swing.JButton |
m_newB |
protected javax.swing.JButton |
m_noteB |
protected javax.swing.JButton |
m_pasteB |
protected java.lang.StringBuffer |
m_pasteBuffer
The clip board
|
protected java.util.Map<java.lang.String,KnowledgeFlowApp.KFPerspective> |
m_perspectiveCache
Those perspectives that have been instantiated
|
protected AttributeSelectionPanel |
m_perspectiveConfigurer |
protected java.lang.Thread |
m_perspectiveDataLoadThread
Thread for loading data for perspectives
|
protected javax.swing.JPanel |
m_perspectiveHolder
Component that holds the currently visible perspective
|
protected java.util.List<KnowledgeFlowApp.KFPerspective> |
m_perspectives
Holds the list of currently loaded perspectives.
|
protected javax.swing.JToolBar |
m_perspectiveToolBar
Toolbar to hold the perspective buttons
|
protected javax.swing.JButton |
m_playB |
protected javax.swing.JButton |
m_playBB |
protected java.util.Map<java.lang.String,java.lang.String> |
m_pluginPerspectiveLookup
Map of all plugin perspectives
|
protected javax.swing.JButton |
m_pointerB |
protected java.lang.String |
m_PreferredExtension
the preferred file extension
|
protected javax.swing.JButton |
m_saveB |
protected javax.swing.JButton |
m_saveBB |
protected int |
m_ScrollBarIncrementComponents
the scrollbar increment of the components scrollpane
|
protected int |
m_ScrollBarIncrementLayout
the scrollbar increment of the layout scrollpane
|
protected javax.swing.JButton |
m_selectAllB |
protected javax.swing.JToggleButton |
m_snapToGridB |
protected javax.swing.JButton |
m_stopB |
protected javax.swing.JButton |
m_templatesB |
protected javax.swing.JButton |
m_togglePerspectivesB |
protected javax.swing.JButton |
m_undoB |
protected int |
m_untitledCount
Number of untitled tabs so far
|
protected javax.swing.tree.DefaultMutableTreeNode |
m_userCompNode
The node of the JTree that holds "user" (metabean) components
|
protected boolean |
m_UserComponentsInXML
whether to store the user components in XML or in binary format
|
protected javax.swing.filechooser.FileFilter |
m_XMLFilter
A filter to ensure only KnowledgeFlow layout files in XML format get shown
in the chooser
|
protected javax.swing.filechooser.FileFilter |
m_XStreamFilter
A filter to ensure only KnowledgeFlow files in XStream format get shown in
the chooser
|
protected javax.swing.JButton |
m_zoomInB |
protected javax.swing.JButton |
m_zoomOutB |
protected static int |
MOVING |
protected static int |
NONE |
protected static int |
PASTING |
static java.util.Vector<StartUpListener> |
s_startupListeners |
protected static int |
SELECTING |
protected static java.lang.String |
USERCOMPONENTS_XML_EXTENSION
the extension for the user components, when serialized to XML
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW| Constructor and Description |
|---|
KnowledgeFlowApp(boolean showFileMenu)
Creates a new
KnowledgeFlowApp instance. |
| Modifier and Type | Method and Description |
|---|---|
static void |
addStartupListener(StartUpListener s)
Add a listener to be notified when startup is complete
|
static void |
addToPluginBeanProps(java.io.File beanPropsFile)
Add a plugin bean props file
|
void |
clearLayout() |
void |
closeAllTabs() |
java.lang.StringBuffer |
copyToBuffer(java.util.Vector<java.lang.Object> selectedBeans)
Utility routine that serializes the supplied Vector of BeanInstances to XML
|
protected static java.awt.image.BufferedImage |
createImage(javax.swing.JComponent component,
java.awt.Rectangle region)
Utility method to create an image of a region of the given component
|
static void |
createSingleton(java.lang.String[] args)
Create the singleton instance of the KnowledgeFlow
|
static void |
disposeSingleton() |
boolean |
getAllowMultipleTabs() |
java.util.Vector<java.util.Vector<?>> |
getFlow()
Gets the current flow being edited.
|
java.lang.String |
getFlowXML()
Returns the current flow being edited in XML format.
|
static java.lang.String |
getGlobalInfo(java.lang.Object tempBean)
Utility method for grabbing the global info help (if it exists) from an
arbitrary object
|
KnowledgeFlowApp.MainKFPerspective |
getMainPerspective()
Gets the main knowledge flow perspective
|
java.lang.StringBuffer |
getPasteBuffer()
Get the contents of the paste buffer
|
static KnowledgeFlowApp |
getSingleton()
Return the singleton instance of the KnowledgeFlow
|
protected void |
integrateFlow(java.util.Vector<java.lang.Object> beans,
java.util.Vector<BeanConnection> connections,
boolean replace,
boolean notReplaceAndSourcedFromBinary) |
void |
loadLayout(java.io.File oFile,
boolean newTab)
Load a layout from a file.
|
protected void |
loadLayout(java.io.File oFile,
boolean newTab,
boolean isUndo)
Load a layout from a file
|
void |
loadLayout(java.io.InputStream is,
boolean newTab,
java.lang.String flowName)
Load a flow file from an input stream.
|
void |
loadLayout(java.io.Reader reader,
boolean newTab,
java.lang.String flowName)
Load a flow file from a reader.
|
static void |
loadProperties()
Loads KnowledgeFlow properties and any plugins (adds jars to the classpath)
|
static void |
main(java.lang.String[] args)
Main method.
|
protected boolean |
pasteFromBuffer(int x,
int y,
java.lang.StringBuffer pasteBuffer,
boolean addUndoPoint) |
void |
propertyChange(java.beans.PropertyChangeEvent e)
Accept property change events
|
static void |
reInitialize() |
static void |
removeFromPluginBeanProps(java.io.File beanPropsFile)
Remove a plugin bean props file
|
void |
saveLayout(java.io.File toFile,
int tabIndex) |
protected boolean |
saveLayout(java.io.File sFile,
int tabIndex,
boolean isUndoPoint) |
void |
saveLayout(java.io.OutputStream out,
int tabIndex)
Save the knowledge flow into the OutputStream passed at input.
|
protected void |
setActivePerspective(int theIndex) |
void |
setAllowMultipleTabs(boolean multiple) |
void |
setEnvironment(Environment env)
Set the environment variables to use.
|
void |
setFlow(java.util.Vector<java.util.Vector<?>> v)
Set the flow for the KnowledgeFlow to edit.
|
void |
setModifiedStatus(java.lang.Object source,
boolean modified)
Tells us about the modified status of a particular object - typically a
customizer that is editing a flow component.
|
void |
setPasteBuffer(java.lang.StringBuffer b)
Set the contents of the "paste" buffer and enable the paste from cliboard
toolbar button
|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIaddAncestorListener, 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, updateadd, 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, validateTreeaction, 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, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleprotected java.util.Map<java.lang.String,java.lang.String> m_pluginPerspectiveLookup
protected java.util.Map<java.lang.String,KnowledgeFlowApp.KFPerspective> m_perspectiveCache
protected static final int NONE
protected static final int MOVING
protected static final int CONNECTING
protected static final int ADDING
protected static final int SELECTING
protected static final int PASTING
protected static final java.lang.String USERCOMPONENTS_XML_EXTENSION
protected int m_untitledCount
protected javax.swing.JButton m_pointerB
protected javax.swing.JButton m_saveB
protected javax.swing.JButton m_saveBB
protected javax.swing.JButton m_loadB
protected javax.swing.JButton m_stopB
protected javax.swing.JButton m_playB
protected javax.swing.JButton m_playBB
protected javax.swing.JButton m_helpB
protected javax.swing.JButton m_newB
protected javax.swing.JButton m_togglePerspectivesB
protected javax.swing.JButton m_templatesB
protected javax.swing.JButton m_groupB
protected javax.swing.JButton m_cutB
protected javax.swing.JButton m_copyB
protected javax.swing.JButton m_pasteB
protected javax.swing.JButton m_deleteB
protected javax.swing.JButton m_noteB
protected javax.swing.JButton m_selectAllB
protected javax.swing.JButton m_undoB
protected javax.swing.JButton m_zoomInB
protected javax.swing.JButton m_zoomOutB
protected javax.swing.JToggleButton m_snapToGridB
protected javax.swing.JFileChooser m_FileChooser
protected KnowledgeFlowApp.KFLogPanel m_logPanel
protected javax.swing.JToolBar m_perspectiveToolBar
protected javax.swing.JPanel m_configAndPerspectives
protected boolean m_configAndPerspectivesVisible
protected javax.swing.JPanel m_perspectiveHolder
protected java.util.List<KnowledgeFlowApp.KFPerspective> m_perspectives
protected java.lang.Thread m_perspectiveDataLoadThread
protected AttributeSelectionPanel m_perspectiveConfigurer
protected KnowledgeFlowApp.MainKFPerspective m_mainKFPerspective
protected java.beans.beancontext.BeanContextSupport m_bcSupport
public static final java.lang.String FILE_EXTENSION
public static final java.lang.String FILE_EXTENSION_XML
protected javax.swing.filechooser.FileFilter m_KfFilter
protected javax.swing.filechooser.FileFilter m_KOMLFilter
protected javax.swing.filechooser.FileFilter m_XStreamFilter
protected javax.swing.filechooser.FileFilter m_XMLFilter
protected int m_ScrollBarIncrementLayout
protected int m_ScrollBarIncrementComponents
protected int m_FlowWidth
protected int m_FlowHeight
protected java.lang.String m_PreferredExtension
protected boolean m_UserComponentsInXML
protected Environment m_flowEnvironment
protected javax.swing.JTree m_componentTree
protected javax.swing.tree.DefaultMutableTreeNode m_userCompNode
protected java.lang.StringBuffer m_pasteBuffer
public static java.util.Vector<StartUpListener> s_startupListeners
public KnowledgeFlowApp(boolean showFileMenu)
KnowledgeFlowApp instance.public static void addToPluginBeanProps(java.io.File beanPropsFile)
throws java.lang.Exception
beanPropsFile - the plugin properties to addjava.lang.Exception - if a problem occurspublic static void removeFromPluginBeanProps(java.io.File beanPropsFile)
throws java.lang.Exception
beanPropsFile - the plugin properties to removejava.lang.Exception - if a problem occurspublic static void loadProperties()
public static void reInitialize()
public void setEnvironment(Environment env)
env - public KnowledgeFlowApp.MainKFPerspective getMainPerspective()
protected void setActivePerspective(int theIndex)
public void closeAllTabs()
public void clearLayout()
public void setModifiedStatus(java.lang.Object source,
boolean modified)
setModifiedStatus in interface BeanCustomizer.ModifyListenersource - the source objectmodified - true if the source object has been modifiedpublic void setPasteBuffer(java.lang.StringBuffer b)
b - the buffer to usepublic java.lang.StringBuffer getPasteBuffer()
public java.lang.StringBuffer copyToBuffer(java.util.Vector<java.lang.Object> selectedBeans)
throws java.lang.Exception
selectedBeans - the vector of BeanInstances to serializejava.lang.Exception - if a problem occursprotected boolean pasteFromBuffer(int x,
int y,
java.lang.StringBuffer pasteBuffer,
boolean addUndoPoint)
public void propertyChange(java.beans.PropertyChangeEvent e)
propertyChange in interface java.beans.PropertyChangeListenere - a PropertyChangeEvent valuepublic void loadLayout(java.io.File oFile,
boolean newTab)
oFile - the file to load fromnewTab - true if the loaded layout should be displayed in a new tabprotected void loadLayout(java.io.File oFile,
boolean newTab,
boolean isUndo)
oFile - the file to load fromnewTab - true if the loaded layout should be displayed in a new tabisUndo - is this file an "undo" file?public void loadLayout(java.io.InputStream is,
boolean newTab,
java.lang.String flowName)
throws java.lang.Exception
is - the input stream to laod fromnewTab - whether to open a new tab in the UI for the flowflowName - the name of the flowjava.lang.Exception - if a problem occurs during de-serializationpublic void loadLayout(java.io.Reader reader,
boolean newTab,
java.lang.String flowName)
throws java.lang.Exception
reader - the reader to load fromnewTab - whether to open a new tab in the UI for the flowflowName - the name of the flowjava.lang.Exception - if a problem occurs during de-serializationprotected void integrateFlow(java.util.Vector<java.lang.Object> beans,
java.util.Vector<BeanConnection> connections,
boolean replace,
boolean notReplaceAndSourcedFromBinary)
public void setFlow(java.util.Vector<java.util.Vector<?>> v)
throws java.lang.Exception
v - a Vector containing a Vector of beans and a Vector of connectionsjava.lang.Exception - if something goes wrongpublic java.util.Vector<java.util.Vector<?>> getFlow()
throws java.lang.Exception
java.lang.Exception - if a problem occurspublic java.lang.String getFlowXML()
throws java.lang.Exception
java.lang.Exception - if a problem occursprotected static java.awt.image.BufferedImage createImage(javax.swing.JComponent component,
java.awt.Rectangle region)
throws java.io.IOException
component - the component to create an image ofregion - the region of the component to put into the imagejava.io.IOExceptionpublic void saveLayout(java.io.File toFile,
int tabIndex)
protected boolean saveLayout(java.io.File sFile,
int tabIndex,
boolean isUndoPoint)
public void saveLayout(java.io.OutputStream out,
int tabIndex)
out - the output stream to save the layout inpublic static java.lang.String getGlobalInfo(java.lang.Object tempBean)
tempBean - the object to grab global info frompublic static void createSingleton(java.lang.String[] args)
args - can contain a file argument for loading a flow layout (format:
"file=[path to layout file]") Modified by Zerbetto: you can
specify the path of a knowledge flow layout file at inputpublic static void disposeSingleton()
public static KnowledgeFlowApp getSingleton()
public static void addStartupListener(StartUpListener s)
s - a listener to addpublic void setAllowMultipleTabs(boolean multiple)
public boolean getAllowMultipleTabs()
public static void main(java.lang.String[] args)
args - a String[] value