mwxlib 0.95.2__py3-none-any.whl → 0.95.4__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.
- mwx/__init__.py +1 -1
- mwx/framework.py +8 -5
- mwx/images.py +17 -84
- mwx/nutshell.py +41 -14
- mwx/plugins/fft_view.py +2 -2
- mwx/wxwit.py +9 -10
- {mwxlib-0.95.2.dist-info → mwxlib-0.95.4.dist-info}/METADATA +1 -1
- {mwxlib-0.95.2.dist-info → mwxlib-0.95.4.dist-info}/RECORD +11 -11
- {mwxlib-0.95.2.dist-info → mwxlib-0.95.4.dist-info}/LICENSE +0 -0
- {mwxlib-0.95.2.dist-info → mwxlib-0.95.4.dist-info}/WHEEL +0 -0
- {mwxlib-0.95.2.dist-info → mwxlib-0.95.4.dist-info}/top_level.txt +0 -0
mwx/__init__.py
CHANGED
|
@@ -13,7 +13,7 @@ from .controls import Button, ToggleButton, TextCtrl, Choice, Gauge, Indicator
|
|
|
13
13
|
|
|
14
14
|
## Plugman
|
|
15
15
|
## from . import graphman
|
|
16
|
-
## from .graphman import Frame as
|
|
16
|
+
## from .graphman import Frame as ViewFrame, Layer, Thread, Graph
|
|
17
17
|
|
|
18
18
|
## Matplot
|
|
19
19
|
## from .matplot2 import MatplotPanel
|
mwx/framework.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#! python3
|
|
2
2
|
"""mwxlib framework.
|
|
3
3
|
"""
|
|
4
|
-
__version__ = "0.95.
|
|
4
|
+
__version__ = "0.95.4"
|
|
5
5
|
__author__ = "Kazuya O'moto <komoto@jeol.co.jp>"
|
|
6
6
|
|
|
7
7
|
from functools import wraps, partial
|
|
@@ -1147,7 +1147,7 @@ class ShellFrame(MiniFrame):
|
|
|
1147
1147
|
self.console.Bind(aui.EVT_AUINOTEBOOK_PAGE_CHANGED, self.OnConsolePageChanged)
|
|
1148
1148
|
|
|
1149
1149
|
self.ghost = AuiNotebook(self, size=(600,400))
|
|
1150
|
-
self.ghost.AddPage(self.Scratch, "Scratch")
|
|
1150
|
+
self.ghost.AddPage(self.Scratch, "Scratch", bitmap=Icon('ghost'))
|
|
1151
1151
|
self.ghost.AddPage(self.Log, "Log")
|
|
1152
1152
|
self.ghost.AddPage(self.Help, "Help")
|
|
1153
1153
|
self.ghost.Name = "ghost"
|
|
@@ -1163,7 +1163,7 @@ class ShellFrame(MiniFrame):
|
|
|
1163
1163
|
self.watcher = AuiNotebook(self, size=(300,200))
|
|
1164
1164
|
self.watcher.AddPage(self.ginfo, "globals")
|
|
1165
1165
|
self.watcher.AddPage(self.linfo, "locals")
|
|
1166
|
-
self.watcher.AddPage(self.monitor, "Monitor", bitmap=Icon('
|
|
1166
|
+
self.watcher.AddPage(self.monitor, "Monitor", bitmap=Icon('tv'))
|
|
1167
1167
|
self.watcher.AddPage(self.inspector, "Inspector", bitmap=Icon('inspect'))
|
|
1168
1168
|
self.watcher.Name = "watcher"
|
|
1169
1169
|
|
|
@@ -1273,14 +1273,17 @@ class ShellFrame(MiniFrame):
|
|
|
1273
1273
|
self.set_hookable(self.Log)
|
|
1274
1274
|
|
|
1275
1275
|
@self.Scratch.define_key('C-j')
|
|
1276
|
-
def eval_line():
|
|
1276
|
+
def eval_line(evt):
|
|
1277
1277
|
shell = self.current_shell
|
|
1278
1278
|
self.Scratch.buffer.py_eval_line(shell.globals, shell.locals)
|
|
1279
|
+
evt.Skip(False)
|
|
1279
1280
|
|
|
1280
1281
|
@self.Scratch.define_key('C-S-j')
|
|
1281
|
-
|
|
1282
|
+
@self.Scratch.define_key('M-j')
|
|
1283
|
+
def eval_buffer(evt):
|
|
1282
1284
|
shell = self.current_shell
|
|
1283
1285
|
self.Scratch.buffer.py_exec_region(shell.globals, shell.locals)
|
|
1286
|
+
evt.Skip(False)
|
|
1284
1287
|
|
|
1285
1288
|
## Session
|
|
1286
1289
|
self.SESSION_FILE = get_rootpath(".debrc")
|
mwx/images.py
CHANGED
|
@@ -104,21 +104,6 @@ camera = PyEmbeddedImage(
|
|
|
104
104
|
b'vhvJZFLusf54PC5lMYHI5XKPqa/P6EP3+XyCry4T8E/2BHDoEIdv6fmH92/9Vvz31/gHd9iU'
|
|
105
105
|
b'VZFEDKoAAAAASUVORK5CYII=')
|
|
106
106
|
|
|
107
|
-
#----------------------------------------------------------------------
|
|
108
|
-
card = PyEmbeddedImage(
|
|
109
|
-
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlw'
|
|
110
|
-
b'SFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoA'
|
|
111
|
-
b'AAHcSURBVDiNhZM7a5RBGIWf+W4r0SiGKJgIq7ExsfEChiBCLBQECwsbC3vxH9iLIBbqv9Ay'
|
|
112
|
-
b'CIKFPyAsFkG8rWA0RmOCQTeb3f32S+Y9Fns3H/GFmWbmPDNzzjtOEmemZ+aAq4Dx/wqAt2Y2'
|
|
113
|
-
b'u1Car0QAkq5cujgTBwEECJxaW6UBpXCIgPKnxanlldU5YDbqXz458pzJsa84BoWt1dZc/nkc'
|
|
114
|
-
b'768lS99XLgB0ATJjcuwzM9cfErp1ALIsI02bpGmTZrOJOIRKj3mz6rvgLsBkOBxhPEpa/UDa'
|
|
115
|
-
b'aFCvV6lt/mDjzzeyrMb4sVsEQTjwtN4NBDhHtbLIr+VX1Gp1Go0MFwyzd3icg4WIfftH2w+x'
|
|
116
|
-
b'HIAJSVQqm2ScIxraZuQAJJERxyKJIQnWkDze5wEkFr4cBT0CtzO7Tr1bOoL3vQ1Rx2OT8aJ0'
|
|
117
|
-
b'ipevp3BOqD8JdXwCb45iMccDUwtiviNwba0GICDU1269PjAhE6adJ/eDHGDWizHo6Y3V9Q2S'
|
|
118
|
-
b'OKAQh62R9MaeJKKQhKz93sTbvyYK5I3QbXP78uE877p171kVKScFM2PLQs7euL8rwD+9ieXE'
|
|
119
|
-
b'qC1vnJiY4GP5fe5faF3UUSwW8SZo/1wnidPnpx8g7giG2LUL2hxoAncXSvNP/gJOse/PFpzV'
|
|
120
|
-
b'hQAAAABJRU5ErkJggg==')
|
|
121
|
-
|
|
122
107
|
#----------------------------------------------------------------------
|
|
123
108
|
clip = PyEmbeddedImage(
|
|
124
109
|
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAABGdBTUEAAK/INwWK6QAAABl0'
|
|
@@ -150,26 +135,6 @@ clock = PyEmbeddedImage(
|
|
|
150
135
|
b'vqHBv3R3pmbxzgwz4Z+EaTXtwqIogrzjxIJ4QVVV1UyihxgjFv3/K09Bu/lEkBgg5rLZH+fT'
|
|
151
136
|
b'5dvfn7iFAAAAAElFTkSuQmCC')
|
|
152
137
|
|
|
153
|
-
#----------------------------------------------------------------------
|
|
154
|
-
code = PyEmbeddedImage(
|
|
155
|
-
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0'
|
|
156
|
-
b'RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAL2SURBVDjLVdNNaBx1GMfx78zO'
|
|
157
|
-
b'7Lu765qQWIPteqiH+IKCjTmkClIVPHi0pVDSXBT0sGhLUOvJl0OL4AuVBC+CLXpoD1KqweBB'
|
|
158
|
-
b'WFFajOChSTU20q2h6e66nX2Znfm/ejCJ8Qff6+fy8DjWWgCmz9f3AR/cV0pPhtIQSoM0hoEy'
|
|
159
|
-
b'AdAFmoAG2kAL+Bz41mNzRqmJh0fzk689MczO9YUphsIU25EeExK6sebPZo9v/ugfAKo7gZFC'
|
|
160
|
-
b'0gGgflvjOw6eAwkPUr7LvSmXhOviJ+CRsQy7irnyp5fW33e3AC1loWQilIGucAgkdDoRQQRB'
|
|
161
|
-
b'BK0B3OppAF4/e53JSo4HhvzhbSAfBiP7v5pHHZ2mH2kqJ2cZ+uxjwqBPNzb0IstAgAEc3eGn'
|
|
162
|
-
b'a22WrgfrLoA4Ol2eXfrimZw3QDoeYWyRePh0GZ0/RdTu0o8NfWnAwkYn5sPF1Y4WYtoVR44c'
|
|
163
|
-
b'NGH01+iwXzT1FvVj76CApUNVxI2ApNNn77EZUrXviZSDsaB9jRKicv7lxxZdM4jm433jabO0'
|
|
164
|
-
b'Asdn6eTLOC7oQpnfX3gFfrmKnBjnnrmTuFJiLag4RotYA7gmHLyY+LoWmcounBNvYm81cLEk'
|
|
165
|
-
b'gyaVuXdRe+7GuVijPlPFSfpIren1Q6WE6AC42YsXvjy9e//EtdXbyHyKyqszYOH+946TKHiE'
|
|
166
|
-
b'bcOVuXMEUwfI+NDqxahYbCy89awFcAEWhvaKj6YO48WQaDTAcXGbDcIA1k6cQuaKYCHruTTa'
|
|
167
|
-
b'A7SI17eu501Vzw4Bbz84OU6veobvlgW5rubHTy6Q9i2+B8nEvxWysFoPUUJsbANaiKeA535e'
|
|
168
|
-
b'XqM98OjFFqktsXQQyqC0wVhLuVjkpadHudkK0UI0/gOkfPT5Jx/KvHH48f/9gLYgtUUowMLp'
|
|
169
|
-
b'hXWyPnR7IVrK1k5g7WYz4MziMqV8hlIhTSmXophLcUc2SSrpkvJcDk2NkPKg8XcXLeWNbcAo'
|
|
170
|
-
b'da52eWWsdnllN3DXZnduVkwnfT+d9inkMpQKWX69Wv8N+GEL+AdfSH+n2ppttwAAAABJRU5E'
|
|
171
|
-
b'rkJggg==')
|
|
172
|
-
|
|
173
138
|
#----------------------------------------------------------------------
|
|
174
139
|
colour = PyEmbeddedImage(
|
|
175
140
|
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0'
|
|
@@ -244,41 +209,6 @@ core = PyEmbeddedImage(
|
|
|
244
209
|
b'AQgglIQEcp6GhgaDtrY22JmgAAT5HRQOnz9/BqsB5Y2dO3eCNHOAYh8ggOAGgJyKbhgygAUa'
|
|
245
210
|
b'VDMjTBwggMAGTJ48+flvIJCWlpYjlH2RNYMAQIABANLKHICUilYLAAAAAElFTkSuQmCC')
|
|
246
211
|
|
|
247
|
-
#----------------------------------------------------------------------
|
|
248
|
-
edit = PyEmbeddedImage(
|
|
249
|
-
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0'
|
|
250
|
-
b'RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAH8SURBVDjLjZPfS1NhGMdXf0VE'
|
|
251
|
-
b'QhDUhdCN4X0IYT8ghIJQM0KoC4vushZddLELKyRhQQkSFIKEGEkUCI2oxVhepG5zi1xbc0u3'
|
|
252
|
-
b'cDs7Z+ec/ezT+x62scmmHvhwDrzP93Pe57znsQE2cR0SdAm6d+GwYL/M1LBVBV35fF4plUqV'
|
|
253
|
-
b'crlMK8Q6TqdzYrukJuiW4Vwuh67rdbLZLJlMhmQyaUnigVlC05f4+dbB0tQplp92DsnwPimQ'
|
|
254
|
-
b'BaZpUigUrLtE0zQURSGVSqHF37DhGkVZeQdagszKLJ7HvZtNAhmuIQWGYaCqKps/ZkivPqCw'
|
|
255
|
-
b'Ps/Gp0cYvjnKUTe+F9fMJoFoo96zfJZ9K+sLpP33qRhujPANtr7dJPhqmO/PBxX3+PljTYLt'
|
|
256
|
-
b'qImPpH13qZge9LUrmLEB1FU7sZd9jJw5MljNthYk/KLnxdFqeAjzdz9Z/z3Ck2fRE36qx9pa'
|
|
257
|
-
b'kAjME1y4Lbb9GTMyTD52GUXsZO3ZadTkL6umrSD4ZZrAezvLH54Q915EjwywtXSH8FQf+t+I'
|
|
258
|
-
b'9V12FLwe6wE1SmjyAi77Qb6Kt3rGe9H+hKzwrgLH9eMUPE4K3gm8jpPMjRwlHfNTLBbr7Cjo'
|
|
259
|
-
b'7znA2NVOXA/PsThzi2wyah1pI+0E/9rNQQsqMtM4CyfE36fLhb2ERa0mB7BR0CElexjnGnL0'
|
|
260
|
-
b'O2T2PyFunSz8jchwAAAAAElFTkSuQmCC')
|
|
261
|
-
|
|
262
|
-
#----------------------------------------------------------------------
|
|
263
|
-
erase = PyEmbeddedImage(
|
|
264
|
-
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0'
|
|
265
|
-
b'RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAMOSURBVHjaYjx66tobAT4e9n//'
|
|
266
|
-
b'/zPAwD8g88ePnwy/f/1mePPuI9Of3//ef/78xYOZheUKExMTw+1bNxkaqjPAagECiIWdjY1b'
|
|
267
|
-
b'U02GgwEJ/Aca9uPXP4a/fxgY7t5/zMDDzcl198Hz/U+evQxlZ2c/gKwWIICYGLAARkZGBqBF'
|
|
268
|
-
b'DIxM/xiYmJkYJCRFGBysdUXUVeV3srKwhPxDOJYBIIBYsBkAkmcEYjY2Fob7Dx4zvHr5koGL'
|
|
269
|
-
b'm4Phz++/bJ8+flj979+/IqB0P0gtQABhdQHYFUxAVwBNERURYvj1j5Hh5YuPDHfuPmZg42Bj'
|
|
270
|
-
b'+PLlQxtMHUAAYXUByHYmoDf+/P7DoGugwfDrBzAwP/9kePf8OQMrKxvDqRNH4WoBAgjhgn9/'
|
|
271
|
-
b'GRiun2JguHmW4R+Q+wfojz+srAxf7t1jYOoqYmDdu46BlYsb6C1WBmZmZrg2gABCuODJLQaG'
|
|
272
|
-
b'4zsYGL5+YPj/6B7DV5sQhv8PbzIITqpiYN+7g4FT7hjDb20zBiYxaWAgI1wLEEAIAySVGRjk'
|
|
273
|
-
b'1RkY9qxjYL45n4H7zFEGpjt3GFgPH2T4LaXE8D6nkYFZRJyBlfEf1JMQABBALDD2DyYg0y6E'
|
|
274
|
-
b'gfHbTwbWFTMY2K9uZmB49Z7ht5YBw7u6qQy/FTUYmL98YQAmJnA0wwBAALHAAuEPMAgYWZkZ'
|
|
275
|
-
b'WJg4GBifvmJgePaageHzDwaGp28ZGIGxwAjyO1AfMyMsoiEAIICY/sFC/vcvBrbFkxnYOysY'
|
|
276
|
-
b'GF5/ZPhrZMHwj1uYgfXsDQZhH1cG9m1AF3FyQW1HuAAggOCxwHJkBwPr1A4GhhdvGH5FJjN8'
|
|
277
|
-
b'XriT4WvvLIb/fPwMzK9eMQgU5zIwvXrB8B8YjcgAIIAQXjBzYmB08mP4L6PC8CulEJwffvv6'
|
|
278
|
-
b'MnxYvZGBq6yA4Wt6FsM/XqBhwLSB7AWAAGKBpWtuQT4GhvbpYClWIP77F5SpgLSLHcOv8+eA'
|
|
279
|
-
b'XvzPwP31FwMLCytKIAIEEMvHT5++tnVO/sPExALNB/+APmQCav4HNuA/NGf8B3P+AzUzMXz5'
|
|
280
|
-
b'BEyWUAAQYABehgBuH0rveAAAAABJRU5ErkJggg==')
|
|
281
|
-
|
|
282
212
|
#----------------------------------------------------------------------
|
|
283
213
|
exit = PyEmbeddedImage(
|
|
284
214
|
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0'
|
|
@@ -437,20 +367,6 @@ load = PyEmbeddedImage(
|
|
|
437
367
|
b'n78wcHADSx8ulhsMHEDMzAiK1m+4qiaAAEINij9/GcAuAcUWKHYYwRmFC1g1tQmIcGd8/f33'
|
|
438
368
|
b'ye/ff7WAEr/AsQjLoWAnQipdWFAABBgAhGIfg4WD5MwAAAAASUVORK5CYII=')
|
|
439
369
|
|
|
440
|
-
#----------------------------------------------------------------------
|
|
441
|
-
memo = PyEmbeddedImage(
|
|
442
|
-
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACEElEQVR4AY2TA5BbUQBFs5mO'
|
|
443
|
-
b'2kFt2xrVtm2bw9pGWNu2ubZt24y+cZtX//X9xjnPKhK9UbNOZzhrOaM5iaoO+z9Z9msvVWXR'
|
|
444
|
-
b'6s9YC4sKIMsyqoqjoyOuXb/KntWeWmJcrFYrBKQEAtsoK8yWMpSZS1FaVozi0iIUlRSgoCgP'
|
|
445
|
-
b'3t5eCAsLw6M9G/gXzRvIjxqqI+80d6j3V0BCBBaruVLJh4/vkR74DW/at0b28ePwGDYYdzo4'
|
|
446
|
-
b'fFIIKNqG0LBQUt0Kx2XtTrzTTEPyzYPwnz8bHm3b4mFdlaQQMAxNJP/VxARSk6QIF3zQTkOB'
|
|
447
|
-
b'2xFIrmvhOq4VHtVR4WZ3h3UKAcuxCAsPU5T84ekVvDs7BfmuhyF+X4iY871xfX1D6LcvBWEV'
|
|
448
|
-
b'Ap7nQCQMS2pCISPeF+81dtjlIETHRYgwdMf1DY1QlBkFwlQQCKKA8PDwXyU/v443pyYi12k/'
|
|
449
|
-
b'gRGs6YJrGxojIyEIgFy5QJIkIgHPcXh9fDRyHPcRGP6nO+P21lbISY+EyWwCgMoFZC5ERETg'
|
|
450
|
-
b'7X0NnC7Mgei8Ep7HOuDaxhb4/O4pomOiYbZWLfibA5sn4u6ugbi9sSGe7h2A0sIM0AwFG2WD'
|
|
451
|
-
b'1WapXsBSJsyf2BOanbORmxQIXuDB/exYhkhAUbaaBGUQWOpvn4ii+FfC2iUsx5CmKgX2lWg1'
|
|
452
|
-
b'mUyoTQhcVFwIrf6slbC1Xc6Kg/xLGML+APJWxIkWy8dWAAAAAElFTkSuQmCC')
|
|
453
|
-
|
|
454
370
|
#----------------------------------------------------------------------
|
|
455
371
|
paste = PyEmbeddedImage(
|
|
456
372
|
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwY'
|
|
@@ -578,6 +494,23 @@ saveall = PyEmbeddedImage(
|
|
|
578
494
|
b'lD3/b0B6tPf2byempRFO127T095JQ6wJFBTcJk7VhCRjYItUT/mgrgxOvWtrPtLdEG8gYdcT'
|
|
579
495
|
b'6gDRGjERWsosrS2TKwbMP78rcth3/gX/0SEvLZFG1QAAAABJRU5ErkJggg==')
|
|
580
496
|
|
|
497
|
+
#----------------------------------------------------------------------
|
|
498
|
+
script = PyEmbeddedImage(
|
|
499
|
+
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0'
|
|
500
|
+
b'RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJ+SURBVBgZBcExbFRlAADg7//f'
|
|
501
|
+
b'u7teC3elQEoMgeDkYDQ6oMQQTYyGxMHZuDA6Ypw0cWI20cHJUdl0cJLIiomR6OACGhUCpqGW'
|
|
502
|
+
b'tlzbu/b97/3v9/tCKQVc/e7RRXz+7OrSpUXbW7S9tu8ddv0M+3iCjF1s42v8WAP0XffKi2eO'
|
|
503
|
+
b'Xfro9dMAYJ766SL1092jfDa17DfZgycHfvh7/hau1QB9161PhgE8epoNQlAHqprRIDo3iqoY'
|
|
504
|
+
b'DSpeOjv2zHRl7atfNj6LALltJys1Xc9+CmYtTxtmR8yO2D7kv4MMPr7x0KULK54/NThdA+S2'
|
|
505
|
+
b'XTs+jOYN86MsxqBGVRErKkEV6BHynp//2fXbw9lGDZBTWp+OK7PDzqIpYiyqSMxBFakUVYVS'
|
|
506
|
+
b'2dxrfHHrrz1crQG6lM6vTwZmR0UHhSoHsSBTKeoS9YU8yLrUXfj+w9d2IkBOzfkz05F5KkKk'
|
|
507
|
+
b'CkFERACEQil0TSOnJkMNV67fHNdVHI4GUcpZVFAUZAEExEibs4P5osMeROiadHoUiIEeCgFR'
|
|
508
|
+
b'EAoRBOMB2weNrkmbNz+9UiBCTs1yrVdHqhgIkRL0EOj7QGG5jrZ2D+XUbADEy9dunOpSun7x'
|
|
509
|
+
b'uXMe7xUPNrOd/WyeyKUIoRgOGS8xWWZ7b6FLaROgzim9iXd+vXvf7mHtoCnaXDRtkLpel3t9'
|
|
510
|
+
b'KdamUx+8fcbj7YWc0hZAndv25XffeGH8yfuvAoBcaHOROhS+vLlhecD+wUJu222AOrft/cdP'
|
|
511
|
+
b'Zr65ddfqsbHVyZLVlZHpysjx5aHRMBrV0XuX141qtnb25bb9F6Duu+7b23funb195955nMRJ'
|
|
512
|
+
b'nMAJTJeGg8HS0sBkZWx1suz3Px79iZ8A/gd7ijssEaZF9QAAAABJRU5ErkJggg==')
|
|
513
|
+
|
|
581
514
|
#----------------------------------------------------------------------
|
|
582
515
|
tag = PyEmbeddedImage(
|
|
583
516
|
b'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0'
|
mwx/nutshell.py
CHANGED
|
@@ -48,8 +48,8 @@ py_where_re = r'> +([^*?"<>|\r\n]+?):([0-9]+)'
|
|
|
48
48
|
py_break_re = r'at ([^*?"<>|\r\n]+?):([0-9]+)'
|
|
49
49
|
|
|
50
50
|
|
|
51
|
-
def skip(
|
|
52
|
-
|
|
51
|
+
def skip(evt):
|
|
52
|
+
evt.Skip()
|
|
53
53
|
|
|
54
54
|
|
|
55
55
|
def can_edit(f):
|
|
@@ -1082,9 +1082,6 @@ class EditorInterface(CtrlInterface):
|
|
|
1082
1082
|
"""Goto char position with selection."""
|
|
1083
1083
|
if pos is None or pos < 0:
|
|
1084
1084
|
return
|
|
1085
|
-
## if pos < 0:
|
|
1086
|
-
## pos += self.TextLength + 1 # Counts end-of-buffer (+1:\0)
|
|
1087
|
-
## return
|
|
1088
1085
|
org = self.cpos
|
|
1089
1086
|
if org == pos:
|
|
1090
1087
|
return
|
|
@@ -1095,7 +1092,7 @@ class EditorInterface(CtrlInterface):
|
|
|
1095
1092
|
|
|
1096
1093
|
if interactive:
|
|
1097
1094
|
## Update the caret position/status manually.
|
|
1098
|
-
## To update caret status, shake L/R w/o modifier
|
|
1095
|
+
## To update caret status, shake L/R w/o modifier
|
|
1099
1096
|
## Don't do this if selection is active.
|
|
1100
1097
|
vk = wx.UIActionSimulator()
|
|
1101
1098
|
modkeys = [k for k in (wx.WXK_CONTROL, wx.WXK_ALT, wx.WXK_SHIFT)
|
|
@@ -1296,7 +1293,7 @@ class EditorInterface(CtrlInterface):
|
|
|
1296
1293
|
@can_edit
|
|
1297
1294
|
def kill_line(self):
|
|
1298
1295
|
p = self.eol
|
|
1299
|
-
if p == self.cpos:
|
|
1296
|
+
if p == self.cpos: # caret at end of line
|
|
1300
1297
|
if self.get_char(p) == '\r': p += 1
|
|
1301
1298
|
if self.get_char(p) == '\n': p += 1
|
|
1302
1299
|
self.Replace(self.cpos, p, '')
|
|
@@ -1304,11 +1301,7 @@ class EditorInterface(CtrlInterface):
|
|
|
1304
1301
|
@can_edit
|
|
1305
1302
|
def backward_kill_line(self):
|
|
1306
1303
|
p = self.bol
|
|
1307
|
-
|
|
1308
|
-
if text[:lp] == sys.ps2: # caret at the prompt head
|
|
1309
|
-
p -= len(sys.ps2)
|
|
1310
|
-
lp -= len(sys.ps2)
|
|
1311
|
-
if text[:lp] == '' and p: # caret at the beginning of the line
|
|
1304
|
+
if p == self.cpos > 0: # caret at beginning of line
|
|
1312
1305
|
if self.get_char(p-1) == '\n': p -= 1
|
|
1313
1306
|
if self.get_char(p-1) == '\r': p -= 1
|
|
1314
1307
|
self.Replace(p, self.cpos, '')
|
|
@@ -2221,8 +2214,8 @@ class Nautilus(Shell, EditorInterface):
|
|
|
2221
2214
|
|
|
2222
2215
|
C-up : [0] retrieve previous history
|
|
2223
2216
|
C-down : [0] retrieve next history
|
|
2224
|
-
C-j,
|
|
2225
|
-
C-h,
|
|
2217
|
+
C-j(J), M-j : [0] call tooltip of eval (for the word selected or focused)
|
|
2218
|
+
C-h(H), M-h : [0] call tooltip of help (for the func selected or focused)
|
|
2226
2219
|
TAB : [1] history-comp-mode
|
|
2227
2220
|
M-p : [1] retrieve previous history in comp-mode
|
|
2228
2221
|
M-n : [1] retrieve next history in comp-mode
|
|
@@ -2440,6 +2433,8 @@ class Nautilus(Shell, EditorInterface):
|
|
|
2440
2433
|
'escape pressed' : (-1, self.on_enter_escmap),
|
|
2441
2434
|
'space pressed' : (0, self.OnSpace),
|
|
2442
2435
|
'*backspace pressed' : (0, self.OnBackspace),
|
|
2436
|
+
'C-backspace pressed' : (0, _F(self.backward_kill_word)),
|
|
2437
|
+
'S-backspace pressed' : (0, _F(self.backward_kill_line)),
|
|
2443
2438
|
'enter pressed' : (0, self.OnEnter),
|
|
2444
2439
|
'C-enter pressed' : (0, _F(self.insertLineBreak)),
|
|
2445
2440
|
'C-S-enter pressed' : (0, _F(self.insertLineBreak)),
|
|
@@ -2458,8 +2453,10 @@ class Nautilus(Shell, EditorInterface):
|
|
|
2458
2453
|
'S-insert pressed' : (0, _F(self.Paste)),
|
|
2459
2454
|
'C-S-insert pressed' : (0, _F(self.Paste, rectangle=1)),
|
|
2460
2455
|
'C-j pressed' : (0, self.eval_line),
|
|
2456
|
+
'M-j pressed' : (0, self.exec_region),
|
|
2461
2457
|
'C-S-j pressed' : (0, self.exec_region),
|
|
2462
2458
|
'C-h pressed' : (0, self.call_helpTip),
|
|
2459
|
+
'M-h pressed' : (0, self.call_helpTip2),
|
|
2463
2460
|
'C-S-h pressed' : (0, self.call_helpTip2),
|
|
2464
2461
|
'. pressed' : (2, self.OnEnterDot),
|
|
2465
2462
|
'tab pressed' : (1, self.call_history_comp),
|
|
@@ -2517,8 +2514,10 @@ class Nautilus(Shell, EditorInterface):
|
|
|
2517
2514
|
'*backspace released' : (2, self.call_word_autocomp),
|
|
2518
2515
|
'C-S-backspace pressed' : (2, ),
|
|
2519
2516
|
'C-j pressed' : (2, self.eval_line),
|
|
2517
|
+
'M-j pressed' : (2, self.exec_region),
|
|
2520
2518
|
'C-S-j pressed' : (2, self.exec_region),
|
|
2521
2519
|
'C-h pressed' : (2, self.call_helpTip),
|
|
2520
|
+
'M-h pressed' : (2, self.call_helpTip2),
|
|
2522
2521
|
'C-S-h pressed' : (2, self.call_helpTip2),
|
|
2523
2522
|
'*alt pressed' : (2, ),
|
|
2524
2523
|
'*ctrl pressed' : (2, ),
|
|
@@ -2548,8 +2547,10 @@ class Nautilus(Shell, EditorInterface):
|
|
|
2548
2547
|
'*backspace released' : (3, self.call_apropos_autocomp),
|
|
2549
2548
|
'C-S-backspace pressed' : (3, ),
|
|
2550
2549
|
'C-j pressed' : (3, self.eval_line),
|
|
2550
|
+
'M-j pressed' : (3, self.exec_region),
|
|
2551
2551
|
'C-S-j pressed' : (3, self.exec_region),
|
|
2552
2552
|
'C-h pressed' : (3, self.call_helpTip),
|
|
2553
|
+
'M-h pressed' : (3, self.call_helpTip2),
|
|
2553
2554
|
'C-S-h pressed' : (3, self.call_helpTip2),
|
|
2554
2555
|
'*alt pressed' : (3, ),
|
|
2555
2556
|
'*ctrl pressed' : (3, ),
|
|
@@ -2579,8 +2580,10 @@ class Nautilus(Shell, EditorInterface):
|
|
|
2579
2580
|
'*backspace released' : (4, self.call_text_autocomp),
|
|
2580
2581
|
'C-S-backspace pressed' : (4, ),
|
|
2581
2582
|
'C-j pressed' : (4, self.eval_line),
|
|
2583
|
+
'M-j pressed' : (4, self.exec_region),
|
|
2582
2584
|
'C-S-j pressed' : (4, self.exec_region),
|
|
2583
2585
|
'C-h pressed' : (4, self.call_helpTip),
|
|
2586
|
+
'M-h pressed' : (4, self.call_helpTip2),
|
|
2584
2587
|
'C-S-h pressed' : (4, self.call_helpTip2),
|
|
2585
2588
|
'*alt pressed' : (4, ),
|
|
2586
2589
|
'*ctrl pressed' : (4, ),
|
|
@@ -2692,6 +2695,30 @@ class Nautilus(Shell, EditorInterface):
|
|
|
2692
2695
|
return
|
|
2693
2696
|
evt.Skip()
|
|
2694
2697
|
|
|
2698
|
+
@can_edit
|
|
2699
|
+
def backward_kill_line(self):
|
|
2700
|
+
p = max(self.bol, self.bolc) # for debugger mode: bol <= bolc
|
|
2701
|
+
text, lp = self.CurLine
|
|
2702
|
+
if text[:lp] == sys.ps2:
|
|
2703
|
+
self.Replace(p - lp, p, '') # eats ps2:prompt
|
|
2704
|
+
return
|
|
2705
|
+
if p == self.cpos > 0: # caret at beginning of line
|
|
2706
|
+
if self.get_char(p-1) == '\n': p -= 1
|
|
2707
|
+
if self.get_char(p-1) == '\r': p -= 1
|
|
2708
|
+
self.Replace(p, self.cpos, '')
|
|
2709
|
+
|
|
2710
|
+
@can_edit
|
|
2711
|
+
def backward_kill_word(self):
|
|
2712
|
+
p = self.cpos
|
|
2713
|
+
text, lp = self.CurLine
|
|
2714
|
+
if text[:lp] == sys.ps2:
|
|
2715
|
+
self.goto_char(p - lp) # skips ps2:prompt
|
|
2716
|
+
self.WordLeft()
|
|
2717
|
+
q = max(self.bol, self.bolc) # for debugger mode: bol <= bolc
|
|
2718
|
+
if self.cpos < q:
|
|
2719
|
+
self.goto_char(q) # Don't skip back prompt
|
|
2720
|
+
self.Replace(self.cpos, p, '')
|
|
2721
|
+
|
|
2695
2722
|
def OnEnter(self, evt):
|
|
2696
2723
|
"""Called when enter pressed."""
|
|
2697
2724
|
if not self.CanEdit():
|
mwx/plugins/fft_view.py
CHANGED
|
@@ -40,7 +40,7 @@ class Plugin(Layer):
|
|
|
40
40
|
self.parent.define_key('C-S-f', None)
|
|
41
41
|
return Layer.Destroy(self)
|
|
42
42
|
|
|
43
|
-
def newfft(self
|
|
43
|
+
def newfft(self):
|
|
44
44
|
"""New FFT of graph to output."""
|
|
45
45
|
frame = self.graph.frame
|
|
46
46
|
if frame:
|
|
@@ -58,7 +58,7 @@ class Plugin(Layer):
|
|
|
58
58
|
localunit=u)
|
|
59
59
|
self.message("\b done")
|
|
60
60
|
|
|
61
|
-
def newifft(self
|
|
61
|
+
def newifft(self):
|
|
62
62
|
"""New inverse FFT of output to graph."""
|
|
63
63
|
frame = self.output.frame
|
|
64
64
|
if frame:
|
mwx/wxwit.py
CHANGED
|
@@ -157,19 +157,10 @@ class Inspector(it.InspectionTree, CtrlInterface):
|
|
|
157
157
|
self.SetFocus()
|
|
158
158
|
obj = self.target
|
|
159
159
|
Menu.Popup(self, [
|
|
160
|
-
(1, "&Dive into the shell", Icon('core'),
|
|
161
|
-
lambda v: dive(obj),
|
|
162
|
-
lambda v: v.Enable(obj is not None)),
|
|
163
|
-
|
|
164
|
-
(2, "&Watch the event", Icon('ghost'),
|
|
165
|
-
lambda v: watch(obj),
|
|
166
|
-
lambda v: v.Enable(obj is not None)),
|
|
167
|
-
|
|
168
|
-
(),
|
|
169
160
|
(8, "&Filling View", miniIcon('ShowFilling'),
|
|
170
161
|
lambda v: filling(obj),
|
|
171
162
|
lambda v: v.Enable(obj is not None)),
|
|
172
|
-
|
|
163
|
+
|
|
173
164
|
(10, "&Inspection Tool", Icon('inspect'),
|
|
174
165
|
lambda v: watchit(obj),
|
|
175
166
|
lambda v: v.Enable(obj is not None)),
|
|
@@ -180,6 +171,14 @@ class Inspector(it.InspectionTree, CtrlInterface):
|
|
|
180
171
|
|
|
181
172
|
(12, "Refresh\tf5", miniIcon('Refresh'),
|
|
182
173
|
lambda v: self.BuildTree(obj)),
|
|
174
|
+
(),
|
|
175
|
+
(2, "&Watch event", Icon('tv'),
|
|
176
|
+
lambda v: watch(obj),
|
|
177
|
+
lambda v: v.Enable(obj is not None)),
|
|
178
|
+
|
|
179
|
+
(1, "&Dive into {!r}".format(obj), Icon('core'),
|
|
180
|
+
lambda v: dive(obj),
|
|
181
|
+
lambda v: v.Enable(obj is not None)),
|
|
183
182
|
])
|
|
184
183
|
|
|
185
184
|
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
mwx/__init__.py,sha256=
|
|
1
|
+
mwx/__init__.py,sha256=SNSLQc0IGuE6LDT5mzaAxXRgcH_k6cRVS3gXzFQqdZM,814
|
|
2
2
|
mwx/bookshelf.py,sha256=DAhMQk3_J4rdE50adBMFu5wNz3WdMh_zzJ37O9ncceo,5103
|
|
3
3
|
mwx/controls.py,sha256=JBMUbDgHFf4Dx0PofCdnoQExBnGjxiAeSGkdS_0Qgo4,47673
|
|
4
|
-
mwx/framework.py,sha256=
|
|
4
|
+
mwx/framework.py,sha256=UMmTHqx85SQPI84alNKx0AMQx9amB4qxj6sypFtIXMs,75655
|
|
5
5
|
mwx/graphman.py,sha256=PacQF1Of6oaqw26uFoXaAK9IrwggGRwoJe9uCP5JZ28,70373
|
|
6
|
-
mwx/images.py,sha256=
|
|
6
|
+
mwx/images.py,sha256=gyvqW4TLWdJMKmsaWiPiV_PuHJM1GbHgeELERLwGzg8,45291
|
|
7
7
|
mwx/matplot2.py,sha256=nA7RLW1tf5kQfrenFnrAF900DbrpOUldc3SGaJgJKi0,32794
|
|
8
8
|
mwx/matplot2g.py,sha256=faKpuBdp4H_g-HKfRdxV17AwHtXcfRi2F0myE3cjM04,65393
|
|
9
9
|
mwx/matplot2lg.py,sha256=gI_L_GofQrg5TIgZFMgYu8-7IRoe6VCRG3Ub35ChSpQ,27177
|
|
10
10
|
mwx/mgplt.py,sha256=ITzxA97yDwr_35BUk5OqnyskSuKVDbpf2AQCKY1jHTI,5671
|
|
11
|
-
mwx/nutshell.py,sha256=
|
|
11
|
+
mwx/nutshell.py,sha256=ENxoeqSfVaogh2dz43fk3MQaCePKyoz1YzucwiCojxI,137070
|
|
12
12
|
mwx/utilus.py,sha256=Uwj6vbNUUztwOswPG75xtsT2y_PZqh3QiJraxmA9iT0,37401
|
|
13
13
|
mwx/wxmon.py,sha256=6es-jVz9Ht7vZnG7VBJcaNYLHY0PnZtij60SXcZRTeY,12727
|
|
14
14
|
mwx/wxpdb.py,sha256=lLowkkAgMhPFHAfklD7wZHq0qbSMjRxnBFtSajmVgME,19133
|
|
15
15
|
mwx/wxwil.py,sha256=zP1-5Fpi1wpDQU977229zIH6QRuSkkyfuAlNKWjGoGg,5588
|
|
16
|
-
mwx/wxwit.py,sha256=
|
|
16
|
+
mwx/wxwit.py,sha256=yU6XeCCWRBP7CLmpphjT072PfXAL30DNaxoChDX2p0I,7322
|
|
17
17
|
mwx/plugins/__init__.py,sha256=jnJ-Sl9XJ_7BFDslD_r7dsbxsOT57q_IaEriV53XIGY,41
|
|
18
18
|
mwx/plugins/ffmpeg_view.py,sha256=vUYNybIJsF1JGkDzjBgDyBQvDh8e1oKHlEMY5Fwc8L4,9399
|
|
19
|
-
mwx/plugins/fft_view.py,sha256=
|
|
19
|
+
mwx/plugins/fft_view.py,sha256=HcnBr-y_yFdSfASPRzMLANta4SwSDShd65QWnCU3XhM,2665
|
|
20
20
|
mwx/plugins/frame_listview.py,sha256=fY27r_8ttf2hi-T0CPgY_LGbH9xKkQmSIqgaALMyVCM,10112
|
|
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=KaHooM32hrGGgqw75Cbt8lAvACwC6RXadob9LGgNnEc,16806
|
|
24
|
-
mwxlib-0.95.
|
|
25
|
-
mwxlib-0.95.
|
|
26
|
-
mwxlib-0.95.
|
|
27
|
-
mwxlib-0.95.
|
|
28
|
-
mwxlib-0.95.
|
|
24
|
+
mwxlib-0.95.4.dist-info/LICENSE,sha256=PGtRKCaTkmUDlBQwpptJAxJtdqxIUtAmdBsaT9nUVkA,1091
|
|
25
|
+
mwxlib-0.95.4.dist-info/METADATA,sha256=jkWKBPw5LwejFe36g5StdBMWOdRLw3DQ7-wY3ZMlATA,1925
|
|
26
|
+
mwxlib-0.95.4.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
27
|
+
mwxlib-0.95.4.dist-info/top_level.txt,sha256=SI1Mh118AstnUFGPNq5aMNKiAnVNmZk1S9Ij-OwAEpY,4
|
|
28
|
+
mwxlib-0.95.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|