Class SourceEditor

    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected SourceEditor​(SourceType sourceType, java.lang.String availableSourcesUrl, java.util.List<SourceProvider> sourceProviders, boolean handleIcons)
      Constructs a new SourceEditor.
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      private void buildIcons​(java.awt.GridBagConstraints gbc)  
      void deferLoading​(javax.swing.JTabbedPane tab, java.awt.Component component)
      Defers loading of sources to the first time the adequate tab is selected.
      void deferLoading​(DefaultTabPreferenceSetting tab, java.awt.Component component)
      Defers loading of sources to the first time the adequate tab is selected.
      protected boolean doFinish​(SourcePrefHelper prefHelper, java.lang.String iconPref)
      Default implementation of finish().
      abstract boolean finish()
      Save the settings after user clicked "Ok".
      java.util.Collection<SourceEntry> getActiveSources()
      Returns the list of active sources.
      abstract java.util.Collection<ExtendedSourceEntry> getDefault()
      Get the default list of entries (used when resetting the list).
      abstract java.util.Collection<java.lang.String> getInitialIconPathsList()
      Load the list of configured icon paths.
      abstract java.util.Collection<? extends SourceEntry> getInitialSourcesList()
      Load the list of source entries that the user has configured.
      protected abstract java.lang.String getStr​(SourceEditor.I18nString ident)
      Provide the GUI strings.
      protected java.lang.String getTitleForSourceEntry​(SourceEntry entry)
      Returns the title of the given source entry.
      boolean hasActiveSourcesChanged()
      Determines whether the list of active sources has changed.
      void initiallyLoadAvailableSources()
      Performs the initial loading of source providers.
      java.util.Collection<ExtendedSourceEntry> loadAndGetAvailableSources()
      Synchronously loads available sources and returns the parsed list.
      private static void prepareFileChooser​(java.lang.String url, AbstractFileChooser fc)  
      protected void reloadAvailableSources​(java.lang.String url, java.util.List<SourceProvider> sourceProviders)
      Reload available sources.
      void removeSources​(java.util.Collection<java.lang.Integer> idxs)
      Remove sources associated with given indexes from active list.
      • 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

      • SourceEditor

        protected SourceEditor​(SourceType sourceType,
                               java.lang.String availableSourcesUrl,
                               java.util.List<SourceProvider> sourceProviders,
                               boolean handleIcons)
        Constructs a new SourceEditor.
        Parameters:
        sourceType - the type of source managed by this editor
        availableSourcesUrl - the URL to the list of available sources
        sourceProviders - the list of additional source providers, from plugins
        handleIcons - true if icons may be managed, false otherwise
    • Method Detail

      • buildIcons

        private void buildIcons​(java.awt.GridBagConstraints gbc)
      • getInitialSourcesList

        public abstract java.util.Collection<? extends SourceEntrygetInitialSourcesList()
        Load the list of source entries that the user has configured.
        Returns:
        list of source entries that the user has configured
      • getInitialIconPathsList

        public abstract java.util.Collection<java.lang.String> getInitialIconPathsList()
        Load the list of configured icon paths.
        Returns:
        list of configured icon paths
      • getDefault

        public abstract java.util.Collection<ExtendedSourceEntrygetDefault()
        Get the default list of entries (used when resetting the list).
        Returns:
        default list of entries
      • finish

        public abstract boolean finish()
        Save the settings after user clicked "Ok".
        Returns:
        true if restart is required
      • doFinish

        protected boolean doFinish​(SourcePrefHelper prefHelper,
                                   java.lang.String iconPref)
        Default implementation of finish().
        Parameters:
        prefHelper - Helper class for specialized extensions preferences
        iconPref - icons path preference
        Returns:
        true if restart is required
      • getStr

        protected abstract java.lang.String getStr​(SourceEditor.I18nString ident)
        Provide the GUI strings. (There are differences for MapPaint, Preset and TagChecker Rule)
        Parameters:
        ident - any SourceEditor.I18nString value
        Returns:
        the translated string for ident
      • hasActiveSourcesChanged

        public boolean hasActiveSourcesChanged()
        Determines whether the list of active sources has changed.
        Returns:
        true if the list of active sources has changed, false otherwise
      • getActiveSources

        public java.util.Collection<SourceEntrygetActiveSources()
        Returns the list of active sources.
        Returns:
        the list of active sources
      • loadAndGetAvailableSources

        public final java.util.Collection<ExtendedSourceEntryloadAndGetAvailableSources()
                                                                                   throws org.xml.sax.SAXException,
                                                                                          java.io.IOException,
                                                                                          OsmTransferException
        Synchronously loads available sources and returns the parsed list.
        Returns:
        list of available sources
        Throws:
        OsmTransferException - in case of OSM transfer error
        java.io.IOException - in case of any I/O error
        org.xml.sax.SAXException - in case of any SAX error
      • removeSources

        public void removeSources​(java.util.Collection<java.lang.Integer> idxs)
        Remove sources associated with given indexes from active list.
        Parameters:
        idxs - indexes of sources to remove
      • reloadAvailableSources

        protected void reloadAvailableSources​(java.lang.String url,
                                              java.util.List<SourceProvider> sourceProviders)
        Reload available sources.
        Parameters:
        url - the URL from which the available sources are fetched
        sourceProviders - the list of source providers
      • initiallyLoadAvailableSources

        public void initiallyLoadAvailableSources()
        Performs the initial loading of source providers. Does nothing if already done.
      • deferLoading

        public final void deferLoading​(DefaultTabPreferenceSetting tab,
                                       java.awt.Component component)
        Defers loading of sources to the first time the adequate tab is selected.
        Parameters:
        tab - The preferences tab
        component - The tab component
        Since:
        6670
      • deferLoading

        public final void deferLoading​(javax.swing.JTabbedPane tab,
                                       java.awt.Component component)
        Defers loading of sources to the first time the adequate tab is selected.
        Parameters:
        tab - The tabbed pane
        component - The tab component
        Since:
        17161
      • getTitleForSourceEntry

        protected java.lang.String getTitleForSourceEntry​(SourceEntry entry)
        Returns the title of the given source entry.
        Parameters:
        entry - source entry
        Returns:
        the title of the given source entry, or null if empty