Hello!
Lazarus's object inspector does not show published properties of type interface.
For example, I create package with such content:
Unit example;
interface
type
ITestInterface = interface
{ some functions and procedures }
....
end;
TFirstClass = class(TComponent)
private
fTestIntf : ITestInterface;
published
property TestInterface : ITestInterface read fTestIntf write fTestIntf;
end;
TSecondClass = class(TComponent, ITestInterface)
private
{ TSecondClass specific stuff }
protected
{ implementing ITestInterface}
public
{ TSecondClass specific stuff }
published
{ TSecondClass specific stuff }
end;
procedure Register;
implementation
{ Implementation of the package. }
end.
Then, I install this package.
I have two components TFirstClass and TSecondClass installed.
In Delphi I can simply put both components on the TForm and assign TFirstClass.TestInterface to the TSecondClass
instance
in the object inspector.
But not in the Lazarus: property TestInterface is not displayed.
Even if I will open *.lfm code and add
TestInterface = TSecondClass1
it does not work.
I get error: "illegal type id 14", or something like this(I have remember the number "14" but not the message text...
)
Why?
P.S. Lazarus version 0.9.31 SVN rev. 35345 fpc version 2.6.1 (daily snapshot)
P.P.S. Sorry for my bad English.