This system is for posting bugs or feature requests ONLY. Support questions will be automatically closed with no response.
For questions about how to use or build QGC see: http://qgroundcontrol.com/#resources
var _ = (function() {
// Baseline setup // --------------
// Establish the root object, window
in the browser, or global
on the server.
var root = this;
// Save the previous value of the _
variable.
var previousUnderscore = root._;
// Establish the object that gets returned to break out of a loop iteration. var breaker = {};
// Save bytes in the minified (but not gzipped) version: var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype;
// Create quick reference variables for speed access to core prototypes. var slice = ArrayProto.slice, unshift = ArrayProto.unshift, toString = ObjProto.toString, hasOwnProperty = ObjProto.hasOwnProperty;
// All ECMAScript 5 native function implementations that we hope to use // are declared here. var nativeForEach = ArrayProto.forEach, nativeMap = ArrayProto.map, nativeReduce = ArrayProto.reduce, nativeReduceRight = ArrayProto.reduceRight, nativeFilter = ArrayProto.filter, nativeEvery = ArrayProto.every, nativeSome = ArrayProto.some, nativeIndexOf = ArrayProto.indexOf, nativeLastIndexOf = ArrayProto.lastIndexOf, nativeIsArray = Array.isArray, nativeKeys = Object.keys, nativeBind = FuncProto.bind;
// Create a safe reference to the Underscore object for use below. var _ = function(obj) { return new wrapper(obj); };
// Export the Underscore object for Node.js, with
// backwards-compatibility for the old require()
API. If we're in
// the browser, add _
as a global object via a string identifier,
// for Closure Compiler "advanced" mode.
if (typeof exports !== 'undefined') {
if (typeof module !== 'undefined' && module.exports) {
exports = module.exports = ;
}
exports. = ;
} else {
root[''] = _;
}
// Current version. _.VERSION = '1.3.3';
// Collection Functions // --------------------
// The cornerstone, an each
implementation, aka forEach
.
// Handles objects with the built-in forEach
, arrays, and raw objects.
// Delegates to ECMAScript 5's native forEach
if available.
var each = _.each = .forEach = function(obj, iterator, context) {
if (obj == null) return;
if (nativeForEach && obj.forEach === nativeForEach) {
obj.forEach(iterator, context);
} else if (obj.length === +obj.length) {
for (var i = 0, l = obj.length; i < l; i++) {
if (i in obj && iterator.call(context, obj[i], i, obj) === breaker) return;
}
} else {
for (var key in obj) {
if (.has(obj, key)) {
if (iterator.call(context, obj[key], key, obj) === breaker) return;
}
}
}
};
// Return the results of applying the iterator to each element.
// Delegates to ECMAScript 5's native map
if available.
_.map = _.collect = function(obj, iterator, context) {
var results = [];
if (obj == null) return results;
if (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);
each(obj, function(value, index, list) {
results[results.length] = iterator.call(context, value, index, list);
});
if (obj.length === +obj.length) results.length = obj.length;
return results;
};