tryton 7.0.18__tar.gz → 7.0.20__tar.gz

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.

Potentially problematic release.


This version of tryton might be problematic. Click here for more details.

Files changed (283) hide show
  1. {tryton-7.0.18 → tryton-7.0.20}/CHANGELOG +10 -0
  2. {tryton-7.0.18 → tryton-7.0.20}/PKG-INFO +1 -1
  3. {tryton-7.0.18 → tryton-7.0.20}/tryton/__init__.py +1 -1
  4. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/bg/LC_MESSAGES/tryton.mo +0 -0
  5. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/ca/LC_MESSAGES/tryton.mo +0 -0
  6. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/cs/LC_MESSAGES/tryton.mo +0 -0
  7. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/de/LC_MESSAGES/tryton.mo +0 -0
  8. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/es/LC_MESSAGES/tryton.mo +0 -0
  9. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/es_419/LC_MESSAGES/tryton.mo +0 -0
  10. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/et/LC_MESSAGES/tryton.mo +0 -0
  11. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/fa/LC_MESSAGES/tryton.mo +0 -0
  12. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/fi/LC_MESSAGES/tryton.mo +0 -0
  13. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/fr/LC_MESSAGES/tryton.mo +0 -0
  14. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/hu/LC_MESSAGES/tryton.mo +0 -0
  15. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/id/LC_MESSAGES/tryton.mo +0 -0
  16. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/it/LC_MESSAGES/tryton.mo +0 -0
  17. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/ja_JP/LC_MESSAGES/tryton.mo +0 -0
  18. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/lo/LC_MESSAGES/tryton.mo +0 -0
  19. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/lt/LC_MESSAGES/tryton.mo +0 -0
  20. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/nl/LC_MESSAGES/tryton.mo +0 -0
  21. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/pl/LC_MESSAGES/tryton.mo +0 -0
  22. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/pt/LC_MESSAGES/tryton.mo +0 -0
  23. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/ro/LC_MESSAGES/tryton.mo +0 -0
  24. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/ru/LC_MESSAGES/tryton.mo +0 -0
  25. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/sl/LC_MESSAGES/tryton.mo +0 -0
  26. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/tr/LC_MESSAGES/tryton.mo +0 -0
  27. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/uk/LC_MESSAGES/tryton.mo +0 -0
  28. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/zh_CN/LC_MESSAGES/tryton.mo +0 -0
  29. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/about.py +1 -1
  30. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/model/field.py +0 -2
  31. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/model/record.py +2 -1
  32. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/screen/screen.py +5 -2
  33. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form.py +3 -1
  34. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/list.py +4 -0
  35. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/list_gtk/widget.py +1 -1
  36. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/screen_container.py +3 -5
  37. {tryton-7.0.18 → tryton-7.0.20}/tryton.egg-info/PKG-INFO +1 -1
  38. {tryton-7.0.18 → tryton-7.0.20}/COPYRIGHT +0 -0
  39. {tryton-7.0.18 → tryton-7.0.20}/LICENSE +0 -0
  40. {tryton-7.0.18 → tryton-7.0.20}/MANIFEST.in +0 -0
  41. {tryton-7.0.18 → tryton-7.0.20}/README.rst +0 -0
  42. {tryton-7.0.18 → tryton-7.0.20}/bin/tryton +0 -0
  43. {tryton-7.0.18 → tryton-7.0.20}/catalan.nsh +0 -0
  44. {tryton-7.0.18 → tryton-7.0.20}/doc/conf.py +0 -0
  45. {tryton-7.0.18 → tryton-7.0.20}/doc/glossary.rst +0 -0
  46. {tryton-7.0.18 → tryton-7.0.20}/doc/index.rst +0 -0
  47. {tryton-7.0.18 → tryton-7.0.20}/doc/installation.rst +0 -0
  48. {tryton-7.0.18 → tryton-7.0.20}/doc/releases.rst +0 -0
  49. {tryton-7.0.18 → tryton-7.0.20}/doc/requirements-doc.txt +0 -0
  50. {tryton-7.0.18 → tryton-7.0.20}/doc/usage.rst +0 -0
  51. {tryton-7.0.18 → tryton-7.0.20}/english.nsh +0 -0
  52. {tryton-7.0.18 → tryton-7.0.20}/farsi.nsh +0 -0
  53. {tryton-7.0.18 → tryton-7.0.20}/french.nsh +0 -0
  54. {tryton-7.0.18 → tryton-7.0.20}/german.nsh +0 -0
  55. {tryton-7.0.18 → tryton-7.0.20}/make-darwin-installer.sh +0 -0
  56. {tryton-7.0.18 → tryton-7.0.20}/make-win32-installer.sh +0 -0
  57. {tryton-7.0.18 → tryton-7.0.20}/portuguese.nsh +0 -0
  58. {tryton-7.0.18 → tryton-7.0.20}/setup-freeze.py +0 -0
  59. {tryton-7.0.18 → tryton-7.0.20}/setup.cfg +0 -0
  60. {tryton-7.0.18 → tryton-7.0.20}/setup.nsi +0 -0
  61. {tryton-7.0.18 → tryton-7.0.20}/setup.py +0 -0
  62. {tryton-7.0.18 → tryton-7.0.20}/slovenian.nsh +0 -0
  63. {tryton-7.0.18 → tryton-7.0.20}/spanish.nsh +0 -0
  64. {tryton-7.0.18 → tryton-7.0.20}/tox.ini +0 -0
  65. {tryton-7.0.18 → tryton-7.0.20}/tryton/action/__init__.py +0 -0
  66. {tryton-7.0.18 → tryton-7.0.20}/tryton/action/main.py +0 -0
  67. {tryton-7.0.18 → tryton-7.0.20}/tryton/bus.py +0 -0
  68. {tryton-7.0.18 → tryton-7.0.20}/tryton/client.py +0 -0
  69. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/__init__.py +0 -0
  70. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/button.py +0 -0
  71. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/cellrendererbinary.py +0 -0
  72. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/cellrendererbutton.py +0 -0
  73. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/cellrendererclickablepixbuf.py +0 -0
  74. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/cellrenderercombo.py +0 -0
  75. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/cellrendererfloat.py +0 -0
  76. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/cellrendererinteger.py +0 -0
  77. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/cellrenderertext.py +0 -0
  78. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/cellrenderertoggle.py +0 -0
  79. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/common.py +0 -0
  80. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/completion.py +0 -0
  81. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/datetime_.py +0 -0
  82. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/domain_inversion.py +0 -0
  83. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/domain_parser.py +0 -0
  84. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/entry_position.py +0 -0
  85. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/environment.py +0 -0
  86. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/focus.py +0 -0
  87. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/htmltextbuffer.py +0 -0
  88. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/number_entry.py +0 -0
  89. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/popup_menu.py +0 -0
  90. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/richtext.py +0 -0
  91. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/selection.py +0 -0
  92. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/timedelta.py +0 -0
  93. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/underline.py +0 -0
  94. {tryton-7.0.18 → tryton-7.0.20}/tryton/common/widget_style.py +0 -0
  95. {tryton-7.0.18 → tryton-7.0.20}/tryton/config.py +0 -0
  96. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/bg/LC_MESSAGES/tryton.po +0 -0
  97. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/ca/LC_MESSAGES/tryton.po +0 -0
  98. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/cs/LC_MESSAGES/tryton.po +0 -0
  99. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/de/LC_MESSAGES/tryton.po +0 -0
  100. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/es/LC_MESSAGES/tryton.po +0 -0
  101. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/es_419/LC_MESSAGES/tryton.po +0 -0
  102. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/et/LC_MESSAGES/tryton.po +0 -0
  103. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/fa/LC_MESSAGES/tryton.po +0 -0
  104. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/fi/LC_MESSAGES/tryton.po +0 -0
  105. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/fr/LC_MESSAGES/tryton.po +0 -0
  106. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/hu/LC_MESSAGES/tryton.po +0 -0
  107. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/id/LC_MESSAGES/tryton.po +0 -0
  108. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/it/LC_MESSAGES/tryton.po +0 -0
  109. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/ja_JP/LC_MESSAGES/tryton.po +0 -0
  110. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/lo/LC_MESSAGES/tryton.po +0 -0
  111. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/lt/LC_MESSAGES/tryton.po +0 -0
  112. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/nl/LC_MESSAGES/tryton.po +0 -0
  113. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/pl/LC_MESSAGES/tryton.po +0 -0
  114. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/pt/LC_MESSAGES/tryton.po +0 -0
  115. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/ro/LC_MESSAGES/tryton.po +0 -0
  116. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/ru/LC_MESSAGES/tryton.po +0 -0
  117. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/sl/LC_MESSAGES/tryton.po +0 -0
  118. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/tr/LC_MESSAGES/tryton.po +0 -0
  119. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/tryton.pot +0 -0
  120. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/uk/LC_MESSAGES/tryton.po +0 -0
  121. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/locale/zh_CN/LC_MESSAGES/tryton.po +0 -0
  122. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/LICENSE +0 -0
  123. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-add.svg +0 -0
  124. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-archive.svg +0 -0
  125. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-arrow-down.svg +0 -0
  126. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-arrow-left.svg +0 -0
  127. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-arrow-right.svg +0 -0
  128. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-arrow-up.svg +0 -0
  129. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-attach.svg +0 -0
  130. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-back.svg +0 -0
  131. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-barcode-scanner.svg +0 -0
  132. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-bookmark-border.svg +0 -0
  133. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-bookmark.svg +0 -0
  134. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-bookmarks.svg +0 -0
  135. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-cancel.svg +0 -0
  136. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-clear.svg +0 -0
  137. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-close.svg +0 -0
  138. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-copy.svg +0 -0
  139. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-create.svg +0 -0
  140. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-date.svg +0 -0
  141. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-delete.svg +0 -0
  142. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-download.svg +0 -0
  143. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-drag.svg +0 -0
  144. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-email.svg +0 -0
  145. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-error.svg +0 -0
  146. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-exit.svg +0 -0
  147. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-export.svg +0 -0
  148. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-filter.svg +0 -0
  149. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-format-align-center.svg +0 -0
  150. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-format-align-justify.svg +0 -0
  151. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-format-align-left.svg +0 -0
  152. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-format-align-right.svg +0 -0
  153. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-format-bold.svg +0 -0
  154. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-format-color-text.svg +0 -0
  155. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-format-italic.svg +0 -0
  156. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-format-underline.svg +0 -0
  157. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-forward.svg +0 -0
  158. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-history.svg +0 -0
  159. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-icon.png +0 -0
  160. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-icon.svg +0 -0
  161. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-import.svg +0 -0
  162. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-info.svg +0 -0
  163. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-launch.svg +0 -0
  164. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-link.svg +0 -0
  165. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-log.svg +0 -0
  166. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-menu.svg +0 -0
  167. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-note.svg +0 -0
  168. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-ok.svg +0 -0
  169. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-open.svg +0 -0
  170. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-print.svg +0 -0
  171. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-public.svg +0 -0
  172. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-question.svg +0 -0
  173. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-refresh.svg +0 -0
  174. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-remove.svg +0 -0
  175. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-save.svg +0 -0
  176. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-search.svg +0 -0
  177. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-send.svg +0 -0
  178. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-sound-off.svg +0 -0
  179. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-sound-on.svg +0 -0
  180. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-star-border.svg +0 -0
  181. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-star.svg +0 -0
  182. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-switch.svg +0 -0
  183. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-translate.svg +0 -0
  184. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-unarchive.svg +0 -0
  185. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-undo.svg +0 -0
  186. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton-warning.svg +0 -0
  187. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton.icns +0 -0
  188. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton.ico +0 -0
  189. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/pixmaps/tryton/tryton.svg +0 -0
  190. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/sounds/LICENSE +0 -0
  191. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/sounds/danger.wav +0 -0
  192. {tryton-7.0.18 → tryton-7.0.20}/tryton/data/sounds/success.wav +0 -0
  193. {tryton-7.0.18 → tryton-7.0.20}/tryton/device_cookie.py +0 -0
  194. {tryton-7.0.18 → tryton-7.0.20}/tryton/exceptions.py +0 -0
  195. {tryton-7.0.18 → tryton-7.0.20}/tryton/fingerprints.py +0 -0
  196. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/__init__.py +0 -0
  197. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/main.py +0 -0
  198. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/__init__.py +0 -0
  199. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/attachment.py +0 -0
  200. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/board.py +0 -0
  201. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/code_scanner.py +0 -0
  202. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/dblogin.py +0 -0
  203. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/email_.py +0 -0
  204. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/form.py +0 -0
  205. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/infobar.py +0 -0
  206. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/limit.py +0 -0
  207. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/log.py +0 -0
  208. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/nomodal.py +0 -0
  209. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/note.py +0 -0
  210. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/preference.py +0 -0
  211. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/revision.py +0 -0
  212. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/tabcontent.py +0 -0
  213. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_board/__init__.py +0 -0
  214. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_board/action.py +0 -0
  215. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_board/view_board.py +0 -0
  216. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/__init__.py +0 -0
  217. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/model/__init__.py +0 -0
  218. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/model/group.py +0 -0
  219. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/screen/__init__.py +0 -0
  220. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/__init__.py +0 -0
  221. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/calendar_.py +0 -0
  222. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/calendar_gtk/__init__.py +0 -0
  223. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/calendar_gtk/calendar_.py +0 -0
  224. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/calendar_gtk/dates_period.py +0 -0
  225. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/calendar_gtk/toolbar.py +0 -0
  226. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/__init__.py +0 -0
  227. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/binary.py +0 -0
  228. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/calendar_.py +0 -0
  229. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/char.py +0 -0
  230. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/checkbox.py +0 -0
  231. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/dictionary.py +0 -0
  232. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/document.py +0 -0
  233. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/float.py +0 -0
  234. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/image.py +0 -0
  235. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/integer.py +0 -0
  236. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/many2many.py +0 -0
  237. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/many2one.py +0 -0
  238. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/multiselection.py +0 -0
  239. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/one2many.py +0 -0
  240. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/one2one.py +0 -0
  241. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/progressbar.py +0 -0
  242. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/pyson.py +0 -0
  243. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/reference.py +0 -0
  244. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/richtextbox.py +0 -0
  245. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/selection.py +0 -0
  246. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/state_widget.py +0 -0
  247. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/textbox.py +0 -0
  248. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/timedelta.py +0 -0
  249. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/url.py +0 -0
  250. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/form_gtk/widget.py +0 -0
  251. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/graph.py +0 -0
  252. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/graph_gtk/__init__.py +0 -0
  253. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/graph_gtk/bar.py +0 -0
  254. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/graph_gtk/graph.py +0 -0
  255. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/graph_gtk/line.py +0 -0
  256. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/graph_gtk/pie.py +0 -0
  257. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/list_form.py +0 -0
  258. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/list_gtk/__init__.py +0 -0
  259. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/view_form/view/list_gtk/editabletree.py +0 -0
  260. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/win_csv.py +0 -0
  261. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/win_export.py +0 -0
  262. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/win_form.py +0 -0
  263. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/win_import.py +0 -0
  264. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/win_search.py +0 -0
  265. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/window.py +0 -0
  266. {tryton-7.0.18 → tryton-7.0.20}/tryton/gui/window/wizard.py +0 -0
  267. {tryton-7.0.18 → tryton-7.0.20}/tryton/jsonrpc.py +0 -0
  268. {tryton-7.0.18 → tryton-7.0.20}/tryton/plugins/__init__.py +0 -0
  269. {tryton-7.0.18 → tryton-7.0.20}/tryton/plugins/translation/__init__.py +0 -0
  270. {tryton-7.0.18 → tryton-7.0.20}/tryton/pyson.py +0 -0
  271. {tryton-7.0.18 → tryton-7.0.20}/tryton/rpc.py +0 -0
  272. {tryton-7.0.18 → tryton-7.0.20}/tryton/tests/__init__.py +0 -0
  273. {tryton-7.0.18 → tryton-7.0.20}/tryton/tests/test_common.py +0 -0
  274. {tryton-7.0.18 → tryton-7.0.20}/tryton/tests/test_common_domain_parser.py +0 -0
  275. {tryton-7.0.18 → tryton-7.0.20}/tryton/tests/test_common_selection.py +0 -0
  276. {tryton-7.0.18 → tryton-7.0.20}/tryton/tests/test_common_timedelta.py +0 -0
  277. {tryton-7.0.18 → tryton-7.0.20}/tryton/translate.py +0 -0
  278. {tryton-7.0.18 → tryton-7.0.20}/tryton.desktop +0 -0
  279. {tryton-7.0.18 → tryton-7.0.20}/tryton.egg-info/SOURCES.txt +0 -0
  280. {tryton-7.0.18 → tryton-7.0.20}/tryton.egg-info/dependency_links.txt +0 -0
  281. {tryton-7.0.18 → tryton-7.0.20}/tryton.egg-info/not-zip-safe +0 -0
  282. {tryton-7.0.18 → tryton-7.0.20}/tryton.egg-info/requires.txt +0 -0
  283. {tryton-7.0.18 → tryton-7.0.20}/tryton.egg-info/top_level.txt +0 -0
