start_ui.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. import os
  4. import sys
  5. import pygame
  6. if not pygame.display.get_init():
  7. pygame.display.init()
  8. if not pygame.font.get_init():
  9. pygame.font.init()
  10. # from wicd import misc
  11. import config_manager as config
  12. import plugins
  13. import skin_manager as SkinManager
  14. import GdUI as UI
  15. from interface import main_screen
  16. plugins = plugins.LoadPlugins(config)
  17. fonts = UI.FontManager
  18. myscriptname = os.path.basename(os.path.realpath(__file__))
  19. SkinManager.load_skin("cpi_default")
  20. def process_event(event, ui_root: UI.Widget):
  21. if event is not None:
  22. if event.type == pygame.QUIT:
  23. sys.exit()
  24. elif event.type == pygame.KEYDOWN:
  25. if event.key == pygame.K_q:
  26. sys.exit()
  27. else:
  28. ui_root.handle_event(event)
  29. def main_loop():
  30. global sound_patch
  31. screen_width = config.get("screen_width")
  32. screen_height = config.get("screen_height")
  33. screen = UI.Screen(fps=30, width=screen_width, height=screen_height)
  34. main = main_screen.MainScreen(screen_width, screen_height)
  35. screen.add_child(main)
  36. while True:
  37. for event in pygame.event.get():
  38. process_event(event, screen)
  39. screen.Draw()
  40. def init():
  41. os.environ['SDL_VIDEO_CENTERED'] = '1'
  42. os.chdir(os.path.dirname(os.path.realpath(__file__)))
  43. if pygame.image.get_extended() == False:
  44. print("This pygame does not support PNG")
  45. sys.exit()
  46. main_loop()
  47. init()