16
16
import time
17
17
import subprocess
18
18
19
- from wgpu . gui import WgpuCanvasBase
19
+ from rendercanvas import BaseRenderCanvas
20
20
21
21
# Import the function that we must call to run the visualization
22
22
from triangle import setup_drawing_sync
26
26
code = """
27
27
import sys
28
28
import json
29
- from PySide6 import QtWidgets # Use either PySide6 or PyQt6
30
- from wgpu.gui. qt import WgpuCanvas
29
+ from PyQt6 import QtWidgets # Use either PySide6 or PyQt6
30
+ from rendercanvas. qt import RenderCanvas
31
31
32
32
app = QtWidgets.QApplication([])
33
- canvas = WgpuCanvas (title="wgpu triangle in Qt subprocess")
33
+ canvas = RenderCanvas (title="wgpu triangle in Qt subprocess", update_mode="ondemand ")
34
34
35
- print(json.dumps(canvas.get_present_methods ()))
35
+ print(json.dumps(canvas._subwidget._rc_get_present_methods ()))
36
36
print(canvas.get_physical_size())
37
37
sys.stdout.flush()
38
38
39
- app.exec_ ()
39
+ app.exec ()
40
40
"""
41
41
42
42
43
- class ProxyCanvas (WgpuCanvasBase ):
43
+ class ProxyCanvas (BaseRenderCanvas ):
44
44
def __init__ (self ):
45
45
super ().__init__ ()
46
46
self ._present_methods = json .loads (p .stdout .readline ().decode ())
47
+ print (self ._present_methods )
47
48
self ._psize = tuple (
48
49
int (x ) for x in p .stdout .readline ().decode ().strip ().strip ("()" ).split ("," )
49
50
)
50
51
print (self ._psize )
51
52
time .sleep (0.2 )
52
53
53
- def get_present_methods (self ):
54
+ def _rc_get_present_methods (self ):
54
55
return self ._present_methods
55
56
56
57
def get_physical_size (self ):
@@ -71,8 +72,8 @@ def close(self):
71
72
def is_closed (self ):
72
73
raise NotImplementedError ()
73
74
74
- def _request_draw (self ):
75
- self .draw_frame ()
75
+ def _rc_request_draw (self ):
76
+ self ._draw_frame ()
76
77
77
78
78
79
# Create subprocess
@@ -84,4 +85,5 @@ def _request_draw(self):
84
85
# Go!
85
86
draw_frame = setup_drawing_sync (canvas )
86
87
canvas .request_draw (draw_frame )
88
+ canvas .force_draw ()
87
89
time .sleep (3 )
0 commit comments