nodezator 1.5.3__tar.gz → 1.5.5__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.
Files changed (706) hide show
  1. {nodezator-1.5.3 → nodezator-1.5.5}/PKG-INFO +45 -42
  2. {nodezator-1.5.3 → nodezator-1.5.5}/README.md +33 -25
  3. nodezator-1.5.5/nodezator/__init__.py +4 -0
  4. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/__main__.py +2 -1
  5. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/appinfo.py +4 -2
  6. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/audioplayer.py +43 -6
  7. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/config.py +5 -1
  8. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-defining-complex-viewer-nodes.htsl +1 -1
  9. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-distributing-nodes.htsl +1 -1
  10. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-loading-nodes.htsl +3 -3
  11. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-more-advanced-viewer-node-features-part2.htsl +1 -1
  12. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/index.htsl +1 -1
  13. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/about.htsl +2 -2
  14. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/v1-3.htsl +1 -1
  15. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/v1-4.htsl +7 -7
  16. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/v1-5.htsl +35 -8
  17. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/README.md +1 -1
  18. nodezator-1.5.5/nodezator/data/images/indie_smiths_logo.png +0 -0
  19. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/locale/en_us/translations_map.pyl +3 -6
  20. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/locale/pt_br/translations_map.pyl +2 -5
  21. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/objpopups/operatornode.py +15 -13
  22. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pygamesetup/constants.py +23 -2
  23. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pygamesetup/services/normal.py +23 -2
  24. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/splashscreen/factoryfuncs.py +7 -7
  25. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/icon.py +57 -15
  26. nodezator-1.5.5/nodezator/userprefsman/main.py +279 -0
  27. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator.egg-info/PKG-INFO +45 -42
  28. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator.egg-info/SOURCES.txt +1 -2
  29. nodezator-1.5.5/pyproject.toml +60 -0
  30. nodezator-1.5.5/setup.cfg +4 -0
  31. nodezator-1.5.3/nodezator/__init__.py +0 -1
  32. nodezator-1.5.3/nodezator/data/images/indie_python_logo.png +0 -0
  33. nodezator-1.5.3/nodezator/userprefsman/main.py +0 -232
  34. nodezator-1.5.3/pyproject.toml +0 -3
  35. nodezator-1.5.3/setup.cfg +0 -53
  36. {nodezator-1.5.3 → nodezator-1.5.5}/MANIFEST.in +0 -0
  37. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/alphamask/__init__.py +0 -0
  38. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/alphamask/basicop.py +0 -0
  39. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/alphamask/main.py +0 -0
  40. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/alphamask/masksop.py +0 -0
  41. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/alphamask/utils.py +0 -0
  42. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/classes2d/__init__.py +0 -0
  43. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/classes2d/collections.py +0 -0
  44. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/classes2d/single.py +0 -0
  45. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/classes2d/surfaceswitcher.py +0 -0
  46. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/__init__.py +0 -0
  47. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/color2d.py +0 -0
  48. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/colors.py +0 -0
  49. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/__init__.py +0 -0
  50. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/loopop.py +0 -0
  51. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/main.py +0 -0
  52. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/panel/__init__.py +0 -0
  53. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/panel/colorsop.py +0 -0
  54. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/panel/constants.py +0 -0
  55. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/panel/data.py +0 -0
  56. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/panel/main.py +0 -0
  57. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/widgetop.py +0 -0
  58. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/widgetsetup/__init__.py +0 -0
  59. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/widgetsetup/button.py +0 -0
  60. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/widgetsetup/constants.py +0 -0
  61. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/widgetsetup/entry.py +0 -0
  62. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/widgetsetup/label.py +0 -0
  63. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/editor/widgetsetup/scale.py +0 -0
  64. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/picker/__init__.py +0 -0
  65. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/picker/constants.py +0 -0
  66. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/picker/main.py +0 -0
  67. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/picker/op.py +0 -0
  68. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/viewer/__init__.py +0 -0
  69. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/viewer/main.py +0 -0
  70. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/viewer/modes/__init__.py +0 -0
  71. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/viewer/modes/colorlist.py +0 -0
  72. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/viewer/modes/patterns/__init__.py +0 -0
  73. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/viewer/modes/patterns/main.py +0 -0
  74. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/viewer/modes/patterns/particles.py +0 -0
  75. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/colorsman/viewer/modes/patterns/waves.py +0 -0
  76. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/app_icon.png +0 -0
  77. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/app_themes/emeralds_on_coal.pyl +0 -0
  78. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/help.nodezator.pysite/general-controls.htsl +0 -0
  79. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/help.nodezator.pysite/index.htsl +0 -0
  80. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/help.nodezator.pysite/text-editor-default-behavior.htsl +0 -0
  81. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/help.nodezator.pysite/text-editor-vim-like-behavior.htsl +0 -0
  82. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/appendix-color-coded-annotations.htsl +0 -0
  83. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/appendix-intfloat-words.htsl +0 -0
  84. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/appendix-recipes.htsl +0 -0
  85. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/appendix-widget-configurations.htsl +0 -0
  86. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/appendix-widget-presets.htsl +0 -0
  87. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-basic-way-define-widgets.htsl +0 -0
  88. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-color-coding-inputs-outputs.htsl +0 -0
  89. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-conditional-execution.htsl +0 -0
  90. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-defining-viewer-nodes.htsl +0 -0
  91. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-defining-your-first-node.htsl +0 -0
  92. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-full-syntax-more-widgets.htsl +0 -0
  93. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-looping.htsl +0 -0
  94. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-more-advanced-viewer-node-features-part1.htsl +0 -0
  95. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-more-ways-define-nodes.htsl +0 -0
  96. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-nodes-variable-parameters-custom-outputs.htsl +0 -0
  97. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-other-objects.htsl +0 -0
  98. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-preview-widgets.htsl +0 -0
  99. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-viewer-nodes-with-custom-visualization-loops.htsl +0 -0
  100. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/ch-widget-presets-more-widgets.htsl +0 -0
  101. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img00.png +0 -0
  102. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img01.png +0 -0
  103. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img02.png +0 -0
  104. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img03.png +0 -0
  105. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img04.png +0 -0
  106. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img05.png +0 -0
  107. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img06.png +0 -0
  108. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img07.png +0 -0
  109. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/appendix-recipes_img08.png +0 -0
  110. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-basic-way-define-widgets_img00.png +0 -0
  111. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-basic-way-define-widgets_img01.png +0 -0
  112. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-basic-way-define-widgets_img02.png +0 -0
  113. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-basic-way-define-widgets_img03.png +0 -0
  114. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-basic-way-define-widgets_img04.png +0 -0
  115. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-basic-way-define-widgets_img05.png +0 -0
  116. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-basic-way-define-widgets_img06_and_07.png +0 -0
  117. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-basic-way-define-widgets_img08.png +0 -0
  118. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-color-coding_img00.png +0 -0
  119. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-color-coding_img01.png +0 -0
  120. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-color-coding_img02.png +0 -0
  121. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-color-coding_img03.png +0 -0
  122. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-color-coding_img04.png +0 -0
  123. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-color-coding_img05.png +0 -0
  124. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-conditional-execution_img00.png +0 -0
  125. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-conditional-execution_img01.png +0 -0
  126. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-conditional-execution_img02.png +0 -0
  127. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-conditional-execution_img03.png +0 -0
  128. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-conditional-execution_img04.png +0 -0
  129. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-conditional-execution_img05.png +0 -0
  130. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-conditional-execution_img06.png +0 -0
  131. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-viewer-nodes_img00.png +0 -0
  132. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-viewer-nodes_img01.png +0 -0
  133. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-viewer-nodes_img02.png +0 -0
  134. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-viewer-nodes_img03.png +0 -0
  135. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-viewer-nodes_img04.png +0 -0
  136. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-viewer-nodes_img05.png +0 -0
  137. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-viewer-nodes_img06.png +0 -0
  138. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-your-first_img00.png +0 -0
  139. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-your-first_img01.png +0 -0
  140. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-your-first_img02.png +0 -0
  141. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-defining-your-first_import_module_node.png +0 -0
  142. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-full-syntax_img00.png +0 -0
  143. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-full-syntax_img01.png +0 -0
  144. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-loading-nodes_dialog_problems_node_packs.png +0 -0
  145. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-loading-nodes_img00.png +0 -0
  146. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-loading-nodes_img01.png +0 -0
  147. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-loading-nodes_img02.png +0 -0
  148. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-loading-nodes_user_log_showing_missing.png +0 -0
  149. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-looping_img00.png +0 -0
  150. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-looping_img01.png +0 -0
  151. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-looping_img02.png +0 -0
  152. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-nodes-variable-parameters_img00.png +0 -0
  153. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-nodes-variable-parameters_img01.png +0 -0
  154. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-nodes-variable-parameters_img02.png +0 -0
  155. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-nodes-variable-parameters_img03.png +0 -0
  156. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img00.png +0 -0
  157. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img01.png +0 -0
  158. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img02.png +0 -0
  159. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img03.png +0 -0
  160. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img04.png +0 -0
  161. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img05.png +0 -0
  162. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img06.png +0 -0
  163. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img07.png +0 -0
  164. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-other-objects_img08.png +0 -0
  165. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img00.png +0 -0
  166. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img01_0.png +0 -0
  167. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img01_1.png +0 -0
  168. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img02.png +0 -0
  169. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img03_0.png +0 -0
  170. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img03_1.png +0 -0
  171. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img04_0.png +0 -0
  172. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img04_1.png +0 -0
  173. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img05_0.png +0 -0
  174. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-preview-widgets_img05_1.png +0 -0
  175. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-viewer-nodes-with-custom-visualization-loops_img00.png +0 -0
  176. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-widget-presets_img00.png +0 -0
  177. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-widget-presets_img01.png +0 -0
  178. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-widget-presets_img02.png +0 -0
  179. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-widget-presets_img03.png +0 -0
  180. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-widget-presets_img04.png +0 -0
  181. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/manual.nodezator.pysite/images/ch-widget-presets_img05.png +0 -0
  182. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/license.htsl +0 -0
  183. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/codeblock_clipboard_button.png +0 -0
  184. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/doctest_format_comparison.png +0 -0
  185. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/graphs_different_appearances.png +0 -0
  186. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/local_browser_new_appearance.png +0 -0
  187. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/new_app_defined_nodes.png +0 -0
  188. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/new_viewer_node.png +0 -0
  189. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/nodes_from_new_categories.png +0 -0
  190. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/operator_nodes_new_appearance.png +0 -0
  191. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/same_node_different_modes.png +0 -0
  192. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-4-x/widget_visible_invisible.png +0 -0
  193. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-5-x/birds_eye_view.png +0 -0
  194. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-5-x/dialog_to_jump_to_node.png +0 -0
  195. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-5-x/gui_automation_submenu.png +0 -0
  196. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-5-x/not_found_drawing_comparison.png +0 -0
  197. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-5-x/socket_proximity_detection.png +0 -0
  198. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-5-x/system_testing_form.png +0 -0
  199. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/images/v1-5-x/system_testing_report_initial_portion.png +0 -0
  200. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/aww/nodezator.pysite/whats-new/index.htsl +0 -0
  201. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/OFL_license_for_all_other_fonts.txt +0 -0
  202. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/cc0_license_for_nodezator_icons.txt +0 -0
  203. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/enc_sans_sexp_bold_mplus_1p_2000em_med.ttf +0 -0
  204. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/fira_mono_bold_mplus_1m_med.ttf +0 -0
  205. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/nodezator_icons.ttf +0 -0
  206. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/noto_sans_bold.ttf +0 -0
  207. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/noto_sans_italic.ttf +0 -0
  208. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/noto_sans_mono_medium.ttf +0 -0
  209. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/fonts/noto_sans_regular.ttf +0 -0
  210. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/glossary.rst +0 -0
  211. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/baseball.svg +0 -0
  212. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/baseball_glove.png +0 -0
  213. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/bluesky_logo.png +0 -0
  214. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/colors_editor_scale_images.png +0 -0
  215. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/discord_logo.png +0 -0
  216. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/github_mark.png +0 -0
  217. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/hand_closed.png +0 -0
  218. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/hand_open.png +0 -0
  219. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/kennedy_logo.png +0 -0
  220. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/mask_wave.png +0 -0
  221. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/nodezator_logo.png +0 -0
  222. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/patreon_logo.png +0 -0
  223. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/pygame_logo.png +0 -0
  224. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/python_filemanager_icon.png +0 -0
  225. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/python_menu_icon.png +0 -0
  226. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/python_splashscreen_icon.png +0 -0
  227. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/splash_nodezator_robot.png +0 -0
  228. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/splash_nodezator_robot_arm_a.png +0 -0
  229. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/splash_nodezator_robot_arm_b.png +0 -0
  230. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/images/unlicense_logo.png +0 -0
  231. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/locale/en_us/dialogs_map.pyl +0 -0
  232. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/locale/en_us/status_messages_map.pyl +0 -0
  233. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/locale/pt_br/dialogs_map.pyl +0 -0
  234. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/locale/pt_br/status_messages_map.pyl +0 -0
  235. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/syntax_themes/comment/fresh_eucalyptus_dark.pyl +0 -0
  236. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/syntax_themes/comment/pale_green.pyl +0 -0
  237. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/syntax_themes/python/ice_with_candy.pyl +0 -0
  238. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/syntax_themes/python/sprinkled_dark.pyl +0 -0
  239. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/syntax_themes/user_log/message_temperature.pyl +0 -0
  240. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/syntax_themes/user_log/message_temperature_dark.pyl +0 -0
  241. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/shared/file_with_objects.zip +0 -0
  242. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0000.zip +0 -0
  243. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0001.zip +0 -0
  244. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0002.zip +0 -0
  245. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0003.zip +0 -0
  246. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0004.zip +0 -0
  247. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0005.zip +0 -0
  248. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0006.zip +0 -0
  249. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0007.zip +0 -0
  250. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0008.zip +0 -0
  251. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0009.zip +0 -0
  252. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0010.zip +0 -0
  253. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_cases/stc0011.zip +0 -0
  254. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/data/system_testing/test_id_to_title.pyl +0 -0
  255. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/dialog.py +0 -0
  256. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/__init__.py +0 -0
  257. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/birdseyeview.py +0 -0
  258. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/categorycolors.py +0 -0
  259. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/data.py +0 -0
  260. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/gridlogic.py +0 -0
  261. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/imageexport/__init__.py +0 -0
  262. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/imageexport/form.py +0 -0
  263. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/imageexport/main.py +0 -0
  264. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/jumptonode.py +0 -0
  265. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/main.py +0 -0
  266. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/nodepacksforms/__init__.py +0 -0
  267. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/nodepacksforms/renaming.py +0 -0
  268. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/nodepacksforms/selection.py +0 -0
  269. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/objinsert.py +0 -0
  270. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/objpopups/__init__.py +0 -0
  271. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/objpopups/callablenode.py +0 -0
  272. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/objpopups/constants.py +0 -0
  273. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/objpopups/proxynode.py +0 -0
  274. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/objpopups/textblock.py +0 -0
  275. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/playback/__init__.py +0 -0
  276. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/playback/demonstrate/__init__.py +0 -0
  277. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/playback/demonstrate/constants.py +0 -0
  278. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/playback/demonstrate/filtering.py +0 -0
  279. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/playback/play.py +0 -0
  280. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/playback/record.py +0 -0
  281. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/playback/systemtesting.py +0 -0
  282. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/pythonexporting.py +0 -0
  283. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/reposition.py +0 -0
  284. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/selection.py +0 -0
  285. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/socketpopups/__init__.py +0 -0
  286. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/socketpopups/input.py +0 -0
  287. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/socketpopups/output.py +0 -0
  288. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/socketpopups/proxy.py +0 -0
  289. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/widgetpicker/__init__.py +0 -0
  290. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/widgetpicker/main.py +0 -0
  291. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/widgetpicker/subforms.py +0 -0
  292. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/widgetpopups/__init__.py +0 -0
  293. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/editing/widgetpopups/creation.py +0 -0
  294. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/__init__.py +0 -0
  295. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/bookmarkpanel/__init__.py +0 -0
  296. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/bookmarkpanel/main.py +0 -0
  297. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/bookmarkpanel/surfs.py +0 -0
  298. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/constants.py +0 -0
  299. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/dirpanel/__init__.py +0 -0
  300. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/dirpanel/extraop.py +0 -0
  301. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/dirpanel/loadop.py +0 -0
  302. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/dirpanel/main.py +0 -0
  303. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/dirpanel/mouseop.py +0 -0
  304. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/dirpanel/newpathform.py +0 -0
  305. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/dirpanel/surfs.py +0 -0
  306. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/main.py +0 -0
  307. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/op.py +0 -0
  308. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/pathobj.py +0 -0
  309. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fileman/surfs.py +0 -0
  310. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/__init__.py +0 -0
  311. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/cache.py +0 -0
  312. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/constants.py +0 -0
  313. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/exception.py +0 -0
  314. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/preview/__init__.py +0 -0
  315. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/preview/cache.py +0 -0
  316. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/preview/render.py +0 -0
  317. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/test_cache.py +0 -0
  318. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/viewer/__init__.py +0 -0
  319. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/viewer/main.py +0 -0
  320. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/fontsman/viewer/render.py +0 -0
  321. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/__init__.py +0 -0
  322. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/builtinnode/__init__.py +0 -0
  323. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/builtinnode/constants.py +0 -0
  324. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/builtinnode/export.py +0 -0
  325. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/builtinnode/main.py +0 -0
  326. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/__init__.py +0 -0
  327. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/constants.py +0 -0
  328. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/execution.py +0 -0
  329. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/export.py +0 -0
  330. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/main.py +0 -0
  331. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/outputviz.py +0 -0
  332. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/preproc.py +0 -0
  333. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/segment.py +0 -0
  334. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/subparam/__init__.py +0 -0
  335. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/subparam/main.py +0 -0
  336. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/subparam/segment.py +0 -0
  337. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/subparam/unpacking.py +0 -0
  338. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/subparam/widget.py +0 -0
  339. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/surfs.py +0 -0
  340. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/utils.py +0 -0
  341. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizop/__init__.py +0 -0
  342. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizop/callablereposition.py +0 -0
  343. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizop/collapsedreposition.py +0 -0
  344. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizop/collapsing.py +0 -0
  345. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizop/expandedreposition.py +0 -0
  346. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizop/main.py +0 -0
  347. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/__init__.py +0 -0
  348. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/bodysetup/__init__.py +0 -0
  349. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/bodysetup/callablecreation.py +0 -0
  350. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/bodysetup/collapsedcreation.py +0 -0
  351. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/bodysetup/expandedcreation.py +0 -0
  352. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/bodysetup/main.py +0 -0
  353. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/calmode/__init__.py +0 -0
  354. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/main.py +0 -0
  355. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/sigmode/__init__.py +0 -0
  356. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/sigmode/param.py +0 -0
  357. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/callablenode/vizprep/sigmode/varparam.py +0 -0
  358. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/capsulenode/__init__.py +0 -0
  359. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/capsulenode/constants.py +0 -0
  360. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/capsulenode/export.py +0 -0
  361. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/capsulenode/generaldefs.py +0 -0
  362. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/capsulenode/main.py +0 -0
  363. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/capsulenode/pygamedefs.py +0 -0
  364. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/editlogic.py +0 -0
  365. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/exception.py +0 -0
  366. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/execution.py +0 -0
  367. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/__init__.py +0 -0
  368. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/constants.py +0 -0
  369. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/export.py +0 -0
  370. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/main.py +0 -0
  371. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/nodedefs/__init__.py +0 -0
  372. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/nodedefs/viewasmonotext.py +0 -0
  373. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/nodedefs/viewastext.py +0 -0
  374. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/nodedefs/viewpythonsource.py +0 -0
  375. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/genviewernode/nodedefs/viewsurface.py +0 -0
  376. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/main.py +0 -0
  377. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/nodepacksissues.py +0 -0
  378. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/operatornode/__init__.py +0 -0
  379. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/operatornode/constants.py +0 -0
  380. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/operatornode/execution.py +0 -0
  381. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/operatornode/export.py +0 -0
  382. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/operatornode/main.py +0 -0
  383. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/operatornode/surfs.py +0 -0
  384. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/operatornode/vizop.py +0 -0
  385. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/operatornode/vizprep.py +0 -0
  386. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/presets.py +0 -0
  387. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/__init__.py +0 -0
  388. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/constants.py +0 -0
  389. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/export.py +0 -0
  390. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/main.py +0 -0
  391. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/segment.py +0 -0
  392. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/surfs.py +0 -0
  393. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/titleupdate.py +0 -0
  394. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/utils.py +0 -0
  395. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/vizop/__init__.py +0 -0
  396. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/vizop/main.py +0 -0
  397. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/vizop/reposition.py +0 -0
  398. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/vizprep.py +0 -0
  399. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/proxynode/widget.py +0 -0
  400. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/pythonrepr.py +0 -0
  401. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/scriptloading/__init__.py +0 -0
  402. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/scriptloading/node_pack_no_callable.zip +0 -0
  403. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/scriptloading/node_pack_no_signature.zip +0 -0
  404. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/scriptloading/node_pack_nodes.zip +0 -0
  405. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/scriptloading/node_pack_not_callable_object.zip +0 -0
  406. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/scriptloading/node_pack_not_inspectable.zip +0 -0
  407. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/scriptloading/node_pack_with_error.zip +0 -0
  408. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/scriptloading/tests.py +0 -0
  409. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socket/__init__.py +0 -0
  410. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socket/base.py +0 -0
  411. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socket/input.py +0 -0
  412. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socket/output.py +0 -0
  413. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socket/placeholder.py +0 -0
  414. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socket/proxy.py +0 -0
  415. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socket/surfs.py +0 -0
  416. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socketparenthood/__init__.py +0 -0
  417. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socketparenthood/action.py +0 -0
  418. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socketparenthood/draw/__init__.py +0 -0
  419. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socketparenthood/draw/connectionassist.py +0 -0
  420. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socketparenthood/export.py +0 -0
  421. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socketparenthood/main.py +0 -0
  422. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socketparenthood/support.py +0 -0
  423. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/socketparenthood/utils.py +0 -0
  424. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/stlibnode/__init__.py +0 -0
  425. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/stlibnode/constants.py +0 -0
  426. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/stlibnode/export.py +0 -0
  427. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/stlibnode/main.py +0 -0
  428. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/textblock/__init__.py +0 -0
  429. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/textblock/check.py +0 -0
  430. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/textblock/constants.py +0 -0
  431. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/textblock/export.py +0 -0
  432. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/textblock/main.py +0 -0
  433. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/textblock/surf.py +0 -0
  434. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/thirdlibnode/__init__.py +0 -0
  435. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/thirdlibnode/constants.py +0 -0
  436. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/thirdlibnode/export.py +0 -0
  437. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/thirdlibnode/main.py +0 -0
  438. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/thirdlibnode/signaturedefs.py +0 -0
  439. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/utils.py +0 -0
  440. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/validation/__init__.py +0 -0
  441. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/validation/doctest.test.md +0 -0
  442. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/validation/main.py +0 -0
  443. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/validation/test_data.pyl +0 -0
  444. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/validation/testmarkdown.py +0 -0
  445. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/widget/__init__.py +0 -0
  446. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/widget/export.py +0 -0
  447. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/widget/popupdefinition.py +0 -0
  448. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/graphman/widget/utils.py +0 -0
  449. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/hideswitch.py +0 -0
  450. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/htsl/__init__.py +0 -0
  451. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/htsl/codeblock.py +0 -0
  452. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/htsl/constants.py +0 -0
  453. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/htsl/creation.py +0 -0
  454. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/htsl/image.py +0 -0
  455. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/htsl/main.py +0 -0
  456. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/htsl/prep.py +0 -0
  457. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/iconfactory.py +0 -0
  458. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/imagesman/__init__.py +0 -0
  459. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/imagesman/cache.py +0 -0
  460. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/imagesman/previewer/__init__.py +0 -0
  461. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/imagesman/previewer/constants.py +0 -0
  462. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/imagesman/previewer/main.py +0 -0
  463. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/imagesman/previewer/op.py +0 -0
  464. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/imagesman/render.py +0 -0
  465. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/knownpacks.py +0 -0
  466. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/logman/__init__.py +0 -0
  467. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/logman/constants.py +0 -0
  468. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/logman/fixeddialog.py +0 -0
  469. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/logman/main.py +0 -0
  470. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/logman/utils.py +0 -0
  471. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/loopman/__init__.py +0 -0
  472. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/loopman/exception.py +0 -0
  473. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/loopman/main.py +0 -0
  474. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/mainloop.py +0 -0
  475. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/memoryman.py +0 -0
  476. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/__init__.py +0 -0
  477. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/behaviour.py +0 -0
  478. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/command.py +0 -0
  479. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/common.py +0 -0
  480. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/hover.py +0 -0
  481. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/iconfactory.py +0 -0
  482. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/main.py +0 -0
  483. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/scroll.py +0 -0
  484. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/submenu/__init__.py +0 -0
  485. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/submenu/main.py +0 -0
  486. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/submenu/scroll.py +0 -0
  487. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/submenu/utils.py +0 -0
  488. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/menu/surffactory.py +0 -0
  489. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/__init__.py +0 -0
  490. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/behaviour.py +0 -0
  491. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/button.py +0 -0
  492. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/debug.py +0 -0
  493. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/grid/__init__.py +0 -0
  494. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/grid/main.py +0 -0
  495. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/grid/oop.py +0 -0
  496. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/iterablewidget/__init__.py +0 -0
  497. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/iterablewidget/list.py +0 -0
  498. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/iterablewidget/op.py +0 -0
  499. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/iterablewidget/set.py +0 -0
  500. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/iterablewidget/surfs.py +0 -0
  501. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/keyconst.py +0 -0
  502. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/listbox.py +0 -0
  503. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/scale.py +0 -0
  504. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/searchbox.py +0 -0
  505. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/sortingeditor/__init__.py +0 -0
  506. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/sortingeditor/main.py +0 -0
  507. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/sortingeditor/modes.py +0 -0
  508. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/our3rdlibs/userlogger.py +0 -0
  509. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/__init__.py +0 -0
  510. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/behaviour.py +0 -0
  511. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/collections/__init__.py +0 -0
  512. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/collections/fldict/__init__.py +0 -0
  513. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/collections/fldict/doctest.test.md +0 -0
  514. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/collections/fldict/main.py +0 -0
  515. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/collections/fldict/testmarkdown.py +0 -0
  516. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/collections/general.py +0 -0
  517. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/collections/nestedfromdict.py +0 -0
  518. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/color/__init__.py +0 -0
  519. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/color/constants.py +0 -0
  520. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/color/conversion.py +0 -0
  521. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/color/creation.py +0 -0
  522. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/color/custom.py +0 -0
  523. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/color/largemaps.py +0 -0
  524. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/color/property.py +0 -0
  525. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/color/utils.py +0 -0
  526. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/datetimeutils.py +0 -0
  527. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/debug.py +0 -0
  528. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/dictutils.py +0 -0
  529. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/exceptionutils.py +0 -0
  530. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/importutils.py +0 -0
  531. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/iterutils.py +0 -0
  532. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/mathutils.py +0 -0
  533. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/meta.py +0 -0
  534. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/path.py +0 -0
  535. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/profileutils.py +0 -0
  536. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/pyl.py +0 -0
  537. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/stringutils.py +0 -0
  538. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/timeutils.py +0 -0
  539. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/ourstdlibs/treeutils.py +0 -0
  540. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pointsman2d/__init__.py +0 -0
  541. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pointsman2d/create.py +0 -0
  542. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pointsman2d/shape.py +0 -0
  543. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pointsman2d/transform.py +0 -0
  544. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pygamesetup/__init__.py +0 -0
  545. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pygamesetup/services/__init__.py +0 -0
  546. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pygamesetup/services/play.py +0 -0
  547. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/pygamesetup/services/record.py +0 -0
  548. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/recentfile.py +0 -0
  549. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/__init__.py +0 -0
  550. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/cluster.py +0 -0
  551. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/constants.py +0 -0
  552. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/README.md +0 -0
  553. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/__init__.py +0 -0
  554. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/fixtures.py +0 -0
  555. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/individual_positioning.test.md +0 -0
  556. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/introduction.test.md +0 -0
  557. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/operations_part01.test.md +0 -0
  558. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/operations_part02.test.md +0 -0
  559. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/operations_part03.test.md +0 -0
  560. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/other_topics_part01.test.md +0 -0
  561. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/other_topics_part02.test.md +0 -0
  562. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/other_topics_part03.test.md +0 -0
  563. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/special_methods_part01.test.md +0 -0
  564. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/special_methods_part02.test.md +0 -0
  565. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/doctests/testmarkdown.py +0 -0
  566. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/main.py +0 -0
  567. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/singlepos.py +0 -0
  568. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/sizepos.py +0 -0
  569. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/spatial.py +0 -0
  570. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/special.py +0 -0
  571. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/rectsman/utils.py +0 -0
  572. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/splashscreen/__init__.py +0 -0
  573. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/splashscreen/animsetup.py +0 -0
  574. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/splashscreen/constants.py +0 -0
  575. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/splashscreen/main.py +0 -0
  576. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/splashscreen/op.py +0 -0
  577. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfdef.py +0 -0
  578. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/__init__.py +0 -0
  579. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/cache.py +0 -0
  580. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/draw.py +0 -0
  581. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/mathutils.py +0 -0
  582. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/render.py +0 -0
  583. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/svgexport.py +0 -0
  584. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/viewer/__init__.py +0 -0
  585. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/viewer/constants.py +0 -0
  586. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/viewer/main.py +0 -0
  587. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/surfsman/viewer/op.py +0 -0
  588. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/svgutils.py +0 -0
  589. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/__init__.py +0 -0
  590. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/exception.py +0 -0
  591. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/syntaxes/__init__.py +0 -0
  592. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/syntaxes/comment.py +0 -0
  593. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/syntaxes/python/__init__.py +0 -0
  594. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/syntaxes/python/main.py +0 -0
  595. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/syntaxes/python/namemap.py +0 -0
  596. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/syntaxes/python/utils.py +0 -0
  597. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/syntaxes/userlog.py +0 -0
  598. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/syntaxman/utils.py +0 -0
  599. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/__init__.py +0 -0
  600. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/constants.py +0 -0
  601. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/playsupport.py +0 -0
  602. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/reportviewer/__init__.py +0 -0
  603. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/reportviewer/constants.py +0 -0
  604. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/reportviewer/factoryfuncs.py +0 -0
  605. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/reportviewer/op.py +0 -0
  606. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/__init__.py +0 -0
  607. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0000.py +0 -0
  608. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0001.py +0 -0
  609. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0002.py +0 -0
  610. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0003.py +0 -0
  611. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0004.py +0 -0
  612. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0005.py +0 -0
  613. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0006.py +0 -0
  614. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0007.py +0 -0
  615. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0008.py +0 -0
  616. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0009.py +0 -0
  617. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0010.py +0 -0
  618. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/systemtesting/testcases/stc0011.py +0 -0
  619. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/__init__.py +0 -0
  620. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/cache.py +0 -0
  621. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/__init__.py +0 -0
  622. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/constants.py +0 -0
  623. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/cursor/__init__.py +0 -0
  624. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/cursor/main.py +0 -0
  625. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/cursor/modes/__init__.py +0 -0
  626. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/cursor/modes/insert.py +0 -0
  627. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/cursor/modes/normal.py +0 -0
  628. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/cursor/navigation.py +0 -0
  629. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/cursor/op.py +0 -0
  630. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/cursor/syntaxhigh.py +0 -0
  631. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/line.py +0 -0
  632. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/editor/main.py +0 -0
  633. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/entryedition/__init__.py +0 -0
  634. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/entryedition/cursor.py +0 -0
  635. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/entryedition/line.py +0 -0
  636. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/label/__init__.py +0 -0
  637. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/label/autolabel.py +0 -0
  638. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/label/main.py +0 -0
  639. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/render.py +0 -0
  640. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/text.py +0 -0
  641. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/viewer/__init__.py +0 -0
  642. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/viewer/constants.py +0 -0
  643. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/viewer/main.py +0 -0
  644. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/viewer/op.py +0 -0
  645. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/textman/viewer/prep.py +0 -0
  646. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/translation.py +0 -0
  647. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/userprefsman/__init__.py +0 -0
  648. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/userprefsman/constants.py +0 -0
  649. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/userprefsman/generalform.py +0 -0
  650. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/userprefsman/socketdetectionform.py +0 -0
  651. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/userprefsman/utils.py +0 -0
  652. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/userprefsman/validation.py +0 -0
  653. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/videopreview/__init__.py +0 -0
  654. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/videopreview/cache.py +0 -0
  655. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/videopreview/constants.py +0 -0
  656. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/videopreview/previewer.py +0 -0
  657. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/videopreview/render.py +0 -0
  658. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/__init__.py +0 -0
  659. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/checkbutton.py +0 -0
  660. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/colorbutton.py +0 -0
  661. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/defaultholder.py +0 -0
  662. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/intfloatentry/__init__.py +0 -0
  663. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/intfloatentry/main.py +0 -0
  664. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/intfloatentry/modes.py +0 -0
  665. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/intfloatentry/numeval.py +0 -0
  666. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/intfloatentry/op.py +0 -0
  667. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/literaldisplay.py +0 -0
  668. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/literalentry.py +0 -0
  669. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/optionmenu/__init__.py +0 -0
  670. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/optionmenu/creation.py +0 -0
  671. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/optionmenu/main.py +0 -0
  672. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/optionmenu/op.py +0 -0
  673. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/optiontray/__init__.py +0 -0
  674. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/optiontray/creation.py +0 -0
  675. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/optiontray/main.py +0 -0
  676. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/optiontray/op.py +0 -0
  677. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/__init__.py +0 -0
  678. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/audio.py +0 -0
  679. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/base.py +0 -0
  680. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/constants.py +0 -0
  681. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/font.py +0 -0
  682. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/image.py +0 -0
  683. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/path.py +0 -0
  684. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/text.py +0 -0
  685. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/pathpreview/video.py +0 -0
  686. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/sortingbutton.py +0 -0
  687. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/stringentry.py +0 -0
  688. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/widget/textdisplay.py +0 -0
  689. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/__init__.py +0 -0
  690. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/fileop.py +0 -0
  691. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/label.py +0 -0
  692. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/main.py +0 -0
  693. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/menu.py +0 -0
  694. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/states/__init__.py +0 -0
  695. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/states/birdseyeview.py +0 -0
  696. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/states/boxselection.py +0 -0
  697. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/states/loadedfile.py +0 -0
  698. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/states/movingobject.py +0 -0
  699. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/states/nofile.py +0 -0
  700. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/states/segmentdef.py +0 -0
  701. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/states/segmentsev.py +0 -0
  702. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator/winman/switch.py +0 -0
  703. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator.egg-info/dependency_links.txt +0 -0
  704. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator.egg-info/entry_points.txt +0 -0
  705. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator.egg-info/requires.txt +0 -0
  706. {nodezator-1.5.3 → nodezator-1.5.5}/nodezator.egg-info/top_level.txt +0 -0
