Java Code Examples for org.jfree.text.TextUtilities#createTextBlock()

The following examples show how to use org.jfree.text.TextUtilities#createTextBlock() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: Plot.java    From openstock with GNU General Public License v3.0 6 votes vote down vote up
/**
 * Draws a message to state that there is no data to plot.
 *
 * @param g2  the graphics device.
 * @param area  the area within which the plot should be drawn.
 */
protected void drawNoDataMessage(Graphics2D g2, Rectangle2D area) {
    Shape savedClip = g2.getClip();
    g2.clip(area);
    String message = this.noDataMessage;
    if (message != null) {
        g2.setFont(this.noDataMessageFont);
        g2.setPaint(this.noDataMessagePaint);
        TextBlock block = TextUtilities.createTextBlock(
                this.noDataMessage, this.noDataMessageFont,
                this.noDataMessagePaint, 0.9f * (float) area.getWidth(),
                new G2TextMeasurer(g2));
        block.draw(g2, (float) area.getCenterX(),
                (float) area.getCenterY(), TextBlockAnchor.CENTER);
    }
    g2.setClip(savedClip);
}
 
Example 2
Source File: Plot.java    From SIMVA-SoS with Apache License 2.0 6 votes vote down vote up
/**
 * Draws a message to state that there is no data to plot.
 *
 * @param g2  the graphics device.
 * @param area  the area within which the plot should be drawn.
 */
protected void drawNoDataMessage(Graphics2D g2, Rectangle2D area) {
    Shape savedClip = g2.getClip();
    g2.clip(area);
    String message = this.noDataMessage;
    if (message != null) {
        g2.setFont(this.noDataMessageFont);
        g2.setPaint(this.noDataMessagePaint);
        TextBlock block = TextUtilities.createTextBlock(
                this.noDataMessage, this.noDataMessageFont,
                this.noDataMessagePaint, 0.9f * (float) area.getWidth(),
                new G2TextMeasurer(g2));
        block.draw(g2, (float) area.getCenterX(),
                (float) area.getCenterY(), TextBlockAnchor.CENTER);
    }
    g2.setClip(savedClip);
}
 
Example 3
Source File: Plot.java    From opensim-gui with Apache License 2.0 6 votes vote down vote up
/**
 * Draws a message to state that there is no data to plot.
 *
 * @param g2  the graphics device.
 * @param area  the area within which the plot should be drawn.
 */
protected void drawNoDataMessage(Graphics2D g2, Rectangle2D area) {
    Shape savedClip = g2.getClip();
    g2.clip(area);
    String message = this.noDataMessage;
    if (message != null) {
        g2.setFont(this.noDataMessageFont);
        g2.setPaint(this.noDataMessagePaint);
        TextBlock block = TextUtilities.createTextBlock(
                this.noDataMessage, this.noDataMessageFont, 
                this.noDataMessagePaint, 0.9f * (float) area.getWidth(), 
                new G2TextMeasurer(g2));
        block.draw(g2, (float) area.getCenterX(), (float) area.getCenterY(), 
                TextBlockAnchor.CENTER);
    }
    g2.setClip(savedClip);
}
 
Example 4
Source File: TextBlockPanel.java    From ccu-historian with GNU General Public License v3.0 6 votes vote down vote up
/**
 * Paints the panel.
 *
 * @param g  the graphics device.
 */
public void paintComponent(final Graphics g) {

    super.paintComponent(g);
    final Graphics2D g2 = (Graphics2D) g;

    final Dimension size = getSize();
    final Insets insets = getInsets();
    final Rectangle2D available = new Rectangle2D.Double(insets.left, insets.top,
                                  size.getWidth() - insets.left - insets.right,
                                  size.getHeight() - insets.top - insets.bottom);

    final double x = available.getX();
    final double y = available.getY();
    final float width = (float) available.getWidth();
    final TextBlock block = TextUtilities.createTextBlock(
        this.text, this.font, Color.black, width, new G2TextMeasurer(g2)
    );
    g2.setPaint(Color.black);
    block.draw(g2, (float) x, (float) y, TextBlockAnchor.TOP_LEFT, 0.0f, 0.0f, 0.0);

}
 
