BsEditorWindow.cpp 821 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include "BsEditorWindow.h"
  2. #include "BsEditorWidgetContainer.h"
  3. using namespace CamelotFramework;
  4. using namespace BansheeEngine;
  5. namespace BansheeEditor
  6. {
  7. EditorWindow::EditorWindow()
  8. :mWidgets(cm_new<EditorWidgetContainer>(mGUI.get()))
  9. {
  10. }
  11. EditorWindow::~EditorWindow()
  12. {
  13. cm_delete(mWidgets);
  14. }
  15. void EditorWindow::movedOrResized()
  16. {
  17. EditorWindowBase::movedOrResized();
  18. mWidgets->setPosition(1, 1);
  19. UINT32 widgetWidth = (UINT32)std::max(0, (INT32)getWidth() - 2);
  20. UINT32 widgetHeight = (UINT32)std::max(0, (INT32)getHeight() - 2);
  21. mWidgets->setSize(widgetWidth, widgetHeight);
  22. }
  23. EditorWindow& EditorWindow::create()
  24. {
  25. EditorWindow* newWindow = new (cm_alloc<EditorWindow>()) EditorWindow();
  26. newWindow->initialize();
  27. return *newWindow;
  28. }
  29. }