mirror of
https://gitlab.com/freepascal.org/fpc/pas2js.git
synced 2025-06-05 04:58:08 +02:00
60 lines
1.4 KiB
ObjectPascal
60 lines
1.4 KiB
ObjectPascal
program htmlutilsdemo;
|
|
|
|
{$mode objfpc}
|
|
{$linklib ./htmlutils.js utils}
|
|
{$modeswitch externalclass}
|
|
|
|
uses
|
|
JS, Web;
|
|
|
|
type
|
|
THTMLUtils = class external name 'Object' (TJSObject)
|
|
Public
|
|
DefaultClearID : String;
|
|
Procedure SetPageTitle(aTitle : String);
|
|
Procedure ClearPage(aBelowID : String);
|
|
end;
|
|
|
|
|
|
Var
|
|
BtnSetTitle,BtnClear : TJSHTMLButtonElement;
|
|
edtTitle,edtBelowID,cbUseDefaultClearID : TJSHTMLInputElement;
|
|
UtilsObj : THTMLUtils; external name 'utils.vars.Utils';
|
|
|
|
function DoSetTitle(aEvent: TJSMouseEvent): boolean;
|
|
begin
|
|
Result:=False;
|
|
UtilsObj.SetPageTitle(edtTitle.Value);
|
|
end;
|
|
|
|
function DoClear(aEvent: TJSMouseEvent): boolean;
|
|
begin
|
|
Result:=False;
|
|
if cbUseDefaultClearID.Checked then
|
|
begin
|
|
UtilsObj.DefaultClearID:=edtBelowID.value;
|
|
UtilsObj.ClearPage('');
|
|
end
|
|
else
|
|
begin
|
|
UtilsObj.DefaultClearID:='';
|
|
UtilsObj.ClearPage(edtBelowID.value);
|
|
end;
|
|
end;
|
|
|
|
Procedure BindElements;
|
|
|
|
begin
|
|
TJSElement(BtnSetTitle):=Document.getElementById('btnSetTitle');
|
|
BtnSetTitle.OnClick:=@DoSetTitle;
|
|
TJSElement(BtnClear):=Document.getElementById('btnClear');
|
|
BtnClear.onclick:=@DoClear;
|
|
TJSElement(edtTitle):=Document.getElementById('edtTitle');
|
|
TJSElement(edtBelowID):=Document.getElementById('edtBelowID');
|
|
TJSElement(cbUseDefaultClearID):=Document.getElementById('cbUseDefaultClearID');
|
|
end;
|
|
|
|
begin
|
|
BindElements;
|
|
end.
|