Class TextTitle

    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        For serialization.
        See Also:
        Constant Field Values
      • DEFAULT_FONT

        public static final java.awt.Font DEFAULT_FONT
        The default font.
      • DEFAULT_TEXT_PAINT

        public static final java.awt.Paint DEFAULT_TEXT_PAINT
        The default text color.
      • text

        private java.lang.String text
        The title text.
      • font

        private java.awt.Font font
        The font used to display the title.
      • paint

        private transient java.awt.Paint paint
        The paint used to display the title text.
      • backgroundPaint

        private transient java.awt.Paint backgroundPaint
        The background paint.
      • toolTipText

        private java.lang.String toolTipText
        The tool tip text (can be null).
      • urlText

        private java.lang.String urlText
        The URL text (can be null).
      • content

        private TextBlock content
        The content.
      • expandToFitSpace

        private boolean expandToFitSpace
        A flag that controls whether the title expands to fit the available space..
      • maximumLinesToDisplay

        private int maximumLinesToDisplay
        The maximum number of lines to display.
    • Constructor Detail

      • TextTitle

        public TextTitle()
        Creates a new title, using default attributes where necessary.
      • TextTitle

        public TextTitle​(java.lang.String text)
        Creates a new title, using default attributes where necessary.
        Parameters:
        text - the title text (null not permitted).
      • TextTitle

        public TextTitle​(java.lang.String text,
                         java.awt.Font font)
        Creates a new title, using default attributes where necessary.
        Parameters:
        text - the title text (null not permitted).
        font - the title font (null not permitted).
      • TextTitle

        public TextTitle​(java.lang.String text,
                         java.awt.Font font,
                         java.awt.Paint paint,
                         RectangleEdge position,
                         HorizontalAlignment horizontalAlignment,
                         VerticalAlignment verticalAlignment,
                         RectangleInsets padding)
        Creates a new title.
        Parameters:
        text - the text for the title (null not permitted).
        font - the title font (null not permitted).
        paint - the title paint (null not permitted).
        position - the title position (null not permitted).
        horizontalAlignment - the horizontal alignment (null not permitted).
        verticalAlignment - the vertical alignment (null not permitted).
        padding - the space to leave around the outside of the title.
    • Method Detail

      • getText

        public java.lang.String getText()
        Returns the title text.
        Returns:
        The text (never null).
        See Also:
        setText(String)
      • setText

        public void setText​(java.lang.String text)
        Sets the title to the specified text and sends a TitleChangeEvent to all registered listeners.
        Parameters:
        text - the text (null not permitted).
      • getTextAlignment

        public HorizontalAlignment getTextAlignment()
        Returns the text alignment. This controls how the text is aligned within the title's bounds, whereas the title's horizontal alignment controls how the title's bounding rectangle is aligned within the drawing space.
        Returns:
        The text alignment.
      • setTextAlignment

        public void setTextAlignment​(HorizontalAlignment alignment)
        Sets the text alignment and sends a TitleChangeEvent to all registered listeners.
        Parameters:
        alignment - the alignment (null not permitted).
      • getFont

        public java.awt.Font getFont()
        Returns the font used to display the title string.
        Returns:
        The font (never null).
        See Also:
        setFont(Font)
      • setFont

        public void setFont​(java.awt.Font font)
        Sets the font used to display the title string. Registered listeners are notified that the title has been modified.
        Parameters:
        font - the new font (null not permitted).
        See Also:
        getFont()
      • getPaint

        public java.awt.Paint getPaint()
        Returns the paint used to display the title string.
        Returns:
        The paint (never null).
        See Also:
        setPaint(Paint)
      • setPaint

        public void setPaint​(java.awt.Paint paint)
        Sets the paint used to display the title string. Registered listeners are notified that the title has been modified.
        Parameters:
        paint - the new paint (null not permitted).
        See Also:
        getPaint()
      • getBackgroundPaint

        public java.awt.Paint getBackgroundPaint()
        Returns the background paint.
        Returns:
        The paint (possibly null).
      • setBackgroundPaint

        public void setBackgroundPaint​(java.awt.Paint paint)
        Sets the background paint and sends a TitleChangeEvent to all registered listeners. If you set this attribute to null, no background is painted (which makes the title background transparent).
        Parameters:
        paint - the background paint (null permitted).
      • getToolTipText

        public java.lang.String getToolTipText()
        Returns the tool tip text.
        Returns:
        The tool tip text (possibly null).
      • setToolTipText

        public void setToolTipText​(java.lang.String text)
        Sets the tool tip text to the specified text and sends a TitleChangeEvent to all registered listeners.
        Parameters:
        text - the text (null permitted).
      • getURLText

        public java.lang.String getURLText()
        Returns the URL text.
        Returns:
        The URL text (possibly null).
      • setURLText

        public void setURLText​(java.lang.String text)
        Sets the URL text to the specified text and sends a TitleChangeEvent to all registered listeners.
        Parameters:
        text - the text (null permitted).
      • getExpandToFitSpace

        public boolean getExpandToFitSpace()
        Returns the flag that controls whether or not the title expands to fit the available space.
        Returns:
        The flag.
      • setExpandToFitSpace

        public void setExpandToFitSpace​(boolean expand)
        Sets the flag that controls whether the title expands to fit the available space, and sends a TitleChangeEvent to all registered listeners.
        Parameters:
        expand - the flag.
      • getMaximumLinesToDisplay

        public int getMaximumLinesToDisplay()
        Returns the maximum number of lines to display.
        Returns:
        The maximum.
        See Also:
        setMaximumLinesToDisplay(int)
      • setMaximumLinesToDisplay

        public void setMaximumLinesToDisplay​(int max)
        Sets the maximum number of lines to display and sends a TitleChangeEvent to all registered listeners.
        Parameters:
        max - the maximum.
        See Also:
        getMaximumLinesToDisplay()
      • arrange

        public Size2D arrange​(java.awt.Graphics2D g2,
                              RectangleConstraint constraint)
        Arranges the contents of the block, within the given constraints, and returns the block size.
        Specified by:
        arrange in interface Block
        Overrides:
        arrange in class AbstractBlock
        Parameters:
        g2 - the graphics device.
        constraint - the constraint (null not permitted).
        Returns:
        The block size (in Java2D units, never null).
      • arrangeNN

        protected Size2D arrangeNN​(java.awt.Graphics2D g2)
        Arranges the content for this title assuming no bounds on the width or the height, and returns the required size. This will reflect the fact that a text title positioned on the left or right of a chart will be rotated by 90 degrees.
        Parameters:
        g2 - the graphics target.
        Returns:
        The content size.
      • arrangeFN

        protected Size2D arrangeFN​(java.awt.Graphics2D g2,
                                   double w)
        Arranges the content for this title assuming a fixed width and no bounds on the height, and returns the required size. This will reflect the fact that a text title positioned on the left or right of a chart will be rotated by 90 degrees.
        Parameters:
        g2 - the graphics target.
        w - the width.
        Returns:
        The content size.
      • arrangeRN

        protected Size2D arrangeRN​(java.awt.Graphics2D g2,
                                   Range widthRange)
        Arranges the content for this title assuming a range constraint for the width and no bounds on the height, and returns the required size. This will reflect the fact that a text title positioned on the left or right of a chart will be rotated by 90 degrees.
        Parameters:
        g2 - the graphics target.
        widthRange - the range for the width.
        Returns:
        The content size.
      • arrangeRR

        protected Size2D arrangeRR​(java.awt.Graphics2D g2,
                                   Range widthRange,
                                   Range heightRange)
        Returns the content size for the title. This will reflect the fact that a text title positioned on the left or right of a chart will be rotated 90 degrees.
        Parameters:
        g2 - the graphics device.
        widthRange - the width range.
        heightRange - the height range.
        Returns:
        The content size.
      • draw

        public void draw​(java.awt.Graphics2D g2,
                         java.awt.geom.Rectangle2D area)
        Draws the title on a Java 2D graphics device (such as the screen or a printer).
        Specified by:
        draw in interface Drawable
        Specified by:
        draw in class Title
        Parameters:
        g2 - the graphics device.
        area - the area allocated for the title.
      • draw

        public java.lang.Object draw​(java.awt.Graphics2D g2,
                                     java.awt.geom.Rectangle2D area,
                                     java.lang.Object params)
        Draws the block within the specified area.
        Specified by:
        draw in interface Block
        Parameters:
        g2 - the graphics device.
        area - the area.
        params - if this is an instance of EntityBlockParams it is used to determine whether or not an EntityCollection is returned by this method.
        Returns:
        An EntityCollection containing a chart entity for the title, or null.
      • drawHorizontal

        protected void drawHorizontal​(java.awt.Graphics2D g2,
                                      java.awt.geom.Rectangle2D area)
        Draws a the title horizontally within the specified area. This method will be called from the draw method.
        Parameters:
        g2 - the graphics device.
        area - the area for the title.
      • drawVertical

        protected void drawVertical​(java.awt.Graphics2D g2,
                                    java.awt.geom.Rectangle2D area)
        Draws a the title vertically within the specified area. This method will be called from the draw method.
        Parameters:
        g2 - the graphics device.
        area - the area for the title.
      • equals

        public boolean equals​(java.lang.Object obj)
        Tests this title for equality with another object.
        Overrides:
        equals in class Title
        Parameters:
        obj - the object (null permitted).
        Returns:
        true or false.
      • canEqual

        public boolean canEqual​(java.lang.Object other)
        Ensures symmetry between super/subclass implementations of equals. For more detail, see http://jqno.nl/equalsverifier/manual/inheritance.
        Overrides:
        canEqual in class Title
        Parameters:
        other - Object
        Returns:
        true ONLY if the parameter is THIS class type
      • hashCode

        public int hashCode()
        Returns a hash code.
        Overrides:
        hashCode in class Title
        Returns:
        A hash code.
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Returns a clone of this object.
        Specified by:
        clone in interface PublicCloneable
        Overrides:
        clone in class Title
        Returns:
        A clone.
        Throws:
        java.lang.CloneNotSupportedException - never.
      • writeObject

        private void writeObject​(java.io.ObjectOutputStream stream)
                          throws java.io.IOException
        Provides serialization support.
        Parameters:
        stream - the output stream.
        Throws:
        java.io.IOException - if there is an I/O error.
      • readObject

        private void readObject​(java.io.ObjectInputStream stream)
                         throws java.io.IOException,
                                java.lang.ClassNotFoundException
        Provides serialization support.
        Parameters:
        stream - the input stream.
        Throws:
        java.io.IOException - if there is an I/O error.
        java.lang.ClassNotFoundException - if there is a classpath problem.