How to make a FlexRepeater have a scroll bar?

How can I make a Flex Repeater Items adjust to the size of each instance, but make them appear out of the screen and make a scroll appear.

My current config:

What I mean is this:


But If there are too many selected:

How could I make a scroll appear but also that the size is adjusted to the size of each instance?

Thx!

Component
[
  {
    "type": "ia.display.flex-repeater",
    "version": 0,
    "props": {
      "path": "templates/misc/tag_value",
      "direction": "column",
      "useDefaultViewWidth": false,
      "useDefaultViewHeight": false,
      "elementPosition": {
        "grow": 0,
        "basis": "auto"
      },
      "style": {
        "gap": 5
      }
    },
    "meta": {
      "name": "FlexRepeater"
    },
    "position": {
      "grow": 1,
      "basis": "320px"
    },
    "custom": {},
    "propConfig": {
      "props.instances": {
        "binding": {
          "config": {
            "path": "view.custom.current_path"
          },
          "transforms": [
            {
              "code": "\tfrom com.inductiveautomation.ignition.common.tags.paths.parser import TagPathParser\n\n\tnodes = []\n\tfor path in value:\n\n\t\tpath = TagPathParser().parse(self.view.custom.uns + path)\n\n\t\t# Get tag type\n\t\ttag = system.tag.getConfiguration(path.toString(), False)[0]\n\n\t\tif str(tag.get(\"tagType\")) == \"AtomicTag\":\n\t\t\t# If is a tag, then we return it\n\t\t\tnodes += list(system.tag.browse(\n\t\t\t\tpath.getParentPath(),\n\t\t\t\t{\"tagType\": \"AtomicTag\", \"name\": path.getItemName()}\n\t\t\t))\n\n\t\telse:\n\t\t\t# If is not a tag, we return all the tags in it's path\n\t\t\tnodes += list(system.tag.browse(\n\t\t\t\tpath.toString(), {\"tagType\":\"AtomicTag\"}\n\t\t\t))\n\n\t# We only return the path and the name\n\treturn [\n\t\t{\"name\": node.get(\"name\"), \"fullPath\": node.get(\"fullPath\")}\n\t\tfor node in nodes\n\t]",
              "type": "script"
            }
          ],
          "type": "property"
        }
      }
    }
  }
]

Note: Tags references are picked up from a Tag Tree Component

I think just specifying

"shrink" : 0

in your elementPosition properties should do the trick?

Yep, it totally did.

Thank you!

Also, the styles/overflow setting. You can force the scrollbar to be present at all times if you want so it doesn’t come and go..

2 Likes