r3-legacy/src/r3-controls-mouse.js

79 lines
1.7 KiB
JavaScript

/**
* Mouse Controls
* @param apiMouseControls R3.API.Controls
* @constructor
*/
R3.Controls.Mouse = function (
apiMouseControls
) {
if (R3.Utils.UndefinedOrNull(apiMouseControls)) {
apiMouseControls = {
controlsType : R3.API.Controls.CONTROLS_TYPE_MOUSE
};
}
R3.API.Controls.Mouse.call(
this,
apiMouseControls
);
R3.Controls.call(
this,
apiMouseControls
);
};
/**
* Inheritance
* @type {R3.Controls}
*/
R3.Controls.Mouse.prototype = Object.create(R3.Controls.prototype);
R3.Controls.Mouse.prototype.constructor = R3.Controls.Mouse;
/**
* Create Instance
* @returns
*/
R3.Controls.Mouse.prototype.createInstance = function() {
/**
* Set instance to true to indicate no dependencies to other components
*/
this.instance = true;
R3.Controls.prototype.createInstance.call(this);
};
/**
* Update Instance
*/
R3.Controls.Mouse.prototype.updateInstance = function(property) {
R3.Controls.prototype.updateInstance.call(this, property);
};
/**
* Converts a R3.Controls.Mouse to a R3.API.Controls
* @returns {R3.API.Controls}
*/
R3.Controls.Mouse.prototype.toApiObject = function() {
var apiControls = R3.Controls.prototype.toApiObject.call(this);
/**
* add other properties here as this component develops...
*/
return apiControls;
};
/**
* Construct an Mouse Controls object from data
* @param objectControls
* @returns {R3.Controls.Mouse}
* @constructor
*/
R3.Controls.Mouse.FromObject = function(objectControls) {
var apiMouseControls = R3.API.Controls.Mouse.FromObject(objectControls);
return new R3.Controls.Mouse(
apiMouseControls
);
};