Danke, sowas in der Art hab ich schon befürchtet. Das ganze in interfaces kapseln kommt leider nicht in Frage da das gerade bei third party Komponenten wie TBitmap32 in zu viel arbeit ausartet. Dann bleibt wohl nix weiter als einen weiteren Parameter einzuführen der den Typ angibt und dann direktes Type Casting basierend auf dem Parameter zu machen.
Delphi-Quellcode:
type
TClassType = [ctMyClass,ctMyOtherClass];
procedure THostInterface.DoSomethingElse(Param : TObject; ClassType : TClassType);
begin
if ClassType is ctMyClass then
TMyClass(Param).SomeClassFuntion();
end;
nicht schön... aber sollte gehen