py2docfx 0.1.15rc2025477__py3-none-any.whl → 0.1.16__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (604) hide show
  1. py2docfx/docfx_yaml/process_doctree.py +21 -34
  2. py2docfx/docfx_yaml/tests/test_method_arguments.py +1 -7
  3. py2docfx/docfx_yaml/tests/test_process_doctree.py +120 -0
  4. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_core_metadata.py +21 -5
  5. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +13 -0
  6. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/ccompiler.py +5 -2
  7. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build.py +1 -6
  8. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_clib.py +1 -9
  9. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_ext.py +1 -8
  10. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
  11. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/config.py +0 -2
  12. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install.py +8 -17
  13. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
  14. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +8 -5
  15. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +1 -1
  16. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +15 -1
  17. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/dist.py +2 -1
  18. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -10
  19. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +60 -5
  20. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/unixccompiler.py +6 -0
  21. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/util.py +7 -6
  22. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_normalization.py +29 -0
  23. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +1 -1
  24. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
  25. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +2 -2
  26. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +25 -594
  27. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +6 -6
  28. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +282 -223
  29. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +22 -9
  30. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +16 -13
  31. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/util.py +0 -9
  32. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +40 -9
  33. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/bdist_wheel.py +6 -2
  34. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +49 -11
  35. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +31 -1
  36. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +222 -129
  37. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +30 -3
  38. py2docfx/venv/basevenv/Lib/site-packages/setuptools/dist.py +168 -51
  39. py2docfx/venv/basevenv/Lib/site-packages/setuptools/msvc.py +12 -3
  40. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +246 -13
  41. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +42 -29
  42. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +1 -1
  43. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +93 -8
  44. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_build_meta.py +17 -4
  45. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_core_metadata.py +45 -0
  46. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_egg_info.py +24 -4
  47. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_sdist.py +13 -1
  48. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/__init__.py +1 -1
  49. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/any_pb2.py +4 -4
  50. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/api_pb2.py +4 -4
  51. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/compiler/plugin_pb2.py +4 -4
  52. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/descriptor_database.py +22 -4
  53. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/descriptor_pb2.py +82 -35
  54. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/duration_pb2.py +4 -4
  55. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/empty_pb2.py +4 -4
  56. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/field_mask_pb2.py +4 -4
  57. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/builder.py +4 -3
  58. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/containers.py +13 -0
  59. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/decoder.py +62 -115
  60. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/python_edition_defaults.py +1 -1
  61. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/python_message.py +15 -18
  62. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/testing_refleaks.py +4 -1
  63. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/type_checkers.py +5 -0
  64. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/well_known_types.py +3 -3
  65. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/json_format.py +25 -9
  66. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/message.py +26 -0
  67. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/message_factory.py +0 -63
  68. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/proto.py +38 -1
  69. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/proto_text.py +129 -0
  70. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/reflection.py +0 -49
  71. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/runtime_version.py +3 -3
  72. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/source_context_pb2.py +4 -4
  73. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/struct_pb2.py +4 -4
  74. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/symbol_database.py +0 -18
  75. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/text_format.py +8 -3
  76. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/timestamp_pb2.py +4 -4
  77. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/type_pb2.py +4 -4
  78. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/unknown_fields.py +3 -4
  79. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/wrappers_pb2.py +4 -4
  80. py2docfx/venv/venv1/Lib/site-packages/msal/__init__.py +1 -1
  81. py2docfx/venv/venv1/Lib/site-packages/msal/application.py +51 -17
  82. py2docfx/venv/venv1/Lib/site-packages/msal/broker.py +18 -4
  83. py2docfx/venv/venv1/Lib/site-packages/msal/cloudshell.py +5 -1
  84. py2docfx/venv/venv1/Lib/site-packages/msal/managed_identity.py +5 -4
  85. py2docfx/venv/venv1/Lib/site-packages/msal/sku.py +6 -0
  86. py2docfx/venv/venv1/Lib/site-packages/msal/token_cache.py +31 -10
  87. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/__init__.py +2 -3
  88. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/cache_lock.py +4 -1
  89. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/filelock.py +62 -0
  90. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/libsecret.py +1 -1
  91. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/token_cache.py +7 -1
  92. py2docfx/venv/venv1/Lib/site-packages/pyasn1_modules/__init__.py +1 -1
  93. py2docfx/venv/venv1/Lib/site-packages/setuptools/_core_metadata.py +21 -5
  94. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +13 -0
  95. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/ccompiler.py +5 -2
  96. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build.py +1 -6
  97. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_clib.py +1 -9
  98. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_ext.py +1 -8
  99. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
  100. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/config.py +0 -2
  101. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install.py +8 -17
  102. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
  103. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +8 -5
  104. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +1 -1
  105. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +15 -1
  106. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/dist.py +2 -1
  107. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -10
  108. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +60 -5
  109. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/unixccompiler.py +6 -0
  110. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/util.py +7 -6
  111. py2docfx/venv/venv1/Lib/site-packages/setuptools/_normalization.py +29 -0
  112. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +1 -1
  113. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
  114. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +2 -2
  115. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +25 -594
  116. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +6 -6
  117. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +282 -223
  118. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +22 -9
  119. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +16 -13
  120. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/util.py +0 -9
  121. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +40 -9
  122. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/bdist_wheel.py +6 -2
  123. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +49 -11
  124. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +31 -1
  125. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +222 -129
  126. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +30 -3
  127. py2docfx/venv/venv1/Lib/site-packages/setuptools/dist.py +168 -51
  128. py2docfx/venv/venv1/Lib/site-packages/setuptools/msvc.py +12 -3
  129. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +246 -13
  130. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +42 -29
  131. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +1 -1
  132. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +93 -8
  133. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_build_meta.py +17 -4
  134. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_core_metadata.py +45 -0
  135. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_egg_info.py +24 -4
  136. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_sdist.py +13 -1
  137. py2docfx/venv/venv1/Lib/site-packages/typing_extensions.py +999 -74
  138. {py2docfx-0.1.15rc2025477.dist-info → py2docfx-0.1.16.dist-info}/METADATA +1 -1
  139. {py2docfx-0.1.15rc2025477.dist-info → py2docfx-0.1.16.dist-info}/RECORD +141 -596
  140. py2docfx/venv/venv1/Lib/site-packages/adodbapi/__init__.py +0 -82
  141. py2docfx/venv/venv1/Lib/site-packages/adodbapi/ado_consts.py +0 -283
  142. py2docfx/venv/venv1/Lib/site-packages/adodbapi/adodbapi.py +0 -1153
  143. py2docfx/venv/venv1/Lib/site-packages/adodbapi/apibase.py +0 -723
  144. py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_print.py +0 -72
  145. py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_table_names.py +0 -21
  146. py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/xls_read.py +0 -41
  147. py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/xls_write.py +0 -41
  148. py2docfx/venv/venv1/Lib/site-packages/adodbapi/is64bit.py +0 -34
  149. py2docfx/venv/venv1/Lib/site-packages/adodbapi/process_connect_string.py +0 -137
  150. py2docfx/venv/venv1/Lib/site-packages/adodbapi/schema_table.py +0 -16
  151. py2docfx/venv/venv1/Lib/site-packages/adodbapi/setup.py +0 -68
  152. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitest.py +0 -1547
  153. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitestconfig.py +0 -184
  154. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/dbapi20.py +0 -879
  155. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/is64bit.py +0 -34
  156. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/setuptestframework.py +0 -98
  157. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/test_adodbapi_dbapi20.py +0 -195
  158. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/tryconnection.py +0 -30
  159. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/_parameterized.py +0 -420
  160. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/service.py +0 -213
  161. py2docfx/venv/venv1/Lib/site-packages/isapi/__init__.py +0 -39
  162. py2docfx/venv/venv1/Lib/site-packages/isapi/install.py +0 -809
  163. py2docfx/venv/venv1/Lib/site-packages/isapi/isapicon.py +0 -121
  164. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/advanced.py +0 -218
  165. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector.py +0 -116
  166. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_asynch.py +0 -85
  167. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_with_filter.py +0 -162
  168. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/test.py +0 -195
  169. py2docfx/venv/venv1/Lib/site-packages/isapi/simple.py +0 -73
  170. py2docfx/venv/venv1/Lib/site-packages/isapi/test/extension_simple.py +0 -114
  171. py2docfx/venv/venv1/Lib/site-packages/isapi/threaded_extension.py +0 -191
  172. py2docfx/venv/venv1/Lib/site-packages/portalocker/__about__.py +0 -6
  173. py2docfx/venv/venv1/Lib/site-packages/portalocker/__init__.py +0 -79
  174. py2docfx/venv/venv1/Lib/site-packages/portalocker/__main__.py +0 -122
  175. py2docfx/venv/venv1/Lib/site-packages/portalocker/constants.py +0 -59
  176. py2docfx/venv/venv1/Lib/site-packages/portalocker/exceptions.py +0 -27
  177. py2docfx/venv/venv1/Lib/site-packages/portalocker/portalocker.py +0 -154
  178. py2docfx/venv/venv1/Lib/site-packages/portalocker/redis.py +0 -236
  179. py2docfx/venv/venv1/Lib/site-packages/portalocker/utils.py +0 -569
  180. py2docfx/venv/venv1/Lib/site-packages/pythoncom.py +0 -4
  181. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/basictimerapp.py +0 -258
  182. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/customprint.py +0 -183
  183. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/demoutils.py +0 -63
  184. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/dlgappdemo.py +0 -51
  185. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/dojobapp.py +0 -71
  186. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/helloapp.py +0 -53
  187. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/cmdserver.py +0 -113
  188. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/createwin.py +0 -114
  189. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/demoutils.py +0 -65
  190. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dibdemo.py +0 -73
  191. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dlgtest.py +0 -145
  192. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dyndlg.py +0 -104
  193. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/fontdemo.py +0 -85
  194. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/guidemo.py +0 -53
  195. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/hiertest.py +0 -138
  196. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/menutest.py +0 -13
  197. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/objdoc.py +0 -57
  198. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/demoutils.py +0 -63
  199. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/flash.py +0 -95
  200. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/msoffice.py +0 -159
  201. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxserialtest.py +0 -132
  202. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxtest.py +0 -243
  203. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/webbrowser.py +0 -72
  204. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/openGLDemo.py +0 -415
  205. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/progressbar.py +0 -105
  206. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/sliderdemo.py +0 -76
  207. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/splittst.py +0 -79
  208. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/threadedgui.py +0 -189
  209. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/toolbar.py +0 -105
  210. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/__init__.py +0 -3
  211. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/__init__.py +0 -133
  212. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/configui.py +0 -34
  213. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgcon.py +0 -31
  214. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgpyapp.py +0 -48
  215. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/debugger.py +0 -1097
  216. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/fail.py +0 -54
  217. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/__init__.py +0 -0
  218. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/ideoptions.py +0 -136
  219. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/list.py +0 -146
  220. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/login.py +0 -155
  221. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/status.py +0 -242
  222. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/DockingBar.py +0 -676
  223. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/__init__.py +0 -0
  224. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/__init__.py +0 -0
  225. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/app.py +0 -411
  226. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/bitmap.py +0 -168
  227. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/cmdline.py +0 -54
  228. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dbgcommands.py +0 -188
  229. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dlgappcore.py +0 -76
  230. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/ModuleBrowser.py +0 -235
  231. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/__init__.py +0 -105
  232. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/color/__init__.py +0 -0
  233. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/color/coloreditor.py +0 -646
  234. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/configui.py +0 -299
  235. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/document.py +0 -379
  236. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/editor.py +0 -511
  237. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/frame.py +0 -74
  238. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/template.py +0 -59
  239. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/vss.py +0 -104
  240. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/help.py +0 -173
  241. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/interact.py +0 -995
  242. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpyapp.py +0 -552
  243. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpydde.py +0 -65
  244. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/scriptutils.py +0 -684
  245. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/sgrepmdi.py +0 -749
  246. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/startup.py +0 -70
  247. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/stdin.py +0 -172
  248. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/toolmenu.py +0 -279
  249. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/window.py +0 -14
  250. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/winout.py +0 -589
  251. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoExpand.py +0 -95
  252. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoIndent.py +0 -536
  253. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/CallTips.py +0 -216
  254. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/FormatParagraph.py +0 -166
  255. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/IdleHistory.py +0 -87
  256. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/PyParse.py +0 -585
  257. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/__init__.py +0 -1
  258. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/__init__.py +0 -0
  259. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/activex.py +0 -79
  260. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/afxres.py +0 -501
  261. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/dialog.py +0 -277
  262. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/docview.py +0 -151
  263. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/object.py +0 -66
  264. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/thread.py +0 -25
  265. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/window.py +0 -50
  266. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/IDLEenvironment.py +0 -593
  267. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/__init__.py +0 -1
  268. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/bindings.py +0 -180
  269. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/config.py +0 -363
  270. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/configui.py +0 -291
  271. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/control.py +0 -565
  272. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/document.py +0 -312
  273. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/find.py +0 -511
  274. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/formatter.py +0 -704
  275. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/keycodes.py +0 -190
  276. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/scintillacon.py +0 -3083
  277. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/view.py +0 -841
  278. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/TraceCollector.py +0 -79
  279. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/__init__.py +0 -0
  280. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browseProjects.py +0 -323
  281. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browser.py +0 -494
  282. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/hierlist.py +0 -353
  283. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/regedit.py +0 -382
  284. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/regpy.py +0 -80
  285. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/BackupRead_BackupWrite.py +0 -119
  286. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/BackupSeek_streamheaders.py +0 -137
  287. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/CopyFileEx.py +0 -57
  288. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/CreateFileTransacted_MiniVersion.py +0 -122
  289. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtFormatMessage.py +0 -83
  290. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_pull.py +0 -28
  291. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_push.py +0 -32
  292. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/FileSecurityTest.py +0 -137
  293. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/GetSaveFileName.py +0 -43
  294. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/NetValidatePasswordPolicy.py +0 -127
  295. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/OpenEncryptedFileRaw.py +0 -66
  296. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/RegCreateKeyTransacted.py +0 -60
  297. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/RegRestoreKey.py +0 -71
  298. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/SystemParametersInfo.py +0 -210
  299. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/c_extension/setup.py +0 -26
  300. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeclient.py +0 -18
  301. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeserver.py +0 -42
  302. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/desktopmanager.py +0 -246
  303. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/eventLogDemo.py +0 -143
  304. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/getfilever.py +0 -33
  305. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/mmapfile_demo.py +0 -101
  306. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/cat.py +0 -17
  307. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/runproc.py +0 -114
  308. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/print_desktop.py +0 -113
  309. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/rastest.py +0 -166
  310. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/GetTokenInformation.py +0 -110
  311. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/account_rights.py +0 -49
  312. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/explicit_entries.py +0 -170
  313. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/get_policy_info.py +0 -39
  314. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/list_rights.py +0 -35
  315. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/localized_names.py +0 -70
  316. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/lsaregevent.py +0 -14
  317. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/lsastore.py +0 -12
  318. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/query_information.py +0 -25
  319. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/regsave_sa.py +0 -61
  320. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/regsecurity.py +0 -36
  321. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sa_inherit.py +0 -8
  322. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/security_enums.py +0 -336
  323. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_audit.py +0 -106
  324. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_owner.py +0 -73
  325. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_policy_info.py +0 -25
  326. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setkernelobjectsecurity.py +0 -134
  327. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setnamedsecurityinfo.py +0 -131
  328. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setsecurityinfo.py +0 -131
  329. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setuserobjectsecurity.py +0 -102
  330. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/fetch_url.py +0 -158
  331. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/simple_auth.py +0 -72
  332. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/socket_server.py +0 -199
  333. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/validate_password.py +0 -41
  334. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/nativePipeTestService.py +0 -63
  335. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestService.py +0 -185
  336. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestServiceClient.py +0 -158
  337. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/serviceEvents.py +0 -98
  338. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/timer_demo.py +0 -72
  339. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboardDemo.py +0 -155
  340. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboard_bitmapdemo.py +0 -117
  341. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32comport_demo.py +0 -174
  342. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32console_demo.py +0 -132
  343. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32cred_demo.py +0 -82
  344. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32fileDemo.py +0 -41
  345. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_demo.py +0 -177
  346. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_devicenotify.py +0 -106
  347. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_dialog.py +0 -445
  348. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_menu.py +0 -464
  349. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_taskbar.py +0 -136
  350. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32netdemo.py +0 -272
  351. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32rcparser_demo.py +0 -86
  352. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32servicedemo.py +0 -23
  353. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32ts_logoff_disconnected.py +0 -25
  354. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/testwnet.py +0 -123
  355. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/winnetwk.py +0 -100
  356. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/winprocess.py +0 -230
  357. py2docfx/venv/venv1/Lib/site-packages/win32/lib/_win32verstamp_pywin32ctypes.py +0 -164
  358. py2docfx/venv/venv1/Lib/site-packages/win32/lib/afxres.py +0 -8
  359. py2docfx/venv/venv1/Lib/site-packages/win32/lib/commctrl.py +0 -1551
  360. py2docfx/venv/venv1/Lib/site-packages/win32/lib/mmsystem.py +0 -956
  361. py2docfx/venv/venv1/Lib/site-packages/win32/lib/netbios.py +0 -293
  362. py2docfx/venv/venv1/Lib/site-packages/win32/lib/ntsecuritycon.py +0 -731
  363. py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_bootstrap.py +0 -21
  364. py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_testutil.py +0 -291
  365. py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywintypes.py +0 -124
  366. py2docfx/venv/venv1/Lib/site-packages/win32/lib/rasutil.py +0 -40
  367. py2docfx/venv/venv1/Lib/site-packages/win32/lib/regcheck.py +0 -161
  368. py2docfx/venv/venv1/Lib/site-packages/win32/lib/regutil.py +0 -395
  369. py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspi.py +0 -413
  370. py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspicon.py +0 -477
  371. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win2kras.py +0 -14
  372. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32con.py +0 -5064
  373. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32cryptcon.py +0 -1922
  374. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32evtlogutil.py +0 -225
  375. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32gui_struct.py +0 -957
  376. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32inetcon.py +0 -1086
  377. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32netcon.py +0 -627
  378. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhquery.py +0 -570
  379. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhutil.py +0 -212
  380. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32rcparser.py +0 -674
  381. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32serviceutil.py +0 -1073
  382. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32timezone.py +0 -1201
  383. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32traceutil.py +0 -59
  384. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32verstamp.py +0 -235
  385. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winerror.py +0 -7362
  386. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winioctlcon.py +0 -1079
  387. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winnt.py +0 -1347
  388. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winperf.py +0 -236
  389. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winxptheme.py +0 -8
  390. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/ControlService.py +0 -594
  391. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/BrandProject.py +0 -97
  392. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/bulkstamp.py +0 -156
  393. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/vssutil.py +0 -201
  394. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/backupEventLog.py +0 -46
  395. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/h2py.py +0 -194
  396. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/killProcName.py +0 -62
  397. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_postinstall.py +0 -733
  398. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_testall.py +0 -120
  399. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/rasutil.py +0 -98
  400. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/regsetup.py +0 -607
  401. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/setup_d.py +0 -111
  402. py2docfx/venv/venv1/Lib/site-packages/win32/test/handles.py +0 -175
  403. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_clipboard.py +0 -137
  404. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_exceptions.py +0 -213
  405. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_odbc.py +0 -264
  406. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_pywintypes.py +0 -111
  407. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_security.py +0 -166
  408. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_sspi.py +0 -229
  409. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32api.py +0 -273
  410. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32clipboard.py +0 -59
  411. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32cred.py +0 -91
  412. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32crypt.py +0 -144
  413. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32event.py +0 -119
  414. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32file.py +0 -1096
  415. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32gui.py +0 -227
  416. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32guistruct.py +0 -333
  417. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32inet.py +0 -108
  418. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32net.py +0 -23
  419. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32pipe.py +0 -148
  420. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32print.py +0 -24
  421. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32profile.py +0 -19
  422. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32rcparser.py +0 -70
  423. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32timezone.py +0 -16
  424. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32trace.py +0 -366
  425. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32ts.py +0 -19
  426. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32wnet.py +0 -174
  427. py2docfx/venv/venv1/Lib/site-packages/win32/test/testall.py +0 -223
  428. py2docfx/venv/venv1/Lib/site-packages/win32/winxpgui.py +0 -13
  429. py2docfx/venv/venv1/Lib/site-packages/win32com/__init__.py +0 -134
  430. py2docfx/venv/venv1/Lib/site-packages/win32com/client/CLSIDToClass.py +0 -60
  431. py2docfx/venv/venv1/Lib/site-packages/win32com/client/__init__.py +0 -717
  432. py2docfx/venv/venv1/Lib/site-packages/win32com/client/build.py +0 -771
  433. py2docfx/venv/venv1/Lib/site-packages/win32com/client/combrowse.py +0 -604
  434. py2docfx/venv/venv1/Lib/site-packages/win32com/client/connect.py +0 -48
  435. py2docfx/venv/venv1/Lib/site-packages/win32com/client/dynamic.py +0 -699
  436. py2docfx/venv/venv1/Lib/site-packages/win32com/client/gencache.py +0 -825
  437. py2docfx/venv/venv1/Lib/site-packages/win32com/client/genpy.py +0 -1350
  438. py2docfx/venv/venv1/Lib/site-packages/win32com/client/makepy.py +0 -453
  439. py2docfx/venv/venv1/Lib/site-packages/win32com/client/selecttlb.py +0 -182
  440. py2docfx/venv/venv1/Lib/site-packages/win32com/client/tlbrowse.py +0 -277
  441. py2docfx/venv/venv1/Lib/site-packages/win32com/client/util.py +0 -103
  442. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/__init__.py +0 -0
  443. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/connect.py +0 -96
  444. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/dump_clipboard.py +0 -74
  445. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/eventsApartmentThreaded.py +0 -98
  446. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/eventsFreeThreaded.py +0 -92
  447. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelAddin.py +0 -169
  448. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelRTDServer.py +0 -434
  449. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/iebutton.py +0 -214
  450. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/ietoolbar.py +0 -368
  451. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/outlookAddin.py +0 -135
  452. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/trybag.py +0 -78
  453. py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/__init__.py +0 -1
  454. py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegw.py +0 -618
  455. py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwenum.py +0 -331
  456. py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwparse.py +0 -1017
  457. py2docfx/venv/venv1/Lib/site-packages/win32com/olectl.py +0 -70
  458. py2docfx/venv/venv1/Lib/site-packages/win32com/server/__init__.py +0 -1
  459. py2docfx/venv/venv1/Lib/site-packages/win32com/server/connect.py +0 -85
  460. py2docfx/venv/venv1/Lib/site-packages/win32com/server/dispatcher.py +0 -239
  461. py2docfx/venv/venv1/Lib/site-packages/win32com/server/exception.py +0 -99
  462. py2docfx/venv/venv1/Lib/site-packages/win32com/server/factory.py +0 -26
  463. py2docfx/venv/venv1/Lib/site-packages/win32com/server/localserver.py +0 -53
  464. py2docfx/venv/venv1/Lib/site-packages/win32com/server/policy.py +0 -803
  465. py2docfx/venv/venv1/Lib/site-packages/win32com/server/register.py +0 -677
  466. py2docfx/venv/venv1/Lib/site-packages/win32com/server/util.py +0 -229
  467. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/PythonTools.py +0 -47
  468. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/__init__.py +0 -0
  469. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/dictionary.py +0 -133
  470. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/interp.py +0 -59
  471. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/perfmon.py +0 -36
  472. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/test_pycomtest.py +0 -181
  473. py2docfx/venv/venv1/Lib/site-packages/win32com/storagecon.py +0 -142
  474. py2docfx/venv/venv1/Lib/site-packages/win32com/test/GenTestScripts.py +0 -95
  475. py2docfx/venv/venv1/Lib/site-packages/win32com/test/__init__.py +0 -1
  476. py2docfx/venv/venv1/Lib/site-packages/win32com/test/daodump.py +0 -88
  477. py2docfx/venv/venv1/Lib/site-packages/win32com/test/errorSemantics.py +0 -243
  478. py2docfx/venv/venv1/Lib/site-packages/win32com/test/pippo_server.py +0 -96
  479. py2docfx/venv/venv1/Lib/site-packages/win32com/test/policySemantics.py +0 -115
  480. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testADOEvents.py +0 -100
  481. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAXScript.py +0 -44
  482. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAccess.py +0 -185
  483. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testArrays.py +0 -99
  484. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testClipboard.py +0 -169
  485. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testCollections.py +0 -159
  486. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testConversionErrors.py +0 -35
  487. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDCOM.py +0 -50
  488. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDates.py +0 -74
  489. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDictionary.py +0 -101
  490. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDynamic.py +0 -83
  491. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExchange.py +0 -121
  492. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExplorer.py +0 -139
  493. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGIT.py +0 -142
  494. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGatewayAddresses.py +0 -149
  495. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testIterators.py +0 -140
  496. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOffice.py +0 -184
  497. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOfficeEvents.py +0 -138
  498. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMarshal.py +0 -160
  499. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPersist.py +0 -227
  500. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPippo.py +0 -80
  501. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPyComTest.py +0 -918
  502. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testROT.py +0 -29
  503. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testServers.py +0 -51
  504. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testShell.py +0 -272
  505. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testStorage.py +0 -88
  506. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testStreams.py +0 -147
  507. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testWMI.py +0 -18
  508. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testall.py +0 -320
  509. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testmakepy.py +0 -54
  510. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvb.py +0 -583
  511. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvbscript_regexp.py +0 -40
  512. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testxslt.py +0 -34
  513. py2docfx/venv/venv1/Lib/site-packages/win32com/test/util.py +0 -262
  514. py2docfx/venv/venv1/Lib/site-packages/win32com/universal.py +0 -224
  515. py2docfx/venv/venv1/Lib/site-packages/win32com/util.py +0 -35
  516. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/__init__.py +0 -113
  517. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/adsicon.py +0 -340
  518. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/objectPicker.py +0 -68
  519. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/scp.py +0 -565
  520. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/search.py +0 -151
  521. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/test.py +0 -274
  522. py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/__init__.py +0 -6
  523. py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditSecurity.py +0 -229
  524. py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditServiceSecurity.py +0 -219
  525. py2docfx/venv/venv1/Lib/site-packages/win32comext/axcontrol/__init__.py +0 -4
  526. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/__init__.py +0 -4
  527. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/adb.py +0 -467
  528. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/codecontainer.py +0 -279
  529. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/contexts.py +0 -58
  530. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/debugger.py +0 -238
  531. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/documents.py +0 -135
  532. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/dump.py +0 -57
  533. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/expressions.py +0 -212
  534. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/gateways.py +0 -583
  535. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/stackframe.py +0 -178
  536. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/util.py +0 -98
  537. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/__init__.py +0 -4
  538. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/asputil.py +0 -13
  539. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/__init__.py +0 -1
  540. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/debug.py +0 -223
  541. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/error.py +0 -262
  542. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/framework.py +0 -1291
  543. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pydumper.py +0 -78
  544. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript.py +0 -438
  545. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript_rexec.py +0 -54
  546. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/scriptdispatch.py +0 -103
  547. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/__init__.py +0 -0
  548. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/axsite.py +0 -145
  549. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/leakTest.py +0 -185
  550. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost.py +0 -240
  551. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost4Dbg.py +0 -83
  552. py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/__init__.py +0 -6
  553. py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/show_all_jobs.py +0 -48
  554. py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/test_bits.py +0 -119
  555. py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/__init__.py +0 -4
  556. py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/__init__.py +0 -1
  557. py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/ds_record.py +0 -60
  558. py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/ds_test.py +0 -402
  559. py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/__init__.py +0 -1
  560. py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/demo/filterDemo.py +0 -300
  561. py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/ifiltercon.py +0 -110
  562. py2docfx/venv/venv1/Lib/site-packages/win32comext/internet/__init__.py +0 -4
  563. py2docfx/venv/venv1/Lib/site-packages/win32comext/internet/inetcon.py +0 -261
  564. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/__init__.py +0 -21
  565. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/demos/mapisend.py +0 -98
  566. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/emsabtags.py +0 -875
  567. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapitags.py +0 -1023
  568. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapiutil.py +0 -211
  569. py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/__init__.py +0 -1
  570. py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/pscon.py +0 -838
  571. py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/test/testpropsys.py +0 -5
  572. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/__init__.py +0 -4
  573. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IActiveDesktop.py +0 -83
  574. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IFileOperationProgressSink.py +0 -179
  575. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IShellLinkDataList.py +0 -67
  576. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/ITransferAdviseSink.py +0 -93
  577. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IUniformResourceLocator.py +0 -56
  578. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/browse_for_folder.py +0 -45
  579. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/create_link.py +0 -73
  580. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/dump_link.py +0 -58
  581. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/explorer_browser.py +0 -143
  582. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/column_provider.py +0 -125
  583. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/context_menu.py +0 -122
  584. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/copy_hook.py +0 -84
  585. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/empty_volume_cache.py +0 -188
  586. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/folder_view.py +0 -866
  587. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/icon_handler.py +0 -81
  588. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/shell_view.py +0 -971
  589. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/shellexecuteex.py +0 -19
  590. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/viewstate.py +0 -68
  591. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/walk_shell_folders.py +0 -24
  592. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/shellcon.py +0 -1615
  593. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testSHFileOperation.py +0 -75
  594. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testShellFolder.py +0 -21
  595. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testShellItem.py +0 -69
  596. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/__init__.py +0 -6
  597. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask.py +0 -66
  598. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_1.py +0 -68
  599. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_2.py +0 -49
  600. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_localsystem.py +0 -3
  601. py2docfx/venv/venv1/Scripts/pywin32_postinstall.py +0 -733
  602. py2docfx/venv/venv1/Scripts/pywin32_testall.py +0 -120
  603. {py2docfx-0.1.15rc2025477.dist-info → py2docfx-0.1.16.dist-info}/WHEEL +0 -0
  604. {py2docfx-0.1.15rc2025477.dist-info → py2docfx-0.1.16.dist-info}/top_level.txt +0 -0
