• Hi Guest!

    We have posted a new VaM2 dev log on Patreon, starting a monthly cadence of written progress updates between Beta releases. Highlights include the new Gizmos System, Selection Carousel, and Modes System with Context-Specific Editing. Beta1.2 is 15 of 21 items complete.

    Read the full post on Patreon, or follow progress on the public Trello roadmap.
CustomUI

Plugins + Scripts CustomUI

Download [<1 MB]
※ Reporting bugs or issues will help me improve the plugin and help others.
CustomUI
● This .cs for plugin UI component library for developer.
This is licensed under CC-BY, so you are free to incorporate it into your own code and use it as you wish.
● This library doesn't aim to offer something novel, but rather simplifies and standardizes components that are commonly implemented by developers.
● This library consists of two files (CustomUI.cs/CustomUIInterface.cs) and can be freely modified or used.
● You can refer to CustomUIExamples for detailed examples of usage.

- CustomUIExample1.cs (Spacer, SpacerAuto, Separator, Label)

- CustomUIExample2.cs (InfoText, InputText, InputTextWithLabel, InputTextScrollBox)
- CustomUIExample3.cs (Button, ButtonWithLabel, ButtonToggle, ButtonThreeState, SliderToggle, RadioToggle)
- CustomUIExample4.cs (Spinner, SliderSimple, Slider, SliderPie, SliderTiny, SliderWithWheel, TransformUI)
- CustomUIExample5.cs (ChooserSimple, Chooser)
- CustomUIExample6.cs (ColorPickerRGBA, ColorPicker)
- CustomUIExample7.cs (ConfirmUI)
All configurable functions of the UI component are implemented using the Builder-Pattern.

● add : Implementation of RadioToggleButton
14mhz.Plugin-CustomUI.11.RadioToggleButton.gif

● add : Developing TinySlider with vertical and horizontal orientation support
14mhz.Plugin-CustomUI.11.TinySlider.gif
● add : Implementation of ConfirmBoxUI
● add : implemented the setDisplayChoices feature in BaseChooserUI and BaseChooserSimpleUI (request by @hazmhox )
● fix : UIUtil Coroutine bug in CustomUI.cs (report by @hazmhox )
14mhz.Plugin-CustomUI.10.gif

As with most plugins, when saving or loading settings or files, overwriting often occurs without any warning,
and I’ve lost my work more than once because of it. My plugins are also developed in this rather unfriendly way.
For this purpose, I developed a customizable confirm box feature.
C#:
var confirm = initConfirmUI(this, containingAtom, CreateUIElement, result =>
{
    if (false) {}
    else if (result == $"Save")
    {
        // do something
    }
    else if (result == $"Cancel")
    {
        // do something
    }
});
confirm.showPopup(true);
● add : Implementation mouse wheel scrolling functionality for sliderUI elements (BaseSliderUI, BaseSliderSimpleUI, BaseSliderPieUI) using ui.setWheelSupport(true).
● fix : some minor bug fixed, missing close() implementation
14mhz.Plugin-CustomUIExample.9.gif
● fix : Embedding the Chooser inside CustomLayoutUI causes its popup to be visually obstructed by other UIDynamic/CustomUI components.
● fix : SliderToggleUI and DonutSliderUI are overflowing beyond the scrollable area of the plugin window.
20251107 ChooserUI Popup problem.jpg

20251107 SliderToggleUI problem.jpg
● fix : some minor bug fix, and refactor BaseSpinnerUI, BaseSliderSimpleUI
● add : implementation of slider-style toggle UI component
14mhz.Plugin-CustomUI.7.gif
● fix : minor bug fixes related to ButtonToggleUI, ButtonThreeStateUI
● add : implementation of pie-style slider UI component
14mhz.Plugin-CustomUI.6.jpg

● fix : some minor bug fix
● fix : callbacks issue through the alpha channel of ColorPickerRGBA.
14mhz.Plugin-CustomUI.5.ColorPickerRGBA.bug.fix.gif

● add : implementation of InputTextScrollBoxUI functionality, it is both scrollable and selectable.
● add : demo UI, CustomUIExample4.cs
14mhz.Plugin-CustomUI.5.InputTextScrollBox.gif
fix resizing issue of ButtonToggle
toggle compare4.jpg

fix resizing issue of ThreeStateButton
3toggle compare4.jpg
● fix : drag selection issue in textfield and refactor close method
14mhz.Plugin-CustomUI.3.gif
----------------------------------------
CustomUIExample1a. Spacer.png

CustomUIExample1b SpacerAuto.png

CustomUIExample1c Separator.png

CustomUIExample1d Label.png
CustomUIExample2a InfoText.png

CustomUIExample2b InputText.png

CustomUIExample2c InputTextWithLabel.png

CustomUIExample2d InputTextScrollBox.png
CustomUIExample3a Button.png

CustomUIExample3b ButtonWithLabel.png

CustomUIExample3c ButtonToggle.png

CustomUIExample3d ButtonThreeState.png

CustomUIExample3e SliderToggle.png

CustomUIExample3f RadioToggle.png
CustomUIExample4a Spinner.png

CustomUIExample4b SliderSimple.png

CustomUIExample4c Slider.png

CustomUIExample4d SliderPie.png

CustomUIExample4e SliderTiny.png

CustomUIExample4f SliderWithWheel.png

CustomUIExample4g TransformUI.png
CustomUIExample5a ChooserSimple.png

CustomUIExample5b Chooser.png
CustomUIExample6a ColorPickerRGBA.png

CustomUIExample6b ColorPicker.png
CustomUIExample7a ConfirmUI.png
React to this content...

Share this resource

Latest updates

  1. CustomUI v1.1 20260602

    ● add : Implementation of RadioToggleButton ● add : Developing TinySlider with vertical and...
  2. CustomUI v1.0 20260528

    ● add : Implementation of ConfirmBoxUI ● add : implemented the setDisplayChoices feature in...
  3. CustomUI v0.9 20260504

    ● add : Implementation mouse wheel scrolling functionality for sliderUI elements (BaseSliderUI...

Latest reviews

Positive
Version: 10
Damn it! I found it too late. WAAAAAA
14mhz
14mhz
Haha, glad you found it—Thanks for checking it out.
Upvote 0
Positive
Version: 9
This is a game changer for any serious plugin developer. I blaming myself for not taking the time sooner to check it out.

You can divide your dev time by a lot using it. Consider checking this out, it's very very well done, and 14mhz provides excellent support as usual.
14mhz
14mhz
Thank you for your kind review and compliments.
Upvote 0
Positive
Version: 8
Posted:
This plugin is extraordinary in so many ways! I have (finally!) found the time to examine it, and the approach of custom UI elements designed using a custom graphic opens up a whole host of possibilities. I can't stop having fun creating buttons, gauges, etc. Thank you!
14mhz
14mhz
If you have any suggestions for improvement or additional feature requests, please feel free to let me know. Thank you so much for your positive review!
Upvote 0
Positive
Version: 6
Posted:
wow! hmm.... haha
14mhz
14mhz
Thanks so much for the review, friend !!!
Upvote 0
Back
Top Bottom