I was just having a conversation with someone about skins and the messages that interface elements can respond to other than button presses... and I thought I'd throw this out here now and see if there are other status messages that would be useful to receive. These messages can be used to toggle one or more icon images or to play a sound effect.
For example, I have messages to report when songs start and end, but I do not have a message to indicate the pause time between songs when on a real machine the disc would be changed. Does it need a separate message?
State messages are about the easiest thing for me to add, so if there are any jukebox states that you would like to be able to trigger something, please let me know!
Currently supported status messages are:
MSG_FILTERED: Activated when a filter is in place; deactivated when the filter is cleared. (Note that filters aren't actually implemented yet, but the message exists for when they are.)
MSG_POPULAR: Activated when the Most Popular list is shown;
deactivated when the Song Queue display is restored.
MSG_CREDITS: Activated when one or more credits are available; deactivated when no credits are remaining. When the jukebox is set to not require credits, this message is always active.
MSG_SONGSTART: Activated when a song is playing; deactivated when the song finishes.
MSG_SONGPAUSE: Activate when the Pause feature is activated; deactivated when play is resumed.
MSG_START: Activated when the jukebox is started. This is the default action, and can be used to essentially apply "decals" to the jukebox without having to edit the skin background image. Note that this message is never deactivated, so you cannot use this message to
trigger shutdown events, as the shutdown happens too quickly for the jukebox to respond to.
MSG_ISDOS: Activated for DOSCab Jukebox, deactivated for WinCab Jukebox. Useful if you wanted to show a different decal depending on which version is running.
MSG_RADIO: Activated when Radio Mode is started; deactivated when Radio Mode is exited.
MQ_MSG_MUTE: Activated when the Mute function is used; deactivated when normal volume is restored. This message is only sent if the actual mute function is used, not if the volume is simply turned down to minimum.
MSG_NOCREDITS: Activated when the user attempts to select a song when credits are required and no credits are available. Deactivated two seconds later.
MSG_INVALID: Activated when the user attempts to select an empty song slot. Deactivated two seconds later.
MSG_DUPSONG: Activated when a song is selected that is already in the queue if AllowDuplicatesInQueue is disabled in jukebox.ini. Deactivated two seconds later.
--Chris