Skip to content

Release March 23 2025

Latest
Compare
Choose a tag to compare
@vchelaru vchelaru released this 12 Mar 12:05
· 25 commits to master since this release

Breaking Changes

No breaking changes

Biggest Changes

  • Auto Grid Vertical can now be sized according to children and will automatically resize itself if children are added beyond its bounds
    04_05 38 04

  • Added MinWidth, MinHeight, MaxWidth, MaxHeight
    15_07 28 16

  • Streamlined the Code tab

    • Removed unnecessary UI
    • Preview no longer generates in the background if the Code tab does not have focus (improves performance)
    • Added new buttons to auto-setup code generation
    • Changed dropdown text to more clearly indicate its purpose
      11_20 02 03

Gum Tool

  • New projects adding Forms now have default implementations for all behaviors
  • All generated components which implement forms controls now register themselves as the default if they are the default implementation through behaviors. In short, this makes components like ListBoxItem "just work" in projects.
  • Clicking on Anchor and Dock buttons now applies to all selected instances instead of just the first instance
  • Message about generating missing items now provides a little extra information
  • Setting an invalid Parent now shows an error in the Errors tab
  • Code tab no longer refreshes displayed code if the tab is not focused
  • Forms type now set in generated runtime type
  • Removed unnecessary popup about adding forms replacing existing components if they are default or unused.
  • Missing space character no longer causes crash, allowing fonts to be loaded from Hiero
  • If any character is missing, it is not rendered instead of crashing Gum
  • Fixed crash on codegen when referencing element that no longer exists
  • Updated default behaviors to have more required instances matching what Forms expects
  • Fixed a few errors on default forms controls

Gum Runtimes

  • Cursor now works with touch screens and mouse including on web
  • Added GumService.Cursor
  • Added GumService.Keyboard
  • Added GumService.Gamepads
  • Added GraphicalUiElement.MinWidth, MaxWidth, MinHeight, MaxHeight properties
  • Improved VisualTemplate to support 0-arg and 2-arg constructors so it works better with code generated components
  • InvisibleRenderable now has virtual Render and PreRender so it can be used as a base for new runtimes and experiments
  • Fixed broken keyboard input for FNA
  • Fixed FNA crash due to touch collection
  • Added SpriteRuntime.Animate property
  • Added SpriteRuntime.CurrentChainName property
  • Fixed codegen issue with "Runtime" not being appended
  • Fixed Android crash caused by missing method exception (thanks @Seismicsentinel )
  • Fixed crash when maintaining aspect ratio with source rectangle of 0 width or height
  • Added message about needed csproj when clicking to generate code
  • Renamed unit types to match tool. Old unit types still exist, but are marked as obsolete.
  • Added GumService.Default.Root to simplify management of root
  • Added extension methods for adding to/removing from root.
  • Added ExtensionMethod method ToGraphicalUiElement that takes no parameters.
  • Setting Text directly on the internal TextInstance now updates the TextBox's Text property
  • Fixed ScrollViewer not updating styling according to .gumx even if using codegen
  • Added GumService.Update which no longer takes a Game, which will be updated in future docs
  • Small improvements in ObjectFinder.GetElement when using cached dictionary
  • Screen.Visible now defaults to true
  • Added MonoGame ContainerRuntime IsRenderTarget
  • Added MonoGame ContainerRuntime BlendState get/set
  • Added MonoGame ContainerRuntime Blend
  • Added Panel as a base class for StackPanel to match WPF and provide a ContainerRuntime equivalent control without stacking
  • Refactored code to remove usage of RelativeToContainer

Samples

  • Kni FromFile sample now uses Blazor (web) Kni 4.0
  • Added MVVM sample project
  • Added basic raylib (C#) sample project including basic renderables and even ContainerRuntime, Cursor, and starting to add Forms
  • Added FNA sample project

Full Changelog: Release_March_1_2025...Release_March_23_2025