From 514db0be98826339bf61d15d7b532ea025172bdc Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Mon, 6 Jun 2011 16:29:27 +0200 Subject: [PATCH] [ADD] Rename feature in dashboards bzr revid: fme@openerp.com-20110606142927-lkg4badlh5u18vgd --- .../static/src/css/dashboard.css | 11 ++++++++ .../base_dashboard/static/src/js/dashboard.js | 26 +++++++++++++++++++ .../static/src/xml/base_dashboard.xml | 4 ++- 3 files changed, 40 insertions(+), 1 deletion(-) diff --git a/addons/base_dashboard/static/src/css/dashboard.css b/addons/base_dashboard/static/src/css/dashboard.css index 4fd734b2e7c..cbd89984c37 100644 --- a/addons/base_dashboard/static/src/css/dashboard.css +++ b/addons/base_dashboard/static/src/css/dashboard.css @@ -14,6 +14,17 @@ padding-bottom: 4px; padding-left: 0.2em } +.openerp a.oe-dashboard-action-rename { + float: left; + padding-right: 4px; + position: relative; + top: 1px; +} +.openerp .oe-dashboard-action-input { + height: 16px; + position: relative; + top: 2px; +} .openerp .oe-dashboard-action .oe-dashboard-action-header:hover { cursor: move; diff --git a/addons/base_dashboard/static/src/js/dashboard.js b/addons/base_dashboard/static/src/js/dashboard.js index 23c784d9a50..52632444c67 100644 --- a/addons/base_dashboard/static/src/js/dashboard.js +++ b/addons/base_dashboard/static/src/js/dashboard.js @@ -38,6 +38,8 @@ openerp.base.form.DashBoard = openerp.base.form.Widget.extend({ }, self.on_load_action); }); }); + + this.$element.find('a.oe-dashboard-action-rename').live('click', this.on_rename); }, on_undo: function() { this.rpc('/base/view/undo_custom', { @@ -114,6 +116,30 @@ openerp.base.form.DashBoard = openerp.base.form.Widget.extend({ }); }); }, + on_rename : function(e) { + var self = this, + id = $(e.currentTarget).parents('.oe-dashboard-action:first').attr('data-id'), + $header = $(e.currentTarget).parents('.oe-dashboard-action-header:first'), + $rename = $header.find('a.oe-dashboard-action-rename').hide(), + $title = $header.find('span.oe-dashboard-action-title').hide(), + $input = $header.find('input[name=title]'); + $input.val($title.text()).show().focus().bind('keydown', function(e) { + if (e.which == 13 || e.which == 27) { + if (e.which == 13) { //enter + var val = $input.val(); + if (!val) { + return false; + } + $title.text(val); + self.actions_attrs[id].string = val; + self.do_save_dashboard(); + } + $input.unbind('keydown').hide(); + $rename.show(); + $title.show(); + } + }); + }, on_change_layout: function() { var self = this; var qdict = { diff --git a/addons/base_dashboard/static/src/xml/base_dashboard.xml b/addons/base_dashboard/static/src/xml/base_dashboard.xml index dc65a71b8fc..c752b670f4f 100644 --- a/addons/base_dashboard/static/src/xml/base_dashboard.xml +++ b/addons/base_dashboard/static/src/xml/base_dashboard.xml @@ -29,7 +29,9 @@
- + + +