当前提交
c1eaa5695b
共有 8 个文件被更改,包括 98 次插入0 次删除
  1. +47
    -0
      main.py
  2. 二进制
      py/__pycache__/desktop_Platform.cpython-312.pyc
  3. 二进制
      py/__pycache__/desktop_Window.cpython-312.pyc
  4. 二进制
      py/__pycache__/ht_Context.cpython-312.pyc
  5. +9
    -0
      py/desktop_Platform.py
  6. +23
    -0
      py/desktop_Window.py
  7. +17
    -0
      py/ht_Context.py
  8. +2
    -0
      run

+ 47
- 0
main.py 查看文件

@@ -0,0 +1,47 @@
import os
import sys

SCRIPT_DIR = os.path.dirname(os.path.realpath(sys.argv[0]))

sys.path.append(f"{SCRIPT_DIR}/../cross-language-dialect/ctx")
sys.path.append(f"{SCRIPT_DIR}/../cross-language-dialect/lib")
sys.path.append(f"{SCRIPT_DIR}/py")

import arcade
from cld import *
from ctx import *
from desktop_Platform import *
from desktop_Window import *
from ht_Context import *

ctrl = ctx_Controller(ht_createContext())
ctrl.registerFunctions([
])

def printDbg(c):
print(f"Dbg key/value: '{c.recentField}'/'{c.field(c.recentField)}'")
ctrl.registerCallback(printDbg)

p = desktop_Platform()
p.ctrl = ctrl

# Bind platform to context changes.
def process(c):
# Copy context to platform.
p.c = c
# Perform context dependent calls of desktop functions.
# Similar to context functions, but no platform is returned.
### desktop_deselectMismatchedTiles(p)
ctrl.registerCallback(process)

ctrl.set("windowWidth", 900)
ctrl.set("windowHeight", 600)
ctrl.set("windowAntialiasing", False)
ctrl.set("windowBackgroundColor", "#ffffff")
ctrl.set("windowTitle", "Прототип: Отель")

#desktop_loadTextures(p)

wnd = desktop_Window(p)
ctrl.set("didLaunch", True)
arcade.run()

二进制
py/__pycache__/desktop_Platform.cpython-312.pyc 查看文件


二进制
py/__pycache__/desktop_Window.cpython-312.pyc 查看文件


二进制
py/__pycache__/ht_Context.cpython-312.pyc 查看文件


+ 9
- 0
py/desktop_Platform.py 查看文件

@@ -0,0 +1,9 @@
import arcade

class desktop_Platform:
def __init__(self):
self.c = None
self.ctrl = None
self.mousePosition = []
self.dbgSprites = arcade.SpriteList()
self.dbgTextures = []

+ 23
- 0
py/desktop_Window.py 查看文件

@@ -0,0 +1,23 @@
import arcade

class desktop_Window(arcade.Window):
def __init__(self, p):
super().__init__(
p.c.windowWidth,
p.c.windowHeight,
p.c.windowTitle,
)
self.antialiasing = p.c.windowAntialiasing
self.background_color = arcade.color_from_hex_string(p.c.windowBackgroundColor)
self.p = p

def on_draw(self):
arcade.start_render()
self.p.dbgSprites.draw()

def on_mouse_press(self, x, y, button, key_modifiers):
print("mouse press:", x, y)
pass

def on_update(self, delta):
pass

+ 17
- 0
py/ht_Context.py 查看文件

@@ -0,0 +1,17 @@
class ht_Context:
def __init__(self):
self.didLaunch = False
self.recentField = "none"
self.windowBackgroundColor = "#000000"
self.windowHeight = 0
self.windowTitle = ""
self.windowWidth = 0

def field(self, fieldName):
return getattr(self, fieldName)

def setField(self, fieldName, value):
setattr(self, fieldName, value)

def ht_createContext():
return ht_Context()

+ 2
- 0
run 查看文件

@@ -0,0 +1,2 @@
#!/bin/bash
/Users/mk/py3.12venv/bin/python3.12 main.py

正在加载...
取消
保存