The purpose of this article is to explain the necessary steps to enable the Progress Indicator User Control in Panels.
Objects: Panel, Procedure, Work With
Generators: Android, Apple
See Progress Indicator User Control in order to understand the API of the user control.
Use a Procedure with the Sleep function set to 4 in order to simulate an elapsed time.
For this example, create the following Panel:

Event 'Determinate'
Composite
Progress.Type = ProgressIndicatorType.Determinate
progress.MaxValue = 100
progress.Value = 0
Progress.ShowWithTitleAndDescription("ProcessDeterminate","Sleeping...")
sleepingProc()
Progress.Value =25
sleepingProc()
Progress.Value =50
sleepingProc()
Progress.Value =75
sleepingProc()
Progress.Value =100
EndComposite
EndEvent
Event 'Indeterminate'
Composite
Progress.Title = "Process Indeterminate"
Progress.Description = "Sleeping..."
Progress.Class = "Table.Progress"
Progress.Type = ProgressIndicatorType.Indeterminate
Progress.Show()
sleepingProc()
EndComposite
EndEvent
- At the end of an Event an implicit Hide() is done. this is in case the Hide() call hasn't been done by the user.
- The scope of the properties of a Progress Indicator is per Panel. So, if calls are done between two Panels which have a Progress Indicator the properties are not going to be shared.
- Any UI element invoked by an action which also has a call to the Progress Indicator will be shown over the progress Indicator (Call, MSG, Confirm, etc).


- The Progress Indicator external object can only be called from client-side events of Panels and from offline Procedures objects.