crsfml v2.4.0 Release Notes

Release Date: 2016-08-10 // about 6 years ago
  • CrSFML has been rewritten from scratch. It no longer uses CSFML (why?). The installation procedure has changed.

    👀 For a quick tour of the changes, see a diff from porting examples to the new version.

    API changes

    • Event is now an abstract struct, not a union (details)
    • Structs no longer have to be created though separate constructor methods.
    • Some classes and methods were renamed to be more consistent with SFML or Crystal rather than CSFML
      • Some classes become namespaced: FtpResponseFtp::Response
      • More getter methods (is_foo, has_foo) were changed to foo?
    • Vector and Rect are proper generic types
      • The vector2 constructor method is now stricter, use vector2f or vector2i to avoid manual type conversions.
    • The TransformableM module is gone, subclass or compose Transformable instead.
    • Drawable module now must be included to pass the object to the draw method.
    • 0️⃣ Minor changes in function signatures - more consistent types, overloads and default arguments.
    • Objects now keep references to the objects they store
      • No surprises or having to keep a reference to an object manually so it isn't deleted.
      • A getter will return the same object after setting it, not a different wrapper every time.