VisUI 0.0.1 was released on 5th November 2014. Initially meant to be internal VisEditor UI library now became my most popular project, getting about 1500 downloads each month.

Today I can finally announce that VisUI 1.0.0 has been released. Does that mean anything significant? Not really, maybe I will try make less breaking changes now. I’m glad that I was able to work on this project for such long time. I would also like to thanks everyone who contributed to Vis project, either by reporting issues or by creating pull requests.
So, let’s see what new 1.0 has to offer:
ListView - creating advanced lists, powerful and flexible. More

ButtonBar - creating button panels with buttons such as “Ok”, “Cancel”, “Yes” in platform dependent order. More

Bug fixes and breaking changes - more details in changelog.
Full changelog:
Version: 1.0.0 (LibGDX 1.9.2)
- Changed:
InputValidatormoved tocom.kotcrab.vis.ui.utilpackage - Changed:
LesserThanValidator#setEquals(boolean)renamed tosetUseEquals - Changed:
GreaterThanValidator#setEquals(boolean)renamed tosetUseEquals - Changed:
FormInputValidator#validateInputis now final and can’t be overridden - Changed:
FormInputValidator#getLastResultis now package-private - Changed:
DialogUtilsrenamed toDialogs- Changed:
DialogUtils.propertiesis nowDialogs.properties - Changed:
VisUI#setDialogUtilsBundle(...)is nowVisUI#setDialogsBundle(...) - Changed:
VisUI#getDialogUtilsBundle()is nowVisUI#getDialogsBundle() - Added:
showDetailsDialog (Stage stage, String text, String title, String details) - Added:
showDetailsDialog (Stage stage, String text, String title, String details, boolean expandDetails)
- Changed:
- Changed:
ErrorDialogrenamed toDetailsDialog- Changed: Constructor
ErrorDialog (String text, String stacktrace)changed toDetailsDialog (String text, String title, String details) - Added:
DetailsDialog#setDetailsVisible(...) - Added:
DetailsDialog#setCopyDetailsButtonVisible(...)
- Changed: Constructor
- Changed:
FileChooserText,FilePopupMenuandColorPickerTextmoved tointernalsubpackages (were not part of public API) - Changed:
FileChooser#getFileDeleterremoved - Changed:
FileChooserListenerwas refactoredFileChooserListener#selected(FileHandle)removed- If user can select single file use
SingleFileChooserListener - If user can select multiple files use
StreamingFileChooserListeneror useFileChooserListenerdirectly
- Changed:
VisTextField#toString()now returns field text - Changed:
OptionDialognow extendsVisWindow(was extendingVisDialog) - Changed:
OptionDialogandInputDialognow will show buttons in platform dependant order usingButtonBar - Removed: Removed all
Tooltipconstructors except those taking style- Use
new Tooltip.Builder(...)eg.new Tooltip.Builder("Tooltip Text").target(label).build() - Changed: constructor
Tooltip (String text)is nowTooltip (String styleName) - Added: constructor
Tooltip () - Added: constructor
Tooltip (TooltipStyle)
- Use
- Removed:
SeparatorStyle#vertical, was not used - Removed: constructor
Separator (boolean vertical) - Added:
ListViewandItemAdapterAPI - Added: constructor
TabbedPane(TabbedPaneStyle style, Sizes sizes) - Added: constructor
VisWindow(String title, String styleName) - Added:
PrefWidthIfVisibleValue - Added:
HorizontalFlowGroupandVerticalFlowGroup - Added:
ButtonBar- convenient class for creating button panels arranged in platform dependant order.FileChooser,ColorPickerandDialogswill now show buttons in platform dependant order
- Added:
LinkLabel,VisTextField,VisTextAreaandVisSplitPanesupports system cursors when using LWJGL3 or GWT backend - Fixed:
TabbedPane: Tab close button too small when usingSkinScale.X2 - Fixed:
TabbedPane: In vertical mode, tabs buttons were centered instead of being aligned at the top - Removed deprecated API:
ColumnGroup(use libGDX’sVerticalGroup) - Skin:
- Changed: Color
menuitem-greyrenamed tomenuitem - Changed:
TabbedPaneStyle#bottomBarrenamed toseparatorBar - Removed:
FormValidatorStyle#colorTransition, no longer needed.- If
colorTransitionDurationis set to 0 then transition will be skipped.
- If
- Removed:
SeparatorStyle#vertical, no longer needed - Added: Drawables:
grey,vis-blue,vis-red - Added: New
Windowstyle:resizable
- Changed: Color
- I18N:
- Changed Bundle management moved to
Localesclass. Instead of callingVisUI.setXYZBundle(...)callLocales.setXYZBundle(...) - Removed: Dialogs bundle entries: yes, no, cancel, ok. Now handled by
ButtonBarbundle.
- Changed Bundle management moved to
Happy coding!