Interface ProjectionChoice

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.lang.String[] allCodes()
      Return all projection codes supported by this projection choice.
      java.lang.String getId()
      Get a unique id for the projection choice.
      javax.swing.JPanel getPreferencePanel​(java.awt.event.ActionListener listener)
      Generate and provide the GUI.
      java.util.Collection<java.lang.String> getPreferences​(javax.swing.JPanel panel)
      Extract preferences from the GUI.
      java.util.Collection<java.lang.String> getPreferencesFromCode​(java.lang.String code)
      Get Preferences from projection code.
      Projection getProjection()
      Get the projection that matches the internal state.
      void setPreferences​(java.util.Collection<java.lang.String> args)
      Set the internal state to match the preferences.
      java.lang.String toString()
      Short name of the projection choice as shown in the GUI (combo box).
    • Method Detail

      • getId

        java.lang.String getId()
        Get a unique id for the projection choice. Will be used to save the user selection to the preference file.
        Returns:
        the string identifier
      • setPreferences

        void setPreferences​(java.util.Collection<java.lang.String> args)
        Set the internal state to match the preferences. Will be called before getPreferencePanel and when the listener from getPreferencePanel is invoked.
        Parameters:
        args - preferences as a list of strings; may be null to reset everything.
      • getProjection

        Projection getProjection()
        Get the projection that matches the internal state.
        Returns:
        the effective projection
      • getPreferencePanel

        javax.swing.JPanel getPreferencePanel​(java.awt.event.ActionListener listener)
        Generate and provide the GUI. It will be displayed to the user. Call the listener, when the user makes changes in the GUI, so the projection info in the top panel gets updated.
        Parameters:
        listener - listener for any change of preferences
        Returns:
        the GUI panel
      • getPreferences

        java.util.Collection<java.lang.String> getPreferences​(javax.swing.JPanel panel)
        Extract preferences from the GUI. Will be called when the preference dialog is dismissed or when the listener from getPreferencePanel is invoked.
        Parameters:
        panel - projection preferences panel
        Returns:
        preferences as a list of strings; may be null to reset everything.
        See Also:
        setPreferences(java.util.Collection<java.lang.String>)
      • allCodes

        java.lang.String[] allCodes()
        Return all projection codes supported by this projection choice.
        Returns:
        all supported projection codes
      • getPreferencesFromCode

        java.util.Collection<java.lang.String> getPreferencesFromCode​(java.lang.String code)
        Get Preferences from projection code.
        Parameters:
        code - projection code
        Returns:
        null when code is not part of this projection choice. An empty Collection as return value indicates, that the code is supported, but no preferences are required to set it up.
      • toString

        java.lang.String toString()
        Short name of the projection choice as shown in the GUI (combo box).
        Overrides:
        toString in class java.lang.Object
        Returns:
        the name