From 969da3faeb2b96700ac89d8a476e502cf814f080 Mon Sep 17 00:00:00 2001 From: Quentin Dupont Date: Wed, 4 Sep 2019 17:51:56 +0200 Subject: [PATCH] [ADD] Widget Numeric step --- web_widget_number_ux_choice/README.rst | 86 ---------------- web_widget_number_ux_choice/readme/USAGE.rst | 22 ---- .../static/description/step0,1.gif | Bin 30849 -> 0 bytes .../description/step10_with_onchange.gif | Bin 40441 -> 0 bytes .../static/src/js/number_ux_choice.js | 74 -------------- .../static/src/scss/number_ux_choice.scss | 11 -- .../view/web_widget_number_ux_choice.xml | 9 -- web_widget_numeric_step/README.rst | 90 +++++++++++++++++ .../__init__.py | 0 .../__manifest__.py | 8 +- .../i18n/fr.po | 0 .../readme/CONTRIBUTORS.rst | 0 .../readme/DESCRIPTION.rst | 2 +- web_widget_numeric_step/readme/USAGE.rst | 26 +++++ .../static/description/add_two_buttons.png | Bin .../static/description/icon.png | Bin .../static/description/index.html | 39 +++---- .../static/description/step0,25andlimits.gif | Bin 0 -> 30940 bytes ...0_limit15_placeholder117_with_onchange.gif | Bin 0 -> 31039 bytes .../static/src/js/numeric_step.js | 95 ++++++++++++++++++ .../static/src/scss/numeric_step.scss | 29 ++++++ .../static/src/xml/numeric_step.xml | 8 +- .../view/web_widget_numeric_step.xml | 9 ++ 23 files changed, 278 insertions(+), 230 deletions(-) delete mode 100644 web_widget_number_ux_choice/README.rst delete mode 100644 web_widget_number_ux_choice/readme/USAGE.rst delete mode 100644 web_widget_number_ux_choice/static/description/step0,1.gif delete mode 100644 web_widget_number_ux_choice/static/description/step10_with_onchange.gif delete mode 100644 web_widget_number_ux_choice/static/src/js/number_ux_choice.js delete mode 100644 web_widget_number_ux_choice/static/src/scss/number_ux_choice.scss delete mode 100644 web_widget_number_ux_choice/view/web_widget_number_ux_choice.xml create mode 100644 web_widget_numeric_step/README.rst rename {web_widget_number_ux_choice => web_widget_numeric_step}/__init__.py (100%) rename {web_widget_number_ux_choice => web_widget_numeric_step}/__manifest__.py (67%) rename {web_widget_number_ux_choice => web_widget_numeric_step}/i18n/fr.po (100%) rename {web_widget_number_ux_choice => web_widget_numeric_step}/readme/CONTRIBUTORS.rst (100%) rename {web_widget_number_ux_choice => web_widget_numeric_step}/readme/DESCRIPTION.rst (51%) create mode 100644 web_widget_numeric_step/readme/USAGE.rst rename {web_widget_number_ux_choice => web_widget_numeric_step}/static/description/add_two_buttons.png (100%) rename {web_widget_number_ux_choice => web_widget_numeric_step}/static/description/icon.png (100%) rename {web_widget_number_ux_choice => web_widget_numeric_step}/static/description/index.html (80%) create mode 100644 web_widget_numeric_step/static/description/step0,25andlimits.gif create mode 100644 web_widget_numeric_step/static/description/step10_limit15_placeholder117_with_onchange.gif create mode 100644 web_widget_numeric_step/static/src/js/numeric_step.js create mode 100644 web_widget_numeric_step/static/src/scss/numeric_step.scss rename web_widget_number_ux_choice/static/src/xml/number_ux_choice.xml => web_widget_numeric_step/static/src/xml/numeric_step.xml (61%) create mode 100644 web_widget_numeric_step/view/web_widget_numeric_step.xml diff --git a/web_widget_number_ux_choice/README.rst b/web_widget_number_ux_choice/README.rst deleted file mode 100644 index 7aee7a490..000000000 --- a/web_widget_number_ux_choice/README.rst +++ /dev/null @@ -1,86 +0,0 @@ -=========================== -Web Widget UX Number Choice -=========================== - -.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! 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-quentinDupont%2Fgrap--odoo--incubator-lightgray.png?logo=github - :target: https://github.com/quentinDupont/grap-odoo-incubator/tree/12.0_ADD_web_widget_int_choice/web_widget_number_ux_choice - :alt: quentinDupont/grap-odoo-incubator - -|badge1| |badge2| |badge3| - -This widget changes input number field and make it easier to incremente the number thanks to 2 buttons (+ and -). -We can be parametred to choose the iteration step (0.1 for more precision etc.) - -**Table of contents** - -.. contents:: - :local: - -Usage -===== - -In your xml view, add ``widget="number_ux_choice"`` -This will add the 2 buttons +" and "-" just next to the input field in edit mode. -Iteration step by default is 1. - -.. figure:: https://raw.githubusercontent.com/quentinDupont/grap-odoo-incubator/12.0_ADD_web_widget_int_choice/web_widget_number_ux_choice/static/description/add_two_buttons.png - - -**Optional** -Add an option to choose the step iteration -Example for an 0.1 step : - -`` days`` - -**Examples** - -Iteration with 0.1 step - -.. figure:: https://raw.githubusercontent.com/quentinDupont/grap-odoo-incubator/12.0_ADD_web_widget_int_choice/web_widget_number_ux_choice/static/description/step0,1.gif - -Iteration with 10 step, with onchange - -.. figure:: https://raw.githubusercontent.com/quentinDupont/grap-odoo-incubator/12.0_ADD_web_widget_int_choice/web_widget_number_ux_choice/static/description/step10_with_onchange.gif - -Bug Tracker -=========== - -Bugs are tracked on `GitHub 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 `_. - -Do not contact contributors directly about support or help with technical issues. - -Credits -======= - -Authors -~~~~~~~ - -* GRAP - -Contributors -~~~~~~~~~~~~ - -* `GRAP `_: - - * Quentin DUPONT - -Maintainers -~~~~~~~~~~~ - -This module is part of the `quentinDupont/grap-odoo-incubator `_ project on GitHub. - -You are welcome to contribute. diff --git a/web_widget_number_ux_choice/readme/USAGE.rst b/web_widget_number_ux_choice/readme/USAGE.rst deleted file mode 100644 index c3fe11f50..000000000 --- a/web_widget_number_ux_choice/readme/USAGE.rst +++ /dev/null @@ -1,22 +0,0 @@ -In your xml view, add ``widget="number_ux_choice"`` -This will add the 2 buttons +" and "-" just next to the input field in edit mode. -Iteration step by default is 1. - -.. figure:: ../static/description/add_two_buttons.png - - -**Optional** -Add an option to choose the step iteration -Example for an 0.1 step : - -`` days`` - -**Examples** - -Iteration with 0.1 step - -.. figure:: ../static/description/step0,1.gif - -Iteration with 10 step, with onchange - -.. figure:: ../static/description/step10_with_onchange.gif diff --git a/web_widget_number_ux_choice/static/description/step0,1.gif b/web_widget_number_ux_choice/static/description/step0,1.gif deleted file mode 100644 index a2fc39acd487c73730ef7a4a0b9f6c0c9506b4b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30849 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 z 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 diff --git a/web_widget_number_ux_choice/static/description/step10_with_onchange.gif b/web_widget_number_ux_choice/static/description/step10_with_onchange.gif deleted file mode 100644 index 61645b282769dc5f3a429e6f1b65465c8b37f21c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40441 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�|9}s6sW{ck&713K<7w*{~Zqnz(KlA8}&RuwS8Q!iQ7b)fP1lHM$zCm z>Ens;=aG~qG$-~84kdV;jafjj_acWP3w_pZL!@G(riecw=*#`f6wm7&;tJhwV_I@ZYWPlCMbOJ?53vmsOi4x z;^3t8m**XuiDo{r9f+CIV^H7A{P>r%W}e3vp2#m{bYN=urwFN!$~jx+BIsFm9~D(P zxAev5??jgo)omi0Oa*0bn22giAq}RrQHu7g5!&sU5fr(d8P2x#jApvkiwNX7SaWhh z5A2(W3$Ge^#%G9)K+CPWsN!hq)+?=xy>x&^UXHGRI3FRu-Z?+_cUG^%xd5v*)zp%p1W!PF7pkeE zE3lN+g-c(%eK&y9i3dOy;HsD%1Wz&3ep1)mB6GL8JF*eaJPK>HwFN1 zh!h4|>{e$n!@y%zY^|KGA){!kz*;Qks zbH%oCWWn3+7E;=w95lKyvyaLP8}HythFhmST;S9|lJPo^%rHhtf>Vk(<1bEXH#h*;_iJx}{~b;Ke}2O8Uuy^k9smFU diff --git a/web_widget_number_ux_choice/static/src/js/number_ux_choice.js b/web_widget_number_ux_choice/static/src/js/number_ux_choice.js deleted file mode 100644 index f44871967..000000000 --- a/web_widget_number_ux_choice/static/src/js/number_ux_choice.js +++ /dev/null @@ -1,74 +0,0 @@ -/** -* Copyright (C) 2019 - Today: GRAP (http://www.grap.coop) -* @author: Quentin DUPONT -* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html) **/ - -odoo.define('web.web_widget_number_ux_choice', function(require) { - "use strict"; - - var basic_fields = require('web.basic_fields'); - var Registry = require('web.field_registry'); - // var session = require('web.session'); - // var rpc = require('web.rpc'); - // var pyUtils = require("web.py_utils"); - - /* - * Get precision for the @input field - */ - function getPrecision(input) { - if (!isFinite(input)) return 0; - var e = 1, p = 0; - while (Math.round(input * e) / e !== input) { e *= 10; p++; } - return p; - } - - /* - * @self : input field - * @step : must be Float - * @minusOrPlus : "minus" or "plus" - * - * set new value to @self */ - function addStep(self, step, minusOrPlus) { - var oldVal= parseFloat(self._getValue()); - var precision = Math.max(getPrecision(oldVal), getPrecision(step)) - if (minusOrPlus == "minus") { - step = -step - } - var newVal = oldVal + step; - var newVal_s = newVal.toFixed(precision).toString(); - self._setValue(newVal_s); - self.$input[0].value = newVal_s; - } - - var NumberUxChoice = basic_fields.FieldFloat.extend({ - template: 'NumberUxChoice', - - _render: function () { - var self = this; - this._super(); - this.$("button").parents().removeClass("o_field_integer o_field_number o_input o_required_modifier"); - this.$("button").click(function() { - var node = $(this).parent()[0]; - - // Get step option or default is 1 - if (typeof node.attributes['step'] !== 'undefined') { - var step = parseFloat(node.attributes['step'].value); - } else { - var step = 1; - } - // PLUS button - if ($(this).hasClass("btn_number_ux_choice_plus")) { - addStep(self, step, "plus") - // MINUS button - } else if ($(this).hasClass("btn_number_ux_choice_minus")){ - addStep(self, step, "minus") - - }; - }); - }, - - }); - - Registry.add('number_ux_choice', NumberUxChoice); - -}); diff --git a/web_widget_number_ux_choice/static/src/scss/number_ux_choice.scss b/web_widget_number_ux_choice/static/src/scss/number_ux_choice.scss deleted file mode 100644 index 303ca36be..000000000 --- a/web_widget_number_ux_choice/static/src/scss/number_ux_choice.scss +++ /dev/null @@ -1,11 +0,0 @@ - -.input_number_ux_choice { - width: 71% !important; -} - -.btns_number_ux_choice { - width: 27% !important; - button { - height: 25px; - } -} diff --git a/web_widget_number_ux_choice/view/web_widget_number_ux_choice.xml b/web_widget_number_ux_choice/view/web_widget_number_ux_choice.xml deleted file mode 100644 index 7c53bdd0f..000000000 --- a/web_widget_number_ux_choice/view/web_widget_number_ux_choice.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - diff --git a/web_widget_numeric_step/README.rst b/web_widget_numeric_step/README.rst new file mode 100644 index 000000000..4e45fa408 --- /dev/null +++ b/web_widget_numeric_step/README.rst @@ -0,0 +1,90 @@ +======================= +Web Widget Numeric Step +======================= + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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-quentinDupont%2Fweb-lightgray.png?logo=github + :target: https://github.com/quentinDupont/web/tree/12.0_ADD_web_widget_ux_choice/web_widget_numeric_step + :alt: quentinDupont/web + +|badge1| |badge2| |badge3| + +This widget changes input number field and make it easier to incremente the number thanks to 2 buttons (+ and -). +Use JS native logic for input number, so you can use the options ``min``, ``max``, ``step``, ``placeholder``. + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +In your xml view, add ``widget="numeric_step"`` +This will add the 2 buttons "+" and "-" just next to the input field in edit mode. +Iteration step by default is 1. + +.. figure:: https://raw.githubusercontent.com/quentinDupont/web/12.0_ADD_web_widget_ux_choice/web_widget_numeric_step/static/description/add_two_buttons.png + + +**Optional** + +Add an option to choose the step iteration and limits (min and max values). + +Example for an 0.25 step, min to -1 and max to 10 : + +`` days`` + +**Examples** + +Iteration with 0.25 step, min to -1 and max to 10. + +Start to incremente with button, continue incrementing with scrolling mouse. + +.. figure:: https://raw.githubusercontent.com/quentinDupont/web/12.0_ADD_web_widget_ux_choice/web_widget_numeric_step/static/description/step0,25andlimits.gif + +Iteration with 10 step, max limit 15, placeholder with onchange + +.. figure:: https://raw.githubusercontent.com/quentinDupont/web/12.0_ADD_web_widget_ux_choice/web_widget_numeric_step/static/description/step10_limit15_placeholder117_with_onchange.gif + +Bug Tracker +=========== + +Bugs are tracked on `GitHub 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 `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* GRAP + +Contributors +~~~~~~~~~~~~ + +* `GRAP `_: + + * Quentin DUPONT + +Maintainers +~~~~~~~~~~~ + +This module is part of the `quentinDupont/web `_ project on GitHub. + +You are welcome to contribute. diff --git a/web_widget_number_ux_choice/__init__.py b/web_widget_numeric_step/__init__.py similarity index 100% rename from web_widget_number_ux_choice/__init__.py rename to web_widget_numeric_step/__init__.py diff --git a/web_widget_number_ux_choice/__manifest__.py b/web_widget_numeric_step/__manifest__.py similarity index 67% rename from web_widget_number_ux_choice/__manifest__.py rename to web_widget_numeric_step/__manifest__.py index 83ca48ab1..7830c8688 100644 --- a/web_widget_number_ux_choice/__manifest__.py +++ b/web_widget_numeric_step/__manifest__.py @@ -1,8 +1,8 @@ -# Odoo, Open Source Web Widget Integer Choice +# Odoo, Open Source Web Widget Numeric Step # # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).# { - 'name': "Web Widget UX Number Choice", + 'name': "Web Widget Numeric Step", 'category': "web", 'version': "12.0.1.0.0", 'author': "GRAP, " @@ -11,10 +11,10 @@ 'website': 'https://github.com/OCA/web', 'depends': ['web'], 'data': [ - 'view/web_widget_number_ux_choice.xml' + 'view/web_widget_numeric_step.xml' ], 'qweb': [ - 'static/src/xml/number_ux_choice.xml', + 'static/src/xml/numeric_step.xml', ], 'auto_install': False, 'installable': True, diff --git a/web_widget_number_ux_choice/i18n/fr.po b/web_widget_numeric_step/i18n/fr.po similarity index 100% rename from web_widget_number_ux_choice/i18n/fr.po rename to web_widget_numeric_step/i18n/fr.po diff --git a/web_widget_number_ux_choice/readme/CONTRIBUTORS.rst b/web_widget_numeric_step/readme/CONTRIBUTORS.rst similarity index 100% rename from web_widget_number_ux_choice/readme/CONTRIBUTORS.rst rename to web_widget_numeric_step/readme/CONTRIBUTORS.rst diff --git a/web_widget_number_ux_choice/readme/DESCRIPTION.rst b/web_widget_numeric_step/readme/DESCRIPTION.rst similarity index 51% rename from web_widget_number_ux_choice/readme/DESCRIPTION.rst rename to web_widget_numeric_step/readme/DESCRIPTION.rst index f1a22d2b4..f4906b4ab 100644 --- a/web_widget_number_ux_choice/readme/DESCRIPTION.rst +++ b/web_widget_numeric_step/readme/DESCRIPTION.rst @@ -1,2 +1,2 @@ This widget changes input number field and make it easier to incremente the number thanks to 2 buttons (+ and -). -We can be parametred to choose the iteration step (0.1 for more precision etc.) \ No newline at end of file +Use JS native logic for input number, so you can use the options ``min``, ``max``, ``step``, ``placeholder``. \ No newline at end of file diff --git a/web_widget_numeric_step/readme/USAGE.rst b/web_widget_numeric_step/readme/USAGE.rst new file mode 100644 index 000000000..47aaf790c --- /dev/null +++ b/web_widget_numeric_step/readme/USAGE.rst @@ -0,0 +1,26 @@ +In your xml view, add ``widget="numeric_step"`` +This will add the 2 buttons "+" and "-" just next to the input field in edit mode. +Iteration step by default is 1. + +.. figure:: ../static/description/add_two_buttons.png + + +**Optional** + +Add an option to choose the step iteration and limits (min and max values). + +Example for an 0.25 step, min to -1 and max to 10 : + +`` days`` + +**Examples** + +Iteration with 0.25 step, min to -1 and max to 10. + +Start to incremente with button, continue incrementing with scrolling mouse. + +.. figure:: ../static/description/step0,25andlimits.gif + +Iteration with 10 step, max limit 15, placeholder with onchange + +.. figure:: ../static/description/step10_limit15_placeholder117_with_onchange.gif diff --git a/web_widget_number_ux_choice/static/description/add_two_buttons.png b/web_widget_numeric_step/static/description/add_two_buttons.png similarity index 100% rename from web_widget_number_ux_choice/static/description/add_two_buttons.png rename to web_widget_numeric_step/static/description/add_two_buttons.png diff --git a/web_widget_number_ux_choice/static/description/icon.png b/web_widget_numeric_step/static/description/icon.png similarity index 100% rename from web_widget_number_ux_choice/static/description/icon.png rename to web_widget_numeric_step/static/description/icon.png diff --git a/web_widget_number_ux_choice/static/description/index.html b/web_widget_numeric_step/static/description/index.html similarity index 80% rename from web_widget_number_ux_choice/static/description/index.html rename to web_widget_numeric_step/static/description/index.html index 92dfe7ed4..c838ff91f 100644 --- a/web_widget_number_ux_choice/static/description/index.html +++ b/web_widget_numeric_step/static/description/index.html @@ -4,7 +4,7 @@ -Web Widget UX Number Choice +Web Widget Numeric Step -
-

