|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.zilonis.tool.ext.mailman.ui.image.DropShadowPanel
public class DropShadowPanel
DropShadowPanel is a generic lightweight container casting
the shadow of its children. The shadow itself is generated by a
org.jdesktop.swingx.util.ShadowFactory you can provide or modify.
Besides the properties provided by the ShadowFactory, the
drop shadow panel gives you control over the angle and the distance of the
shadow. Any change of these properties, be the properties of the
ShadowFactory or the angle or the distance, will triger an update
of the panel to repaint it.
The default shadow factory provided by this panel is suited for good
looking results with regular Swing components. You can also combine this panel
with a org.jdesktop.swingx.StackLayout and a
org.jdesktop.swingx.CheckboardPanel to create interesting effects.
IMPORTANT NOTICE: this component has not yet been fully tested.
| Nested Class Summary |
|---|
| 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 | |
|---|---|
java.awt.image.BufferedImage |
shadow
|
| 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 | |
|---|---|
DropShadowPanel()
Creates a new checkboard panel with a flow layout. |
|
DropShadowPanel(java.awt.LayoutManager layout)
Creates a new checkboard panel the specified layout. |
|
DropShadowPanel(ShadowFactory factory,
java.awt.LayoutManager layout)
Creates a new checkboard panel the specified layout and shadow factory. |
|
| Method Summary | |
|---|---|
void |
doLayout()
When this panel is asked to lay out its children components, the shadow is invalidated for redrawing. |
float |
getAngle()
Gets the angle, in degrees, of the shadow relatively to the panel's content. |
int |
getDistance()
Gets the distance, in pixels, of the shadow relatively to the panel's content. |
ShadowFactory |
getShadowFactory()
Gets the shadow factory used to generate the shadow. |
boolean |
isOpaque()
Due to the nature of this panel, it is assumed it is non opaque. |
void |
paint(java.awt.Graphics g)
When the drop shadow is invalidated (see doLayout()), the
content of this panel is drawn in an offscreen picture and the shadow
factory is asked to generate the shadow. |
void |
propertyChange(java.beans.PropertyChangeEvent evt)
Whenever a property of the shadow factory is changed, the shadow is invalidated and the panel is updated for repainting. |
void |
setAngle(float angle)
Sets the angle, in degrees, at which the drop shadow is drawn relatively to this panel's content. |
void |
setDistance(int distance)
Sets the distance, in pixels, at which the drop shadow is drawn relatively to this panel's content. |
void |
setShadowFactory(ShadowFactory factory)
Sets the shadow factory used by this panel to generate the shadows. |
| 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, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, 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, 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, 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, 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, transferFocusUpCycle |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public java.awt.image.BufferedImage shadow
| Constructor Detail |
|---|
public DropShadowPanel()
Creates a new checkboard panel with a flow layout. The drop shadow has the following default properties:
org.jdesktop.swingx.util.ShadowFactoryorg.jdesktop.swingx.util.ShadowFactoryorg.jdesktop.swingx.util.ShadowFactoryorg.jdesktop.swingx.util.ShadowFactory
public DropShadowPanel(java.awt.LayoutManager layout)
Creates a new checkboard panel the specified layout. The drop shadow has the following default properties:
org.jdesktop.swingx.util.ShadowFactoryorg.jdesktop.swingx.util.ShadowFactoryorg.jdesktop.swingx.util.ShadowFactoryorg.jdesktop.swingx.util.ShadowFactory
public DropShadowPanel(ShadowFactory factory,
java.awt.LayoutManager layout)
Creates a new checkboard panel the specified layout and shadow factory. The drop shadow has the following default properties:
| Method Detail |
|---|
public ShadowFactory getShadowFactory()
Gets the shadow factory used to generate the shadow.
public void setShadowFactory(ShadowFactory factory)
Sets the shadow factory used by this panel to generate the shadows.
If the specified factory is null, the default shadow factory is used
instead (see
org.jdesktop.swingx.util.ShadowFactory#ShadowFactory().
factory - the factory used to generate the shadows for this
panel's contentpublic float getAngle()
Gets the angle, in degrees, of the shadow relatively to the panel's content.
public void setAngle(float angle)
Sets the angle, in degrees, at which the drop shadow is drawn relatively to this panel's content.
The angle should be comprised between 0 and 360 but negative values and values greater than 360 are accepted.
angle - the angle of the shadow relatively to the panel's contentpublic int getDistance()
Gets the distance, in pixels, of the shadow relatively to the panel's content.
public void setDistance(int distance)
Sets the distance, in pixels, at which the drop shadow is drawn relatively to this panel's content.
The distance can be either positive or negative.
distance - the distance of the shadow relatively to the panel's contentpublic boolean isOpaque()
Due to the nature of this panel, it is assumed it is non opaque. This allows to handle the drop shadow drawing properly.
isOpaque in class javax.swing.JComponentpublic void doLayout()
When this panel is asked to lay out its children components, the shadow is invalidated for redrawing.
doLayout in class java.awt.Containerpublic void paint(java.awt.Graphics g)
When the drop shadow is invalidated (see doLayout()), the
content of this panel is drawn in an offscreen picture and the shadow
factory is asked to generate the shadow. Otherwise, the shadow is drawn,
then the panel is painted as usual.
paint in class javax.swing.JComponentg - the Graphics context in which to paintpublic void propertyChange(java.beans.PropertyChangeEvent evt)
Whenever a property of the shadow factory is changed, the shadow is invalidated and the panel is updated for repainting.
propertyChange in interface java.beans.PropertyChangeListenerevt - the property change event generating the update
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||