The ‘Navigation panel’ Page Attributes apply to the Navigation Panel specific to that page and yes you can change the Position and the Caption. You can specify a ‘Data source‘ – example_navpanel demonstrates using a SQL Select statement, example_webapp demonstrates using a text file.
Alternatively, you can specify a ‘Custom UI Page’ you have saved to the Pages Library, like those used by Lianja.showDialogPanel() and Lianja.showDialog().
The ‘Navigation menu’ applies to all Pages and is defined in the App Settings. You can change the ‘Navigation menu caption’, but not the position or the position of the button.
Note you can also use the Esc key to exit the menu
We spoke about using a ‘Custom UI page’ as the Page(s) ‘Navigation Panel’ and modifying the contents programatically, but you can also get a ‘navigationpanel’ object reference for a Page.
oNav = Lianja.get("mypage").navigationpanel
The object returned is a Tree and the property of most interest here is tree.rowsource. If you take the example_webapp App, it has the Page Navigation Panel ‘Data source’ attribute (corresponds to tree.rowsource) set to ‘navigation_menu.txt’. The ‘Data source’ could also be a comma-separated list of items caption#icon#target. So, for example, I could change the Navigation Panel on the Customers page as follows:
oNav = Lianja.get("Customers").navigationpanel oNav.rowsource = "nav_emp_only.txt" // or oNav = Lianja.get("Customers").navigationpanel oNav.rowsource = "!Employees#darkblue,Employees#app:/cat_contacts_sm#employees.catalogview"
“Navigation Panel” for a page can now have grouped sub-panels that can be expanded/collapsed by clicking on the subtitles.
To enable this functionality specify ^subtitle instead of !subtitle.