Web Widget UX Number Choice

+
+

Web Widget Numeric Step

-

Beta License: AGPL-3 quentinDupont/grap-odoo-incubator

+

Beta License: AGPL-3 quentinDupont/web

This widget changes input number field and make it easier to incremente the number thanks to 2 buttons (+ and -). -We can be parametred to choose the iteration step (0.1 for more precision etc.)

+Use JS native logic for input number, so you can use the options min, max, step, placeholder.

Table of contents

    @@ -385,32 +385,33 @@ We can be parametred to choose the iteration step (0.1 for more precision etc.)<

Usage

-

In your xml view, add widget="number_ux_choice" -This will add the 2 buttons +” and “-” just next to the input field in edit mode. +

In your xml view, add widget="numeric_step" +This will add the 2 buttons “+” and “-” just next to the input field in edit mode. Iteration step by default is 1.

-https://raw.githubusercontent.com/quentinDupont/grap-odoo-incubator/12.0_ADD_web_widget_int_choice/web_widget_number_ux_choice/static/description/add_two_buttons.png +https://raw.githubusercontent.com/quentinDupont/web/12.0_ADD_web_widget_ux_choice/web_widget_numeric_step/static/description/add_two_buttons.png
-

Optional -Add an option to choose the step iteration -Example for an 0.1 step :

