I use the Ribbon component in my application.
My ribbon contains 15 tabs with differents tools and buttons and it use about 5000 GDI objects !!!!
I have checked the sample in package, it use 500 GDI object for a very very simple ribbon.
Create a toolbar use 17 GDI object
Add a button to the toolbar use 12 GDI objects (same thing for button each element of item picker).
Is it a bug ?
It's unclear how this is measured, but the ribbon consists out of many different FNC elements, the more elements are added, the more the objects grow, is there a memory or performance issue noticeable when using the ribbon in your application?
I use GetGuiResources(THandle(-1),GR_GDIOBJECTS) to measure it (it is the same value than Task manager)
in the Sample of the Pack (TMS FNC UI Pack\Demos\VCL\Ribbon) If you measure just before "btn := tb.AddButton;" (line 238) and just after, 14 GDI objects are added. It seems there is a leak.
In my project, the problem is that it is a big project with thousand of frames that already use about 6000-7000 GDI.
If I add the 5000 for the Ribbon I am overriding the limit of 10 000 par process and the software crashes.
We did a test. When having one TTMSFNCToolBarButton on the form, the count is 60, when adding another one, it's 72, and destroying it brings the count back to 60, so in TTMSFNCToolBarButton there is no leak. The memory allocation during the lifetime of the button is normal, I suppose that the total amount of objects in use simultaneously is the problem.