odoo-addon-base-view-inheritance-extension 19.0.1.0.0.2__py3-none-any.whl → 19.0.1.0.0.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- odoo/addons/base_view_inheritance_extension/README.rst +43 -2
- odoo/addons/base_view_inheritance_extension/__manifest__.py +1 -0
- odoo/addons/base_view_inheritance_extension/i18n/base_view_inheritance_extension.pot +18 -0
- odoo/addons/base_view_inheritance_extension/models/ir_ui_view.py +80 -0
- odoo/addons/base_view_inheritance_extension/readme/CONTRIBUTORS.md +1 -1
- odoo/addons/base_view_inheritance_extension/readme/USAGE.md +33 -0
- odoo/addons/base_view_inheritance_extension/static/description/index.html +30 -2
- odoo/addons/base_view_inheritance_extension/tests/test_base_view_inheritance_extension.py +45 -0
- {odoo_addon_base_view_inheritance_extension-19.0.1.0.0.2.dist-info → odoo_addon_base_view_inheritance_extension-19.0.1.0.0.6.dist-info}/METADATA +44 -3
- {odoo_addon_base_view_inheritance_extension-19.0.1.0.0.2.dist-info → odoo_addon_base_view_inheritance_extension-19.0.1.0.0.6.dist-info}/RECORD +12 -12
- {odoo_addon_base_view_inheritance_extension-19.0.1.0.0.2.dist-info → odoo_addon_base_view_inheritance_extension-19.0.1.0.0.6.dist-info}/WHEEL +0 -0
- {odoo_addon_base_view_inheritance_extension-19.0.1.0.0.2.dist-info → odoo_addon_base_view_inheritance_extension-19.0.1.0.0.6.dist-info}/top_level.txt +0 -0
|
@@ -11,7 +11,7 @@ Extended view inheritance
|
|
|
11
11
|
!! This file is generated by oca-gen-addon-readme !!
|
|
12
12
|
!! changes will be overwritten. !!
|
|
13
13
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
14
|
-
!! source digest: sha256:
|
|
14
|
+
!! source digest: sha256:9089555b5aea01b23ff4a0350d6fd69589d63f1beb4e272ed5a96eebf05b2a81
|
|
15
15
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
16
16
|
|
|
17
17
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
|
|
@@ -76,6 +76,39 @@ conditional changes**
|
|
|
76
76
|
$domain_to_add
|
|
77
77
|
</attribute>
|
|
78
78
|
|
|
79
|
+
**Wrap loose text in an element for further processing**
|
|
80
|
+
|
|
81
|
+
.. code:: xml
|
|
82
|
+
|
|
83
|
+
<wraptext expr="//some/node" position="text" element="span" />
|
|
84
|
+
<wraptext expr="//some/node/other_node" position="tail" element="div" />
|
|
85
|
+
|
|
86
|
+
which transforms
|
|
87
|
+
|
|
88
|
+
.. code:: xml
|
|
89
|
+
|
|
90
|
+
<some>
|
|
91
|
+
<node>
|
|
92
|
+
plain text 1
|
|
93
|
+
<other_node />
|
|
94
|
+
plain text2
|
|
95
|
+
</node>
|
|
96
|
+
</some>
|
|
97
|
+
|
|
98
|
+
to
|
|
99
|
+
|
|
100
|
+
.. code:: xml
|
|
101
|
+
|
|
102
|
+
<some>
|
|
103
|
+
<node>
|
|
104
|
+
<span>plain text 1</span>
|
|
105
|
+
<other_node />
|
|
106
|
+
<div>plain text2</div>
|
|
107
|
+
</node>
|
|
108
|
+
</some>
|
|
109
|
+
|
|
110
|
+
making those texts accessible for further operations
|
|
111
|
+
|
|
79
112
|
Known issues / Roadmap
|
|
80
113
|
======================
|
|
81
114
|
|
|
@@ -102,7 +135,7 @@ Authors
|
|
|
102
135
|
Contributors
|
|
103
136
|
------------
|
|
104
137
|
|
|
105
|
-
- Holger Brunn <
|
|
138
|
+
- Holger Brunn <mail@hunki-enterprises.com>
|
|
106
139
|
- Ronald Portier <rportier@therp.nl>
|
|
107
140
|
- `Tecnativa <https://www.tecnativa.com>`__:
|
|
108
141
|
|
|
@@ -129,6 +162,14 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
|
|
|
129
162
|
mission is to support the collaborative development of Odoo features and
|
|
130
163
|
promote its widespread use.
|
|
131
164
|
|
|
165
|
+
.. |maintainer-hbrunn| image:: https://github.com/hbrunn.png?size=40px
|
|
166
|
+
:target: https://github.com/hbrunn
|
|
167
|
+
:alt: hbrunn
|
|
168
|
+
|
|
169
|
+
Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
|
|
170
|
+
|
|
171
|
+
|maintainer-hbrunn|
|
|
172
|
+
|
|
132
173
|
This module is part of the `OCA/server-tools <https://github.com/OCA/server-tools/tree/19.0/base_view_inheritance_extension>`_ project on GitHub.
|
|
133
174
|
|
|
134
175
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
|
@@ -27,3 +27,21 @@ msgstr ""
|
|
|
27
27
|
#: model:ir.model,name:base_view_inheritance_extension.model_ir_ui_view
|
|
28
28
|
msgid "View"
|
|
29
29
|
msgstr ""
|
|
30
|
+
|
|
31
|
+
#. module: base_view_inheritance_extension
|
|
32
|
+
#. odoo-python
|
|
33
|
+
#: code:addons/base_view_inheritance_extension/models/ir_ui_view.py:0
|
|
34
|
+
msgid "wraptext elements cannot have children"
|
|
35
|
+
msgstr ""
|
|
36
|
+
|
|
37
|
+
#. module: base_view_inheritance_extension
|
|
38
|
+
#. odoo-python
|
|
39
|
+
#: code:addons/base_view_inheritance_extension/models/ir_ui_view.py:0
|
|
40
|
+
msgid "wraptext: nothing found for expression %r"
|
|
41
|
+
msgstr ""
|
|
42
|
+
|
|
43
|
+
#. module: base_view_inheritance_extension
|
|
44
|
+
#. odoo-python
|
|
45
|
+
#: code:addons/base_view_inheritance_extension/models/ir_ui_view.py:0
|
|
46
|
+
msgid "wraptext: the only valid positions are 'text' or 'tail'"
|
|
47
|
+
msgstr ""
|
|
@@ -9,6 +9,7 @@ import re
|
|
|
9
9
|
from lxml import etree
|
|
10
10
|
|
|
11
11
|
from odoo import api, models
|
|
12
|
+
from odoo.exceptions import ValidationError
|
|
12
13
|
from odoo.fields import Domain
|
|
13
14
|
|
|
14
15
|
|
|
@@ -83,6 +84,85 @@ class IrUiView(models.Model):
|
|
|
83
84
|
handler = getattr(self, f"inheritance_handler_{node.tag}")
|
|
84
85
|
return handler
|
|
85
86
|
|
|
87
|
+
@api.model
|
|
88
|
+
def inheritance_handler_wraptext(self, source, specs):
|
|
89
|
+
"""Implement wraptext inheritance spec
|
|
90
|
+
|
|
91
|
+
.. code-block:: xml
|
|
92
|
+
|
|
93
|
+
<wraptext expr="//some/node" position="text" element="span" />
|
|
94
|
+
|
|
95
|
+
Which transforms xml like
|
|
96
|
+
|
|
97
|
+
.. code-block:: xml
|
|
98
|
+
|
|
99
|
+
<some>
|
|
100
|
+
<node>
|
|
101
|
+
plain text
|
|
102
|
+
<other_node />
|
|
103
|
+
</node>
|
|
104
|
+
</some>
|
|
105
|
+
|
|
106
|
+
to
|
|
107
|
+
|
|
108
|
+
.. code-block:: xml
|
|
109
|
+
|
|
110
|
+
<some>
|
|
111
|
+
<node>
|
|
112
|
+
<span>plain text</span>
|
|
113
|
+
<other_node />
|
|
114
|
+
</node>
|
|
115
|
+
</some>
|
|
116
|
+
|
|
117
|
+
"""
|
|
118
|
+
if len(specs):
|
|
119
|
+
raise ValidationError(self.env._("wraptext elements cannot have children"))
|
|
120
|
+
|
|
121
|
+
expression = specs.attrib.get("expr")
|
|
122
|
+
found = source.xpath(specs.attrib["expr"])
|
|
123
|
+
if not found:
|
|
124
|
+
raise ValidationError(
|
|
125
|
+
self.env._("wraptext: nothing found for expression %r", expression)
|
|
126
|
+
)
|
|
127
|
+
|
|
128
|
+
found = found[0]
|
|
129
|
+
text_position = specs.attrib.get("position", "text")
|
|
130
|
+
if text_position not in ("text", "tail"):
|
|
131
|
+
raise ValidationError(
|
|
132
|
+
self.env._("wraptext: the only valid positions are 'text' or 'tail'")
|
|
133
|
+
)
|
|
134
|
+
|
|
135
|
+
wrapped = etree.Element(specs.attrib.get("element", "t"))
|
|
136
|
+
wrapped.text = getattr(found, text_position)
|
|
137
|
+
setattr(found, text_position, None)
|
|
138
|
+
|
|
139
|
+
if self.env.context.get("edit_translations") and not wrapped.text:
|
|
140
|
+
# translation might have wrapped the text already in a <span> element
|
|
141
|
+
# we wrap this element so that subsequent view manipulations find
|
|
142
|
+
# the wrapped element at the same position in the tree it would be at
|
|
143
|
+
# without translation
|
|
144
|
+
next_sibling = found.getnext()
|
|
145
|
+
|
|
146
|
+
if (
|
|
147
|
+
text_position == "text"
|
|
148
|
+
and len(found)
|
|
149
|
+
and found[0].attrib.get("data-oe-translation-state")
|
|
150
|
+
):
|
|
151
|
+
wrapped.append(found[0])
|
|
152
|
+
elif (
|
|
153
|
+
text_position == "tail"
|
|
154
|
+
and next_sibling is not None
|
|
155
|
+
and next_sibling.attrib.get("data-oe-translation-state")
|
|
156
|
+
):
|
|
157
|
+
wrapped.append(next_sibling)
|
|
158
|
+
|
|
159
|
+
if text_position == "text":
|
|
160
|
+
found.insert(0, wrapped)
|
|
161
|
+
elif text_position == "tail":
|
|
162
|
+
found.addnext(wrapped)
|
|
163
|
+
|
|
164
|
+
return source
|
|
165
|
+
|
|
86
166
|
@api.model
|
|
87
167
|
def _get_inheritance_handler_attributes(self, node):
|
|
88
168
|
handler = super().apply_inheritance_specs
|
|
@@ -30,3 +30,36 @@ conditional changes**
|
|
|
30
30
|
$domain_to_add
|
|
31
31
|
</attribute>
|
|
32
32
|
```
|
|
33
|
+
|
|
34
|
+
**Wrap loose text in an element for further processing**
|
|
35
|
+
|
|
36
|
+
``` xml
|
|
37
|
+
<wraptext expr="//some/node" position="text" element="span" />
|
|
38
|
+
<wraptext expr="//some/node/other_node" position="tail" element="div" />
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
which transforms
|
|
42
|
+
|
|
43
|
+
``` xml
|
|
44
|
+
<some>
|
|
45
|
+
<node>
|
|
46
|
+
plain text 1
|
|
47
|
+
<other_node />
|
|
48
|
+
plain text2
|
|
49
|
+
</node>
|
|
50
|
+
</some>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
to
|
|
54
|
+
|
|
55
|
+
``` xml
|
|
56
|
+
<some>
|
|
57
|
+
<node>
|
|
58
|
+
<span>plain text 1</span>
|
|
59
|
+
<other_node />
|
|
60
|
+
<div>plain text2</div>
|
|
61
|
+
</node>
|
|
62
|
+
</some>
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
making those texts accessible for further operations
|
|
@@ -372,7 +372,7 @@ ul.auto-toc {
|
|
|
372
372
|
!! This file is generated by oca-gen-addon-readme !!
|
|
373
373
|
!! changes will be overwritten. !!
|
|
374
374
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
375
|
-
!! source digest: sha256:
|
|
375
|
+
!! source digest: sha256:9089555b5aea01b23ff4a0350d6fd69589d63f1beb4e272ed5a96eebf05b2a81
|
|
376
376
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
|
377
377
|
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Mature" src="https://img.shields.io/badge/maturity-Mature-brightgreen.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/lgpl-3.0-standalone.html"><img alt="License: LGPL-3" src="https://img.shields.io/badge/license-LGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/server-tools/tree/19.0/base_view_inheritance_extension"><img alt="OCA/server-tools" src="https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/server-tools-19-0/server-tools-19-0-base_view_inheritance_extension"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/server-tools&target_branch=19.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
|
378
378
|
<p>This module was written to make it simple to add custom operators for
|
|
@@ -419,6 +419,32 @@ conditional changes</strong></p>
|
|
|
419
419
|
</span>$domain_to_add<span class="w">
|
|
420
420
|
</span><span class="nt"></attribute></span>
|
|
421
421
|
</pre>
|
|
422
|
+
<p><strong>Wrap loose text in an element for further processing</strong></p>
|
|
423
|
+
<pre class="code xml literal-block">
|
|
424
|
+
<span class="nt"><wraptext</span><span class="w"> </span><span class="na">expr=</span><span class="s">"//some/node"</span><span class="w"> </span><span class="na">position=</span><span class="s">"text"</span><span class="w"> </span><span class="na">element=</span><span class="s">"span"</span><span class="w"> </span><span class="nt">/></span><span class="w">
|
|
425
|
+
</span><span class="nt"><wraptext</span><span class="w"> </span><span class="na">expr=</span><span class="s">"//some/node/other_node"</span><span class="w"> </span><span class="na">position=</span><span class="s">"tail"</span><span class="w"> </span><span class="na">element=</span><span class="s">"div"</span><span class="w"> </span><span class="nt">/></span>
|
|
426
|
+
</pre>
|
|
427
|
+
<p>which transforms</p>
|
|
428
|
+
<pre class="code xml literal-block">
|
|
429
|
+
<span class="nt"><some></span><span class="w">
|
|
430
|
+
</span><span class="nt"><node></span><span class="w">
|
|
431
|
+
</span>plain<span class="w"> </span>text<span class="w"> </span>1<span class="w">
|
|
432
|
+
</span><span class="nt"><other_node</span><span class="w"> </span><span class="nt">/></span><span class="w">
|
|
433
|
+
</span>plain<span class="w"> </span>text2<span class="w">
|
|
434
|
+
</span><span class="nt"></node></span><span class="w">
|
|
435
|
+
</span><span class="nt"></some></span>
|
|
436
|
+
</pre>
|
|
437
|
+
<p>to</p>
|
|
438
|
+
<pre class="code xml literal-block">
|
|
439
|
+
<span class="nt"><some></span><span class="w">
|
|
440
|
+
</span><span class="nt"><node></span><span class="w">
|
|
441
|
+
</span><span class="nt"><span></span>plain<span class="w"> </span>text<span class="w"> </span>1<span class="nt"></span></span><span class="w">
|
|
442
|
+
</span><span class="nt"><other_node</span><span class="w"> </span><span class="nt">/></span><span class="w">
|
|
443
|
+
</span><span class="nt"><div></span>plain<span class="w"> </span>text2<span class="nt"></div></span><span class="w">
|
|
444
|
+
</span><span class="nt"></node></span><span class="w">
|
|
445
|
+
</span><span class="nt"></some></span>
|
|
446
|
+
</pre>
|
|
447
|
+
<p>making those texts accessible for further operations</p>
|
|
422
448
|
</div>
|
|
423
449
|
<div class="section" id="known-issues-roadmap">
|
|
424
450
|
<h2><a class="toc-backref" href="#toc-entry-2">Known issues / Roadmap</a></h2>
|
|
@@ -445,7 +471,7 @@ If you spotted it first, help us to smash it by providing a detailed and welcome
|
|
|
445
471
|
<div class="section" id="contributors">
|
|
446
472
|
<h3><a class="toc-backref" href="#toc-entry-6">Contributors</a></h3>
|
|
447
473
|
<ul class="simple">
|
|
448
|
-
<li>Holger Brunn <<a class="reference external" href="mailto:
|
|
474
|
+
<li>Holger Brunn <<a class="reference external" href="mailto:mail@hunki-enterprises.com">mail@hunki-enterprises.com</a>></li>
|
|
449
475
|
<li>Ronald Portier <<a class="reference external" href="mailto:rportier@therp.nl">rportier@therp.nl</a>></li>
|
|
450
476
|
<li><a class="reference external" href="https://www.tecnativa.com">Tecnativa</a>:<ul>
|
|
451
477
|
<li>Sergio Teruel</li>
|
|
@@ -469,6 +495,8 @@ If you spotted it first, help us to smash it by providing a detailed and welcome
|
|
|
469
495
|
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
|
|
470
496
|
mission is to support the collaborative development of Odoo features and
|
|
471
497
|
promote its widespread use.</p>
|
|
498
|
+
<p>Current <a class="reference external" href="https://odoo-community.org/page/maintainer-role">maintainer</a>:</p>
|
|
499
|
+
<p><a class="reference external image-reference" href="https://github.com/hbrunn"><img alt="hbrunn" src="https://github.com/hbrunn.png?size=40px" /></a></p>
|
|
472
500
|
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/server-tools/tree/19.0/base_view_inheritance_extension">OCA/server-tools</a> project on GitHub.</p>
|
|
473
501
|
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
|
474
502
|
</div>
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
from lxml import etree
|
|
7
7
|
|
|
8
|
+
from odoo.exceptions import ValidationError
|
|
8
9
|
from odoo.tests.common import TransactionCase
|
|
9
10
|
|
|
10
11
|
|
|
@@ -222,3 +223,47 @@ class TestBaseViewInheritanceExtension(TransactionCase):
|
|
|
222
223
|
)
|
|
223
224
|
with self.assertRaisesRegex(TypeError, "Attribute `domain` is not a dict"):
|
|
224
225
|
self.env["ir.ui.view"].apply_inheritance_specs(source, specs)
|
|
226
|
+
|
|
227
|
+
def test_wraptext(self):
|
|
228
|
+
"""Test textwrap transformations"""
|
|
229
|
+
base_view = self.env["ir.ui.view"].create(
|
|
230
|
+
{
|
|
231
|
+
"type": "qweb",
|
|
232
|
+
"arch": "<some>"
|
|
233
|
+
"<node>plain text 1<other_node />plain text2</node></some>",
|
|
234
|
+
}
|
|
235
|
+
)
|
|
236
|
+
inherited_view = self.env["ir.ui.view"].create(
|
|
237
|
+
{
|
|
238
|
+
"type": "qweb",
|
|
239
|
+
"inherit_id": base_view.id,
|
|
240
|
+
"arch": "<data>"
|
|
241
|
+
'<wraptext expr="//some/node" position="text" element="span" />'
|
|
242
|
+
'<wraptext expr="//some/node/other_node" position="tail" '
|
|
243
|
+
'element="div" />'
|
|
244
|
+
"</data>",
|
|
245
|
+
}
|
|
246
|
+
)
|
|
247
|
+
self.assertEqual(
|
|
248
|
+
base_view.with_context(load_all_views=True).get_combined_arch(),
|
|
249
|
+
"<some><node><span>plain text 1</span><other_node/>"
|
|
250
|
+
"<div>plain text2</div></node></some>",
|
|
251
|
+
)
|
|
252
|
+
translatable_arch = base_view.with_context(
|
|
253
|
+
load_all_views=True, edit_translations=True
|
|
254
|
+
)._get_combined_arch()
|
|
255
|
+
self.assertTrue(
|
|
256
|
+
translatable_arch.xpath("//some/node/span/span[@data-oe-translation-state]")
|
|
257
|
+
)
|
|
258
|
+
self.assertTrue(
|
|
259
|
+
translatable_arch.xpath("//some/node/div/span[@data-oe-translation-state]")
|
|
260
|
+
)
|
|
261
|
+
|
|
262
|
+
with self.assertRaisesRegex(ValidationError, "children"):
|
|
263
|
+
inherited_view.write({"arch": "<wraptext><node /></wraptext>"})
|
|
264
|
+
with self.assertRaisesRegex(ValidationError, "found"):
|
|
265
|
+
inherited_view.write({"arch": '<wraptext expr="//not/existing" />'})
|
|
266
|
+
with self.assertRaisesRegex(ValidationError, "positions"):
|
|
267
|
+
inherited_view.write(
|
|
268
|
+
{"arch": '<wraptext expr="//some/node" position="other" />'}
|
|
269
|
+
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: odoo-addon-base_view_inheritance_extension
|
|
3
|
-
Version: 19.0.1.0.0.
|
|
3
|
+
Version: 19.0.1.0.0.6
|
|
4
4
|
Requires-Dist: odoo==19.0.*
|
|
5
5
|
Summary: Adds more operators for view inheritance
|
|
6
6
|
Home-page: https://github.com/OCA/server-tools
|
|
@@ -27,7 +27,7 @@ Extended view inheritance
|
|
|
27
27
|
!! This file is generated by oca-gen-addon-readme !!
|
|
28
28
|
!! changes will be overwritten. !!
|
|
29
29
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
30
|
-
!! source digest: sha256:
|
|
30
|
+
!! source digest: sha256:9089555b5aea01b23ff4a0350d6fd69589d63f1beb4e272ed5a96eebf05b2a81
|
|
31
31
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
32
32
|
|
|
33
33
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
|
|
@@ -92,6 +92,39 @@ conditional changes**
|
|
|
92
92
|
$domain_to_add
|
|
93
93
|
</attribute>
|
|
94
94
|
|
|
95
|
+
**Wrap loose text in an element for further processing**
|
|
96
|
+
|
|
97
|
+
.. code:: xml
|
|
98
|
+
|
|
99
|
+
<wraptext expr="//some/node" position="text" element="span" />
|
|
100
|
+
<wraptext expr="//some/node/other_node" position="tail" element="div" />
|
|
101
|
+
|
|
102
|
+
which transforms
|
|
103
|
+
|
|
104
|
+
.. code:: xml
|
|
105
|
+
|
|
106
|
+
<some>
|
|
107
|
+
<node>
|
|
108
|
+
plain text 1
|
|
109
|
+
<other_node />
|
|
110
|
+
plain text2
|
|
111
|
+
</node>
|
|
112
|
+
</some>
|
|
113
|
+
|
|
114
|
+
to
|
|
115
|
+
|
|
116
|
+
.. code:: xml
|
|
117
|
+
|
|
118
|
+
<some>
|
|
119
|
+
<node>
|
|
120
|
+
<span>plain text 1</span>
|
|
121
|
+
<other_node />
|
|
122
|
+
<div>plain text2</div>
|
|
123
|
+
</node>
|
|
124
|
+
</some>
|
|
125
|
+
|
|
126
|
+
making those texts accessible for further operations
|
|
127
|
+
|
|
95
128
|
Known issues / Roadmap
|
|
96
129
|
======================
|
|
97
130
|
|
|
@@ -118,7 +151,7 @@ Authors
|
|
|
118
151
|
Contributors
|
|
119
152
|
------------
|
|
120
153
|
|
|
121
|
-
- Holger Brunn <
|
|
154
|
+
- Holger Brunn <mail@hunki-enterprises.com>
|
|
122
155
|
- Ronald Portier <rportier@therp.nl>
|
|
123
156
|
- `Tecnativa <https://www.tecnativa.com>`__:
|
|
124
157
|
|
|
@@ -145,6 +178,14 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
|
|
|
145
178
|
mission is to support the collaborative development of Odoo features and
|
|
146
179
|
promote its widespread use.
|
|
147
180
|
|
|
181
|
+
.. |maintainer-hbrunn| image:: https://github.com/hbrunn.png?size=40px
|
|
182
|
+
:target: https://github.com/hbrunn
|
|
183
|
+
:alt: hbrunn
|
|
184
|
+
|
|
185
|
+
Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
|
|
186
|
+
|
|
187
|
+
|maintainer-hbrunn|
|
|
188
|
+
|
|
148
189
|
This module is part of the `OCA/server-tools <https://github.com/OCA/server-tools/tree/19.0/base_view_inheritance_extension>`_ project on GitHub.
|
|
149
190
|
|
|
150
191
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
odoo/addons/base_view_inheritance_extension/README.rst,sha256=
|
|
1
|
+
odoo/addons/base_view_inheritance_extension/README.rst,sha256=bPpTwuVzGuH7aGBQc9eMk1RbUeLzYH1aEIgBVC-x3_o,5188
|
|
2
2
|
odoo/addons/base_view_inheritance_extension/__init__.py,sha256=X9EJGOE2GtZbS0G82PtSXmWSZ_R8jEM0rlJTDliQjp4,21
|
|
3
|
-
odoo/addons/base_view_inheritance_extension/__manifest__.py,sha256=
|
|
3
|
+
odoo/addons/base_view_inheritance_extension/__manifest__.py,sha256=JexcyLW9M5Oauk85oOYaJXwpVJt0j3OK3-hOvh32AhQ,595
|
|
4
4
|
odoo/addons/base_view_inheritance_extension/demo/ir_ui_view.xml,sha256=MHPVOGOM6XnNOTsq0ylz1B5r0sPJpRKHLan3K2mZ6sA,1200
|
|
5
|
-
odoo/addons/base_view_inheritance_extension/i18n/base_view_inheritance_extension.pot,sha256=
|
|
5
|
+
odoo/addons/base_view_inheritance_extension/i18n/base_view_inheritance_extension.pot,sha256=q-gDEdipn5UuPHpC6P6M_ZHpW3JNHSGh5JmASj9_Tcg,1437
|
|
6
6
|
odoo/addons/base_view_inheritance_extension/i18n/ca.po,sha256=7ncEf2XfOWoOIlU7jysZhKYtd1KEF7oUHABgxJeEm9Q,1443
|
|
7
7
|
odoo/addons/base_view_inheritance_extension/i18n/de.po,sha256=yaXLt5LJ08bt1zv4h76aKSH0blNmlHOW8ZMI34VOix8,1364
|
|
8
8
|
odoo/addons/base_view_inheritance_extension/i18n/es.po,sha256=iQy3KiLd16FHheppaA1xkRNV7uFkkBiNAGw7wlVIwYE,1458
|
|
@@ -13,16 +13,16 @@ odoo/addons/base_view_inheritance_extension/i18n/nl.po,sha256=GhwvImKVOxKFw8GyAN
|
|
|
13
13
|
odoo/addons/base_view_inheritance_extension/i18n/sl.po,sha256=qcdE0TSP9_F3oCAKT3zL2pJG9Wfntzb6gx08OKIkvlw,1446
|
|
14
14
|
odoo/addons/base_view_inheritance_extension/i18n/tr.po,sha256=S3G6M2N5DNbiTpctuhlJ14hfKa_BJ_v0Ju-4cHu7eQQ,1453
|
|
15
15
|
odoo/addons/base_view_inheritance_extension/models/__init__.py,sha256=SjKfc8ocbCImvP5DpGQbS0hWmQRYPjtzJdyio6TPII0,25
|
|
16
|
-
odoo/addons/base_view_inheritance_extension/models/ir_ui_view.py,sha256=
|
|
17
|
-
odoo/addons/base_view_inheritance_extension/readme/CONTRIBUTORS.md,sha256=
|
|
16
|
+
odoo/addons/base_view_inheritance_extension/models/ir_ui_view.py,sha256=Ly32LApnmlBDbEVksSVcXvtdV_A9hck3aU9P6b8OmZo,10304
|
|
17
|
+
odoo/addons/base_view_inheritance_extension/readme/CONTRIBUTORS.md,sha256=twGLhOqn0hj9V64aQoEEPwLAe6XnicJdvvUABWyAtws,330
|
|
18
18
|
odoo/addons/base_view_inheritance_extension/readme/DESCRIPTION.md,sha256=TC-vXmaSQ5oo7nNl5jxSyurQiz2597hDzQirRGw73BI,88
|
|
19
19
|
odoo/addons/base_view_inheritance_extension/readme/ROADMAP.md,sha256=79XqQ49EvpKp11-P-rimu8Mwklpwor3rkWKFPym9YbA,54
|
|
20
|
-
odoo/addons/base_view_inheritance_extension/readme/USAGE.md,sha256=
|
|
20
|
+
odoo/addons/base_view_inheritance_extension/readme/USAGE.md,sha256=JUcs3LBeorMlOSzQYLVsAO6ERQlNLoT3_GeBdIQ8pIA,1347
|
|
21
21
|
odoo/addons/base_view_inheritance_extension/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
|
|
22
|
-
odoo/addons/base_view_inheritance_extension/static/description/index.html,sha256=
|
|
22
|
+
odoo/addons/base_view_inheritance_extension/static/description/index.html,sha256=a8oLdse7HgvcjLRPX_2P8CFpBSJl5laCHN1e4NKfY8w,18601
|
|
23
23
|
odoo/addons/base_view_inheritance_extension/tests/__init__.py,sha256=kTcGsgnWhpM7vII3sEdNX5XVxDHHqRc5KdrxInG6GSw,51
|
|
24
|
-
odoo/addons/base_view_inheritance_extension/tests/test_base_view_inheritance_extension.py,sha256=
|
|
25
|
-
odoo_addon_base_view_inheritance_extension-19.0.1.0.0.
|
|
26
|
-
odoo_addon_base_view_inheritance_extension-19.0.1.0.0.
|
|
27
|
-
odoo_addon_base_view_inheritance_extension-19.0.1.0.0.
|
|
28
|
-
odoo_addon_base_view_inheritance_extension-19.0.1.0.0.
|
|
24
|
+
odoo/addons/base_view_inheritance_extension/tests/test_base_view_inheritance_extension.py,sha256=HfNUvwVWkXvciOoprNkYqD6JobT2_n9w8qCCddE8X8g,9958
|
|
25
|
+
odoo_addon_base_view_inheritance_extension-19.0.1.0.0.6.dist-info/METADATA,sha256=v_-BF-F2RbwqMY57YTu_TeLxGm0B39Xtqe6P5oQm2JA,5792
|
|
26
|
+
odoo_addon_base_view_inheritance_extension-19.0.1.0.0.6.dist-info/WHEEL,sha256=ZhOvUsYhy81Dx67gN3TV0RchQWBIIzutDZaJODDg2Vo,81
|
|
27
|
+
odoo_addon_base_view_inheritance_extension-19.0.1.0.0.6.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
|
|
28
|
+
odoo_addon_base_view_inheritance_extension-19.0.1.0.0.6.dist-info/RECORD,,
|
|
File without changes
|