CmTestTextSprite.cpp 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #include "CmTestTextSprite.h"
  2. #include "CmSceneObject.h"
  3. #include "BsRenderable.h"
  4. #include "CmMesh.h"
  5. #include "CmVector2.h"
  6. #include "BsTextSprite.h"
  7. #include "CmFont.h"
  8. #include "CmMaterial.h"
  9. #include "BsGUILabel.h"
  10. #include "BsGUIDropDownList.h"
  11. #include "BsGUISkin.h"
  12. #include "BsOverlayManager.h"
  13. #include "BsSpriteTexture.h"
  14. #include "BsEngineGUI.h"
  15. #include "BsGUITexture.h"
  16. #include "BsGUIArea.h"
  17. #include "BsGUILayout.h"
  18. #include "BsGUISpace.h"
  19. #include "BsGUIViewport.h"
  20. #include "BsCamera.h"
  21. #include "CmInput.h"
  22. #include "CmPlatform.h"
  23. using namespace BansheeEngine;
  24. namespace CamelotFramework
  25. {
  26. TestTextSprite::TestTextSprite(const HSceneObject& parent)
  27. :GUIWidget(parent)
  28. {
  29. }
  30. TestTextSprite::~TestTextSprite()
  31. {
  32. }
  33. void TestTextSprite::init(const HCamera& camera, const String& text, CM::RenderTexturePtr sceneView)
  34. {
  35. setSkin(&EngineGUI::instance().getSkin());
  36. GUIArea* area = GUIArea::createStretchedXY(*this, 0, 0, 0, 0);
  37. SpriteTexturePtr spriteTex = std::make_shared<SpriteTexture>(sceneView->getBindableColorTexture());
  38. area->getLayout().addElement(GUITexture::create(*this, GUILayoutOptions::fixed(800, 600), spriteTex));
  39. mLabel = GUILabel::create(*this, L"");
  40. area->getLayout().addElement(mLabel);
  41. Vector<WString>::type dropDownElements;
  42. dropDownElements.push_back(L"Ejlement #1");
  43. dropDownElements.push_back(L"Element #2");
  44. dropDownElements.push_back(L"Element #3");
  45. area->getLayout().addElement(GUIDropDownList::create(*this, dropDownElements, GUILayoutOptions::fixed(50, 13)));
  46. area->getLayout().addFlexibleSpace();
  47. }
  48. void TestTextSprite::update()
  49. {
  50. WString value = toWString(toString(Input::instance().getMousePosition().x) + " - " + toString(Input::instance().getMousePosition().y));
  51. mLabel->setText(value);
  52. }
  53. }