This would be a case to use custom menus. It would be nice if there were an easy way to do this as I assume most people have the same issue.
no, not when You want to use the built-in 'layout-selector' from Go. Since choosing a layout is not a 'one-finger-touch' on Go, we are using buttons/button-bars for that with scripts or 'go to layout' scriptsteps on the desired layouts
Thanks both of you for replies. I am using Filemaker Pro 13. Do you have any idea about doing this in Filemaker Pro 13?
Use the Get(Device) function - 3 for iPad
Plenty of developers on this forum with way more iOS chops than I have, so I hesitate to chime in, but...
In my experience, the current solutions to not showing layouts in that menu are:
- Don't show them anywhere. If you uncheck "include in layouts menu", users (iOS and FMP) just won't be able to use the layout drop-down, and will have to use your navigation buttons, etc. instead. Since we usually hide status area in FMP anyway, this is how we'd usually go. Developers are usually better off going into layout mode before switching layouts, anyway.
- Create a separate UI file for iOS, which uses data from the main file but has all the layouts that are iOS-specific.
- Another option is to let them see the layouts, but restrict their access so that if they try to switch to an FMP layout, they won't get there, but IMHO, that's pretty clunky.
Chris is correct in is statement.
I hide them completly then create my own UI for ios. I use buttons to Go to the different layout.
Create your own popup menu then use onobjectmodify script trigger with a go to layout by calculation name.
One more is if you have duplicates of every layout. So you have "Clients Pro" and "Clients iPad". Then you can hide those, and show a third layout "Clients" that has a script trigger that fires and redirects to the correct layout.
Now we're talking MVC and branching. Love it. Control being the meaning of the "C" in model-view-controller to get to the VIEW (layout).
If get(device) = 1
go to layout for Mac
else if get(device) = 2
go to layout for windows
else if get(device) = 3
go to layout for ipad
else if get(device) = 4
go to layout for iphone
this would be using the point and shoot go to layout. It also eliminates worrying about any structure to the layout and table names or changing them.
I've rolled my own which uses a very precise naming of layouts and tables
To to layout by calculation (
$_type & " " & $_device & $_tablename ,,,, etc,
This however has the drawback that all such layouts have to be properly named and never changed.
Form iPad Address
Report PC Address
PDF Mac Invoice
New iPhone Inventory
It does however offer simplification over the random naming of layouts:
Address Report with sort for the iPhone