Okay so I have a "Lift Station Overview" screen on a Coordinate Container. The coordinate container has multiple embedded views all coming from one "template" view, then parameters are passed to each embedded view based on what exists tag wise.
Currently i have a Menu Tree that i use to navigate to this "Lift Station Overview" Screen, naturally the screen opens up on the top of the page. There are many Lift stations to display around 15 or so. At the moment if an operator needs to get to a lift Station that is at the bottom of the screen (coordinate container), they have to scroll all the way down to the correct one.
What i would like to do is have the Menu Tree have a sub menu with all the Lift stations listed by name and if an operator needs to go to a specific "Lift Station" they will click that, and instead of the Lift Station Overview opening up at the top of the screen, it opens to the specific one they selected.
I would like to do this utilizing the same "Lift Station Overview" Page.
Does anyone have an idea of how to go about this? Is it possible? If not what would be the best workaround to achieve what i am going for instead of creating any new screens. Any help is greatly appreciated. Thanks in advance!
Note: I was thinking I could make one more screen with 1 embedded view from my"template" i'm already using, then whatever button is pressed on the sub menu it will open that corresponding screen based on parameters passed by the button. But I want to keep everything together on one screen if possible.
It's a bit difficult to visualise what you are describing. A couple of screengrabs would be useful.
If you want the overview + individual station then I would be inclined to have the single station embedded view expand or collapse depending on some visibility binding and, within that view, have a dropdown to select which station it's showing. You could also script it to expand and show a station if its widget is clicked on the overview.
1 Like
Ill get screen grabs when i get back to my computer, but for now, let me simplify.
I have a screen with multiple embedded views on it, as opposed to having that screen open at the top of the page I would like to be able to jump to specific embedded views anywhere on that screen based on what button was pressed within a menu.
Did that help get a better visualization?
Ah, so you want to auto scroll the page so that the selected machine's embed comes into view?
I think you just need to focus on the item you want to see.
Here's a mockup I did with five radio buttons and five labels in a flex column.
def runAction(self, event):
radio = self.props.index
item = self.parent.getChild("FlexContainer").getChild("Label" + str(radio))
item.focus()
In your case you might want to use a message handler to avoid all the getChild stuff which makes your application break any time you move something.
Use system.perspective.sendMessage | Ignition User Manual on the menu and use a Component Message Handlers | Ignition User Manual on the container for the embedded views and in that apply the focus to the desired view.
1 Like