Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Releases: ebitenui/ebitenui

v0.3.4 Bug fixes

03 Mar 22:17

Choose a tag to compare

Bug fix release:

  1. Comboboxes did not work inside windows
  2. Button images were not getting updated when windows moved.
  3. Tooltips did not work inside windows.

v0.3.3 Utility methods

02 Mar 21:47

Choose a tag to compare

For this release a couple utility methods were added:

  1. func (u *UI) IsWindowOpen(w *widget.Window) bool {
    This function will let you know if a specific window is currently a part of the UI system.

  2. func (u *UI) ChangeFocus(direction FocusDirection) {
    This function will allow you to trigger a change in focus either NEXT or PREVIOUS. This will be useful if you want focus changes for keys other than keyboard tab such as gamepad keys. See https://github.com/ebitenui/ebitenui/blob/master/_examples/widget_demos/textinput/main.go for an example.

  3. A new parameter was added to the root UI element:
    //If true the default tab/shift-tab to focus will be disabled
    DisableDefaultFocus bool

  4. Updated func (u *UI) HasFocus() bool {
    This function will now also return true if a Modal window is open.

v0.3.2 Add Window Layering

24 Feb 22:35

Choose a tag to compare

This is a small release to add a DrawOrder feature to the window objects.
This can be used to specify explicitly where in the stack you want a window drawn.
By default, the library will behave exactly the same as before.

However, now when you add a Window the window stack is sorted based on the DrawOrder.
If it is < 0 then it will be rendered before the main UI container.

Additionally, a small bug with Window.SetLocation was resolved where it wouldn't update the child containers locations automatically.

v0.3.1 - Add NewTextToolTip convenience method

19 Feb 21:40

Choose a tag to compare

This is a patch release for v0.3.0 to update documentation and to add a new ToolTip convenience method:

// Create a new Text Tooltip with the following defaults:
//   - ProcessBBCode = true
//   - Padding = Top/Bottom: 5px Left/Right: 10px
//   - Delay = 800ms
//   - Offset = 0, 20
func NewTextToolTip(label string, face font.Face, color color.Color, background *e_image.NineSlice) *ToolTip {

v0.3.0 Refactored Tooltips and Focus **Breaking Change -Tooltips**

18 Feb 22:23

Choose a tag to compare

This is a huge updated! In this update the Focus system has been enhanced to support the ability to tab and shift-tab between elements in the UI. It also adds a new function TabOrder(int) to define the order to tab between elements. Note: a -1 value indicates to skip this element in the tab rotation.

I have also completely revamped the Tooltip system. It was quite clunky prior and works quite a bit better now. Instead of it being a global UI level object, you can now attach a tooltip to each widget in the system.

Please take some time to test this version out! And if you have any questions please reach out on here or on our Discord channel!

tooltip

Mark

v0.2.10 - Context Menus! ** Minor Breaking Change **

16 Feb 00:01

Choose a tag to compare

Hello! This release adds the ability to give any widget a right click context menu! By default if the user left clicks anywhere after it is opened it will close.
API:
You can provide any Container as the context menu
widget.WidgetOpts.ContextMenu(contextMenu),

You can specify the CloseMode for the contextMenu. This allows you to configure the lifecycle of the ContextMenu Window.
widget.WidgetOpts.ContextMenuCloseMode(widget.NONE)

const (
	// The window will not automatically close
	NONE WindowCloseMode = iota
	// The window will close when you click anywhere
	CLICK
	// The window will close when you click outside the window
	CLICK_OUT
)

Breaking Change
The WindowOpts method CloseOnClickOut has been removed and replaced with
func (o WindowOptions) CloseMode(mode WindowCloseMode) WindowOpt {

See https://github.com/ebitenui/ebitenui/tree/master/_examples/widget_demos/contextmenu for an example.

contextmenu

v0.2.9 - Update Tabbook usability *Breaking Changes*

14 Feb 01:30

Choose a tag to compare

For this release I have updated Tabbook to hopefully make it more useable.
I have updated the Tab object to be a container rather than taking a widget parameter. This should make it easier to work with since it will behave like any other container now.

There is also a minor fix to ensure the cursor changes properly when leaving a resizable window.

I have also updated the documentation for the Tabbook that can be found : https://ebitenui.github.io/tabbook/

tabbook

v0.2.8 - Minor Bugfix for WindowOpts.Location

10 Feb 22:13

Choose a tag to compare

Bugfix for using the WindowOpts.Location method causing a nil pointer error.

v0.2.7 - TextArea enhancement - BBCode

04 Feb 18:41

Choose a tag to compare

This release adds a couple new features to the TextArea!
Please let me know if you use them and see any bugs or have any suggested improvements.

Updates

  • The ability to specify a Scrolling mode
    There is a new Option on TextArea : VerticalScrollMode(scrollMode ScrollMode) and HorizontalScrollMode(scrollMode ScrollMode)
    Scroll Mode is defined like this:
const (
	// Default. Scrolling is not automatically handled
	None ScrollMode = iota

	// The TextArea is automatically scrolled to the beginning on change
	ScrollBeginning

	// The TextArea is automatically scrolled to the end on change
	ScrollEnd

	// The TextArea will initially position the text at the end of the scroll area
	PositionAtEnd
)

  • The ability to specify color in the text.

There is a new Option on TextArea : ProcessBBCode(processBBCode bool)
When this is true the system will look for the following Tags:
open tag : [color=hexcolor]
close tag: [/color]

Note: It supports nested color tags

Examples:
[color=FFFFFF] White [/color]
[color=FFFFFF] [color=FF0000] Red [/color] White [/color] Default color

image

v0.2.6 - Bugfix Window Layering

03 Feb 01:11

Choose a tag to compare

v0.2.6
This version is a simple bugfix version for Window layering. Prior to this change if you created a non-modal window you would get an error. This resolves that error and manages the window layering better.