Object encapsulating binding functionality.
function lt.LEADVIEW.LVBinding
The LVBinding is used by the BindingManager to apply custom user bindings to existing LEADVIEW UI components.
export class BindingManagerExample {
public constructor() {
if (lt.RasterSupport.kernelExpired)
lt.RasterSupport.setLicenseUri("https://demo.leadtools.com/licenses/js/LEADTOOLSEVAL.txt", "EVAL", null);
this.rebind();
}
public run = (divID: string): void => {
const lv = new lt.LEADVIEW.Viewer();
lv.run(null, {
'rootDivId': divID
});
}
public rebind = () => {
/**
* The BindingManager handles overwriting any default LEADVIEW button functionality.
* We recommend that you setup bindings before calling LEADVIEW.run();
*/
const manager = lt.LEADVIEW.BindingManager.Instance;
/**
* The binding contract to apply to one of LEADVIEW's components.
*/
const binding: lt.LEADVIEW.LVBinding = {
onClick: () => alert('Custom Click!'),
tooltip: 'Custom Tooltip!',
class: 'lv-custom-class'
};
/**
* A full list of all keys available for binding can be retrieved by calling
* BindingManager.getAllAvailableKeys(). This will return an array of all available keys.
* To check and see if a key is supported in LEADVIEW, just call BindingManager.isSupported().
*
* Any string key value can be set in the manager, but the key will only be consumed internally by LEADVIEW
* if isSupported = true.
*
* For the purposes of this example, we will just loop through every available key, and apply our custom binding.
*/
manager.getAllAvailableKeys().forEach(key => {
if(!manager.isSupported(key)) return;
manager.add(key, binding, true);
});
}
}