@@ -1,4 +1,14 @@
1
1
 
2
+ Version 7.0.20 - 2025-01-01
3
+ ---------------------------
4
+ * Bug fixes (see mercurial logs for details)
5
+
6
+
7
+ Version 7.0.19 - 2024-12-16
8
+ ---------------------------
9
+ * Bug fixes (see mercurial logs for details)
10
+
11
+
2
12
  Version 7.0.18 - 2024-12-01
3
13
  ---------------------------
4
14
  * Bug fixes (see mercurial logs for details)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tryton
3
- Version: 7.0.18
3
+ Version: 7.0.20
4
4
  Summary: Tryton desktop client
5
5
  Home-page: http://www.tryton.org/
6
6
  Download-URL: http://downloads.tryton.org/7.0/
@@ -1,6 +1,6 @@
1
1
  # This file is part of Tryton. The COPYRIGHT file at the top level of
2
2
  # this repository contains the full copyright notices and license terms.
3
- __version__ = "7.0.18"
3
+ __version__ = "7.0.20"
4
4
  import locale
5
5
 
6
6
  import gi
@@ -11,7 +11,7 @@ from tryton.common import get_toplevel_window
11
11
  from tryton.config import CONFIG, PIXMAPS_DIR
12
12
 
13
13
  COPYRIGHT = '''\
14
- Copyright (C) 2004-2024 Tryton.
14
+ Copyright (C) 2004-2025 Tryton.
15
15
  '''