-

<field name="sale_delay" widget="number_ux_choice" options="{'step': 0.1}" /> days

+

Optional

+

Add an option to choose the step iteration and limits (min and max values).

+

Example for an 0.25 step, min to -1 and max to 10 :

+

<field name="sale_delay" widget="numeric_step" options="{'step': 0.25, 'min': -1, 'max': 10}" /> days

Examples

-

Iteration with 0.1 step

+

Iteration with 0.25 step, min to -1 and max to 10.

+

Start to incremente with button, continue incrementing with scrolling mouse.

-https://raw.githubusercontent.com/quentinDupont/grap-odoo-incubator/12.0_ADD_web_widget_int_choice/web_widget_number_ux_choice/static/description/step0,1.gif +https://raw.githubusercontent.com/quentinDupont/web/12.0_ADD_web_widget_ux_choice/web_widget_numeric_step/static/description/step0,25andlimits.gif
-

Iteration with 10 step, with onchange

+

Iteration with 10 step, max limit 15, placeholder with onchange

-https://raw.githubusercontent.com/quentinDupont/grap-odoo-incubator/12.0_ADD_web_widget_int_choice/web_widget_number_ux_choice/static/description/step10_with_onchange.gif +https://raw.githubusercontent.com/quentinDupont/web/12.0_ADD_web_widget_ux_choice/web_widget_numeric_step/static/description/step10_limit15_placeholder117_with_onchange.gif

