Memory Profile Snapshot :
The current way of Eo legacy widget implementation is memory inefficient (As we derive the corresponding eo widget button/check etc) and then override few functions . Because of the way we generate Eo Function tables we end of copying the base class table again. Am not saying the current implementation is wrong (this is the way it should be in any object oriented system but not in Eo as we have all the functions virtual by default). If you see the attached Vtune memory usage log for efl_ui_button_class we create 15 function table (7KB) for efl_ui_button_legacy_class we create 20 function table (10KB). So in total we are using **17KB **of heap memory to setup the virtual table of elm_button class.
Same issue with , checkbox, enty , frame , bg and win widget.
If some widgets don't have any special api , then just aliasing those class name to the efl_ui_widget counter part will save the memory.
Hope I explained the issue enough . If you still have some doubt feel free to ask.