Hi again, Continuing my port of old Delphi code that used interfaces extensively. Now that FPC 2.6.0 is nearing, I can play the with Interface improvements it has.
In some of my old Delphi code, I created a generic class that takes a generic interface via IInterface. This class was made to be reusable via interface delegation, so I only need to implement a interface once and use interface delegation in other classes to add that functionality. One such example is the Observer design pattern IObserver = interface ['{7504BB57-65D8-4D5D-86F1-EC8FFED8ED5E}'] procedure Update(const Subject: IInterface); end; How do I translate this to CORBA-style interfaces. CORBA interfaces don't have a base type like all COM interfaces have (eg: IUnknown) or objects have (eg: TObject). Any ideas on how I should translate the above code? Must I use the Pointer type again? That just looks ugly, and gives no hint to the developer that Update() can take any interface type. Why couldn't CORBA interfaces also descend from IInterface, but in the case of CORBA style interfaces that doesn't mean it's a IUnknown descendant. That way we will have a generic interface type to use in such generic code situations. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal