Class ReflectedImageLabel

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.SwingConstants, RichComponent

    public class ReflectedImageLabel
    extends javax.swing.JLabel
    implements RichComponent
    A RichComponent which takes the supplied image, adds on 50% to the height of the image and draws a graduated alpha-blended reflection below the top aligned original image. The text (set by setRichText()) is drawn dynamically over the reflection, below the original image.
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JLabel

        javax.swing.JLabel.AccessibleJLabel
      • 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

      Fields 
      Modifier and Type Field Description
      private java.awt.AlphaComposite alphaComposite
      The desired alpha composite
      private java.awt.image.BufferedImage bufferedImage
      The image with reflection
      private static java.awt.Font reference
      A font used for reference purposes when evaluating the size of the rendered component
      private java.lang.String text
      The richtext associated with this component
      • Fields inherited from class javax.swing.JLabel

        labelFor
      • 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
      • Fields inherited from interface javax.swing.SwingConstants

        BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
    • Constructor Summary

      Constructors 
      Constructor Description
      ReflectedImageLabel​(java.awt.Image image, int width, int height)
      Deprecated.
      This function will be removed, use setNeutralWidth() on JCarousel instead.
      ReflectedImageLabel​(java.awt.Image image, java.lang.String text)
      Creates a new instance of a reflected label using the supplied image and text
      ReflectedImageLabel​(java.awt.Image image, java.lang.String text, int width, int height)
      Deprecated.
      This function will be removed, use setNeutralWidth() on JCarousel instead.
      ReflectedImageLabel​(java.lang.String imageURL)
      See constructor for image label, this version of the constructor takes an image URL instead of the image object (the URL can be in string format).
      ReflectedImageLabel​(java.lang.String imageURL, int width, int height)
      Deprecated.
      This function will be removed, use setNeutralWidth() on JCarousel instead.
      ReflectedImageLabel​(java.lang.String imageURL, java.lang.String text, int width, int height)
      Deprecated.
      This function will be removed, use setNeutralWidth() on JCarousel instead.
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      java.awt.Dimension getPreferredSize()
      Overrides the default getPreferedSize() which has been controlled by the created image and adds 50% onto the height to allow for the reflection.
      java.lang.String getRichText()
      See interface definition
      void paintComponent​(java.awt.Graphics graphics)
      Paints the component
      void prePaintImage()
      See interface definition
      void setAlpha​(float alphaLevel)
      Sets the transparency of the component
      void setImage​(java.awt.Image image)
      Deprecated.
      Please use setRichImage() instead from the RichComponent interface
      void setLabel​(java.lang.String text)
      Deprecated.
      Use setRichText() instead
      void setRichImage​(java.awt.Image image)
      See interface definition
      void setRichImage​(java.io.File image)
      See interface definition
      void setRichImage​(java.net.URL image)
      Assigns an image to the component, the width and height taken from the supplied image
      void setRichText​(java.lang.String text)
      See interface definition
      protected void setupImage​(java.awt.Image image)
      Adds a reflection to the supplied image
      • Methods inherited from class javax.swing.JLabel

        checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setDisplayedMnemonicIndex, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition, 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, 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
      • 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, 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
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • text

        private java.lang.String text
        The richtext associated with this component
      • bufferedImage

        private java.awt.image.BufferedImage bufferedImage
        The image with reflection
      • reference

        private static final java.awt.Font reference
        A font used for reference purposes when evaluating the size of the rendered component
      • alphaComposite

        private java.awt.AlphaComposite alphaComposite
        The desired alpha composite
    • Constructor Detail

      • ReflectedImageLabel

        @Deprecated
        public ReflectedImageLabel​(java.awt.Image image,
                                   int width,
                                   int height)
        Deprecated.
        This function will be removed, use setNeutralWidth() on JCarousel instead.
        Creates a new instance from the supplied image object
        Parameters:
        image - The Image object
        width - The prefered width of the image when rendered by a rich container
        height - The prefered heightof the image when rendered by a rich container
      • ReflectedImageLabel

        @Deprecated
        public ReflectedImageLabel​(java.awt.Image image,
                                   java.lang.String text,
                                   int width,
                                   int height)
        Deprecated.
        This function will be removed, use setNeutralWidth() on JCarousel instead.
        Creates a new instance of a reflected label for the supplied image, also setting the text to be associated with the image.
        Parameters:
        image - The image
        text - The text label
        width - The prefered width of the image when rendered by a rich container
        height - The prefered height of the image when rendered by a rich container
      • ReflectedImageLabel

        public ReflectedImageLabel​(java.awt.Image image,
                                   java.lang.String text)
        Creates a new instance of a reflected label using the supplied image and text
        Parameters:
        image - The image to be used
        text - The text to be displayed
      • ReflectedImageLabel

        public ReflectedImageLabel​(java.lang.String imageURL)
        See constructor for image label, this version of the constructor takes an image URL instead of the image object (the URL can be in string format).
        Parameters:
        imageURL - A URL (in string form) of the image.
      • ReflectedImageLabel

        @Deprecated
        public ReflectedImageLabel​(java.lang.String imageURL,
                                   int width,
                                   int height)
        Deprecated.
        This function will be removed, use setNeutralWidth() on JCarousel instead.
        Creates a new instance, setting the width and the height that may be used by the RichContainer
        Parameters:
        imageURL - The URL of the image (String form)
        width - The prefered width of the image when rendered by a rich container
        height - The prefered height of the image when rendered by a rich container
      • ReflectedImageLabel

        @Deprecated
        public ReflectedImageLabel​(java.lang.String imageURL,
                                   java.lang.String text,
                                   int width,
                                   int height)
        Deprecated.
        This function will be removed, use setNeutralWidth() on JCarousel instead.
        Creates a new instance, using the image specified in the URL string, the prefered dimensions and sets the Rich text as well
        Parameters:
        imageURL - The URL of the image in text form
        text - The RichText to be displayed
        width - The prefered width of the image when rendered by a rich container
        height - The prefered height of the image when rendered by a rich container
    • Method Detail

      • setLabel

        @Deprecated
        public void setLabel​(java.lang.String text)
        Deprecated.
        Use setRichText() instead
        Depricated.
        Parameters:
        text - The rich text
      • setupImage

        protected void setupImage​(java.awt.Image image)
        Adds a reflection to the supplied image
        Parameters:
        image - The image object to use to pre-render the reflection
      • setAlpha

        public void setAlpha​(float alphaLevel)
        Sets the transparency of the component
        Specified by:
        setAlpha in interface RichComponent
        Parameters:
        alphaLevel - The alpha level of the object
        See Also:
        RichComponent
      • setImage

        @Deprecated
        public void setImage​(java.awt.Image image)
        Deprecated.
        Please use setRichImage() instead from the RichComponent interface
        Deprecated
        Parameters:
        image - An image object to use (reflection will be added)
        See Also:
        RichComponent
      • getPreferredSize

        public java.awt.Dimension getPreferredSize()
        Overrides the default getPreferedSize() which has been controlled by the created image and adds 50% onto the height to allow for the reflection.
        Overrides:
        getPreferredSize in class javax.swing.JComponent
        Returns:
        The prefered dimensions of the component
      • paintComponent

        public void paintComponent​(java.awt.Graphics graphics)
        Paints the component
        Overrides:
        paintComponent in class javax.swing.JComponent
        Parameters:
        graphics - The graphics context
      • setRichImage

        public void setRichImage​(java.net.URL image)
        Assigns an image to the component, the width and height taken from the supplied image
        Specified by:
        setRichImage in interface RichComponent
        Parameters:
        image - The URL of the image
      • setRichImage

        public void setRichImage​(java.io.File image)
        See interface definition
        Specified by:
        setRichImage in interface RichComponent
        Parameters:
        image - See interface definition
        See Also:
        RichComponent
      • setRichImage

        public void setRichImage​(java.awt.Image image)
        See interface definition
        Specified by:
        setRichImage in interface RichComponent
        Parameters:
        image - See interface definition
        See Also:
        RichComponent
      • setRichText

        public void setRichText​(java.lang.String text)
        See interface definition
        Specified by:
        setRichText in interface RichComponent
        Parameters:
        text - See interface definition
        See Also:
        RichComponent
      • getRichText

        public java.lang.String getRichText()
        See interface definition
        Specified by:
        getRichText in interface RichComponent
        Returns:
        See interface definition
        See Also:
        RichComponent