Package org.jdesktop.swingx
Class JXGradientChooser
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- org.jdesktop.swingx.JXPanel
-
- org.jdesktop.swingx.JXGradientChooser
-
- All Implemented Interfaces:
java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,javax.accessibility.Accessible,javax.swing.Scrollable,AlphaPaintable,BackgroundPaintable
@JavaBean public class JXGradientChooser extends JXPanel
A specialized JXPanel that allows the user to construct and choose a Gradient. The returned values will be one of: LinearGradientPaint or RadialGradientPaint.
Dependency: Because this class relies on LinearGradientPaint and RadialGradientPaint, it requires the optional MultipleGradientPaint.jar
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classJXGradientChooser.AddThumbActionprivate classJXGradientChooser.ChangeAlphaListenerprivate classJXGradientChooser.ChangeLocationListenerprivate classJXGradientChooser.DeleteThumbActionprivate static classJXGradientChooser.GradientStyleprivate classJXGradientChooser.RepaintOnEventListenerprivate classJXGradientChooser.StopListener-
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
-
-
Field Summary
Fields Modifier and Type Field Description private javax.swing.JButtonaddThumbButtonprivate javax.swing.JSlideralphaSliderprivate javax.swing.JSpinneralphaSpinnerprivate JXColorSelectionButtonchangeColorButtonprivate javax.swing.JTextFieldcolorFieldprivate javax.swing.JSpinnercolorLocationSpinnerprivate javax.swing.JButtondeleteThumbButtonprivate java.awt.MultipleGradientPaintgradientprivate GradientPreviewPanelgradientPreviewprivate java.util.logging.Loggerlogprivate javax.swing.JRadioButtonnoCycleRadioprivate javax.swing.JPanelpreviewPanelThis method is called from within the constructor to initialize the form.private javax.swing.JRadioButtonreflectedRadioprivate javax.swing.JRadioButtonrepeatedRadioprivate javax.swing.JCheckBoxreversedCheckprivate JXMultiThumbSlider<java.awt.Color>sliderThe multi-thumb slider to use for the gradient stopsprivate javax.swing.JComboBoxstyleComboprivate booleanthumbsMovingprivate javax.swing.JPaneltopPanelThis method is called from within the constructor to initialize the form.-
Fields inherited from class org.jdesktop.swingx.JXPanel
fakeTransparent
-
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
-
-
Constructor Summary
Constructors Constructor Description JXGradientChooser()Creates new JXGradientChooser
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.MultipleGradientPaintgetGradient()Returns the MultipleGradientPaint currently choosen by the user.private voidinitComponents()private voidinitComponents2()private voidrecalcGradientFromStops()private voidselectColorForThumb()voidsetGradient(java.awt.MultipleGradientPaint mgrad)Sets the gradient within this panel to the new gradient.static java.awt.MultipleGradientPaintshowDialog(java.awt.Component comp, java.lang.String title, java.awt.MultipleGradientPaint mgrad)This static utility method cannot be called from the ETD, or your application will lock up.static java.lang.StringtoString(java.awt.MultipleGradientPaint paint)Creates a string representation of aMultipleGradientPaint.private voidupdateDeleteButtons()private voidupdateFromStop(int thumb, float position, java.awt.Color color)private voidupdateFromStop(Thumb<java.awt.Color> thumb)private voidupdateGradientProperty()-
Methods inherited from class org.jdesktop.swingx.JXPanel
getAlpha, getBackgroundPainter, getEffectiveAlpha, getPainterChangeListener, getPreferredScrollableViewportSize, getScrollableBlockIncrement, getScrollableHeightHint, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getScrollableWidthHint, installRepaintManager, isAlpha, isInheritAlpha, isOpaque, isOpaquePatch, isPaintBorderInsets, isPaintingBackground, isPaintingOrigin, isPatch, isTransparentBackground, paint, paintComponent, paintComponentPatch, setAlpha, setBackgroundPainter, setInheritAlpha, setOpaque, setOpaquePatch, setPaintBorderInsets, setScrollableHeightHint, setScrollableTracksViewportHeight, setScrollableTracksViewportWidth, setScrollableWidthHint, uninstallRepaintManager
-
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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, 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, 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, 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, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
slider
private JXMultiThumbSlider<java.awt.Color> slider
The multi-thumb slider to use for the gradient stops
-
deleteThumbButton
private javax.swing.JButton deleteThumbButton
-
addThumbButton
private javax.swing.JButton addThumbButton
-
colorField
private javax.swing.JTextField colorField
-
changeColorButton
private JXColorSelectionButton changeColorButton
-
colorLocationSpinner
private javax.swing.JSpinner colorLocationSpinner
-
alphaSpinner
private javax.swing.JSpinner alphaSpinner
-
alphaSlider
private javax.swing.JSlider alphaSlider
-
styleCombo
private javax.swing.JComboBox styleCombo
-
gradientPreview
private GradientPreviewPanel gradientPreview
-
noCycleRadio
private javax.swing.JRadioButton noCycleRadio
-
reflectedRadio
private javax.swing.JRadioButton reflectedRadio
-
repeatedRadio
private javax.swing.JRadioButton repeatedRadio
-
reversedCheck
private javax.swing.JCheckBox reversedCheck
-
gradient
private java.awt.MultipleGradientPaint gradient
-
thumbsMoving
private boolean thumbsMoving
-
log
private java.util.logging.Logger log
-
topPanel
private javax.swing.JPanel topPanel
This method is called from within the constructor to initialize the form.
-
previewPanel
private javax.swing.JPanel previewPanel
This method is called from within the constructor to initialize the form.
-
-
Method Detail
-
getGradient
public java.awt.MultipleGradientPaint getGradient()
Returns the MultipleGradientPaint currently choosen by the user.- Returns:
- the currently selected gradient
-
setGradient
public void setGradient(java.awt.MultipleGradientPaint mgrad)
Sets the gradient within this panel to the new gradient. This will delete the old gradient all of it's settings, resetting the slider, gradient type selection, and other gradient configuration options to match the new gradient.- Parameters:
mgrad- The desired gradient.
-
recalcGradientFromStops
private void recalcGradientFromStops()
-
updateFromStop
private void updateFromStop(Thumb<java.awt.Color> thumb)
-
updateFromStop
private void updateFromStop(int thumb, float position, java.awt.Color color)
-
updateDeleteButtons
private void updateDeleteButtons()
-
updateGradientProperty
private void updateGradientProperty()
-
initComponents
private void initComponents()
-
initComponents2
private void initComponents2()
-
selectColorForThumb
private void selectColorForThumb()
-
showDialog
public static java.awt.MultipleGradientPaint showDialog(java.awt.Component comp, java.lang.String title, java.awt.MultipleGradientPaint mgrad)This static utility method cannot be called from the ETD, or your application will lock up. Call it from a separate thread or create a new Thread with a Runnable.- Parameters:
comp- The component to use when finding a top level window or frame for the dialog.title- The desired title of the gradient chooser dialog.mgrad- The gradient to initialize the chooser too.- Returns:
- The gradient the user chose.
-
toString
public static java.lang.String toString(java.awt.MultipleGradientPaint paint)
Creates a string representation of aMultipleGradientPaint. This string is used for debugging purposes. Its contents cannot be guaranteed between releases.- Parameters:
paint- thepaintto create a string for- Returns:
- a string representing the supplied
paint
-
-