16
16
  AUTHORS = [
17
17
  'Bertrand Chenal <bertrand.chenal@b2ck.com>',
@@ -619,12 +619,10 @@ class O2MField(Field):
619
619
  from .group import Group
620
620
  parent_name = self.attrs.get('relation_field', '')
621
621
  fields = fields or {}
622
- context = record.expr_eval(self.attrs.get('context', {}))
623
622
  group = Group(self.attrs['relation'], fields,
624
623
  parent=record,
625
624
  parent_name=parent_name,
626
625
  child_name=self.name,
627
- context=context,
628
626
  parent_datetime_field=self.attrs.get('datetime_field'))
629
627
  if not fields and record.model_name == self.attrs['relation']:
630
628
  group.fields = record.group.fields
@@ -376,6 +376,7 @@ class Record:
376
376
  return self.id
377
377
 
378
378
  def default_get(self, defaults=None):
379
+ vals = {}
379
380
  if len(self.group.fields):
380
381
  context = self.get_context()
381
382
  if defaults is not None:
@@ -385,7 +386,7 @@ class Record:
385
386
  vals = RPCExecute('model', self.model_name, 'default_get',
386
387
  list(self.group.fields.keys()), context=context)
387
388
  except RPCException:
388
- return
389
+ return vals
389
390
  if (self.parent
390
391
  and self.parent_name in self.group.fields):
391
392
  parent_field = self.group.fields[self.parent_name]
@@ -75,7 +75,8 @@ class Screen:
75
75
  self.__current_record = None
76
76
  self.new_group(context or {})
77
77
  self.current_record = None
78
- self.screen_container = ScreenContainer(attributes.get('tab_domain'))
78
+ self.screen_container = ScreenContainer(
79
+ self, attributes.get('tab_domain'))
79
80
  self.screen_container.alternate_view = attributes.get(
80
81
  'alternate_view', False)
81
82
  self.widget = self.screen_container.widget_get()
@@ -163,7 +164,6 @@ class Screen:
163
164
 
164
165
  def search_active(self, active=True):
165
166
  if active and not self.parent:
166
- self.screen_container.set_screen(self)
167
167
  self.screen_container.show_filter()
168
168
  else:
169
169
  self.screen_container.hide_filter()
@@ -800,6 +800,9 @@ class Screen:
800
800
  record.group.remove(
801
801
  record, remove=remove, modified=False,
802
802
  force_remove=force_remove)
803
+ # set current_record to None to prevent __select_changed
804
+ # to set deleted record as current_record
805
+ self.current_record = None
803
806
  # call only once
804
807
  record.set_modified()
805
808
 
@@ -390,7 +390,6 @@ class FormXMLViewParser(XMLViewParser):
390
390
  group = Container.constructor(
391
391
  int(attributes.get('col', 4)),
392
392
  attributes.get('homogeneous', False))
393
- self.parse_child(node, group)
394
393
 
395
394
  if 'name' in attributes and attributes['name'] == self.exclude_field:
396
395
  self.container.add(None, attributes)
@@ -414,6 +413,9 @@ class FormXMLViewParser(XMLViewParser):
414
413
  bool(attributes.get('yexpand'))))