@@ -1,841 +0,0 @@
1
- # A general purpose MFC CCtrlView view that uses Scintilla.
2
-
3
- import os
4
- import re
5
- import string
6
- import struct
7
- import sys
8
-
9
- import __main__ # for attribute lookup
10
- import win32con
11
- import win32ui
12
- from pywin.mfc import afxres, docview
13
-
14
- from . import (
15
- IDLEenvironment, # nopycln: import # Injects fast_readline into the IDLE auto-indent extension
16
- bindings,
17
- control,
18
- scintillacon,
19
- )
20
-
21
- PRINTDLGORD = 1538
22
- IDC_PRINT_MAG_EDIT = 1010
23
- EM_FORMATRANGE = win32con.WM_USER + 57
24
-
25
- wordbreaks = "._" + string.ascii_uppercase + string.ascii_lowercase + string.digits
26
-
27
- patImport = re.compile(r"import (?P<name>.*)")
28
-
29
- _event_commands = [
30
- # File menu
31
- "win32ui.ID_FILE_LOCATE",
32
- "win32ui.ID_FILE_CHECK",
33
- "afxres.ID_FILE_CLOSE",
34
- "afxres.ID_FILE_NEW",
35
- "afxres.ID_FILE_OPEN",
36
- "afxres.ID_FILE_SAVE",
37
- "afxres.ID_FILE_SAVE_AS",
38
- "win32ui.ID_FILE_SAVE_ALL",
39
- # Edit menu
40
- "afxres.ID_EDIT_UNDO",
41
- "afxres.ID_EDIT_REDO",
42
- "afxres.ID_EDIT_CUT",
43
- "afxres.ID_EDIT_COPY",
44
- "afxres.ID_EDIT_PASTE",
45
- "afxres.ID_EDIT_SELECT_ALL",
46
- "afxres.ID_EDIT_FIND",
47
- "afxres.ID_EDIT_REPEAT",
48
- "afxres.ID_EDIT_REPLACE",
49
- # View menu
50
- "win32ui.ID_VIEW_WHITESPACE",
51
- "win32ui.ID_VIEW_FIXED_FONT",
52
- "win32ui.ID_VIEW_BROWSE",
53
- "win32ui.ID_VIEW_INTERACTIVE",
54
- # Window menu
55
- "afxres.ID_WINDOW_ARRANGE",
56
- "afxres.ID_WINDOW_CASCADE",
57
- "afxres.ID_WINDOW_NEW",
58
- "afxres.ID_WINDOW_SPLIT",
59
- "afxres.ID_WINDOW_TILE_HORZ",
60
- "afxres.ID_WINDOW_TILE_VERT",
61
- # Others
62
- "afxres.ID_APP_EXIT",
63
- "afxres.ID_APP_ABOUT",
64
- ]
65
-
66
- _extra_event_commands = [
67
- ("EditDelete", afxres.ID_EDIT_CLEAR),
68
- ("LocateModule", win32ui.ID_FILE_LOCATE),
69
- ("GotoLine", win32ui.ID_EDIT_GOTO_LINE),
70
- ("DbgBreakpointToggle", win32ui.IDC_DBG_ADD),
71
- ("DbgGo", win32ui.IDC_DBG_GO),
72
- ("DbgStepOver", win32ui.IDC_DBG_STEPOVER),
73
- ("DbgStep", win32ui.IDC_DBG_STEP),
74
- ("DbgStepOut", win32ui.IDC_DBG_STEPOUT),
75
- ("DbgBreakpointClearAll", win32ui.IDC_DBG_CLEAR),
76
- ("DbgClose", win32ui.IDC_DBG_CLOSE),
77
- ]
78
-
79
- event_commands = []
80
-
81
-
82
- def _CreateEvents():
83
- for name in _event_commands:
84
- val = eval(name)
85
- name_parts = name.split("_")[1:]
86
- name_parts = [p.capitalize() for p in name_parts]
87
- event = "".join(name_parts)
88
- event_commands.append((event, val))
89
- for name, id in _extra_event_commands:
90
- event_commands.append((name, id))
91
-
92
-
93
- _CreateEvents()
94
- del _event_commands
95
- del _extra_event_commands
96
-
97
- command_reflectors = [
98
- (win32ui.ID_EDIT_UNDO, win32con.WM_UNDO),
99
- (win32ui.ID_EDIT_REDO, scintillacon.SCI_REDO),
100
- (win32ui.ID_EDIT_CUT, win32con.WM_CUT),
101
- (win32ui.ID_EDIT_COPY, win32con.WM_COPY),
102
- (win32ui.ID_EDIT_PASTE, win32con.WM_PASTE),
103
- (win32ui.ID_EDIT_CLEAR, win32con.WM_CLEAR),
104
- (win32ui.ID_EDIT_SELECT_ALL, scintillacon.SCI_SELECTALL),
105
- ]
106
-
107
-
108
- def DoBraceMatch(control):
109
- curPos = control.SCIGetCurrentPos()
110
- charBefore = " "
111
- if curPos:
112
- charBefore = control.SCIGetCharAt(curPos - 1)
113
- charAt = control.SCIGetCharAt(curPos)
114
- braceAtPos = braceOpposite = -1
115
- if charBefore in "[](){}":
116
- braceAtPos = curPos - 1
117
- if braceAtPos == -1:
118
- if charAt in "[](){}":
119
- braceAtPos = curPos
120
- if braceAtPos != -1:
121
- braceOpposite = control.SCIBraceMatch(braceAtPos, 0)
122
- if braceAtPos != -1 and braceOpposite == -1:
123
- control.SCIBraceBadHighlight(braceAtPos)
124
- else:
125
- # either clear them both or set them both.
126
- control.SCIBraceHighlight(braceAtPos, braceOpposite)
127
-
128
-
129
- def _get_class_attributes(ob):
130
- # Recurse into base classes looking for attributes
131
- items = []
132
- try:
133
- items.extend(dir(ob))
134
- for i in ob.__bases__:
135
- for item in _get_class_attributes(i):
136
- if item not in items:
137
- items.append(item)
138
- except AttributeError:
139
- pass
140
- return items
141
-
142
-
143
- # Supposed to look like an MFC CEditView, but
144
- # also supports IDLE extensions and other source code generic features.
145
- class CScintillaView(docview.CtrlView, control.CScintillaColorEditInterface):
146
- def __init__(self, doc):
147
- docview.CtrlView.__init__(
148
- self,
149
- doc,
150
- "Scintilla",
151
- win32con.WS_CHILD
152
- | win32con.WS_VSCROLL
153
- | win32con.WS_HSCROLL
154
- | win32con.WS_CLIPCHILDREN
155
- | win32con.WS_VISIBLE,
156
- )
157
- self._tabWidth = (
158
- 8 # Mirror of what we send to Scintilla - never change this directly
159
- )
160
- self.bAutoCompleteAttributes = 1
161
- self.bShowCallTips = 1
162
- self.bMatchBraces = 0 # Editor option will default this to true later!
163
- self.bindings = bindings.BindingsManager(self)
164
-
165
- self.idle = IDLEenvironment.IDLEEditorWindow(self)
166
- self.idle.IDLEExtension("AutoExpand")
167
- # SendScintilla is called so frequently it is worth optimizing.
168
- self.SendScintilla = self._obj_.SendMessage
169
-
170
- def _MakeColorizer(self):
171
- ext = os.path.splitext(self.GetDocument().GetPathName())[1]
172
- from . import formatter
173
-
174
- return formatter.BuiltinPythonSourceFormatter(self, ext)
175
-
176
- # def SendScintilla(self, msg, w=0, l=0):
177
- # return self._obj_.SendMessage(msg, w, l)
178
-
179
- def SCISetTabWidth(self, width):
180
- # I need to remember the tab-width for the AutoIndent extension. This may go.
181
- self._tabWidth = width
182
- control.CScintillaEditInterface.SCISetTabWidth(self, width)
183
-
184
- def GetTabWidth(self):
185
- return self._tabWidth
186
-
187
- def HookHandlers(self):
188
- # Create events for all the menu names.
189
- for name, val in event_commands:
190
- # handler = lambda id, code, tosend=val, parent=parent: parent.OnCommand(tosend, 0) and 0
191
- self.bindings.bind(name, None, cid=val)
192
-
193
- # Hook commands that do nothing other than send Scintilla messages.
194
- for command, reflection in command_reflectors:
195
- handler = (
196
- lambda id, code, ss=self.SendScintilla, tosend=reflection: ss(tosend)
197
- and 0
198
- )
199
- self.HookCommand(handler, command)
200
-
201
- self.HookCommand(self.OnCmdViewWS, win32ui.ID_VIEW_WHITESPACE)
202
- self.HookCommandUpdate(self.OnUpdateViewWS, win32ui.ID_VIEW_WHITESPACE)
203
- self.HookCommand(
204
- self.OnCmdViewIndentationGuides, win32ui.ID_VIEW_INDENTATIONGUIDES
205
- )
206
- self.HookCommandUpdate(
207
- self.OnUpdateViewIndentationGuides, win32ui.ID_VIEW_INDENTATIONGUIDES
208
- )
209
- self.HookCommand(self.OnCmdViewRightEdge, win32ui.ID_VIEW_RIGHT_EDGE)
210
- self.HookCommandUpdate(self.OnUpdateViewRightEdge, win32ui.ID_VIEW_RIGHT_EDGE)
211
- self.HookCommand(self.OnCmdViewEOL, win32ui.ID_VIEW_EOL)
212
- self.HookCommandUpdate(self.OnUpdateViewEOL, win32ui.ID_VIEW_EOL)
213
- self.HookCommand(self.OnCmdViewFixedFont, win32ui.ID_VIEW_FIXED_FONT)
214
- self.HookCommandUpdate(self.OnUpdateViewFixedFont, win32ui.ID_VIEW_FIXED_FONT)
215
- self.HookCommand(self.OnCmdFileLocate, win32ui.ID_FILE_LOCATE)
216
- self.HookCommand(self.OnCmdEditFind, win32ui.ID_EDIT_FIND)
217
- self.HookCommand(self.OnCmdEditRepeat, win32ui.ID_EDIT_REPEAT)
218
- self.HookCommand(self.OnCmdEditReplace, win32ui.ID_EDIT_REPLACE)
219
- self.HookCommand(self.OnCmdGotoLine, win32ui.ID_EDIT_GOTO_LINE)
220
- self.HookCommand(self.OnFilePrint, afxres.ID_FILE_PRINT)
221
- self.HookCommand(self.OnFilePrint, afxres.ID_FILE_PRINT_DIRECT)
222
- self.HookCommand(self.OnFilePrintPreview, win32ui.ID_FILE_PRINT_PREVIEW)
223
- # Key bindings.
224
- self.HookMessage(self.OnKeyDown, win32con.WM_KEYDOWN)
225
- self.HookMessage(self.OnKeyDown, win32con.WM_SYSKEYDOWN)
226
- # Hook wheeley mouse events
227
- # self.HookMessage(self.OnMouseWheel, win32con.WM_MOUSEWHEEL)
228
- self.HookFormatter()
229
-
230
- def OnInitialUpdate(self):
231
- doc = self.GetDocument()
232
-
233
- # Enable Unicode
234
- self.SendScintilla(scintillacon.SCI_SETCODEPAGE, scintillacon.SC_CP_UTF8, 0)
235
- self.SendScintilla(scintillacon.SCI_SETKEYSUNICODE, 1, 0)
236
-
237
- # Create margins
238
- self.SendScintilla(
239
- scintillacon.SCI_SETMARGINTYPEN, 1, scintillacon.SC_MARGIN_SYMBOL
240
- )
241
- self.SendScintilla(scintillacon.SCI_SETMARGINMASKN, 1, 0xF)
242
- self.SendScintilla(
243
- scintillacon.SCI_SETMARGINTYPEN, 2, scintillacon.SC_MARGIN_SYMBOL
244
- )
245
- self.SendScintilla(
246
- scintillacon.SCI_SETMARGINMASKN, 2, scintillacon.SC_MASK_FOLDERS
247
- )
248
- self.SendScintilla(scintillacon.SCI_SETMARGINSENSITIVEN, 2, 1)
249
-
250
- self.GetDocument().HookViewNotifications(
251
- self
252
- ) # is there an MFC way to grab this?
253
- self.HookHandlers()
254
-
255
- # Load the configuration information.
256
- self.OnWinIniChange(None)
257
-
258
- self.SetSel()
259
-
260
- self.GetDocument().FinalizeViewCreation(
261
- self
262
- ) # is there an MFC way to grab this?
263
-
264
- def _GetSubConfigNames(self):
265
- return None # By default we use only sections without sub-sections.
266
-
267
- def OnWinIniChange(self, section=None):
268
- self.bindings.prepare_configure()
269
- try:
270
- self.DoConfigChange()
271
- finally:
272
- self.bindings.complete_configure()
273
-
274
- def DoConfigChange(self):
275
- # Bit of a hack I don't kow what to do about - these should be "editor options"
276
- from pywin.framework.editor import GetEditorOption
277
-
278
- self.bAutoCompleteAttributes = GetEditorOption("Autocomplete Attributes", 1)
279
- self.bShowCallTips = GetEditorOption("Show Call Tips", 1)
280
- # Update the key map and extension data.
281
- configManager.configure(self, self._GetSubConfigNames())
282
- if configManager.last_error:
283
- win32ui.MessageBox(configManager.last_error, "Configuration Error")
284
- self.bMatchBraces = GetEditorOption("Match Braces", 1)
285
- self.ApplyFormattingStyles(1)
286
-
287
- def OnDestroy(self, msg):
288
- self.bindings.close()
289
- self.bindings = None
290
- self.idle.close()
291
- self.idle = None
292
- control.CScintillaColorEditInterface.close(self)
293
- return docview.CtrlView.OnDestroy(self, msg)
294
-
295
- def OnMouseWheel(self, msg):
296
- zDelta = msg[2] >> 16
297
- vpos = self.GetScrollPos(win32con.SB_VERT)
298
- vpos -= zDelta / 40 # 3 lines per notch
299
- self.SetScrollPos(win32con.SB_VERT, vpos)
300
- self.SendScintilla(
301
- win32con.WM_VSCROLL, (vpos << 16) | win32con.SB_THUMBPOSITION, 0
302
- )
303
-
304
- def OnBraceMatch(self, std, extra):
305
- if not self.bMatchBraces:
306
- return
307
- DoBraceMatch(self)
308
-
309
- def OnNeedShown(self, std, extra):
310
- notify = self.SCIUnpackNotifyMessage(extra)
311
- # OnNeedShown is called before an edit operation when
312
- # text is folded (as it is possible the text insertion will happen
313
- # in a folded region.) As this happens _before_ the insert,
314
- # we ignore the length (if we are at EOF, pos + length may
315
- # actually be beyond the end of buffer)
316
- self.EnsureCharsVisible(notify.position)
317
-
318
- def EnsureCharsVisible(self, start, end=None):
319
- if end is None:
320
- end = start
321
- lineStart = self.LineFromChar(min(start, end))
322
- lineEnd = self.LineFromChar(max(start, end))
323
- while lineStart <= lineEnd:
324
- self.SCIEnsureVisible(lineStart)
325
- lineStart += 1
326
-
327
- # Helper to add an event to a menu.
328
- def AppendMenu(self, menu, text="", event=None, flags=None, checked=0):
329
- if event is None:
330
- assert flags is not None, "No event or custom flags!"
331
- cmdid = 0
332
- else:
333
- cmdid = self.bindings.get_command_id(event)
334
- if cmdid is None:
335
- # No event of that name - no point displaying it.
336
- print(
337
- 'View.AppendMenu(): Unknown event "{}" specified for menu text "{}" - ignored'.format(
338
- event, text
339
- )
340
- )
341
- return
342
- keyname = configManager.get_key_binding(event, self._GetSubConfigNames())
343
- if keyname is not None:
344
- text += "\t" + keyname
345
- if flags is None:
346
- flags = win32con.MF_STRING | win32con.MF_ENABLED
347
- if checked:
348
- flags |= win32con.MF_CHECKED
349
- menu.AppendMenu(flags, cmdid, text)
350
-
351
- def OnKeyDown(self, msg):
352
- return self.bindings.fire_key_event(msg)
353
-
354
- def GotoEndOfFileEvent(self, event):
355
- self.SetSel(-1)
356
-
357
- def KeyDotEvent(self, event):
358
- ## Don't trigger autocomplete if any text is selected
359
- s, e = self.GetSel()
360
- if s != e:
361
- return 1
362
- self.SCIAddText(".")
363
- if self.bAutoCompleteAttributes:
364
- self._AutoComplete()
365
-
366
- # View Whitespace/EOL/Indentation UI.
367
-
368
- def OnCmdViewWS(self, cmd, code): # Handle the menu command
369
- viewWS = self.SCIGetViewWS()
370
- self.SCISetViewWS(not viewWS)
371
-
372
- def OnUpdateViewWS(self, cmdui): # Update the tick on the UI.
373
- cmdui.SetCheck(self.SCIGetViewWS())
374
- cmdui.Enable()
375
-
376
- def OnCmdViewIndentationGuides(self, cmd, code): # Handle the menu command
377
- viewIG = self.SCIGetIndentationGuides()
378
- self.SCISetIndentationGuides(not viewIG)
379
-
380
- def OnUpdateViewIndentationGuides(self, cmdui): # Update the tick on the UI.
381
- cmdui.SetCheck(self.SCIGetIndentationGuides())
382
- cmdui.Enable()
383
-
384
- def OnCmdViewRightEdge(self, cmd, code): # Handle the menu command
385
- if self.SCIGetEdgeMode() == scintillacon.EDGE_NONE:
386
- mode = scintillacon.EDGE_BACKGROUND
387
- else:
388
- mode = scintillacon.EDGE_NONE
389
- self.SCISetEdgeMode(mode)
390
-
391
- def OnUpdateViewRightEdge(self, cmdui): # Update the tick on the UI.
392
- cmdui.SetCheck(self.SCIGetEdgeMode() != scintillacon.EDGE_NONE)
393
- cmdui.Enable()
394
-
395
- def OnCmdViewEOL(self, cmd, code): # Handle the menu command
396
- viewEOL = self.SCIGetViewEOL()
397
- self.SCISetViewEOL(not viewEOL)
398
-
399
- def OnUpdateViewEOL(self, cmdui): # Update the tick on the UI.
400
- cmdui.SetCheck(self.SCIGetViewEOL())
401
- cmdui.Enable()
402
-
403
- def OnCmdViewFixedFont(self, cmd, code): # Handle the menu command
404
- self._GetColorizer().bUseFixed = not self._GetColorizer().bUseFixed
405
- self.ApplyFormattingStyles(0)
406
- # Ensure the selection is visible!
407
- self.ScrollCaret()
408
-
409
- def OnUpdateViewFixedFont(self, cmdui): # Update the tick on the UI.
410
- c = self._GetColorizer()
411
- if c is not None:
412
- cmdui.SetCheck(c.bUseFixed)
413
- cmdui.Enable(c is not None)
414
-
415
- def OnCmdEditFind(self, cmd, code):
416
- from . import find
417
-
418
- find.ShowFindDialog()
419
-
420
- def OnCmdEditRepeat(self, cmd, code):
421
- from . import find
422
-
423
- find.FindNext()
424
-
425
- def OnCmdEditReplace(self, cmd, code):
426
- from . import find
427
-
428
- find.ShowReplaceDialog()
429
-
430
- def OnCmdFileLocate(self, cmd, id):
431
- line = self.GetLine().strip()
432
- import pywin.framework.scriptutils
433
-
434
- m = patImport.match(line)
435
- if m:
436
- # Module name on this line - locate that!
437
- modName = m.group("name")
438
- fileName = pywin.framework.scriptutils.LocatePythonFile(modName)
439
- if fileName is None:
440
- win32ui.SetStatusText("Can't locate module %s" % modName)
441
- return 1 # Let the default get it.
442
- else:
443
- win32ui.GetApp().OpenDocumentFile(fileName)
444
- else:
445
- # Just to a "normal" locate - let the default handler get it.
446
- return 1
447
- return 0
448
-
449
- def OnCmdGotoLine(self, cmd, id):
450
- try:
451
- lineNo = int(input("Enter Line Number")) - 1
452
- except (ValueError, KeyboardInterrupt):
453
- return 0
454
- self.SCIEnsureVisible(lineNo)
455
- self.SCIGotoLine(lineNo)
456
- return 0
457
-
458
- def SaveTextFile(self, filename, encoding=None):
459
- doc = self.GetDocument()
460
- doc._SaveTextToFile(self, filename, encoding=encoding)
461
- doc.SetModifiedFlag(0)
462
- return 1
463
-
464
- def _AutoComplete(self):
465
- self.SCIAutoCCancel() # Cancel old auto-complete lists.
466
- # First try and get an object without evaluating calls
467
- ob = self._GetObjectAtPos(bAllowCalls=0)
468
- # If that failed, try and process call or indexing to get the object.
469
- if ob is None:
470
- ob = self._GetObjectAtPos(bAllowCalls=1)
471
- items_dict = {}
472
- if ob is not None:
473
- try: # Catch unexpected errors when fetching attribute names from the object
474
- # extra attributes of win32ui objects
475
- if hasattr(ob, "_obj_"):
476
- try:
477
- items_dict.update(dict.fromkeys(dir(ob._obj_)))
478
- except AttributeError:
479
- pass # object has no __dict__
480
-
481
- # normal attributes
482
- try:
483
- items_dict.update(dict.fromkeys(dir(ob)))
484
- except AttributeError:
485
- pass # object has no __dict__
486
- if hasattr(ob, "__class__"):
487
- items_dict.update(
488
- dict.fromkeys(_get_class_attributes(ob.__class__))
489
- )
490
- # The object may be a COM object with typelib support - let's see if we can get its props.
491
- # (contributed by Stefan Migowsky)
492
- try:
493
- # Get the automation attributes
494
- items_dict.update(ob.__class__._prop_map_get_)
495
- # See if there is an write only property
496
- # could be optimized
497
- items_dict.update(ob.__class__._prop_map_put_)
498
- # append to the already evaluated list
499
- except AttributeError:
500
- pass
501
- # The object might be a pure COM dynamic dispatch with typelib support - let's see if we can get its props.
502
- if hasattr(ob, "_oleobj_"):
503
- try:
504
- for iTI in range(0, ob._oleobj_.GetTypeInfoCount()):
505
- typeInfo = ob._oleobj_.GetTypeInfo(iTI)
506
- self._UpdateWithITypeInfo(items_dict, typeInfo)
507
- except:
508
- pass
509
- except:
510
- win32ui.SetStatusText(
511
- f"Error attempting to get object attributes - {sys.exc_info()[0]!r}"
512
- )
513
-
514
- items = [
515
- k
516
- for k in
517
- # ensure all keys are strings.
518
- map(str, items_dict)
519
- # All names that start with "_" go!
520
- if not k.startswith("_")
521
- ]
522
-
523
- if not items:
524
- # Heuristics a-la AutoExpand
525
- # The idea is to find other usages of the current binding
526
- # and assume, that it refers to the same object (or at least,
527
- # to an object of the same type)
528
- # Contributed by Vadim Chugunov [vadimch@yahoo.com]
529
- left, right = self._GetWordSplit()
530
- if left == "": # Ignore standalone dots
531
- return None
532
- # We limit our search to the current class, if that
533
- # information is available
534
- minline, maxline, curclass = self._GetClassInfoFromBrowser()
535
- endpos = self.LineIndex(maxline)
536
- text = self.GetTextRange(self.LineIndex(minline), endpos)
537
- try:
538
- l = re.findall(r"\b" + left + r"\.\w+", text)
539
- except re.error:
540
- # parens etc may make an invalid RE, but this code wouldnt
541
- # benefit even if the RE did work :-)
542
- l = []
543
- prefix = len(left) + 1
544
- unique = {}
545
- for li in l:
546
- unique[li[prefix:]] = 1
547
- # Assuming traditional usage of self...
548
- if curclass and left == "self":
549
- self._UpdateWithClassMethods(unique, curclass)
550
-
551
- items = [word for word in unique if word[:2] != "__" or word[-2:] != "__"]
552
- # Ignore the word currently to the right of the dot - probably a red-herring.
553
- try:
554
- items.remove(right[1:])
555
- except ValueError:
556
- pass
557
- if items:
558
- items.sort()
559
- self.SCIAutoCSetAutoHide(0)
560
- self.SCIAutoCShow(items)
561
-
562
- def _UpdateWithITypeInfo(self, items_dict, typeInfo):
563
- import pythoncom
564
-
565
- typeInfos = [typeInfo]
566
- # suppress IDispatch and IUnknown methods
567
- inspectedIIDs = {pythoncom.IID_IDispatch: None}
568
-
569
- while len(typeInfos) > 0:
570
- typeInfo = typeInfos.pop()
571
- typeAttr = typeInfo.GetTypeAttr()
572
-
573
- if typeAttr.iid not in inspectedIIDs:
574
- inspectedIIDs[typeAttr.iid] = None
575
- for iFun in range(0, typeAttr.cFuncs):
576
- funDesc = typeInfo.GetFuncDesc(iFun)
577
- funName = typeInfo.GetNames(funDesc.memid)[0]
578
- if funName not in items_dict:
579
- items_dict[funName] = None
580
-
581
- # Inspect the type info of all implemented types
582
- # E.g. IShellDispatch5 implements IShellDispatch4 which implements IShellDispatch3 ...
583
- for iImplType in range(0, typeAttr.cImplTypes):
584
- iRefType = typeInfo.GetRefTypeOfImplType(iImplType)
585
- refTypeInfo = typeInfo.GetRefTypeInfo(iRefType)
586
- typeInfos.append(refTypeInfo)
587
-
588
- # TODO: This is kinda slow. Probably need some kind of cache
589
- # here that is flushed upon file save
590
- # Or maybe we don't need the superclass methods at all ?
591
- def _UpdateWithClassMethods(self, dict, classinfo):
592
- if not hasattr(classinfo, "methods"):
593
- # No 'methods' - probably not what we think it is.
594
- return
595
- dict.update(classinfo.methods)
596
- for super in classinfo.super:
597
- if hasattr(super, "methods"):
598
- self._UpdateWithClassMethods(dict, super)
599
-
600
- # Find which class definition caret is currently in and return
601
- # indexes of the the first and the last lines of that class definition
602
- # Data is obtained from module browser (if enabled)
603
- def _GetClassInfoFromBrowser(self, pos=-1):
604
- minline = 0
605
- maxline = self.GetLineCount() - 1
606
- doc = self.GetParentFrame().GetActiveDocument()
607
- browser = None
608
- try:
609
- if doc is not None:
610
- browser = doc.GetAllViews()[1]
611
- except IndexError:
612
- pass
613
- if browser is None:
614
- return (minline, maxline, None) # Current window has no browser
615
- if not browser.list:
616
- return (minline, maxline, None) # Not initialized
617
- path = self.GetDocument().GetPathName()
618
- if not path:
619
- return (minline, maxline, None) # No current path
620
-
621
- import pywin.framework.scriptutils
622
-
623
- curmodule, path = pywin.framework.scriptutils.GetPackageModuleName(path)
624
- try:
625
- clbrdata = browser.list.root.clbrdata
626
- except AttributeError:
627
- return (minline, maxline, None) # No class data for this module.
628
- curline = self.LineFromChar(pos)
629
- curclass = None
630
- # Find out which class we are in
631
- for item in clbrdata.values():
632
- if item.module == curmodule:
633
- item_lineno = (
634
- item.lineno - 1
635
- ) # Scintilla counts lines from 0, whereas pyclbr - from 1
636
- if minline < item_lineno <= curline:
637
- minline = item_lineno
638
- curclass = item
639
- if curline < item_lineno < maxline:
640
- maxline = item_lineno
641
- return (minline, maxline, curclass)
642
-
643
- def _GetObjectAtPos(self, pos=-1, bAllowCalls=0):
644
- left, right = self._GetWordSplit(pos, bAllowCalls)
645
- if left: # It is an attribute lookup
646
- # How is this for a hack!
647
- namespace = sys.modules.copy()
648
- namespace.update(__main__.__dict__)
649
- # Get the debugger's context.
650
- try:
651
- from pywin.framework import interact
652
-
653
- if interact.edit is not None and interact.edit.currentView is not None:
654
- globs, locs = interact.edit.currentView.GetContext()[:2]
655
- if globs:
656
- namespace.update(globs)
657
- if locs:
658
- namespace.update(locs)
659
- except ImportError:
660
- pass
661
- try:
662
- return eval(left, namespace)
663
- except:
664
- pass
665
- return None
666
-
667
- def _GetWordSplit(self, pos=-1, bAllowCalls=0):
668
- if pos == -1:
669
- pos = self.GetSel()[0] - 1 # Character before current one
670
- limit = self.GetTextLength()
671
- before = []
672
- after = []
673
- index = pos - 1
674
- wordbreaks_use = wordbreaks
675
- if bAllowCalls:
676
- wordbreaks_use += "()[]"
677
- while index >= 0:
678
- char = self.SCIGetCharAt(index)
679
- if char not in wordbreaks_use:
680
- break
681
- before.insert(0, char)
682
- index -= 1
683
- index = pos
684
- while index <= limit:
685
- char = self.SCIGetCharAt(index)
686
- if char not in wordbreaks_use:
687
- break
688
- after.append(char)
689
- index += 1
690
- return "".join(before), "".join(after)
691
-
692
- def OnPrepareDC(self, dc, pInfo):
693
- # print(
694
- # "OnPrepareDC for page",
695
- # pInfo.GetCurPage(),
696
- # "of",
697
- # pInfo.GetFromPage(),
698
- # "to",
699
- # pInfo.GetToPage(),
700
- # ", starts=",
701
- # self.starts,
702
- # )
703
- if dc.IsPrinting():
704
- # Check if we are beyond the end.
705
- # (only do this when actually printing, else messes up print preview!)
706
- if not pInfo.GetPreview() and self.starts is not None:
707
- prevPage = pInfo.GetCurPage() - 1
708
- if prevPage > 0 and self.starts[prevPage] >= self.GetTextLength():
709
- # All finished.
710
- pInfo.SetContinuePrinting(0)
711
- return
712
- dc.SetMapMode(win32con.MM_TEXT)
713
-
714
- def OnPreparePrinting(self, pInfo):
715
- flags = (
716
- win32ui.PD_USEDEVMODECOPIES | win32ui.PD_ALLPAGES | win32ui.PD_NOSELECTION
717
- ) # Don't support printing just a selection.
718
- # NOTE: Custom print dialogs are stopping the user's values from coming back :-(
719
- # self.prtDlg = PrintDialog(pInfo, PRINTDLGORD, flags)
720
- # pInfo.SetPrintDialog(self.prtDlg)
721
- pInfo.SetMinPage(1)
722
- # max page remains undefined for now.
723
- pInfo.SetFromPage(1)
724
- pInfo.SetToPage(1)
725
- ret = self.DoPreparePrinting(pInfo)
726
- return ret
727
-
728
- def OnBeginPrinting(self, dc, pInfo):
729
- self.starts = None
730
- return self._obj_.OnBeginPrinting(dc, pInfo)
731
-
732
- def CalculatePageRanges(self, dc, pInfo):
733
- # Calculate page ranges and max page
734
- self.starts = {0: 0}
735
- metrics = dc.GetTextMetrics()
736
- left, top, right, bottom = pInfo.GetDraw()
737
- # Leave space at the top for the header.
738
- rc = (left, top + int((9 * metrics["tmHeight"]) / 2), right, bottom)
739
- pageStart = 0
740
- maxPage = 0
741
- textLen = self.GetTextLength()
742
- while pageStart < textLen:
743
- pageStart = self.FormatRange(dc, pageStart, textLen, rc, 0)
744
- maxPage += 1
745
- self.starts[maxPage] = pageStart
746
- # And a sentinel for one page past the end
747
- self.starts[maxPage + 1] = textLen
748
- # When actually printing, maxPage doesn't have any effect at this late state.
749
- # but is needed to make the Print Preview work correctly.
750
- pInfo.SetMaxPage(maxPage)
751
-
752
- def OnFilePrintPreview(self, *arg):
753
- self._obj_.OnFilePrintPreview()
754
-
755
- def OnFilePrint(self, *arg):
756
- self._obj_.OnFilePrint()
757
-
758
- def FormatRange(self, dc, pageStart, lengthDoc, rc, draw):
759
- """
760
- typedef struct _formatrange {
761
- HDC hdc;
762
- HDC hdcTarget;
763
- RECT rc;
764
- RECT rcPage;
765
- CHARRANGE chrg;} FORMATRANGE;
766
- """
767
- fmt = "PPIIIIIIIIll"
768
- hdcRender = dc.GetHandleOutput()
769
- hdcFormat = dc.GetHandleAttrib()
770
- fr = struct.pack(
771
- fmt,
772
- hdcRender,
773
- hdcFormat,
774
- rc[0],
775
- rc[1],
776
- rc[2],
777
- rc[3],
778
- rc[0],
779
- rc[1],
780
- rc[2],
781
- rc[3],
782
- pageStart,
783
- lengthDoc,
784
- )
785
- nextPageStart = self.SendScintilla(EM_FORMATRANGE, draw, fr)
786
- return nextPageStart
787
-
788
- def OnPrint(self, dc, pInfo):
789
- metrics = dc.GetTextMetrics()
790
- # print("dev", w, h, l, metrics["tmAscent"], metrics["tmDescent"])
791
- if self.starts is None:
792
- self.CalculatePageRanges(dc, pInfo)
793
- pageNum = pInfo.GetCurPage() - 1
794
- # Setup the header of the page - docname on left, pagenum on right.
795
- doc = self.GetDocument()
796
- cxChar = metrics["tmAveCharWidth"]
797
- cyChar = metrics["tmHeight"]
798
- left, top, right, bottom = pInfo.GetDraw()
799
- dc.TextOut(0, 2 * cyChar, doc.GetTitle())
800
- pagenum_str = win32ui.LoadString(afxres.AFX_IDS_PRINTPAGENUM) % (pageNum + 1,)
801
- dc.SetTextAlign(win32con.TA_RIGHT)
802
- dc.TextOut(right, 2 * cyChar, pagenum_str)
803
- dc.SetTextAlign(win32con.TA_LEFT)
804
- top += int(7 * cyChar / 2)
805
- dc.MoveTo(left, top)
806
- dc.LineTo(right, top)
807
- top += cyChar
808
- rc = (left, top, right, bottom)
809
- nextPageStart = self.FormatRange(
810
- dc, self.starts[pageNum], self.starts[pageNum + 1], rc, 1
811
- )
812
-
813
-
814
- def LoadConfiguration():
815
- global configManager
816
- # Bit of a hack I don't kow what to do about?
817
- from .config import ConfigManager
818
-
819
- configName = rc = win32ui.GetProfileVal("Editor", "Keyboard Config", "default")
820
- configManager = ConfigManager(configName)
821
- if configManager.last_error:
822
- bTryDefault = 0
823
- msg = "Error loading configuration '{}'\n\n{}".format(
824
- configName,
825
- configManager.last_error,
826
- )
827
- if configName != "default":
828
- msg += "\n\nThe default configuration will be loaded."
829
- bTryDefault = 1
830
- win32ui.MessageBox(msg)
831
- if bTryDefault:
832
- configManager = ConfigManager("default")
833
- if configManager.last_error:
834
- win32ui.MessageBox(
835
- "Error loading configuration 'default'\n\n%s"
836
- % (configManager.last_error)
837
- )
838
-
839
-
840
- configManager = None
841
- LoadConfiguration()