# Hiding/Disabling Invalid Plugin Control Widgets

**URL:** <https://qa.fmod.com/t/hiding-disabling-invalid-plugin-control-widgets/21450>\
**Category:** FMOD Studio\
**Created:** [April 5, 2024, 1:22am UTC](https://qa.fmod.com/t/hiding-disabling-invalid-plugin-control-widgets/21450 "2024-04-05T01:22:35Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![zanhulme](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/zanhulme/32/5069_2.png) [@zanhulme](https://qa.fmod.com/u/zanhulme)\
**Post date:** [April 5, 2024, 1:22am UTC](https://qa.fmod.com/t/hiding-disabling-invalid-plugin-control-widgets/21450/1 "2024-04-05T01:22:35Z")

</div>

Hello, I’m working on a custom DSP plugin for FMOD Studio, and I’ve been wondering if there is a way to hide or grey-out dials or other deck widgets depending on an enumerated int?

My plugin is a wave shaper with various modes, some of which have different controls to the others. I don’t want users to be confused by the presence of an irrelevant “Ratio” dial when using the Hard Clip setting, so ideally I would like to lock or grey-out or hide the controls that aren’t used in the currently-selected mode.

I haven’t been able to find much about this in the documentation, and I’m not sure if it’s a feature that doesn’t exist or if there just isn’t documentation on how to do it. Or maybe it’s just because I’m not very familiar with javascript, and it’s a very obvious and straightforward thing if you know the language?

---

<div class="post-metadata">

**Author:** ![jeff\_fmod](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/jeff_fmod/32/1766_2.png) [@jeff\_fmod](https://qa.fmod.com/u/jeff_fmod)\
**Post date:** [April 8, 2024, 12:28am UTC](https://qa.fmod.com/t/hiding-disabling-invalid-plugin-control-widgets/21450/2 "2024-04-08T00:28:40Z")

</div>

I don’t think there is a way to do this actually- the widgets used for plugins are [deckWidgets](https://fmod.com/docs/2.02/studio/plugin-reference.html#studiouideckwidgettype), which are different to [widgets](https://fmod.com/docs/2.02/studio/scripting-api-reference-ui.html#uiwidgettype) used in our modals, and are missing key functionality for conditional bypassing:

1. Callbacks for embedding js, such as `onclick`
2. Toggleable active state, such as `setEnabled`
3. An API for retrieving existing deckWidgets, such as `findWidget`

So, no good solution at this stage unfortunately. It looks like `deckWidgets` are supposed to handle a one-to-one link between parameters and UI, and nothing else. I will put in a feature request to add more of the `widget` api to the `deckWidget` API- thank you for bringing this to our attention.

---

<div class="post-metadata">

**Author:** ![zanhulme](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/zanhulme/32/5069_2.png) [@zanhulme](https://qa.fmod.com/u/zanhulme)\
**Post date:** [April 8, 2024, 12:42am UTC](https://qa.fmod.com/t/hiding-disabling-invalid-plugin-control-widgets/21450/3 "2024-04-08T00:42:52Z")

</div>

Cool, thanks for confirming that, if I know it’s currently a hard limitation I’ll work around it.

For my current project I might just look at breaking it up into two or more separate effects plugins, instead of trying to make one thing with multiple functions that require separate controls.
