The most difficult and frustrating part of writing software is debugging. It may be especially complicated when a big subsystem of shared libraries and objects (like Reggae) is used by an application. To make the task easy, Reggae has some debugging features built in. The most important one is event logging. Every Reggae object logs important events like creation, disposition, port connections, changing attributes, handling data requests etc. There is a special function in multimedia.class (MediaLog() namely), used by all Reggae objects for sending log messages. All these messages may be sent to a public message port. MediaLogger creates such a port, receives messages and presents them in a simple GUI (see screenshots below). It allows for importance level based filtering and saving messages to a file. This application will help in developing applications using Reggae, developing third party Reggae classes and Reggae itself (it is used by me regularly).
Main MediaLogger window.
Different levels of improtance may have user defined colors.
There is no installation procedure. Just copy the file with its icon whereever you want. Usage is fairly simple. Run the program by doubleclicking its icon and it will catch all the Reggae activity. You can change level of message filtering with a cycle gadget on the bottom. There are also some menu entries. 'Copy' copies selected messages to the system clipboard. 'Clear' removes all messages from the listview, 'Save' stores all messages from the listview to a file choosen with a filerequester. 'Settings' menu item opens a configuration window, where you can set colors for different message importance levels. This is done with standard MUI color selectors.
MediaLogger (latest version)