123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409 |
- {
- This file is part of the Pas2JS run time library.
- Copyright (C) 2019 Michael Van Canneyt
- Bootstrap 4 mappings for pas2js
- See the file COPYING.FPC, included in this distribution,
- for details about the copyright.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- **********************************************************************}
- unit libbootstrap;
- {$mode objfpc}
- {$modeswitch externalclass}
- interface
- uses
- JS, web, libjquery;
- Type
- { TBootstrap }
- TBootstrapModalOptions = Class external name 'Object' (TJSObject)
- show : boolean;
- focus : boolean;
- keyboard : boolean;
- backdrop : boolean;
- end;
- TBootstrapToastOptions = Class external name 'Object' (TJSObject)
- animation : boolean;
- autohide : boolean;
- delay : NativeInt;
- end;
- TSanitizeFunction = reference to function(arg: jsValue): jsvalue;
- TBootstrapTooltipOptions = Class external name 'Object' (TJSObject)
- animation : boolean;
- container : jsValue;
- delay : jsValue;
- html : boolean;
- placement : jsValue;
- selector : jsValue;
- template : string;
- title : jsValue;
- trigger: string;
- offset : jsvalue;
- fallbackPlacement : JSValue;
- boundary : JSValue;
- sanitize : boolean;
- whiteList: TJSObject;
- sanitizeFn : TSanitizeFunction;
- end;
- TBootstrapCarouselOptions = Class external name 'Object' (TJSObject)
- interval : nativeint;
- keyboard : boolean;
- pause : boolean;
- pauseStr: string; external name 'pause';
- ride: string;
- wrap : boolean;
- touch : boolean;
- end;
- TBootstrapDropDownOptions = Class external name 'Object' (TJSObject)
- offset : JSValue;
- flip : boolean;
- boundary : string;
- boundaryEl : TJSHTMLElement; external name 'boundary';
- reference : string;
- referenceEl : TJSHTMLElement; external name 'reference';
- display : string;
- end;
- TBootstrapDelayObject = Class External name 'Object' (TJSObject)
- show : integer;
- hide : integer;
- End;
- TBootstrapPlacementCallBack = reference to procedure (popoverEl,triggerEl : TJSHTMLElement);
- TBootstrapProcCallBack = reference to procedure;
- TBootstrapPopoverOptions = Class external name 'Object' (TJSObject)
- animation : boolean;
- container : string;
- containerEl : TJSHTMLElement; external name 'container';
- containerBool : Boolean; external name 'container';
- content : string;
- contentEl : TJSHTMLElement; external name 'container';
- contentProc : TBootstrapProcCallBack; external name 'content';
- delay : Integer;
- delayObj : TBootstrapDelayObject; external name 'delay';
- html : Boolean;
- placement: string;
- placementFunc : TBootstrapPlacementCallBack; external name 'placement';
- selector : string;
- selectorBool : boolean; external name 'selector';
- template : string;
- title : string;
- titleEl : TJSHTMLElement; external name 'title';
- titleProc : TBootstrapProcCallBack; external name 'tirle';
- trigger : string;
- offset : integer;
- offsetStr : string; external name 'offset';
- fallBackPlacement : string;
- fallBackPlacementArr : string; external name 'fallBackPlacement';
- boundary : string;
- boundaryEl : TJSHTMLElement; external name 'boundary';
- End;
- TBootstrap = Class helper for TJQuery
- Procedure modal; external name 'modal';
- Procedure modal(aCommand : string); external name 'modal';
- Procedure modal(aOptions : TJSObject); external name 'modal';
- Procedure modal(aOptions : TBootstrapModalOptions); external name 'modal';
- Procedure ModalToggle;
- Procedure ModalShow;
- Procedure ModalHide;
- Procedure ModalDispose;
- Procedure ModalHandleUpdate;
- Procedure Toast; external name 'toast';
- Procedure Toast(aCommand : string); external name 'toast';
- Procedure Toast(aOptions : TJSObject); external name 'toast';
- Procedure ToastShow;
- Procedure ToastHide;
- Procedure ToastDispose;
- Procedure Tab;external name 'tab';
- Procedure Tab(aCommand : String) ;external name 'tab';
- Procedure TabShow;
- Procedure TabDispose;
- Procedure ToolTip; external name 'tooltip';
- Procedure ToolTip(aOptions : TJSObject); external name 'tooltip';
- Procedure ToolTip(aOptions : TBootstrapTooltipOptions); external name 'tooltip';
- Procedure ToolTip(aCommand : string); external name 'tooltip';
- Procedure ToolTipShow;
- Procedure ToolTipHide;
- Procedure ToolTipToggle;
- Procedure ToolTipDispose;
- Procedure ToolTipEnable;
- Procedure ToolTipDisable;
- Procedure ToolTipToggleEnabled;
- Procedure ToolTipUpdate;
- Procedure Alert; external name 'alert';
- Procedure Alert(aCommand : string); external name 'alert';
- Procedure AlertClose;
- Procedure AlertDispose;
- Procedure Button(aCommand : string); external name 'button';
- Procedure ButtonDispose;
- Procedure ButtonToggle;
- Procedure Carousel; external name 'carousel';
- Procedure Carousel(aCommand : string); external name 'carousel';
- Procedure Carousel(options : TJSObject); external name 'carousel';
- Procedure Carousel(options : TBootstrapCarouselOptions); external name 'carousel';
- Procedure Carousel(aIndex : Integer); external name 'carousel';
- Procedure CarouselCycle;
- Procedure CarouselPause;
- Procedure CarouselPrev;
- Procedure CarouselNext;
- Procedure CarouselDispose;
- Procedure DropDown; external name 'dropdown';
- Procedure DropDown(aCommand : string); external name 'dropdown';
- Procedure DropDown(options : TJSObject); external name 'dropdown';
- Procedure DropDown(options : TBootstrapDropDownOptions); external name 'dropdown';
- Procedure DropDownToggle;
- Procedure DropDownShow;
- Procedure DropDownHide;
- Procedure DropDownUpdate;
- Procedure DropDownDispose;
- Procedure Popover(options : TJSObject); external name 'popover';
- Procedure Popover(options : TBootstrapPopoverOptions); external name 'popover';
- Procedure Popover(aCommand : String); external name 'popover';
- Procedure PopoverShow;
- Procedure PopoverHide;
- Procedure PopoverToggle;
- Procedure PopoverDispose;
- Procedure PopoverEnable;
- Procedure PopoverToggleEnabled;
- Procedure PopoverUpdate;
- end;
- implementation
- { TBootstrap }
- procedure TBootstrap.ModalToggle;
- begin
- Modal('toggle');
- end;
- procedure TBootstrap.ModalShow;
- begin
- Modal('show');
- end;
- procedure TBootstrap.ModalHide;
- begin
- Modal('hide');
- end;
- procedure TBootstrap.ModalDispose;
- begin
- Modal('dispose');
- end;
- procedure TBootstrap.ModalHandleUpdate;
- begin
- Modal('handleupdate');
- end;
- procedure TBootstrap.ToastShow;
- begin
- Toast('show');
- end;
- procedure TBootstrap.ToastHide;
- begin
- Toast('hide');
- end;
- procedure TBootstrap.ToastDispose;
- begin
- Toast('dispose');
- end;
- procedure TBootstrap.TabShow;
- begin
- Tab('show');
- end;
- procedure TBootstrap.TabDispose;
- begin
- Tab('dispose');
- end;
- procedure TBootstrap.ToolTipShow;
- begin
- ToolTip('show');
- end;
- procedure TBootstrap.ToolTipHide;
- begin
- ToolTip('hide');
- end;
- procedure TBootstrap.ToolTipToggle;
- begin
- ToolTip('toggle');
- end;
- procedure TBootstrap.ToolTipDispose;
- begin
- ToolTip('dispose');
- end;
- procedure TBootstrap.ToolTipEnable;
- begin
- ToolTip('enable');
- end;
- procedure TBootstrap.ToolTipDisable;
- begin
- ToolTip('disable');
- end;
- procedure TBootstrap.ToolTipToggleEnabled;
- begin
- ToolTip('toggleEnabled');
- end;
- procedure TBootstrap.ToolTipUpdate;
- begin
- ToolTip('update');
- end;
- procedure TBootstrap.AlertClose;
- begin
- Alert('close');
- end;
- procedure TBootstrap.AlertDispose;
- begin
- Alert('dispose');
- end;
- procedure TBootstrap.ButtonDispose;
- begin
- Button('dispose');
- end;
- procedure TBootstrap.ButtonToggle;
- begin
- Button('toggle');
- end;
- procedure TBootstrap.CarouselCycle;
- begin
- Carousel('cycle');
- end;
- procedure TBootstrap.CarouselPause;
- begin
- Carousel('pause');
- end;
- procedure TBootstrap.CarouselPrev;
- begin
- Carousel('prev');
- end;
- procedure TBootstrap.CarouselNext;
- begin
- Carousel('next');
- end;
- procedure TBootstrap.CarouselDispose;
- begin
- Carousel('dispose');
- end;
- procedure TBootstrap.DropDownToggle;
- begin
- dropdown('toggle');
- end;
- procedure TBootstrap.DropDownShow;
- begin
- dropdown('show');
- end;
- procedure TBootstrap.DropDownHide;
- begin
- dropdown('hide');
- end;
- procedure TBootstrap.DropDownUpdate;
- begin
- dropdown('update');
- end;
- procedure TBootstrap.DropDownDispose;
- begin
- dropdown('dispose');
- end;
- Procedure TBootstrap.PopoverShow;
- begin
- Popover('show');
- end;
- Procedure TBootstrap.PopoverHide;
- begin
- Popover('hide');
- end;
- Procedure TBootstrap.PopoverToggle;
- begin
- Popover('toggle');
- end;
- Procedure TBootstrap.PopoverDispose;
- begin
- Popover('dispose');
- end;
- Procedure TBootstrap.PopoverEnable;
- begin
- Popover('enable');
- end;
- Procedure TBootstrap.PopoverToggleEnabled;
- begin
- Popover('toggleEnabled');
- end;
- Procedure TBootstrap.PopoverUpdate;
- begin
- Popover('update');
- end;
- end.
|