In versions of FileMaker prior to 13 developers have used creative methods to hide objects on layouts. Using conditional formatting and making the font size 300 or higher has rendered the text invisible to users given certain conditions. Hiding tab panels by making them “invisible” required more creative options, which applied only to tab control panels, and generally applied to an “all or nothing” state.
Conditionally hiding objects not only is easier in FileMaker 13, but applies to a wide range of objects, and enables greater flexibility when to hide and show objects. The new object behavior method in the Inspector applies a Boolean (true or false) condition to show objects. Although this means that the visibility state of an object can change on the fly, in order to trigger this change it needs to be prompted by a Refresh Window or Refresh Object action.
Objects hidden using this new method are identified with a new “badge” in layout mode, an icon that looks like an eye when enabled in the View menu.
While using an “invisible tab panel” method (see above) appears to work, it requires far more effort than the newer method. First, the prior method requires that each tab panel have the same conditional formatting. Then, each state of the panel (Active, Inactive, Hover, In Focus) must be considered. Borders must be removed. Each layout themes may have additional considerations that need to be taken into account. Inconsistencies may appear if the solution was created in 12, then opened in 13, with strange artifacts causing tab panels to display. Also, if created in FileMaker 13, occasionally the text on the table panel in layout mode appears only for the active panel, and in find mode some of the panel’s text might also appear.
Using the hidden object attribute not only works on text and tab control panels, but also other objects like portals and fields. These become completely invisible when the condition is true.
A few things to consider:
- For tab panels this is an all-or-none deal – hiding one tab results in all tabs being hidden.
- Table view will not hide objects – fields become visible if the user switches to this view; conditionally hiding obejcts is not intended as a new security model.
- Scripts can still go to hidden objects, rendering the FileMaker 12 hidden tab method obsolete.
- Individual objects can be hidden inside portals. Annoyed by icons appearing in portals where there is no data? Hide them.
The new method gives developers more control in terms of conditionally hiding or displaying text and objects on layouts. Rather than using a series of work-arounds we now have native, built-in behavior.