Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
3 місяці тому
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import os
  2. import sys
  3. if len(sys.argv) < 2:
  4. print("Usage: python3 /path/to/main.py /path/to/ht.config")
  5. sys.exit(1)
  6. CFG = os.path.realpath(sys.argv[1])
  7. SCRIPT_DIR = os.path.dirname(os.path.realpath(sys.argv[0]))
  8. sys.path.append(f"{SCRIPT_DIR}/../cross-language-dialect/ctx")
  9. sys.path.append(f"{SCRIPT_DIR}/../cross-language-dialect/lib")
  10. sys.path.append(f"{SCRIPT_DIR}/py")
  11. import arcade
  12. from cfg import *
  13. from cld import *
  14. from ctx import *
  15. from fs import *
  16. from desktop import *
  17. from desktop_Platform import *
  18. from desktop_Window import *
  19. from ht_Context import *
  20. ctrl = ctx_Controller(ht_createContext())
  21. ctrl.registerFunctions([
  22. cfg_parseConfigTree,
  23. fs_locateConfigDir,
  24. fs_readConfig,
  25. ])
  26. def printDbg(c):
  27. print(f"Dbg key/value: '{c.recentField}'/'{c.field(c.recentField)}'")
  28. ctrl.registerCallback(printDbg)
  29. p = desktop_Platform()
  30. p.ctrl = ctrl
  31. # Bind platform to context changes.
  32. def process(c):
  33. # Copy context to platform.
  34. p.c = c
  35. # Perform context dependent calls of desktop functions.
  36. # Similar to context functions, but no platform is returned.
  37. desktop_applyConfigInit(p)
  38. ctrl.registerCallback(process)
  39. ctrl.set("cfgPath", CFG)
  40. ctrl.set("scriptDir", SCRIPT_DIR)
  41. #desktop_loadTextures(p)
  42. wnd = desktop_Window(p)
  43. ctrl.set("didLaunch", True)
  44. arcade.run()