Crazy Eddies GUI System  0.7.1
Public Types | Public Member Functions | Protected Member Functions | List of all members
CEGUI::FontManager Class Reference

Class providing a shared library of Font objects to the system. More...

+ Inheritance diagram for CEGUI::FontManager:
+ Collaboration diagram for CEGUI::FontManager:

Public Types

typedef ConstBaseIterator
< ObjectRegistry
FontIterator
 ConstBaseIterator type definition.
 

Public Member Functions

 FontManager ()
 Constructor.
 
 ~FontManager ()
 Destructor.
 
FontcreateFreeTypeFont (const String &font_name, const float point_size, const bool anti_aliased, const String &font_filename, const String &resource_group="", const bool auto_scaled=false, const float native_horz_res=640.0f, const float native_vert_res=480.0f, XMLResourceExistsAction action=XREA_RETURN)
 Creates a FreeType type font. More...
 
FontcreatePixmapFont (const String &font_name, const String &imageset_filename, const String &resource_group="", const bool auto_scaled=false, const float native_horz_res=640.0f, const float native_vert_res=480.0f, XMLResourceExistsAction action=XREA_RETURN)
 Creates a Pixmap type font. More...
 
void notifyDisplaySizeChanged (const Size &size)
 Notify the FontManager that display size may have changed. More...
 
void writeFontToStream (const String &name, OutStream &out_stream) const
 Writes a full XML font file for the specified Font to the given OutStream. More...
 
FontIterator getIterator () const
 Return a FontManager::FontIterator object to iterate over the available Font objects.
 
- Public Member Functions inherited from CEGUI::NamedXMLResourceManager< Font, Font_xmlHandler >
 NamedXMLResourceManager (const String &resource_type)
 Constructor. More...
 
virtual ~NamedXMLResourceManager ()
 Destructor.
 
Fontcreate (const String &xml_filename, const String &resource_group="", XMLResourceExistsAction action=XREA_RETURN)
 Creates a new T object from an XML file and adds it to the collection. More...
 
void destroy (const String &object_name)
 Destroy the object named object_name, or do nothing if such an object does not exist in the collection. More...
 
void destroy (const Font &object)
 Destroy the object object, or do nothing if such an object does not exist in the collection. More...
 
void destroyAll ()
 Destroy all objects.
 
Fontget (const String &object_name) const
 Return a reference to the object named object_name. More...
 
bool isDefined (const String &object_name) const
 Return whether an object named object_name exists.
 
void createAll (const String &pattern, const String &resource_group)
 Create a new T object from files with names matching pattern in resource_group.
 

Protected Member Functions

void doPostObjectAdditionAction (Font &object)
 Function called each time a new object is added to the collection.
 
- Protected Member Functions inherited from CEGUI::NamedXMLResourceManager< Font, Font_xmlHandler >
void destroyObject (typename ObjectRegistry::iterator ob)
 implementation of object destruction.
 
FontdoExistingObjectAction (const String object_name, Font *object, const XMLResourceExistsAction action)
 function to enforce XMLResourceExistsAction policy.
 

Additional Inherited Members

- Static Public Member Functions inherited from CEGUI::Singleton< FontManager >
static FontManagergetSingleton (void)
 
static FontManagergetSingletonPtr (void)
 
- Static Public Attributes inherited from CEGUI::ResourceEventSet
static const String EventNamespace
 Namespace name for all resource managers.
 
static const String EventResourceCreated
 Name of event fired when a resource is created by this manager.
 
static const String EventResourceDestroyed
 Name of event fired when a resource is destroyed by this manager.
 
static const String EventResourceReplaced
 Name of event fired when a resource is replaced by this manager.
 
- Protected Types inherited from CEGUI::NamedXMLResourceManager< Font, Font_xmlHandler >
typedef std::map< String, Font
*, String::FastLessCompare
ObjectRegistry
 type of collection used to store and manage objects
 
- Protected Attributes inherited from CEGUI::NamedXMLResourceManager< Font, Font_xmlHandler >
const String d_resourceType
 String holding the text for the resource type managed.
 
ObjectRegistry d_objects
 the collection of objects
 
- Static Protected Attributes inherited from CEGUI::Singleton< FontManager >
static FontManagerms_Singleton
 

Detailed Description

Class providing a shared library of Font objects to the system.

The FontManager is used to create, access, and destroy Font objects. The idea is that the FontManager will function as a central repository for Font objects used within the GUI system, and that those Font objects can be accessed, via a unique name, by any interested party within the system.

Member Function Documentation

Font& CEGUI::FontManager::createFreeTypeFont ( const String font_name,
const float  point_size,
const bool  anti_aliased,
const String font_filename,
const String resource_group = "",
const bool  auto_scaled = false,
const float  native_horz_res = 640.0f,
const float  native_vert_res = 480.0f,
XMLResourceExistsAction  action = XREA_RETURN 
)

Creates a FreeType type font.

Parameters
font_nameThe name that the font will use within the CEGUI system.
point_sizeSpecifies the point size that the font is to be rendered at.
anti_aliasedSpecifies whether the font should be rendered using anti aliasing.
font_filenameThe filename of an font file that will be used as the source for glyph images for this font.
resource_groupThe resource group identifier to use when loading the font file specified by font_filename.
auto_scaledSpecifies whether the font imagery should be automatically scaled to maintain the same physical size (which is calculated by using the native resolution setting).
native_horz_resThe horizontal native resolution value. This is only significant when auto scaling is enabled.
native_vert_resThe vertical native resolution value. This is only significant when auto scaling is enabled.
actionOne of the XMLResourceExistsAction enumerated values indicating what action should be taken when a Font with the specified name already exists.
Returns
Reference to the newly create Font object.
Font& CEGUI::FontManager::createPixmapFont ( const String font_name,
const String imageset_filename,
const String resource_group = "",
const bool  auto_scaled = false,
const float  native_horz_res = 640.0f,
const float  native_vert_res = 480.0f,
XMLResourceExistsAction  action = XREA_RETURN 
)

Creates a Pixmap type font.

Parameters
font_nameThe name that the font will use within the CEGUI system.
imageset_filenameThe filename of an imageset to load that will be used as the source for glyph images for this font. If resource_group is the special value of "*", this parameter may instead refer to the name of an already loaded Imagset.
resource_groupThe resource group identifier to use when loading the imageset file specified by imageset_filename. If this group is set to the special value of "*", then imageset_filename instead will refer to the name of an existing Imageset.
auto_scaledSpecifies whether the font imagery should be automatically scaled to maintain the same physical size (which is calculated by using the native resolution setting).
native_horz_resThe horizontal native resolution value. This is only significant when auto scaling is enabled.
native_vert_resThe vertical native resolution value. This is only significant when auto scaling is enabled.
actionOne of the XMLResourceExistsAction enumerated values indicating what action should be taken when a Font with the specified name already exists.
Returns
Reference to the newly create Font object.
void CEGUI::FontManager::notifyDisplaySizeChanged ( const Size size)

Notify the FontManager that display size may have changed.

Parameters
sizeSize object describing the display resolution
void CEGUI::FontManager::writeFontToStream ( const String name,
OutStream out_stream 
) const

Writes a full XML font file for the specified Font to the given OutStream.

Parameters
nameString holding the name of the Font to be written to the stream.
out_streamOutStream (std::ostream based) object where data is to be sent.