You've already forked lazarus-ccr
fpbrowser: Simplifies the OnTerminate event
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1923 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -92,7 +92,7 @@
|
||||
<CompilerOptions>
|
||||
<Version Value="10"/>
|
||||
<SearchPaths>
|
||||
<OtherUnitFiles Value="../../components/thtmlport/package"/>
|
||||
<OtherUnitFiles Value="../../Wcomponents/thtmlport/package"/>
|
||||
</SearchPaths>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
|
@ -165,7 +165,7 @@ type
|
||||
MyPageLoader: TPageLoader;
|
||||
procedure LoadURL(AURL: string);
|
||||
procedure HandlePageLoaderProgress(APercent: Integer);
|
||||
procedure HandlePageLoaderTerminated(APageLoader: TPageLoader);
|
||||
procedure HandlePageLoaderTerminated(Sender: TObject);
|
||||
end;
|
||||
|
||||
var
|
||||
@ -1042,7 +1042,7 @@ begin
|
||||
MyPageLoaderThread.URL := AURL;
|
||||
MyPageLoaderThread.PageLoader := MyPageLoader;
|
||||
MyPageLoaderThread.OnPageLoadProgress := HandlePageLoaderProgress;
|
||||
MyPageLoaderThread.OnPageLoadTerminated := HandlePageLoaderTerminated;
|
||||
MyPageLoaderThread.OnTerminate := HandlePageLoaderTerminated;
|
||||
MyPageLoaderThread.FreeOnTerminate := True;
|
||||
MyPageLoaderThread.Resume;
|
||||
end;
|
||||
@ -1052,16 +1052,16 @@ begin
|
||||
|
||||
end;
|
||||
|
||||
procedure TformBrowser.HandlePageLoaderTerminated(APageLoader: TPageLoader);
|
||||
procedure TformBrowser.HandlePageLoaderTerminated(Sender: TObject);
|
||||
begin
|
||||
Viewer.LoadFromString(APageLoader.Contents);
|
||||
Viewer.LoadFromString(MyPageLoader.Contents);
|
||||
Caption := Viewer.DocumentTitle;
|
||||
|
||||
// Load source and debug info
|
||||
memoSource.Lines.Clear();
|
||||
memoSource.Lines.AddStrings(APageLoader.ContentsList);
|
||||
memoSource.Lines.AddStrings(MyPageLoader.ContentsList);
|
||||
memoDebug.Lines.Clear();
|
||||
memoDebug.Lines.AddStrings(APageLoader.DebugInfo);
|
||||
memoDebug.Lines.AddStrings(MyPageLoader.DebugInfo);
|
||||
end;
|
||||
|
||||
procedure TformBrowser.Timer1Timer(Sender: TObject);
|
||||
|
@ -25,14 +25,12 @@ type
|
||||
end;
|
||||
|
||||
TOnPageLoadProgress = procedure (APercent: Integer) of object;
|
||||
TOnPageLoadTerminated = procedure (APageLoader: TPageLoader) of object;
|
||||
|
||||
{ TPageLoaderThread }
|
||||
|
||||
TPageLoaderThread = class(TThread)
|
||||
private
|
||||
FOnPageLoadProgress: TOnPageLoadProgress;
|
||||
FOnPageLoadTerminated: TOnPageLoadTerminated;
|
||||
public
|
||||
PageLoader: TPageLoader;
|
||||
Progress: Integer;
|
||||
@ -40,9 +38,7 @@ type
|
||||
destructor Destroy; override;
|
||||
procedure Execute; override;
|
||||
procedure CallPageLoadProgress;
|
||||
procedure CallPageLoadTerminated;
|
||||
property OnPageLoadProgress: TOnPageLoadProgress read FOnPageLoadProgress write FOnPageLoadProgress;
|
||||
property OnPageLoadTerminated: TOnPageLoadTerminated read FOnPageLoadTerminated write FOnPageLoadTerminated;
|
||||
end;
|
||||
|
||||
implementation
|
||||
@ -59,7 +55,6 @@ end;
|
||||
procedure TPageLoaderThread.Execute;
|
||||
begin
|
||||
PageLoader.LoadFromURL(URL);
|
||||
Synchronize(CallPageLoadTerminated);
|
||||
end;
|
||||
|
||||
procedure TPageLoaderThread.CallPageLoadProgress;
|
||||
@ -67,11 +62,6 @@ begin
|
||||
|
||||
end;
|
||||
|
||||
procedure TPageLoaderThread.CallPageLoadTerminated;
|
||||
begin
|
||||
if Assigned(FOnPageLoadTerminated) then FOnPageLoadTerminated(PageLoader);
|
||||
end;
|
||||
|
||||
{ TPageLoader }
|
||||
|
||||
constructor TPageLoader.Create;
|
||||
|
Reference in New Issue
Block a user