Define special types for interfaces

That’s how I do it at the moment as well.
I have a C struct that keeps all th references to the cpython objects used for the callbacks. This struct will we used as the user_data for all objects/animations/display/indev/…
And also as user data when an event callback will be added.
Also during the creation of an object I register an event handler to the LV_DELETE_EVENT which will than cleanup the user_data and decrease the ref counts for the callbacks.
It will also go through all registered events and cleanup them as well.
But here is exectly the problem:
If lvgl internally has registerd some event callbacks which also use the user_data for somehing else, the cleanup code will crash because it interprets the user_data incorrectly.

Right now this is the kind of the last problem I’m facing right now.