position.cpp 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #ifndef _XBOX
  2. #include "position.h"
  3. #include "..\..\system\datasource\dataposition.h"
  4. PositionEditor::PositionEditor ()
  5. {
  6. EditedPos = NULL;
  7. pLabelX = NULL;
  8. pEditX = NULL;
  9. pLabelY = NULL;
  10. pEditY = NULL;
  11. pLabelZ = NULL;
  12. pEditZ = NULL;
  13. }
  14. PositionEditor::~PositionEditor ()
  15. {
  16. }
  17. void PositionEditor::Release ()
  18. {
  19. delete this;
  20. }
  21. void PositionEditor::BeginEdit (GUIControl* form, DataPosition* EditedPos)
  22. {
  23. this->EditedPos = EditedPos;
  24. pLabelX = NEW GUILabel (form, 10, 10, 100, 20);
  25. pLabelX->Caption = "X";
  26. pEditX = NEW GUIEdit (form, 10, 30, 100, 20);
  27. pEditX->Text.Format("%3.2f", EditedPos->GetValue().x);
  28. pLabelY = NEW GUILabel (form, 120, 10, 100, 20);
  29. pLabelY->Caption = "Y";
  30. pEditY = NEW GUIEdit (form, 120, 30, 100, 20);
  31. pEditY->Text.Format("%3.2f", EditedPos->GetValue().y);
  32. pLabelZ = NEW GUILabel (form, 230, 10, 100, 20);
  33. pLabelZ->Caption = "Z";
  34. pEditZ = NEW GUIEdit (form, 230, 30, 100, 20);
  35. pEditZ->Text.Format("%3.2f", EditedPos->GetValue().z);
  36. }
  37. void PositionEditor::EndEdit ()
  38. {
  39. delete pLabelX;
  40. pLabelX = NULL;
  41. delete pEditX;
  42. pEditX = NULL;
  43. delete pLabelY;
  44. pLabelY = NULL;
  45. delete pEditY;
  46. pEditY = NULL;
  47. delete pLabelZ;
  48. pLabelZ = NULL;
  49. delete pEditZ;
  50. pEditZ = NULL;
  51. }
  52. void PositionEditor::Apply ()
  53. {
  54. Vector val;
  55. val.x = (float)atof (pEditX->Text.GetBuffer());
  56. val.y = (float)atof (pEditY->Text.GetBuffer());
  57. val.z = (float)atof (pEditZ->Text.GetBuffer());
  58. EditedPos->SetValue (val);
  59. }
  60. #endif