@@ -1,35 +1,30 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: nodezator
3
- Version: 1.5.3
3
+ Version: 1.5.5
4
4
  Summary: A generalist Python node editor
5
- Home-page: https://nodezator.com
6
- Author: Kennedy Richard
7
- Author-email: kennedy@kennedyrichard.com
5
+ Author-email: Kennedy Richard <kennedy@kennedyrichard.com>
8
6
  License: Unlicense
9
- Project-URL: Source code, https://github.com/IndiePython/nodezator
10
- Project-URL: Forum, https://github.com/IndiePython/nodezator/discussions
11
- Project-URL: User manual, https://manual.nodezator.com
12
- Project-URL: Bug Tracker, https://github.com/IndiePython/nodezator/issues
13
- Project-URL: Donate, https://indiepython.com/donate
7
+ Project-URL: Homepage, https://nodezator.com
8
+ Project-URL: Source Code, https://github.com/IndieSmiths/nodezator
9
+ Project-URL: Forum, https://github.com/IndieSmiths/nodezator/discussions
10
+ Project-URL: User Manual, https://manual.nodezator.com
11
+ Project-URL: Bug Tracker, https://github.com/IndieSmiths/nodezator/issues
12
+ Project-URL: Donate, https://indiesmiths.com/donate
14
13
  Keywords: gui,desktop,application,pygame,pygame-ce,graph,graphs,nodes,node,editor
