PMControl

Description
PMControl is inherited from PMWin, so all inline functions are inherited form PMWin. PMControl has also two virtual functions (get and set) which permit to get and set the control specific data in an uniform and control-independent way.

The first implementation of the PMControl class used to set the USER window pointer to the address of the PMControl object; unfortunately some of the control don't allow to set the USER window pointer, and so the controlFromID function must use a different technique to retrieve the pointer to the PMControl object (the pointer is also maintained in the control list structure, and a linear search is performed each time the pointer to the control is requested.)