Class pyglet.text.DocumentLabel

layout.TextLayout --+
                    |
                   DocumentLabel
Known Subclasses:
HTMLLabel, Label

Base label class.

A label is a layout that exposes convenience methods for manipulating the associated document.

Methods

  __init__(self, document=None, x=0, y=0, width=None, height=None, anchor_x='left', anchor_y='baseline', multiline=False, dpi=None, batch=None, group=None)
Create a label for a given document.
object get_style(self, name)
Get a document style value by name.
  set_style(self, name, value)
Set a document style value by name over the whole document.
  begin_update(self)
Indicate that a number of changes to the layout or document are about to occur.
(Inherited from pyglet.text.layout.TextLayout)
  delete(self)
Remove this layout from its batch.
(Inherited from pyglet.text.layout.TextLayout)
  draw(self)
Draw this text layout.
(Inherited from pyglet.text.layout.TextLayout)
  end_update(self)
Perform pending layout changes since begin_update.
(Inherited from pyglet.text.layout.TextLayout)
  on_delete_text(self, start, end)
Event handler for AbstractDocument.on_delete_text.
(Inherited from pyglet.text.layout.TextLayout)
  on_insert_text(self, start, text)
Event handler for AbstractDocument.on_insert_text.
(Inherited from pyglet.text.layout.TextLayout)
  on_style_text(self, start, end, attributes)
Event handler for AbstractDocument.on_style_text.
(Inherited from pyglet.text.layout.TextLayout)

Properties

str text
The text of the label.
(int, int, int, int) color
Text color.
str or list font_name
Font family name.
float font_size
Font size, in points.
bool bold
Bold font style.
bool italic
Italic font style.
str anchor_x
Horizontal anchor alignment.
(Inherited from pyglet.text.layout.TextLayout)
str anchor_y
Vertical anchor alignment.
(Inherited from pyglet.text.layout.TextLayout)
str content_valign
Vertical alignment of content within larger layout box.
(Inherited from pyglet.text.layout.TextLayout)
  document (Inherited from pyglet.text.layout.TextLayout)
float dpi
Get DPI used by this layout.
(Inherited from pyglet.text.layout.TextLayout)
int height
Height of the layout.
(Inherited from pyglet.text.layout.TextLayout)
bool multiline
Set if multiline layout is enabled.
(Inherited from pyglet.text.layout.TextLayout)
int width
Width of the layout.
(Inherited from pyglet.text.layout.TextLayout)
int x
X coordinate of the layout.
(Inherited from pyglet.text.layout.TextLayout)
int y
Y coordinate of the layout.
(Inherited from pyglet.text.layout.TextLayout)

Instance Variables

Group background_group = OrderedGroup(0)
Rendering group for background color.
(Inherited from pyglet.text.layout.TextLayout)
int content_height
Calculated height of the text in the layout.
(Inherited from pyglet.text.layout.TextLayout)
int content_width
Calculated width of the text in the layout.
(Inherited from pyglet.text.layout.TextLayout)
Group foreground_decoration_group = TextLayoutForegroundDecorationGr...
Rendering group for glyph underlines.
(Inherited from pyglet.text.layout.TextLayout)
Group foreground_group = TextLayoutForegroundGroup(1)
Rendering group for glyphs.
(Inherited from pyglet.text.layout.TextLayout)
Group top_group = <pyglet.text.layout.TextLayoutGroup object at 0xfa...
Top-level rendering group.
(Inherited from pyglet.text.layout.TextLayout)

Method Details

__init__

(Constructor) __init__(self, document=None, x=0, y=0, width=None, height=None, anchor_x='left', anchor_y='baseline', multiline=False, dpi=None, batch=None, group=None)
Create a label for a given document.
Parameters:
document : AbstractDocument
Document to attach to the layout.
x : int
X coordinate of the label.
y : int
Y coordinate of the label.
width : int
Width of the label in pixels, or None
height : int
Height of the label in pixels, or None
anchor_x : str
Anchor point of the X coordinate: one of "left", "center" or "right".
anchor_y : str
Anchor point of the Y coordinate: one of "bottom", "baseline", "center" or "top".
multiline : bool
If True, the label will be word-wrapped and accept newline characters. You must also set the width of the label.
dpi : float
Resolution of the fonts in this layout. Defaults to 96.
batch : Batch
Optional graphics batch to add the label to.
group : Group
Optional graphics group to use.
Overrides:
layout.TextLayout.__init__

get_style

get_style(self, name)

Get a document style value by name.

If the document has more than one value of the named style, pyglet.text.document.STYLE_INDETERMINATE is returned.

Parameters:
name : str
Style name to query. See documentation for pyglet.text.layout for known style names.
Returns: object

set_style

set_style(self, name, value)
Set a document style value by name over the whole document.
Parameters:
name : str
Name of the style to set. See documentation for pyglet.text.layout for known style names.
value : object
Value of the style.

Property Details

text

The text of the label.
Type:
str

color

Text color.

Color is a 4-tuple of RGBA components, each in range [0, 255].

Type:
(int, int, int, int)

font_name

Font family name.

The font name, as passed to pyglet.font.load. A list of names can optionally be given: the first matching font will be used.

Type:
str or list

font_size

Font size, in points.
Type:
float

bold

Bold font style.
Type:
bool

italic

Italic font style.
Type:
bool