Activity indicator and form disabling¶
Provide a consistent activity-indicator and form-disabling UX across the three action/input controls. Control initialization for SAIFButton, SAIFComboBox, and SAIFListBox; client click/change events.
| Field | Value |
|---|---|
| Operation ID | OP-V2-016 |
| Trigger | Control initialization for SAIFButton, SAIFComboBox, and SAIFListBox; client click/change events. |
| Inputs | EnableIndicator, DisableFormControlsOnClick/DisableFormControlsOnChange. |
| Outputs | CSS class selection, registered client script include, client-side form-disable signal. |
| Primary components | SAIFButton, SAIFComboBox, SAIFListBox |
| Entry point | SAIF.Presentation.Web.Controls.V2/SAIFButton.vb |
Steps¶
- Apply the base CSS class (
SAIFButton,SAIFComboBox,SAIFListBox), switching to the matchingIndicator-suffixed class whenEnableIndicatoris true. (BR-V2-092) - Register the matching client script include (
/Resources/Scripts/Controls/Button.js,/Resources/Scripts/Controls/ComboBox.js,/Resources/Scripts/SAIF.ListBox.js). (BR-V2-093) DisableFormControlsOnClick/DisableFormControlsOnChangesignal the client script to disable the remaining form controls once the control is actioned. (BR-V2-094)
Process flow¶
The following diagram visualizes this operation's control flow.
flowchart TD
Start([Init]) --> Ind{EnableIndicator?}
Ind -->|Yes| IndCss[Apply Indicator-suffixed CSS class]
Ind -->|No| BaseCss[Apply base CSS class]
IndCss --> Script[Register matching script include]
BaseCss --> Script
Script --> Action([User clicks/changes control])
Action --> Disable{DisableFormControlsOnClick/Change set?}
Disable -->|Yes| DisableAll[Client disables remaining form controls]
Disable -->|No| Done([No further action])
Failure and edge-case behavior¶
- No exceptional failure handling beyond the branches described in Steps was found in the analysis findings.*
Related documentation¶
Sources¶
SAIF.Presentation.Web.Controls.V2/SAIFButton.vb