415
414
  self.view.state_widgets.append(widget)
416
415
  self.container.add(widget, attributes)
416
+ # Parse the children at the end to preserve the order of the state
417
+ # widgets
418
+ self.parse_child(node, group)
417
419
 
418
420
  def _parse_hpaned(self, node, attributes):
419
421
  self._parse_paned(node, attributes, Gtk.HPaned)
@@ -1100,6 +1100,10 @@ class ViewTree(View):
1100
1100
  def display(self, force=False):
1101
1101
  self.treeview.display_counter += 1
1102
1102
  current_record = self.record
1103
+ if current_record and current_record not in current_record.group:
1104
+ # current record may have been removed by on_change calls without
1105
+ # changing the current record of screen before the display
1106
+ current_record = None
1103
1107
  if (force
1104
1108
  or not self.treeview.get_model()
1105
1109
  or self.group != self.treeview.get_model().group):
@@ -738,7 +738,7 @@ class _BinarySelect(_BinaryIcon):
738
738
  invisible = field.get_state_attrs(record).get('invisible', False)
739
739
  readonly = self.attrs.get('readonly',
740
740
  field.get_state_attrs(record).get('readonly', False))
741
- if readonly and size:
741
+ if readonly or size:
742
742
  cell.set_property('visible', False)
743
743
  else:
