ViewPaneCommands_test_case.py 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. """
  2. All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
  3. its licensors.
  4. For complete copyright and license terms please see the LICENSE at the root of this
  5. distribution (the "License"). All use of this software is governed by the License,
  6. or, if provided, by the license below or the license accompanying this file. Do not
  7. remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
  8. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  9. """
  10. # Tests a portion of the View Pane Python API from ViewPane.cpp while the Editor is running
  11. import azlmbr.bus as bus
  12. import azlmbr.editor as editor
  13. import azlmbr.math
  14. import azlmbr.legacy.general as general
  15. # Open a level (any level should work)
  16. editor.EditorToolsApplicationRequestBus(bus.Broadcast, 'OpenLevelNoPrompt', 'WaterSample')
  17. general.idle_wait(0.5)
  18. viewport_size = general.get_viewport_size()
  19. view_width = int(viewport_size.x)
  20. view_height = int(viewport_size.y)
  21. general.set_viewport_size(320, 240)
  22. new_viewport_size = general.get_viewport_size()
  23. new_view_width = int(new_viewport_size.x)
  24. new_view_height = int(new_viewport_size.y)
  25. if not (view_width == new_view_width) and not (view_height == new_view_height):
  26. print("set_viewport_size works")
  27. general.resize_viewport(int(view_width), int(view_height))
  28. newer_viewport_size = general.get_viewport_size()
  29. newer_view_width = int(newer_viewport_size.x)
  30. newer_view_height = int(newer_viewport_size.y)
  31. if not (newer_view_width == new_view_width) and not (newer_view_height == new_view_height):
  32. print("resize_viewport works")
  33. def set_and_validate_viewport_size(width, height):
  34. general.set_viewport_size(width, height)
  35. general.update_viewport()
  36. general.idle_wait(1.0)
  37. new_viewport_size = general.get_viewport_size()
  38. if (new_viewport_size.x != width) or (new_viewport_size.y != height):
  39. return False
  40. return True
  41. # Perform some simple validation of get/set viewport expansion policy
  42. general.set_viewport_expansion_policy('FixedSize')
  43. if (general.get_viewport_expansion_policy() == 'FixedSize'):
  44. print("get_viewport_expansion_policy works")
  45. general.set_viewport_expansion_policy('AutoExpand')
  46. if (general.get_viewport_expansion_policy() == 'AutoExpand'):
  47. print("get_viewport_expansion_policy works")
  48. # Validate that setting it to an invalid value doesn't change the setting.
  49. general.set_viewport_expansion_policy('XXXXX')
  50. if (general.get_viewport_expansion_policy() == 'AutoExpand'):
  51. print("get_viewport_expansion_policy works")
  52. # Set a series of viewport sizes (smaller to larger than display resolution sizes) and verify they all work.
  53. general.set_viewport_expansion_policy('FixedSize')
  54. if (set_and_validate_viewport_size(150, 300)):
  55. print("set_viewport_expansion_policy works")
  56. # Set different view pane layouts and verify it works
  57. success = True
  58. #general.set_view_pane_layout(0)
  59. general.idle_wait(0.5)
  60. success = success and (general.get_view_pane_layout() == 0)
  61. success = success and (general.get_viewport_count() == 1)
  62. # general.set_view_pane_layout(1)
  63. # general.idle_wait(0.5)
  64. # success = success and (general.get_view_pane_layout() == 1)
  65. # success = success and (general.get_viewport_count() == 2)
  66. if success:
  67. print("get_view_pane_layout works")
  68. print("set_view_pane_layout works")
  69. print("get_viewport_count works")
  70. #success = True
  71. #general.set_active_viewport(0)
  72. #general.idle_wait(0.5)
  73. #success = success and (general.get_active_viewport() == 0)
  74. #general.set_active_viewport(1)
  75. #general.idle_wait(0.5)
  76. #success = success and (general.get_active_viewport() == 1)
  77. #if success:
  78. # print("get_active_viewport works")
  79. # print("set_active_viewport works")
  80. #general.set_view_pane_layout(0)
  81. general.idle_wait(0.5)
  82. editor.EditorToolsApplicationRequestBus(bus.Broadcast, 'ExitNoPrompt')