#include <textFont.h>
Inheritance diagram for TextFont:
Public Member Functions | |
TextFont () | |
virtual | ~TextFont () |
bool | is_valid () const |
Returns true if the font is valid and ready to use, false otherwise. | |
float | get_line_height () const |
Returns the number of units high each line of text is. | |
void | set_line_height (float line_height) |
Changes the number of units high each line of text is. | |
float | get_space_advance () const |
Returns the number of units wide a space is. | |
void | set_space_advance (float space_advance) |
Changes the number of units wide a space is. | |
float | calc_width (int character) |
Returns the width of a single character of the font, or 0.0 if the character is not known. | |
float | calc_width (const string &line) |
Returns the width of a line of text of arbitrary characters. | |
string | wordwrap_to (const string &text, float wordwrap_width, bool preserve_trailing_whitespace) |
Inserts newlines into the given text at the appropriate places in order to make each line be the longest possible line that is not longer than wordwrap_width (and does not break any words, if possible). | |
virtual void | write (ostream &out, int indent_level) const |
float | calc_width (const wstring &line) |
Returns the width of a line of text of arbitrary characters. | |
wstring | wordwrap_to (const wstring &text, float wordwrap_width, bool preserve_trailing_whitespace) |
Inserts newlines into the given text at the appropriate places in order to make each line be the longest possible line that is not longer than wordwrap_width (and does not break any words, if possible). | |
virtual bool | get_glyph (int character, const TextGlyph *&glyph)=0 |
virtual TypeHandle | get_type () const |
virtual TypeHandle | force_init_type () |
int | get_type_index () const |
Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. | |
bool | is_of_type (TypeHandle handle) const |
Returns true if the current object is or derives from the indicated type. | |
bool | is_exact_type (TypeHandle handle) const |
Returns true if the current object is the indicated type exactly. | |
int | get_ref_count () const |
Returns the current reference count. | |
int | ref () const |
Explicitly increments the reference count. | |
int | unref () const |
Explicitly decrements the reference count. | |
void | test_ref_count_integrity () const |
Does some easy checks to make sure that the reference count isn't completely bogus. | |
void | set_name (const string &name) |
void | clear_name () |
Resets the Namable's name to empty. | |
bool | has_name () const |
Returns true if the Namable has a nonempty name set, false if the name is empty. | |
const string & | get_name () const |
void | output (ostream &out) const |
Outputs the Namable. | |
Static Public Member Functions | |
TypeHandle | get_class_type () |
void | init_type () |
Protected Attributes | |
bool | _is_valid |
float | _line_height |
float | _space_advance |
Static Private Attributes | |
TypeHandle | _type_handle |
a set of glyphs that may be assembled together by a TextNode to represent a string of text.
This is just an abstract interface; see StaticTextFont or DynamicTextFont for an actual implementation.
Definition at line 54 of file textFont.h.
|
Definition at line 66 of file textFont.cxx. References _space_advance. |
|
Definition at line 80 of file textFont.cxx. References NULL. |
|
Returns the width of a line of text of arbitrary characters. The line should not include the newline character. Definition at line 289 of file textFont.cxx. References calc_width(), isspacew(), nassertr, size_t, width, and wstring. |
|
Returns the width of a line of text of arbitrary characters. The line should not include the newline character. Definition at line 123 of file textFont.cxx. References calc_width(), and size_t. |
|
Returns the width of a single character of the font, or 0.0 if the character is not known.
Definition at line 94 of file textFont.cxx. References width. Referenced by calc_width(), and write(). |
|
Resets the Namable's name to empty.
Definition at line 82 of file namable.I. References Namable::_name, and INLINE. |
|
Reimplemented from TypedReferenceCount. Definition at line 99 of file textFont.h. |
|
Reimplemented from Namable. Definition at line 88 of file textFont.h. |
|
Implemented in StaticTextFont. Referenced by TextNode::tack_on_accent(). |
|
Returns the number of units high each line of text is.
Definition at line 49 of file textFont.I. References _line_height. |
|
|
Returns the current reference count.
Definition at line 183 of file referenceCount.I. Referenced by RenderState::determine_bin_index(), RenderEffects::determine_show_bounds(), FontPool::ns_garbage_collect(), TexturePool::ns_garbage_collect(), MaterialPool::ns_get_material(), and TexturePool::ns_release_texture(). |
|
Returns the number of units wide a space is.
Definition at line 77 of file textFont.I. |
|
Reimplemented from TypedReferenceCount. Definition at line 96 of file textFont.h. |
|
Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. This is equivalent to get_type().get_index(). Definition at line 71 of file typedObject.I. References TypeHandle::get_name(), TypedObject::get_type(), and INLINE. |
|
Returns true if the Namable has a nonempty name set, false if the name is empty.
Definition at line 97 of file namable.I. References Namable::get_name(), and INLINE. Referenced by EggGroupUniquifier::EggGroupUniquifier(), Texture::read(), and Texture::Texture(). |
|
Reimplemented from Namable. Definition at line 91 of file textFont.h. |
|
Returns true if the current object is the indicated type exactly.
Definition at line 101 of file typedObject.I. Referenced by PT(), and CollisionNode::xform(). |
|
|
Returns true if the font is valid and ready to use, false otherwise.
Definition at line 34 of file textFont.I. References _line_height, and INLINE. |
|
Outputs the Namable. This function simply writes the name to the output stream; most Namable derivatives will probably redefine this. Reimplemented in BuilderBucket, AnimBundle, AnimChannelBase, AnimChannelFixed< SwitchType >, AnimGroup, PartBundle, CollisionNode, ButtonNode, HermiteCurve, RopeNode, Fog, GeomNode, LensNode, LightLensNode, LightNode, LODNode, PandaNode, PlaneNode, MouseWatcher, and MouseWatcherRegion. |
|
Explicitly increments the reference count. User code should avoid using ref() and unref() directly, which can result in missed reference counts. Instead, let a PointerTo object manage the reference counting automatically. This function is const, even though it changes the object, because generally fiddling with an object's reference count isn't considered part of fiddling with the object. An object might be const in other ways, but we still need to accurately count the number of references to it. The return value is the new reference count. Definition at line 225 of file referenceCount.I. Referenced by ClientDevice::ClientDevice(), EggGroupNode::find_textures(), EggGroupNode::r_apply_texmats(), EggGroupNode::r_flatten_transforms(), and EggGroupNode::reverse_vertex_ordering(). |
|
Changes the number of units high each line of text is.
Definition at line 64 of file textFont.I. References _space_advance, and INLINE. |
|
Definition at line 69 of file namable.I. References Namable::_name. Referenced by BuilderBucket::BuilderBucket(), SceneGraphReducer::do_flatten_siblings(), Texture::read(), PandaNode::reparent(), and Texture::Texture(). |
|
Changes the number of units wide a space is.
Definition at line 90 of file textFont.I. |
|
Does some easy checks to make sure that the reference count isn't completely bogus.
Definition at line 328 of file referenceCount.I. References INLINE. Referenced by EggNode::determine_bin(), and ReferenceCount::~ReferenceCount(). |
|
Explicitly decrements the reference count. Note that the object will not be implicitly deleted by unref() simply because the reference count drops to zero. (Having a member function delete itself is problematic; plus, we don't have a virtual destructor anyway.) However, see the helper function unref_delete(). User code should avoid using ref() and unref() directly, which can result in missed reference counts. Instead, let a PointerTo object manage the reference counting automatically. This function is const, even though it changes the object, because generally fiddling with an object's reference count isn't considered part of fiddling with the object. An object might be const in other ways, but we still need to accurately count the number of references to it. The return value is the new reference count. Definition at line 293 of file referenceCount.I. References INLINE. Referenced by RenderState::determine_bin_index(), and RenderEffects::determine_show_bounds(). |
|
Inserts newlines into the given text at the appropriate places in order to make each line be the longest possible line that is not longer than wordwrap_width (and does not break any words, if possible). Returns the new string. Definition at line 317 of file textFont.cxx. References isspacew(). |
|
Inserts newlines into the given text at the appropriate places in order to make each line be the longest possible line that is not longer than wordwrap_width (and does not break any words, if possible). Returns the new string. Definition at line 151 of file textFont.cxx. |
|
Reimplemented in StaticTextFont. Definition at line 271 of file textFont.cxx. References calc_width(), isspacew(), size_t, and wstring. |
|
Definition at line 83 of file textFont.h. |
|
Definition at line 84 of file textFont.h. Referenced by get_line_height(), and is_valid(). |
|
Definition at line 85 of file textFont.h. Referenced by set_line_height(), and TextFont(). |
|
Reimplemented from Namable. Definition at line 26 of file textFont.cxx. |