1 unit browserfrm;
2 
3 {$mode objfpc}{$H+}
4 
5 interface
6 
7 uses
8   Classes, SysUtils, Iphttpbroker, IpHtml, Forms, Buttons, ExtCtrls, StdCtrls,
9   ActnList;
10 
11 type
12 
13   { TfrMain }
14 
15   TfrMain = class(TForm)
16     acBack: TAction;
17     acForward: TAction;
18     acGo: TAction;
19     alMain: TActionList;
20     btGo: TSpeedButton;
21     edUrl: TEdit;
22     IpHtmlPanel1: TIpHtmlPanel;
23     IpHttpDataProvider1: TIpHttpDataProvider;
24     pnTop: TPanel;
25     btBack: TSpeedButton;
26     btForward: TSpeedButton;
27     procedure acBackExecute(Sender: TObject);
28     procedure acForwardExecute(Sender: TObject);
29     procedure acGoExecute(Sender: TObject);
30     procedure alMainUpdate(AAction: TBasicAction; var Handled: Boolean);
31     procedure IpHtmlPanel1DocumentOpen(Sender: TObject);
32   end;
33 
34 var
35   frMain: TfrMain;
36 
37 implementation
38 
39 {$R *.lfm}
40 
41 { TfrMain }
42 
43 procedure TfrMain.IpHtmlPanel1DocumentOpen(Sender: TObject);
44 begin
45   edUrl.Text := IpHtmlPanel1.CurURL;
46 end;
47 
48 procedure TfrMain.alMainUpdate(AAction: TBasicAction; var Handled: Boolean);
49 begin
50   acBack.Enabled := IpHtmlPanel1.CanGoBack;
51   acForward.Enabled := IpHtmlPanel1.CanGoForward;
52   acGo.Enabled := Trim(edUrl.Text) <> '';
53 end;
54 
55 procedure TfrMain.acBackExecute(Sender: TObject);
56 begin
57   IpHtmlPanel1.GoBack;
58 end;
59 
60 procedure TfrMain.acForwardExecute(Sender: TObject);
61 begin
62   IpHtmlPanel1.GoForward;
63 end;
64 
65 procedure TfrMain.acGoExecute(Sender: TObject);
66 begin
67   IpHtmlPanel1.OpenURL(edUrl.Text);
68 end;
69 
70 end.
71 
72