pyglet 3.0.dev3__tar.gz → 3.0.dev5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1147) hide show
  1. pyglet-3.0.dev5/.github/workflows/unittests.yml +190 -0
  2. pyglet-3.0.dev5/PKG-INFO +165 -0
  3. pyglet-3.0.dev5/contrib/README.md +19 -0
  4. pyglet-3.0.dev5/contrib/dist_field/renderfield.py +265 -0
  5. pyglet-3.0.dev5/contrib/spritebenchmark.py +59 -0
  6. pyglet-3.0.dev5/contrib/svg/svg_test.py +341 -0
  7. pyglet-3.0.dev5/doc/index.rst +119 -0
  8. pyglet-3.0.dev5/doc/internal/media_manual.rst +362 -0
  9. pyglet-3.0.dev5/doc/modules/config/base.rst +6 -0
  10. pyglet-3.0.dev5/doc/modules/config/gl.rst +6 -0
  11. pyglet-3.0.dev5/doc/modules/config/index.rst +14 -0
  12. pyglet-3.0.dev5/doc/modules/dialog.rst +34 -0
  13. pyglet-3.0.dev5/doc/modules/font/group.rst +6 -0
  14. pyglet-3.0.dev5/doc/modules/graphics/atlas.rst +6 -0
  15. pyglet-3.0.dev5/doc/modules/graphics/index.rst +22 -0
  16. pyglet-3.0.dev5/doc/modules/graphics/texture.rst +6 -0
  17. pyglet-3.0.dev5/doc/modules/graphics/vertexbuffer.rst +6 -0
  18. pyglet-3.0.dev5/doc/modules/media.rst +148 -0
  19. pyglet-3.0.dev5/doc/modules/resource.rst +40 -0
  20. pyglet-3.0.dev5/doc/modules/sprite.rst +21 -0
  21. pyglet-3.0.dev5/doc/modules/window.rst +166 -0
  22. pyglet-3.0.dev5/doc/programming_guide/camera.rst +130 -0
  23. pyglet-3.0.dev5/doc/programming_guide/eventloop.rst +142 -0
  24. pyglet-3.0.dev5/doc/programming_guide/examplegame.rst +1261 -0
  25. pyglet-3.0.dev5/doc/programming_guide/gui.rst +130 -0
  26. pyglet-3.0.dev5/doc/programming_guide/image.rst +384 -0
  27. pyglet-3.0.dev5/doc/programming_guide/media.rst +834 -0
  28. pyglet-3.0.dev5/doc/programming_guide/migration.rst +308 -0
  29. pyglet-3.0.dev5/doc/programming_guide/migration2.rst +402 -0
  30. pyglet-3.0.dev5/doc/programming_guide/quickstart.rst +227 -0
  31. pyglet-3.0.dev5/doc/programming_guide/rendering.rst +791 -0
  32. pyglet-3.0.dev5/doc/programming_guide/text.rst +839 -0
  33. pyglet-3.0.dev5/doc/programming_guide/texture.rst +307 -0
  34. pyglet-3.0.dev5/doc/programming_guide/windowing.rst +594 -0
  35. pyglet-3.0.dev5/doc/requirements.txt +5 -0
  36. pyglet-3.0.dev5/examples/graphics/instancing_order.py +150 -0
  37. pyglet-3.0.dev5/examples/media/media_player.py +473 -0
  38. pyglet-3.0.dev5/examples/model/fpscamera.py +293 -0
  39. pyglet-3.0.dev5/examples/opengl/minimal_shader.py +127 -0
  40. pyglet-3.0.dev5/examples/opengl/opengl_scissor.py +94 -0
  41. pyglet-3.0.dev5/examples/opengl/transform_shader.py +193 -0
  42. pyglet-3.0.dev5/examples/sprite/multi_texture_sprite.py +42 -0
  43. pyglet-3.0.dev5/examples/sprite/multi_texture_sprite_animation.py +61 -0
  44. pyglet-3.0.dev5/examples/sprite/multi_texture_sprite_texture_array_animation.py +68 -0
  45. pyglet-3.0.dev5/examples/sprite/sprite_batching.py +52 -0
  46. pyglet-3.0.dev5/examples/sprite/toggle_sprite_shader.py +133 -0
  47. pyglet-3.0.dev5/examples/window/camera/camera_group.py +91 -0
  48. pyglet-3.0.dev5/examples/window/camera/camera_scissor.py +101 -0
  49. pyglet-3.0.dev5/examples/window/camera/camera_views.py +126 -0
  50. pyglet-3.0.dev5/pyglet/__init__.py +529 -0
  51. pyglet-3.0.dev5/pyglet/app/cocoa.py +298 -0
  52. pyglet-3.0.dev5/pyglet/customtypes.py +73 -0
  53. pyglet-3.0.dev5/pyglet/event.py +518 -0
  54. pyglet-3.0.dev5/pyglet/experimental/README.md +31 -0
  55. pyglet-3.0.dev5/pyglet/experimental/geoshader_sprite.py +801 -0
  56. pyglet-3.0.dev5/pyglet/experimental/net.py +247 -0
  57. pyglet-3.0.dev5/pyglet/experimental/particles.py +433 -0
  58. pyglet-3.0.dev5/pyglet/font/dwrite/__init__.py +1535 -0
  59. pyglet-3.0.dev5/pyglet/font/dwrite/d2d1_lib.py +637 -0
  60. pyglet-3.0.dev5/pyglet/font/fontconfig.py +499 -0
  61. pyglet-3.0.dev5/pyglet/graphics/__init__.py +58 -0
  62. pyglet-3.0.dev5/pyglet/graphics/api/__init__.py +77 -0
  63. pyglet-3.0.dev5/pyglet/graphics/api/base.py +600 -0
  64. pyglet-3.0.dev5/pyglet/graphics/api/gl/buffer.py +735 -0
  65. pyglet-3.0.dev5/pyglet/graphics/api/gl/cocoa/context.py +76 -0
  66. pyglet-3.0.dev5/pyglet/graphics/api/gl/context.py +440 -0
  67. pyglet-3.0.dev5/pyglet/graphics/api/gl/draw.py +45 -0
  68. pyglet-3.0.dev5/pyglet/graphics/api/gl/egl/context.py +97 -0
  69. pyglet-3.0.dev5/pyglet/graphics/api/gl/gl_info.py +155 -0
  70. pyglet-3.0.dev5/pyglet/graphics/api/gl/global_opengl.py +148 -0
  71. pyglet-3.0.dev5/pyglet/graphics/api/gl/renderer.py +23 -0
  72. pyglet-3.0.dev5/pyglet/graphics/api/gl/shader.py +1377 -0
  73. pyglet-3.0.dev5/pyglet/graphics/api/gl/sprite.py +201 -0
  74. pyglet-3.0.dev5/pyglet/graphics/api/gl/state.py +240 -0
  75. pyglet-3.0.dev5/pyglet/graphics/api/gl/texture.py +1192 -0
  76. pyglet-3.0.dev5/pyglet/graphics/api/gl/vertexdomain.py +883 -0
  77. pyglet-3.0.dev5/pyglet/graphics/api/gl/win32/context.py +111 -0
  78. pyglet-3.0.dev5/pyglet/graphics/api/gl/xlib/context.py +180 -0
  79. pyglet-3.0.dev5/pyglet/graphics/api/gl2/buffer.py +138 -0
  80. pyglet-3.0.dev5/pyglet/graphics/api/gl2/draw.py +43 -0
  81. pyglet-3.0.dev5/pyglet/graphics/api/gl2/global_opengl.py +62 -0
  82. pyglet-3.0.dev5/pyglet/graphics/api/gl2/shader.py +246 -0
  83. pyglet-3.0.dev5/pyglet/graphics/api/gl2/shapes.py +51 -0
  84. pyglet-3.0.dev5/pyglet/graphics/api/gl2/sprite.py +166 -0
  85. pyglet-3.0.dev5/pyglet/graphics/api/gl2/state.py +29 -0
  86. pyglet-3.0.dev5/pyglet/graphics/api/gl2/vertexdomain.py +351 -0
  87. pyglet-3.0.dev5/pyglet/graphics/api/webgl/__init__.py +151 -0
  88. pyglet-3.0.dev5/pyglet/graphics/api/webgl/buffer.py +493 -0
  89. pyglet-3.0.dev5/pyglet/graphics/api/webgl/context.py +241 -0
  90. pyglet-3.0.dev5/pyglet/graphics/api/webgl/draw.py +38 -0
  91. pyglet-3.0.dev5/pyglet/graphics/api/webgl/gl_info.py +80 -0
  92. pyglet-3.0.dev5/pyglet/graphics/api/webgl/renderer.py +23 -0
  93. pyglet-3.0.dev5/pyglet/graphics/api/webgl/shader.py +1040 -0
  94. pyglet-3.0.dev5/pyglet/graphics/api/webgl/sprite.py +201 -0
  95. pyglet-3.0.dev5/pyglet/graphics/api/webgl/state.py +225 -0
  96. pyglet-3.0.dev5/pyglet/graphics/api/webgl/texture.py +953 -0
  97. pyglet-3.0.dev5/pyglet/graphics/api/webgl/vertexdomain.py +609 -0
  98. pyglet-3.0.dev5/pyglet/graphics/atlas.py +253 -0
  99. pyglet-3.0.dev5/pyglet/graphics/buffer.py +868 -0
  100. pyglet-3.0.dev5/pyglet/graphics/draw.py +1133 -0
  101. pyglet-3.0.dev5/pyglet/graphics/instance.py +338 -0
  102. pyglet-3.0.dev5/pyglet/graphics/shader.py +1070 -0
  103. pyglet-3.0.dev5/pyglet/graphics/state.py +185 -0
  104. pyglet-3.0.dev5/pyglet/graphics/texture.py +1065 -0
  105. pyglet-3.0.dev5/pyglet/graphics/vertexdomain.py +1165 -0
  106. pyglet-3.0.dev5/pyglet/image/__init__.py +232 -0
  107. pyglet-3.0.dev5/pyglet/image/animation.py +144 -0
  108. pyglet-3.0.dev5/pyglet/image/base.py +717 -0
  109. pyglet-3.0.dev5/pyglet/image/codecs/wic.py +354 -0
  110. pyglet-3.0.dev5/pyglet/info.py +394 -0
  111. pyglet-3.0.dev5/pyglet/input/win32/directinput.py +476 -0
  112. pyglet-3.0.dev5/pyglet/lib.py +340 -0
  113. pyglet-3.0.dev5/pyglet/libs/darwin/cocoapy/cocoalibs.py +798 -0
  114. pyglet-3.0.dev5/pyglet/libs/darwin/cocoapy/runtime.py +1757 -0
  115. pyglet-3.0.dev5/pyglet/math.py +1556 -0
  116. pyglet-3.0.dev5/pyglet/media/codecs/base.py +622 -0
  117. pyglet-3.0.dev5/pyglet/media/codecs/wave.py +131 -0
  118. pyglet-3.0.dev5/pyglet/media/drivers/base.py +495 -0
  119. pyglet-3.0.dev5/pyglet/media/drivers/pulse/adaptation.py +373 -0
  120. pyglet-3.0.dev5/pyglet/media/drivers/pulse/interface.py +774 -0
  121. pyglet-3.0.dev5/pyglet/media/player.py +739 -0
  122. pyglet-3.0.dev5/pyglet/media/synthesis.py +364 -0
  123. pyglet-3.0.dev5/pyglet/model/__init__.py +665 -0
  124. pyglet-3.0.dev5/pyglet/model/codecs/__init__.py +58 -0
  125. pyglet-3.0.dev5/pyglet/model/codecs/obj.py +279 -0
  126. pyglet-3.0.dev5/pyglet/resource.py +919 -0
  127. pyglet-3.0.dev5/pyglet/shapes.py +2752 -0
  128. pyglet-3.0.dev5/pyglet/sprite.py +1024 -0
  129. pyglet-3.0.dev5/pyglet/text/__init__.py +559 -0
  130. pyglet-3.0.dev5/pyglet/text/caret.py +611 -0
  131. pyglet-3.0.dev5/pyglet/window/__init__.py +1960 -0
  132. pyglet-3.0.dev5/pyglet/window/camera/__init__.py +28 -0
  133. pyglet-3.0.dev5/pyglet/window/camera/base.py +682 -0
  134. pyglet-3.0.dev5/pyglet/window/camera/camera2d.py +333 -0
  135. pyglet-3.0.dev5/pyglet/window/camera/camera3d.py +318 -0
  136. pyglet-3.0.dev5/pyglet/window/cocoa/__init__.py +701 -0
  137. pyglet-3.0.dev5/pyglet/window/emscripten/__init__.py +771 -0
  138. pyglet-3.0.dev5/pyglet/window/headless/__init__.py +124 -0
  139. pyglet-3.0.dev5/pyglet/window/wayland/__init__.py +370 -0
  140. pyglet-3.0.dev5/pyglet/window/win32/__init__.py +1522 -0
  141. pyglet-3.0.dev5/pyglet/window/xlib/__init__.py +1742 -0
  142. pyglet-3.0.dev5/pyproject.toml +117 -0
  143. pyglet-3.0.dev5/tests/annotations.py +109 -0
  144. pyglet-3.0.dev5/tests/conftest.py +31 -0
  145. pyglet-3.0.dev5/tests/integration/graphics/gl2/test_gl2_buffers.py +69 -0
  146. pyglet-3.0.dev5/tests/integration/graphics/opengl_core/test_buffers.py +637 -0
  147. pyglet-3.0.dev5/tests/integration/graphics/opengl_core/test_opengl_instancing.py +411 -0
  148. pyglet-3.0.dev5/tests/integration/graphics/test_atlas_bins.py +83 -0
  149. pyglet-3.0.dev5/tests/integration/graphics/test_cameras.py +311 -0
  150. pyglet-3.0.dev5/tests/integration/graphics/test_compute_shader.py +62 -0
  151. pyglet-3.0.dev5/tests/integration/graphics/test_framebuffer.py +95 -0
  152. pyglet-3.0.dev5/tests/integration/graphics/test_groups.py +527 -0
  153. pyglet-3.0.dev5/tests/integration/graphics/test_objects.py +521 -0
  154. pyglet-3.0.dev5/tests/integration/graphics/test_resource_texture_transforms.py +28 -0
  155. pyglet-3.0.dev5/tests/integration/graphics/test_shaders.py +727 -0
  156. pyglet-3.0.dev5/tests/integration/graphics/test_texture3d.py +126 -0
  157. pyglet-3.0.dev5/tests/integration/graphics/test_texture_mipmaps.py +100 -0
  158. pyglet-3.0.dev5/tests/integration/graphics/test_texturearray.py +119 -0
  159. pyglet-3.0.dev5/tests/integration/graphics/test_window_backend_config.py +52 -0
  160. pyglet-3.0.dev5/tests/integration/libs/darwin/cocoapy/test_cocoalibs.py +87 -0
  161. pyglet-3.0.dev5/tests/interactive/conftest.py +87 -0
  162. pyglet-3.0.dev5/tests/interactive/graphics/group_ordering.py +456 -0
  163. pyglet-3.0.dev5/tests/interactive/window/test_window_events.py +738 -0
  164. pyglet-3.0.dev5/tests/interactive/window/test_window_fullscreen.py +161 -0
  165. pyglet-3.0.dev5/tests/interactive/window/test_window_modes.py +125 -0
  166. pyglet-3.0.dev5/tests/interactive/window/test_window_multisample.py +216 -0
  167. pyglet-3.0.dev5/tests/interactive/window/test_window_open.py +58 -0
  168. pyglet-3.0.dev5/tests/interactive/window/test_window_settings.py +600 -0
  169. pyglet-3.0.dev5/tests/unit/libs/darwin/cocoapy/test_cocoalibs.py +95 -0
  170. pyglet-3.0.dev5/tests/unit/math/__init__.py +0 -0
  171. pyglet-3.0.dev5/tests/unit/math/test_quat.py +63 -0
  172. pyglet-3.0.dev5/tests/unit/media/__init__.py +0 -0
  173. pyglet-3.0.dev5/tests/unit/platform/__init__.py +0 -0
  174. pyglet-3.0.dev5/tests/unit/shader/__init__.py +0 -0
  175. pyglet-3.0.dev5/tests/unit/shapes/__init__.py +0 -0
  176. pyglet-3.0.dev5/tests/unit/shapes/test_bordered_rectangle.py +95 -0
  177. pyglet-3.0.dev5/tests/unit/test_events.py +240 -0
  178. pyglet-3.0.dev5/tests/unit/test_sprite.py +305 -0
  179. pyglet-3.0.dev5/tests/unit/text/__init__.py +0 -0
  180. pyglet-3.0.dev5/tests/unit/text/test_caret.py +103 -0
  181. pyglet-3.0.dev3/.github/workflows/unittests.yml +0 -139
  182. pyglet-3.0.dev3/PKG-INFO +0 -165
  183. pyglet-3.0.dev3/contrib/logo3d/logo3d.jpg +0 -0
  184. pyglet-3.0.dev3/contrib/logo3d/logo3d.obj.zip +0 -0
  185. pyglet-3.0.dev3/contrib/logo3d/logo3d.wings +0 -0
  186. pyglet-3.0.dev3/doc/index.rst +0 -114
  187. pyglet-3.0.dev3/doc/internal/media_manual.rst +0 -362
  188. pyglet-3.0.dev3/doc/modules/dialog.rst +0 -30
  189. pyglet-3.0.dev3/doc/modules/graphics/atlas.rst +0 -6
  190. pyglet-3.0.dev3/doc/modules/graphics/index.rst +0 -19
  191. pyglet-3.0.dev3/doc/modules/graphics/vertexbuffer.rst +0 -6
  192. pyglet-3.0.dev3/doc/modules/media.rst +0 -139
  193. pyglet-3.0.dev3/doc/modules/resource.rst +0 -40
  194. pyglet-3.0.dev3/doc/modules/sprite.rst +0 -13
  195. pyglet-3.0.dev3/doc/modules/window.rst +0 -164
  196. pyglet-3.0.dev3/doc/programming_guide/eventloop.rst +0 -143
  197. pyglet-3.0.dev3/doc/programming_guide/examplegame.rst +0 -1175
  198. pyglet-3.0.dev3/doc/programming_guide/gui.rst +0 -130
  199. pyglet-3.0.dev3/doc/programming_guide/image.rst +0 -1004
  200. pyglet-3.0.dev3/doc/programming_guide/media.rst +0 -826
  201. pyglet-3.0.dev3/doc/programming_guide/migration.rst +0 -284
  202. pyglet-3.0.dev3/doc/programming_guide/migration2.rst +0 -402
  203. pyglet-3.0.dev3/doc/programming_guide/quickstart.rst +0 -226
  204. pyglet-3.0.dev3/doc/programming_guide/rendering.rst +0 -742
  205. pyglet-3.0.dev3/doc/programming_guide/text.rst +0 -815
  206. pyglet-3.0.dev3/doc/programming_guide/windowing.rst +0 -529
  207. pyglet-3.0.dev3/doc/requirements.txt +0 -5
  208. pyglet-3.0.dev3/examples/media/media_player.py +0 -536
  209. pyglet-3.0.dev3/examples/model/fpscamera.py +0 -358
  210. pyglet-3.0.dev3/examples/opengl/minimal_shader.py +0 -126
  211. pyglet-3.0.dev3/examples/opengl/opengl_scissor.py +0 -92
  212. pyglet-3.0.dev3/examples/sprite/multi_texture_sprite.py +0 -203
  213. pyglet-3.0.dev3/examples/sprite/sprite_batching.py +0 -55
  214. pyglet-3.0.dev3/examples/window/camera.py +0 -144
  215. pyglet-3.0.dev3/examples/window/camera_group.py +0 -176
  216. pyglet-3.0.dev3/experimental/dist_field/renderfield.py +0 -265
  217. pyglet-3.0.dev3/experimental/instancing/sprite_instance.py +0 -73
  218. pyglet-3.0.dev3/experimental/instancing/sprite_instance_object.py +0 -103
  219. pyglet-3.0.dev3/experimental/multitexture_sprite/multitexturesprite.py +0 -152
  220. pyglet-3.0.dev3/experimental/spritebenchmark.py +0 -57
  221. pyglet-3.0.dev3/experimental/svg_test.py +0 -394
  222. pyglet-3.0.dev3/experimental/wayland/gbm_egl_context.py +0 -64
  223. pyglet-3.0.dev3/pyglet/__init__.py +0 -529
  224. pyglet-3.0.dev3/pyglet/app/cocoa.py +0 -297
  225. pyglet-3.0.dev3/pyglet/customtypes.py +0 -67
  226. pyglet-3.0.dev3/pyglet/event.py +0 -510
  227. pyglet-3.0.dev3/pyglet/experimental/README.md +0 -6
  228. pyglet-3.0.dev3/pyglet/experimental/geoshader_sprite.py +0 -798
  229. pyglet-3.0.dev3/pyglet/experimental/multitexture_sprite.py +0 -541
  230. pyglet-3.0.dev3/pyglet/experimental/net.py +0 -247
  231. pyglet-3.0.dev3/pyglet/experimental/particles.py +0 -395
  232. pyglet-3.0.dev3/pyglet/font/dwrite/__init__.py +0 -1535
  233. pyglet-3.0.dev3/pyglet/font/dwrite/d2d1_lib.py +0 -637
  234. pyglet-3.0.dev3/pyglet/font/fontconfig.py +0 -499
  235. pyglet-3.0.dev3/pyglet/graphics/__init__.py +0 -18
  236. pyglet-3.0.dev3/pyglet/graphics/api/__init__.py +0 -88
  237. pyglet-3.0.dev3/pyglet/graphics/api/base.py +0 -485
  238. pyglet-3.0.dev3/pyglet/graphics/api/gl/buffer.py +0 -620
  239. pyglet-3.0.dev3/pyglet/graphics/api/gl/cocoa/context.py +0 -76
  240. pyglet-3.0.dev3/pyglet/graphics/api/gl/context.py +0 -401
  241. pyglet-3.0.dev3/pyglet/graphics/api/gl/draw.py +0 -627
  242. pyglet-3.0.dev3/pyglet/graphics/api/gl/egl/context.py +0 -97
  243. pyglet-3.0.dev3/pyglet/graphics/api/gl/gl_info.py +0 -151
  244. pyglet-3.0.dev3/pyglet/graphics/api/gl/global_opengl.py +0 -235
  245. pyglet-3.0.dev3/pyglet/graphics/api/gl/shader.py +0 -1391
  246. pyglet-3.0.dev3/pyglet/graphics/api/gl/sprite.py +0 -102
  247. pyglet-3.0.dev3/pyglet/graphics/api/gl/state.py +0 -219
  248. pyglet-3.0.dev3/pyglet/graphics/api/gl/texture.py +0 -1175
  249. pyglet-3.0.dev3/pyglet/graphics/api/gl/vertexdomain.py +0 -772
  250. pyglet-3.0.dev3/pyglet/graphics/api/gl/win32/context.py +0 -111
  251. pyglet-3.0.dev3/pyglet/graphics/api/gl/xlib/context.py +0 -180
  252. pyglet-3.0.dev3/pyglet/graphics/api/gl2/buffer.py +0 -139
  253. pyglet-3.0.dev3/pyglet/graphics/api/gl2/draw.py +0 -601
  254. pyglet-3.0.dev3/pyglet/graphics/api/gl2/global_opengl.py +0 -125
  255. pyglet-3.0.dev3/pyglet/graphics/api/gl2/shader.py +0 -191
  256. pyglet-3.0.dev3/pyglet/graphics/api/gl2/shapes.py +0 -51
  257. pyglet-3.0.dev3/pyglet/graphics/api/gl2/sprite.py +0 -79
  258. pyglet-3.0.dev3/pyglet/graphics/api/gl2/vertexdomain.py +0 -350
  259. pyglet-3.0.dev3/pyglet/graphics/api/webgl/__init__.py +0 -236
  260. pyglet-3.0.dev3/pyglet/graphics/api/webgl/buffer.py +0 -394
  261. pyglet-3.0.dev3/pyglet/graphics/api/webgl/context.py +0 -238
  262. pyglet-3.0.dev3/pyglet/graphics/api/webgl/draw.py +0 -590
  263. pyglet-3.0.dev3/pyglet/graphics/api/webgl/gl_info.py +0 -75
  264. pyglet-3.0.dev3/pyglet/graphics/api/webgl/shader.py +0 -1050
  265. pyglet-3.0.dev3/pyglet/graphics/api/webgl/sprite.py +0 -102
  266. pyglet-3.0.dev3/pyglet/graphics/api/webgl/state.py +0 -227
  267. pyglet-3.0.dev3/pyglet/graphics/api/webgl/texture.py +0 -951
  268. pyglet-3.0.dev3/pyglet/graphics/api/webgl/vertexdomain.py +0 -608
  269. pyglet-3.0.dev3/pyglet/graphics/atlas.py +0 -253
  270. pyglet-3.0.dev3/pyglet/graphics/buffer.py +0 -554
  271. pyglet-3.0.dev3/pyglet/graphics/draw.py +0 -577
  272. pyglet-3.0.dev3/pyglet/graphics/instance.py +0 -185
  273. pyglet-3.0.dev3/pyglet/graphics/shader.py +0 -776
  274. pyglet-3.0.dev3/pyglet/graphics/state.py +0 -93
  275. pyglet-3.0.dev3/pyglet/graphics/texture.py +0 -1053
  276. pyglet-3.0.dev3/pyglet/graphics/vertexdomain.py +0 -996
  277. pyglet-3.0.dev3/pyglet/image/__init__.py +0 -232
  278. pyglet-3.0.dev3/pyglet/image/animation.py +0 -139
  279. pyglet-3.0.dev3/pyglet/image/base.py +0 -718
  280. pyglet-3.0.dev3/pyglet/image/codecs/wic.py +0 -354
  281. pyglet-3.0.dev3/pyglet/info.py +0 -200
  282. pyglet-3.0.dev3/pyglet/input/win32/directinput.py +0 -469
  283. pyglet-3.0.dev3/pyglet/lib.py +0 -335
  284. pyglet-3.0.dev3/pyglet/libs/darwin/cocoapy/cocoalibs.py +0 -715
  285. pyglet-3.0.dev3/pyglet/libs/darwin/cocoapy/runtime.py +0 -1736
  286. pyglet-3.0.dev3/pyglet/math.py +0 -1522
  287. pyglet-3.0.dev3/pyglet/media/codecs/base.py +0 -622
  288. pyglet-3.0.dev3/pyglet/media/codecs/wave.py +0 -125
  289. pyglet-3.0.dev3/pyglet/media/drivers/base.py +0 -488
  290. pyglet-3.0.dev3/pyglet/media/drivers/pulse/adaptation.py +0 -373
  291. pyglet-3.0.dev3/pyglet/media/drivers/pulse/interface.py +0 -774
  292. pyglet-3.0.dev3/pyglet/media/player.py +0 -731
  293. pyglet-3.0.dev3/pyglet/media/synthesis.py +0 -364
  294. pyglet-3.0.dev3/pyglet/model/__init__.py +0 -406
  295. pyglet-3.0.dev3/pyglet/model/codecs/__init__.py +0 -58
  296. pyglet-3.0.dev3/pyglet/model/codecs/obj.py +0 -273
  297. pyglet-3.0.dev3/pyglet/resource.py +0 -851
  298. pyglet-3.0.dev3/pyglet/shapes.py +0 -2765
  299. pyglet-3.0.dev3/pyglet/sprite.py +0 -752
  300. pyglet-3.0.dev3/pyglet/text/__init__.py +0 -559
  301. pyglet-3.0.dev3/pyglet/text/caret.py +0 -610
  302. pyglet-3.0.dev3/pyglet/window/__init__.py +0 -1940
  303. pyglet-3.0.dev3/pyglet/window/cocoa/__init__.py +0 -710
  304. pyglet-3.0.dev3/pyglet/window/emscripten/__init__.py +0 -779
  305. pyglet-3.0.dev3/pyglet/window/headless/__init__.py +0 -132
  306. pyglet-3.0.dev3/pyglet/window/wayland/__init__.py +0 -377
  307. pyglet-3.0.dev3/pyglet/window/win32/__init__.py +0 -1525
  308. pyglet-3.0.dev3/pyglet/window/xlib/__init__.py +0 -1750
  309. pyglet-3.0.dev3/pyproject.toml +0 -117
  310. pyglet-3.0.dev3/tests/annotations.py +0 -109
  311. pyglet-3.0.dev3/tests/conftest.py +0 -20
  312. pyglet-3.0.dev3/tests/integration/graphics/gl2/test_gl2_buffers.py +0 -69
  313. pyglet-3.0.dev3/tests/integration/graphics/opengl_core/test_buffers.py +0 -253
  314. pyglet-3.0.dev3/tests/integration/graphics/opengl_core/test_opengl_instancing.py +0 -158
  315. pyglet-3.0.dev3/tests/integration/graphics/test_atlas_bins.py +0 -83
  316. pyglet-3.0.dev3/tests/integration/graphics/test_compute_shader.py +0 -62
  317. pyglet-3.0.dev3/tests/integration/graphics/test_framebuffer.py +0 -95
  318. pyglet-3.0.dev3/tests/integration/graphics/test_groups.py +0 -368
  319. pyglet-3.0.dev3/tests/integration/graphics/test_shaders.py +0 -685
  320. pyglet-3.0.dev3/tests/integration/graphics/test_texture3d.py +0 -126
  321. pyglet-3.0.dev3/tests/integration/graphics/test_texture_mipmaps.py +0 -100
  322. pyglet-3.0.dev3/tests/integration/graphics/test_texturearray.py +0 -119
  323. pyglet-3.0.dev3/tests/integration/resource/test_resource_image_loading.py +0 -29
  324. pyglet-3.0.dev3/tests/integration/window/test_window_config.py +0 -52
  325. pyglet-3.0.dev3/tests/interactive/conftest.py +0 -85
  326. pyglet-3.0.dev3/tests/interactive/window/test_window_events.py +0 -733
  327. pyglet-3.0.dev3/tests/interactive/window/test_window_fullscreen.py +0 -165
  328. pyglet-3.0.dev3/tests/interactive/window/test_window_modes.py +0 -127
  329. pyglet-3.0.dev3/tests/interactive/window/test_window_multisample.py +0 -148
  330. pyglet-3.0.dev3/tests/interactive/window/test_window_open.py +0 -50
  331. pyglet-3.0.dev3/tests/interactive/window/test_window_settings.py +0 -595
  332. pyglet-3.0.dev3/tests/interactive/window/window_util.py +0 -27
  333. pyglet-3.0.dev3/tests/unit/math/test_quat.py +0 -23
  334. pyglet-3.0.dev3/tests/unit/shapes/test_bordered_rectangle.py +0 -83
  335. pyglet-3.0.dev3/tests/unit/test_events.py +0 -228
  336. pyglet-3.0.dev3/tests/unit/test_sprite.py +0 -240
  337. pyglet-3.0.dev3/tests/unit/text/test_caret.py +0 -103
  338. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/.coveragerc +0 -0
  339. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  340. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  341. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/.github/ISSUE_TEMPLATE/questions--or-other.md +0 -0
  342. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/.github/workflows/codeql.yml +0 -0
  343. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/.gitignore +0 -0
  344. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/.readthedocs.yml +0 -0
  345. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/API_CHANGES.rst +0 -0
  346. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/LICENSE +0 -0
  347. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/MANIFEST.in +0 -0
  348. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/README.md +0 -0
  349. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/RELEASE_NOTES +0 -0
  350. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/TODO.txt +0 -0
  351. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/contrib/aseprite_codec/README +0 -0
  352. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/contrib/aseprite_codec/asedemo.py +0 -0
  353. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/contrib/aseprite_codec/aseprite.py +0 -0
  354. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/contrib/aseprite_codec/running.ase +0 -0
  355. {pyglet-3.0.dev3/experimental → pyglet-3.0.dev5/contrib}/dist_field/README +0 -0
  356. {pyglet-3.0.dev3/experimental → pyglet-3.0.dev5/contrib}/dist_field/genfield.py +0 -0
  357. {pyglet-3.0.dev3/experimental → pyglet-3.0.dev5/contrib}/dist_field/py.df.png +0 -0
  358. {pyglet-3.0.dev3/experimental → pyglet-3.0.dev5/contrib}/dist_field/py.png +0 -0
  359. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/contrib/qt_sprite_preview.py +0 -0
  360. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/contrib/scenemanager.py +0 -0
  361. {pyglet-3.0.dev3/experimental → pyglet-3.0.dev5/contrib/svg}/hello_world.svg +0 -0
  362. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/contrib/toys/follow_mouse.py +0 -0
  363. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/Makefile +0 -0
  364. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/_static/css/custom.css +0 -0
  365. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/_static/favicon.ico +0 -0
  366. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/_static/logo.png +0 -0
  367. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/_static/logo5.svg +0 -0
  368. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/_static/relatedlogo.png +0 -0
  369. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/conf.py +0 -0
  370. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/external_resources.rst +0 -0
  371. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/contributing.rst +0 -0
  372. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/dist.rst +0 -0
  373. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/doc.rst +0 -0
  374. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/generated.rst +0 -0
  375. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/gl.rst +0 -0
  376. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/media_logging_manual.rst +0 -0
  377. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/testing.rst +0 -0
  378. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/virtualenv.rst +0 -0
  379. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/wraptypes-class.svg +0 -0
  380. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/internal/wraptypes.rst +0 -0
  381. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/make.bat +0 -0
  382. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/app.rst +0 -0
  383. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/clock.rst +0 -0
  384. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/customtypes.rst +0 -0
  385. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/display.rst +0 -0
  386. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/enums.rst +0 -0
  387. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/event.rst +0 -0
  388. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/font/index.rst +0 -0
  389. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/font/user.rst +0 -0
  390. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/graphics/allocation.rst +0 -0
  391. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/graphics/draw.rst +0 -0
  392. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/graphics/framebuffer.rst +0 -0
  393. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/graphics/shader.rst +0 -0
  394. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/graphics/vertexdomain.rst +0 -0
  395. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/gui.rst +0 -0
  396. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/image/animation.rst +0 -0
  397. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/image/index.rst +0 -0
  398. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/info.rst +0 -0
  399. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/input.rst +0 -0
  400. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/math.rst +0 -0
  401. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/media_synthesis.rst +0 -0
  402. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/models.rst +0 -0
  403. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/pyglet.rst +0 -0
  404. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/shapes.rst +0 -0
  405. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/text/caret.rst +0 -0
  406. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/text/document.rst +0 -0
  407. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/text/index.rst +0 -0
  408. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/text/layout.rst +0 -0
  409. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/window_key.rst +0 -0
  410. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/modules/window_mouse.rst +0 -0
  411. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/context.rst +0 -0
  412. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/debug.rst +0 -0
  413. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/events.rst +0 -0
  414. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/gl.rst +0 -0
  415. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/abstract_image.png +0 -0
  416. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/abstract_image.svg +0 -0
  417. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/buffer_image.png +0 -0
  418. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/buffer_image.svg +0 -0
  419. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/context_flow.png +0 -0
  420. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/context_flow.svg +0 -0
  421. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_crosshair.png +0 -0
  422. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_default.png +0 -0
  423. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_hand.png +0 -0
  424. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_no.png +0 -0
  425. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_size_down.png +0 -0
  426. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_size_left.png +0 -0
  427. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_size_left_right.png +0 -0
  428. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_size_right.png +0 -0
  429. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_size_up.png +0 -0
  430. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_size_up_down.png +0 -0
  431. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_text.png +0 -0
  432. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_mac_wait.png +0 -0
  433. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_crosshair.png +0 -0
  434. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_default.png +0 -0
  435. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_hand.png +0 -0
  436. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_help.png +0 -0
  437. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_no.png +0 -0
  438. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_size.png +0 -0
  439. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_size_left_right.png +0 -0
  440. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_size_nesw.png +0 -0
  441. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_size_nwse.png +0 -0
  442. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_size_up_down.png +0 -0
  443. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_text.png +0 -0
  444. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_wait.png +0 -0
  445. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/cursor_win_wait_arrow.png +0 -0
  446. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/explosion.png +0 -0
  447. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/font_metrics.png +0 -0
  448. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/font_metrics.svg +0 -0
  449. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/image_classes.png +0 -0
  450. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/image_classes.svg +0 -0
  451. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/image_grid.png +0 -0
  452. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/image_grid.svg +0 -0
  453. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/image_sequence.png +0 -0
  454. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/image_sequence.svg +0 -0
  455. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/mouse_coordinates.png +0 -0
  456. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/mouse_coordinates.svg +0 -0
  457. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/screens.png +0 -0
  458. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/screens.svg +0 -0
  459. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/text_classes.png +0 -0
  460. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/text_classes.svg +0 -0
  461. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_location.png +0 -0
  462. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_location.svg +0 -0
  463. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_osx_borderless.png +0 -0
  464. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_osx_default.png +0 -0
  465. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_osx_dialog.png +0 -0
  466. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_osx_tool.png +0 -0
  467. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_xp_default.png +0 -0
  468. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_xp_dialog.png +0 -0
  469. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_xp_overlay.png +0 -0
  470. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_xp_tool.png +0 -0
  471. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/img/window_xp_transparent.png +0 -0
  472. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/input.rst +0 -0
  473. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/installation.rst +0 -0
  474. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/keyboard.rst +0 -0
  475. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/math.rst +0 -0
  476. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/models.rst +0 -0
  477. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/mouse.rst +0 -0
  478. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/opengles.rst +0 -0
  479. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/options.rst +0 -0
  480. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/pyodide.rst +0 -0
  481. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/resources.rst +0 -0
  482. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/shapes.rst +0 -0
  483. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/doc/programming_guide/time.rst +0 -0
  484. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/dpi_scaled_window.py +0 -0
  485. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/events/events_key_state_handler.py +0 -0
  486. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/events/register_event_type.py +0 -0
  487. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/events/window_events.py +0 -0
  488. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/events/window_platform_event.py +0 -0
  489. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/resources/asteroid.png +0 -0
  490. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/resources/bullet.png +0 -0
  491. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/resources/bullet.wav +0 -0
  492. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/resources/engine_flame.png +0 -0
  493. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/resources/player.png +0 -0
  494. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version1/asteroid.py +0 -0
  495. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version1/game/__init__.py +0 -0
  496. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version1/game/load.py +0 -0
  497. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version1/game/util.py +0 -0
  498. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version2/asteroid.py +0 -0
  499. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version2/game/__init__.py +0 -0
  500. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version2/game/load.py +0 -0
  501. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version2/game/physicalobject.py +0 -0
  502. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version2/game/player.py +0 -0
  503. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version2/game/util.py +0 -0
  504. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version3/asteroid.py +0 -0
  505. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version3/game/__init__.py +0 -0
  506. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version3/game/load.py +0 -0
  507. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version3/game/physicalobject.py +0 -0
  508. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version3/game/player.py +0 -0
  509. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version3/game/util.py +0 -0
  510. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version4/asteroid.py +0 -0
  511. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version4/game/__init__.py +0 -0
  512. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version4/game/asteroid.py +0 -0
  513. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version4/game/bullet.py +0 -0
  514. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version4/game/load.py +0 -0
  515. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version4/game/physicalobject.py +0 -0
  516. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version4/game/player.py +0 -0
  517. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version4/game/util.py +0 -0
  518. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version5/asteroid.py +0 -0
  519. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version5/game/__init__.py +0 -0
  520. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version5/game/asteroid.py +0 -0
  521. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version5/game/bullet.py +0 -0
  522. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version5/game/load.py +0 -0
  523. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version5/game/physicalobject.py +0 -0
  524. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version5/game/player.py +0 -0
  525. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/game/version5/game/util.py +0 -0
  526. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/graphics/instancing.py +0 -0
  527. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/gui/bar.png +0 -0
  528. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/gui/button_hover.png +0 -0
  529. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/gui/button_pressed.png +0 -0
  530. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/gui/button_unpressed.png +0 -0
  531. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/gui/knob.png +0 -0
  532. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/gui/widgets.py +0 -0
  533. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/hello_world.py +0 -0
  534. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/image/image_convert.py +0 -0
  535. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/image/image_display.py +0 -0
  536. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/input/apple_remote.py +0 -0
  537. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/input/controller.py +0 -0
  538. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/input/input.py +0 -0
  539. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/input/joystick.py +0 -0
  540. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/input/tablet.py +0 -0
  541. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/media_info.py +0 -0
  542. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/noisy/README +0 -0
  543. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/noisy/ball.png +0 -0
  544. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/noisy/ball.wav +0 -0
  545. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/noisy/noisy.py +0 -0
  546. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/soundspace/README +0 -0
  547. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/soundspace/reader.py +0 -0
  548. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/soundspace/res/bass.wav +0 -0
  549. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/soundspace/res/drums.wav +0 -0
  550. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/soundspace/res/guitar.wav +0 -0
  551. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/soundspace/res/piano.wav +0 -0
  552. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/soundspace/res/space.txt +0 -0
  553. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/soundspace/soundspace.py +0 -0
  554. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/synthesizer.py +0 -0
  555. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/media/video.py +0 -0
  556. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/model/box.mtl +0 -0
  557. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/model/box.obj +0 -0
  558. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/model/logo3d.mtl +0 -0
  559. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/model/logo3d.obj +0 -0
  560. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/model/model.py +0 -0
  561. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/model/pyglet.png +0 -0
  562. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/opengl/compute_shader.py +0 -0
  563. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/opengl/egl_context.py +0 -0
  564. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/opengl/opengl_context.py +0 -0
  565. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/opengl/opengl_core.py +0 -0
  566. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/opengl/pyglet.png +0 -0
  567. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/opengl/torus.py +0 -0
  568. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/programming_guide/animation.py +0 -0
  569. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/programming_guide/dinosaur.gif +0 -0
  570. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/programming_guide/events.py +0 -0
  571. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/programming_guide/hello_world.py +0 -0
  572. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/programming_guide/image_viewer.py +0 -0
  573. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/programming_guide/kitten.jpg +0 -0
  574. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/programming_guide/window_subclass.py +0 -0
  575. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/resources/Brick1Blue.png +0 -0
  576. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/resources/Brick1Crack3.png +0 -0
  577. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/resources/Brick1Gray.png +0 -0
  578. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/resources/kitten.jpg +0 -0
  579. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/resources/pyglet.png +0 -0
  580. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/shapes.py +0 -0
  581. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/sprite/depth_sprite.py +0 -0
  582. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/sprite/display_sprite.py +0 -0
  583. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/text/advanced_font.py +0 -0
  584. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/text/font_groups.py +0 -0
  585. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/text/html_label.py +0 -0
  586. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/text/pyglet.png +0 -0
  587. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/text/text_input.py +0 -0
  588. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/text/user_bitmap_font.py +0 -0
  589. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/timer.py +0 -0
  590. {pyglet-3.0.dev3/examples → pyglet-3.0.dev5/examples/window}/clipboard.py +0 -0
  591. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/window/file_dialogs.py +0 -0
  592. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/window/fixed_resolution.py +0 -0
  593. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/window/fps_change.py +0 -0
  594. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/window/multiple_windows.py +0 -0
  595. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/window/no_backend.py +0 -0
  596. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/window/overlay_window.py +0 -0
  597. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/examples/window/transparent_window.py +0 -0
  598. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/make.py +0 -0
  599. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/__init__.pyi +0 -0
  600. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/app/__init__.py +0 -0
  601. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/app/async_app.py +0 -0
  602. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/app/base.py +0 -0
  603. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/app/linux.py +0 -0
  604. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/app/win32.py +0 -0
  605. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/clock.py +0 -0
  606. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/config/__init__.py +0 -0
  607. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/config/base.py +0 -0
  608. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/config/gl/__init__.py +0 -0
  609. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/config/gl/egl.py +0 -0
  610. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/config/gl/macos.py +0 -0
  611. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/config/gl/webgl.py +0 -0
  612. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/config/gl/windows.py +0 -0
  613. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/config/gl/x11.py +0 -0
  614. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/__init__.py +0 -0
  615. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/__init__.pyi +0 -0
  616. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/base.py +0 -0
  617. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/cocoa.py +0 -0
  618. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/emscripten.py +0 -0
  619. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/headless.py +0 -0
  620. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/wayland.py +0 -0
  621. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/win32.py +0 -0
  622. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/xlib.py +0 -0
  623. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/display/xlib_vidmoderestore.py +0 -0
  624. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/enums.py +0 -0
  625. {pyglet-3.0.dev3 → pyglet-3.0.dev5/pyglet}/experimental/flaccodec.py +0 -0
  626. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/experimental/hidraw.py +0 -0
  627. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/experimental/jobs.py +0 -0
  628. {pyglet-3.0.dev3 → pyglet-3.0.dev5/pyglet}/experimental/win32priority.py +0 -0
  629. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/extlibs/__init__.py +0 -0
  630. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/extlibs/earcut.py +0 -0
  631. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/extlibs/png.py +0 -0
  632. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/__init__.py +0 -0
  633. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/base.py +0 -0
  634. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/dwrite/d2d1_types_lib.py +0 -0
  635. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/dwrite/dwrite_lib.py +0 -0
  636. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/freetype.py +0 -0
  637. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/freetype_lib.py +0 -0
  638. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/group.py +0 -0
  639. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/harfbuzz.py +0 -0
  640. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/pyodide_js.py +0 -0
  641. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/quartz.py +0 -0
  642. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/ttf.py +0 -0
  643. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/user.py +0 -0
  644. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/font/win32.py +0 -0
  645. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/allocation.py +0 -0
  646. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/__init__.py +0 -0
  647. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/base.py +0 -0
  648. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/cocoa/__init__.py +0 -0
  649. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/default_shaders.py +0 -0
  650. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/egl/__init__.py +0 -0
  651. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/enums.py +0 -0
  652. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/framebuffer.py +0 -0
  653. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/gl.py +0 -0
  654. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/lib.py +0 -0
  655. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/shapes.py +0 -0
  656. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/text.py +0 -0
  657. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/vertexarray.py +0 -0
  658. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/win32/__init__.py +0 -0
  659. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/win32/wgl_info.py +0 -0
  660. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/xlib/__init__.py +0 -0
  661. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl/xlib/glx_info.py +0 -0
  662. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl1/__init__.py +0 -0
  663. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl1/gl_compat.py +0 -0
  664. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl2/__init__.py +0 -0
  665. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/gl2/text.py +0 -0
  666. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/webgl/enums.py +0 -0
  667. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/webgl/framebuffer.py +0 -0
  668. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/webgl/gl.py +0 -0
  669. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/webgl/shapes.py +0 -0
  670. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/webgl/text.py +0 -0
  671. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/webgl/vertexarray.py +0 -0
  672. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/api/webgl/webgl_js.pyi +0 -0
  673. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/graphics/framebuffer.py +0 -0
  674. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/gui/__init__.py +0 -0
  675. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/gui/frame.py +0 -0
  676. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/gui/ninepatch.py +0 -0
  677. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/gui/widgets.py +0 -0
  678. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/__init__.py +0 -0
  679. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/bmp.py +0 -0
  680. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/dds.py +0 -0
  681. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/gdiplus.py +0 -0
  682. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/gdkpixbuf2.py +0 -0
  683. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/gif.py +0 -0
  684. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/js_image.py +0 -0
  685. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/ktx2.py +0 -0
  686. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/pil.py +0 -0
  687. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/png.py +0 -0
  688. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/image/codecs/quartz.py +0 -0
  689. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/__init__.py +0 -0
  690. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/base.py +0 -0
  691. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/controller.py +0 -0
  692. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/controller_db.py +0 -0
  693. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/emscripten/__init__.py +0 -0
  694. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/emscripten/gamepad_js.py +0 -0
  695. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/linux/__init__.py +0 -0
  696. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/linux/evdev.py +0 -0
  697. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/linux/evdev_constants.py +0 -0
  698. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/linux/x11_xinput.py +0 -0
  699. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/linux/x11_xinput_tablet.py +0 -0
  700. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/macos/__init__.py +0 -0
  701. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/macos/darwin_gc.py +0 -0
  702. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/macos/darwin_hid.py +0 -0
  703. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/win32/__init__.py +0 -0
  704. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/win32/wintab.py +0 -0
  705. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/input/win32/xinput.py +0 -0
  706. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/__init__.py +0 -0
  707. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/darwin/__init__.py +0 -0
  708. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/darwin/agl.py +0 -0
  709. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/darwin/cocoapy/__init__.py +0 -0
  710. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/darwin/cocoapy/cocoahelpers.py +0 -0
  711. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/darwin/cocoapy/cocoatypes.py +0 -0
  712. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/darwin/coreaudio.py +0 -0
  713. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/darwin/lib_agl.py +0 -0
  714. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/darwin/quartzkey.py +0 -0
  715. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/egl/__init__.py +0 -0
  716. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/egl/egl_lib.py +0 -0
  717. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/egl/eglext.py +0 -0
  718. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/__init__.py +0 -0
  719. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/egl/__init__.py +0 -0
  720. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/egl/egl.py +0 -0
  721. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/egl/eglext.py +0 -0
  722. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/egl/lib.py +0 -0
  723. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/glx/__init__.py +0 -0
  724. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/glx/glx.py +0 -0
  725. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/glx/glxext_arb.py +0 -0
  726. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/glx/glxext_mesa.py +0 -0
  727. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/glx/glxext_nv.py +0 -0
  728. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/glx/lib_glx.py +0 -0
  729. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/ioctl.py +0 -0
  730. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/wayland/__init__.py +0 -0
  731. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/wayland/client.py +0 -0
  732. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/wayland/gbm.py +0 -0
  733. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/wayland/lib_wayland.py +0 -0
  734. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/wayland/wayland_egl.py +0 -0
  735. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/wayland/xkbcommon.py +0 -0
  736. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/__init__.py +0 -0
  737. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/cursorfont.py +0 -0
  738. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/xf86vmode.py +0 -0
  739. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/xinerama.py +0 -0
  740. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/xinput.py +0 -0
  741. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/xlib.py +0 -0
  742. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/xrandr.py +0 -0
  743. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/xrender.py +0 -0
  744. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/linux/x11/xsync.py +0 -0
  745. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/__init__.py +0 -0
  746. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/lib_harfbuzz.py +0 -0
  747. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/spirv/__init__.py +0 -0
  748. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/spirv/lib_shaderc.py +0 -0
  749. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/spirv/lib_spirv_cross.py +0 -0
  750. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/__init__.py +0 -0
  751. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/exceptions.py +0 -0
  752. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/func.py +0 -0
  753. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/func_helpers.py +0 -0
  754. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vk_video.py +0 -0
  755. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vk_video.pyi +0 -0
  756. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_core.py +0 -0
  757. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_core.pyi +0 -0
  758. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_ios.py +0 -0
  759. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_ios.pyi +0 -0
  760. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_macos.py +0 -0
  761. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_macos.pyi +0 -0
  762. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_metal.py +0 -0
  763. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_metal.pyi +0 -0
  764. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_wayland.py +0 -0
  765. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_wayland.pyi +0 -0
  766. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_win32.py +0 -0
  767. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_win32.pyi +0 -0
  768. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_xcb.py +0 -0
  769. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_xcb.pyi +0 -0
  770. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_xlib.py +0 -0
  771. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_xlib.pyi +0 -0
  772. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_xlib_xrandr.py +0 -0
  773. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/shared/vulkan_lib/vulkan_xlib_xrandr.pyi +0 -0
  774. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/__init__.py +0 -0
  775. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/com.py +0 -0
  776. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/constants.py +0 -0
  777. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/context_managers.py +0 -0
  778. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/dinput.py +0 -0
  779. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/lib_wgl.py +0 -0
  780. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/libwintab.py +0 -0
  781. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/types.py +0 -0
  782. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/wgl.py +0 -0
  783. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/wglext_arb.py +0 -0
  784. /pyglet-3.0.dev3/pyglet/image/codecs/wincodec_lib.py → /pyglet-3.0.dev5/pyglet/libs/win32/wincodec.py +0 -0
  785. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/libs/win32/winkey.py +0 -0
  786. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/__init__.py +0 -0
  787. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/buffered_logger.py +0 -0
  788. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/__init__.py +0 -0
  789. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/coreaudio.py +0 -0
  790. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/ffmpeg.py +0 -0
  791. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/ffmpeg_lib/__init__.py +0 -0
  792. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/ffmpeg_lib/compat.py +0 -0
  793. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/ffmpeg_lib/libavcodec.py +0 -0
  794. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/ffmpeg_lib/libavformat.py +0 -0
  795. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/ffmpeg_lib/libavutil.py +0 -0
  796. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/ffmpeg_lib/libswresample.py +0 -0
  797. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/ffmpeg_lib/libswscale.py +0 -0
  798. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/gstreamer.py +0 -0
  799. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/pyogg.py +0 -0
  800. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/webaudio_pyodide.py +0 -0
  801. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/codecs/wmf.py +0 -0
  802. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/devices/__init__.py +0 -0
  803. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/devices/base.py +0 -0
  804. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/devices/win32.py +0 -0
  805. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/__init__.py +0 -0
  806. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/directsound/__init__.py +0 -0
  807. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/directsound/adaptation.py +0 -0
  808. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/directsound/exceptions.py +0 -0
  809. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/directsound/interface.py +0 -0
  810. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/directsound/lib_dsound.py +0 -0
  811. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/listener.py +0 -0
  812. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/openal/__init__.py +0 -0
  813. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/openal/adaptation.py +0 -0
  814. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/openal/interface.py +0 -0
  815. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/openal/lib_alc.py +0 -0
  816. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/openal/lib_openal.py +0 -0
  817. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/pulse/__init__.py +0 -0
  818. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/pulse/lib_pulseaudio.py +0 -0
  819. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/pyodide_js/__init__.py +0 -0
  820. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/pyodide_js/adaptation.py +0 -0
  821. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/silent/__init__.py +0 -0
  822. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/silent/adaptation.py +0 -0
  823. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/xaudio2/__init__.py +0 -0
  824. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/xaudio2/adaptation.py +0 -0
  825. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/xaudio2/interface.py +0 -0
  826. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/drivers/xaudio2/lib_xaudio2.py +0 -0
  827. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/exceptions.py +0 -0
  828. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/instrumentation.py +0 -0
  829. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/media/player_worker_thread.py +0 -0
  830. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/model/codecs/base.py +0 -0
  831. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/model/codecs/gltf.py +0 -0
  832. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/py.typed +0 -0
  833. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/document.py +0 -0
  834. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/formats/__init__.py +0 -0
  835. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/formats/attributed.py +0 -0
  836. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/formats/html.py +0 -0
  837. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/formats/plaintext.py +0 -0
  838. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/formats/structured.py +0 -0
  839. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/layout/__init__.py +0 -0
  840. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/layout/base.py +0 -0
  841. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/layout/incremental.py +0 -0
  842. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/layout/scrolling.py +0 -0
  843. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/text/runlist.py +0 -0
  844. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/util.py +0 -0
  845. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/cocoa/pyglet_delegate.py +0 -0
  846. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/cocoa/pyglet_textview.py +0 -0
  847. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/cocoa/pyglet_view.py +0 -0
  848. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/cocoa/pyglet_window.py +0 -0
  849. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/cocoa/systemcursor.py +0 -0
  850. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/dialog/__init__.py +0 -0
  851. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/dialog/base.py +0 -0
  852. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/dialog/darwin.py +0 -0
  853. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/dialog/linux.py +0 -0
  854. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/dialog/windows.py +0 -0
  855. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/event.py +0 -0
  856. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/key.py +0 -0
  857. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pyglet/window/mouse.py +0 -0
  858. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/pytest.ini +0 -0
  859. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/setup.py +0 -0
  860. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/__init__.py +0 -0
  861. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/base/__init__.py +0 -0
  862. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/base/data.py +0 -0
  863. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/base/event_loop.py +0 -0
  864. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/base/interactive.py +0 -0
  865. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/base/performance.py +0 -0
  866. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/fonts/README +0 -0
  867. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/fonts/action_man.ttf +0 -0
  868. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/fonts/action_man_atlas.png +0 -0
  869. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/fonts/action_man_bold.ttf +0 -0
  870. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/fonts/action_man_bold_italic.ttf +0 -0
  871. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/fonts/action_man_italic.ttf +0 -0
  872. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/fonts/courR12-ISO8859-1.pcf +0 -0
  873. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/8bpp.gif +0 -0
  874. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/cursor.png +0 -0
  875. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/dinosaur.gif +0 -0
  876. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/gdk_close.png +0 -0
  877. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/grey_background.png +0 -0
  878. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/icon1.png +0 -0
  879. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/icon_size1.png +0 -0
  880. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/icon_size2.png +0 -0
  881. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/icon_size3.png +0 -0
  882. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/icon_size4.png +0 -0
  883. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/icon_size5.png +0 -0
  884. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/l.png +0 -0
  885. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/la.png +0 -0
  886. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/multitexture.png +0 -0
  887. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb.png +0 -0
  888. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_16bpp.bmp +0 -0
  889. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_1bpp.bmp +0 -0
  890. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_24bpp.bmp +0 -0
  891. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_32bpp.bmp +0 -0
  892. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_4bpp.bmp +0 -0
  893. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_8bpp.bmp +0 -0
  894. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_8bpp.png +0 -0
  895. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_8bpp_trans.png +0 -0
  896. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_bc6s.dds +0 -0
  897. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgb_dxt1.dds +0 -0
  898. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgba.png +0 -0
  899. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgba_32bpp.bmp +0 -0
  900. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgba_bc7.dds +0 -0
  901. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgba_bc7.ktx2 +0 -0
  902. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgba_dxt1.dds +0 -0
  903. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgba_dxt3.dds +0 -0
  904. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/rgba_dxt5.dds +0 -0
  905. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/images/tests.interactive.test_interactive_test_base._Test.test_1.001.png +0 -0
  906. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/README +0 -0
  907. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/alert.wav +0 -0
  908. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/login.wav +0 -0
  909. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/logout.wav +0 -0
  910. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/receive.wav +0 -0
  911. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/send.wav +0 -0
  912. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_sawtooth_16_11025_1ch.wav +0 -0
  913. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_sawtooth_16_44800_1ch.wav +0 -0
  914. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_silence_16_11025_1ch.wav +0 -0
  915. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_silence_16_44800_1ch.wav +0 -0
  916. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_simplefm_16_11025_1ch.wav +0 -0
  917. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_simplefm_16_44800_1ch.wav +0 -0
  918. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_sine_16_11025_1ch.wav +0 -0
  919. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_sine_16_44800_1ch.wav +0 -0
  920. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_square_16_11025_1ch.wav +0 -0
  921. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_square_16_44800_1ch.wav +0 -0
  922. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_triangle_16_11025_1ch.wav +0 -0
  923. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/media/synthesis_triangle_16_44800_1ch.wav +0 -0
  924. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/models/logo3d.mtl +0 -0
  925. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/data/models/logo3d.obj +0 -0
  926. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/__init__.py +0 -0
  927. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/app/__init__.py +0 -0
  928. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/app/test_eventloop.py +0 -0
  929. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/conftest.py +0 -0
  930. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/font/__init__.py +0 -0
  931. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/font/test_font.py +0 -0
  932. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/font/test_freetype_face.py +0 -0
  933. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/graphics/__init__.py +0 -0
  934. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/graphics/opengl_core/__init__.py +0 -0
  935. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/graphics/test_allocation.py +0 -0
  936. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/graphics/test_batch_migration.py +0 -0
  937. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/graphics/test_texture2d.py +0 -0
  938. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/graphics/test_texturegrid.py +0 -0
  939. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/graphics/test_vertex_list.py +0 -0
  940. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/image/__init__.py +0 -0
  941. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/image/test_gdkpixbuf2.py +0 -0
  942. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/image/test_imagegrid.py +0 -0
  943. {pyglet-3.0.dev3/tests/integration/media → pyglet-3.0.dev5/tests/integration/libs}/__init__.py +0 -0
  944. {pyglet-3.0.dev3/tests/integration/model → pyglet-3.0.dev5/tests/integration/libs/darwin}/__init__.py +0 -0
  945. {pyglet-3.0.dev3/tests/integration/resource → pyglet-3.0.dev5/tests/integration/libs/darwin/cocoapy}/__init__.py +0 -0
  946. {pyglet-3.0.dev3/tests/integration/text → pyglet-3.0.dev5/tests/integration/media}/__init__.py +0 -0
  947. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/mock_player.py +0 -0
  948. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/test_directsound.py +0 -0
  949. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/test_driver.py +0 -0
  950. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/test_ffmpeg.py +0 -0
  951. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/test_listener.py +0 -0
  952. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/test_loading.py +0 -0
  953. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/test_openal.py +0 -0
  954. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/test_player.py +0 -0
  955. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/media/test_pulse.py +0 -0
  956. {pyglet-3.0.dev3/tests/integration/window → pyglet-3.0.dev5/tests/integration/model}/__init__.py +0 -0
  957. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/model/test_loading.py +0 -0
  958. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/platform/__init__.py +0 -0
  959. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/platform/test_win_context_managers.py +0 -0
  960. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/platform/test_win_multicore_clock.py +0 -0
  961. {pyglet-3.0.dev3/tests/interactive → pyglet-3.0.dev5/tests/integration/resource}/__init__.py +0 -0
  962. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/resource/dir1/dir1/f3.txt +0 -0
  963. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/resource/dir1/f2.txt +0 -0
  964. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/resource/dir1/res.zip +0 -0
  965. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/resource/dir2/f6.txt +0 -0
  966. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/resource/f1.txt +0 -0
  967. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/resource/rgbm.png +0 -0
  968. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/resource/test_resource_loading.py +0 -0
  969. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/test_integrations.py +0 -0
  970. {pyglet-3.0.dev3/tests/interactive/image → pyglet-3.0.dev5/tests/integration/text}/__init__.py +0 -0
  971. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/text/test_empty_document.py +0 -0
  972. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/text/test_label_creation.py +0 -0
  973. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/text/test_layout.py +0 -0
  974. {pyglet-3.0.dev3/tests/interactive/media → pyglet-3.0.dev5/tests/integration/window}/__init__.py +0 -0
  975. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/window/test_context_share.py +0 -0
  976. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/window/test_event_sequence.py +0 -0
  977. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/integration/window/test_window_caption.py +0 -0
  978. {pyglet-3.0.dev3/tests/interactive/text → pyglet-3.0.dev5/tests/interactive}/__init__.py +0 -0
  979. {pyglet-3.0.dev3/tests/interactive/window → pyglet-3.0.dev5/tests/interactive/image}/__init__.py +0 -0
  980. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/image/test_image.py +0 -0
  981. {pyglet-3.0.dev3/tests/unit → pyglet-3.0.dev5/tests/interactive/media}/__init__.py +0 -0
  982. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/media/test_player.py +0 -0
  983. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/screenshots/committed/README +0 -0
  984. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/screenshots/session/README +0 -0
  985. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/shapes/test_shapes.py +0 -0
  986. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/test_interactive_test_base.py +0 -0
  987. {pyglet-3.0.dev3/tests/unit/math → pyglet-3.0.dev5/tests/interactive/text}/__init__.py +0 -0
  988. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_caret_color.py +0 -0
  989. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_content_valign.py +0 -0
  990. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_html.py +0 -0
  991. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_inline_elements.py +0 -0
  992. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_inline_elements_style_change.py +0 -0
  993. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_layout_anchoring.py +0 -0
  994. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_multiline_wrap.py +0 -0
  995. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_plain.py +0 -0
  996. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/text/test_style.py +0 -0
  997. {pyglet-3.0.dev3/tests/unit/media → pyglet-3.0.dev5/tests/interactive/window}/__init__.py +0 -0
  998. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/window/test_window_styles.py +0 -0
  999. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/interactive/windowed_test_base.py +0 -0
  1000. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/requirements.txt +0 -0
  1001. {pyglet-3.0.dev3/tests/unit/platform → pyglet-3.0.dev5/tests/unit}/__init__.py +0 -0
  1002. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/conftest.py +0 -0
  1003. {pyglet-3.0.dev3/tests/unit/shader → pyglet-3.0.dev5/tests/unit/libs}/__init__.py +0 -0
  1004. {pyglet-3.0.dev3/tests/unit/shapes → pyglet-3.0.dev5/tests/unit/libs/darwin}/__init__.py +0 -0
  1005. {pyglet-3.0.dev3/tests/unit/text → pyglet-3.0.dev5/tests/unit/libs/darwin/cocoapy}/__init__.py +0 -0
  1006. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/math/test_mat.py +0 -0
  1007. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/math/test_vec2.py +0 -0
  1008. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/math/test_vec3.py +0 -0
  1009. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/math/test_vec4.py +0 -0
  1010. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/media/test_player.py +0 -0
  1011. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/media/test_sources.py +0 -0
  1012. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/media/test_synthesis.py +0 -0
  1013. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/platform/test_mac_objc.py +0 -0
  1014. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/shader/conftest.py +0 -0
  1015. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/shader/test_shader.py-SUSPENDED +0 -0
  1016. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/shapes/conftest.py +0 -0
  1017. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/shapes/test_shapes.py +0 -0
  1018. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/test_atlas.py +0 -0
  1019. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/test_clock.py +0 -0
  1020. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/test_clock_freq.py +0 -0
  1021. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/test_image_data.py +0 -0
  1022. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/test_input.py +0 -0
  1023. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/test_resource_path.py +0 -0
  1024. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tests/unit/text/test_text.py +0 -0
  1025. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/al_info.py +0 -0
  1026. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/bokeh_timeline.py +0 -0
  1027. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/compare.py +0 -0
  1028. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/configure.py +0 -0
  1029. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/extractors.py +0 -0
  1030. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/fs.py +0 -0
  1031. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/mp.py +0 -0
  1032. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/mpexceptions.py +0 -0
  1033. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/playmany.py +0 -0
  1034. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/readme_ffmpeg_debbuging_branch.txt +0 -0
  1035. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/readme_run_tests.txt +0 -0
  1036. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/report.py +0 -0
  1037. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/reports.py +0 -0
  1038. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/retry_crashed.py +0 -0
  1039. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/run_test_suite.py +0 -0
  1040. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/summarize.py +0 -0
  1041. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/test_instrumentation.py +0 -0
  1042. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/ffmpeg/timeline.py +0 -0
  1043. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/gencontrollerdb.py +0 -0
  1044. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/gengl.py +0 -0
  1045. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/genwrappers.py +0 -0
  1046. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/gl.template +0 -0
  1047. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/gl.xml +0 -0
  1048. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/gl_info.py +0 -0
  1049. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/gl_stub.template +0 -0
  1050. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/inspect_font.py +0 -0
  1051. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/pyodide/dev_style.css +0 -0
  1052. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/pyodide/example.py +0 -0
  1053. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/pyodide/gen_pyodide_project.py +0 -0
  1054. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/pyodide/index.html +0 -0
  1055. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/pyodide/run_webgl_smoke.py +0 -0
  1056. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/pyodide/script.js +0 -0
  1057. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/requirements.txt +0 -0
  1058. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/wgl.h +0 -0
  1059. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/wraptypes/__init__.py +0 -0
  1060. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/wraptypes/cparser.py +0 -0
  1061. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/wraptypes/ctypesparser.py +0 -0
  1062. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/wraptypes/lex.py +0 -0
  1063. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/wraptypes/preprocessor.py +0 -0
  1064. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/wraptypes/wrap.py +0 -0
  1065. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/tools/wraptypes/yacc.py +0 -0
  1066. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/LICENSE.txt +0 -0
  1067. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/README.rst +0 -0
  1068. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/assets/favicon.ico +0 -0
  1069. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/assets/static/css/example-custom-styles.css +0 -0
  1070. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/assets/static/images/pyglet.png +0 -0
  1071. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/404.html/contents.lr +0 -0
  1072. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/404.html/ngc-5793.jpg +0 -0
  1073. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/authors/benjamin/contents.lr +0 -0
  1074. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/authors/benjamin/pyglet.png +0 -0
  1075. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/authors/contents.lr +0 -0
  1076. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/blog/contents.lr +0 -0
  1077. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/blog/welcome-blog/contents.lr +0 -0
  1078. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/contents.lr +0 -0
  1079. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/content/eclipse.jpg +0 -0
  1080. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/pyglet.lektorproject +0 -0
  1081. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/AUTHORS.txt +0 -0
  1082. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/CHANGELOG.md +0 -0
  1083. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/CONTRIBUTING.md +0 -0
  1084. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/LICENSE.txt +0 -0
  1085. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/NOTICE.txt +0 -0
  1086. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/README.md +0 -0
  1087. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/css/bootstrap.css +0 -0
  1088. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/css/icomoon.css +0 -0
  1089. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/css/magnific-popup.css +0 -0
  1090. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/css/style.css +0 -0
  1091. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/fonts/bootstrap/glyphicons-halflings-regular.ttf +0 -0
  1092. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/fonts/bootstrap/glyphicons-halflings-regular.woff +0 -0
  1093. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/fonts/bootstrap/glyphicons-halflings-regular.woff2 +0 -0
  1094. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/fonts/icomoon/icomoon.ttf +0 -0
  1095. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/fonts/icomoon/icomoon.woff +0 -0
  1096. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/images/Preloader_2.gif +0 -0
  1097. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/images/placeholder_person.png +0 -0
  1098. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/jquery-3.3.1.min.js +0 -0
  1099. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/jquery.easing.min.js +0 -0
  1100. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/jquery.magnific-popup.min.js +0 -0
  1101. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/jquery.stellar.js +0 -0
  1102. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/jquery.stellar.min.js +0 -0
  1103. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/jquery.waypoints.min.js +0 -0
  1104. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/magnific-popup-options.js +0 -0
  1105. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/main-singlelayout.js +0 -0
  1106. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/assets/static/js/main.js +0 -0
  1107. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/content.ini +0 -0
  1108. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/gallery.ini +0 -0
  1109. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/gallery_item.ini +0 -0
  1110. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/member.ini +0 -0
  1111. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/mission.ini +0 -0
  1112. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/mission_tab.ini +0 -0
  1113. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/service.ini +0 -0
  1114. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/services.ini +0 -0
  1115. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/flowblocks/team.ini +0 -0
  1116. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/images/blog-index.png +0 -0
  1117. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/images/full-blog.png +0 -0
  1118. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/images/full-page.png +0 -0
  1119. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/images/gallery-404.png +0 -0
  1120. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/images/gallery-singlepage.png +0 -0
  1121. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/images/mainpage-screenshots.png +0 -0
  1122. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/images/responsive-layout.png +0 -0
  1123. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/models/404.ini +0 -0
  1124. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/models/author.ini +0 -0
  1125. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/models/authors.ini +0 -0
  1126. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/models/blog-post.ini +0 -0
  1127. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/models/blog.ini +0 -0
  1128. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/models/page.ini +0 -0
  1129. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/models/single-layout.ini +0 -0
  1130. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/404.html +0 -0
  1131. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/author.html +0 -0
  1132. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/authors.html +0 -0
  1133. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/blocks/content.html +0 -0
  1134. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/blocks/gallery.html +0 -0
  1135. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/blocks/mission.html +0 -0
  1136. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/blocks/services.html +0 -0
  1137. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/blocks/team.html +0 -0
  1138. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/blog-layout.html +0 -0
  1139. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/blog-post.html +0 -0
  1140. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/blog.html +0 -0
  1141. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/layout.html +0 -0
  1142. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/macros/blog.html +0 -0
  1143. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/macros/pagination.html +0 -0
  1144. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/none.html +0 -0
  1145. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/page.html +0 -0
  1146. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/templates/single-layout.html +0 -0
  1147. {pyglet-3.0.dev3 → pyglet-3.0.dev5}/website/themes/lektor-icon/theme.ini +0 -0
