Skip to content

Lemur version 1.6.1

Compare
Choose a tag to compare
@pspeed42 pspeed42 released this 01 Mar 03:04
· 263 commits to master since this release

This release includes some minor fixes over the last one and a few improvements. The only real new feature is the effects and animation system that allows for styled animations to be added to any GUI element.

This should be a safe drop-in replacement for 1.5.x

This release is also the first to be posted to the public jcenter repository and can now easily be directly incorporated into gradle or maven builds:
com.simsilica:lemur:1.6.1

Updates in this release:

  • Fixed an issue in DefaultRangedValueModel where the 'value' field
    was used directly instead of calling getValue(). This made it harder
    for subclasses to implement custom behavior.
  • Added a Slider(model, ElementId) constructor.
  • Modified the style Attributes class to auto-merge Map-based attribute values
    using the same override logic that the Attributes class itself uses.
  • Added a basic animation system and GUI element stylable effects API.
  • Added a setEffects() method to Panel that is stylable. Also added a few
    other runEffect(), addEffect(), etc. methods related to the new animation
    system.
  • Modified Button to automatically attempt to run effects for the various
    button events.
  • Modified CommandMap to support null values in the addCommands() call
    that can be used to clear out any previously added values.
  • Fixed a bug in Container where children that called removeFromParent()
    left the layout in an inconsistent state. Now a regular detachChild()
    will check the layout first before detaching the child.
  • Added getLastVersion() and getObjectVersion() methods to VersionedReference.
  • Converted some System.out.println() warnings in InputMapper to actual log
    warns.
  • Added AnimationState to the default states setup in GuiGlobals.
  • Fixed joystick axis event processing to pay attention to the reported dead
    zone of the axis. It will take the max of the specific axis' dead zone and the global
    InputManager.getAxisDeadZone().
  • Fixed a bug in InputMapper where key mappings that had negative scale
    weren't triggering negative state in state listeners.
  • Fixed QuadBackgroundComponent and TbtQuadBackgroundComponent to allow setting
    the alpha even if the color has not been set. Color defaults to white in that
    case.
  • Updated TextField and TextEntryComponent to support a 'preferred line count'
    property which helps set the preferred height of a text field based on the
    current font and a line count.
  • Modified TextEntryComponent to properly implement ColoredComponent and support
    alpha.
  • Fixed an IndexOutOfBoundsException in TextEntryComponent when setting text to "".
  • Added Button constructor that takes just text and ElementId.
  • Modified scene picking to deal with ortho cameras correctly. Now it's only
    the Gui bucket that is special case.
  • Modified scene picking to adhere to camera viewport limits.
  • Fixed DragHandler to allow external z-value changes in 2D dragging.
  • Added textureCoordinateScale property to QuadBackgroundComponent.