Custom Delegates
Under Construction
Contents
- 1 Custom Delegates
- 1.1 Activate
- 1.2 After Data Changed
- 1.3 After Data Create
- 1.4 After Data Delete
- 1.5 After Data Update
- 1.6 After Row Change
- 1.7 Before Data Create
- 1.8 Before Data Delete
- 1.9 Before Data Update
- 1.10 Change
- 1.11 Click
- 1.12 Collapsed
- 1.13 Context Menu
- 1.14 Custom footer menu
- 1.15 Custom library
- 1.16 Custom search command
- 1.17 Custom section menu
- 1.18 Data Changed
- 1.19 Deactivate
- 1.20 Default Action
- 1.21 Destroy
- 1.22 Dialog button delegate
- 1.23 Double click
- 1.24 Enabled When
- 1.25 Expanded
- 1.26 Gestures
- 1.27 Got Focus
- 1.28 Hotkey
- 1.29 Inactive
- 1.30 Init
- 1.31 Interactive Change
- 1.32 Instant Search
- 1.33 Link Click
- 1.34 Load
- 1.35 Lost Focus
- 1.36 Middle Click
- 1.37 Mouse Down
- 1.38 Mouse Enter
- 1.39 Mouse Leave
- 1.40 Mouse Move
- 1.41 Mouse Up
- 1.42 Pan gesture
- 1.43 Parent data changed
- 1.44 Pinch gesture
- 1.45 Ready
- 1.46 Refresh
- 1.47 Resize
- 1.48 Resized
- 1.49 Scripting language
- 1.50 Selection Changed
- 1.51 Sort
- 1.52 Swipe down gesture
- 1.53 Swipe left gesture
- 1.54 Swipe right gesture
- 1.55 Swipe up gesture
- 1.56 Tap gesture
- 1.57 Tap and hold gesture
- 1.58 Timer
- 1.59 Unload
- 1.60 Valid When
- 1.61 Visible When
- 2 Event Sequences
- 3 Other Delegates
- 4 Inline Delegates
Custom Delegates
Activate
The delegate for the Activate event.
After Data Changed
The delegate for the Changed event (after data is read).
After Data Create
The delegate for the AfterCreated event.
After Data Delete
The delegate for the AfterDelete event.
After Data Update
The delegate for the AfterUpdate event.
After Row Change
The delegate for the AfterRowChange event.
Advanced Canvas Controls delegate.
Before Data Create
The delegate for the BeforeCreated event.
Before Data Delete
The delegate for the BeforeDelete event.
Before Data Update
The delegate for the BeforeUpdate event.
Change
The delegate for the Change event.
Click
The delegate for the Click event.
Collapsed
The delegate for the Collapsed event.
Context Menu
The delegate for the Context Menu event.
The delegate for the footer menu event.
See Section Footers
Custom library
The filename of the library containing code for event handlers and custom procedures/functions.
Custom search command
The delegate for the search event.
The delegate for the section menu event.
See Section Menus
Data Changed
The delegate for the DataChanged event. This is called when navigating between records.
Deactivate
The delegate for the Deactivate event.
Default Action
The default action for this control. For CommandButtons this will be performed on a Click event. For all other controls, it will be performed on the Change event.
- Advanced Canvas Controls delegate.
- Lianja/VFP scripting in Desktop Client only.
Destroy
The delegate for the Destroy event.
Dialog button delegate
The delegate for the DialogButtonClicked event. If a dialogbutton on a Field has no delegate, the Section delegate will be called. If the section has no delegate, then the Page delegate will be called.
Double click
The delegate for the row DoubleClicked event.
Enabled When
The delegate for the EnabledWhen event.
Expanded
The delegate for the Expanded event.
Gestures
The catch all delegate for the Gestures event.
Got Focus
The delegate for the GotFocus event.
Hotkey
The delegate for the Hotkey event, e.g. F1 - F10, Ctrl+F1.
The key is passed as a parameter, e.g. "F1".
Inactive
The delegate for the Inactive event.
App delegate.
Inactive interval
The interval in seconds that the Inactive delegate will be called at runtime.
Init
The delegate for the Init event.
Interactive Change
The delegate for the InteractiveChange event. This is called after each key is pressed.
Instant Search
The delegate for the Instant Search event. The text typed in the searchbox is passed as a parameter.
Page delegate.
Link Click
The delegate for the Hyperlink/Button Click event.
This is called with two arguments: functionname(controlsource,text).
Load
The delegate for the Load event.
Lost Focus
The delegate for the LostFocus event.
Middle Click
The delegate for the MiddleClick event.
Mouse Down
The delegate for the MouseDown event.
Mouse Enter
The delegate for the MouseEnter event.
Mouse Leave
The delegate for the MouseLeave event.
Mouse Move
The delegate for the MouseMove event.
Mouse Up
The delegate for the MouseUp event.
Pan gesture
The Pan gesture delegate.
Parent data changed
The delegate for the ParentDataChanged event.
Pinch gesture
The Pinch gesture delegate.
Ready
The delegate for the Ready event.
Refresh
The delegate for the Refresh event.
Resize
The delegate for the Resize event.
Advanced Canvas Controls delegate.
Resized
The delegate for the Resized event.
Canvas Section delegate.
Scripting language
The default scripting language for custom code in this section (Inherit | Recital | Visual FoxPro | Python | JavaScript | PHP).
Selection Changed
The delegate for the Selection Changed event (for multi row selection).
Sort
The delegate for the column Sort event fired when the header is clicked. This is called with two arguments: nColumn, nDirection.
Grid Section and Grid Gadget delegate.
Swipe down gesture
The Swipe Down gesture delegate.
Swipe left gesture
The Swipe Left gesture delegate.
Swipe right gesture
The Swipe Right gesture delegate.
Swipe up gesture
The Swipe Up gesture delegate.
Tap gesture
The Tap gesture delegate.
Tap and hold gesture
The Tap and Hold gesture delegate.
Timer
The delegate for the Timer event.
Timer interval
The timer interval in seconds that the Timer event will be called at runtime.
Unload
The delegate for the Unload event.
Valid When
The delegate for the ValidWhen event.
Visible When
The delegate for the VisibleWhen event.
Event Sequences
Loading an App
- Init
- Load
- DataChanged
- ParentDataChanged
- Refresh
- VisibleWhen (Runtime only)
- EnabledWhen (Runtime only)
- Ready
- Resized (Canvas Section)
- Activate
For more details see Event Delegate Sequences: Opening an App
Closing an App
- Unload
- Destroy
For more details see Event Delegate Sequences: Closing an App
Data Operations
- Editing an existing record
- Adding a new record
- Deleting a record
Other Delegates
App
Dynamic tile producer
The dynamic tile producer used to update the dynamic tile in the App Center. This can be a procedure or a URL.
Session data changed
The delegate for the Session Data Changed event
Page
Custom Actions
Add action
Delegate called when the 'Add New Record' button is clicked in the Page actionbar.
Cancel action
Delegate called when the 'Undo Changes' button is clicked in the Page actionbar.
Delete action
Delegate called when the 'Delete Record' button is clicked in the Page actionbar.
Edit action
Delegate called when the 'Edit Record' button is clicked in the Page actionbar.
First action
Delegate called when the 'First Record' button is clicked in the Page actionbar.
Last action
Delegate called when the 'Last Record' button is clicked in the Page actionbar.
Next action
Delegate called when the 'Next Record' button is clicked in the Page actionbar.
Previous action
Delegate called when the 'Previous Record' button is clicked in the Page actionbar.
Refresh action
Delegate called when the 'Refresh Page' button is clicked in the Page actionbar.
Save action
Delegate called when the 'Save Changes' button is clicked in the Page actionbar.
Calendar Section
Click delegate
Delegate to call when a calendar event is clicked.
See Calendar Section Options: Click delegate.
Custom delegate library
Custom library containing the day and event dynamic color delegates.
See Calendar Section Options: Custom delegate library.
Dynamic day backcolor
Delegate to return the background colors and dates. You should return this as a comma separated list. The delegate is called with one parameter: 'dates' or 'colors'. The currently selected cursor contains the selected records.
See Calendar Section Options: Dynamic day backcolor.
Dynamic event backcolor
Delegate to return the background color of the event for the specified event type, which is passed as a parameter.
See Calendar Section Options: Dynamic event backcolor.
Dynamic event forecolor
Delegate to return the foreground color of the event for the specified event type, which is passed as a parameter.
See Calendar Section Options: Dynamic event forecolor.
CatalogView Section
Caption delegate
The inline delegate to invoke when the caption is clicked.
Custom library
Custom library containing the Tile producer delegate.
Read more delegate
The inline delegate to invoke when the 'Read more' link is clicked. Alternatively, the 'Click' delegate can be used.
Tile producer
Delegate to call to render a custom tile. This should just output the HTML.
Charts Section and Charts Gadget
Delegate
An optional delegate to be called when segments of the chart are selected. By default the 'tooltip' for the segment selected will be used as a search key in any child sections.
GalleryView Section
Custom library
Custom library containing the Tile producer and Content producer delegates.
See GalleryView Section: Custom library
Content producer
Delegate to call to render the content. This should just output the HTML.
See GalleryView Section: Content producer
Tile producer
Delegate to call to render a custom tile. This should just output the HTML.
See GalleryView Section: Tile producer
Add delegate
Specify a delegate to call when the 'Add' icon is clicked.
Note that you can use an 'inline' delegate like this: $("section:yoursectionid?action=add")
Delete delegate
Specify a delegate to call when the 'Delete' icon is clicked.
Note that you can use an 'inline' delegate like this: $("section:yoursectionid?action=delete")
Selection delegate
Specify a delegate to call when a row is clicked.
Note that you can use an 'inline' delegate like this: $("section:yoursectionid?action=search&text={}").
Notice how {} is used to substitute the value of the item selected.
Org Chart Section
Custom delegate library
Custom library containing the dynamic color delegates.
See Org Chart Options: Custom delegate library
Search Panel
Custom search panel
The delegate used to create the custom search panel.
WebView Section
Also applies to Report Sections.
Delegate script
Delegate script name to be called when hyperlink is clicked (URL is passed as character string).
Fields and Columns
Validation
The Validation expression for editable Form Section fields, Grid Section columns and Canvas Section controls can be a call to a user defined function.
Inline Delegates
Inline Delegates - a single command - must be used for the Default Action, but they can also be used for other delegates in place of a function or procedure call.
Desktop
! Prefix
Prefix the command with a !:
Lianja/VFP
!? "Hello World"
JavaScript
!print("Hello World")
PHP
!echo "Hello World"
Python
!print "Hello World"
Lianja Methods
Call supported Lianja methods with no prefix:
All
Lianja.writeLog("Hello World")
PHP
Lianja::writeLog("Hello World")
$ Prefix
Prefix Lianja.showdocument() actions with a $:
$("page:page2")
is the equivalent of:
Lianja.showDocument("page:page2")
|| Chaining
As with the full Lianja.showDocument() method or the SHOWDOCUMENT() function, multiple actions can be chained by separating them with ||, e.g.
$("section:section3?action=hide||section:section2?action=hide")
Web App
Inline delegates must be written in JavaScript.
Commands and supported Lianja methods can be written without any prefix:
window.alert("Hello World") Lianja.writeLog("Hello World") Lianja.getElementByID("page1.section1").hide()
$ Prefix
Prefix Lianja.showdocument() actions with a $:
$("page:page2")
is the equivalent of:
Lianja.showDocument("page:page2")
|| Chaining
As with the full Lianja.showDocument() method or the SHOWDOCUMENT() function, multiple actions can be chained by separating them with ||, e.g.
$("section:section3?action=show||section:section2?action=show")