Class DropDownComponent.ScrollablePopupMenu

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.MenuElement
    Enclosing class:
    DropDownComponent

    public static class DropDownComponent.ScrollablePopupMenu
    extends javax.swing.JPopupMenu
    The Scrollable Popup Menu Component.
    See Also:
    Serialized Form
    • Nested Class Summary

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

        javax.swing.JPopupMenu.AccessibleJPopupMenu, javax.swing.JPopupMenu.Separator
      • 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 static java.util.ResourceBundle bundle
      The resource bundle.
      private javax.swing.event.EventListenerList eventListeners
      Listeners list.
      private DropDownComponent.ScrollablePopupMenuItem footer
      Footer item.
      private javax.swing.JPanel menuPanel
      The menu panel.
      private DropDownComponent.ScrollablePopupMenuModel model
      The model for this component.
      private javax.swing.JComponent ownerComponent
      The owner component.
      private int preferredHeight
      Max menu height.
      private static ResourceManager resources
      The resource manager.
      private static java.lang.String RESOURCES
      The resource file name.
      private javax.swing.JScrollPane scrollPane
      The scroll pane.
      • 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
      ScrollablePopupMenu​(javax.swing.JComponent owner)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void add​(DropDownComponent.ScrollablePopupMenuItem menuItem, int index, int oldSize, int newSize)
      Adds the item to this component at the specified location.
      private void addFooter​(DropDownComponent.ScrollablePopupMenuItem footer)
      Adds the footer item to this pop up menu.
      void addListener​(DropDownComponent.ScrollablePopupMenuListener listener)
      Adds the listener to the listener list.
      void fireItemsWereAdded​(DropDownComponent.ScrollablePopupMenuEvent event)
      Fires the itemsWereAdded event, when the items are added to this pop up menu.
      void fireItemsWereRemoved​(DropDownComponent.ScrollablePopupMenuEvent event)
      Fires the itemsWereRemove event, when the items are removed from this pop up menu.
      DropDownComponent.ScrollablePopupMenuItem getFooter()
      Gets the footer item.
      DropDownComponent.ScrollablePopupMenuModel getModel()
      Gets the ScrollablePopupMenuModel
      javax.swing.JComponent getOwner()
      Gets the owner component.
      private int getPreferredHeight()
      Gets the preferred height of this component.
      java.awt.Dimension getPreferredSize()  
      private int getPreferredWidth()
      Gets the preferred width of this pop up menu.
      int getSelectedItemsCount()
      Gets the number of the selected items.
      private void init()
      Initializes this popup menu.
      void processItemClicked()
      Processes click on the pop up menu item.
      void remove​(DropDownComponent.ScrollablePopupMenuItem menuItem, int oldSize, int newSize)
      Removes the item from this component.
      void selectionChanged​(DropDownComponent.ScrollablePopupMenuItem targetItem, boolean wasSelected)
      Invoked when item selection changes.
      void setModel​(DropDownComponent.ScrollablePopupMenuModel model)
      Sets the ScrollablePopupMenuModel.
      void showMenu​(java.awt.Component invoker, java.awt.Component refComponent)
      Shows this popup menu.
      • Methods inherited from class javax.swing.JPopupMenu

        add, add, add, addMenuKeyListener, addPopupMenuListener, addSeparator, createActionChangeListener, createActionComponent, firePopupMenuCanceled, firePopupMenuWillBecomeInvisible, firePopupMenuWillBecomeVisible, getAccessibleContext, getComponent, getComponentAtIndex, getComponentIndex, getDefaultLightWeightPopupEnabled, getInvoker, getLabel, getMargin, getMenuKeyListeners, getPopupMenuListeners, getSelectionModel, getSubElements, getUI, getUIClassID, insert, insert, isBorderPainted, isLightWeightPopupEnabled, isPopupTrigger, isVisible, menuSelectionChanged, pack, paintBorder, paramString, processFocusEvent, processKeyEvent, processKeyEvent, processMouseEvent, remove, removeMenuKeyListener, removePopupMenuListener, setBorderPainted, setDefaultLightWeightPopupEnabled, setInvoker, setLabel, setLightWeightPopupEnabled, setLocation, setPopupSize, setPopupSize, setSelected, setSelectionModel, setUI, setVisible, show, 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, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, 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, 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, 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, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, 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, 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

      • RESOURCES

        private static final java.lang.String RESOURCES
        The resource file name.
        See Also:
        Constant Field Values
      • bundle

        private static java.util.ResourceBundle bundle
        The resource bundle.
      • resources

        private static ResourceManager resources
        The resource manager.
      • menuPanel

        private javax.swing.JPanel menuPanel
        The menu panel.
      • scrollPane

        private javax.swing.JScrollPane scrollPane
        The scroll pane.
      • preferredHeight

        private int preferredHeight
        Max menu height.
      • ownerComponent

        private javax.swing.JComponent ownerComponent
        The owner component.
      • eventListeners

        private javax.swing.event.EventListenerList eventListeners
        Listeners list.
    • Constructor Detail

      • ScrollablePopupMenu

        public ScrollablePopupMenu​(javax.swing.JComponent owner)
        Constructor.
        Parameters:
        owner - The owner component
    • Method Detail

      • init

        private void init()
        Initializes this popup menu.
      • showMenu

        public void showMenu​(java.awt.Component invoker,
                             java.awt.Component refComponent)
        Shows this popup menu.
        Parameters:
        invoker - The popup menu invoker component
        refComponent - The dropdown component that containts this menu
      • add

        public void add​(DropDownComponent.ScrollablePopupMenuItem menuItem,
                        int index,
                        int oldSize,
                        int newSize)
        Adds the item to this component at the specified location.
        Parameters:
        menuItem - the item to add
      • getPreferredWidth

        private int getPreferredWidth()
        Gets the preferred width of this pop up menu.
        Returns:
        the preferred width
      • getPreferredHeight

        private int getPreferredHeight()
        Gets the preferred height of this component.
        Returns:
        the preferred height
      • getPreferredSize

        public java.awt.Dimension getPreferredSize()
        Overrides:
        getPreferredSize in class javax.swing.JComponent
      • getSelectedItemsCount

        public int getSelectedItemsCount()
        Gets the number of the selected items.
        Returns:
        number of selected items
      • processItemClicked

        public void processItemClicked()
        Processes click on the pop up menu item.
      • getOwner

        public javax.swing.JComponent getOwner()
        Gets the owner component.
        Returns:
        the owner component
      • fireItemsWereAdded

        public void fireItemsWereAdded​(DropDownComponent.ScrollablePopupMenuEvent event)
        Fires the itemsWereAdded event, when the items are added to this pop up menu.
        Parameters:
        event - The associated ScrollablePopupMenuEvent event
      • fireItemsWereRemoved

        public void fireItemsWereRemoved​(DropDownComponent.ScrollablePopupMenuEvent event)
        Fires the itemsWereRemove event, when the items are removed from this pop up menu.
        Parameters:
        event - The associated ScrollablePopupMenuEvent event