# Beta v3.5 - Dynamic lists

**URL:** <https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423>\
**Category:** Developers\
**Created:** [September 26, 2023, 10:01am UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423 "2023-09-26T10:01:41Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![martin](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/martin/32/145_2.png) [@martin](https://forum.electra.one/u/martin)\
**Post date:** [September 26, 2023, 10:01am UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/1 "2023-09-26T10:01:41Z")

</div>

A preset to demonstrate dynamic changes of the Overlay lists based on the state of another control. The dynamic lists are meant to be used anywhere where meaning of one parameter changes in context of another parameter value.

[https://app.electra.one/preset/6UGrmEWItRnVvipIMvEk](https://app.electra.one/preset/6UGrmEWItRnVvipIMvEk)

Note, I will adjust the web editor so that the overlay IDs are visible there. I will also separate the Overlay editor from the list editor in near future.

---

<div class="post-metadata">

**Author:** ![Mint-Gecko](https://avatars.discourse-cdn.com/v4/letter/m/67e7ee/32.png) [@Mint-Gecko](https://forum.electra.one/u/Mint-Gecko)\
**Post date:** [October 7, 2023, 11:34am UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/2 "2023-10-07T11:34:21Z")

</div>

In the demo, lists are being created like this:

```lua
--overlay list with ID 2
overlays.create(2, listReverbTypes)

```

What if I want to change the content of list ID 2? Do I have to run the same command pointing to a different list than `listReverbTypes` or can I change the content of `listReverbTypes` and it’ll be picked up on the fly?

---

<div class="post-metadata">

**Author:** ![martin](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/martin/32/145_2.png) [@martin](https://forum.electra.one/u/martin)\
**Post date:** [October 7, 2023, 12:33pm UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/3 "2023-10-07T12:33:10Z")

</div>

Currently, you can use it only to create a list. Like a one time action. Changes will not be picked up. The reason why I did that this way (now) is that this can be also implemented on mk1.

---

<div class="post-metadata">

**Author:** ![Mint-Gecko](https://avatars.discourse-cdn.com/v4/letter/m/67e7ee/32.png) [@Mint-Gecko](https://forum.electra.one/u/Mint-Gecko)\
**Post date:** [October 7, 2023, 9:11pm UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/4 "2023-10-07T21:11:54Z")

</div>

What are my options if I’m trying to add the list values of a VST plugin parameter? The VST plugin parameter in use could be changed depending on the currently focused plugin or depending on the focused plugin parameter, requiring occasional updates to the list values.

---

<div class="post-metadata">

**Author:** ![martin](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/martin/32/145_2.png) [@martin](https://forum.electra.one/u/martin)\
**Post date:** [October 8, 2023, 9:48pm UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/5 "2023-10-08T21:48:16Z")

</div>

Currently, meaning in v3.5 beta, you can create a new list of each unique parameter. If given parameter had a list created already, you should reuse it. Editing lists comes with compatibility problems. I have been considering an option for lists to call a lua function that would provide (return) a table with `value`, `label` pairs. I will probably add that in the future, but since it requires significant changes in how lists work, I’ve decided not to tackle that just yet.

---

<div class="post-metadata">

**Author:** ![Mint-Gecko](https://avatars.discourse-cdn.com/v4/letter/m/67e7ee/32.png) [@Mint-Gecko](https://forum.electra.one/u/Mint-Gecko)\
**Post date:** [October 9, 2023, 9:27pm UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/6 "2023-10-09T21:27:05Z")

</div>

I see. My context is a DAW control plugin. Users could have hundreds of plugins and change between them multiple times per minute.

Meaning, the E1 would have to either store all list values of all parameters of all plugins that could possibly exist in the world (seems to be the worst approach because the E1 preset needs to change every time a new plugin is supported).

Or the DAW control plugin would need to communicate the list entries to the E1, but in a way that the E1 only creates those lists in memory at first sight and reuses those lists when the plugin is controlled a second time. This couples E1’s memory management to the DAW plugin and would lead to problems when the E1 and the DAW plugin get out of sync e.g. when restarting the E1.

Will modifying existing lists be possible in the future?

---

<div class="post-metadata">

**Author:** ![Mint-Gecko](https://avatars.discourse-cdn.com/v4/letter/m/67e7ee/32.png) [@Mint-Gecko](https://forum.electra.one/u/Mint-Gecko)\
**Post date:** [March 8, 2024, 8:47am UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/7 "2024-03-08T08:47:42Z")

</div>

Any news on being able to change the content of lists via Lua?

---

<div class="post-metadata">

**Author:** ![Mint-Gecko](https://avatars.discourse-cdn.com/v4/letter/m/67e7ee/32.png) [@Mint-Gecko](https://forum.electra.one/u/Mint-Gecko)\
**Post date:** [May 3, 2024, 5:54am UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/8 "2024-05-03T05:54:58Z")

</div>

What about putting a list into a simple “remote control” mode where the shown value can only be updated by script and no overlay is available? Would that be simple to implement for both the mk1 and mk2?

---

<div class="post-metadata">

**Author:** ![martin](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/martin/32/145_2.png) [@martin](https://forum.electra.one/u/martin)\
**Post date:** [May 7, 2024, 9:41am UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/9 "2024-05-07T09:41:09Z")

</div>

I am considering that lists could call a lua function that would return the data, That would allow truly dynamic behaviour. I wanted to do that back at the time when this got discussed for the first time, the issue is that it represents a major change to how the lists are implemented. In other words, I am planning to do that, it is just not as easy as I initially thought.

---

<div class="post-metadata">

**Author:** ![Mint-Gecko](https://avatars.discourse-cdn.com/v4/letter/m/67e7ee/32.png) [@Mint-Gecko](https://forum.electra.one/u/Mint-Gecko)\
**Post date:** [May 7, 2024, 3:57pm UTC](https://forum.electra.one/t/beta-v3-5-dynamic-lists/2423/10 "2024-05-07T15:57:58Z")

</div>

Sounds great! Any idea when you want to implement this?