Bug Tracker

-

Bugs are tracked on GitHub Issues. +

Bugs are tracked on GitHub 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.

+feedback.

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

@@ -432,7 +433,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome

Maintainers

-

This module is part of the quentinDupont/grap-odoo-incubator project on GitHub.

+

This module is part of the quentinDupont/web project on GitHub.

You are welcome to contribute.

diff --git a/web_widget_numeric_step/static/description/step0,25andlimits.gif b/web_widget_numeric_step/static/description/step0,25andlimits.gif new file mode 100644 index 0000000000000000000000000000000000000000..1e5827236826f9cd082b23f6236090d4d7ac0015 GIT binary patch literal 30940 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 literal 0 HcmV?d00001 diff --git a/web_widget_numeric_step/static/description/step10_limit15_placeholder117_with_onchange.gif b/web_widget_numeric_step/static/description/step10_limit15_placeholder117_with_onchange.gif new file mode 100644 index 0000000000000000000000000000000000000000..eb0b6e815607f11536077fcd14b753ee1d260f19 GIT binary patch literal 31039 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 literal 0 HcmV?d00001 diff --git a/web_widget_numeric_step/static/src/js/numeric_step.js b/web_widget_numeric_step/static/src/js/numeric_step.js new file mode 100644 index 000000000..ca54e891b --- /dev/null +++ b/web_widget_numeric_step/static/src/js/numeric_step.js @@ -0,0 +1,95 @@ +/** +* Copyright (C) 2019 - Today: GRAP (http://www.grap.coop) +* @author: Quentin DUPONT +* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html) **/ + +odoo.define('web.web_widget_numeric_step', function(require) { + "use strict"; + + var Registry = require('web.field_registry'); + var NumericStep = require('web.basic_fields').FieldFloat; + + /** + * Get decimal precision for the input field + * + * @param {object} input Input field + * @return {int} Precision + */ + function getPrecision(input) { + if (!isFinite(input)) return 0; + var ten_multiple = 1, precision = 0; + while (Math.round(input * ten_multiple) / ten_multiple !== input) { + ten_multiple *= 10; + precision++; + } + return precision; + } + + /** + * Increase input number with chosen step iteration + * + * @param {object} self Input field + * @param {Float} step Step iteration + * @param {String} minusOrPlus Choose "minus" to decrease. Default is "plus" + */ + function addStep(self, step, minusOrPlus) { + var oldVal= parseFloat(self._getValue()); + var precision = Math.max(getPrecision(oldVal), getPrecision(step)) + if (minusOrPlus == "minus") { + step = -step + } + var newVal = oldVal + step; + // Check input limits + if (newVal > self.attrs.options.max) { + newVal = self.attrs.options.max; + } else if (newVal < self.attrs.options.min) { + newVal = self.attrs.options.min; + } + var newVal_s = newVal.toFixed(precision).toString(); + self._setValue(newVal_s); + self.$input[0].value = newVal_s; + } + + + NumericStep.include({ + template: 'web_widget_numeric_step', + + _render: function () { + var self = this; + // Use native options for input number + this.nodeOptions['type'] = "number"; + this._super(); + + // Add native options for input number + var input_number_options = ['max', 'min', 'placeholder', 'step']; + for (var options of input_number_options) { + if (typeof this.nodeOptions[options] !== 'undefined') { + this.$el[0][options] = this.nodeOptions[options]; + } + } + + this.$("button").parents().removeClass("o_field_integer o_field_number o_input o_required_modifier"); + this.$("button").click(function() { + var node = $(this).parent()[0]; + + // Get step option or default is 1 + if (typeof node.attributes['step'] !== 'undefined') { + var step = parseFloat(node.attributes['step'].value); + } else { + var step = 1; + } + // PLUS button + if ($(this).hasClass("btn_numeric_step_plus")) { + addStep(self, step, "plus") + // MINUS button + } else if ($(this).hasClass("btn_numeric_step_minus")){ + addStep(self, step, "minus") + + }; + }); + }, + }); + + Registry.add('numeric_step', NumericStep); + +}); diff --git a/web_widget_numeric_step/static/src/scss/numeric_step.scss b/web_widget_numeric_step/static/src/scss/numeric_step.scss new file mode 100644 index 000000000..df61457fc --- /dev/null +++ b/web_widget_numeric_step/static/src/scss/numeric_step.scss @@ -0,0 +1,29 @@ + +.input_numeric_step { + width: 71% !important; +} + +.btns_numeric_step { + width: 27% !important; + button { + height: 25px; + } +} + +/* Turn Off Number Input Spinners */ +input{ + /* Firefox */ + -moz-appearance: textfield; + + /* Chrome */ + &::-webkit-inner-spin-button { + -webkit-appearance: none; + margin:0; + } + + /* Opéra*/ + &::-o-inner-spin-button { + -o-appearance: none; + margin: 0; + } +} diff --git a/web_widget_number_ux_choice/static/src/xml/number_ux_choice.xml b/web_widget_numeric_step/static/src/xml/numeric_step.xml similarity index 61% rename from web_widget_number_ux_choice/static/src/xml/number_ux_choice.xml rename to web_widget_numeric_step/static/src/xml/numeric_step.xml index 00baada9d..904e4c14c 100644 --- a/web_widget_number_ux_choice/static/src/xml/number_ux_choice.xml +++ b/web_widget_numeric_step/static/src/xml/numeric_step.xml @@ -5,11 +5,11 @@ Copyright (C) 2019 - Today: GRAP (http://www.grap.coop) License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). --> - + - -

-
diff --git a/web_widget_numeric_step/view/web_widget_numeric_step.xml b/web_widget_numeric_step/view/web_widget_numeric_step.xml new file mode 100644 index 000000000..bfeb67b5a --- /dev/null +++ b/web_widget_numeric_step/view/web_widget_numeric_step.xml @@ -0,0 +1,9 @@ + + + +