Commit 6389d855 authored by Romain Courteaud's avatar Romain Courteaud

Release version 0.20.0

parent 65dad858
This diff is collapsed.
...@@ -716,9 +716,26 @@ if (typeof document.contains !== 'function') { ...@@ -716,9 +716,26 @@ if (typeof document.contains !== 'function') {
window.URL = URL; window.URL = URL;
}(DOMParser));;/*! RenderJs */ }(DOMParser));;/*
* Copyright 2012, Nexedi SA
*
* This program is free software: you can Use, Study, Modify and Redistribute
* it under the terms of the GNU General Public License version 3, or (at your
* option) any later version, as published by the Free Software Foundation.
*
* You can also Link and Combine this program with other software covered by
* the terms of any of the Free Software licenses or any of the Open Source
* Initiative approved licenses and Convey the resulting work. Corresponding
* source of such a combination shall include the source code for all other
* software used.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* See COPYING file for full licensing terms.
* See https://www.nexedi.com/licensing for rationale and options.
*/
/*jslint nomen: true*/ /*jslint nomen: true*/
/* /*
* renderJs - Generic Gadget library renderer. * renderJs - Generic Gadget library renderer.
* https://renderjs.nexedi.com/ * https://renderjs.nexedi.com/
...@@ -1343,6 +1360,13 @@ if (typeof document.contains !== 'function') { ...@@ -1343,6 +1360,13 @@ if (typeof document.contains !== 'function') {
); );
} }
function registerMethod(gadget_klass, method_name, method_type) {
if (!gadget_klass.hasOwnProperty('__method_type_dict')) {
gadget_klass.__method_type_dict = {};
}
gadget_klass.__method_type_dict[method_name] = method_type;
}
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// RenderJSGadget.declareJob // RenderJSGadget.declareJob
// gadget internal method, which trigger execution // gadget internal method, which trigger execution
...@@ -1360,6 +1384,7 @@ if (typeof document.contains !== 'function') { ...@@ -1360,6 +1384,7 @@ if (typeof document.contains !== 'function') {
context.__job_list.push([name, callback, argument_list]); context.__job_list.push([name, callback, argument_list]);
} }
}; };
registerMethod(this, name, 'job');
// Allow chain // Allow chain
return this; return this;
}; };
...@@ -1389,6 +1414,7 @@ if (typeof document.contains !== 'function') { ...@@ -1389,6 +1414,7 @@ if (typeof document.contains !== 'function') {
} }
return ensurePushableQueue(callback, argument_list, context); return ensurePushableQueue(callback, argument_list, context);
}; };
registerMethod(this, name, 'method');
// Allow chain // Allow chain
return this; return this;
}; };
...@@ -1398,6 +1424,21 @@ if (typeof document.contains !== 'function') { ...@@ -1398,6 +1424,21 @@ if (typeof document.contains !== 'function') {
// Returns the list of gadget prototype // Returns the list of gadget prototype
return this.__interface_list; return this.__interface_list;
}) })
.declareMethod('getMethodList', function getMethodList(type) {
// Returns the list of gadget methods
var key,
method_list = [],
method_dict = this.constructor.__method_type_dict || {};
for (key in method_dict) {
if (method_dict.hasOwnProperty(key)) {
if ((type === undefined) ||
(type === method_dict[key])) {
method_list.push(key);
}
}
}
return method_list;
})
.declareMethod('getRequiredCSSList', function getRequiredCSSList() { .declareMethod('getRequiredCSSList', function getRequiredCSSList() {
// Returns a list of CSS required by the gadget // Returns a list of CSS required by the gadget
return this.__required_css_list; return this.__required_css_list;
...@@ -1505,7 +1546,7 @@ if (typeof document.contains !== 'function') { ...@@ -1505,7 +1546,7 @@ if (typeof document.contains !== 'function') {
gadget gadget
); );
}; };
registerMethod(this, name, 'acquired_method');
// Allow chain // Allow chain
return this; return this;
}; };
...@@ -2358,7 +2399,7 @@ if (typeof document.contains !== 'function') { ...@@ -2358,7 +2399,7 @@ if (typeof document.contains !== 'function') {
TmpConstructor.__ready_list = []; TmpConstructor.__ready_list = [];
TmpConstructor.__service_list = RenderJSGadget.__service_list.slice(); TmpConstructor.__service_list = RenderJSGadget.__service_list.slice();
TmpConstructor.prototype.__path = url; TmpConstructor.prototype.__path = url;
root_gadget = new RenderJSEmbeddedGadget(); root_gadget = new TmpConstructor();
setAqParent(root_gadget, createLastAcquisitionGadget()); setAqParent(root_gadget, createLastAcquisitionGadget());
declare_method_list_waiting = [ declare_method_list_waiting = [
...@@ -2366,7 +2407,8 @@ if (typeof document.contains !== 'function') { ...@@ -2366,7 +2407,8 @@ if (typeof document.contains !== 'function') {
"getRequiredCSSList", "getRequiredCSSList",
"getRequiredJSList", "getRequiredJSList",
"getPath", "getPath",
"getTitle" "getTitle",
"getMethodList"
]; ];
// Inform parent gadget about declareMethod calls here. // Inform parent gadget about declareMethod calls here.
......
{ {
"name": "renderjs", "name": "renderjs",
"version": "0.19.0", "version": "0.20.0",
"description": "RenderJs provides HTML5 gadgets", "description": "RenderJs provides HTML5 gadgets",
"main": "dist/renderjs-latest.js", "main": "dist/renderjs-latest.js",
"dependencies": { "dependencies": {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment