Class URLAnnotatedStringHandler

  • All Implemented Interfaces:
    AnnotatedStringHandler, ExtensionPoint

    public class URLAnnotatedStringHandler
    extends java.lang.Object
    implements AnnotatedStringHandler
    An annotated string handler that allows handles annotations that begin with SUPPORTED_ANNOTATIONS. This class expects one or two strings following the annotation. The first string will be treated as a Java URL and the optional second string will be treated as display text. If there is not display text, then the URL will be displayed.
    • Constructor Detail

      • URLAnnotatedStringHandler

        public URLAnnotatedStringHandler()
    • Method Detail

      • createAnnotatedString

        public AttributedString createAnnotatedString​(AttributedString prototypeString,
                                                      java.lang.String[] text,
                                                      Program program)
                                               throws AnnotationException
        Description copied from interface: AnnotatedStringHandler
        Creates an FieldElement based upon the give array of Strings. The first String in the list is expected to be the annotation tag used to create the annotation. At the very least the array is expected to be comprised of two elements, the annotation and some data. Extra data may be provided as needed by implementing classes.
        Specified by:
        createAnnotatedString in interface AnnotatedStringHandler
        Parameters:
        prototypeString - The prototype FieldElement that dictates the attributes for the newly created string. Implementations may change attributes as needed.
        text - An array of Strings used to create the FieldElement being returned.
        program - The program with which the returned string is associated.
        Returns:
        An AnnotatedTextFieldElement that will be used to render the given text.
        Throws:
        AnnotationException - if the given text data does not fit the expected format for the given handler implementation.
        See Also:
        AnnotatedStringHandler#createAnnotatedString(AttributedString, String[], ServiceProvider)
      • handleMouseClick

        public boolean handleMouseClick​(java.lang.String[] annotationParts,
                                        Navigatable navigatable,
                                        ServiceProvider serviceProvider)
        Description copied from interface: AnnotatedStringHandler
        A method that is notified when an annotation is clicked. Returns true if this annotation handles the click; return false if this annotation does not do anything with the click.
        Specified by:
        handleMouseClick in interface AnnotatedStringHandler
        Parameters:
        annotationParts - The constituent parts of the annotation
        navigatable - The location in the program that was clicked.
        serviceProvider - A service provider for needed services.
        Returns:
        true if this annotation handles the click; return false if this annotation does not do anything with the click.