FWIW, I found an RTTI solution for this - i.e. allow only properties NOT belonging to the predecessor class or classes, in other words, the properties that you added were published by yourself in the current class. The JvInspector has a BeforeItemCreate event containing the name of the property that appears in the inspector. This solution checks the name of the property in order to be a member of the ancestor class, and only if it is not, does it display it in the inspector. The benefit is that there are no changes to the inspector code.
uses TypInfo; procedure TForm1.JvInspectorBeforeItemCreate(Sender: TObject; Data: TJvCustomInspectorData; var ItemClass: TJvInspectorItemClass); begin if IsPublishedProp(TFrame, Data.Name) then ItemClass := nil; end;
source share