15
14
  Classifier: License :: OSI Approved :: The Unlicense (Unlicense)
16
15
  Classifier: Development Status :: 4 - Beta
17
16
  Classifier: Programming Language :: Python :: 3
18
- Classifier: Programming Language :: Python :: 3.7
19
- Classifier: Programming Language :: Python :: 3.8
20
- Classifier: Programming Language :: Python :: 3.9
21
- Classifier: Programming Language :: Python :: 3.10
22
17
  Classifier: Programming Language :: Python :: Implementation :: CPython
23
18
  Classifier: Topic :: Software Development
24
- Classifier: Topic :: Software Development :: User Interfaces
25
19
  Classifier: Topic :: Software Development :: Libraries :: pygame
20
+ Classifier: Topic :: Desktop Environment
21
+ Classifier: Topic :: Multimedia
26
22
  Classifier: Topic :: Software Development :: User Interfaces
27
23
  Classifier: Topic :: Software Development :: Code Generators
28
24
  Classifier: Topic :: Artistic Software
29
- Classifier: Topic :: Desktop Environment
30
- Classifier: Topic :: Multimedia
31
25
  Classifier: Topic :: Office/Business
32
26
  Classifier: Topic :: Scientific/Engineering
27
+ Classifier: Intended Audience :: End Users/Desktop
33
28
  Requires-Python: >=3.7
