“SW Narrator” is a simple application which reads any action performed on smallworld application. it is as simple as Narrator provided by default in windows operating system. This is developed in magik by using SAPI.
Interestingly heart of the application is only 2 lines
MagikSF> v << ole_client.create_object("sapi.spvoice")
Sw narrator gets every action performed by application by add_filter_event to :interaction_mode_event. This will give handle to action and there it retrieves the UI value.
Code written in click_monitor in development tool serves the purpose.
Looking for some online drive to upload the module… I will update once I shared the module.