XmlFontsFile.cpp 799 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #include "core/Logger.h"
  2. #include "core/XmlFontFile.h"
  3. #include "core/XmlFontsFile.h"
  4. XmlFontsFile::XmlFontsFile( const Ogre::String& file ):
  5. XmlFile( file )
  6. {
  7. }
  8. XmlFontsFile::~XmlFontsFile()
  9. {
  10. }
  11. void
  12. XmlFontsFile::LoadFonts()
  13. {
  14. TiXmlNode* node = m_File.RootElement();
  15. if( node == NULL || node->ValueStr() != "fonts" )
  16. {
  17. LOG_ERROR( "UI XML Manager: " + m_File.ValueStr() + " is not a valid fonts file! No <fonts> in root." );
  18. return;
  19. }
  20. node = node->FirstChild();
  21. while( node != NULL )
  22. {
  23. if( node->Type() == TiXmlNode::TINYXML_ELEMENT && node->ValueStr() == "font" )
  24. {
  25. XmlFontFile font( "./data/" + GetString( node, "file_name" ) );
  26. font.LoadFont();
  27. }
  28. node = node->NextSibling();
  29. }
  30. }