mwxlib 0.98.1__py3-none-any.whl → 0.98.6__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.

Potentially problematic release.


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

@@ -0,0 +1,228 @@
1
+ Metadata-Version: 2.1
2
+ Name: mwxlib
3
+ Version: 0.98.6
4
+ Summary: A wrapper of matplotlib and wxPython (phoenix)
5
+ Home-page: https://github.com/komoto48g/mwxlib
6
+ Author: Kazuya O'moto
7
+ Author-email: komoto@jeol.co.jp
8
+ License: MIT
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.8
12
+ Classifier: Programming Language :: Python :: 3.9
13
+ Classifier: Programming Language :: Python :: 3.10
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Topic :: Scientific/Engineering :: Image Processing
17
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
18
+ Description-Content-Type: text/markdown
19
+ License-File: LICENSE
20
+ Requires-Dist: wxpython >=4.2.0
21
+ Requires-Dist: matplotlib
22
+ Requires-Dist: opencv-python
23
+ Requires-Dist: scipy
24
+
25
+ # mwxlib
26
+
27
+ Welcome to mwxlib project!
28
+ Python package based on matplotlib/wx and wxPython shell extension library
29
+
30
+ See [Demo Script and Gallery](./demo/readme.md).
31
+
32
+
33
+ ## Getting Started
34
+
35
+ These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
36
+
37
+ ### Prerequisites
38
+
39
+ - ~~Python 2.7~~ (PY2 support has ended since 0.50)
40
+ - ~~Python 3.5~~ (PY35 support has ended since 0.70)
41
+ - ~~Python 3.7~~ (PY37 support has ended since 0.80)
42
+ - Python 3.8 -- 3.9 (deprecated since 0.90)
43
+ - wxpython >= 4.1.1
44
+ - numpy
45
+ - pillow
46
+ - matplotlib
47
+ - opencv-python
48
+ - Python 3.10 -- 3.11
49
+ - wxpython >= 4.2.1
50
+ - numpy
51
+ - pillow
52
+ - matplotlib
53
+ - opencv-python
54
+ - Python 3.12
55
+ - A version of wxpython for PY312 has not yet released on PyPi.
56
+ * You can download the snapshot from https://wxpython.org/Phoenix/snapshot-builds/,
57
+ * or the latest snapshot from Azure Pipelines https://alldunn.visualstudio.com/wxPython-CI/_build?definitionId=2&_a=summary
58
+
59
+
60
+ ### Installing
61
+
62
+ To install, type:
63
+ ```
64
+ pip install mwxlib
65
+ ```
66
+ To install latest version from GitHub, type:
67
+ ```
68
+ pip install git+https://github.com/komoto48g/mwxlib.git
69
+ ```
70
+
71
+ ### How to use
72
+
73
+ mwx.deb is wx.py.shell-base inspector used for debugging in the target process.
74
+ ```
75
+ >>> import mwx; mwx.deb()
76
+ ```
77
+
78
+ :memo: mwxlib creates "~/.mwxlib/" in your *HOME* directory.
79
+ This includes history, logs, dump files used to check when an error occurs.
80
+
81
+ :memo: At the first startup, it takes some time to collect module information and create a dictionary file.
82
+ The collected module name is used for completion at the time of input in the shell.
83
+ (If you start the shell while pressing [C-S-], the dictionary file will be recreated)
84
+
85
+ As you are diving into the python process, you can watch, inspect, and debug the target.
86
+
87
+ Enjoy diving!
88
+
89
+ ### Uninstalling
90
+ ```
91
+ pip uninstall mwxlib
92
+ ```
93
+
94
+
95
+ # Features
96
+
97
+ ![intro](./demo/images/demo-shell.gif)
98
+ The animation shows how the Nautilus works, which is embedded in a simple PyEditor app.
99
+
100
+ As you are diving into the python process,
101
+ you can watch, inspect, and change everything in the target.
102
+
103
+
104
+ ## Nautilus in the Shell
105
+
106
+ The framework has an extended class based on wx.py.shell.Shell named Nautilus,
107
+ which has the following features:
108
+
109
+ 1. Auto-completion and apropos functions are reinforced.
110
+ - [1] history-comp-mode
111
+ - [2] word-comp-mode
112
+ - [3] apropos-comp-mode
113
+ - [4] text-comp-mode
114
+ - [5] module-comp-mode
115
+ 2. Magic syntax.
116
+ - [ ` ] quoteback
117
+ - [@] pullback
118
+ 3. Powerful inspectoin utilities.
119
+ - Filling
120
+ - InspectionTool
121
+ - Ghost in the shell
122
+
123
+ **All objects in the process can be accessed using:**
124
+ ```
125
+ self : the target of the shell,
126
+ this : the module which includes target.
127
+ ```
128
+
129
+ **To include the shell in your wxPython application:**
130
+ ```
131
+ >>> self.inspector = mwx.ShellFrame(self, target=self)
132
+ ```
133
+
134
+
135
+ ## Autocomp key bindings
136
+
137
+ C-up : [0] retrieve previous history
138
+ C-down : [0] retrieve next history
139
+ C-j, M-j : [0] tooltip of eval (for the selected or focused word)
140
+ C-h, M-h : [0] calltip of help (for the selected or focused func)
141
+ TAB : [1] history-comp-mode
142
+ M-p : [1] retrieve previous history in comp-mode
143
+ M-n : [1] retrieve next history in comp-mode
144
+ M-. : [2] word-comp-mode
145
+ M-/ : [3] apropos-comp-mode
146
+ M-, : [4] text-comp-mode
147
+ M-m : [5] module-comp-mode
148
+ * All completions [1--5] are incremental when pressed any alnums, and decremental when backspace.
149
+ See [key bindings](key-bindings.md) for more information.
150
+
151
+
152
+ ## Magic syntax
153
+
154
+ - quoteback : ```x`y --> y=x | x`y`z --> z=y=x```
155
+
156
+ - pullback : ```x@y --> y(x) | x@y@z --> z(y(x))```
157
+
158
+ - apropos : ```x.y? [not] p => shows apropos &optional (not-)matched by p:predicates```
159
+ equiv. apropos(y, x [,ignorecase ?:True,??:False] [,pred=p])
160
+ y can contain regular expressions.
161
+ (RE) \\a:[a-z], \\A:[A-Z] can be used in addition.
162
+ p can be ?atom, ?callable, ?instance(*types), and
163
+ predicates imported from inspect
164
+ e.g., isclass, ismodule, ismethod, isfunction, etc.
165
+
166
+ * info : ?x --> info(x) shows short information
167
+ * help : ??x --> help(x) shows full description
168
+ * sx : !x --> sx(x) executes command in external shell
169
+
170
+ Note: The last three (*) are original syntax defined in wx.py.shell,
171
+ at present version, enabled with USE_MAGIC switch being on
172
+
173
+
174
+ ## built-in utilities
175
+
176
+ @p : Synonym of print.
177
+ @pp : Synonym of pprint.
178
+ @mro : Display mro list and filename:lineno.
179
+ @where : Display filename:lineno.
180
+ @info : Short info.
181
+ @help : Full description.
182
+ @load : Load a file in Log.
183
+ @dive : Clone the shell with new target.
184
+ @debug : Open pdb debugger or event monitor.
185
+ @watch : Watch for events using event monitor.
186
+ @timeit : Measure CPU time (per one execution).
187
+ @profile : Profile a single function call.
188
+ @highlight : Highlight the widget.
189
+ @filling : Inspection using ``wx.lib.filling.Filling``.
190
+
191
+
192
+ ## Ghost in the shell
193
+
194
+ Ghost in the shell is the help system for divers,
195
+ which is a notebook-style window consists of four editors:
196
+ - scratch buffer
197
+ + a temporary buffer
198
+ - Help buffer
199
+ + piping text from info(?) and help(??)
200
+ - Logging buffer
201
+ + logging debug process and the input-history
202
+
203
+
204
+ # Authors
205
+
206
+ * Kazuya O'moto - *Initial work* -
207
+
208
+ See also the list of who participated in this project.
209
+
210
+
211
+ # Attribution
212
+
213
+ Default icons are provided by `wx.ArtProvider`.
214
+ Optional icons are provided by:
215
+
216
+ - [famfamfam: Silk icons](http://www.famfamfam.com/lab/icons/silk/) designed by Mark James.
217
+ - [Tango desktop project](http://tango.freedesktop.org/Tango_Desktop_Project).
218
+ - [Iconify - Freedom to choose icons](https://iconify.design/).
219
+
220
+ Note:
221
+ Other icons could be attributed to other open sources.
222
+ This is a mish-mash of stuff from all over the internet.
223
+ If I missed an author credit or attribution, please let me know.
224
+
225
+
226
+ # License
227
+
228
+ This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details
@@ -1,28 +1,28 @@
1
1
  mwx/__init__.py,sha256=nN62CGTWjME7Zz2h-jIRB8MxwuErIkHPGrlBzydkF0o,643
2
2
  mwx/bookshelf.py,sha256=Y4xI2SrEO22DrI1hyyfFx7DfFZA8znOzX9RWMPsA2BE,5137
3
- mwx/controls.py,sha256=K4GJB81TXv5q0faTELQgbUmtMQBRIM9yINJdTI0xA3g,47556
4
- mwx/framework.py,sha256=xSh2cxTyg6SHU3jh9cGTaiC2u7teJPJwRuFrmEfSXiQ,75509
5
- mwx/graphman.py,sha256=Cyhl_Da_HGBfk721gu1r5iwSH9L3yPEG8Fzmc2gx-EU,70462
3
+ mwx/controls.py,sha256=jhru4HiIijb3QJz2elGt0in9soaR3xilgHsfItYY0JI,47595
4
+ mwx/framework.py,sha256=rp93Nh7eqeAWGpkjxp-NY84RYBfmI1Ahn_tauavWSbg,75475
5
+ mwx/graphman.py,sha256=A53ufapRAysL0wTCr1anrg_T_PqpumonnYn-swaC598,70165
6
6
  mwx/images.py,sha256=_-Eh3xF7Khu42ivkYp97NXIzSNGbjcidqtWjZQFGtqE,47827
7
7
  mwx/matplot2.py,sha256=xCJ_ZzdDEWmzctpPaOrzTnwXyHINP4nfFHweoTZa6ug,32899
8
- mwx/matplot2g.py,sha256=wiZFDFuQe3ax71fmyeR_9hvAmgT-4nVfZ30UByv8Nv8,64379
8
+ mwx/matplot2g.py,sha256=3hS0ilXCif0mZkSufE_Rf-taRs3m1hIxiIFMuioYYuc,64371
9
9
  mwx/matplot2lg.py,sha256=JRWjWnLJUytbSq6wxs4P0gbVUr3xoLSF6Wwqd5V_pJI,27404
10
- mwx/mgplt.py,sha256=ITzxA97yDwr_35BUk5OqnyskSuKVDbpf2AQCKY1jHTI,5671
11
- mwx/nutshell.py,sha256=nTEKmJ0CMqkVtbmIlDHvZDpkUjefgL6QbxMZKwbZpIk,141553
12
- mwx/utilus.py,sha256=mmqB4P_3mTi7SrFleMiN1599Jm0Us0XKnNA6v2xglSs,37333
10
+ mwx/mgplt.py,sha256=r56SFryorIgO12mvHJY-z6uwWsaPEqk6pHYwKWqbTY4,5663
11
+ mwx/nutshell.py,sha256=9SjAwZB0NkSe7K-REBXEaqYwgML7JVKbp2HkI6cLM54,141807
12
+ mwx/utilus.py,sha256=B76pDg6_kW8FMNdQ6xO0Bwy4KJ0laY98Gg6N3iqV7c8,37325
13
13
  mwx/wxmon.py,sha256=f3V24EF7kdMlYF7usLYK9QE5KU6fSu0jVqsvwAiA-Ag,12647
14
14
  mwx/wxpdb.py,sha256=lLowkkAgMhPFHAfklD7wZHq0qbSMjRxnBFtSajmVgME,19133
15
15
  mwx/wxwil.py,sha256=hhyB1lPrF9ixeObxCOKQv0Theu-B-kpJg_yVU3EGSNg,5406
16
16
  mwx/wxwit.py,sha256=ifxMwdIz-QhDEr8vyAztToF8VVSxKNXlq4Ap1awBZvo,7362
17
17
  mwx/plugins/__init__.py,sha256=jnJ-Sl9XJ_7BFDslD_r7dsbxsOT57q_IaEriV53XIGY,41
18
- mwx/plugins/ffmpeg_view.py,sha256=1s7QqIbOpqNrSwbNoc4wQQNo8o1ho5JfXLuseAhgzK4,10441
18
+ mwx/plugins/ffmpeg_view.py,sha256=epO_26sPmdDyr_lApa2Jtgxp-yCEdW0OEz0_QbrFEuM,10427
19
19
  mwx/plugins/fft_view.py,sha256=xxTDD-_z4l18u4t2ybPB3xAMIslJmJ0gQlTxEqJUhNI,2782
20
20
  mwx/plugins/frame_listview.py,sha256=hbApzZWa9-BmQthu7uZBlBbGbtf4iJ_prO8IhxoGMs8,10421
21
21
  mwx/plugins/line_profile.py,sha256=--9NIc3x5EfRB3L59JvD7rzENQHyiYfu7wWJo6AuMkA,820
22
22
  mwx/py/__init__.py,sha256=xykgfOytOwNuvXsfkLoumFZSTN-iBsHOjczYXngjmUE,12
23
23
  mwx/py/filling.py,sha256=fumUG1F5M9TL-Dfqni4G85uk7TmvnUunTbdcPDV0vfo,16857
24
- mwxlib-0.98.1.dist-info/LICENSE,sha256=PGtRKCaTkmUDlBQwpptJAxJtdqxIUtAmdBsaT9nUVkA,1091
25
- mwxlib-0.98.1.dist-info/METADATA,sha256=XcUcwip9zlP_OGddgjt4s8fHdRvz7pGU-y1NS1t4kXg,1880
26
- mwxlib-0.98.1.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
27
- mwxlib-0.98.1.dist-info/top_level.txt,sha256=SI1Mh118AstnUFGPNq5aMNKiAnVNmZk1S9Ij-OwAEpY,4
28
- mwxlib-0.98.1.dist-info/RECORD,,
24
+ mwxlib-0.98.6.dist-info/LICENSE,sha256=PGtRKCaTkmUDlBQwpptJAxJtdqxIUtAmdBsaT9nUVkA,1091
25
+ mwxlib-0.98.6.dist-info/METADATA,sha256=RDfB4NPf48FHJKeGXjSM72yYzMlOlrs5nqqPqO45ToU,7411
26
+ mwxlib-0.98.6.dist-info/WHEEL,sha256=Mdi9PDNwEZptOjTlUcAth7XJDFtKrHYaQMPulZeBCiQ,91
27
+ mwxlib-0.98.6.dist-info/top_level.txt,sha256=SI1Mh118AstnUFGPNq5aMNKiAnVNmZk1S9Ij-OwAEpY,4
28
+ mwxlib-0.98.6.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (72.1.0)
2
+ Generator: setuptools (73.0.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,54 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: mwxlib
3
- Version: 0.98.1
4
- Summary: A wrapper of matplotlib and wxPython (phoenix)
5
- Home-page: https://github.com/komoto48g/mwxlib
6
- Author: Kazuya O'moto
7
- Author-email: komoto@jeol.co.jp
8
- License: MIT
9
- Classifier: License :: OSI Approved :: MIT License
10
- Classifier: Programming Language :: Python :: 3
11
- Classifier: Programming Language :: Python :: 3.8
12
- Classifier: Programming Language :: Python :: 3.9
13
- Classifier: Programming Language :: Python :: 3.10
14
- Classifier: Programming Language :: Python :: 3.11
15
- Classifier: Topic :: Scientific/Engineering :: Image Processing
16
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
17
- License-File: LICENSE
18
- Requires-Dist: wxpython
19
- Requires-Dist: matplotlib
20
- Requires-Dist: opencv-python
21
- Requires-Dist: scipy
22
-
23
- Project description
24
- ===================
25
-
26
- Welcome to mwxlib project!
27
- The mwxlib is the Python package based on matplotlib/wx and wxPython shell extension.
28
-
29
- For more information please refer to the `Readme file <https://github.com/komoto48g/mwxlib>`_ and demos.
30
-
31
-
32
- How to use
33
- ----------
34
-
35
- mwx.deb is wx.py.shell-base inspector used for debugging in the target process.
36
-
37
- >>> import mwx; mwx.deb()
38
-
39
- It is very easy to include the shell in your wxPython application.
40
-
41
- >>> self.inspector = mwx.ShellFrame(self, target=self)
42
-
43
- As you are diving into the python process, you can watch, inspect, and debug the target.
44
-
45
- Enjoy diving!
46
-
47
- :memo:
48
- mwxlib creates ~/.mwxlib/ in your home directory.
49
- This includes history, logs, dump files used to report when an error occurs.
50
-
51
- :memo:
52
- At the first startup, it takes some time to collect module information and create a dictionary.
53
- The collected module name is used for completion at the time of input in the shell.
54
- If you start the shell while pressing [C-S-], the dictionary will be recreated.