Multiple Styles - Repeater

Hi All,

Before I start going to far down the crazy path - wanted to check in with the brain’s trust on if this is even possible currently.

Basically - I have a part of my dataset that is has a driving value between an ‘event’ and a ‘conversation’ or ‘detailed info’

In my mind I am thinking I set an IF Type = Event then set background colour, set height, set icon and then also DON’T set certain text values - and IF it is in fact not an event, allow the base repeater style to kick in?

You could put the icon and background rectangle (or whatever makes sense; I have no idea what your file looks like) into a dynamic panel with different states for each color/icon combination. Then if you make the panel states the same value that you will use in that column, you only need to add a single case:

OnItemLoad
Set backgroundPanel to state: [[Item.state]]

So if one of the possible values is ‘detailed info’ and you give the corresponding panel state that exact name, you save yourself some effort. You won’t need to make a case for each possible value. You just need to create a panel state for each value.

This will be in addition to whatever OnItemLoad cases you already use. Make sure it’s set to IF not ELSE IF.

Just curious, would this be easier or harder than just copying a bunch of hidden rectangles and doing “show/hide” on them?

I’m often left struggling with the performance implications of these decisions…

Because then you’d need to do separate show/hide action for every single rectangle. This way you only need a single action and a single panel with states. When you want to add a new status, you just add a new state to the panel and when you set that new value in the dataset it just works, no need to edit any actions or cases (apart from whatever sets the new status in the dataset).

It sounds like you’re saying this is an “authoring-time optimization” choice. Thx, that makes sense.

Yes, definitely optimizes ease of authoring. I doubt there’s any noticeable runtime performance benefit either way.