Package editor

Class AbstractGotoPopup<T>

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.MenuElement
    Direct Known Subclasses:
    GotoTypePopup

    public abstract class AbstractGotoPopup<T>
    extends javax.swing.JPopupMenu
    Generic implementation of a popup. Refactored from original GotoTypePopup.
    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  AbstractGotoPopup.AbstractPopupListModel<T>  
      private class  AbstractGotoPopup.DisplayListTimerTask  
      (package private) class  AbstractGotoPopup.EditorKeyListener  
      protected class  AbstractGotoPopup.GenerifiedJList  
      private class  AbstractGotoPopup.PopupMouseListener  
      • 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
    • Constructor Summary

      Constructors 
      Constructor Description
      AbstractGotoPopup​(int waitTime, int rowCount, java.lang.String title, java.lang.String strPrefix, boolean takesInput, boolean centerInFrame, boolean externalOption)  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void addNodeChangeListener​(javax.swing.event.ChangeListener l)  
      protected abstract javax.swing.ListCellRenderer constructCellRenderer()  
      protected void filterDisplay​(java.lang.String prefix, boolean showSpinner)  
      private void filterSynchronously​(javax.swing.AbstractListModel model)  
      private void fireNodeChanged​(javax.swing.event.EventListenerList list, javax.swing.event.ChangeEvent e)  
      private void fireNodeChangedNow​(javax.swing.event.EventListenerList list, javax.swing.event.ChangeEvent e)  
      protected java.util.List<T> getInitializedAllData()  
      (package private) AbstractGotoPopup.GenerifiedJList getList()  
      (package private) javax.swing.JTextField getNameField()  
      java.util.List<java.lang.String> getPopupSuggestions()  
      protected abstract void handleEdit()  
      protected abstract java.util.List<T> initializeData()  
      private void initializeDataInWaitMode()  
      private void initLayout()  
      protected boolean isExternalTypes()  
      protected abstract AbstractGotoPopup.AbstractPopupListModel<T> reconstructModel​(java.lang.String prefix)  
      private void registerListeners()  
      void removeNodeChangeListener​(javax.swing.event.ChangeListener l)  
      private void resetTimer()  
      void setSelection​(java.lang.String strSelection)  
      void setVisible​(boolean bVisible)  
      void show​(java.awt.Component invoker, int iX, int iY)  
      private void turnOffMnemonics()  
      private void turnOnMnemonics()  
      private void unregisterListeners()  
      • 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, 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, 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

      • _nameField

        protected javax.swing.JTextField _nameField
      • _nodeListenerList

        private javax.swing.event.EventListenerList _nodeListenerList
      • _bLocked

        private boolean _bLocked
      • _docListener

        private javax.swing.event.UndoableEditListener _docListener
      • _docListenerForEdits

        private javax.swing.event.DocumentListener _docListenerForEdits
      • _scrollPane

        private javax.swing.JScrollPane _scrollPane
      • _cbExternalTypes

        private javax.swing.JCheckBox _cbExternalTypes
      • _waitTime

        private final int _waitTime
        Wait time between keystrokes
      • _timer

        private java.util.Timer _timer
      • _rowCount

        private final int _rowCount
        The visible row count for the popup
      • _title

        private final java.lang.String _title
      • _allData

        private java.util.List<T> _allData
      • _strPrefix

        private java.lang.String _strPrefix
      • _takesInput

        private final boolean _takesInput
      • _centerInFrame

        private final boolean _centerInFrame
      • _dataLock

        private java.lang.Object _dataLock
      • _dataInitialized

        private boolean _dataInitialized
      • _spinner

        private javax.swing.JLabel _spinner
      • _externalOption

        private boolean _externalOption
    • Constructor Detail

      • AbstractGotoPopup

        public AbstractGotoPopup​(int waitTime,
                                 int rowCount,
                                 java.lang.String title,
                                 java.lang.String strPrefix,
                                 boolean takesInput,
                                 boolean centerInFrame,
                                 boolean externalOption)
    • Method Detail

      • initLayout

        private void initLayout()
      • getNameField

        javax.swing.JTextField getNameField()
      • constructCellRenderer

        protected abstract javax.swing.ListCellRenderer constructCellRenderer()
      • handleEdit

        protected abstract void handleEdit()
      • isExternalTypes

        protected boolean isExternalTypes()
      • initializeDataInWaitMode

        private void initializeDataInWaitMode()
      • initializeData

        protected abstract java.util.List<T> initializeData()
      • setVisible

        public final void setVisible​(boolean bVisible)
        Overrides:
        setVisible in class javax.swing.JPopupMenu
      • turnOnMnemonics

        private void turnOnMnemonics()
      • turnOffMnemonics

        private void turnOffMnemonics()
      • registerListeners

        private void registerListeners()
      • unregisterListeners

        private void unregisterListeners()
      • filterDisplay

        protected void filterDisplay​(java.lang.String prefix,
                                     boolean showSpinner)
      • filterSynchronously

        private void filterSynchronously​(javax.swing.AbstractListModel model)
      • show

        public final void show​(java.awt.Component invoker,
                               int iX,
                               int iY)
        Overrides:
        show in class javax.swing.JPopupMenu
      • addNodeChangeListener

        public final void addNodeChangeListener​(javax.swing.event.ChangeListener l)
      • removeNodeChangeListener

        public final void removeNodeChangeListener​(javax.swing.event.ChangeListener l)
      • setSelection

        public void setSelection​(java.lang.String strSelection)
      • getPopupSuggestions

        public java.util.List<java.lang.String> getPopupSuggestions()
      • fireNodeChanged

        private void fireNodeChanged​(javax.swing.event.EventListenerList list,
                                     javax.swing.event.ChangeEvent e)
      • fireNodeChangedNow

        private void fireNodeChangedNow​(javax.swing.event.EventListenerList list,
                                        javax.swing.event.ChangeEvent e)
      • getInitializedAllData

        protected java.util.List<T> getInitializedAllData()
      • resetTimer

        private void resetTimer()