Class Theme


  • public class Theme
    extends Object
    A theme is a set of fonts and colors to use to style RSyntaxTextArea. Themes are defined in XML files that are validated against themes.dtd. This provides applications and other consumers with an easy way to style RSyntaxTextArea without having to use the API.

    Sample themes are included in the source tree under the /themes folder, but are not a part of the built RSyntaxTextArea jar. Hosting applications are free to ship and use these themes as-is, modify them, or create their own.

    Note that to save a Theme via save(OutputStream), you must currently create a Theme from a text area wrapped in an RTextScrollPane, so that the color information for the gutter can be retrieved.

    • Constructor Detail

      • Theme

        public Theme​(RSyntaxTextArea textArea)
        Creates a theme from an RSyntaxTextArea. It should be contained in an RTextScrollPane to get all gutter color information.
        Parameters:
        textArea - The text area.
    • Method Detail

      • apply

        public void apply​(RSyntaxTextArea textArea)
        Applies this theme to a text area.
        Parameters:
        textArea - The text area to apply this theme to.
      • load

        public static Theme load​(InputStream in,
                                 Font baseFont)
                          throws IOException
        Loads a theme.
        Parameters:
        in - The input stream to read from. This will be closed when this method returns.
        baseFont - The default font to use for any "base font" properties not specified in the theme XML. If this is null, a default monospaced font will be used.
        Returns:
        The theme.
        Throws:
        IOException - If an IO error occurs.
        See Also:
        save(OutputStream)