[ADD] translatable name to views
lp bug: https://launchpad.net/bugs/904989 fixed bzr revid: xmo@openerp.com-20111216112054-xys9q3ap6dcatppr
This commit is contained in:
parent
b3a04d317b
commit
265d9e1ef4
|
@ -254,14 +254,16 @@ openerp.web.Registry = openerp.web.Class.extend( /** @lends openerp.web.Registry
|
||||||
* Retrieves the object matching the provided key string.
|
* Retrieves the object matching the provided key string.
|
||||||
*
|
*
|
||||||
* @param {String} key the key to fetch the object for
|
* @param {String} key the key to fetch the object for
|
||||||
|
* @param {Boolean} [silent_error=false] returns undefined if the key or object is not found, rather than throwing an exception
|
||||||
* @returns {Class} the stored class, to initialize
|
* @returns {Class} the stored class, to initialize
|
||||||
*
|
*
|
||||||
* @throws {openerp.web.KeyNotFound} if the object was not in the mapping
|
* @throws {openerp.web.KeyNotFound} if the object was not in the mapping
|
||||||
* @throws {openerp.web.ObjectNotFound} if the object path was invalid
|
* @throws {openerp.web.ObjectNotFound} if the object path was invalid
|
||||||
*/
|
*/
|
||||||
get_object: function (key) {
|
get_object: function (key, silent_error) {
|
||||||
var path_string = this.map[key];
|
var path_string = this.map[key];
|
||||||
if (path_string === undefined) {
|
if (path_string === undefined) {
|
||||||
|
if (silent_error) { return void 'nooo'; }
|
||||||
throw new openerp.web.KeyNotFound(key);
|
throw new openerp.web.KeyNotFound(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -272,6 +274,7 @@ openerp.web.Registry = openerp.web.Class.extend( /** @lends openerp.web.Registry
|
||||||
object_match = object_match[path[i]];
|
object_match = object_match[path[i]];
|
||||||
|
|
||||||
if (object_match === undefined) {
|
if (object_match === undefined) {
|
||||||
|
if (silent_error) { return void 'noooooo'; }
|
||||||
throw new openerp.web.ObjectNotFound(path_string);
|
throw new openerp.web.ObjectNotFound(path_string);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
|
||||||
readonly : false,
|
readonly : false,
|
||||||
form_template: "FormView",
|
form_template: "FormView",
|
||||||
identifier_prefix: 'formview-',
|
identifier_prefix: 'formview-',
|
||||||
|
display_name: {toString: function () { return _t('Form'); }},
|
||||||
/**
|
/**
|
||||||
* @constructs openerp.web.FormView
|
* @constructs openerp.web.FormView
|
||||||
* @extends openerp.web.View
|
* @extends openerp.web.View
|
||||||
|
|
|
@ -4,6 +4,7 @@ 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# */ {
|
||||||
_template: 'ListView',
|
_template: 'ListView',
|
||||||
|
display_name: {toString: function () { return _t('List'); }},
|
||||||
defaults: {
|
defaults: {
|
||||||
// records can be selected one by one
|
// records can be selected one by one
|
||||||
'selectable': true,
|
'selectable': true,
|
||||||
|
|
|
@ -5,6 +5,7 @@ openerp.web.page = function (openerp) {
|
||||||
openerp.web.views.add('page', 'openerp.web.PageView');
|
openerp.web.views.add('page', 'openerp.web.PageView');
|
||||||
openerp.web.PageView = openerp.web.FormView.extend({
|
openerp.web.PageView = openerp.web.FormView.extend({
|
||||||
form_template: "PageView",
|
form_template: "PageView",
|
||||||
|
display_name: {toString: function () { return _t('Page'); }},
|
||||||
init: function () {
|
init: function () {
|
||||||
this._super.apply(this, arguments);
|
this._super.apply(this, arguments);
|
||||||
this.registry = openerp.web.page.readonly;
|
this.registry = openerp.web.page.readonly;
|
||||||
|
|
|
@ -3,10 +3,12 @@
|
||||||
*---------------------------------------------------------*/
|
*---------------------------------------------------------*/
|
||||||
|
|
||||||
openerp.web.view_tree = function(openerp) {
|
openerp.web.view_tree = function(openerp) {
|
||||||
var QWeb = openerp.web.qweb;
|
var QWeb = openerp.web.qweb,
|
||||||
|
_t = openerp.web._t;
|
||||||
|
|
||||||
openerp.web.views.add('tree', 'openerp.web.TreeView');
|
openerp.web.views.add('tree', 'openerp.web.TreeView');
|
||||||
openerp.web.TreeView = openerp.web.View.extend(/** @lends openerp.web.TreeView# */{
|
openerp.web.TreeView = openerp.web.View.extend(/** @lends openerp.web.TreeView# */{
|
||||||
|
display_name: {toString: function () { return _t('Tree'); }},
|
||||||
/**
|
/**
|
||||||
* Indicates that this view is not searchable, and thus that no search
|
* Indicates that this view is not searchable, and thus that no search
|
||||||
* view should be displayed (if there is one active).
|
* view should be displayed (if there is one active).
|
||||||
|
|
|
@ -210,7 +210,18 @@ session.web.ViewManager = session.web.Widget.extend(/** @lends session.web.View
|
||||||
this.dataset = dataset;
|
this.dataset = dataset;
|
||||||
this.searchview = null;
|
this.searchview = null;
|
||||||
this.active_view = null;
|
this.active_view = null;
|
||||||
this.views_src = _.map(views, function(x) {return x instanceof Array? {view_id: x[0], view_type: x[1]} : x;});
|
this.views_src = _.map(views, function(x) {
|
||||||
|
if (x instanceof Array) {
|
||||||
|
var View = session.web.views.get_object(x[1], true);
|
||||||
|
return {
|
||||||
|
view_id: x[0],
|
||||||
|
view_type: x[1],
|
||||||
|
label: View ? View.prototype.display_name : (void 'nope')
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
return x;
|
||||||
|
}
|
||||||
|
});
|
||||||
this.views = {};
|
this.views = {};
|
||||||
this.flags = flags || {};
|
this.flags = flags || {};
|
||||||
this.registry = session.web.views;
|
this.registry = session.web.views;
|
||||||
|
@ -967,6 +978,8 @@ session.web.TranslateDialog = session.web.Dialog.extend({
|
||||||
|
|
||||||
session.web.View = session.web.Widget.extend(/** @lends session.web.View# */{
|
session.web.View = session.web.Widget.extend(/** @lends session.web.View# */{
|
||||||
template: "EmptyComponent",
|
template: "EmptyComponent",
|
||||||
|
// name displayed in view switchers
|
||||||
|
display_name: '',
|
||||||
set_default_options: function(options) {
|
set_default_options: function(options) {
|
||||||
this.options = options || {};
|
this.options = options || {};
|
||||||
_.defaults(this.options, {
|
_.defaults(this.options, {
|
||||||
|
|
|
@ -424,7 +424,7 @@
|
||||||
<div class="oe_vm_switch">
|
<div class="oe_vm_switch">
|
||||||
<t t-if="views.length != 1" t-foreach="views" t-as="view">
|
<t t-if="views.length != 1" t-foreach="views" t-as="view">
|
||||||
<button type="button" t-att-data-view-type="view.view_type">
|
<button type="button" t-att-data-view-type="view.view_type">
|
||||||
<t t-esc="view.view_type"/>
|
<t t-esc="view.label || view.view_type"/>
|
||||||
</button>
|
</button>
|
||||||
</t>
|
</t>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -7,6 +7,7 @@ var _t = openerp.web._t;
|
||||||
var QWeb = openerp.web.qweb;
|
var QWeb = openerp.web.qweb;
|
||||||
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({
|
||||||
|
display_name: {toString: function () { return _t('Calendar'); }},
|
||||||
// Dhtmlx scheduler ?
|
// Dhtmlx scheduler ?
|
||||||
init: function(parent, dataset, view_id, options) {
|
init: function(parent, dataset, view_id, options) {
|
||||||
this._super(parent);
|
this._super(parent);
|
||||||
|
|
|
@ -7,6 +7,7 @@ var QWeb = openerp.web.qweb,
|
||||||
_t = openerp.web._t;
|
_t = openerp.web._t;
|
||||||
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({
|
||||||
|
display_name: {toString: function () { return _t('Diagram'); }},
|
||||||
searchable: false,
|
searchable: false,
|
||||||
init: function(parent, dataset, view_id, options) {
|
init: function(parent, dataset, view_id, options) {
|
||||||
this._super(parent);
|
this._super(parent);
|
||||||
|
|
|
@ -6,6 +6,7 @@ var _t = openerp.web._t;
|
||||||
var QWeb = openerp.web.qweb;
|
var QWeb = openerp.web.qweb;
|
||||||
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({
|
||||||
|
display_name: {toString: function () { return _t('Gantt'); }},
|
||||||
|
|
||||||
init: function(parent, dataset, view_id) {
|
init: function(parent, dataset, view_id) {
|
||||||
this._super(parent);
|
this._super(parent);
|
||||||
|
|
|
@ -12,9 +12,11 @@ var COLOR_PALETTE = [
|
||||||
'#ad7fa8', '#729fcf', '#8ae234', '#e9b96e', '#fce94f', '#f57900',
|
'#ad7fa8', '#729fcf', '#8ae234', '#e9b96e', '#fce94f', '#f57900',
|
||||||
'#cc0000', '#d400a8'];
|
'#cc0000', '#d400a8'];
|
||||||
|
|
||||||
var QWeb = openerp.web.qweb;
|
var QWeb = openerp.web.qweb,
|
||||||
|
_t = openerp.web._t;
|
||||||
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({
|
||||||
|
display_name: {toString: function () { return _t('Graph'); }},
|
||||||
|
|
||||||
init: function(parent, dataset, view_id, options) {
|
init: function(parent, dataset, view_id, options) {
|
||||||
this._super(parent);
|
this._super(parent);
|
||||||
|
|
|
@ -6,6 +6,7 @@ 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({
|
||||||
template: "KanbanView",
|
template: "KanbanView",
|
||||||
|
display_name: {toString: function () { return _t('Kanban'); }},
|
||||||
default_nr_columns: 3,
|
default_nr_columns: 3,
|
||||||
init: function (parent, dataset, view_id, options) {
|
init: function (parent, dataset, view_id, options) {
|
||||||
this._super(parent);
|
this._super(parent);
|
||||||
|
|
Loading…
Reference in New Issue