[IMP] Refactored web.Dialog (again)
bzr revid: fme@openerp.com-20120111110648-thxst5ot0te60fj5
This commit is contained in:
parent
2b736ee2cf
commit
fca894050a
|
@ -36,7 +36,7 @@ openerp.web.Notification = openerp.web.Widget.extend(/** @lends openerp.web.Not
|
|||
|
||||
});
|
||||
|
||||
openerp.web.Dialog = openerp.web.OldWidget.extend(/** @lends openerp.web.Dialog# */{
|
||||
openerp.web.Dialog = openerp.web.Widget.extend(/** @lends openerp.web.Dialog# */{
|
||||
dialog_title: "",
|
||||
identifier_prefix: 'dialog',
|
||||
/**
|
||||
|
@ -46,9 +46,12 @@ openerp.web.Dialog = openerp.web.OldWidget.extend(/** @lends openerp.web.Dialog#
|
|||
* @param parent
|
||||
* @param options
|
||||
*/
|
||||
init: function (parent, options) {
|
||||
init: function (parent, options, content) {
|
||||
var self = this;
|
||||
this._super(parent);
|
||||
if (content) {
|
||||
this.$element = content instanceof $ ? content : $(content);
|
||||
}
|
||||
this.dialog_options = {
|
||||
modal: true,
|
||||
destroy_on_close: true,
|
||||
|
@ -72,6 +75,11 @@ openerp.web.Dialog = openerp.web.OldWidget.extend(/** @lends openerp.web.Dialog#
|
|||
if (options) {
|
||||
_.extend(this.dialog_options, options);
|
||||
}
|
||||
if (this.dialog_options.autoOpen) {
|
||||
this.open();
|
||||
} else {
|
||||
this.$element.dialog(this.get_options());
|
||||
}
|
||||
},
|
||||
get_options: function(options) {
|
||||
var self = this,
|
||||
|
@ -103,11 +111,6 @@ openerp.web.Dialog = openerp.web.OldWidget.extend(/** @lends openerp.web.Dialog#
|
|||
return parseInt(val, 10);
|
||||
}
|
||||
},
|
||||
start: function () {
|
||||
this.$element.dialog(this.dialog_options);
|
||||
this._super();
|
||||
return this;
|
||||
},
|
||||
open: function(options) {
|
||||
// TODO fme: bind window on resize
|
||||
if (this.template) {
|
||||
|
@ -195,13 +198,12 @@ openerp.web.CrashManager = openerp.web.CallbackEnabled.extend({
|
|||
}
|
||||
var dialog = new openerp.web.Dialog(this, {
|
||||
title: "OpenERP " + _.str.capitalize(this.error.type),
|
||||
autoOpen: true,
|
||||
width: '80%',
|
||||
height: '50%',
|
||||
min_width: '800px',
|
||||
min_height: '600px',
|
||||
buttons: buttons
|
||||
}).start();
|
||||
}).open();
|
||||
dialog.$element.html(QWeb.render('CrashManagerError', {session: openerp.connection, error: error}));
|
||||
},
|
||||
});
|
||||
|
@ -782,8 +784,7 @@ openerp.web.Header = openerp.web.Widget.extend(/** @lends openerp.web.Header# *
|
|||
}
|
||||
}
|
||||
]
|
||||
});
|
||||
this.dialog.start().open();
|
||||
}).open();
|
||||
action_manager.appendTo(this.dialog);
|
||||
action_manager.render(this.dialog);
|
||||
},
|
||||
|
@ -793,8 +794,7 @@ openerp.web.Header = openerp.web.Widget.extend(/** @lends openerp.web.Header# *
|
|||
this.dialog = new openerp.web.Dialog(this, {
|
||||
title: _t("Change Password"),
|
||||
width : 'auto'
|
||||
});
|
||||
this.dialog.start().open();
|
||||
}).open();
|
||||
this.dialog.$element.html(QWeb.render("Change_Pwd", self));
|
||||
this.dialog.$element.find("form[name=change_password_form]").validate({
|
||||
submitHandler: function (form) {
|
||||
|
|
|
@ -47,7 +47,7 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({
|
|||
{text: _t("Remove"), click: function() { self.do_delete_view(); }},
|
||||
{text: _t("Close"), click: function() { self.view_edit_dialog.close(); }}
|
||||
]
|
||||
}).start().open();
|
||||
}).open();
|
||||
this.main_view_id = this.parent.fields_view.view_id;
|
||||
this.action_manager = new openerp.web.ActionManager(this);
|
||||
this.action_manager.appendTo(this.view_edit_dialog);
|
||||
|
@ -92,8 +92,7 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({
|
|||
}},
|
||||
{text: _t("Cancel"), click: function () { self.create_view_dialog.close(); }}
|
||||
]
|
||||
});
|
||||
this.create_view_dialog.start().open();
|
||||
}).open();
|
||||
var view_widget = [{'name': 'view_name', 'string':'View Name', 'type': 'char', 'required': true, 'value' : this.model + '.custom_' + Math.round(Math.random() * 1000)},
|
||||
{'name': 'view_type', 'string': 'View Type', 'type': 'selection', 'required': true, 'value': 'Form', 'selection': [['',''],['tree', 'Tree'],['form', 'Form'],['graph', 'Graph'],['calendar', 'Calender']]},
|
||||
{'name': 'proirity', 'string': 'Priority', 'type': 'float', 'required': true, 'value':'16'}];
|
||||
|
@ -382,7 +381,7 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({
|
|||
self.edit_xml_dialog.close();
|
||||
}}
|
||||
]
|
||||
}).start().open();
|
||||
}).open();
|
||||
var no_property_att = [];
|
||||
_.each(_PROPERTIES, function(val, key) {
|
||||
if (! val.length) no_property_att.push(key);
|
||||
|
@ -769,8 +768,7 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({
|
|||
}},
|
||||
{text: _t("Cancel"), click: function () { self.edit_node_dialog.close(); }}
|
||||
]
|
||||
});
|
||||
this.edit_node_dialog.start().open();
|
||||
}).open();
|
||||
var _PROPERTIES_ATTRIBUTES = {
|
||||
'name' : {'name':'name', 'string': 'Name', 'type': 'char'},
|
||||
'string' : {'name':'string', 'string': 'String', 'type': 'char'},
|
||||
|
@ -896,7 +894,7 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({
|
|||
}},
|
||||
{text: _t("Cancel"), click: function() { self.add_node_dialog.close(); }}
|
||||
]
|
||||
}).start().open();
|
||||
}).open();
|
||||
this.add_node_dialog.$element.append('<table id="rec_table" style="width:420px" class="oe_forms"><tbody><tr></tbody></table>');
|
||||
var table_selector = self.add_node_dialog.$element.find('table[id=rec_table] tbody');
|
||||
_.each(render_list, function(node) {
|
||||
|
|
|
@ -1698,9 +1698,8 @@ openerp.web.form.dialog = function(content, options) {
|
|||
height: 'auto',
|
||||
min_width: '800px'
|
||||
}, options || {});
|
||||
options.autoOpen = true;
|
||||
var dialog = new openerp.web.Dialog(null, options).open();
|
||||
return dialog.$element.html(content);
|
||||
var dialog = new openerp.web.Dialog(null, options, content).open();
|
||||
return dialog.$element;
|
||||
};
|
||||
|
||||
openerp.web.form.FieldMany2One = openerp.web.form.Field.extend({
|
||||
|
|
|
@ -137,7 +137,6 @@ session.web.ActionManager = session.web.Widget.extend({
|
|||
this.dialog = new session.web.Dialog(this, { width: '80%' });
|
||||
if(on_close)
|
||||
this.dialog.on_close.add(on_close);
|
||||
this.dialog.start();
|
||||
} else {
|
||||
this.dialog_viewmanager.stop();
|
||||
}
|
||||
|
|
|
@ -286,7 +286,7 @@ openerp.web_process = function (openerp) {
|
|||
$(this).dialog('destroy');
|
||||
}}
|
||||
]
|
||||
}).start().open();
|
||||
}).open();
|
||||
|
||||
action_manager.appendTo(dialog.$element);
|
||||
action_manager.do_action({
|
||||
|
|
Loading…
Reference in New Issue