Example 5
Source File: Plot.java    From ccu-historian with GNU General Public License v3.0 6 votes vote down vote up
/**
 * Draws a message to state that there is no data to plot.
 *
 * @param g2  the graphics device.
 * @param area  the area within which the plot should be drawn.
 */
protected void drawNoDataMessage(Graphics2D g2, Rectangle2D area) {
    Shape savedClip = g2.getClip();
    g2.clip(area);
    String message = this.noDataMessage;
    if (message != null) {
        g2.setFont(this.noDataMessageFont);
        g2.setPaint(this.noDataMessagePaint);
        TextBlock block = TextUtilities.createTextBlock(
                this.noDataMessage, this.noDataMessageFont,
                this.noDataMessagePaint, 0.9f * (float) area.getWidth(),
                new G2TextMeasurer(g2));
        block.draw(g2, (float) area.getCenterX(),
                (float) area.getCenterY(), TextBlockAnchor.CENTER);
    }
    g2.setClip(savedClip);
}
 
Example 6
Source File: LabelBlock.java    From opensim-gui with Apache License 2.0 5 votes vote down vote up
/**
 * Sets the font and regenerates the label.
 *
 * @param font  the font (<code>null</code> not permitted).
 */
public void setFont(Font font) {
    if (font == null) {
        throw new IllegalArgumentException("Null 'font' argument.");
    }
    this.font = font;
    this.label = TextUtilities.createTextBlock(this.text, font, this.paint);
}
 
Example 7
Source File: LabelBlock.java    From openstock with GNU General Public License v3.0 5 votes vote down vote up
/**
 * Creates a new label block.
 *
 * @param text  the text for the label (<code>null</code> not permitted).
 * @param font  the font (<code>null</code> not permitted).
 * @param paint the paint (<code>null</code> not permitted).
 */
public LabelBlock(String text, Font font, Paint paint) {
    this.text = text;
    this.paint = paint;
    this.label = TextUtilities.createTextBlock(text, font, this.paint);
    this.font = font;
    this.toolTipText = null;
    this.urlText = null;
    this.contentAlignmentPoint = TextBlockAnchor.CENTER;
    this.textAnchor = RectangleAnchor.CENTER;
}
 
Example 8
Source File: LabelBlock.java    From opensim-gui with Apache License 2.0 5 votes vote down vote up
/**
 * Creates a new label block.
 *
 * @param text  the text for the label (<code>null</code> not permitted).
 * @param font  the font (<code>null</code> not permitted).
 * @param paint the paint (<code>null</code> not permitted).
 */
public LabelBlock(String text, Font font, Paint paint) {        
    this.text = text;
    this.paint = paint; 
    this.label = TextUtilities.createTextBlock(text, font, this.paint); 
    this.font = font;
    this.toolTipText = null;
    this.urlText = null;
}
 
Example 9
Source File: LabelBlock.java    From ECG-Viewer with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Creates a new label block.
 *
 * @param text  the text for the label (<code>null</code> not permitted).
 * @param font  the font (<code>null</code> not permitted).
 * @param paint the paint (<code>null</code> not permitted).
 */
public LabelBlock(String text, Font font, Paint paint) {
    this.text = text;
    this.paint = paint;
    this.label = TextUtilities.createTextBlock(text, font, this.paint);
    this.font = font;
    this.toolTipText = null;
    this.urlText = null;
    this.contentAlignmentPoint = TextBlockAnchor.CENTER;
    this.textAnchor = RectangleAnchor.CENTER;
}
 
Example 10
Source File: LabelBlock.java    From ccu-historian with GNU General Public License v3.0 5 votes vote down vote up
/**
 * Creates a new label block.
 *
 * @param text  the text for the label (<code>null</code> not permitted).
 * @param font  the font (<code>null</code> not permitted).
 * @param paint the paint (<code>null</code> not permitted).
 */
