Subversion Repository Public Repository

Nextrek

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
var Component_FormulaHandler,
  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
  hasProp = {}.hasOwnProperty;

Component_FormulaHandler = (function(superClass) {
  extend(Component_FormulaHandler, superClass);


  /**
  * A binding-handler component allows a UI game object to execute
  * property-bindings.<br><br>
  *
  * For example: A text-label can bind its text-property to a backend-field 
  * like the current music-volume to always display correct music-volume. 
  * If the volume changes, the text-property will be updated
  * automatically.
  *
  * To define a binding, a special property-path syntax is used. For example:<br>
  * <br>
  * $myTextField.text<br>
  * <br>
  * is a property-path to access the text-property of a text-field object
  * with the identifier "myTextField". For more information, take a look
  * into the "In Game UI System" section of the help-file.
  * 
  * @module ui
  * @class Component_BindingHandler
  * @extends ui.Component_Handler
  * @memberof ui
  * @constructor
   */

  function Component_FormulaHandler() {
    this.breakChainAt = null;
  }


  /**
  * Initializes the binding-handler.
  * 
  * @method setup
   */

  Component_FormulaHandler.prototype.setup = function() {};


  /**
  * Updates the binding-handler.
  * 
  * @method update
   */

  Component_FormulaHandler.prototype.update = function() {
    var formula, i, len, ref;
    ref = this.object.formulas;
    for (i = 0, len = ref.length; i < len; i++) {
      formula = ref[i];
      this.executeFormula(formula);
    }
    this.object.initialized = true;
    return null;
  };

  Component_FormulaHandler.prototype.executeFormula = function(formula) {
    if (this.checkObject(formula)) {
      window.o = this.object;
      window.d = this.object.data[0];
      return formula.exec();
    }
  };

  Component_FormulaHandler.executeFormula = function(object, formula) {
    window.o = object;
    window.d = object.data[0];
    return formula.exec();
  };


  /**
  * Evaluates a specified property-path and returns the result.
  * 
  * @method fieldValue
  * @param {string} path - A property-path.
  * @return {Object} The value of the property-path.
   */

  Component_FormulaHandler.prototype.fieldValue = function(path) {
    return ui.FormulaHandler.fieldValue(this.object, path);
  };


  /**
  * Evaluates a property-path on a specified object and returns the result.
  * 
  * @method fieldValue
  * @static
  * @param {Object} object - An object to evaluate the property-path on.
  * @param {string} path - A property-path.
  * @return {Object} The value of the property-path.
   */

  Component_FormulaHandler.fieldValue = function(object, path, readOnly) {
    var ref, value;
    if (typeof (path != null ? path.exec : void 0) === "function") {
      window.o = object;
      window.d = object != null ? (ref = object.data) != null ? ref[0] : void 0 : void 0;
      value = path.exec();
      return value != null ? value : 0;
    } else {
      return path;
    }
  };

  return Component_FormulaHandler;

})(ui.Component_Handler);

