UIReference.cpp 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #include "UIReference.h"
  2. #include "Block.h"
  3. #include "Entity.h"
  4. UIReference::UIReference()
  5. : Framework::ReferenceCounter()
  6. {}
  7. UITargetReference::UITargetReference()
  8. : UIReference()
  9. {}
  10. Framework::Text UITargetReference::getReferenceId(
  11. Framework::Either<Block*, Entity*> zTarget, Entity* zActor) const
  12. {
  13. Framework::Text result("");
  14. if (zTarget.isA())
  15. {
  16. result.append() << zTarget.getA()->getDimensionId() << ","
  17. << zTarget.getA()->getPos().x << ","
  18. << zTarget.getA()->getPos().y << ","
  19. << zTarget.getA()->getPos().z;
  20. }
  21. else
  22. {
  23. result.append() << zTarget.getB()->getId();
  24. }
  25. return result;
  26. }
  27. UITActorReference::UITActorReference()
  28. : UIReference()
  29. {}
  30. Framework::Text UITActorReference::getReferenceId(
  31. Framework::Either<Block*, Entity*> zTarget, Entity* zActor) const
  32. {
  33. return Framework::Text(zActor->getId());
  34. }
  35. UITargetReferenceFactory::UITargetReferenceFactory()
  36. : SubTypeFactory<UIReference, UITargetReference>()
  37. {}
  38. JSONObjectValidationBuilder* UITargetReferenceFactory::addToValidator(
  39. JSONObjectValidationBuilder* builder) const
  40. {
  41. return builder;
  42. }
  43. UITargetReference* UITargetReferenceFactory::fromJson(
  44. Framework::JSON::JSONObject* zJson) const
  45. {
  46. return new UITargetReference();
  47. }
  48. Framework::JSON::JSONObject* UITargetReferenceFactory::toJsonObject(
  49. UITargetReference* zObject) const
  50. {
  51. return new Framework::JSON::JSONObject();
  52. }
  53. const char* UITargetReferenceFactory::getTypeToken() const
  54. {
  55. return "target";
  56. }
  57. UITActorReferenceFactory::UITActorReferenceFactory()
  58. : SubTypeFactory<UIReference, UITActorReference>()
  59. {}
  60. JSONObjectValidationBuilder* UITActorReferenceFactory::addToValidator(
  61. JSONObjectValidationBuilder* builder) const
  62. {
  63. return builder;
  64. }
  65. UITActorReference* UITActorReferenceFactory::fromJson(
  66. Framework::JSON::JSONObject* zJson) const
  67. {
  68. return new UITActorReference();
  69. }
  70. Framework::JSON::JSONObject* UITActorReferenceFactory::toJsonObject(
  71. UITActorReference* zObject) const
  72. {
  73. return new Framework::JSON::JSONObject();
  74. }
  75. const char* UITActorReferenceFactory::getTypeToken() const
  76. {
  77. return "actor";
  78. }