Developer

Definitions of Events and Actions

Actions define how a control reacts to user interactions or internal events.

In iOS, events and actions defined in the configuration serve the same purpose as achieved via the UIControl addTarget: action:forControlEvents API when writing native code. The Extensibility Framework currently supports these event types:
  • onClick (touch - UIControlEventTouchUpInside)
  • onLongClick (touch and hold)
  • onOrientationChange (on-phone orientation change)
  • onEnter (on Enter pressed)
  • onDidLoad (viewDidLoad)
  • onViewWillAppear
  • onChange
  • onSearch (search pressed)
  • onDataLoaded
  • onCreate
  • onDidAppear
  • onProgressCanceled
  • onContextChanged
  • onGlobalContextChanged
The onClick event, which translates to UIControlEventTouchUpInside, is the most commonly used user interaction event type.
The actions that define what happens when an event is triggered include:
  • navigate – navigates to another screen with a given target tile.
  • back – returns to the previous screen.
  • edit – places the view in edit mode.
  • copy – copies attributes from the source object to the target object.
  • save – saves the changes made to the current object.
  • delete – deletes the current object.
  • uiRefresh – refreshes the current tile’s views.
  • dataReload – reloads the data.
  • showModal – presents the tile modally.
  • dismissModal – closes a modal screen.
  • updateContext – updates the tile’s context.
  • clearContext – purges the context.
  • updateGlobalContext – updates the global context cache with values provided as action parameters.
  • clearGlobalContext – cleans up global context.
  • waitForContext – tells the tile to stop further activities until the context arrives.
  • pushUndoBuffer – starts an undo group; changes made in an undo group can be undone simultaneously.
  • popUndoBuffer – closes a previously opened undo group.
  • emptyUndoBuffer – reverts all BO changes.
  • showProgressView – shows an alert view; the alert view’s parameters are provided in the binding and the BindigRef.
  • dismissProgressView – closes the alert view previously opened via showProgressView.
This example demonstrates how to define a button to react to touch events by navigating to the tile with the TimeAccountsScreen ID:
<UIElement type=”button”>
    <P pid="text" value="Time Accounts" visible="true" />
    <P pid="halign" value="left" />
    <P pid="width" value="49%" />
    <P pid="height" value="25pt" />
    <P pid="style" value="BlackButton" />
    <Event id="onClick">
        <Action id="navigate">
            <P pid="target" value="TimeAccountsScreen" />
        </Action>
    </Event>
</UIElement>
You can assign events and actions to any of the supported UI elements, including those with “image”type. This example shows how to define an image that brings up an alert view when tapped:
<UIElement type=”image”>
    <P pid="imageSrc" value="tapMe.png"/>
    <P pid="width" value="64pt" />
    <P pid="height" value="64pt" />
    <P pid="halign" value="center" />
    <Event id="onClick">
        <Action id="showAlertView">
            <P pid="alertTitle" value="Delete files?" />
            <P pid="cancelButtonText" value="Cancel" />
            <P pid="alertMessage" value="Nuke’em!" />
        </Action>
    </Event>
</UIElement>