Class GUITextButton

  • All Implemented Interfaces:
    GUISelectable, GUIElement, KeyPressedHandler, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

    public class GUITextButton
    extends AbstractButton
    implements GUISelectable
    A GUIElement that implements a button. The button shows a background image and a text. The background image consists of three parts: left, middle, and right. Left and right are fixed size image, the middle part is clipped or repeated to the actual with of the button. underlying images.
    See Also:
    Serialized Form
    • Nested Class Summary

      • 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 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 
      Constructor Description
      GUITextButton​(@NotNull TooltipManager tooltipManager, @NotNull GUIElementListener elementListener, @NotNull java.lang.String name, @NotNull ButtonImages up, @NotNull ButtonImages down, @NotNull java.lang.String text, @NotNull java.awt.Font font, @NotNull java.awt.Color color, @NotNull java.awt.Color colorSelected, @NotNull java.awt.Color colorDisabled, boolean autoRepeat, @NotNull CommandList commandList, @NotNull GuiFactory guiFactory, @NotNull NewCharModel newCharModel)
      Creates a new instance.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void activeChanged()
      Will be called whenever the active state has changed.
      @Nullable java.awt.Dimension getMaximumSize()  
      protected @NotNull java.awt.Dimension getMinimumSizeInt()
      Returns the minimal size needed to display this component.
      @Nullable TooltipText getTooltip()
      Returns the current tooltip text.
      void notifyOpen()
      Called each time the enclosing dialog is opened (or raised).
      void paintComponent​(@NotNull java.awt.Graphics g)  
      void select​(boolean selected)
      Selects or deselects the element.
      • 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, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, 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, setVisible, 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, 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, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

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

      • GUITextButton

        public GUITextButton​(@NotNull
                             @NotNull TooltipManager tooltipManager,
                             @NotNull
                             @NotNull GUIElementListener elementListener,
                             @NotNull
                             @NotNull java.lang.String name,
                             @NotNull
                             @NotNull ButtonImages up,
                             @NotNull
                             @NotNull ButtonImages down,
                             @NotNull
                             @NotNull java.lang.String text,
                             @NotNull
                             @NotNull java.awt.Font font,
                             @NotNull
                             @NotNull java.awt.Color color,
                             @NotNull
                             @NotNull java.awt.Color colorSelected,
                             @NotNull
                             @NotNull java.awt.Color colorDisabled,
                             boolean autoRepeat,
                             @NotNull
                             @NotNull CommandList commandList,
                             @NotNull
                             @NotNull GuiFactory guiFactory,
                             @NotNull
                             @NotNull NewCharModel newCharModel)
        Creates a new instance.
        Parameters:
        tooltipManager - the tooltip manager to update
        elementListener - the element listener to notify
        name - the name of this element
        up - the images comprising the "up" button state
        down - the images comprising the "down" button state
        text - the button text
        font - the font to use
        color - the text color
        colorSelected - the text color when selected
        colorDisabled - the text color when disabled; takes precedence over colorSelected
        autoRepeat - whether the button should autorepeat while being pressed
        commandList - the commands to execute when the button is selected
        guiFactory - the global GUI factory instance
        newCharModel - the global new char model instance
    • Method Detail

      • paintComponent

        public void paintComponent​(@NotNull
                                   @NotNull java.awt.Graphics g)
        Overrides:
        paintComponent in class javax.swing.JComponent
      • getMinimumSizeInt

        @NotNull
        protected @NotNull java.awt.Dimension getMinimumSizeInt()
        Description copied from class: AbstractButton
        Returns the minimal size needed to display this component.
        Specified by:
        getMinimumSizeInt in class AbstractButton
        Returns:
        the minimal size
      • getMaximumSize

        @Nullable
        public @Nullable java.awt.Dimension getMaximumSize()
        Overrides:
        getMaximumSize in class javax.swing.JComponent
      • select

        public void select​(boolean selected)
        Description copied from interface: GUISelectable
        Selects or deselects the element.
        Specified by:
        select in interface GUISelectable
        Parameters:
        selected - whether the element should be selected
      • notifyOpen

        public void notifyOpen()
        Description copied from interface: GUIElement
        Called each time the enclosing dialog is opened (or raised).
        Specified by:
        notifyOpen in interface GUIElement