ui.Component_FormulaHandler = Component_FormulaHandler;

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLElBQUEsd0JBQUE7RUFBQTs7O0FBQU07Ozs7QUFDRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBdUJhLGtDQUFBO0lBQ1QsSUFBQyxDQUFBLFlBQUQsR0FBZ0I7RUFEUDs7O0FBR2I7Ozs7OztxQ0FLQSxLQUFBLEdBQU8sU0FBQSxHQUFBOzs7QUFFUDs7Ozs7O3FDQUtBLE1BQUEsR0FBUSxTQUFBO0FBQ0osUUFBQTtBQUFBO0FBQUEsU0FBQSxxQ0FBQTs7TUFDSSxJQUFDLENBQUEsY0FBRCxDQUFnQixPQUFoQjtBQURKO0lBR0EsSUFBQyxDQUFBLE1BQU0sQ0FBQyxXQUFSLEdBQXNCO0FBRXRCLFdBQU87RUFOSDs7cUNBUVIsY0FBQSxHQUFnQixTQUFDLE9BQUQ7SUFDWixJQUFHLElBQUMsQ0FBQSxXQUFELENBQWEsT0FBYixDQUFIO01BQ0ksTUFBTSxDQUFDLENBQVAsR0FBVyxJQUFDLENBQUE7TUFDWixNQUFNLENBQUMsQ0FBUCxHQUFXLElBQUMsQ0FBQSxNQUFNLENBQUMsSUFBSyxDQUFBLENBQUE7YUFDeEIsT0FBTyxDQUFDLElBQVIsQ0FBQSxFQUhKOztFQURZOztFQU1oQix3QkFBQyxDQUFBLGNBQUQsR0FBaUIsU0FBQyxNQUFELEVBQVMsT0FBVDtJQUNiLE1BQU0sQ0FBQyxDQUFQLEdBQVc7SUFDWCxNQUFNLENBQUMsQ0FBUCxHQUFXLE1BQU0sQ0FBQyxJQUFLLENBQUEsQ0FBQTtXQUN2QixPQUFPLENBQUMsSUFBUixDQUFBO0VBSGE7OztBQUtqQjs7Ozs7Ozs7cUNBT0EsVUFBQSxHQUFZLFNBQUMsSUFBRDtXQUFVLEVBQUUsQ0FBQyxjQUFjLENBQUMsVUFBbEIsQ0FBNkIsSUFBQyxDQUFBLE1BQTlCLEVBQXNDLElBQXRDO0VBQVY7OztBQUVaOzs7Ozs7Ozs7O0VBU0Esd0JBQUMsQ0FBQSxVQUFELEdBQWEsU0FBQyxNQUFELEVBQVMsSUFBVCxFQUFlLFFBQWY7QUFDVCxRQUFBO0lBQUEsSUFBRyxPQUFPLGdCQUFDLElBQUksQ0FBRSxhQUFQLENBQVAsS0FBdUIsVUFBMUI7TUFDSSxNQUFNLENBQUMsQ0FBUCxHQUFXO01BQ1gsTUFBTSxDQUFDLENBQVAscURBQXlCLENBQUEsQ0FBQTtNQUN6QixLQUFBLEdBQVEsSUFBSSxDQUFDLElBQUwsQ0FBQTtBQUVSLDZCQUFPLFFBQVEsRUFMbkI7S0FBQSxNQUFBO0FBT0ksYUFBTyxLQVBYOztFQURTOzs7O0dBNUVzQixFQUFFLENBQUM7O0FBc0YxQyxFQUFFLENBQUMsd0JBQUgsR0FBOEIiLCJzb3VyY2VzQ29udGVudCI6WyIjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiNcbiMgICBTY3JpcHQ6IENvbXBvbmVudF9Gb3JtdWxhSGFuZGxlclxuI1xuIyAgICQkQ09QWVJJR0hUJCRcbiNcbiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuY2xhc3MgQ29tcG9uZW50X0Zvcm11bGFIYW5kbGVyIGV4dGVuZHMgdWkuQ29tcG9uZW50X0hhbmRsZXJcbiAgICAjIyMqXG4gICAgKiBBIGJpbmRpbmctaGFuZGxlciBjb21wb25lbnQgYWxsb3dzIGEgVUkgZ2FtZSBvYmplY3QgdG8gZXhlY3V0ZVxuICAgICogcHJvcGVydHktYmluZGluZ3MuPGJyPjxicj5cbiAgICAqXG4gICAgKiBGb3IgZXhhbXBsZTogQSB0ZXh0LWxhYmVsIGNhbiBiaW5kIGl0cyB0ZXh0LXByb3BlcnR5IHRvIGEgYmFja2VuZC1maWVsZCBcbiAgICAqIGxpa2UgdGhlIGN1cnJlbnQgbXVzaWMtdm9sdW1lIHRvIGFsd2F5cyBkaXNwbGF5IGNvcnJlY3QgbXVzaWMtdm9sdW1lLiBcbiAgICAqIElmIHRoZSB2b2x1bWUgY2hhbmdlcywgdGhlIHRleHQtcHJvcGVydHkgd2lsbCBiZSB1cGRhdGVkXG4gICAgKiBhdXRvbWF0aWNhbGx5LlxuICAgICpcbiAgICAqIFRvIGRlZmluZSBhIGJpbmRpbmcsIGEgc3BlY2lhbCBwcm9wZXJ0eS1wYXRoIHN5bnRheCBpcyB1c2VkLiBGb3IgZXhhbXBsZTo8YnI+XG4gICAgKiA8YnI+XG4gICAgKiAkbXlUZXh0RmllbGQudGV4dDxicj5cbiAgICAqIDxicj5cbiAgICAqIGlzIGEgcHJvcGVydHktcGF0aCB0byBhY2Nlc3MgdGhlIHRleHQtcHJvcGVydHkgb2YgYSB0ZXh0LWZpZWxkIG9iamVjdFxuICAgICogd2l0aCB0aGUgaWRlbnRpZmllciBcIm15VGV4dEZpZWxkXCIuIEZvciBtb3JlIGluZm9ybWF0aW9uLCB0YWtlIGEgbG9va1xuICAgICogaW50byB0aGUgXCJJbiBHYW1lIFVJIFN5c3RlbVwiIHNlY3Rpb24gb2YgdGhlIGhlbHAtZmlsZS5cbiAgICAqIFxuICAgICogQG1vZHVsZSB1aVxuICAgICogQGNsYXNzIENvbXBvbmVudF9CaW5kaW5nSGFuZGxlclxuICAgICogQGV4dGVuZHMgdWkuQ29tcG9uZW50X0hhbmRsZXJcbiAgICAqIEBtZW1iZXJvZiB1aVxuICAgICogQGNvbnN0cnVjdG9yXG4gICAgIyMjXG4gICAgY29uc3RydWN0b3I6ICgpIC0+XG4gICAgICAgIEBicmVha0NoYWluQXQgPSBudWxsXG4gICAgICAgIFxuICAgICMjIypcbiAgICAqIEluaXRpYWxpemVzIHRoZSBiaW5kaW5nLWhhbmRsZXIuXG4gICAgKiBcbiAgICAqIEBtZXRob2Qgc2V0dXBcbiAgICAjIyNcbiAgICBzZXR1cDogLT5cbiAgICAgXG4gICAgIyMjKlxuICAgICogVXBkYXRlcyB0aGUgYmluZGluZy1oYW5kbGVyLlxuICAgICogXG4gICAgKiBAbWV0aG9kIHVwZGF0ZVxuICAgICMjIyAgIFxuICAgIHVwZGF0ZTogLT5cbiAgICAgICAgZm9yIGZvcm11bGEgaW4gQG9iamVjdC5mb3JtdWxhc1xuICAgICAgICAgICAgQGV4ZWN1dGVGb3JtdWxhKGZvcm11bGEpXG4gICAgICAgIFxuICAgICAgICBAb2JqZWN0LmluaXRpYWxpemVkID0geWVzXG4gICAgICAgIFxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICBcbiAgICBleGVjdXRlRm9ybXVsYTogKGZvcm11bGEpIC0+IFxuICAgICAgICBpZiBAY2hlY2tPYmplY3QoZm9ybXVsYSlcbiAgICAgICAgICAgIHdpbmRvdy5vID0gQG9iamVjdFxuICAgICAgICAgICAgd2luZG93LmQgPSBAb2JqZWN0LmRhdGFbMF1cbiAgICAgICAgICAgIGZvcm11bGEuZXhlYygpXG4gICAgICAgICAgICBcbiAgICBAZXhlY3V0ZUZvcm11bGE6IChvYmplY3QsIGZvcm11bGEpIC0+XG4gICAgICAgIHdpbmRvdy5vID0gb2JqZWN0XG4gICAgICAgIHdpbmRvdy5kID0gb2JqZWN0LmRhdGFbMF1cbiAgICAgICAgZm9ybXVsYS5leGVjKClcbiAgICBcbiAgICAjIyMqXG4gICAgKiBFdmFsdWF0ZXMgYSBzcGVjaWZpZWQgcHJvcGVydHktcGF0aCBhbmQgcmV0dXJucyB0aGUgcmVzdWx0LlxuICAgICogXG4gICAgKiBAbWV0aG9kIGZpZWxkVmFsdWVcbiAgICAqIEBwYXJhbSB7c3RyaW5nfSBwYXRoIC0gQSBwcm9wZXJ0eS1wYXRoLlxuICAgICogQHJldHVybiB7T2JqZWN0fSBUaGUgdmFsdWUgb2YgdGhlIHByb3BlcnR5LXBhdGguXG4gICAgIyMjIFxuICAgIGZpZWxkVmFsdWU6IChwYXRoKSAtPiB1aS5Gb3JtdWxhSGFuZGxlci5maWVsZFZhbHVlKEBvYmplY3QsIHBhdGgpICBcbiAgICBcbiAgICAjIyMqXG4gICAgKiBFdmFsdWF0ZXMgYSBwcm9wZXJ0eS1wYXRoIG9uIGEgc3BlY2lmaWVkIG9iamVjdCBhbmQgcmV0dXJucyB0aGUgcmVzdWx0LlxuICAgICogXG4gICAgKiBAbWV0aG9kIGZpZWxkVmFsdWVcbiAgICAqIEBzdGF0aWNcbiAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmplY3QgLSBBbiBvYmplY3QgdG8gZXZhbHVhdGUgdGhlIHByb3BlcnR5LXBhdGggb24uXG4gICAgKiBAcGFyYW0ge3N0cmluZ30gcGF0aCAtIEEgcHJvcGVydHktcGF0aC5cbiAgICAqIEByZXR1cm4ge09iamVjdH0gVGhlIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eS1wYXRoLlxuICAgICMjIyBcbiAgICBAZmllbGRWYWx1ZTogKG9iamVjdCwgcGF0aCwgcmVhZE9ubHkpIC0+XG4gICAgICAgIGlmIHR5cGVvZiAocGF0aD8uZXhlYykgPT0gXCJmdW5jdGlvblwiXG4gICAgICAgICAgICB3aW5kb3cubyA9IG9iamVjdFxuICAgICAgICAgICAgd2luZG93LmQgPSBvYmplY3Q/LmRhdGE/WzBdXG4gICAgICAgICAgICB2YWx1ZSA9IHBhdGguZXhlYygpXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSA/IDBcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgcmV0dXJuIHBhdGhcbiAgICAgXG51aS5Db21wb25lbnRfRm9ybXVsYUhhbmRsZXIgPSBDb21wb25lbnRfRm9ybXVsYUhhbmRsZXIiXX0=
//# sourceURL=Component_FormulaHandler_120.js

Commits for Nextrek/s2s/development/Component_FormulaHandler_ECF00B441300864C6059B990EDE620CE8CA1.js

Diff revisions: vs.
Revision Author Commited Message
1084 MOliva picture MOliva Fri 11 May, 2018 12:41:55 +0000