34
29
  Description-Content-Type: text/markdown
35
30
  Requires-Dist: pygame-ce
@@ -69,7 +64,9 @@ main_callable = get_circle_area
69
64
 
70
65
  ![node image](https://nodezator.com/images/get_circle_area_node.png)
71
66
 
72
- You can store these functions/node definitions anywhere you want in your disk and once you launch Nodezator just provide the path so Nodezator can load them. The only requirement is that you organize these nodes definitions in separate files and store then in a folder (more about that further ahead in another section).
67
+ You can store these functions/node definitions anywhere you want in your disk and once you launch Nodezator just provide the path so Nodezator can load them. The only requirement is that you organize these nodes definitions in separate files and store them in a folder. This small video (~2min) actually shows you how to define and load a node in **less than 60 seconds**:
68
+
69
+ [![video: Defining and loading a node in less than 60 seconds](https://img.youtube.com/vi/cMfoaEs0fGY/hqdefault.jpg)](https://www.youtube.com/watch?v=cMfoaEs0fGY)
73
70
 
74
71
  You can actually turn **any** callable into a node very easily: classes, methods, etc. All callables available in the Python ecosystem can be turned into a node (even the ones defined in C, for instance).
75
72
 
@@ -93,14 +90,14 @@ There's also a [youtube video][] presenting Nodezator:
93
90
 
94
91
  [![thumb of youtube video](https://img.youtube.com/vi/GlQJvuU7Z_8/hqdefault.jpg)](https://www.youtube.com/watch?v=GlQJvuU7Z_8)
95
92
 
96
- Nodezator is made with pure Python on top of the [pygame-ce][] library (and a bit of the excellent [numpy][] library as well), by [Kennedy Richard Silva Guerra][] (born in 1990), as part of the [Indie Python][] project.
93
+ Nodezator is made with pure Python on top of the [pygame-ce][] library (and a bit of the excellent [numpy][] library as well), by [Kennedy Richard Silva Guerra][] (born in 1990), as part of the [Indie Smiths][] project.
97
94
 
98
95
  > [!NOTE]
99
96
  > Despite being maintained mostly by a single person, Nodezator is a serious and active project that gets a couple of large releases every year.
100
97
 
101
98
  We recommend Nodezator for **intermediate Python users**. Or, in case you are not a programmer, have an intermediate Python user next to you so that person can help you set up a no-code/low-code workflow for you.
102
99
 
103
- Nodezator can already be used in production and supports a vast variety of workflows. It still has a long way to go, though. So, please, be patient and also consider supporting it: https://indiepython.com/donate
100
+ Nodezator can already be used in production and supports a vast variety of workflows. It still has a long way to go, though. So, please, be patient and also consider supporting it: https://indiesmiths.com/donate
104
101
 
105
102
  After you finish reading this README file, you may also want to visit Nodezator's homepage: https://nodezator.com
106
103
 
@@ -113,7 +110,7 @@ On top of making it very easy to define nodes, Nodezator comes packed full of us
113
110
 
114
111
  As we said before, Nodezator allows you to convert callables from third-party libraries with minimal effort. Here are just a few screenshots showing the usage of Nodezator with different libraries.
115
112
 
116
- Here's is a simple graph showing Nodezator usage with the [Pillow](https://python-pillow.org/) library.
113
+ Here's a simple graph showing Nodezator usage with the [Pillow](https://python-pillow.org/) library.
117
114
 
118
115
  ![Pillow demonstration](https://nodezator.com/images/nodezator_pillow_demo.png)
119
116
 
@@ -167,7 +164,7 @@ Simply put, Nodezator is just a visual, node-based representation of Python.
167
164
 
168
165
  ### Socket proximity detection
169
166
 
170
- Having to click exactly over a socket to drag a new connection out of it and on top of that having to drop such new connection exactly on top of another socket are both repetitive tasks that are difficult to do right in one quick motion. Often, people loose precious time trying to ensure the mouse is exactly over the desired socket, specially considering how often those tasks are performed in any graph edition session.
167
+ Having to click exactly over a socket to drag a new connection out of it and on top of that having to drop such new connection exactly on top of another socket are both repetitive tasks that are difficult to do right in one quick motion. Often, people lose precious time trying to ensure the mouse is exactly over the desired socket, specially considering how often those tasks are performed in any graph edition session.
171
168
 
172
169
  Because of that, Nodezator features socket proximity detection to assist the user when establishing or replacing existing connection. The user doesn't need to click exactly over a socket to drag a new connection out of it anymore. Dropping the new connection exactly over the other socket isn't necessary either. As long as the mouse is close enough, these actions can be carried over effortlessly. Here you can see it in action:
173
170
 
@@ -251,6 +248,8 @@ However, users are encouraged to define their own nodes for their specific purpo
251
248
 
252
249
  ![A user-defined node](https://nodezator.com/images/node.png)
253
250
 
251
+ In case you missed it at the beginning of this README, here's the link to a small video demonstrating how to define and load a node in less than 60 seconds: https://www.youtube.com/watch?v=cMfoaEs0fGY
252
+
254
253
  Nodes are created from Python scripts organized within folders that we call **node packs**. You can create a node pack folder **anywhere you want in your disk**. Under the hood, Nodezator treats it as a package in some contexts, so you can name that folder whatever you like, as long as it is a Python identifier. That is, it must start with a letter or underscore and contain only letters, digits and underscores.
255
254
 
256
255
  In other words, you **create nodes by writing Python functions/callables using your preferred text editor or IDE** and only then you **launch Nodezator in order to load them as nodes**, so you can create, edit and execute graphs.
@@ -280,7 +279,7 @@ Once you distributed your nodes, you may want a place wherein to let people know
280
279
 
281
280
  You can do all this on the [nodes gallery][] website. There you can search node packs by name, author and tags.
282
281
 
283
- To have a link to your node pack added to the nodes gallery/database, upload it somewhere people can download/install it from, as described in the manual's chapter about [distributing your nodes][], then submit the relevant info about your node pack in this [node pack submission form][]. Alternatively, you can also submit a pull request to the [nodes gallery repository][] on github following the instructions on the README.md file.
282
+ To have a link to your node pack added to the nodes gallery/database, upload it somewhere people can download/install it from, as described in the manual's chapter about [distributing your nodes][], then submit the relevant info about your node pack in this [node pack submission form][]. Alternatively, you can also submit a pull request to the [nodes gallery repository][] on GitHub following the instructions on the README.md file.
284
283
 
285
284
  You can also [email][] me if you need any help.
286
285
 
@@ -326,9 +325,13 @@ The in-app version is always the most accurate, since it is updated first, where
326
325
 
327
326
  Everyone is welcome to suggest and contribute changes.
328
327
 
329
- If the proposed change is small enough, you can submit your pull request for analysis right away and it will be answered ASAP.
328
+ If the proposed change is small enough, you can submit your pull request (PR) for analysis right away to the `develop` branch and it will be answered ASAP.
329
+
330
+ Please, if submitting a pull request, use the `develop` branch, not the `main` branch. This way it is easier to refine/complement your changes before merging them with `main`.
331
+
332
+ More complex pull requests will also be welcome in the future, but due to the complexity of the app, I will first need to finish implementing the missing system test cases to ensure everyone's future contributions do not break each other.
330
333
 
331
- More complex pull requests will also be welcome in the future, but due to the complexity of the app, I will first need to implement some automated GUI tests to ensure everyone's future contributions do not break each other.
334
+ Speaking of system testing, Nodezator has system testing capabilities that take advantage of GUI automation, with a few test cases already implemented. Just press **Shift+Ctrl+F8** to see the current system test cases run automatically. Once the tests finish running, a report with the results is displayed so you can inspect them. If you need, the report can be exported to a variety of formats with the buttons at the bottom of the report. You can also configure the system testing session in the menu **Gui Automation > System testing > Setup and run custom session**.
332
335
 
333
336
 
334
337
  ## Issues
@@ -341,7 +344,7 @@ If you find a bug that...
341
344
  - causes Nodezator to crash;
342
345
  - representing something malfunctioning or not working at all;
343
346
 
344
- ...then, please, use [github issues][] to submit an issue as soon as possible.
347
+ ...then, please, use [GitHub issues][] to submit an issue as soon as possible.
345
348
 
346
349
  Please, include as much information as you can:
347
350
 
@@ -358,20 +361,20 @@ Nevertheless, never hesitate to ask for help, even if you don't have much info a
358
361
 
359
362
  ### Minor issues
360
363
 
361
- If however, the problem is not as serious/urgent, that is, it doesn't cause Nodezator to crash or malfunction, then, please, open a discussion on [github discussions][] instead. There's a dedicated category for this kind of problem called "Minor issue".
364
+ If however, the problem is not as serious/urgent, that is, it doesn't cause Nodezator to crash or malfunction, then, please, open a discussion on [GitHub discussions][] instead. There's a dedicated category for this kind of problem called "Minor issue".
362
365
 
363
- It doesn't mean your issue is any less important. It is just that in Nodezator and other Indie Python repos we use [github issues][] for things that crash the app or otherwise prevent the user from doing something that is supposed to be available (stuff that cause crashes or malfunctioning). When such a critical issue appears, any other work is paused and all attention is given to that issue so that it can be fixed ASAP.
366
+ It doesn't mean your issue is any less important. It is just that in Nodezator and other Indie Smiths's repos we use [GitHub issues][] for things that crash the app or otherwise prevent the user from doing something that is supposed to be available (stuff that cause crashes or malfunctioning). When such a critical issue appears, any other work is paused and all attention is given to that issue so that it can be fixed ASAP.
364
367
 
365
368
  This measure is taken for the benefit of the users: by doing things this way, whenever you have an urgent/critical issue, it won't compete for space with other less urgent matters. We'll be able to promptly schedule time to solve the issue.
366
369
 
367
- Minor issues, suggestions of improvements, feature requests, feedback about bad experiences, etc. are all important, but they don't have the same urgency as something that crashes the app or causes it to malfunction. This is why we use [github discussions][] for the less urgent stuff. They'll be tended to all the same, just not with the same urgency.
370
+ Minor issues, suggestions of improvements, feature requests, feedback about bad experiences, etc. are all important, but they don't have the same urgency as something that crashes the app or causes it to malfunction. This is why we use [GitHub discussions][] for the less urgent stuff. They'll be tended to all the same, just not with the same urgency.
368
371
 
369
- Of course, [github discussions][] is used for many other important stuff as well, as we'll see in the next section.
372
+ Of course, [GitHub discussions][] is used for many other important stuff as well, as we'll see in the next section.
370
373
 
371
374
 
372
375
  ## Discussions/forum
373
376
 
374
- Consider [github discussions][] as the official online forum for Nodezator.
377
+ Consider [GitHub discussions][] as the official online forum for Nodezator.
375
378
 
376
379
  It is used for many things like announcements to the community, to list planned/requested features, to communicate and discuss current work, etc.
377
380
 
@@ -392,14 +395,14 @@ If you have...
392
395
 
393
396
  Contact me any time via [Twitter/X][] or [email][].
394
397
 
395
- You are also welcome on the Indie Python's [discord server][].
398
+ You are also welcome on the Indie Smiths's [discord server][].
396
399
 
397
400
 
398
401
  ## Patreon and donations
399
402
 
400
- Please, support Nodezator and other useful apps of the Indie Python project by becoming our patron on [patreon][]. You can also make recurrent donations using [github sponsors][], [liberapay][] or [Ko-fi][].
403
+ Please, support Nodezator and other useful apps of the Indie Smiths project by becoming our patron on [patreon][]. You can also make recurrent donations using [GitHub sponsors][], [liberapay][] or [Ko-fi][].
401
404
 
402
- Both [github sponsors][] and [Ko-fi][] also accept one-time donations.
405
+ Both [GitHub sponsors][] and [Ko-fi][] also accept one-time donations.
403
406
 
404
407
  Any amount is welcome and helps. Check the project's [donation page][] for all donation methods available.
405
408
 
@@ -413,7 +416,7 @@ The `nodezator_icons` font used in the app for its icons was created by me and i
413
416
  The logos/images listed below, featured in Nodezator's splash screen (and sometimes in other spots in the app), are all mine:
414
417
 
415
418
  - the Kennedy Richard "KR" logo;
416
- - the Indie Python project logo;
419
+ - the Indie Smiths project logo;
417
420
  - the Nodezator logo;
418
421
  - the robot, called Zenith Green, Nodezator's mascot.
419
422
 
@@ -435,19 +438,19 @@ Also, other parts of the code, despite being carefully designed, might be redesi
435
438
  [youtube video]: https://www.youtube.com/watch?v=GlQJvuU7Z_8
436
439
  [pygame-ce]: https://pyga.me
437
440
  [numpy]: https://numpy.org
438
- [Indie Python]: https://indiepython.com
441
+ [Indie Smiths]: https://indiesmiths.com
439
442
 
440
443
  [manual]: https://manual.nodezator.com
441
444
 
442
445
  [Twitter/X]: https://x.com/KennedyRichard
443
446
  [email]: mailto:kennedy@kennedyrichard.com
444
- [discord server]: https://indiepython.com/discord
447
+ [discord server]: https://indiesmiths.com/discord
445
448
 
446
449
  [patreon]: https://patreon.com/KennedyRichard
447
- [github sponsors]: https://github.com/sponsors/KennedyRichard
450
+ [GitHub sponsors]: https://github.com/sponsors/KennedyRichard
448
451
  [liberapay]: https://liberapay.com/KennedyRichard
449
452
  [Ko-fi]: https://ko-fi.com/kennedyrichard
450
- [donation page]: https://indiepython.com/donate
453
+ [donation page]: https://indiesmiths.com/donate
451
454
 
452
455
  [defining your first node]: https://manual.nodezator.com/ch-defining-your-first-node.html
453
456
  [loading nodes]: https://manual.nodezator.com/ch-loading-nodes.html
@@ -455,10 +458,10 @@ Also, other parts of the code, despite being carefully designed, might be redesi
455
458
  [nodes gallery]: https://gallery.nodezator.com
456
459
 
457
460
  [node pack submission form]: https://docs.google.com/forms/d/e/1FAIpQLSd1XceOnzEeaBZcpkkXEFiAVO_5YUbd43sieQUekh1PZ8dm5A/viewform?usp=sf_link
458
- [nodes gallery repository]: https://github.com/IndiePython/gallery.nodezator.com
461
+ [nodes gallery repository]: https://github.com/IndieSmiths/gallery.nodezator.com
459
462
 
460
- [github issues]: https://github.com/IndiePython/nodezator/issues
461
- [github discussions]: https://github.com/IndiePython/nodezator/discussions
463
+ [GitHub issues]: https://github.com/IndieSmiths/nodezator/issues
464
+ [GitHub discussions]: https://github.com/IndieSmiths/nodezator/discussions
462
465
 
463
466
  [The Unlicense]: https://unlicense.org/
464
467
  [Open Font License]: https://en.wikipedia.org/wiki/SIL_Open_Font_License
@@ -32,7 +32,9 @@ main_callable = get_circle_area
32
32
 
33
33
  ![node image](https://nodezator.com/images/get_circle_area_node.png)
34
34
 
35
- You can store these functions/node definitions anywhere you want in your disk and once you launch Nodezator just provide the path so Nodezator can load them. The only requirement is that you organize these nodes definitions in separate files and store then in a folder (more about that further ahead in another section).
35
+ You can store these functions/node definitions anywhere you want in your disk and once you launch Nodezator just provide the path so Nodezator can load them. The only requirement is that you organize these nodes definitions in separate files and store them in a folder. This small video (~2min) actually shows you how to define and load a node in **less than 60 seconds**:
36
+
37
+ [![video: Defining and loading a node in less than 60 seconds](https://img.youtube.com/vi/cMfoaEs0fGY/hqdefault.jpg)](https://www.youtube.com/watch?v=cMfoaEs0fGY)
36
38
 
37
39
  You can actually turn **any** callable into a node very easily: classes, methods, etc. All callables available in the Python ecosystem can be turned into a node (even the ones defined in C, for instance).
38
40
 
@@ -56,14 +58,14 @@ There's also a [youtube video][] presenting Nodezator:
56
58
 
57
59
  [![thumb of youtube video](https://img.youtube.com/vi/GlQJvuU7Z_8/hqdefault.jpg)](https://www.youtube.com/watch?v=GlQJvuU7Z_8)
58
60
 
59
- Nodezator is made with pure Python on top of the [pygame-ce][] library (and a bit of the excellent [numpy][] library as well), by [Kennedy Richard Silva Guerra][] (born in 1990), as part of the [Indie Python][] project.
61
+ Nodezator is made with pure Python on top of the [pygame-ce][] library (and a bit of the excellent [numpy][] library as well), by [Kennedy Richard Silva Guerra][] (born in 1990), as part of the [Indie Smiths][] project.
60
62
 
61
63
  > [!NOTE]
62
64
  > Despite being maintained mostly by a single person, Nodezator is a serious and active project that gets a couple of large releases every year.
63
65
 
64
66
  We recommend Nodezator for **intermediate Python users**. Or, in case you are not a programmer, have an intermediate Python user next to you so that person can help you set up a no-code/low-code workflow for you.
65
67
 
66
- Nodezator can already be used in production and supports a vast variety of workflows. It still has a long way to go, though. So, please, be patient and also consider supporting it: https://indiepython.com/donate
68
+ Nodezator can already be used in production and supports a vast variety of workflows. It still has a long way to go, though. So, please, be patient and also consider supporting it: https://indiesmiths.com/donate
67
69
 
68
70
  After you finish reading this README file, you may also want to visit Nodezator's homepage: https://nodezator.com
69
71
 
@@ -76,7 +78,7 @@ On top of making it very easy to define nodes, Nodezator comes packed full of us
76
78
 
77
79
  As we said before, Nodezator allows you to convert callables from third-party libraries with minimal effort. Here are just a few screenshots showing the usage of Nodezator with different libraries.
78
80
 
79
- Here's is a simple graph showing Nodezator usage with the [Pillow](https://python-pillow.org/) library.
81
+ Here's a simple graph showing Nodezator usage with the [Pillow](https://python-pillow.org/) library.
80
82
 
81
83
  ![Pillow demonstration](https://nodezator.com/images/nodezator_pillow_demo.png)
82
84
 
@@ -130,7 +132,7 @@ Simply put, Nodezator is just a visual, node-based representation of Python.
130
132
 
131
133
  ### Socket proximity detection
132
134
 
133
- Having to click exactly over a socket to drag a new connection out of it and on top of that having to drop such new connection exactly on top of another socket are both repetitive tasks that are difficult to do right in one quick motion. Often, people loose precious time trying to ensure the mouse is exactly over the desired socket, specially considering how often those tasks are performed in any graph edition session.
135
+ Having to click exactly over a socket to drag a new connection out of it and on top of that having to drop such new connection exactly on top of another socket are both repetitive tasks that are difficult to do right in one quick motion. Often, people lose precious time trying to ensure the mouse is exactly over the desired socket, specially considering how often those tasks are performed in any graph edition session.
134
136
 
135
137
  Because of that, Nodezator features socket proximity detection to assist the user when establishing or replacing existing connection. The user doesn't need to click exactly over a socket to drag a new connection out of it anymore. Dropping the new connection exactly over the other socket isn't necessary either. As long as the mouse is close enough, these actions can be carried over effortlessly. Here you can see it in action:
136
138
 
@@ -214,6 +216,8 @@ However, users are encouraged to define their own nodes for their specific purpo
214
216
 
215
217
  ![A user-defined node](https://nodezator.com/images/node.png)
216
218
 
219
+ In case you missed it at the beginning of this README, here's the link to a small video demonstrating how to define and load a node in less than 60 seconds: https://www.youtube.com/watch?v=cMfoaEs0fGY
220
+
217
221
  Nodes are created from Python scripts organized within folders that we call **node packs**. You can create a node pack folder **anywhere you want in your disk**. Under the hood, Nodezator treats it as a package in some contexts, so you can name that folder whatever you like, as long as it is a Python identifier. That is, it must start with a letter or underscore and contain only letters, digits and underscores.
218
222
 
219
223
  In other words, you **create nodes by writing Python functions/callables using your preferred text editor or IDE** and only then you **launch Nodezator in order to load them as nodes**, so you can create, edit and execute graphs.
@@ -243,7 +247,7 @@ Once you distributed your nodes, you may want a place wherein to let people know
243
247
 
244
248
  You can do all this on the [nodes gallery][] website. There you can search node packs by name, author and tags.
245
249
 
246
- To have a link to your node pack added to the nodes gallery/database, upload it somewhere people can download/install it from, as described in the manual's chapter about [distributing your nodes][], then submit the relevant info about your node pack in this [node pack submission form][]. Alternatively, you can also submit a pull request to the [nodes gallery repository][] on github following the instructions on the README.md file.
250
+ To have a link to your node pack added to the nodes gallery/database, upload it somewhere people can download/install it from, as described in the manual's chapter about [distributing your nodes][], then submit the relevant info about your node pack in this [node pack submission form][]. Alternatively, you can also submit a pull request to the [nodes gallery repository][] on GitHub following the instructions on the README.md file.
247
251
 
248
252
  You can also [email][] me if you need any help.
249
253
 
@@ -289,9 +293,13 @@ The in-app version is always the most accurate, since it is updated first, where
289
293
 
290
294
  Everyone is welcome to suggest and contribute changes.
291
295
 
292
- If the proposed change is small enough, you can submit your pull request for analysis right away and it will be answered ASAP.
296
+ If the proposed change is small enough, you can submit your pull request (PR) for analysis right away to the `develop` branch and it will be answered ASAP.
297
+
298
+ Please, if submitting a pull request, use the `develop` branch, not the `main` branch. This way it is easier to refine/complement your changes before merging them with `main`.
299
+
300
+ More complex pull requests will also be welcome in the future, but due to the complexity of the app, I will first need to finish implementing the missing system test cases to ensure everyone's future contributions do not break each other.
293
301
 
294
- More complex pull requests will also be welcome in the future, but due to the complexity of the app, I will first need to implement some automated GUI tests to ensure everyone's future contributions do not break each other.
302
+ Speaking of system testing, Nodezator has system testing capabilities that take advantage of GUI automation, with a few test cases already implemented. Just press **Shift+Ctrl+F8** to see the current system test cases run automatically. Once the tests finish running, a report with the results is displayed so you can inspect them. If you need, the report can be exported to a variety of formats with the buttons at the bottom of the report. You can also configure the system testing session in the menu **Gui Automation > System testing > Setup and run custom session**.
295
303
 
296
304
 
297
305
  ## Issues
@@ -304,7 +312,7 @@ If you find a bug that...
304
312
  - causes Nodezator to crash;
305
313
  - representing something malfunctioning or not working at all;
306
314
 
307
- ...then, please, use [github issues][] to submit an issue as soon as possible.
315
+ ...then, please, use [GitHub issues][] to submit an issue as soon as possible.
308
316
 
309
317
  Please, include as much information as you can:
310
318
 
@@ -321,20 +329,20 @@ Nevertheless, never hesitate to ask for help, even if you don't have much info a
321
329
 
322
330
  ### Minor issues
323
331
 
324
- If however, the problem is not as serious/urgent, that is, it doesn't cause Nodezator to crash or malfunction, then, please, open a discussion on [github discussions][] instead. There's a dedicated category for this kind of problem called "Minor issue".
332
+ If however, the problem is not as serious/urgent, that is, it doesn't cause Nodezator to crash or malfunction, then, please, open a discussion on [GitHub discussions][] instead. There's a dedicated category for this kind of problem called "Minor issue".
325
333
 
326
- It doesn't mean your issue is any less important. It is just that in Nodezator and other Indie Python repos we use [github issues][] for things that crash the app or otherwise prevent the user from doing something that is supposed to be available (stuff that cause crashes or malfunctioning). When such a critical issue appears, any other work is paused and all attention is given to that issue so that it can be fixed ASAP.
334
+ It doesn't mean your issue is any less important. It is just that in Nodezator and other Indie Smiths's repos we use [GitHub issues][] for things that crash the app or otherwise prevent the user from doing something that is supposed to be available (stuff that cause crashes or malfunctioning). When such a critical issue appears, any other work is paused and all attention is given to that issue so that it can be fixed ASAP.
327
335
 
328
336
  This measure is taken for the benefit of the users: by doing things this way, whenever you have an urgent/critical issue, it won't compete for space with other less urgent matters. We'll be able to promptly schedule time to solve the issue.
329
337
 
330
- Minor issues, suggestions of improvements, feature requests, feedback about bad experiences, etc. are all important, but they don't have the same urgency as something that crashes the app or causes it to malfunction. This is why we use [github discussions][] for the less urgent stuff. They'll be tended to all the same, just not with the same urgency.
338
+ Minor issues, suggestions of improvements, feature requests, feedback about bad experiences, etc. are all important, but they don't have the same urgency as something that crashes the app or causes it to malfunction. This is why we use [GitHub discussions][] for the less urgent stuff. They'll be tended to all the same, just not with the same urgency.
331
339
 
332
- Of course, [github discussions][] is used for many other important stuff as well, as we'll see in the next section.
340
+ Of course, [GitHub discussions][] is used for many other important stuff as well, as we'll see in the next section.
333
341
 
334
342
 
335
343
  ## Discussions/forum
336
344
 
337
- Consider [github discussions][] as the official online forum for Nodezator.
345
+ Consider [GitHub discussions][] as the official online forum for Nodezator.
338
346
 
339
347
  It is used for many things like announcements to the community, to list planned/requested features, to communicate and discuss current work, etc.
340
348
 
@@ -355,14 +363,14 @@ If you have...
355
363
 
356
364
  Contact me any time via [Twitter/X][] or [email][].
357
365
 
358
- You are also welcome on the Indie Python's [discord server][].
366
+ You are also welcome on the Indie Smiths's [discord server][].
359
367
 
360
368
 
361
369
  ## Patreon and donations
362
370
 
363
- Please, support Nodezator and other useful apps of the Indie Python project by becoming our patron on [patreon][]. You can also make recurrent donations using [github sponsors][], [liberapay][] or [Ko-fi][].
371
+ Please, support Nodezator and other useful apps of the Indie Smiths project by becoming our patron on [patreon][]. You can also make recurrent donations using [GitHub sponsors][], [liberapay][] or [Ko-fi][].
364
372
 
365
- Both [github sponsors][] and [Ko-fi][] also accept one-time donations.
373
+ Both [GitHub sponsors][] and [Ko-fi][] also accept one-time donations.
366
374
 
367
375
  Any amount is welcome and helps. Check the project's [donation page][] for all donation methods available.
368
376
 
@@ -376,7 +384,7 @@ The `nodezator_icons` font used in the app for its icons was created by me and i
376
384
  The logos/images listed below, featured in Nodezator's splash screen (and sometimes in other spots in the app), are all mine:
377
385
 
378
386
  - the Kennedy Richard "KR" logo;
379
- - the Indie Python project logo;
387
+ - the Indie Smiths project logo;
380
388
  - the Nodezator logo;
381
389
  - the robot, called Zenith Green, Nodezator's mascot.
382
390
 
@@ -398,19 +406,19 @@ Also, other parts of the code, despite being carefully designed, might be redesi
398
406
  [youtube video]: https://www.youtube.com/watch?v=GlQJvuU7Z_8
399
407
  [pygame-ce]: https://pyga.me
400
408
  [numpy]: https://numpy.org
401
- [Indie Python]: https://indiepython.com
409
+ [Indie Smiths]: https://indiesmiths.com
402
410
 
403
411
  [manual]: https://manual.nodezator.com
404
412
 
405
413
  [Twitter/X]: https://x.com/KennedyRichard
406
414
  [email]: mailto:kennedy@kennedyrichard.com
407
- [discord server]: https://indiepython.com/discord
415
+ [discord server]: https://indiesmiths.com/discord
408
416
 
409
417
  [patreon]: https://patreon.com/KennedyRichard
410
- [github sponsors]: https://github.com/sponsors/KennedyRichard
418
+ [GitHub sponsors]: https://github.com/sponsors/KennedyRichard
411
419
  [liberapay]: https://liberapay.com/KennedyRichard
412
420
  [Ko-fi]: https://ko-fi.com/kennedyrichard
413
- [donation page]: https://indiepython.com/donate
421
+ [donation page]: https://indiesmiths.com/donate
414
422
 
415
423
  [defining your first node]: https://manual.nodezator.com/ch-defining-your-first-node.html
416
424
  [loading nodes]: https://manual.nodezator.com/ch-loading-nodes.html
@@ -418,10 +426,10 @@ Also, other parts of the code, despite being carefully designed, might be redesi
418
426
  [nodes gallery]: https://gallery.nodezator.com
419
427
 
420
428
  [node pack submission form]: https://docs.google.com/forms/d/e/1FAIpQLSd1XceOnzEeaBZcpkkXEFiAVO_5YUbd43sieQUekh1PZ8dm5A/viewform?usp=sf_link
421
- [nodes gallery repository]: https://github.com/IndiePython/gallery.nodezator.com
429
+ [nodes gallery repository]: https://github.com/IndieSmiths/gallery.nodezator.com
422
430
 
423
- [github issues]: https://github.com/IndiePython/nodezator/issues
424
- [github discussions]: https://github.com/IndiePython/nodezator/discussions
431
+ [GitHub issues]: https://github.com/IndieSmiths/nodezator/issues
432
+ [GitHub discussions]: https://github.com/IndieSmiths/nodezator/discussions
425
433
 
426
434
  [The Unlicense]: https://unlicense.org/
427
435
  [Open Font License]: https://en.wikipedia.org/wiki/SIL_Open_Font_License
@@ -0,0 +1,4 @@
1
+ from .appinfo import MINIMAL_VERSION_STRING
2
+
3
+
4
+ __version__ = MINIMAL_VERSION_STRING
@@ -4,10 +4,11 @@ Nodezator: A generalist Python node editor developed by
4
4
  Kennedy Richard <kennedy@kennedyrichard.com>.
5
5
 
6
6
  https://kennedyrichard.com
7
+ https://bsky.app/profile/kennedyrichard.com
7
8
  https://x.com/KennedyRichard
8
9
 
9
10
  https://nodezator.com
10
- https://github.com/IndiePython/nodezator
11
+ https://github.com/IndieSmiths/nodezator
11
12
  """
12
13
 
13
14
  ### standard library imports
@@ -20,7 +20,9 @@ from collections import namedtuple
20
20
 
21
21
  AppVersion = namedtuple("AppVersion", "major minor micro release_level")
22
22
 
23
- APP_VERSION = AppVersion(1, 5, 3, "release_candidate")
23
+ APP_VERSION = AppVersion(1, 5, 5, "release_candidate")
24
+
25
+ MINIMAL_VERSION_STRING = '.'.join(map(str, APP_VERSION[:3]))
24
26
 
25
27
 
26
28
  ### titles for the application
@@ -33,7 +35,7 @@ TITLE = "Nodezator"
33
35
  ## supported by any major operating system;
34
36
  APP_DIR_NAME = "nodezator"
35
37
 
36
- ORG_DIR_NAME = 'IndiePython' # org name for pygame.system.get_pref_path
38
+ ORG_DIR_NAME = 'IndieSmiths' # org name for pygame.system.get_pref_path
37
39
 
38
40
  ABBREVIATED_TITLE = "NDZ"
39
41
 
@@ -1,6 +1,8 @@
1
+ """Facility for playing audio."""
2
+
1
3
  ### third-party imports
2
4
 
3
- from pygame import Rect
5
+ from pygame import Rect, error as PygameError
4
6
 
5
7
  from pygame.locals import (
6
8
  QUIT,
@@ -91,7 +93,18 @@ PLAYING_ICON = render_layered_icon(
91
93
  logger = get_new_logger(__name__)
92
94
 
93
95
 
96
+ UNAVAILABLE_AUDIO_MESSAGE = (
97
+ "An error ocurred while trying to set the audio volume"
98
+ " (for usage by the widget that plays audio files to"
99
+ " preview them). You can still use Nodezator normally,"
100
+ " you just won't be able to listen to audio files within"
101
+ " the widget until you figure out the problem. Please, check"
102
+ " the audio on your system."
103
+ )
104
+
105
+
94
106
  class AudioPlayer(Object2D):
107
+
95
108
  def __init__(self):
96
109
  """"""
97
110
 
@@ -137,11 +150,7 @@ class AudioPlayer(Object2D):
137
150
  )
138
151
 
139
152
  ###
140
-
141
153
  self.volume = 0.4
142
- music.set_volume(self.volume)
143
-
144
- ###
145
154
 
146
155
  volume_area = self.volume_area = Rect((0, 0), (100, 30))
147
156
 
@@ -189,6 +198,34 @@ class AudioPlayer(Object2D):
189
198
 
190
199
  def play_audio(self, audio_paths, index=0):
191
200
 
201
+ ### try setting the volume
202
+
203
+ try:
204
+ music.set_volume(self.volume)
205
+
206
+ ### if a pygame error occurs at this spot, it might
207
+ ### mean the mixer wasn't initialized properly due to
208
+ ### a problem on the user's system (at least it happened
209
+ ### before and it is the reason this check exists)
210
+ ###
211
+ ### inform the user of the problem its implications and
212
+ ### leave the player immediately by returning earlier
213
+
214
+ except PygameError:
215
+
216
+ logger.exception(UNAVAILABLE_AUDIO_MESSAGE)
217
+ USER_LOGGER.exception(UNAVAILABLE_AUDIO_MESSAGE)
218
+
219
+ dialog_message = UNAVAILABLE_AUDIO_MESSAGE + (
220
+ " Check the user log for details (on the graph/canvas,"
221
+ " press <Ctrl+Shift+j> or access the \"Help > Show user"
222
+ " log\" option on the menubar)."
223
+ )
224
+
225
+ create_and_show_dialog(dialog_message, level_name='error')
226
+
227
+ return
228
+
192
229
  self.audio_paths = (
193
230
  [audio_paths] if isinstance(audio_paths, str) else audio_paths
194
231
  )
@@ -328,7 +365,7 @@ class AudioPlayer(Object2D):
328
365
  try:
329
366
  music.load(self.audio_path)
330
367
 
331
- except Exception as err:
368
+ except Exception:
332
369
 
333
370
  log_message = (
334
371
  "An error ocurred while trying to"
@@ -82,9 +82,13 @@ SYSTEM_TESTING_DATA_DIR = DATA_DIR / "system_testing"
82
82
  APP_COLORS_FILE = DATA_DIR / "app_themes" / "emeralds_on_coal.pyl"
83
83
 
84
84
 
85
- ### writeable path for config/logs, etc.
85
+ ### writeable paths for config/logs, etc.
86
86
  WRITEABLE_PATH = Path(get_pref_path(ORG_DIR_NAME, APP_DIR_NAME))
87
87
 
88
+ ### previous writeable path, that uses the previous name of
89
+ ### nodezator's parent project
90
+ OLD_WRITEABLE_PATH = Path(get_pref_path('IndiePython', APP_DIR_NAME))
91
+
88
92
 
89
93
  ### check whether ffmpeg (and ffprobe) is available, storing
90
94
  ### the info as a boolean
@@ -189,7 +189,7 @@ main_callable = view_points
189
189
 
190
190
  <p>Before you delve into the code, however, I'd like to point out that <b>there is no perfect or correct way of defining loops in pygame</b>. You can use functions or classes, but even when using classes there are different ways to do it. I could even have split the node script into different modules to make the separation between the different parts even more clear.</p>
191
191
 
192
- <p>Do not stress over the details. The code to be presented is just what I thought was the best solution for what was needed. As long as you understand the purpose of the individual pieces you'll be able to come up with your own solutions. You are also always welcome to ask on <a href="https://indiepython.com/discord">discord</a> or <a href="https://github.com/IndiePython/nodezator/discussions">github discussions</a> every time you have questions.</p>
192
+ <p>Do not stress over the details. The code to be presented is just what I thought was the best solution for what was needed. As long as you understand the purpose of the individual pieces you'll be able to come up with your own solutions. You are also always welcome to ask on <a href="https://indiesmiths.com/discord">discord</a> or <a href="https://github.com/IndieSmiths/nodezator/discussions">GitHub discussions</a> every time you have questions.</p>
193
193
 
194
194
  <p>First of all, we have the imports and the definition of constants:</p>
195
195
 
@@ -142,7 +142,7 @@
142
142
 
143
143
  <p>Beware that this template does not attempt to teach you the best way or configuration for your package. It just presents <b>one</b> possible and relatively straightforward way of packaging your node pack. Teaching about packaging in Python and the many options available is outside the scope of our project.</p>
144
144
 
145
- <p>Even so, we always welcome questions and people seeking help, so if you have any trouble just reach us on <a href="https://github.com/IndiePython/nodezator/discussions">github discussions for Nodezator</a> or the <a href="https://indiepython.com/discord">Indie Python discord server</a>.</p>
145
+ <p>Even so, we always welcome questions and people seeking help, so if you have any trouble just reach us on <a href="https://github.com/IndieSmiths/nodezator/discussions">GitHub discussions for Nodezator</a> or the <a href="https://indiesmiths.com/discord">Indie Smiths discord server</a>.</p>
146
146
 
147
147
 
148
148
  <p><a href="ch-other-objects.htsl">Previous chapter</a> | <a href="index.htsl">Table of contents</a> | <a href="ch-conditional-execution.htsl">Next chapter</a></p>
@@ -25,7 +25,7 @@
25
25
  <li>How to reference them in the .ndz file.</li>
26
26
  </ol>
27
27
 
28
- <p>If you ever encounter any kind of problem, with those or any other task you are trying to perform in Nodezator, don't hesitate to seek help on the <a href="https://indiepython.com/discord">discord server</a>.</p>
28
+ <p>If you ever encounter any kind of problem, with those or any other task you are trying to perform in Nodezator, don't hesitate to seek help on the <a href="https://indiesmiths.com/discord">discord server</a>.</p>
29
29
 
30
30
  <p>Without further ado, let's learn how to do those things.</p>
31
31
 
@@ -223,9 +223,9 @@ pip install mynodepack
223
223
 
224
224
  <p>Hence, if you change the name of parameters/outputs or make other changes that result in an incompatible signature, your file will become invalid or you'll have to update the .ndz file by hand yourself.</p>
225
225
 
226
- <p>A feature that consists in a conflict resolution mode for Nodezator, to guide the user in the resolution of such problems is already listed among the <a href="https://github.com/IndiePython/nodezator/discussions/13">planned/requested features for Nodezator</a>.</p>
226
+ <p>A feature that consists in a conflict resolution mode for Nodezator, to guide the user in the resolution of such problems is already listed among the <a href="https://github.com/IndieSmiths/nodezator/discussions/13">planned/requested features for Nodezator</a>.</p>
227
227
 
228
- <p>For now, if you want to update the signature of a node that is in use, it is easier to delete the instances of that node in the related .ndz files, make your changes, than instantiate and reconnect the node again. Or just seek help on the <a href="https://indiepython.com/discord">discord server</a>.</p>
228
+ <p>For now, if you want to update the signature of a node that is in use, it is easier to delete the instances of that node in the related .ndz files, make your changes, than instantiate and reconnect the node again. Or just seek help on the <a href="https://indiesmiths.com/discord">discord server</a>.</p>
229
229
 
230
230
 
231
231
  <p><a href="ch-more-ways-define-nodes.htsl">Previous chapter</a> | <a href="index.htsl">Table of contents</a> | <a href="ch-color-coding-inputs-outputs.htsl">Next chapter</a></p>
@@ -22,7 +22,7 @@
22
22
 
23
23
  <p>Of course, if your cneeds are different, the <a href="https://pyga.me">pygame-ce</a> specifics to produce the specific visualization you need will be different.</p>
24
24
 
25
- <p>Such pygame-ce specifics are beyond our purpose/responsibility, since this is not a pygame-ce manual, but instead aims only to connect your pygame-ce knowledge with Nodezator tools. Still, when possible, we do want to offer additional guidance, even if outside the scope of our activities/responsibilities. Just keep going forward with your studies and reach out for help whenever needed in our <a href="https://indiepython.com/discord">discord server</a> or <a href="https://github.com/IndiePython/nodezator/discussions">Nodezator GitHub discussions</a>.</p>
25
+ <p>Such pygame-ce specifics are beyond our purpose/responsibility, since this is not a pygame-ce manual, but instead aims only to connect your pygame-ce knowledge with Nodezator tools. Still, when possible, we do want to offer additional guidance, even if outside the scope of our activities/responsibilities. Just keep going forward with your studies and reach out for help whenever needed in our <a href="https://indiesmiths.com/discord">discord server</a> or <a href="https://github.com/IndieSmiths/nodezator/discussions">Nodezator GitHub discussions</a>.</p>
26
26
 
27
27
  <p>Nonetheless, keep in mind that no amount of examples will ever be enough to demonstrate all that you can achieve with pygame-ce for your custom visualizations. There simply isn't a single right way to do everything. This is not a bad thing, it only means pygame-ce is that much versatile (or more precisely, it provides bindings for the versatile underlying <a href="https://www.libsdl.org/">SDL</a> library). It all depends on factors like your proficiency with pygame-ce and the type of visualization you want for the data with which you are dealing.</p>
28
28
 
@@ -10,7 +10,7 @@
10
10
 
11
11
  <p>Welcome to the nodezator manual. This guide is meant for Nodezator's users.</p>
12
12
 
13
- <p>You may also want to take a look at the <a href="https://github.com/IndiePython/nodezator/blob/main/README.md">README</a> file of Nodezator's repository, since it showcases a lot of Nodezator's features and capabilities. Or you may want to <a href="https://gallery.nodezator.com">download example nodes</a>, like the ones used in the <a href="https://www.youtube.com/watch?v=GlQJvuU7Z_8">video presenting Nodezator</a>.</p>
13
+ <p>You may also want to take a look at the <a href="https://github.com/IndieSmiths/nodezator/blob/main/README.md">README</a> file of Nodezator's repository, since it showcases a lot of Nodezator's features and capabilities. Or you may want to <a href="https://gallery.nodezator.com">download example nodes</a>, like the ones used in the <a href="https://www.youtube.com/watch?v=GlQJvuU7Z_8">video presenting Nodezator</a>.</p>
14
14
 
15
15
 
16
16
  <h2>Table of contents</h2>