Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/new_class_id/src/lib/graphics/text_engine/resource_font.cc @ 9863

Last change on this file since 9863 was 9863, checked in by bensch, 18 years ago

less debug output

File size: 1.6 KB
RevLine 
[9781]1
[9837]2#include "resource_font.h"
[9823]3#include "substring.h"
4#include "multi_type.h"
[9790]5#include "debug.h"
[9781]6
7
[9854]8ResourceFont::ResourceFont(const std::string& fontName, unsigned int renderSize, const Resources::KeepLevel& keepLevel)
[9847]9  : Font(), Resource(&ResourceFont::type)
[9784]10{
[9839]11  assert(!fontName.empty());
12  Resources::StorePointer* ptr = this->acquireResource(fontName + ',' + MultiType((int)renderSize).getString());
[9781]13
[9784]14  if (ptr)
[9786]15  {
[9839]16    PRINTF(5)("FOUND FONT: %s\n", fontName.c_str());
17    this->Font::acquireData(static_cast<ResourceFont::FontResourcePointer*>(ptr)->ptr());
[9786]18  }
[9784]19  else
20  {
[9839]21    PRINTF(5)("NOT FOUND FONT: %s\n", fontName.c_str());
[9847]22    std::string fileName = this->Resource::locateFile(fontName);
[9839]23
24    this->Font::loadFontFromTTF(fileName, renderSize);
[9854]25    this->Resource::addResource(new ResourceFont::FontResourcePointer(fontName + ',' + MultiType((int)renderSize).getString(), keepLevel, this->Font::dataPointer()));
[9784]26  }
27}
28
[9854]29ResourceFont ResourceFont::createFromString(const std::string& loadString, const Resources::KeepLevel& keepLevel)
[9823]30{
31  SubString loadValues(loadString, ',');
[9839]32  std::string fontName;
33  unsigned int renderSize = 20;
[9823]34  if (loadValues.size() > 0)
[9839]35    fontName = loadValues[0];
[9823]36  if (loadValues.size() > 1)
[9839]37    renderSize = (unsigned int)MultiType(loadValues[2]).getInt();
[9784]38
[9854]39  return ResourceFont(fontName, renderSize, keepLevel);
[9823]40}
[9784]41
42
43
[9837]44Resources::tType<ResourceFont> ResourceFont::type("Font");
[9784]45
46
[9823]47
48
49
[9837]50ResourceFont::FontResourcePointer::FontResourcePointer(const std::string& loadString, const Resources::KeepLevel& keepLevel, const FontData::Pointer& data)
[9791]51    : Resources::StorePointer(loadString, keepLevel) , pointer(data)
[9785]52{}
[9781]53
54
Note: See TracBrowser for help on using the repository browser.