More Repeater Stuff

OK, I’m still trucking along with this same design. Thanks again to those who have been helping me along the way (big thanks to @skb and @mbc66).

To be clear, I truly am trying to actually LEARN this stuff. sigh I keep getting hung up on syntax, unfortunately.

Attached is the current progress in which selecting an object in the “source” area, shows/hides it in the repeater (CTRL+click is working too). Clicking on the Object Name in the repeater marks/highlights the row.

The Problem:

If a row is unmarked and then hidden (via the source filters), I want it to be re-marked when it’s made visible again through the source filters. (I think) I have learned that trying this outside of the repeater is futile. So, I added an object inside of the repeater to fire OnMove. Unfortunately, I simply could not figure out the syntax.

Objects 100, 200 and 300 (Box1, Box2, Sphere1) all need to be marked when they go from hidden to visible via the Source. I removed the stuff I tried, just so I didn’t clutter the prototype with bad code

Please help.

Thanks in advance.

-g

HeavyRepeater.rp (197.8 KB)

@gitterson,

I’m not exactly sure just what you’re actually trying to do or why… I can’t figure out some of your filters, what’s going on when you mark all 100, 200, 300 rows with OnLoad, etc. It’s also not clear to me that you really need to be marking/unmarking rows to achieve (what I think are) your ultimate objectives here. Marking or unmarking a repeater row is a “silent” kind of operation, and there are no associated events for OnMark, OnUnMark, OnMarkedChange, so I’ve not found marking to be particularly useful in my repeaters. It sounds like what you are trying to do is visually indicate rows which are selected and/or which belong to a certain “group” or definition, like “all header rows” or “all rows in multiples of 100”.

I added a page with a simple repeater in which single or multiple rows can be marked/unmarked, either within the repeater or outside the repeater. I also show that rows can be marked and be visibly shown as being marked, hopefully demonstrating the difference between marking/unmarking and visibly designating/undesignating a row. I hope this helps you understand more about repeater marking.

HeavyRepeater (1).rp (234.9 KB)

In short, I am simply trying to “select” rows (or groups of rows) and visually indicate what is selected. There is a “highlight” widget in the repeater that gets selected if the row is marked. I don’t know any other way to select/highlight rows.

The filters are acting like faceted filters with one caveat - a hidden object that is always selected with no data, which allows entirely deselecting the objects in the “Source” area and showing nothing in the repeater.

I’ll take a look at your example. I usually try to add a simple example because a simple response usually lets me put together the results in the bigger picture. This time, I felt like the full prototype was appropriate because there are interactions that I felt required it.

Thanks for your help!

-g

Hi @gitterson!

I think this is what you’re trying to do, but let me know if I’m wrong. :slight_smile:

Whenever one of the source filters is selected (and the row is being shown again on the repeater), you always want it to be marked, and have the highlight, correct?

I made just a couple of changes:

  1. For each of the Source filters, I added a case to the OnClick action, to Mark the repeater row where the Object Name matches the Source filter name. The case looks like this: Mark Rows where “[[TargetItem.ObjectName == LVAR1]]”—LVAR1 is the text on the Source filter rectangle. So, whenever the user clicks the Box1 source filter, the Box1 row in the repeater gets marked, and whenever the user clicks the Box2 source filter, the Box2 row in the repeater gets marked, etc.

The marking action, however, doesn’t seem to reload the repeater, so even though I think the row IS now marked, the repeater has not been re-rendered on the screen. So I did one more thing…

  1. Added a "Remove Filter None from (Repeater). This will force the repeater to render again, and make it reload all the rows, so that the Marked highlight now shows.

So the case now looks like this:

I think this is now working the way you wanted, but let me know if it’s not, and I’ll take another crack at it.

Here’s the modified file:

HeavyRepeater_modified.rp (199.0 KB)

-skb

Well, it appears that you have done it again. This is another case where I feel like I tried this. Maybe I failed to use “targetitem.x” instead of just “item.x”.

Regardless, this appears to work flawlessly. Thank you kindly, once again!

Cheers.

-g