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