public abstract class BasicBlockUI
extends javax.swing.JPanel
Modifier and Type | Class and Description |
---|---|
protected class |
BasicBlockUI.InParamPanel |
protected class |
BasicBlockUI.OutParamPanel |
protected class |
BasicBlockUI.ParamPanel |
javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
protected java.awt.Color |
backgroundConnected |
protected java.awt.Color |
backgroundUnconnected |
protected Block |
block |
protected java.awt.Color |
borderConnected |
protected java.awt.Color |
borderSelected |
protected java.awt.Color |
borderUnconnected |
protected boolean |
connected
Is this block "connected" meaning is there a path from the starting block to this one?
|
protected javax.swing.JPanel |
header |
protected boolean |
mirrored
When mirrored, the inputs are positioned on the right, and the outputs on the left, which is opposite of standard
|
protected java.awt.Color |
pinHover |
protected boolean |
selected
Is this block "selected" meaning it is highlighted for moving around and editing
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
BasicBlockUI(Block block) |
Modifier and Type | Method and Description |
---|---|
protected BasicBlockUI.ParamPanel |
createEmpty(AnchorType ioType) |
java.util.List<AnchorPoint> |
getAnchorPoints()
Returns the list of anchor points created by this block UI.
|
protected abstract java.util.Collection<AnchorDescriptor> |
getAnchors()
The inputs/outputs for the block
|
java.awt.Color |
getBackgroundConnected() |
protected java.awt.Shape |
getBackgroundShape(int w,
int h) |
java.awt.Color |
getBackgroundUnconnected() |
Block |
getBlock() |
java.awt.Color |
getBorderConnected() |
java.awt.Color |
getBorderSelected() |
java.awt.Color |
getBorderUnconnected() |
protected abstract javax.swing.Icon |
getIcon()
The small icon for the header of the block
|
java.awt.Color |
getPinHover() |
protected abstract java.lang.String |
getTitle()
The title for the header of the block
|
protected void |
initDetailsPanel(javax.swing.JPanel details)
Override this to add contents to the details panel
|
protected void |
initEmptyDetailsPanel(javax.swing.JPanel bottom) |
protected void |
initHeader(javax.swing.JPanel header)
Initialize the header panel.
|
void |
install(BlockComponent parent)
Install this block ui onto the BlockComponent.
|
boolean |
isConnected() |
protected abstract boolean |
isDetailsPanelRequired()
Returning true from this will turn on a details panel beneath the inputs and outputs.
|
boolean |
isMirrored() |
boolean |
isSelected() |
protected void |
paintComponent(java.awt.Graphics graphics) |
void |
rebuildUI() |
void |
setBackgroundConnected(java.awt.Color backgroundConnected) |
void |
setBackgroundUnconnected(java.awt.Color backgroundUnconnected) |
void |
setBorderConnected(java.awt.Color borderConnected) |
void |
setBorderSelected(java.awt.Color borderSelected) |
void |
setBorderUnconnected(java.awt.Color borderUnconnected) |
void |
setBounds(int x,
int y,
int width,
int height) |
void |
setConnected(boolean connected) |
void |
setMirrored(boolean mirrored) |
void |
setPinHover(java.awt.Color pinHover) |
void |
setSelected(boolean selected) |
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
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, 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
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
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, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
protected java.awt.Color backgroundUnconnected
protected java.awt.Color backgroundConnected
protected java.awt.Color borderConnected
protected java.awt.Color borderSelected
protected java.awt.Color borderUnconnected
protected java.awt.Color pinHover
protected javax.swing.JPanel header
protected boolean connected
protected boolean selected
protected boolean mirrored
protected final Block block
public BasicBlockUI(Block block)
public Block getBlock()
public void install(BlockComponent parent)
Block.initUI(BlockComponent)
public void setBounds(int x, int y, int width, int height)
setBounds
in class java.awt.Component
protected abstract java.util.Collection<AnchorDescriptor> getAnchors()
protected abstract java.lang.String getTitle()
protected abstract javax.swing.Icon getIcon()
protected abstract boolean isDetailsPanelRequired()
initDetailsPanel(JPanel)
protected void initDetailsPanel(javax.swing.JPanel details)
public java.util.List<AnchorPoint> getAnchorPoints()
Returns the list of anchor points created by this block UI. Intended to be used by Block
implementations
as the return value for Block.getAnchorPoints()
WARNING These anchor points will be re-created when the UI changes (for example, due to a block structure
change event). This means that you cannot hang onto them, e.g. in a Connection
object. Please use
LookupConnection
to avoid this problem.
public void rebuildUI()
protected java.awt.Shape getBackgroundShape(int w, int h)
protected void paintComponent(java.awt.Graphics graphics)
paintComponent
in class javax.swing.JComponent
public boolean isMirrored()
public void setMirrored(boolean mirrored)
public void setConnected(boolean connected)
public boolean isConnected()
public void setSelected(boolean selected)
public boolean isSelected()
protected void initHeader(javax.swing.JPanel header)
public java.awt.Color getBackgroundUnconnected()
public void setBackgroundUnconnected(java.awt.Color backgroundUnconnected)
public java.awt.Color getBackgroundConnected()
public void setBackgroundConnected(java.awt.Color backgroundConnected)
public java.awt.Color getBorderConnected()
public void setBorderConnected(java.awt.Color borderConnected)
public java.awt.Color getBorderSelected()
public void setBorderSelected(java.awt.Color borderSelected)
public java.awt.Color getBorderUnconnected()
public void setBorderUnconnected(java.awt.Color borderUnconnected)
public java.awt.Color getPinHover()
public void setPinHover(java.awt.Color pinHover)
protected void initEmptyDetailsPanel(javax.swing.JPanel bottom)
protected BasicBlockUI.ParamPanel createEmpty(AnchorType ioType)