Build the top menu and toolbar¶
Construct the SAIFMenuTop control tree — the top page-link row and the full set of toolbar action icons. This operation is implemented by SAIFMenuTop.CreateChildControls, SAIFMenuTop.BuildMenuIcons.
| Field | Value |
|---|---|
| Operation ID | OP-MENU-011 |
| Trigger | SAIFMenuTop.CreateChildControls, invoked during the ASP.NET control-tree creation phase. |
| Inputs | Navigation data (see Acquire navigation data). |
| Outputs | TopMenuApp-row link panel; TopMenuIcons panel with all toolbar SAIFImageButton icons. |
| Primary components | SAIFMenuTop.CreateChildControls, SAIFMenuTop.BuildMenuIcons |
| Entry point | SAIF.Presentation.Web.Controls.V2.Menu/SAIFMenuTop.vb |
Steps¶
- Build the link collection from navigation data (see Build top page links) and add the links to a
TopMenuApp-rowpanel inside thetopmenuboxnavigation panel. Enforces BR-MENU-052. - Build the toolbar icons into the
TopMenuIconspanel:imgTopDefaultOnSubmit(a zero-sized default submit button),mnuHelp, preference save/clear, and the insert/save/delete/edit/cancel/submit and print/preview/email/download/calculate icons, each aSAIFImageButtonwired toMenuImage_Clickand registered in theclsMenuButtondictionary. Enforces BR-MENU-053, BR-MENU-054.
Process flow¶
The following diagram visualizes this operation's control flow.
flowchart TD
Start(["SAIFMenuTop.CreateChildControls"]) --> Links["Build link collection from navigation data"]
Links --> Panel["Add links to TopMenuApp-row panel in topmenubox"]
Panel --> Icons["Build toolbar icons into TopMenuIcons panel"]
Icons --> Wire["Wire each SAIFImageButton to MenuImage_Click"]
Wire --> Register["Register icon in clsMenuButton dictionary"]
Register --> End(["TopMenuApp-row link panel plus TopMenuIcons panel"])
Failure and edge-case behavior¶
- No exceptional failure paths beyond those noted in the steps above.
Related documentation¶
Sources¶
SAIF.Presentation.Web.Controls.V2.Menu/SAIFMenuTop.vb