Is there any good way to accomplish this?
Having a dashboard’ish screen where user can click next and previous which will start an animation sliding one container out and a new one in, just don’t want hiddden containers to update when not viewed as each dashboard added builds up the requirement for the screen.
Also forgot, each dashboard is using values from query tags which as set up using a leased scan class. Would be nice if stopping the container bindings also affects the scan class.
Not sure if the visible attribute affects the leased scan class or not, but you could set the slow rate to zero.
Otherwise, use a driven scan class and turn driving tags on/off as needed.
I believe the only way to (safely) do this would be to animate the opening and closing of windows.
Does ignition have built in support for animating windows openening/closing I don’t know of?
system.gui.transform doesn’t work.
I think you could make your sliding containers their own windows, and open/close them when the user navigates between them, playing your transform slide in/out animation in the process.
When the sliding out animation finishes, call system.nav.closeWindow().
For opening, you’d call system.nav.openWindow() with the original position offset, and animate it into position (slide) with transform again.
Think I got it working with a template using 2 template containers I can animate, The template path for these is then changed in my animation script. I can now add ‘pages’ to this template using a custom dataset property, much like the template repeater, where each row will represent a page.
Also easier now, as the dashboards was created as templates in the first place. Fortunately these dashboard templates doesn’t have any parameters configured, need to figure that out though if I ever need that.
Hmm, my attempt works when running preview mode inside my newly created slider template, however when I drag template out in a window, without resizing it, the layout of the dashboards is awful. The animation works great when in preview mode inside the template, but when in preview mode in a window everything is moved around randomly.
Been trying both with and without the ‘Layout Enabled’ option in the templates, nothing seems to work.
Using the dashboards directly in a window works fine, also resizing.
Yeah, sounds like you just need to get the layout of everything correct. You likely want your container templates to use absolute layouting, anchored at every side. Maybe the same for your container group template.
Just solved it, seems like animating a template container is making things behave strange. Wrapping each template container in a normal container solved my issue
You also have to realize that, while an object is subscribed, it will only receive changes from the server. But when an object is loaded from scratch, it needs to read all values from the server.
So if people switch often, leaving the subscriptions active might actually cause less traffic. And the animation also won’t be as smooth when you load an object from scratch.
A leased tag is not subscribed from scratch when going from unused to used. If they switch often, the stall time can be set to fit the overall needs. My problem was not really the tags, just seemed like when adding dashboards for all kind of stuff, first the window loaded slower and the overall usage of resources increased.
My attempt here with two template containers ensured that only one dashboard is updating as the hidden template containers template path is set to None when outside of view.