From ba4bd9f59ee437f6b2949cf925da9a4a9c62e77f Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Thu, 16 Jun 2011 16:36:12 +0200 Subject: [PATCH 1/3] [IMP] Improved form's seperator widget styling bzr revid: fme@openerp.com-20110616143612-j8purzs0ujuvcog6 --- addons/base/static/src/css/base.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/base/static/src/css/base.css b/addons/base/static/src/css/base.css index 234bf2a37d9..dbce531edce 100644 --- a/addons/base/static/src/css/base.css +++ b/addons/base/static/src/css/base.css @@ -793,7 +793,8 @@ background: linear-gradient(top, #ffffff 0%,#d8d8d8 11%,#afafaf 86%,#333333 91%, .openerp .separator.horizontal { font-weight: bold; border-bottom-width: 1px; - margin: 6px 4px 6px 1px; + margin: 3px 4px 3px 1px; + height: 15px; } .openerp td.required input, .openerp td.required select { background-color: #D2D2FF; From 156638333cae9ce1c8713f3c257e92864686fdb6 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Thu, 16 Jun 2011 16:37:11 +0200 Subject: [PATCH 2/3] [ADD] Added Dialog widget bzr revid: fme@openerp.com-20110616143711-9h3cmrg35l96tp7g --- addons/base/static/src/js/chrome.js | 60 +++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/addons/base/static/src/js/chrome.js b/addons/base/static/src/js/chrome.js index 9ce0efa8d9f..42a314f4316 100644 --- a/addons/base/static/src/js/chrome.js +++ b/addons/base/static/src/js/chrome.js @@ -737,6 +737,66 @@ openerp.base.BaseWidget = openerp.base.Controller.extend({ } }); +openerp.base.Dialog = openerp.base.BaseWidget.extend({ + dialog_title: "", + identifier_prefix: 'dialog', + init: function (session, options) { + this._super(null, session); + options = _.extend({ + modal: true, + title: this.dialog_title, + width: '700px', + min_width: 0, + max_width: '100%', + height: '500px', + min_height: 0, + max_height: '100%', + buttons: {} + }, options); + + options.width = this.get_width(options.width); + options.min_width = this.get_width(options.min_width); + options.max_width = this.get_width(options.max_width); + options.height = this.get_height(options.height); + options.min_height = this.get_height(options.min_height); + options.max_height = this.get_height(options.max_height); + + if (options.width > options.max_width) options.width = options.max_width; + if (options.width < options.min_width) options.width = options.min_width; + if (options.height > options.max_height) options.height = options.max_height; + if (options.height < options.min_height) options.height = options.min_height; + + for (var f in this) { + if (f.substr(0, 10) == 'on_button_') { + options.buttons[f.substr(10)] = this[f]; + } + } + this.options = options; + }, + get_width: function(val) { + return this.get_size(val.toString(), $(window.top).width()); + }, + get_height: function(val) { + return this.get_size(val.toString(), $(window.top).height()); + }, + get_size: function(val, available_size) { + if (val == 'auto') { + return val; + } else if (val.slice(-1) == "%") { + return Math.round(available_size / 100 * parseInt(val.slice(0, -1), 10)); + } else { + return parseInt(val, 10); + } + }, + start: function () { + this.$dialog = $('
').dialog(this.options); + this._super(); + }, + stop: function () { + this.$dialog("destroy").remove(); + } +}); + openerp.base.CrashManager = openerp.base.Controller.extend({ init: function(session, element_id) { this._super(session, element_id); From 9d875faf7f12e8026feab5591ce61ac4d03c0f09 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Wed, 15 Jun 2011 17:40:15 +0200 Subject: [PATCH 3/3] [imp] minimal improvements to search/create popup bzr revid: nicolas.vanhoren@openerp.com-20110615154015-qt7qgwlifcmcydek --- addons/base/static/src/js/form.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/addons/base/static/src/js/form.js b/addons/base/static/src/js/form.js index ba6b996e917..e7dde028236 100644 --- a/addons/base/static/src/js/form.js +++ b/addons/base/static/src/js/form.js @@ -1308,10 +1308,10 @@ openerp.base.form.FieldMany2Many = openerp.base.form.Field.extend({ 'addable': 'Add' }); this.list_view.m2m_field = this; - this.list_view.start(); this.list_view.on_loaded.add_last(function() { self.is_started.resolve(); }); + this.list_view.start(); $.when(this.is_started, this.is_setted).then(function() { self.list_view.reload_content(); }); @@ -1377,7 +1377,7 @@ openerp.base.form.Many2XSelectPopup = openerp.base.BaseWidget.extend({ start: function() { this._super(); this.dataset = new openerp.base.DataSetSearch(this.session, this.model); - if (this.options.initial_view == "search") { + if (this.options.initial_view || "search" == "search") { this.setup_search_view(); } else { // "form" this.new_object(); @@ -1390,7 +1390,8 @@ openerp.base.form.Many2XSelectPopup = openerp.base.BaseWidget.extend({ } this.searchview = new openerp.base.SearchView(null, this.session, this.element_id + "_search", this.dataset, false, { - "selectable": !this.options.disable_multiple_selection + "selectable": !this.options.disable_multiple_selection, + "deletable": false }); this.searchview.on_search.add(function(domains, contexts, groupbys) { if (self.initial_ids) {