Switchy-UI is currently dependent on owolib, disabling itself when it's not present.
The monolithic structure of owo and many mixins means it can't reasonably be JIJ'd or shadowed without dragging a whole bunch of baggage along with it.
We'd naturally like owo to suddenly change it's tune and be more ecosystem-cooperative, or for a mature UI library to suddenly be revealed to port to - problem is, Switchy's UI usage is pretty complicated.
In order for an alternative UI library to be viable, it needs to support:
client-only screens
support for overlays / modals, or the ability to make them
support for tabbed panes or the ability to make them
support for dropdown lists or the ability to make them
support for scrolling panes natively
support for rendering arbitrary entities
support for arbitrary tooltips
support for rendering stacks
Support for horizontal and vertical content-sized containers.
A generic concept of a renderable element that encompasses both single items and containers (so modules can provide previews)
Flexbox isn't currently used, but it would technically benefit preset previews to take up exactly the amount of space needed horizontally rather than a fixed size.
Overlays / Modals :shrug: may require some work / custom subclasses
Tabbed Panes :no_entry_sign: current tabbedPane looks like vanilla creative menu, an attractive tab panel would have to be built up out of a CardPanel and some tabs
Dropdown Lists :no_entry_sign: can be made, but requires custom subclasses
Scrolling Panes :neutral_face: lists work similar to recyclers, which are hard to use
Rendering Stacks :white_check_mark: built-in WItem class, including rotating through a list of items like EMI
Horizontal and Vertical Content-Sized Containers :no_entry_sign: but check Scattered Shards for my custom subclass which accomplishes this
Generic super for panels and widgets :white_check_mark: yes, WPanels are a kind of WWidget.
LibGui has an undercooked idea of fixed versus flexible sizes and at the end of the day just may not be up to all of the tasks you're looking to offload.
Switchy-UI is currently dependent on owolib, disabling itself when it's not present. The monolithic structure of owo and many mixins means it can't reasonably be JIJ'd or shadowed without dragging a whole bunch of baggage along with it.
We'd naturally like owo to suddenly change it's tune and be more ecosystem-cooperative, or for a mature UI library to suddenly be revealed to port to - problem is, Switchy's UI usage is pretty complicated.
In order for an alternative UI library to be viable, it needs to support:
Flexbox isn't currently used, but it would technically benefit preset previews to take up exactly the amount of space needed horizontally rather than a fixed size.