public LabelBlock(String text, Font font, Paint paint) {
    this.text = text;
    this.paint = paint;
    this.label = TextUtilities.createTextBlock(text, font, this.paint);
    this.font = font;
    this.toolTipText = null;
    this.urlText = null;
    this.contentAlignmentPoint = TextBlockAnchor.CENTER;
    this.textAnchor = RectangleAnchor.CENTER;
}
 
Example 11
Source File: PiePlot.java    From opensim-gui with Apache License 2.0 4 votes vote down vote up
/**
 * Draws the right labels.
 * 
 * @param keys  the keys.
 * @param g2  the graphics device.
 * @param plotArea  the plot area.
 * @param linkArea  the link area.
 * @param maxLabelWidth  the maximum label width.
 * @param state  the state.
 */
protected void drawRightLabels(KeyedValues keys, Graphics2D g2, 
                               Rectangle2D plotArea, Rectangle2D linkArea, 
                               float maxLabelWidth, PiePlotState state) {

    // draw the right labels...
    PieLabelDistributor distributor2 
        = new PieLabelDistributor(keys.getItemCount());
    double lGap = plotArea.getWidth() * this.labelGap;
    double verticalLinkRadius = state.getLinkArea().getHeight() / 2.0;

    for (int i = 0; i < keys.getItemCount(); i++) {
        String label = this.labelGenerator.generateSectionLabel(
                this.dataset, keys.getKey(i));

        if (label != null) {
            TextBlock block = TextUtilities.createTextBlock(label, 
                    this.labelFont, this.labelPaint, maxLabelWidth, 
                    new G2TextMeasurer(g2));
            TextBox labelBox = new TextBox(block);
            labelBox.setBackgroundPaint(this.labelBackgroundPaint);
            labelBox.setOutlinePaint(this.labelOutlinePaint);
            labelBox.setOutlineStroke(this.labelOutlineStroke);
            labelBox.setShadowPaint(this.labelShadowPaint);
            double theta = Math.toRadians(keys.getValue(i).doubleValue());
            double baseY = state.getPieCenterY() 
                          - Math.sin(theta) * verticalLinkRadius;
            double hh = labelBox.getHeight(g2);
            distributor2.addPieLabelRecord(new PieLabelRecord(
                    keys.getKey(i), theta, baseY, labelBox, hh,
                    lGap / 2.0 + lGap / 2.0 * Math.cos(theta), 
                    0.9 + getExplodePercent(this.dataset.getIndex(
                            keys.getKey(i)))));
        }
    }
    distributor2.distributeLabels(plotArea.getMinY(), plotArea.getHeight());
    for (int i = 0; i < distributor2.getItemCount(); i++) {
        drawRightLabel(g2, state, distributor2.getPieLabelRecord(i));
    }

}
 
Example 12
Source File: CategoryAxis.java    From ccu-historian with GNU General Public License v3.0 3 votes vote down vote up
/**
 * Creates a label.
 *
 * @param category  the category.
 * @param width  the available width.
 * @param edge  the edge on which the axis appears.
 * @param g2  the graphics device.
 *
 * @return A label.
 */
protected TextBlock createLabel(Comparable category, float width,
        RectangleEdge edge, Graphics2D g2) {
    TextBlock label = TextUtilities.createTextBlock(category.toString(),
            getTickLabelFont(category), getTickLabelPaint(category), width,
            this.maximumCategoryLabelLines, new G2TextMeasurer(g2));
    return label;
}
 
Example 13
Source File: LabelBlock.java    From ccu-historian with GNU General Public License v3.0 3 votes vote down vote up
/**
 * Sets the paint and regenerates the label.
 *
 * @param paint  the paint (<code>null</code> not permitted).
 *
 * @see #getPaint()
 */
public void setPaint(Paint paint) {
    ParamChecks.nullNotPermitted(paint, "paint");
    this.paint = paint;
    this.label = TextUtilities.createTextBlock(this.text, this.font,
            this.paint);
}
 
