Setting panel state of dynamic panel within other dynamic panel

Hi there,
For a project I’m trying to prototype the interface of a coffee machine.
In the machine, you should be able to personalise the parameters of your drink. The idea is that if you press the left or right arrow, 1 to 5 dots are shown/hidden. I did this with 5 different states in dynamic panels. If you then press up or down, you move to the next setting you can adjust. When you move to the next setting, I still want to be able to see the previous adjusted setting if it is in screen.
It’s quite difficult to explain, but it should look something like this:

I first tried it with local and global variables (I have global variables which I’m going to use to show the settings in a different screen as well) but that did not work. I now added extra dynamic panels in each screen for all parameters, but somehow they won’t show…

Attached is the file. I hope someone is able to help
Coffee machine.rp (1.0 MB)

You’ve set this up in an understandable but very inefficient structure. You should only need one set of labels with dots. So, a single “Portion Size” text widget with a “dots” dynamic panel (5 states), and a single “Strength” text widget with its “dots” dynamic panel, and so forth. What you have set up is multiple nested dynamic panels with multiple instances of each setting–for example, I see 4 different “Portion” dynamic panels, all representing the same thing. Trying to manage all of this is–as you’ve discovered–a serious chore, with many chances for errors.

It will unfortunately also be a serious chore to change your structure to a single list of Presets, and then moving that list up and down when the up-arrow and down-arrow buttons are pressed.

I looks like you’ve tried changing all four Portion DPs with the “Right” button click, and that should work. You’d need to do this for all the other “dot DPs” …Also a chore (and more difficult because each duplicated DP is named exactly the same, so hard to tell which instance is which.) You’d need to repeat all this for the “Left” button, swapping “Next” for “Previous”. This actually does work in your file, but it does not appear to work because of a bug in your “dot” DPs, where in some cases your “state 2” should contain 2 dots, but instead it contains 3 dots. It took a while to sleuth that bug–and a prime example of why this massively redundant set up is not a good approach–again, way too many chances to make errors, and very time consuming and difficult to find errors. For things like this, a Master can help, so you don’t have to look for and fix dozens of dot DPs–just the one Master dot DP.

At any rate, here is an updated file with Portion size and Strength fixed in a duplicated Presets (1) page.
Coffee machine.rp (1.7 MB)

Oh my god, thank you so much! I’m quite inexperienced with Axure and thought this would be the simplest way to do this.
You’re completely right I should have used a master for the dot DP, did not actually know that you could make a master of a DP :expressionless:

I also completely agree that it’s a very inefficient structure.

Would you maybe be able to explain to me (or give me a short example) of how you would do this? I have a slight idea (by moving the list up or down by a set Y), but am not completely sure how I would then get the loop effect (when I’m at the last settings, you see the first one again). It would really help me in future projects and I really want to learn how to work with Axure more efficiently :slight_smile:

Thanks again!