Anything I need to know about adding new layouts?
There are a few thing to keep in mind, but SeedCode Complete is very forgiving about creating new layouts... provided they aren't based on the CalendarInterface table (aren't new calendar layouts). New calendar views should be created as calendar tabs.
But for regular layouts, there are just a few things to know.
Begin new layouts by duplicating a working layout based on the same table occurrence, so if you want a new project layout, begin by duplicating the layout "Projects" this will preserve any special script triggers attached to that layout.
All layouts have two script triggers on them:
On Layout Enter: "Show Side Bar by Preference"
On Layout Exit: "Manage Layout Exit".
Some layouts like "Projects" have a special On Layout Exit trigger that itself calls "Manage Layout Exit". So if you create a new project layout you'll want to keep these special triggers; duplicating an existing layout is a nice way to do that.
Navigation is done using the Layout pull down menu, so if you want your users to be able to get to the layout, include it in the layout menu.
If you'd like to hide a new layout from some users, employ FileMaker's build in access privileges to limit certain privilege sets' access to the layout.
You can create "no side bar" versions of your layouts by simply adding the phrase " - no Side Bar" to the layout name (note the leading space). You only need to do this if you have both sidebar and no sidebar versions of the same layout. (Note. prior to [[Version History | version] 2.3 you'll also need to teach the following scripts about your new layouts: "Toggle Side Bar ( Action )" and "Show Side Bar by Preference".)
You may want to create a new branch for your layout/table in the script "View As ( Form ; List ; Table )". This is the script our custom menus
call when you click on one of the form, list, or table icons in FileMaker.
Similarly, if your layout is based on a new table, you may wish to add a branch for it to the master script we use for creating new records
, but this isn't required.