spiegel-keyman/windows/src/desktop/setup/UfrmHTML.pas
Marc Durdin b65b982584 Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121)
* Keyman for Windows 10.0 Open Source

* Squashed 'windows/src/ext/jedi/jedi/' content from commit f444ad2

git-subtree-dir: windows/src/ext/jedi/jedi
git-subtree-split: f444ad2da4693851e523f1ea6bd541f701904c24

* Squashed 'windows/src/ext/jedi/jcl/' content from commit d63d3c9fd

git-subtree-dir: windows/src/ext/jedi/jcl
git-subtree-split: d63d3c9fd9ff84efdd8159084ec6a60313644243

* Squashed 'windows/src/ext/jedi/jvcl/' content from commit bee19f3b4

git-subtree-dir: windows/src/ext/jedi/jvcl
git-subtree-split: bee19f3b46909fde2fa92c06cd2706f41d99f6c3

* Add required .res files

* Add required .res files

* Add docbook files (forced)

* Add required libxslt

* Add required jedi files

* Add installation files

* Tweak .gitignore for open

* CI

* Remove KMW from Developer source (#122)

* Remove KMW from Developer source (copies during build)

* Remove KMW from Developer source (copies during build)

* Remove KMW from Developer source (copies during build)

* Fixup release build and copy license, readme from kmw during build

* Remove obsolete build help documentation

* Keyman Engine 10 on Windows regression for shift states (#129)

* Improve #128 -- cleaner debug messages

* Fixes #127, shift state now resets correctly; and more work for #128

* Fixes #130 (#131)
2017-07-25 10:53:06 +07:00

107 lines
3.2 KiB
ObjectPascal

(*
Name: UfrmHTML
Copyright: Copyright (C) SIL International.
Documentation:
Description:
Create Date: 20 Jun 2006
Modified Date: 8 Jun 2012
Authors: mcdurdin
Related Files:
Dependencies:
Bugs:
Todo:
Notes:
History: 20 Jun 2006 - mcdurdin - Initial version
06 Oct 2006 - mcdurdin - Add DoShowWelcome for showing package welcome screens
04 Dec 2006 - mcdurdin - Localize, polish display
15 Jan 2007 - mcdurdin - Use font from locale.xml
23 Aug 2007 - mcdurdin - Refactor package welcome
23 Aug 2007 - mcdurdin - I919 - Add print button
27 Mar 2008 - mcdurdin - Use TfrmKeymanBase instead of TfrmKMShell
25 May 2010 - mcdurdin - I2393 - Forward, Back and new window functions in Keyboard Welcome
17 Dec 2010 - mcdurdin - I2570 - Upgrade EmbeddedWB (also I2393)
11 Jan 2011 - mcdurdin - I2645 - Refactor install process - move license to bootstrapper
18 Feb 2011 - mcdurdin - I2721 - Override Javascript-disabled security for web controls
18 May 2012 - mcdurdin - I3306 - V9.0 - Remove TntControls + Win9x support
08 Jun 2012 - mcdurdin - I3349 - V9.0 - Consolidate all process creation into TUtilExecute
*)
unit UfrmHTML; // I3306
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, OleCtrls, SHDocVw, EmbeddedWB,
SHDocVw_EWB, EwbCore, KeymanEmbeddedWB;
type
TfrmHTML = class(TForm)
cmdOK: TButton;
panHTML: TPanel;
web: TKeymanEmbeddedWB;
cmdPrint: TButton;
cmdBack: TButton;
cmdForward: TButton;
procedure cmdPrintClick(Sender: TObject);
procedure webNewWindow3(ASender: TObject; var ppDisp: IDispatch;
var Cancel: WordBool; dwFlags: Cardinal; const bstrUrlContext,
bstrUrl: WideString);
procedure cmdBackClick(Sender: TObject);
procedure cmdForwardClick(Sender: TObject);
procedure webCommandStateChange(ASender: TObject; Command: Integer;
Enable: WordBool);
public
procedure ShowFile(const FileName: WideString);
end;
implementation
uses
utilexecute;
{$R *.DFM}
{ TfrmHTML }
procedure TfrmHTML.ShowFile(const FileName: WideString);
begin
if FileExists(FileName) and Assigned(web) then
web.Navigate(FileName);
end;
procedure TfrmHTML.webCommandStateChange(ASender: TObject; Command: Integer;
Enable: WordBool);
begin
if Command = CSC_NAVIGATEFORWARD then
cmdForward.Enabled := Enable
else if Command = CSC_NAVIGATEBACK then
cmdBack.Enabled := Enable;
end;
procedure TfrmHTML.webNewWindow3(ASender: TObject; var ppDisp: IDispatch;
var Cancel: WordBool; dwFlags: Cardinal; const bstrUrlContext,
bstrUrl: WideString);
begin
Cancel := True;
TUtilExecute.URL(bstrUrl); // I3349
end;
procedure TfrmHTML.cmdBackClick(Sender: TObject);
begin
web.GoBack;
end;
procedure TfrmHTML.cmdForwardClick(Sender: TObject);
begin
web.GoForward;
end;
procedure TfrmHTML.cmdPrintClick(Sender: TObject);
begin
web.Print;
end;
end.