Add in-line documentation to new scripts introduced to support the transitioned Layout view, WTD-535.
62 lines
2.1 KiB
JavaScript
62 lines
2.1 KiB
JavaScript
/*global define*/
|
|
|
|
define(
|
|
[],
|
|
function () {
|
|
"use strict";
|
|
|
|
/**
|
|
* The GestureRepresenter is responsible for installing predefined
|
|
* gestures upon mct-representation instances.
|
|
* Gestures themselves are pulled from the gesture service; this
|
|
* simply wraps that behavior in a Representer interface, such that
|
|
* it may be included among other such Representers used to prepare
|
|
* specific representations.
|
|
* @param {GestureService} gestureService the service which provides
|
|
* gestures
|
|
* @param {Scope} scope the Angular scope for this representation
|
|
* @param element the JQLite-wrapped mct-representation element
|
|
*/
|
|
function GestureRepresenter(gestureService, scope, element) {
|
|
var gestureHandle;
|
|
|
|
function destroy() {
|
|
// Release any resources associated with these gestures
|
|
if (gestureHandle) {
|
|
gestureHandle.destroy();
|
|
}
|
|
}
|
|
|
|
function represent(representation, domainObject) {
|
|
// Clear out any existing gestures
|
|
destroy();
|
|
|
|
// Attach gestures - by way of the service.
|
|
gestureHandle = gestureService.attachGestures(
|
|
element,
|
|
domainObject,
|
|
(representation || {}).gestures || []
|
|
);
|
|
}
|
|
|
|
return {
|
|
/**
|
|
* Set the current representation in use, and the domain
|
|
* object being represented.
|
|
*
|
|
* @param {RepresentationDefinition} representation the
|
|
* definition of the representation in use
|
|
* @param {DomainObject} domainObject the domain object
|
|
* being represented
|
|
*/
|
|
represent: represent,
|
|
/**
|
|
* Release any resources associated with this representer.
|
|
*/
|
|
destroy: destroy
|
|
};
|
|
}
|
|
|
|
return GestureRepresenter;
|
|
}
|
|
); |