TextPropertiesManager
from panda3d.core import TextPropertiesManager
- class TextPropertiesManager
Bases:
This defines all of the
TextProperties
structures that might be referenced by name from an embedded text string.A text string, as rendered by a
TextNode
, can contain embedded references to one of theTextProperties
defined here, by enclosing the name between 1 (ASCII 0x01) characters; this causes a “push” to the named state. All text following the closing 1 character will then be rendered in the new state. The next 2 (ASCII 0x02) character will then restore the previous state for subsequent text.For instance, “x1up1n2 + y” indicates that the character “x” will be rendered in the normal state, the character “n” will be rendered in the “up” state, and then ” + y” will be rendered in the normal state again.
This can also be used to define arbitrary models that can serve as embedded graphic images in a text paragraph. This works similarly; the convention is to create a
TextGraphic
that describes the graphic image, and then associate it here via thesetGraphic()
call. Then “5name5” will embed the named graphic.Inheritance diagram
- clearGraphic(name: str)
Removes the named
TextGraphic
structure from the manager.
- clearProperties(name: str)
Removes the named
TextProperties
structure from the manager.
- static getGlobalPtr() TextPropertiesManager
Returns the pointer to the global
TextPropertiesManager
object.
- getGraphic(name: str) TextGraphic
Returns the
TextGraphic
associated with the indicated name. If there was not previously aTextGraphic
associated with this name, a warning is printed and then a defaultTextGraphic
structure is associated with the name, and returned.Call
hasGraphic()
instead to check whether a particular name has been defined.
- getProperties(name: str) TextProperties
Returns the
TextProperties
associated with the indicated name. If there was not previously aTextProperties
associated with this name, a warning is printed and then a defaultTextProperties
structure is associated with the name, and returned.Call
hasProperties()
instead to check whether a particular name has been defined.
- hasGraphic(name: str) bool
Returns true if a
TextGraphic
structure has been associated with the indicated name, false otherwise. Normally this meanssetGraphic()
has been called with this name, but becausegetGraphic()
will implicitly create a defaultTextGraphic
structure, it may also mean simply thatgetGraphic()
has been called with the indicated name.
- hasProperties(name: str) bool
Returns true if a
TextProperties
structure has been associated with the indicated name, false otherwise. Normally this meanssetProperties()
has been called with this name, but becausegetProperties()
will implicitly create a defaultTextProperties
structure, it may also mean simply thatgetProperties()
has been called with the indicated name.
- setGraphic(name: str, model: NodePath)
This flavor of
setGraphic()
implicitly creates a frame for the model using the model’s actual computed bounding volume, as derived fromNodePath.calcTightBounds()
. Create aTextGraphic
object first if you want to have explicit control of the frame.
- setGraphic(name: str, graphic: TextGraphic)
Defines the
TextGraphic
associated with the indicated name. When the name is subsequently encountered in text embedded between 5 characters in aTextNode
string, the specified graphic will be embedded in the text at that point.If there was already a
TextGraphic
structure associated with this name, it is quietly replaced with the new definition.
- setProperties(name: str, properties: TextProperties)
Defines the
TextProperties
associated with the indicated name. When the name is subsequently encountered in text embedded between 1 characters in aTextNode
string, the following text will be rendered with these properties.If there was already a
TextProperties
structure associated with this name, it is quietly replaced with the new definition.