Create a minimal GUI with dependent ListBoxes that read the contents of two text files.
1. A Services ListBox that reads LongNames from [login to view URL] if List=1, sorted alphabetically. (A Service with an Alt is an unlisted alternative for the Alt.)
2. Selecting a Service displays a Keywords ListBox that reads Keywords from [login to view URL] if Service=[login to view URL] and Active=1, grouped by Group and sorted alphabetically.
3.1. Selecting a Keyword whose ID has no related Keywords displays an Actions ListBox.
3.2. Selecting a Keyword whose ID has related Keywords displays a Related ListBox that reads [login to view URL] if Service=[login to view URL], and Keyword, sorted alphabetically. Selecting a related Keyword displays the Actions ListBox.
4. The Actions ListBox lists the [login to view URL] and Keyword for the selected Keyword or related Keyword, then any Alt Service, sorted alphabetically. Selecting an Action sends [login to view URL] to a MsgBox, substituting * with the Keyword.
[[login to view URL]]
LongName,ShortName,URLBase,List,Alt
Duis Aute,da,[login to view URL]*&x=y,1,
Irure Dolor,id,[login to view URL]*&x=y,1,
Reprehenderit,r,[login to view URL]*&x=y,1,
Voluptate,v,[login to view URL]*&x=y,0,id
Esse Cillum,ec,[login to view URL]*&x=y,0,id
[[login to view URL]]
ID,Keyword,Service,Group,Active
10001,lorem ipsum,da,1,1
10002,dolor,da,1,1
10002,sit amet,id,1,1
10003,consectetur,da,1,1
10003,adipiscing elit,id,1,1
10003,sed do,r,1,1
10004,eiusmod,da,1,1
10004,tempor,id,1,1
10004,incididunt,r,1,1
10004,ut labore,r,1,1