Objects Visible Property in Development Enviroment

WHILE IN A LIVE SYSTEM, I’m missing how to maintain the objects visibility when in the development Enviroment, when the TAGs bound visibility is only desired to disappear in the client runtime view? Other HMI design packages include a “toggle states” menu button or when in the development mode, don’t turn off the objects visibility? The invisible objects become lost unless you know where to select the hidden object…

We have a boolean client tag called lampTest that we use to display hidden objects both in developer and runtime.
Just set the visible binding to an expression of the actual live tag OR lampTest

{path/to/live/tag}||{client/lampTest}

In design time you can also turn on a spot light for invisible.
Under the View Menu, Spotlights, Invisible

2 Likes

There is a system tag that holds a bit array of SystemFlags. The lowest order bit is on if you are in the designer and the next bit is on if you are testing in the designer. I usually use an expression like this in the visibility property of a component. It is visible in the designer when not testing but uses the other condition when testing or at runtime.

({[System]Client/System/SystemFlags} & 1 )  // in designer (bitwise and with lowest bit)
&&                                          // and (logical and)
!({[System]Client/System/SystemFlags} & 2)  // not testing (bitwise and with next to lowest bit)
||                                          // or (logical or)
{your/tag/that/controls/visiblity}          // your condition(s) ...
4 Likes

Thanks for the tip. We will start implementing the hidden objects test bit. I had tried the spotlights check boxes but they goes back unchecked on next visit to the program. Is there a way to preserve designer window settings upon exit?

Thanks for the tips, However I see this as a "total miss" by IA. I have been doing HMI design and implementation as a SI for 30+ years; using all major brands and custom code (VS) environments. I do not expect or want items to react while in development mode. It is very nice to have a preview mode, but total BS to have "live stuff" happening in development mode. Writing extra code just so you can see something in development mode means it ultimately cost more to implement and maintain. Time = Money.

Welcome to the forum, John.

Many, many users of Ignition are definitely not programmers. The appeal of Ignition to such people is that what you see while designing is very close to what you will get at runtime. What you want would very much break what they want. You, as a skilled programmer, both found this five-year-old workaround and I suspect you understand how to apply it. The non-skilled programmer would be completely roadblocked achieving the inverse in your "ideal" environment.

That Ignition (IA) caters to and considers the needs of its wide user base is a big part of its popularity. (Among many other reasons.)

2 Likes