[IMP] Removed global QWeb. Now instanciate a QWeb2.Engine for each session: instance.web.qweb

bzr revid: fme@openerp.com-20110907093743-k0224c5qjb74hxvb
This commit is contained in:
Fabien Meghazi 2011-09-07 11:37:43 +02:00
parent 3908e0eb88
commit e0eec18342
16 changed files with 17 additions and 4 deletions

View File

@ -103,7 +103,6 @@ home_template = textwrap.dedent("""<!DOCTYPE html>
%(javascript)s %(javascript)s
<script type="text/javascript"> <script type="text/javascript">
$(function() { $(function() {
QWeb = new QWeb2.Engine();
var c = new openerp.init(); var c = new openerp.init();
var wc = new c.web.WebClient("oe"); var wc = new c.web.WebClient("oe");
wc.start(); wc.start();

View File

@ -3,6 +3,7 @@
*---------------------------------------------------------*/ *---------------------------------------------------------*/
openerp.web.chrome = function(openerp) { openerp.web.chrome = function(openerp) {
var QWeb = openerp.web.qweb;
openerp.web.Notification = openerp.web.Widget.extend({ openerp.web.Notification = openerp.web.Widget.extend({
init: function(parent, element_id) { init: function(parent, element_id) {

View File

@ -3,6 +3,7 @@
*--------------------------------------------------------*/ *--------------------------------------------------------*/
openerp.web.core = function(openerp) { openerp.web.core = function(openerp) {
openerp.web.qweb = new QWeb2.Engine();
/** /**
* John Resig Class with factory improvement * John Resig Class with factory improvement
*/ */
@ -868,7 +869,7 @@ openerp.web.Widget = openerp.web.SessionAware.extend({
* @param {Object} additional Additional context arguments to pass to the template. * @param {Object} additional Additional context arguments to pass to the template.
*/ */
render: function (additional) { render: function (additional) {
return QWeb.render(this.template, _.extend({widget: this}, additional || {})); return openerp.web.qweb.render(this.template, _.extend({widget: this}, additional || {}));
}, },
/** /**
* Method called after rendering. Mostly used to bind actions, perform asynchronous * Method called after rendering. Mostly used to bind actions, perform asynchronous
@ -946,7 +947,7 @@ openerp.web.Widget = openerp.web.SessionAware.extend({
*/ */
openerp.web.OldWidget = openerp.web.Widget.extend({ openerp.web.OldWidget = openerp.web.Widget.extend({
render: function (additional) { render: function (additional) {
return QWeb.render(this.template, _.extend(_.extend({}, this), additional || {})); return openerp.web.qweb.render(this.template, _.extend(_.extend({}, this), additional || {}));
} }
}); });

View File

@ -1,4 +1,5 @@
openerp.web.data_export = function(openerp) { openerp.web.data_export = function(openerp) {
var QWeb = openerp.web.qweb;
openerp.web.DataExport = openerp.web.Dialog.extend({ openerp.web.DataExport = openerp.web.Dialog.extend({
template: 'ExportTreeView', template: 'ExportTreeView',
dialog_title: 'Export Data', dialog_title: 'Export Data',

View File

@ -1,6 +1,7 @@
openerp.web.form = function (openerp) { openerp.web.form = function (openerp) {
var _t = openerp.web._t; var _t = openerp.web._t;
var QWeb = openerp.web.qweb;
openerp.web.views.add('form', 'openerp.web.FormView'); openerp.web.views.add('form', 'openerp.web.FormView');
openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView# */{ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView# */{

View File

@ -1,4 +1,5 @@
openerp.web.list = function (openerp) { openerp.web.list = function (openerp) {
var QWeb = openerp.web.qweb;
openerp.web.views.add('list', 'openerp.web.ListView'); openerp.web.views.add('list', 'openerp.web.ListView');
openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView# */ { openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView# */ {
defaults: { defaults: {

View File

@ -1,4 +1,5 @@
openerp.web.search = function(openerp) { openerp.web.search = function(openerp) {
var QWeb = openerp.web.qweb;
openerp.web.SearchView = openerp.web.Widget.extend({ openerp.web.SearchView = openerp.web.Widget.extend({
init: function(parent, element_id, dataset, view_id, defaults) { init: function(parent, element_id, dataset, view_id, defaults) {

View File

@ -3,6 +3,7 @@
*---------------------------------------------------------*/ *---------------------------------------------------------*/
openerp.web.view_tree = function(openerp) { openerp.web.view_tree = function(openerp) {
var QWeb = openerp.web.qweb;
openerp.web.views.add('tree', 'openerp.web.TreeView'); openerp.web.views.add('tree', 'openerp.web.TreeView');
/** /**

View File

@ -5,6 +5,7 @@
openerp.web.views = function(openerp) { openerp.web.views = function(openerp) {
var _t = openerp.web._t; var _t = openerp.web._t;
var QWeb = openerp.web.qweb;
/** /**
* Registry for all the client actions key: tag value: widget * Registry for all the client actions key: tag value: widget

View File

@ -3,6 +3,7 @@
*---------------------------------------------------------*/ *---------------------------------------------------------*/
openerp.web_calendar = function(openerp) { openerp.web_calendar = function(openerp) {
var QWeb = openerp.web.qweb;
QWeb.add_template('/web_calendar/static/src/xml/web_calendar.xml'); QWeb.add_template('/web_calendar/static/src/xml/web_calendar.xml');
openerp.web.views.add('calendar', 'openerp.web_calendar.CalendarView'); openerp.web.views.add('calendar', 'openerp.web_calendar.CalendarView');
openerp.web_calendar.CalendarView = openerp.web.View.extend({ openerp.web_calendar.CalendarView = openerp.web.View.extend({

View File

@ -1,5 +1,5 @@
openerp.web_dashboard = function(openerp) { openerp.web_dashboard = function(openerp) {
var QWeb = openerp.web.qweb;
QWeb.add_template('/web_dashboard/static/src/xml/web_dashboard.xml'); QWeb.add_template('/web_dashboard/static/src/xml/web_dashboard.xml');
openerp.web.form.DashBoard = openerp.web.form.Widget.extend({ openerp.web.form.DashBoard = openerp.web.form.Widget.extend({

View File

@ -1,4 +1,5 @@
openerp.web_default_home = function (openerp) { openerp.web_default_home = function (openerp) {
var QWeb = openerp.web.qweb;
QWeb.add_template('/web_default_home/static/src/xml/web_default_home.xml'); QWeb.add_template('/web_default_home/static/src/xml/web_default_home.xml');
openerp.web_default_home = { openerp.web_default_home = {

View File

@ -3,6 +3,7 @@
*---------------------------------------------------------*/ *---------------------------------------------------------*/
openerp.web_diagram = function (openerp) { openerp.web_diagram = function (openerp) {
var QWeb = openerp.web.qweb;
QWeb.add_template('/web_diagram/static/src/xml/base_diagram.xml'); QWeb.add_template('/web_diagram/static/src/xml/base_diagram.xml');
openerp.web.views.add('diagram', 'openerp.web.DiagramView'); openerp.web.views.add('diagram', 'openerp.web.DiagramView');
openerp.web.DiagramView = openerp.web.View.extend({ openerp.web.DiagramView = openerp.web.View.extend({

View File

@ -2,6 +2,7 @@
* OpenERP web_gantt * OpenERP web_gantt
*---------------------------------------------------------*/ *---------------------------------------------------------*/
openerp.web_gantt = function (openerp) { openerp.web_gantt = function (openerp) {
var QWeb = openerp.web.qweb;
QWeb.add_template('/web_gantt/static/src/xml/web_gantt.xml'); QWeb.add_template('/web_gantt/static/src/xml/web_gantt.xml');
openerp.web.views.add('gantt', 'openerp.web_gantt.GanttView'); openerp.web.views.add('gantt', 'openerp.web_gantt.GanttView');
openerp.web_gantt.GanttView = openerp.web.View.extend({ openerp.web_gantt.GanttView = openerp.web.View.extend({

View File

@ -12,6 +12,7 @@ var COLOR_PALETTE = [
'#ad7fa8', '#729fcf', '#8ae234', '#e9b96e', '#fce94f', '#f57900', '#ad7fa8', '#729fcf', '#8ae234', '#e9b96e', '#fce94f', '#f57900',
'#cc0000', '#d400a8']; '#cc0000', '#d400a8'];
var QWeb = openerp.web.qweb;
QWeb.add_template('/web_graph/static/src/xml/web_graph.xml'); QWeb.add_template('/web_graph/static/src/xml/web_graph.xml');
openerp.web.views.add('graph', 'openerp.web_graph.GraphView'); openerp.web.views.add('graph', 'openerp.web_graph.GraphView');
openerp.web_graph.GraphView = openerp.web.View.extend({ openerp.web_graph.GraphView = openerp.web.View.extend({

View File

@ -1,5 +1,6 @@
openerp.web_kanban = function (openerp) { openerp.web_kanban = function (openerp) {
var QWeb = openerp.web.qweb;
QWeb.add_template('/web_kanban/static/src/xml/web_kanban.xml'); QWeb.add_template('/web_kanban/static/src/xml/web_kanban.xml');
openerp.web.views.add('kanban', 'openerp.web_kanban.KanbanView'); openerp.web.views.add('kanban', 'openerp.web_kanban.KanbanView');
openerp.web_kanban.KanbanView = openerp.web.View.extend({ openerp.web_kanban.KanbanView = openerp.web.View.extend({