With PluginGuis, your RobloxPlugins can create GUIs hosted in dockable widgets (as opposed to being hosted in 3d viewport).
We encourage plugin developers to use this library so that your GUIs have a standardized look & feel: colors, spacing, layout, etc.
We will keep these libraries up to date as Studio look & feel changes (e.g. automatic support for Dark Theme, when that happens).
We will work hard to keep this library up to date, bug-free, etc.
That said, we have a small team and many competing priorities, so your efforts to improve this library are welcome and invited. Feel free to fork the repository and make fixes and improvements as you see fit. We will be happy to merge in any updates that fit within our vision of the library.
Class and function names are CamelCase, starting with caps. Variable and member names are CamelCase, starting with lowercase. Members and methods of classes that begin with '_' are considered "private": should not be read or written outside the class.
A "Section" containing one or more widgets, with titlebar. Title bar includes rotating arrow widget which can be used to collapse/expand the secion.
A text button contained in an image (rounded rect). Button and frame highlight appropriately on hover and click.
Grab bag of functions and definitions used by the rest of the code: colors, spacing, etc.
A button comprising an image above text. Button highlights appropriately on hover and click.
A widget comprising a text label and a checkbox. Can be configured in normal or "small" sizing. Layout and spacing change depending on size.
A widget comprising a top-level label and a family of radio buttons. Exactly one radio button is always selected. Buttons are in a grid layout and will adjust to flood-fill parent. Height updates based on content.
A widget comprising a label and a slider control.
A widget comprising a label and text edit control.
Helper functions to support the slider control.
An image button with "on" and "off" states.
A frame that contains a list of sub-widgets. Will grow to accomodate size of children.
Available under the Apache 2.0 license. See LICENSE for details.