Class FlatArrowButton

    • Nested Class Summary

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

        javax.swing.JButton.AccessibleJButton
      • Nested classes/interfaces inherited from class javax.swing.AbstractButton

        javax.swing.AbstractButton.AccessibleAbstractButton, javax.swing.AbstractButton.ButtonChangeListener
      • 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 float arrowThickness  
      private int arrowWidth  
      protected boolean chevron  
      static int DEFAULT_ARROW_WIDTH  
      protected java.awt.Color disabledForeground  
      protected java.awt.Color foreground  
      private boolean hover  
      protected java.awt.Color hoverBackground  
      protected java.awt.Color hoverForeground  
      private boolean pressed  
      protected java.awt.Color pressedBackground  
      protected java.awt.Color pressedForeground  
      private boolean roundBorderAutoXOffset  
      private float xOffset  
      private float yOffset  
      • Fields inherited from class javax.swing.plaf.basic.BasicArrowButton

        direction
      • Fields inherited from class javax.swing.AbstractButton

        actionListener, BORDER_PAINTED_CHANGED_PROPERTY, changeEvent, changeListener, CONTENT_AREA_FILLED_CHANGED_PROPERTY, DISABLED_ICON_CHANGED_PROPERTY, DISABLED_SELECTED_ICON_CHANGED_PROPERTY, FOCUS_PAINTED_CHANGED_PROPERTY, HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY, HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY, ICON_CHANGED_PROPERTY, itemListener, MARGIN_CHANGED_PROPERTY, MNEMONIC_CHANGED_PROPERTY, model, MODEL_CHANGED_PROPERTY, PRESSED_ICON_CHANGED_PROPERTY, ROLLOVER_ENABLED_CHANGED_PROPERTY, ROLLOVER_ICON_CHANGED_PROPERTY, ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY, SELECTED_ICON_CHANGED_PROPERTY, TEXT_CHANGED_PROPERTY, VERTICAL_ALIGNMENT_CHANGED_PROPERTY, VERTICAL_TEXT_POSITION_CHANGED_PROPERTY
      • 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
      FlatArrowButton​(int direction, java.lang.String type, java.awt.Color foreground, java.awt.Color disabledForeground, java.awt.Color hoverForeground, java.awt.Color hoverBackground, java.awt.Color pressedForeground, java.awt.Color pressedBackground)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.awt.Color deriveBackground​(java.awt.Color background)  
      protected java.awt.Color deriveForeground​(java.awt.Color foreground)  
      protected java.awt.Color getArrowColor()
      Returns the color used to paint the arrow.
      float getArrowThickness()  
      int getArrowWidth()  
      java.awt.Dimension getMinimumSize()  
      java.awt.Dimension getPreferredSize()  
      float getXOffset()  
      float getYOffset()  
      protected boolean isHover()  
      protected boolean isPressed()  
      boolean isRoundBorderAutoXOffset()  
      void paint​(java.awt.Graphics g)  
      protected void paintArrow​(java.awt.Graphics2D g)  
      protected void paintBackground​(java.awt.Graphics2D g)  
      void setArrowThickness​(float arrowThickness)  
      void setArrowWidth​(int arrowWidth)  
      void setRoundBorderAutoXOffset​(boolean roundBorderAutoXOffset)  
      void setXOffset​(float xOffset)  
      void setYOffset​(float yOffset)  
      void updateStyle​(java.lang.String type, java.awt.Color foreground, java.awt.Color disabledForeground, java.awt.Color hoverForeground, java.awt.Color hoverBackground, java.awt.Color pressedForeground, java.awt.Color pressedBackground)  
      • Methods inherited from class javax.swing.plaf.basic.BasicArrowButton

        getDirection, getMaximumSize, isFocusTraversable, paintTriangle, setDirection
      • Methods inherited from class javax.swing.JButton

        getAccessibleContext, getUIClassID, isDefaultButton, isDefaultCapable, paramString, removeNotify, setDefaultCapable, updateUI
      • Methods inherited from class javax.swing.AbstractButton

        actionPropertyChanged, addActionListener, addChangeListener, addImpl, addItemListener, checkHorizontalKey, checkVerticalKey, configurePropertiesFromAction, createActionListener, createActionPropertyChangeListener, createChangeListener, createItemListener, doClick, doClick, fireActionPerformed, fireItemStateChanged, fireStateChanged, getAction, getActionCommand, getActionListeners, getChangeListeners, getDisabledIcon, getDisabledSelectedIcon, getDisplayedMnemonicIndex, getHideActionText, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getItemListeners, getLabel, getMargin, getMnemonic, getModel, getMultiClickThreshhold, getPressedIcon, getRolloverIcon, getRolloverSelectedIcon, getSelectedIcon, getSelectedObjects, getText, getUI, getVerticalAlignment, getVerticalTextPosition, imageUpdate, init, isBorderPainted, isContentAreaFilled, isFocusPainted, isRolloverEnabled, isSelected, paintBorder, removeActionListener, removeChangeListener, removeItemListener, setAction, setActionCommand, setBorderPainted, setContentAreaFilled, setDisabledIcon, setDisabledSelectedIcon, setDisplayedMnemonicIndex, setEnabled, setFocusPainted, setHideActionText, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabel, setLayout, setMargin, setMnemonic, setMnemonic, setModel, setMultiClickThreshhold, setPressedIcon, setRolloverEnabled, setRolloverIcon, setRolloverSelectedIcon, setSelected, setSelectedIcon, setText, setUI, setVerticalAlignment, setVerticalTextPosition
      • 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, 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, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, 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, 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, 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, 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

      • chevron

        protected boolean chevron
      • foreground

        protected java.awt.Color foreground
      • disabledForeground

        protected java.awt.Color disabledForeground
      • hoverForeground

        protected java.awt.Color hoverForeground
      • hoverBackground

        protected java.awt.Color hoverBackground
      • pressedForeground

        protected java.awt.Color pressedForeground
      • pressedBackground

        protected java.awt.Color pressedBackground
      • arrowWidth

        private int arrowWidth
      • arrowThickness

        private float arrowThickness
      • xOffset

        private float xOffset
      • yOffset

        private float yOffset
      • roundBorderAutoXOffset

        private boolean roundBorderAutoXOffset
      • hover

        private boolean hover
      • pressed

        private boolean pressed
    • Constructor Detail

      • FlatArrowButton

        public FlatArrowButton​(int direction,
                               java.lang.String type,
                               java.awt.Color foreground,
                               java.awt.Color disabledForeground,
                               java.awt.Color hoverForeground,
                               java.awt.Color hoverBackground,
                               java.awt.Color pressedForeground,
                               java.awt.Color pressedBackground)
    • Method Detail

      • updateStyle

        public void updateStyle​(java.lang.String type,
                                java.awt.Color foreground,
                                java.awt.Color disabledForeground,
                                java.awt.Color hoverForeground,
                                java.awt.Color hoverBackground,
                                java.awt.Color pressedForeground,
                                java.awt.Color pressedBackground)
        Since:
        2
      • getArrowWidth

        public int getArrowWidth()
      • setArrowWidth

        public void setArrowWidth​(int arrowWidth)
      • getArrowThickness

        public float getArrowThickness()
        Since:
        3
      • setArrowThickness

        public void setArrowThickness​(float arrowThickness)
        Since:
        3
      • isHover

        protected boolean isHover()
      • isPressed

        protected boolean isPressed()
      • getXOffset

        public float getXOffset()
      • setXOffset

        public void setXOffset​(float xOffset)
      • getYOffset

        public float getYOffset()
      • setYOffset

        public void setYOffset​(float yOffset)
      • isRoundBorderAutoXOffset

        public boolean isRoundBorderAutoXOffset()
        Since:
        3
      • setRoundBorderAutoXOffset

        public void setRoundBorderAutoXOffset​(boolean roundBorderAutoXOffset)
        Since:
        3
      • deriveBackground

        protected java.awt.Color deriveBackground​(java.awt.Color background)
      • deriveForeground

        protected java.awt.Color deriveForeground​(java.awt.Color foreground)
      • getArrowColor

        protected java.awt.Color getArrowColor()
        Returns the color used to paint the arrow.
        Since:
        1.2
      • getPreferredSize

        public java.awt.Dimension getPreferredSize()
        Overrides:
        getPreferredSize in class javax.swing.plaf.basic.BasicArrowButton
      • getMinimumSize

        public java.awt.Dimension getMinimumSize()
        Overrides:
        getMinimumSize in class javax.swing.plaf.basic.BasicArrowButton
      • paint

        public void paint​(java.awt.Graphics g)
        Overrides:
        paint in class javax.swing.plaf.basic.BasicArrowButton
      • paintBackground

        protected void paintBackground​(java.awt.Graphics2D g)
      • paintArrow

        protected void paintArrow​(java.awt.Graphics2D g)