UiFont.cpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. #include "core/Logger.h"
  2. #include "core/UiFont.h"
  3. UiFont::UiFont(const Ogre::String& name):
  4. m_Name(name),
  5. m_ImageName(""),
  6. m_ImageWidth(0),
  7. m_ImageHeight(0),
  8. m_Height(0)
  9. {
  10. }
  11. UiFont::~UiFont()
  12. {
  13. }
  14. const Ogre::String&
  15. UiFont::GetName() const
  16. {
  17. return m_Name;
  18. }
  19. void
  20. UiFont::SetImage(const Ogre::String& image, const int width, const int height)
  21. {
  22. m_ImageName = image;
  23. m_ImageWidth = width;
  24. m_ImageHeight = height;
  25. }
  26. const Ogre::String&
  27. UiFont::GetImageName() const
  28. {
  29. return m_ImageName;
  30. }
  31. int
  32. UiFont::GetImageWidth() const
  33. {
  34. return m_ImageWidth;
  35. }
  36. int
  37. UiFont::GetImageHeight() const
  38. {
  39. return m_ImageHeight;
  40. }
  41. void
  42. UiFont::SetHeight(const int height)
  43. {
  44. m_Height = height;
  45. }
  46. int
  47. UiFont::GetHeight() const
  48. {
  49. return m_Height;
  50. }
  51. void
  52. UiFont::AddCharData(const UiCharData& data)
  53. {
  54. m_CharData.push_back(data);
  55. }
  56. UiCharData
  57. UiFont::GetCharData(const int char_code) const
  58. {
  59. for(size_t i = 0; i < m_CharData.size(); ++i)
  60. {
  61. if(m_CharData[i].char_code == char_code)
  62. {
  63. return m_CharData[i];
  64. }
  65. }
  66. LOG_ERROR("There is no char with char code " + Ogre::StringConverter::toString(char_code) + " in font " + m_Name + ".");
  67. UiCharData ret = {};
  68. return ret;
  69. }