WindowComposer.cpp 824 B

123456789101112131415161718192021222324252627282930313233
  1. #include "WindowComposer.h"
  2. #include "Process.h"
  3. #include <Widgets/Font.h>
  4. #include <Widgets/FrameBuffer.h>
  5. #include <Widgets/WindowManager.h>
  6. #include <Widgets/RootWidget.h>
  7. #include <Widgets/EventLoop.h>
  8. #include <Widgets/MsgBox.h>
  9. void WindowComposer_main()
  10. {
  11. Font::initialize();
  12. FrameBuffer::initialize();
  13. EventLoop::initialize();
  14. WindowManager::initialize();
  15. auto info = current->get_display_info();
  16. dbgprintf("Screen is %ux%ux%ubpp\n", info.width, info.height, info.bpp);
  17. FrameBuffer framebuffer((dword*)info.framebuffer, info.width, info.height);
  18. RootWidget rw;
  19. EventLoop loop;
  20. WindowManager::the().setRootWidget(&rw);
  21. MsgBox(nullptr, "Serenity Operating System");
  22. dbgprintf("Entering WindowComposer main loop.\n");
  23. loop.exec();
  24. ASSERT_NOT_REACHED();
  25. }