Hi,
the eGUI handles all actions/events to objects through the messages. So and if you want to do some advanced techniques you can catch the event just before the object get it and do your own action. And after your own action you can decide if the object gets the message or if will be discarded.
The example:
You want catch the message that the object has been just redrawn and you want to add to object some own graphics:
1 declare object and for the parameter 'pOnUsrMsg', place name of your handle function with prototype:
Byte (*OnUsrMessage)(struct D4D_MESSAGE_S* pMsg)
2. Create the handle function:
Byte MyObject_OnUsrMessage(D4D_MESSAGE_S* pMsg)
{
if(pMsg->msgId == D4D_MSG_DRAWDONE)
{
// Draw your own graphic
}
return D4D_MSG_NOSKIP; // Message won't be discarded
}
Gargy