Package com.jidesoft.swing
Class Contour
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
com.jidesoft.swing.Contour
- All Implemented Interfaces:
IContour
,ImageObserver
,MenuContainer
,Serializable
A
Contour
is a lightweight component which only paints the outline of component when dragged. It is also
used as a placeholder for some information during dragging.
Notes: this class has to be public so that JIDE can use it in different packages, not meant to release to end user as
a public API. JIDE will not guarantee the class will remain as it is.- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
Fields inherited from class javax.swing.JComponent
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
accessibleContext, 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
cleanup()
Gets the attached component of this contour.int
Gets the side of the attached component which the contour is attached to.int
Gets saved dragged component before the contour is hidden.int
Gets saved mouse modifier before the contour is hidden.int
getSaveX()
Gets saved X position of contour before it's hidden.int
getSaveY()
Gets saved Y position of contour before it's hidden.int
Gets tab height.int
Gets the side of the tab.boolean
Checks if docking is allowed.boolean
boolean
Returns whether this component should use a buffer to paint.boolean
Returns true if the contour is in floating mode.boolean
isSingle()
When you dragged a component, several other components could be dragged.boolean
Returns true if the contour is in tab-dock mode.boolean
Determines whether this component should be visible when its parent is visible.void
Paint a rectangle or tab-shape usingDOTTED_STROKE
with width of
WIDTH
.
void
setAllowDocking
(boolean allowDocking) Sets the value of docking.void
setAttachedComponent
(Component attachedComponent) Sets the attached components.void
setAttachedSide
(int attachedSide) Sets the side of the attached component which the contour is attached to.void
setBounds
(int x, int y, int width, int height) Overwrite setBounds so that width and height are always even.void
Overwrite setBounds so that width and height are always even.void
setChangeCursor
(boolean changeCursor) void
setDraggingInformation
(JComponent comp, int saveX, int saveY, int saveMouseModifier) Stores information before the contour is hidden.void
setFloating
(boolean floating) Sets the floating mode.void
setGlassPane
(Component glassPane) void
setOutlineMode
(int outlineMode) void
setRelativeContainer
(Container relativeContainer) void
setSingle
(boolean single) Sets the value of single.void
setTabDocking
(boolean tabDocking) Sets the tab-docking mode.void
setTabHeight
(int tabHeight) Sets the tab height.void
setTabSide
(int tabSide) Sets the side of the tab.void
setVisible
(boolean aFlag) Makes the component visible or invisible.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, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, unregisterKeyboardAction, update, updateUI
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, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, 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, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, 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
Methods inherited from interface com.jidesoft.swing.IContour
getBounds, isLightweight
-
Field Details
-
PARTIAL_OUTLINE_MODE
public static final int PARTIAL_OUTLINE_MODE- See Also:
-
MIX_OUTLINE_MODE
public static final int MIX_OUTLINE_MODE- See Also:
-
FULL_OUTLINE_MODE
public static final int FULL_OUTLINE_MODE- See Also:
-
-
Constructor Details
-
Contour
public Contour()Default Constructor. -
Contour
public Contour(int tabHeight) Constructor with tab height.- Parameters:
tabHeight
- the tab height
-
-
Method Details
-
isDoubleBuffered
public boolean isDoubleBuffered()Returns whether this component should use a buffer to paint.- Overrides:
isDoubleBuffered
in classJComponent
- Returns:
- true if this component is double buffered, otherwise false
-
paint
Paint a rectangle or tab-shape usingDOTTED_STROKE
with width of
WIDTH
.
- Overrides:
paint
in classJComponent
- Parameters:
g
-
-
setBounds
Overwrite setBounds so that width and height are always even. -
setBounds
public void setBounds(int x, int y, int width, int height) Overwrite setBounds so that width and height are always even. It looks ugly for either dimension is odd when painting withDOTTED_STROKE
-
getTabHeight
public int getTabHeight()Gets tab height.- Specified by:
getTabHeight
in interfaceIContour
- Returns:
- tab height
-
setTabHeight
public void setTabHeight(int tabHeight) Sets the tab height.- Specified by:
setTabHeight
in interfaceIContour
- Parameters:
tabHeight
-
-
isTabDocking
public boolean isTabDocking()Returns true if the contour is in tab-dock mode.- Specified by:
isTabDocking
in interfaceIContour
- Returns:
- true if tab-docking; false otherwise
-
setTabDocking
public void setTabDocking(boolean tabDocking) Sets the tab-docking mode.- Specified by:
setTabDocking
in interfaceIContour
- Parameters:
tabDocking
- new mode
-
getTabSide
public int getTabSide()Gets the side of the tab.- Specified by:
getTabSide
in interfaceIContour
- Returns:
- the side of the tab
-
setTabSide
public void setTabSide(int tabSide) Sets the side of the tab.- Specified by:
setTabSide
in interfaceIContour
- Parameters:
tabSide
-
-
isFloating
public boolean isFloating()Returns true if the contour is in floating mode.- Specified by:
isFloating
in interfaceIContour
- Returns:
- true if floating; false otherwise
-
setFloating
public void setFloating(boolean floating) Sets the floating mode.- Specified by:
setFloating
in interfaceIContour
- Parameters:
floating
- new mode
-
getAttachedComponent
Gets the attached component of this contour.- Specified by:
getAttachedComponent
in interfaceIContour
- Returns:
- the attached component
-
setAttachedComponent
Sets the attached components.- Specified by:
setAttachedComponent
in interfaceIContour
- Parameters:
attachedComponent
- attached component to be set
-
getAttachedSide
public int getAttachedSide()Gets the side of the attached component which the contour is attached to.- Specified by:
getAttachedSide
in interfaceIContour
- Returns:
- side the attached side
-
setAttachedSide
public void setAttachedSide(int attachedSide) Sets the side of the attached component which the contour is attached to.- Specified by:
setAttachedSide
in interfaceIContour
- Parameters:
attachedSide
- the new attached side to be set
-
isSingle
public boolean isSingle()When you dragged a component, several other components could be dragged. For example, if user drags on title bar of FrameContainer, all components in the FrameContainer are considered as dragged. If user drags on tab, only selected one is dragged. -
setSingle
public void setSingle(boolean single) Sets the value of single. -
isAllowDocking
public boolean isAllowDocking()Checks if docking is allowed.- Specified by:
isAllowDocking
in interfaceIContour
- Returns:
true
if docking is allowed;false
otherwise.
-
setAllowDocking
public void setAllowDocking(boolean allowDocking) Sets the value of docking.- Specified by:
setAllowDocking
in interfaceIContour
- Parameters:
allowDocking
-true
if docking is allowed;false
otherwise.
-
getRelativeContainer
- Specified by:
getRelativeContainer
in interfaceIContour
-
setRelativeContainer
- Specified by:
setRelativeContainer
in interfaceIContour
-
getSaveX
public int getSaveX()Gets saved X position of contour before it's hidden. -
getSaveY
public int getSaveY()Gets saved Y position of contour before it's hidden. -
getSaveMouseModifier
public int getSaveMouseModifier()Gets saved mouse modifier before the contour is hidden.- Specified by:
getSaveMouseModifier
in interfaceIContour
- Returns:
- saved mouse modifier
-
getSaveDraggedComponent
Gets saved dragged component before the contour is hidden.- Specified by:
getSaveDraggedComponent
in interfaceIContour
- Returns:
- saved dragged component
-
setDraggingInformation
Stores information before the contour is hidden. Those information will be used to restore when the contour is set visible again.- Specified by:
setDraggingInformation
in interfaceIContour
- Parameters:
comp
- the dragged componentsaveX
- X position of the contoursaveY
- Y position of the contoursaveMouseModifier
- mouse modifier in the MouseEvent
-
cleanup
public void cleanup() -
setVisible
public void setVisible(boolean aFlag) Makes the component visible or invisible. OverridesComponent.setVisible
.- Specified by:
setVisible
in interfaceIContour
- Overrides:
setVisible
in classJComponent
- Parameters:
aFlag
- true to make the component visible; false to make it invisible
-
isVisible
public boolean isVisible()Determines whether this component should be visible when its parent is visible. Components are initially visible, with the exception of top level components such asFrame
objects. -
getOutlineMode
public int getOutlineMode() -
setOutlineMode
public void setOutlineMode(int outlineMode) -
getGlassPane
- Specified by:
getGlassPane
in interfaceIContour
-
setGlassPane
- Specified by:
setGlassPane
in interfaceIContour
-
isChangeCursor
public boolean isChangeCursor() -
setChangeCursor
public void setChangeCursor(boolean changeCursor) - Specified by:
setChangeCursor
in interfaceIContour
-