gnu.java.text

Class AttributedFormatBuffer

Implemented Interfaces:
FormatBuffer

public class AttributedFormatBuffer
extends Object
implements FormatBuffer

This class is an implementation of a FormatBuffer with attributes. Note that this class is not thread-safe; external synchronisation should be used if an instance is to be accessed from multiple threads.

Constructor Summary

AttributedFormatBuffer()
AttributedFormatBuffer(CPStringBuilder buffer)
This constructor accepts a StringBuffer.
AttributedFormatBuffer(int prebuffer)

Method Summary

void
append(char c)
This method appends a simple char to the buffer.
void
append(char c, Attribute attr)
This method appends a simple character to the buffer.
void
append(String s)
This method appends a simple string to the buffer.
void
append(String s, Attribute attr)
This method appends a simple string to the buffer.
void
append(String s, int[] ranges, List> attrs)
This method appends a simple string to the buffer.
void
clear()
This method resets completely the buffer.
void
cutTail(int length)
This method cuts the last characters of the buffer.
List>
getAttributes()
This method returns the array containing the map on the attributes.
CPStringBuilder
getBuffer()
This method returns the internal CPStringBuilder describing the attributed string.
Attribute
getDefaultAttribute()
This method returns the current default attribute for the buffer.
int[]
getRanges()
This method returns the ranges for the attributes.
int
length()
This method returns the number of character in the buffer.
void
setDefaultAttribute(Attribute attr)
This method changes the current default attribute for the next string or character which will be appended to the buffer.
void
sync()
This method synchronizes the state of the attribute array.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

AttributedFormatBuffer

public AttributedFormatBuffer()

AttributedFormatBuffer

public AttributedFormatBuffer(CPStringBuilder buffer)
This constructor accepts a StringBuffer. If the buffer contains already some characters they will not be attributed.

AttributedFormatBuffer

public AttributedFormatBuffer(int prebuffer)

Method Details

append

public void append(char c)
This method appends a simple char to the buffer. This part of the buffer will be attributed using the default attribute.
Specified by:
append in interface FormatBuffer
Parameters:
c - The character to append to the buffer.

append

public void append(char c,
                   Attribute attr)
This method appends a simple character to the buffer. This part of the buffer will have the specified attribute (and only this one). The default attribute may be changed after calling this method.
Specified by:
append in interface FormatBuffer
Parameters:
c - The character to append to the buffer.
attr - Attribute to use for the character in the buffer.

append

public void append(String s)
This method appends a simple string to the buffer. This part of the buffer will be attributed using the default attribute.
Specified by:
append in interface FormatBuffer
Parameters:
s - The string to append to the buffer.

append

public void append(String s,
                   Attribute attr)
This method appends a simple string to the buffer. This part of the buffer will have the specified attribute (and only this one). The default attribute may be changed after calling this method.
Specified by:
append in interface FormatBuffer
Parameters:
s - The string to append to the buffer.
attr - Attribute to use for the string in the buffer.

append

public void append(String s,
                   int[] ranges,
                   List> attrs)
This method appends a simple string to the buffer. This part of the buffer will be attributed using the specified ranges and attributes. To have an example on how to specify ranges see FormatCharacterIterator.
Specified by:
append in interface FormatBuffer
Parameters:
s - The string to append to the buffer.
ranges - The ranges describing how the attributes should be applied to the string.
attrs - The attributes of the string in the buffer.

clear

public void clear()
This method resets completely the buffer.
Specified by:
clear in interface FormatBuffer

cutTail

public void cutTail(int length)
This method cuts the last characters of the buffer. The number of characters to cut is given by "length".
Specified by:
cutTail in interface FormatBuffer
Parameters:
length - Number of characters to cut at the end of the buffer.

getAttributes

public List> getAttributes()
This method returns the array containing the map on the attributes.
Returns:
A List of Maps containing the attributes.

getBuffer

public CPStringBuilder getBuffer()
This method returns the internal CPStringBuilder describing the attributed string.
Returns:
An instance of CPStringBuilder which contains the string.

getDefaultAttribute

public Attribute getDefaultAttribute()
This method returns the current default attribute for the buffer.
Specified by:
getDefaultAttribute in interface FormatBuffer
Returns:
The default attribute for the buffer.

getRanges

public int[] getRanges()
This method returns the ranges for the attributes.
Returns:
An array of int describing the ranges.

length

public int length()
This method returns the number of character in the buffer.
Specified by:
length in interface FormatBuffer
Returns:
The number of character in the buffer.

setDefaultAttribute

public void setDefaultAttribute(Attribute attr)
This method changes the current default attribute for the next string or character which will be appended to the buffer.
Specified by:
setDefaultAttribute in interface FormatBuffer
Parameters:
attr - The attribute which will be used by default.

sync

public void sync()
This method synchronizes the state of the attribute array. After calling it you may call getDefaultAttribute().

AttributedFormatBuffer.java -- Implements an attributed FormatBuffer. Copyright (C) 2004, 2012 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.