diff options
| author | Xavier Morel <xmo@openerp.com> | 2012-03-22 15:33:31 +0100 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2012-03-22 15:33:31 +0100 |
| commit | 7353e02e2ef4a403d4b79c1b157f2ca00b77d2fc (patch) | |
| tree | a319552e3664ea272fdfb8abf31c961bcd5e1e6e /addons/web/static/src/js/view_list_editable.js | |
| parent | 514c63288c7d5d88d764b44696c5e3a5fc148dfb (diff) | |
| parent | 1da49a44a57aa413e5eb96afe9c6d294e09848fd (diff) | |
[MERGE] from trunk
bzr revid: xmo@openerp.com-20120322143331-iajlifomw1hohbht
Diffstat (limited to 'addons/web/static/src/js/view_list_editable.js')
| -rw-r--r-- | addons/web/static/src/js/view_list_editable.js | 33 |
1 files changed, 12 insertions, 21 deletions
diff --git a/addons/web/static/src/js/view_list_editable.js b/addons/web/static/src/js/view_list_editable.js index c7222455889..b8699bcc006 100644 --- a/addons/web/static/src/js/view_list_editable.js +++ b/addons/web/static/src/js/view_list_editable.js @@ -139,7 +139,7 @@ openerp.web.list_editable = function (openerp) { } cancelled.then(function () { self.view.unpad_columns(); - self.edition_form.stop(); + self.edition_form.destroy(); self.edition_form.$element.remove(); delete self.edition_form; delete self.edition_id; @@ -235,26 +235,16 @@ openerp.web.list_editable = function (openerp) { } self.edition = true; self.edition_id = record_id; - self.edition_form = _.extend(new openerp.web.ListEditableFormView(self.view, self.dataset, false), { - form_template: 'ListView.row.form', - registry: openerp.web.list.form.widgets, - $element: $new_row - }); - // HA HA - self.edition_form.appendTo(); + self.edition_form = new openerp.web.ListEditableFormView(self.view, self.dataset, false); + self.edition_form.$element = $new_row; + self.edition_form.editable_list = self; + // HO HO + // empty $.when(self.edition_form.on_loaded(self.get_form_fields_view())).then(function () { // put in $.when just in case FormView.on_loaded becomes asynchronous $new_row.find('> td') - .addClass('oe-field-cell') - .removeAttr('width') .end() .find('td:last').removeClass('oe-field-cell').end(); - if (self.options.selectable) { - $new_row.prepend('<th>'); - } - if (self.options.isClarkGable) { - $new_row.prepend('<th>'); - } // pad in case of groupby _(self.columns).each(function (column) { if (column.meta) { @@ -383,7 +373,7 @@ openerp.web.list_editable = function (openerp) { openerp.web.list.form = {}; } openerp.web.list.form.WidgetFrame = openerp.web.form.WidgetFrame.extend({ - template: 'ListView.row.frame' + form_template: 'ListView.row.frame' }); var form_widgets = openerp.web.form.widgets; openerp.web.list.form.widgets = form_widgets.extend({ @@ -418,9 +408,10 @@ openerp.web.list_editable = function (openerp) { }); openerp.web.ListEditableFormView = openerp.web.FormView.extend({ - init_view: function() {}, - _render_and_insert: function () { - return this.start(); - } + form_template: 'ListView.row.form', + init: function() { + this._super.apply(this, arguments); + this.registry = openerp.web.list.form.widgets; + }, }); }; |
