Not an issue of flickering more trying to know if a resize happens so I can know to reset a 'dirty' flag in each of the graphic elements that builds the component.
The component is an analog gauge, it has a border, face, scale, and a pointer. Each has a bitmap generated only when first painted or something changes.
For example if the color of the scale is changed, the scale object is marked as 'dirty" and recreated. Same for each visual component of the Gauge. Increases performance significantly only regenerating a specific part of the gauge. This works really well. 3 to 4 times speed as only really the pointer changes frequently, the rest of the gauge elements are effectively cached unless something specifically changes in any of the parts.
The problem now is design time. If the size of the component is changed, how do you catch that event to force all parts of the Gauge to be dirty so the resize happens with a regenertion of all parts?
At run time it's less of a problem as I think I could overload Width and Height and mark everything as 'dirty'. But not while in design mode. I do need to check if I can override Width and Height and possibly the designer calls these properties, more testing needed...
Hope this makes sense.
This might be better moved to LCL section, I posted in general by mistake.
Sandy