744
744
  cell.set_property('visible', not invisible)
@@ -185,7 +185,8 @@ class Selection(Gtk.ScrolledWindow):
185
185
 
186
186
  class ScreenContainer(object):
187
187
 
188
- def __init__(self, tab_domain):
188
+ def __init__(self, screen, tab_domain):
189
+ self.screen = screen
189
190
  self.viewport = Gtk.Viewport()
190
191
  self.viewport.set_shadow_type(Gtk.ShadowType.NONE)
191
192
  self.vbox = Gtk.VBox(spacing=3)
@@ -351,12 +352,9 @@ class ScreenContainer(object):
351
352
  def widget_get(self):
352
353
  return self.vbox
353
354
 
354
- def set_screen(self, screen):
355
- self.screen = screen
355
+ def show_filter(self):
356
356
  self.but_bookmark.set_sensitive(bool(list(self.bookmarks())))
357
357
  self.bookmark_match()
358
-
359
- def show_filter(self):
360
358
  if self.filter_vbox:
361
359
  self.filter_vbox.show()
362
360
  if self.notebook:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tryton
3
- Version: 7.0.18
3
+ Version: 7.0.20
4
4
  Summary: Tryton desktop client
5
5
  Home-page: http://www.tryton.org/
6
6
  Download-URL: http://downloads.tryton.org/7.0/
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes