Skip to content

Commit

Permalink
Merge 113ef73 into 4eb3831
Browse files Browse the repository at this point in the history
  • Loading branch information
jarroyomorales committed Dec 24, 2019
2 parents 4eb3831 + 113ef73 commit edff0fc
Show file tree
Hide file tree
Showing 6 changed files with 764 additions and 20 deletions.
92 changes: 78 additions & 14 deletions web_tree_dynamic_colored_field/README.rst
@@ -1,11 +1,30 @@
.. image:: https://img.shields.io/badge/license-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3

============================
Colorize field in tree views
============================

.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github
:target: https://github.com/OCA/web/tree/11.0/web_tree_dynamic_colored_field
:alt: OCA/web
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/web-11-0/web-11-0-web_tree_dynamic_colored_field
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/162/11.0
:alt: Try me on Runbot

|badge1| |badge2| |badge3| |badge4| |badge5|

This module aims to add support for dynamically coloring fields in tree view
according to data in the record.

Expand All @@ -21,6 +40,12 @@ Features
* Add attribute ``bg_color`` on field's ``options`` to color background of a cell in tree view
* Add attribute ``fg_color`` on field's ``options`` to change text color of a cell in tree view
* Add attribute ``color_field`` on the tree element's ``colors`` to use as color
* Add attribute ``background_color_field`` on the tree element's ``colors`` to use as background-color

**Table of contents**

.. contents::
:local:

Usage
=====
Expand All @@ -39,6 +64,20 @@ Usage

With this example, column which renders 'name' field will have its background colored in red.

* In the tree view declaration, put ``options='{"bg_color": "color_field"}`` attribute in the ``field`` tag::

...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options='{"bg_color": "color_field"}'/>
...
</tree>
</field>
...

With this example, column which renders 'name' field will have its background colored in color_field's value.

* In the tree view declaration, put ``options='{"fg_color": "white:customer == True"}'`` attribute in the ``field`` tag::

...
Expand All @@ -65,6 +104,19 @@ Usage
</field>
...

* In the tree view declaration, use ``options='"background_color_field": "my_color"'`` attribute in the ``tree`` tag::

...
<field name="arch" type="xml">
<tree string="View name" colors="background_color_field: my_color" >
...
<field name="my_color" invisible="1"/>
...
</tree>
</field>
...


* If you want to use more than one color, you can split the attributes using ';':

.. code::
Expand Down Expand Up @@ -96,33 +148,45 @@ Example:
Bug Tracker
===========

Bugs are tracked on `GitHub Issues
<https://github.com/OCA/web/issues>`_. In case of trouble, please
check there if your issue has already been reported. If you spotted it first,
help us smash it by providing a detailed and welcomed feedback.
Bugs are tracked on `GitHub Issues <https://github.com/OCA/web/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
`feedback <https://github.com/OCA/web/issues/new?body=module:%20web_tree_dynamic_colored_field%0Aversion:%2011.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
~~~~~~~

* Camptocamp
* Therp BV

Contributors
------------
~~~~~~~~~~~~

* Damien Crier <damien.crier@camptocamp.com>
* Holger Brunn <hbrunn@therp.nl>
* Artem Kostyuk <a.kostyuk@mobilunity.com>
* Guewen Baconnier <guewen.baconnier@camptocamp.com>
* Enric Tobella <etobella@creublanca.es>
* Jaime Arroyo <jaime.arroyo@creublanca.es>

Maintainers
~~~~~~~~~~~

Maintainer
----------
This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

This module is maintained by the OCA.

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

To contribute to this module, please visit https://odoo-community.org.
This module is part of the `OCA/web <https://github.com/OCA/web/tree/11.0/web_tree_dynamic_colored_field>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
6 changes: 6 additions & 0 deletions web_tree_dynamic_colored_field/readme/CONTRIBUTORS.rst
@@ -0,0 +1,6 @@
* Damien Crier <damien.crier@camptocamp.com>
* Holger Brunn <hbrunn@therp.nl>
* Artem Kostyuk <a.kostyuk@mobilunity.com>
* Guewen Baconnier <guewen.baconnier@camptocamp.com>
* Enric Tobella <etobella@creublanca.es>
* Jaime Arroyo <jaime.arroyo@creublanca.es>
16 changes: 16 additions & 0 deletions web_tree_dynamic_colored_field/readme/DESCRIPTION.rst
@@ -0,0 +1,16 @@
This module aims to add support for dynamically coloring fields in tree view
according to data in the record.

It provides attributes on fields with the similar syntax as the ``colors`` attribute
in tree tags.

Further, it provides a ``color_field`` attribute on tree tags's ``colors`` to use
a field's value as color.

Features
========

* Add attribute ``bg_color`` on field's ``options`` to color background of a cell in tree view
* Add attribute ``fg_color`` on field's ``options`` to change text color of a cell in tree view
* Add attribute ``color_field`` on the tree element's ``colors`` to use as color
* Add attribute ``background_color_field`` on the tree element's ``colors`` to use as background-color
94 changes: 94 additions & 0 deletions web_tree_dynamic_colored_field/readme/USAGE.rst
@@ -0,0 +1,94 @@
* In the tree view declaration, put ``options='{"bg_color": "red: customer==True"}`` attribute in the ``field`` tag::

...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options='{"bg_color": "red: customer == True"}'/>
...
</tree>
</field>
...

With this example, column which renders 'name' field will have its background colored in red.

* In the tree view declaration, put ``options='{"bg_color": "color_field"}`` attribute in the ``field`` tag::

...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options='{"bg_color": "color_field"}'/>
...
</tree>
</field>
...

With this example, column which renders 'name' field will have its background colored in color_field's value.

* In the tree view declaration, put ``options='{"fg_color": "white:customer == True"}'`` attribute in the ``field`` tag::

...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options='{"fg_color": "white:customer == True"}'/>
...
</tree>
</field>
...

With this example, column which renders 'name' field will have its text colored in white on a customer records.

* In the tree view declaration, use ``options='"color_field": "my_color"'`` attribute in the ``tree`` tag::

...
<field name="arch" type="xml">
<tree string="View name" colors="color_field: my_color" >
...
<field name="my_color" invisible="1"/>
...
</tree>
</field>
...

* In the tree view declaration, use ``options='"background_color_field": "my_color"'`` attribute in the ``tree`` tag::

...
<field name="arch" type="xml">
<tree string="View name" colors="background_color_field: my_color" >
...
<field name="my_color" invisible="1"/>
...
</tree>
</field>
...


* If you want to use more than one color, you can split the attributes using ';':

.. code::
options='{"fg_color": "red:red_color == True; green:green_color == True"}'
Example:

.. code:: xml
...
<field name="arch" type="xml">
<tree string="View name">
...
<field name="name" options='{"fg_color": "red:red_color == True; green:green_color == True"}'/>
...
</tree>
</field>
...
With this example, the content of the field named `my_color` will be used to
populate the `my_color` CSS value. Use a function field to return whichever
color you want depending on the other record values. Note that this
overrides the rest of `colors` attributes, and that you need the tree
to load your field in the first place by adding it as invisible field.
**Note that you should always use single quotes for fields' ``options`` and wrap nested values in double quotes since ``options`` is a JSON object.**

0 comments on commit edff0fc

Please sign in to comment.