@@ -0,0 +1,190 @@
1
+ name: PyTest
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ linux:
7
+ runs-on: ubuntu-latest
8
+ strategy:
9
+ matrix:
10
+ python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', '3.14', 'pypy-3.10' ]
11
+
12
+ name: Python ${{ matrix.python-version }} Ubuntu
13
+ steps:
14
+ - uses: actions/checkout@v4
15
+ - name: Setup python
16
+ uses: actions/setup-python@v5
17
+ with:
18
+ python-version: ${{ matrix.python-version }}
19
+ - name: Install dependencies
20
+ run: |
21
+ python -m pip install --upgrade pip
22
+ pip install pytest
23
+ sudo apt-get update
24
+ sudo apt-get install -y libopenal1 openal-tools
25
+ sudo apt-get install xvfb ffmpeg
26
+ - name: Run tests
27
+ env:
28
+ ALSOFT_DRIVERS: "null"
29
+ ALSOFT_LOGLEVEL: 1
30
+ run: |
31
+ backend_overrides=(
32
+ "opengl:4.6"
33
+ "gl2:2.0"
34
+ "gles2:2.0"
35
+ "gles3:3.2"
36
+ )
37
+
38
+ export PYGLET_BACKEND=opengl
39
+ export MESA_GL_VERSION_OVERRIDE=4.6
40
+ export MESA_GLES_VERSION_OVERRIDE=4.6
41
+ openal-info || true
42
+ xvfb-run --auto-servernum python3 -m pyglet.info
43
+ xvfb-run --auto-servernum pytest tests \
44
+ --ignore=tests/interactive \
45
+ --ignore=tests/integration/graphics
46
+ for backend_override in "${backend_overrides[@]}"; do
47
+ backend="${backend_override%%:*}"
48
+ version="${backend_override##*:}"
49
+ export PYGLET_BACKEND="${backend}"
50
+ export MESA_GL_VERSION_OVERRIDE="${version}"
51
+ export MESA_GLES_VERSION_OVERRIDE="${version}"
52
+ echo "Running backend-sensitive tests for backend=${backend}, version=${version}"
53
+ xvfb-run --auto-servernum python3 -m pyglet.info
54
+ xvfb-run --auto-servernum pytest tests/integration/graphics
55
+ done
56
+
57
+ osx:
58
+ runs-on: macos-latest
59
+ strategy:
60
+ matrix:
61
+ python-version: [ '3.10', '3.11', '3.12', '3.13', '3.14']
62
+ name: Python ${{ matrix.python-version }} macOS
63
+ steps:
64
+ - uses: actions/checkout@v4
65
+ - name: Setup python
66
+ uses: actions/setup-python@v5
67
+ with:
68
+ python-version: ${{ matrix.python-version }}
69
+ - name: Install dependencies
70
+ run: |
71
+ pip install pytest
72
+ - name: Run tests
73
+ run: |
74
+ python3 -m pyglet.info
75
+ pytest tests --ignore=tests/interactive --ignore=tests/integration
76
+
77
+ windows:
78
+ runs-on: windows-latest
79
+ strategy:
80
+ matrix:
81
+ python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
82
+
83
+ name: Python ${{ matrix.python-version }} Windows
84
+ steps:
85
+ - uses: actions/checkout@v4
86
+ - name: Setup python
87
+ uses: actions/setup-python@v5
88
+ with:
89
+ python-version: ${{ matrix.python-version }}
90
+ - uses: msys2/setup-msys2@v2
91
+ with:
92
+ msystem: MINGW64
93
+ release: false
94
+ install: mingw-w64-x86_64-mesa
95
+ - uses: ssciwr/setup-mesa-dist-win@v2
96
+ - name: Install dependencies
97
+ run: |
98
+ pip install pytest
99
+ - name: Run tests
100
+ shell: pwsh
101
+ run: |
102
+ $backend_test_args = @(
103
+ 'tests/integration/graphics'
104
+ )
105
+
106
+ $backend_overrides = @(
107
+ @{ backend = 'opengl'; version = '4.6' },
108
+ @{ backend = 'gl2'; version = '2.0' },
109
+ @{ backend = 'gles2'; version = '2.0' }
110
+ )
111
+
112
+ $env:PYGLET_BACKEND = 'opengl'
113
+ $env:MESA_GL_VERSION_OVERRIDE = '4.6'
114
+ $env:MESA_GLES_VERSION_OVERRIDE = '4.6'
115
+ python3 -m pyglet.info
116
+ pytest tests --ignore=tests/interactive --ignore=tests/integration/graphics
117
+ foreach ($backend_override in $backend_overrides) {
118
+ $env:PYGLET_BACKEND = $backend_override.backend
119
+ $env:MESA_GL_VERSION_OVERRIDE = $backend_override.version
120
+ $env:MESA_GLES_VERSION_OVERRIDE = $backend_override.version
121
+ Write-Host "Running backend-sensitive tests for backend=$($backend_override.backend), version=$($backend_override.version)"
122
+ python3 -m pyglet.info
123
+ pytest @backend_test_args
124
+ }
125
+
126
+ headless:
127
+ runs-on: ubuntu-latest
128
+ strategy:
129
+ matrix:
130
+ python-version: [ '3.12', '3.13', '3.14', 'pypy-3.10' ]
131
+
132
+ name: Python ${{ matrix.python-version }} Ubuntu HEADLESS
133
+ steps:
134
+ - uses: actions/checkout@v4
135
+ - name: Setup python
136
+ uses: actions/setup-python@v5
137
+ with:
138
+ python-version: ${{ matrix.python-version }}
139
+ - name: Install dependencies
140
+ run: |
141
+ python -m pip install --upgrade pip
142
+ pip install pytest
143
+ sudo apt-get update
144
+ sudo apt-get install --fix-missing libgl1-mesa-dev xvfb
145
+ - name: Run tests
146
+ env:
147
+ PYGLET_HEADLESS: true
148
+ run: |
149
+ backend_overrides=(
150
+ "opengl:4.6"
151
+ "gles2:2.0"
152
+ "gles3:3.2"
153
+ )
154
+
155
+ export PYGLET_BACKEND=opengl
156
+ export MESA_GL_VERSION_OVERRIDE=4.6
157
+ export MESA_GLES_VERSION_OVERRIDE=4.6
158
+ python3 -m pyglet.info
159
+ pytest tests \
160
+ --ignore=tests/interactive \
161
+ --ignore=tests/integration/graphics
162
+ for backend_override in "${backend_overrides[@]}"; do
163
+ backend="${backend_override%%:*}"
164
+ version="${backend_override##*:}"
165
+ export PYGLET_BACKEND="${backend}"
166
+ export MESA_GL_VERSION_OVERRIDE="${version}"
167
+ export MESA_GLES_VERSION_OVERRIDE="${version}"
168
+ echo "Running backend-sensitive tests for backend=${backend}, version=${version}"
169
+ python3 -m pyglet.info
170
+ pytest tests/integration/graphics
171
+ done
172
+
173
+ webgl-smoke:
174
+ runs-on: ubuntu-latest
175
+ timeout-minutes: 15
176
+ name: Pyodide WebGL Test
177
+ steps:
178
+ - uses: actions/checkout@v4
179
+ - name: Setup python
180
+ uses: actions/setup-python@v5
181
+ with:
182
+ python-version: '3.12'
183
+ - name: Install dependencies
184
+ run: |
185
+ python -m pip install --upgrade pip
186
+ pip install playwright
187
+ python -m playwright install --with-deps chromium
188
+ - name: Run WebGL test
189
+ run: |
190
+ python tools/pyodide/run_webgl_smoke.py --clean --timeout-seconds 300
@@ -0,0 +1,165 @@
1
+ Metadata-Version: 2.4
2
+ Name: pyglet
3
+ Version: 3.0.dev5
4
+ Summary: pyglet is a cross-platform games and multimedia package.
5
+ Author-email: Alex Holkner & contributors <Alex.Holkner@gmail.com>
6
+ Requires-Python: >=3.10
7
+ Description-Content-Type: text/markdown
8
+ License-File: LICENSE
9
+ Project-URL: Home, https://pyglet.org
10
+
11
+ [![pypi](https://badge.fury.io/py/pyglet.svg)](https://pypi.python.org/pypi/pyglet) [![rtd](https://readthedocs.org/projects/pyglet/badge/?version=latest)](https://pyglet.readthedocs.io) [![PyTest](https://github.com/pyglet/pyglet/actions/workflows/unittests.yml/badge.svg)](https://github.com/pyglet/pyglet/actions/workflows/unittests.yml)
12
+
13
+ ![logo_large.png](https://github.com/pyglet/pyglet/blob/54a8c8b7e701b1692c6a10dd80f94ec837c27bd3/examples/opengl/pyglet.png?raw=true)
14
+
15
+ # pyglet
16
+
17
+ *pyglet* is a cross-platform windowing and multimedia library for Python, intended for developing games
18
+ and other visually rich applications. It supports Windowing, input event handling, Controllers & Joysticks,
19
+ OpenGL graphics, loading images and videos, and playing sounds and music. *pyglet* works on Windows, OS X and Linux.
20
+
21
+ > :exclamation: :exclamation: A major pyglet update has just been released (v2.1). This brings many
22
+ > new exciting features, but also some necessary breaking changes. If your game/application has suddenly
23
+ > stopped working, please read the [migration section in the documentation](https://pyglet.readthedocs.io/en/latest/programming_guide/migration.html)
24
+ > The previous version of pyglet is tracked in the `pyglet-2.0-maintenance` branch.
25
+ > **If you want to do a pull request for the previous release, please target the appropriate branch**.
26
+
27
+ * pyglet [documentation]
28
+ * pyglet on [PyPI]
29
+ * pyglet [discord] server
30
+ * pyglet [mailing list]
31
+ * pyglet [issue tracker]
32
+ * pyglet [website]
33
+
34
+ pyglet has an active developer and user community. If you find a bug or a problem with the documentation,
35
+ please [open an issue](https://github.com/pyglet/pyglet/issues).
36
+ Anyone is welcome to join our [discord] server where a lot of the development discussion is going on.
37
+ It's also a great place to ask for help.
38
+
39
+ Some features of pyglet are:
40
+
41
+ * **No external dependencies or installation requirements.** For most application and game requirements, *pyglet*
42
+ needs nothing else besides Python, simplifying distribution and installation. It's easy to package and distribute
43
+ your project with [Nuitka](https://nuitka.net) or [PyInstaller](https://pyinstaller.org).
44
+ * **Take advantage of multiple windows and multi-monitor desktops.** *pyglet* allows you to use multiple
45
+ platform-native windows, and is fully aware of multi-monitor setups for use with fullscreen games.
46
+ * **Load images, sound, music and video in almost any format.** *pyglet* can optionally use FFmpeg to play back
47
+ audio formats such as MP3, OGG/Vorbis and WMA, and video formats such as MPEG2, H.264, H.265, WMV and Xvid.
48
+ Without FFmpeg, *pyglet* contains built-in support for standard formats such as wav, png, bmp, and others.
49
+ * **pyglet is written entirely in pure Python**, and makes use of the *ctypes* module to interface with system
50
+ libraries. You can modify the codebase or make a contribution without any second language compilation steps or
51
+ compiler setup. Despite being pure Python, *pyglet* has excellent performance thanks to advanced batching for
52
+ drawing thousands of objects.
53
+ * **pyglet is provided under the BSD open-source license**, allowing you to use it for both commercial and other
54
+ open-source projects with very little restriction.
55
+
56
+ ## Requirements
57
+
58
+ pyglet runs under Python 3.8+. Being written in pure Python, it also works on other Python interpreters such as PyPy. Supported platforms are:
59
+
60
+ * Windows 7 or later
61
+ * Mac OS X 10.3 or later
62
+ * Linux, with the following libraries (most recent distributions will have
63
+ these in a default installation):
64
+ * OpenGL and GLX
65
+ * GDK 2.0+ or Pillow (required for loading images other than PNG and BMP)
66
+ * OpenAL or Pulseaudio (required for playing audio)
67
+
68
+ **As of pyglet 2.0, OpenGL 3.3+ is required**.
69
+
70
+ To play a large variety of compressed audio and video files,
71
+ pyglet can optionally take advantage of [FFmpeg](https://ffmpeg.org/).
72
+
73
+ ## Installation
74
+
75
+ pyglet is installable from PyPI:
76
+
77
+ pip install --upgrade --user pyglet
78
+
79
+ ## Installation from source
80
+
81
+ If you're reading this `README` from a source distribution, you can install pyglet with:
82
+
83
+ pip install --upgrade --user .
84
+ # or
85
+ python setup.py install --user
86
+
87
+ You can also install the latest development version directly from Github:
88
+
89
+ pip install --upgrade --user https://github.com/pyglet/pyglet/archive/master.zip
90
+
91
+ For local development install pyglet in editable mode:
92
+
93
+ ```bash
94
+ # with pip
95
+ pip install -e .
96
+ # with setup.py
97
+ python setup.py develop
98
+ ```
99
+
100
+ There are no compilation steps during the installation; if you prefer,
101
+ you can simply add this directory to your `PYTHONPATH` and use pyglet without
102
+ installing it. You can also copy pyglet directly into your project folder.
103
+
104
+ ## Contributing
105
+
106
+ **A good way to start contributing to a component of pyglet is by its documentation**. When studying the code you
107
+ are going to work with, also read the associated docs. If you don't understand the code with the help of the docs,
108
+ it is a sign that the docs should be improved. If you wish to make large changes to any part of pyglet, it's always
109
+ a good idea to reach out for feedback first. This can avoid wasted effort in cases where someone is already working
110
+ on something similar, or if your idea can't be accepted for any reason.
111
+
112
+ A basic outline of how to a contribution is as follows:
113
+
114
+ * Fork the [official repository](https://github.com/pyglet/pyglet/fork).
115
+ * In your fork, checkout the branch you wish to contribute to (such as *pyglet-1.5-maintenance*).
116
+ * Apply your changes to your fork.
117
+ * Submit a [pull request](https://github.com/pyglet/pyglet/pulls) describing the changes you have made.
118
+ * Alternatively you can create a patch and submit it to the issue tracker.
119
+
120
+ When making a pull request, check that you have addressed its respective documentation, both within the code docstrings
121
+ and the programming guide (if applicable). It is very important to all of us that the documentation matches the latest
122
+ code and vice versa.
123
+
124
+ Consequently, an error in the documentation, either because it is hard to understand or because it doesn't match the
125
+ code, is a bug that deserves to be reported on a ticket.
126
+
127
+ ## Building Docs
128
+
129
+ [Documentation and Type Hints]: https://pyglet.readthedocs.io/en/latest/internal/doc.html
130
+
131
+ To get started quickly:
132
+
133
+ pip install -r doc/requirements.txt
134
+ python make.py docs
135
+
136
+ Please check [Documentation and Type Hints][] guide to learn more.
137
+
138
+ ## Testing
139
+
140
+ pyglet makes use of pytest for its test suite.
141
+
142
+ ```bash
143
+ pip install -r tests/requirements.txt --user
144
+ # Only run unittests
145
+ pytest tests/unit
146
+ ```
147
+
148
+ Please check the [testing section in the development guide](https://pyglet.readthedocs.io/en/latest/internal/testing.html)
149
+ for more information about running and writing tests.
150
+
151
+ ## Contact
152
+
153
+ pyglet is developed by many individual volunteers, and there is no central point of contact. If you have a question
154
+ about developing with pyglet, or you wish to contribute, please join the [discord] server, or [subreddit].
155
+
156
+ For legal issues, please contact [Alex Holkner](mailto:Alex.Holkner@gmail.com).
157
+
158
+ [discord]: https://discord.gg/QXyegWe
159
+ [subreddit]: https://www.reddit.com/r/pyglet/
160
+ [documentation]: https://pyglet.readthedocs.io
161
+ [wiki]: https://github.com/pyglet/pyglet/wiki
162
+ [pypi]: https://pypi.org/project/pyglet/
163
+ [website]: http://pyglet.org/
164
+ [issue tracker]: https://github.com/pyglet/pyglet/issues
165
+
@@ -0,0 +1,19 @@
1
+ # Contrib
2
+
3
+ The `contrib` directory contains supplemental examples, integrations, and recipes for building applications. Many
4
+ of these are contributions by other users who have found useful patterns, and code that may be beneficial for
5
+ others.
6
+
7
+ Content in this directory is intended to help users learn, and explore integrations to see how specific features
8
+ can be implemented.
9
+
10
+ ---
11
+
12
+ # Contribution Rules
13
+
14
+ - Keep contributions focused and self-contained.
15
+ - Prefer readability and include comments where possible.
16
+ - Include a README or docstring header for non-trivial contributions.
17
+ - Avoid mixing unrelated concepts together.
18
+ - Keep code style consistent with the repository.
19
+ - Avoid heavy use of overriding internals, as these may change with versioning.
@@ -0,0 +1,265 @@
1
+ from __future__ import annotations
2
+
3
+ import sys
4
+
5
+ import pyglet
6
+ from pyglet.enums import BlendFactor
7
+ from pyglet.graphics.state import State
8
+ from pyglet.window import key
9
+
10
+ from typing import TYPE_CHECKING
11
+
12
+ if TYPE_CHECKING:
13
+ from pyglet.graphics import ShaderProgram, Group
14
+ from pyglet.graphics.texture import Texture
15
+
16
+
17
+ class DepthFieldUniforms(State):
18
+ sets_state = True
19
+
20
+ def __init__(self, program: ShaderProgram):
21
+ self.program = program
22
+
23
+ def set_state(self, ctx) -> None:
24
+ self.program['bidirectional'] = enable_bidirectional
25
+ self.program['antialias'] = enable_antialias
26
+ self.program['outline'] = enable_outline
27
+ self.program['outline_width'] = outline_width
28
+ self.program['glow'] = enable_glow
29
+ self.program['glow_width'] = glow_width
30
+
31
+ class DistFieldGroup(pyglet.sprite.SpriteGroup):
32
+
33
+ def __init__(self, texture: Texture, blend_src: BlendFactor, blend_dest: BlendFactor, program: ShaderProgram,
34
+ parent: Group | None = None) -> None:
35
+ super().__init__(texture, blend_src, blend_dest, program, parent)
36
+ self.set_state(DepthFieldUniforms(program))
37
+
38
+
39
+ class DistFieldSprite(pyglet.sprite.Sprite):
40
+ """Override sprite to use DistFieldTextureGroup."""
41
+ group_class = DistFieldGroup
42
+
43
+ def __init__(self, img, x=0, y=0, z=0, blend_src=BlendFactor.SRC_ALPHA, blend_dest=BlendFactor.ONE_MINUS_SRC_ALPHA, batch=None,
44
+ group=None, subpixel=False, program=None) -> None:
45
+ super().__init__(img, x, y, z, blend_src, blend_dest, batch, group, subpixel, program)
46
+
47
+
48
+ window = pyglet.window.Window(resizable=True)
49
+
50
+
51
+ @window.event
52
+ def on_resize(width, height):
53
+ scale_width = width / float(image.width)
54
+ scale_height = height / float(image.height)
55
+ sprite.scale = min(scale_width, scale_height)
56
+ sprite.x = width / 2
57
+ sprite.y = height / 2
58
+
59
+
60
+ @window.event
61
+ def on_draw():
62
+ window.clear()
63
+ sprite.draw()
64
+
65
+
66
+ @window.event
67
+ def on_key_press(symbol, modifiers):
68
+ global enable_bidirectional
69
+ global enable_antialias
70
+ global enable_outline
71
+ global enable_glow
72
+ global outline_width
73
+ global glow_width
74
+ if symbol == key.B:
75
+ enable_bidirectional = not enable_bidirectional
76
+ elif symbol == key.A:
77
+ enable_antialias = not enable_antialias
78
+ elif symbol == key.O:
79
+ enable_outline = not enable_outline
80
+ enable_glow = False
81
+ elif symbol == key.G:
82
+ enable_glow = not enable_glow
83
+ enable_outline = False
84
+ elif symbol == key.PERIOD:
85
+ if enable_glow:
86
+ glow_width += 0.005
87
+ else:
88
+ outline_width += 0.005
89
+ elif symbol == key.COMMA:
90
+ if enable_glow:
91
+ glow_width -= 0.005
92
+ else:
93
+ outline_width -= 0.005
94
+
95
+ print('-' * 78)
96
+ print('enable_bidirectional:', enable_bidirectional)
97
+ print('enable_antialias:', enable_antialias)
98
+ print('enable_outline:', enable_outline)
99
+ print('enable_glow:', enable_glow)
100
+ print('outline_width:', outline_width)
101
+
102
+
103
+ vertex_source = """#version 150 core
104
+ in vec3 translate;
105
+ in vec4 colors;
106
+ in vec3 tex_coords;
107
+ in vec2 scale;
108
+ in vec3 position;
109
+ in float rotation;
110
+
111
+ out vec4 vertex_colors;
112
+ out vec3 texture_coords;
113
+
114
+ uniform WindowBlock
115
+ {
116
+ mat4 projection;
117
+ mat4 view;
118
+ } window;
119
+
120
+ mat4 m_scale = mat4(1.0);
121
+ mat4 m_rotation = mat4(1.0);
122
+ mat4 m_translate = mat4(1.0);
123
+
124
+ void main()
125
+ {
126
+ m_scale[0][0] = scale.x;
127
+ m_scale[1][1] = scale.y;
128
+ m_translate[3][0] = translate.x;
129
+ m_translate[3][1] = translate.y;
130
+ m_translate[3][2] = translate.z;
131
+ m_rotation[0][0] = cos(-radians(rotation));
132
+ m_rotation[0][1] = sin(-radians(rotation));
133
+ m_rotation[1][0] = -sin(-radians(rotation));
134
+ m_rotation[1][1] = cos(-radians(rotation));
135
+
136
+ gl_Position = window.projection * window.view * m_translate * m_rotation * m_scale * vec4(position, 1.0);
137
+
138
+ vertex_colors = colors;
139
+ texture_coords = tex_coords;
140
+ }
141
+ """
142
+
143
+ fragment_source = """#version 150 core
144
+ in vec4 vertex_colors;
145
+ in vec3 texture_coords;
146
+ out vec4 final_colors;
147
+
148
+ uniform sampler2D sprite_texture;
149
+
150
+ uniform bool bidirectional;
151
+ uniform bool antialias;
152
+ uniform bool outline;
153
+ uniform bool glow;
154
+ uniform float outline_width;
155
+ uniform float glow_width;
156
+
157
+ const vec4 outline_color = vec4(0.0, 0.0, 1.0, 1.0);
158
+ const vec4 glow_color = vec4(1.0, 0.0, 0.0, 1.0);
159
+
160
+ void main()
161
+ {
162
+ float alpha_mask;
163
+ if (bidirectional)
164
+ {
165
+ vec4 field = texture2D(sprite_texture, texture_coords.xy);
166
+ alpha_mask = float(field.r >= 0.5 && field.g >= 0.5);
167
+ }
168
+ else
169
+ {
170
+ alpha_mask = texture2D(sprite_texture, texture_coords.xy).a;
171
+ }
172
+ float alpha_width = fwidth(alpha_mask);
173
+ float intensity = alpha_mask;
174
+
175
+ final_colors = vertex_colors;
176
+
177
+ if (glow)
178
+ {
179
+ float glow_min = 0.5 - glow_width;
180
+ intensity = (alpha_mask - glow_min) / (0.5 - glow_min);
181
+ float glow_intensity = 0.0;
182
+ if (antialias)
183
+ glow_intensity = 1.0 - smoothstep(0.5 - alpha_width,
184
+ 0.5 + alpha_width,
185
+ alpha_mask) * 2.0;
186
+ else
187
+ glow_intensity = float(alpha_mask < 0.5);
188
+
189
+ final_colors = mix(final_colors, glow_color, glow_intensity);
190
+ }
191
+ else if (outline)
192
+ {
193
+ float outline_intensity = 0.0;
194
+ float outline_min = 0.5 - outline_width;
195
+ float outline_max = 0.5;
196
+ if (antialias)
197
+ {
198
+
199
+ outline_intensity = 1.0 - smoothstep(outline_max - alpha_width,
200
+ outline_max + alpha_width,
201
+ alpha_mask) * 2.0;
202
+
203
+ intensity *= smoothstep(outline_min - alpha_width,
204
+ outline_min + alpha_width,
205
+ alpha_mask) * 2.0;
206
+ }
207
+ else
208
+ {
209
+ outline_intensity =
210
+ float(alpha_mask >= outline_min && alpha_mask <= outline_max);
211
+ intensity = float(alpha_mask >= outline_min);
212
+ }
213
+ final_colors = mix(final_colors, outline_color, outline_intensity);
214
+ }
215
+ else if (antialias)
216
+ {
217
+ intensity *= smoothstep(0.5 - alpha_width,
218
+ 0.5 + alpha_width,
219
+ alpha_mask) * 2.0;
220
+ }
221
+ else
222
+ {
223
+ intensity = float(alpha_mask >= 0.5);
224
+ }
225
+
226
+ final_colors.a = intensity;
227
+ }
228
+ """
229
+
230
+ enable_bidirectional = False
231
+ enable_antialias = False
232
+ enable_outline = False
233
+ enable_glow = False
234
+ outline_width = 0.02
235
+ glow_width = 0.1
236
+
237
+ dist_shader = pyglet.graphics.ShaderProgram(
238
+ pyglet.graphics.Shader(vertex_source, "vertex"),
239
+ pyglet.graphics.Shader(fragment_source, "fragment"),
240
+ )
241
+
242
+ if len(sys.argv) > 1:
243
+ filename = sys.argv[1]
244
+ else:
245
+ filename = 'py.df.png'
246
+
247
+ controls = """
248
+ Following keys modify the shader operation:
249
+
250
+ A Toggle antialiasing
251
+ B Toggle bidirectional (see below)
252
+ O Toggle outline
253
+ G Toggle glow
254
+ , Decrease outline/glow
255
+ . Increase outline/glow
256
+ """
257
+ print(controls)
258
+
259
+ image = pyglet.image.load(filename)
260
+
261
+ image.anchor_x = image.width // 2
262
+ image.anchor_y = image.height // 2
263
+ sprite = DistFieldSprite(image, program=dist_shader)
264
+
265
+ pyglet.app.run()
@@ -0,0 +1,59 @@
1
+ from __future__ import annotations
2
+
3
+ """Simple sprite stress benchmark that adjusts sprite count to track target FPS."""
4
+
5
+ import random
6
+
7
+ import pyglet
8
+
9
+
10
+ WIDTH = 1280
11
+ HEIGHT = 720
12
+ TARGET_FPS = 60
13
+
14
+ window = pyglet.window.Window(WIDTH, HEIGHT, caption="Benchmark", resizable=True, vsync=False)
15
+ label = pyglet.text.Label(" ", x=5, y=5, color=(223, 223, 223, 255), dpi=80)
16
+ batch = pyglet.graphics.Batch()
17
+
18
+
19
+ grey_img = pyglet.image.SolidColorImagePattern((50, 50, 50, 150)).create_image(5, 5)
20
+ blocks = []
21
+
22
+
23
+ @window.event
24
+ def on_draw():
25
+ window.clear()
26
+ batch.draw()
27
+ label.draw()
28
+
29
+
30
+ @window.event
31
+ def on_resize(width, height):
32
+ global WIDTH, HEIGHT
33
+ WIDTH, HEIGHT = width, height
34
+
35
+
36
+ def update(dt):
37
+
38
+ fps = 1 / dt
39
+ count = int(fps - TARGET_FPS)
40
+
41
+ if count > 0:
42
+ for i in range(count//2):
43
+ x = random.uniform(0, WIDTH/2)
44
+ y = random.uniform(0, HEIGHT)
45
+ blocks.append(pyglet.sprite.Sprite(img=grey_img, x=x, y=y, batch=batch, subpixel=True))
46
+
47
+ else:
48
+ if blocks:
49
+ blocks.pop(0)
50
+
51
+ for block in blocks:
52
+ block.x += dt
53
+
54
+ if blocks:
55
+ label.text = f"FPS: {round(fps)}, sprites:{len(blocks)}"
56
+
57
+
58
+ pyglet.clock.schedule_interval(update, 1/120)
59
+ pyglet.app.run(1/120)