Example 14
Source File: LabelBlock.java    From SIMVA-SoS with Apache License 2.0 3 votes vote down vote up
/**
 * Sets the paint and regenerates the label.
 *
 * @param paint  the paint (<code>null</code> not permitted).
 *
 * @see #getPaint()
 */
public void setPaint(Paint paint) {
    ParamChecks.nullNotPermitted(paint, "paint");
    this.paint = paint;
    this.label = TextUtilities.createTextBlock(this.text, this.font,
            this.paint);
}
 
Example 15
Source File: CategoryAxis.java    From SIMVA-SoS with Apache License 2.0 3 votes vote down vote up
/**
 * Creates a label.
 *
 * @param category  the category.
 * @param width  the available width.
 * @param edge  the edge on which the axis appears.
 * @param g2  the graphics device.
 *
 * @return A label.
 */
protected TextBlock createLabel(Comparable category, float width,
        RectangleEdge edge, Graphics2D g2) {
    TextBlock label = TextUtilities.createTextBlock(category.toString(),
            getTickLabelFont(category), getTickLabelPaint(category), width,
            this.maximumCategoryLabelLines, new G2TextMeasurer(g2));
    return label;
}
 
Example 16
Source File: CategoryAxis.java    From ECG-Viewer with GNU General Public License v2.0 3 votes vote down vote up
/**
 * Creates a label.
 *
 * @param category  the category.
 * @param width  the available width.
 * @param edge  the edge on which the axis appears.
 * @param g2  the graphics device.
 *
 * @return A label.
 */
protected TextBlock createLabel(Comparable category, float width,
        RectangleEdge edge, Graphics2D g2) {
    TextBlock label = TextUtilities.createTextBlock(category.toString(),
            getTickLabelFont(category), getTickLabelPaint(category), width,
            this.maximumCategoryLabelLines, new G2TextMeasurer(g2));
    return label;
}
 
Example 17
Source File: CategoryAxis.java    From opensim-gui with Apache License 2.0 3 votes vote down vote up
/**
 * Creates a label.
 *
 * @param category  the category.
 * @param width  the available width. 
 * @param edge  the edge on which the axis appears.
 * @param g2  the graphics device.
 *
 * @return A label.
 */
protected TextBlock createLabel(Comparable category, float width, 
                                RectangleEdge edge, Graphics2D g2) {
    TextBlock label = TextUtilities.createTextBlock(
        category.toString(), getTickLabelFont(category), 
        getTickLabelPaint(category), width, this.maximumCategoryLabelLines, 
        new G2TextMeasurer(g2));  
    return label; 
}
 
Example 18
Source File: LabelBlock.java    From ccu-historian with GNU General Public License v3.0 2 votes vote down vote up
/**
 * Sets the font and regenerates the label.
 *
 * @param font  the font (<code>null</code> not permitted).
 *
 * @see #getFont()
 */
public void setFont(Font font) {
    ParamChecks.nullNotPermitted(font, "font");
    this.font = font;
    this.label = TextUtilities.createTextBlock(this.text, font, this.paint);
}
 
Example 19
Source File: LabelBlock.java    From SIMVA-SoS with Apache License 2.0 2 votes vote down vote up
/**
 * Sets the font and regenerates the label.
 *
 * @param font  the font (<code>null</code> not permitted).
 *
 * @see #getFont()
 */
public void setFont(Font font) {
    ParamChecks.nullNotPermitted(font, "font");
    this.font = font;
    this.label = TextUtilities.createTextBlock(this.text, font, this.paint);
}
 
Example 20
Source File: LabelBlock.java    From ECG-Viewer with GNU General Public License v2.0 2 votes vote down vote up
/**
 * Sets the font and regenerates the label.
 *
 * @param font  the font (<code>null</code> not permitted).
 *
 * @see #getFont()
 */
public void setFont(Font font) {
    ParamChecks.nullNotPermitted(font, "font");
    this.font = font;
    this.label = TextUtilities.createTextBlock(this.text, font, this.paint);
}