Pyjsdl Module
Current Version: 0.27
0.27 2025-01-18
- revise surface alpha.
- update transform to preserve surface alpha.
- add vector copy method.
- revise mixer set_num_channels method.
- refactor mixer music rewind method.
- revise mixer channel play promise handling.
- add activeevent.
- add closeevent.
- add display set_icon.
- update color object.
- revise sprite to optimize.
- revise vector elementwise object.
- revise vector operator methods.
- revise vector object instantiation.
0.26 2022-04-18
- revise event set_blocked processing.
- revise event object for performance.
- refactor event handler for performance.
- add key set_repeat method.
- revise key event handler.
- update key event handler.
- update surface blit with optional rect return.
- add surface alpha methods.
- add surface blits method.
0.25 2021-11-07
- revise sprite orderedupdates.
- add sprite group alias.
- refactor sprite collide methods.
- add sprite layeredupdates.
- add cursors get_cursor_types.
- add canvas contextmenu handler.
- add vector object.
- revise mixer processing.
- add mixer music object.
- add mixer channel endevent.
- add mixer channel queue.
0.24 2021-04-28
- revise rect move/inflate args processing.
- revise rect attributes.
- revise ndarray shape for inheritance.
- add env check.
- revise quit method to stop mixer.
- revise quit method to stop timers.
- update time set_timer for event argument.
- revise app to use webkit2.
- update for python 2/3 compatibility.
0.23 2021-04-06
- update event handling.
- update surface get_at to return color object.
- refactor surface colorkey methods.
- revise sprite blit process.
- update mask for optimization.
- update ndarray and bitset for optimization.
- update time wait to properly delay callback.
- revise requestanimationframe shim.
- update clock with performance time.
- update clock tick with performance time.
- update asynchronous loop process to optimize.
- update for python 2/3 compatibility.
0.22 2019-04-06
- add display set_callback method.
- update Canvas handling of callback change.
- add time set_timer method.
- update sprite to revise member groups.
- update sprite argument handling.
- update sprite collide_mask to use mask.overlap.
- refactoring rect for optimization.
- update display setup to accept callback function or object with run method.
- update rect to define __slots__.
- add mouse set_cursor and get_cursor methods.
- add surface toDataURL method.
- update mouse set_cursor to use custom image.
- update surface set_at to optimize.
- update mouse set_cursor to use cursor data.
- update transform rotozoom to optimize.
- update display update method (_update) to optimize.
- update surface blit method (_blit_clear) to optimize.
- update draw arc of nonequal dimension to process properly.
- update draw ellipse to use float scale argument.
- update draw arc to optimize.
- update asynchronous loop process to optimize.
- refactoring time clock object.
- revise with absolute import statements.
- add display methods getAbsoluteLeft/getAbsoluteTop/getScrollLeft/getScrollTop.
- add touch event support.
- update font with minor rendering adjustment.
- update font to include initiation from a file.
- update event peek option of all types.
- update event methods to optimize.
- update color constructor to accept hex '#rrggbb' argument.
- update draw methods to optimize context state change.
- update draw methods to optimize with optional rect return.
- add app.py to launch app in webkit on desktop.
0.21 2015-04-12
- update font to improve fonts access.
- add rect.contains method.
- update image load methods for imagedata objects.
- add display.setup_images method.
- add key.name method.
- add mask.toString method.
- update display.update to properly handle clipping.
- update surface.blit with clipping.
- update rect union methods to process properly.
- add rect iter method.
- add rect collide methods - collidelistall, collidedict, and collidedictall.
- add sprite collide methods - collide_rect_ratio, collide_circle, and collide_circle_ratio.
- refactoring to isolate pyjs.
- refactoring for optimization.
- correct event.pump to maintain queue.
- update IE9+ compatibility files in pyjs_changes.zip.
- add mousewheel event listener.
- release under MIT license.
0.20 2014-11-09
- add rect union methods.
- update methods to use rect intersection.
- correct surface subsurface rect access.
- add rect rectPool to utilize a rect pool.
- update sprite draw for performance.
- update sprite collide methods processing.
- add rect clamp methods.
- update display setup callback function.
- update display repaint process.
- add mixer.
0.19 2014-08-20
- update bitset array to avoid js reserved work.
- update quit function to terminate program iteration.
- update transform.rotozoom for correct scaling.
- add env.pyjs_mode with strict/optimized bool attributes to check pyjs-S/-O mode.
- correct modifier keys keyevent detect with pyjs -S compilation (worked in -O) with sets membership testing of onKeyDown keycode that appears due to js/pyjs numeric difference.
- update display event to properly clear modifier keys held with onMouseLeave event.
- update display set_caption/get_caption to access Canvas element id.
- add display.get_active method.
- restructure event handler to isolate from UserEvent and JEvent objects.
- update display.update for performance.
- update event eventtype list as a set object.
- update rect inflate/inflate_ip positioning.
0.18 2014-02-27
- update Pyjsarray typedarray constructor for Chrome compatibility.
- update Surface constructor to int convert argument.
- update Transform.rotate positioning.
- update Transform rotate/flip to restore context.
- add Textbox/Textarea resize method.
- update Surface.resize for width/height attributes.
- update Canvas.resize to align elements.
- update Canvas to subclass Surface.
- update Canvas with buffered surface optional.
- add display.is_canvas and update Canvas blit not buffered/image load not converted to canvas surface in IE8; Pyjs VML-Canvas requires IE8 quirk mode - no .
- update Surface constructor to take optional arguments.
- update Event.poll noevent return.
- update Surface.get_at to return color tuple.
- update Rect attribute positioning.
- add Rect equality and nonzero methods.
- add util.Pyjs_Mode to check Pyjs compilation mode.
- add Color object.
- update to use Color object.
- update Rect constructor.
- update draw methods with minor adjustments.
- update Mask.fill method.
- update to use Rect object.
- update Sprite group update to account for member changes.
- update util.Timer for output to textarea rather than console logger.
- update Surfarray array2d PyImageInteger processing.
- update Surfarray make_surface method.
- add draw.ellipse method.
- update Pyjsarray Typedarray constructor when type not implemented.
- change license from GPL to LGPL.
0.17 2013-11-01
- update Pyjsarray ImageData object for IE compatibility.
- add util.call to call unbound methods.
- update Surface.blit to int convert argument.
- update Rect.inflate and Rect.inflate_ip for proper positioning.
- add Textbox/Textarea and display.textbox_init for text input.
- update mouse positioning with page scroll position.
- update Surfarray.blit_array.
- add Pyjsarray Ndarray methods.
0.16 2013-09-01
- add Surfarray using Pyjsarray.
- update Pyjsarray with Ndarray and ImageData objects.
- update image.load
- update display.update rect processing
- add display.update_rect method
- update display.update/display.update_rect/surface._blit_clear rect clipping
0.15 2013-07-30
- add Mask using Pyjsarray and Pyjsbitset.
- add Pyjsarray and Pyjsbitset based on JavaScript TypedArray object.
- add Surface get_at/set_at using Canvas getImageData and putImageData.
- update Surface.subarray.
- update Canvas and Surface to use pyjamas.Canvas.HTML5Canvas.
- update Rect.createIntersection.
- update pyjs_changes.zip - Pyjs git update for HTML5canvas usage.
0.14 2013-05-15
- add Font rendering to canvas.
- update Event so key event works in IE browser.
- update Display.update rect argument for pyjs -O compilation.
- update Event key handling for IE browser.
- update Sprite Group __contains__ to work with pyjs.
- update Surface.blit to take rect argument and return rect.
- update Surface.fill color argument.
- modifie pyjs0.8+ git-130513build (pyjs_changes.zip) i. IE9+ compatibility: edit pyjs/src/pyjs/boilerplate/home.nocache.html and pyjs/src/pyjs/browser.py, and add to top of main program html in pyjs output. ii. HTML5canvas usage: rename library/pyjamas/Canvas/HTML5Canvas.ie6.py.
0.13 2013-05-04
- add key events to Canvas.
- update Event for process JS key events.
- update Mouse methods variable.
0.12 2013-04-29
- add mouse events to Canvas.
- update Event to process JS mouse events.
- update Mouse.get_pressed and Mouse.get_pos for JS mouse events.
- update Time.wait to use JS Timeout.
0.11 2013-04-26
- update Sprite.clear to allow callable argument.
- update Surface._blit_clear with clipping.
- update Surface.blits to directly call drawImage.
- update Surface.fill rect argument.
- update Draw.arc, Transform.rotate, and Rect with int() division.
0.10 2013-04-24
- initial release