Menu

#185 Polymorphism isn't recognized

v0.20Beta_
open
TridenT
5
2012-07-18
2008-02-25
BenjaminH
No

I've got an Interface:
IMyInterface = interface;
and an inherited class:
TMyClass = class(TInterfacedObject, IMyInterface)

But in the class tree TMyClass is still listed as #OrphanClass#.
If I exchange TInterfacedObject and IMyInterface like this:
TMyClass = class(IMyInterface, TInterfacedObject)

The Documentation is being built right, TMyClass is listed as inherited of IMyInterface, but the code isn't compilable.

I hope this can be solved.

Discussion

  • TridenT

    TridenT - 2008-02-26

    Logged In: YES
    user_id=248829
    Originator: NO

    Bug reproduced.
    It will be fixed in next revision.
    Thx for your submission.

    TridenT

     
  • TridenT

    TridenT - 2008-11-16

    To fix this issue, the TDOCClassesTree.LinkOrphanedChilds() method should test every class in the 'Class Hierarchy' for this item.

    • If only interfaces are found, then link to an interface (the first one ?)
    • If a class is found, then link to this class (as Delphi does not autorize multiple parents).
     

Anonymous
Anonymous

Add attachments
Cancel