[fpc-devel] TComponent.ChangeName() not virtual?

Graeme Geldenhuys graemeg.lists at gmail.com
Wed Mar 24 15:03:47 CET 2010


Hi,

Below is the definition of TComponent.ChangeName.

TComponent = ...
  ..
protected
  procedure ChangeName(const NewName: TComponentName);
  ...
end;


For improved support in visual form designers [more specifically fpGUI's
Form Designer - but this applies to other form designers too], I want to
apply alternative changes to the component when the Name of the component
changes.

The logical thing for me would have been to override ChangeName, checking
for csDesigning and apply my changes as needed.

Unfortunately ChangeName is not virtual, yet it is in the 'protected'
section of a class. If we are not supposed to override ChangeName, then why
is it in 'protected' section and not 'private' section of the class definition?

Is this simply an oversight? Can the ChangeName method become virtual?


Regards,
  - Graeme -

-- 
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://opensoft.homeip.net/fpgui/




More information about the fpc-devel mailing list