Class TapQueryPanel

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

    public class TapQueryPanel
    extends javax.swing.JPanel
    Panel for display of a TAP query for a given TAP service.
    Since:
    15 Feb 2011
    Author:
    Mark Taylor
    See Also:
    Serialized Form
    • Nested Class Summary

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

        javax.swing.JPanel.AccessibleJPanel
      • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addCaretListener​(javax.swing.event.CaretListener listener)
      Adds a listener for changes to the text in the displayed ADQL text entry panel.
      void addControl​(javax.swing.JComponent comp)
      Adds a given control to the line of buttons displayed at the top of this panel.
      void addCustomExamples​(java.lang.String menuName, AdqlExample[] examples)
      Adds a submenu to the examples menu giving a list of custom ADQL example queries.
      java.lang.String getAdql()
      Returns the text currently entered in the ADQL text component.
      TapCapabilityPanel getCapabilityPanel()
      Returns the panel used to hold and display the TAP capability information.
      javax.swing.Action[] getEditActions()
      Returns an array of GUI actions related to editing the ADQL text.
      java.lang.String getExampleQueryText​(DaliExample daliEx)
      Returns the ADQL text corresponding to the query part of an example.
      double[] getSkyPos()
      Returns the currently preferred sky position to use in examples.
      void removeCaretListener​(javax.swing.event.CaretListener listener)
      Removes a listener previously added with addCaretListener.
      void setExtraTables​(AdqlValidator.ValidatorTable[] extraTables)
      Sets a list of extra tables available for valid queries.
      void setServiceKit​(TapServiceKit serviceKit)
      Sets the TAP service access used by this panel.
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, paramString, 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, paintBorder, paintChildren, paintComponent, 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, 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, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

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

      • TapQueryPanel

        public TapQueryPanel​(UrlHandler urlHandler)
        Constructor.
        Parameters:
        urlHandler - handles URLs that the user clicks on; may be null
    • Method Detail

      • getCapabilityPanel

        public TapCapabilityPanel getCapabilityPanel()
        Returns the panel used to hold and display the TAP capability information.
        Returns:
        capability display panel
      • getAdql

        public java.lang.String getAdql()
        Returns the text currently entered in the ADQL text component.
        Returns:
        adql text supplied by user
      • setServiceKit

        public void setServiceKit​(TapServiceKit serviceKit)
        Sets the TAP service access used by this panel. Calling this will unconditionally initiate an asynchronous attempt to fill in service metadata from the given service.
        Parameters:
        serviceKit - defines TAP service
      • setExtraTables

        public void setExtraTables​(AdqlValidator.ValidatorTable[] extraTables)
        Sets a list of extra tables available for valid queries. By default ADQL validation is done on a list of tables acquired by reading the service's declared table metadata, but additional tables may be added for consideration using this call.
        Parameters:
        extraTables - additional tables to be passed by the validator
      • getEditActions

        public javax.swing.Action[] getEditActions()
        Returns an array of GUI actions related to editing the ADQL text.
        Returns:
        edit action list
      • addControl

        public void addControl​(javax.swing.JComponent comp)
        Adds a given control to the line of buttons displayed at the top of this panel.
        Parameters:
        comp - component to add
      • addCaretListener

        public void addCaretListener​(javax.swing.event.CaretListener listener)
        Adds a listener for changes to the text in the displayed ADQL text entry panel. This uses a CaretListener rather than (what might be more appropriate) DocumentListener because the DocumentListener interface looks too hairy, especially for use by components that are themselves behaving asynchronously.
        Parameters:
        listener - listener to add
      • removeCaretListener

        public void removeCaretListener​(javax.swing.event.CaretListener listener)
        Removes a listener previously added with addCaretListener.
        Parameters:
        listener - listener to remove
      • addCustomExamples

        public void addCustomExamples​(java.lang.String menuName,
                                      AdqlExample[] examples)
        Adds a submenu to the examples menu giving a list of custom ADQL example queries.
        Parameters:
        menuName - name of submenu
        examples - example list
      • getSkyPos

        public double[] getSkyPos()
        Returns the currently preferred sky position to use in examples. The default implementation returns null, which means examples must come up with some default themselves, but subclasses may override this.
        Returns:
        2-element (RA,Dec) array, or null for no position
      • getExampleQueryText

        public java.lang.String getExampleQueryText​(DaliExample daliEx)
        Returns the ADQL text corresponding to the query part of an example. Implementation is contentious; override it if you want.
        Parameters:
        daliEx - example object
        Returns:
        ADQL query text