I'm using a visual component TJvListView
from the JEDI JVCL library. Here are the relevant declarations of this component class:
TJvListView = class(TJvExListView)
private
FOnSaveProgress: TJvOnProgress;
public
procedure SaveToStrings(Strings: TStrings; Separator: Char);
What I'm trying to do is replace the SaveToStrings()
method with my own modified definition. I tried to do this using the "interposer" class way:
uses
JvListView
type
TJvListView = class(JvListView.TJvListView)
public
procedure SaveToStrings(Strings: TStrings; Separator: Char);
end;
TfrmFaultMemView = class(TForm)
lvFMEs: TJvListView;
end;
procedure TJvListView.SaveToStrings(Strings: TStrings; Separator: Char);
begin
if Assigned(Self.FOnSaveProgress) then // COMPILER ERROR HERE
begin
end;
end;
The original method depends on accessing some private members of the class, and I have to keep that code in my modified definition.
However, when I try to compile this it gives me an error:
E2361 Cannot access private symbol TJvListView.FOnSaveProgress
I'm tryin to re-define a public method, but it's unavoidable that they must access private members/methods. Given that, how can I overload that method with my own definition?