|
Previous Top Next |
This template adds the header sort option to a regular queue driven listbox, just as it does to Clarion browse templates. This is a very handy way to create listboxes that the user can sort by clicking on the header.
Listbox control | The listbox control to add the header sort to. |
Queue from data | Use this option to select a queue from the data declaration in the app |
Queue from code | Use this option to enter a queue label that is declared in embedded code rather than in the data. |
This template adds some embeds to the procedure, see the screenshot below.
Inside Class Decl. | This embed is inside the CLASS(SortHeaderClassType)/END structure that declares the derived sort header class. This embed can be used to declare inherited methods if needed. Note that the QueueResorted method is always declared by the template. ITSQ5::SH CLASS(SortHeaderClassType) !Declare SortHeader Class ! Start of "Inside Sort Header Class" ! [Priority 4000] ! *** This is the "Inside Class Declaration" Embed. ! End of "Inside Sort Header Class" QueueResorted PROCEDURE(String pSortingString),VIRTUAL END |
QueueResorted | This embed can be used to execute code that should run after the queue is sorted. There is a bug in the SortHeaderClassType.QueueResorted, which results in the queue not having been sorted when this method is called. The only way around it was to let our installer change the PRIVATE attribute on the ListQueue property in the brwext.inc file so I could sort the queue inside the derived QueueResorted method. The results are that in the "After Parent Call" embed the queue is sorted correctly. |
The extension list shows which queue and list are involved, which helps to identify which extension affects what list/queue: