mwxlib 0.94.4__py3-none-any.whl → 0.94.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.
- mwx/bookshelf.py +15 -22
- mwx/controls.py +1 -1
- mwx/framework.py +31 -34
- mwx/graphman.py +8 -6
- mwx/nutshell.py +3 -3
- mwx/utilus.py +2 -0
- mwx/wxwit.py +0 -8
- {mwxlib-0.94.4.dist-info → mwxlib-0.94.6.dist-info}/METADATA +1 -1
- {mwxlib-0.94.4.dist-info → mwxlib-0.94.6.dist-info}/RECORD +12 -12
- {mwxlib-0.94.4.dist-info → mwxlib-0.94.6.dist-info}/LICENSE +0 -0
- {mwxlib-0.94.4.dist-info → mwxlib-0.94.6.dist-info}/WHEEL +0 -0
- {mwxlib-0.94.4.dist-info → mwxlib-0.94.6.dist-info}/top_level.txt +0 -0
mwx/bookshelf.py
CHANGED
|
@@ -27,7 +27,7 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface):
|
|
|
27
27
|
'buffer_deleted' : [ None, self.on_buffer_deleted ],
|
|
28
28
|
'buffer_activated' : [ None, self.on_buffer_selected ],
|
|
29
29
|
'buffer_inactivated' : [ None, ],
|
|
30
|
-
'buffer_caption_reset' : [ None, self.
|
|
30
|
+
'buffer_caption_reset' : [ None, self.on_buffer_filename ],
|
|
31
31
|
'buffer_filename_reset' : [ None, self.on_buffer_filename ],
|
|
32
32
|
},
|
|
33
33
|
}
|
|
@@ -44,7 +44,7 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface):
|
|
|
44
44
|
|
|
45
45
|
@self.handler.bind('f5 pressed')
|
|
46
46
|
def refresh(v):
|
|
47
|
-
self.
|
|
47
|
+
self.build_tree(clear=0)
|
|
48
48
|
if self.target:
|
|
49
49
|
self.target.current_editor.SetFocus()
|
|
50
50
|
wx.CallAfter(self.SetFocus)
|
|
@@ -73,7 +73,7 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface):
|
|
|
73
73
|
self.target = target
|
|
74
74
|
for editor in self.target.all_editors:
|
|
75
75
|
editor.handler.append(self.context)
|
|
76
|
-
self.
|
|
76
|
+
self.build_tree()
|
|
77
77
|
|
|
78
78
|
def detach(self):
|
|
79
79
|
if not self.target:
|
|
@@ -81,26 +81,23 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface):
|
|
|
81
81
|
for editor in self.target.all_editors:
|
|
82
82
|
editor.handler.remove(self.context)
|
|
83
83
|
self.target = None
|
|
84
|
-
self.
|
|
84
|
+
self.build_tree()
|
|
85
85
|
|
|
86
86
|
## --------------------------------
|
|
87
87
|
## TreeList/Ctrl wrapper interface
|
|
88
88
|
## --------------------------------
|
|
89
89
|
|
|
90
|
-
def
|
|
90
|
+
def build_tree(self, clear=True):
|
|
91
91
|
"""Build tree control.
|
|
92
92
|
All items will be cleared if specified.
|
|
93
93
|
"""
|
|
94
|
-
|
|
95
|
-
self.
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
self._set_item(self.RootItem, editor.Name, editor.all_buffers)
|
|
102
|
-
finally:
|
|
103
|
-
self.Thaw()
|
|
94
|
+
if clear:
|
|
95
|
+
self.DeleteAllItems()
|
|
96
|
+
self.AddRoot(self.Name)
|
|
97
|
+
if self.target:
|
|
98
|
+
for editor in self.target.all_editors:
|
|
99
|
+
self._set_item(self.RootItem, editor.Name, editor.all_buffers)
|
|
100
|
+
self.Refresh()
|
|
104
101
|
|
|
105
102
|
def _get_item(self, root, key):
|
|
106
103
|
"""Returns the first item [root/key] found.
|
|
@@ -129,11 +126,11 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface):
|
|
|
129
126
|
## Actions for bookshelf interfaces
|
|
130
127
|
## --------------------------------
|
|
131
128
|
|
|
132
|
-
@postcall
|
|
129
|
+
## @postcall
|
|
133
130
|
def on_buffer_new(self, buf):
|
|
134
|
-
self.
|
|
131
|
+
self.build_tree(clear=0)
|
|
135
132
|
|
|
136
|
-
@postcall
|
|
133
|
+
## @postcall
|
|
137
134
|
def on_buffer_deleted(self, buf):
|
|
138
135
|
self.Delete(buf.__itemId)
|
|
139
136
|
|
|
@@ -141,10 +138,6 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface):
|
|
|
141
138
|
def on_buffer_selected(self, buf):
|
|
142
139
|
self.SelectItem(buf.__itemId)
|
|
143
140
|
|
|
144
|
-
@postcall
|
|
145
|
-
def on_buffer_caption(self, buf):
|
|
146
|
-
self.SetItemText(buf.__itemId, buf.caption_prefix + buf.name)
|
|
147
|
-
|
|
148
141
|
@postcall
|
|
149
142
|
def on_buffer_filename(self, buf):
|
|
150
143
|
self.SetItemText(buf.__itemId, buf.caption_prefix + buf.name)
|
mwx/controls.py
CHANGED
|
@@ -741,7 +741,7 @@ class ControlPanel(scrolled.ScrolledPanel):
|
|
|
741
741
|
except AttributeError:
|
|
742
742
|
p.value = v
|
|
743
743
|
except Exception as e: # failed to eval
|
|
744
|
-
print("- Failed to reset {!r}:
|
|
744
|
+
print(f"- Failed to reset {p!r}:", e)
|
|
745
745
|
pass
|
|
746
746
|
|
|
747
747
|
reset_params = set_params #: for backward compatibility
|
mwx/framework.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#! python3
|
|
2
2
|
"""mwxlib framework.
|
|
3
3
|
"""
|
|
4
|
-
__version__ = "0.94.
|
|
4
|
+
__version__ = "0.94.6"
|
|
5
5
|
__author__ = "Kazuya O'moto <komoto@jeol.co.jp>"
|
|
6
6
|
|
|
7
7
|
from functools import wraps, partial
|
|
@@ -13,7 +13,6 @@ import builtins
|
|
|
13
13
|
import datetime
|
|
14
14
|
import textwrap
|
|
15
15
|
import time
|
|
16
|
-
import sys
|
|
17
16
|
import os
|
|
18
17
|
import re
|
|
19
18
|
import wx
|
|
@@ -47,8 +46,6 @@ def deb(target=None, loop=True, locals=None, **kwargs):
|
|
|
47
46
|
Note:
|
|
48
47
|
This will execute the startup script $(PYTHONSTARTUP).
|
|
49
48
|
"""
|
|
50
|
-
import wx
|
|
51
|
-
|
|
52
49
|
quote_unqoute = """
|
|
53
50
|
Anything one man can imagine, other man can make real.
|
|
54
51
|
--- Jules Verne (1828--1905)
|
|
@@ -297,12 +294,14 @@ class KeyCtrlInterfaceMixin:
|
|
|
297
294
|
key += ' pressed'
|
|
298
295
|
|
|
299
296
|
if map not in self.handler:
|
|
300
|
-
warnings.warn(f"New map to define_key {keymap!r} in {self}.",
|
|
297
|
+
warnings.warn(f"New map to define_key {keymap!r} in {self}.",
|
|
298
|
+
stacklevel=2)
|
|
301
299
|
self.make_keymap(map) # make new keymap
|
|
302
300
|
|
|
303
301
|
transaction = self.handler[map].get(key, [state])
|
|
304
302
|
if len(transaction) > 1:
|
|
305
|
-
warnings.warn(f"Duplicate define_key {keymap!r} in {self}.",
|
|
303
|
+
warnings.warn(f"Duplicate define_key {keymap!r} in {self}.",
|
|
304
|
+
stacklevel=2)
|
|
306
305
|
|
|
307
306
|
if action is None:
|
|
308
307
|
self.handler[map].pop(key, None) # cf. undefine_key
|
|
@@ -328,7 +327,8 @@ class CtrlInterface(KeyCtrlInterfaceMixin):
|
|
|
328
327
|
|
|
329
328
|
def __init__(self):
|
|
330
329
|
if hasattr(self, 'handler'):
|
|
331
|
-
warnings.warn(f"Duplicate iniheritance of CtrlInterface by {self}.",
|
|
330
|
+
warnings.warn(f"Duplicate iniheritance of CtrlInterface by {self}.",
|
|
331
|
+
stacklevel=2)
|
|
332
332
|
return
|
|
333
333
|
self.__key = ''
|
|
334
334
|
self.__button = ''
|
|
@@ -633,7 +633,8 @@ class MenuBar(wx.MenuBar, TreeList):
|
|
|
633
633
|
Call when the menulist is changed.
|
|
634
634
|
"""
|
|
635
635
|
if not self.Parent:
|
|
636
|
-
warnings.warn(f"No parents bound to {self}.",
|
|
636
|
+
warnings.warn(f"No parents bound to {self}.",
|
|
637
|
+
stacklevel=2)
|
|
637
638
|
return
|
|
638
639
|
|
|
639
640
|
menu = self.getmenu(key)
|
|
@@ -660,7 +661,8 @@ class MenuBar(wx.MenuBar, TreeList):
|
|
|
660
661
|
Call when the menulist is changed.
|
|
661
662
|
"""
|
|
662
663
|
if not self.Parent:
|
|
663
|
-
warnings.warn(f"No parents bound to {self}.",
|
|
664
|
+
warnings.warn(f"No parents bound to {self}.",
|
|
665
|
+
stacklevel=2)
|
|
664
666
|
return
|
|
665
667
|
|
|
666
668
|
for j in range(self.GetMenuCount()): # remove and del all top-level menu
|
|
@@ -1004,7 +1006,7 @@ class AuiNotebook(aui.AuiNotebook):
|
|
|
1004
1006
|
pane.name = f"pane{j+1}"
|
|
1005
1007
|
self._mgr.LoadPerspective(frames)
|
|
1006
1008
|
self._mgr.Update()
|
|
1007
|
-
except Exception:
|
|
1009
|
+
except Exception as e:
|
|
1008
1010
|
print("- Failed to load perspective:", e)
|
|
1009
1011
|
finally:
|
|
1010
1012
|
self.Parent.Thaw()
|
|
@@ -1176,15 +1178,18 @@ class ShellFrame(MiniFrame):
|
|
|
1176
1178
|
self._mgr.SetDockSizeConstraint(0.5, 0.5) # (w, h)/N
|
|
1177
1179
|
|
|
1178
1180
|
self._mgr.AddPane(self.console,
|
|
1179
|
-
aui.AuiPaneInfo().Name("console").CenterPane()
|
|
1181
|
+
aui.AuiPaneInfo().Name("console").CenterPane()
|
|
1182
|
+
.MaximizeButton().Show(1))
|
|
1180
1183
|
|
|
1181
1184
|
self._mgr.AddPane(self.ghost,
|
|
1182
1185
|
aui.AuiPaneInfo().Name("ghost")
|
|
1183
|
-
.Caption("Ghost in the Shell").Right()
|
|
1186
|
+
.Caption("Ghost in the Shell").Right()
|
|
1187
|
+
.MaximizeButton().Show(0))
|
|
1184
1188
|
|
|
1185
1189
|
self._mgr.AddPane(self.watcher,
|
|
1186
1190
|
aui.AuiPaneInfo().Name("watcher")
|
|
1187
|
-
.Caption("Watchdog in the Shell").Right().Position(1)
|
|
1191
|
+
.Caption("Watchdog in the Shell").Right().Position(1)
|
|
1192
|
+
.MaximizeButton().Show(0))
|
|
1188
1193
|
|
|
1189
1194
|
self._mgr.Update()
|
|
1190
1195
|
|
|
@@ -1264,35 +1269,30 @@ class ShellFrame(MiniFrame):
|
|
|
1264
1269
|
},
|
|
1265
1270
|
})
|
|
1266
1271
|
|
|
1267
|
-
## py-mode
|
|
1268
1272
|
self.Scratch.set_attributes(Style=Nautilus.STYLE)
|
|
1273
|
+
self.Log.set_attributes(ReadOnly=True)
|
|
1274
|
+
self.Help.set_attributes(ReadOnly=True)
|
|
1269
1275
|
|
|
1270
1276
|
self.set_hookable(self.Scratch)
|
|
1277
|
+
self.set_hookable(self.Log)
|
|
1271
1278
|
|
|
1272
1279
|
@self.Scratch.define_key('C-j')
|
|
1273
|
-
@postcall
|
|
1274
1280
|
def eval_line():
|
|
1275
1281
|
shell = self.current_shell
|
|
1276
1282
|
self.Scratch.buffer.py_eval_line(shell.globals, shell.locals)
|
|
1277
1283
|
|
|
1278
1284
|
@self.Scratch.define_key('C-S-j')
|
|
1279
|
-
@postcall
|
|
1280
1285
|
def eval_buffer():
|
|
1281
1286
|
shell = self.current_shell
|
|
1282
1287
|
self.Scratch.buffer.py_exec_region(shell.globals, shell.locals)
|
|
1283
1288
|
|
|
1284
|
-
##
|
|
1285
|
-
self.
|
|
1289
|
+
## Session
|
|
1290
|
+
self.SESSION_FILE = get_rootpath(".debrc")
|
|
1291
|
+
self.SCRATCH_FILE = get_rootpath("scratch.py")
|
|
1292
|
+
self.LOGGING_FILE = get_rootpath("deb-logging.log")
|
|
1286
1293
|
|
|
1287
|
-
self.
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
self.load_session(
|
|
1291
|
-
os.path.abspath(debrc) if debrc else self.SESSION_FILE)
|
|
1292
|
-
|
|
1293
|
-
SESSION_FILE = get_rootpath(".debrc")
|
|
1294
|
-
SCRATCH_FILE = get_rootpath("scratch.py")
|
|
1295
|
-
LOGGING_FILE = get_rootpath("deb-logging.log")
|
|
1294
|
+
wx.CallAfter(self.load_session,
|
|
1295
|
+
os.path.abspath(debrc) if debrc else self.SESSION_FILE)
|
|
1296
1296
|
|
|
1297
1297
|
def load_session(self, filename):
|
|
1298
1298
|
"""Load session from file."""
|
|
@@ -1304,14 +1304,11 @@ class ShellFrame(MiniFrame):
|
|
|
1304
1304
|
except Exception:
|
|
1305
1305
|
pass
|
|
1306
1306
|
|
|
1307
|
-
|
|
1308
|
-
book.delete_all_buffers() # Note: *log* is also flushed.
|
|
1307
|
+
_fload(self.Scratch, self.SCRATCH_FILE) # restore scratch
|
|
1309
1308
|
|
|
1310
1309
|
## Re-open the *log* file.
|
|
1311
1310
|
self.add_log("#! Opened: <{}>\r\n".format(datetime.datetime.now()))
|
|
1312
1311
|
|
|
1313
|
-
_fload(self.Scratch, self.SCRATCH_FILE) # restore scratch
|
|
1314
|
-
|
|
1315
1312
|
fn = os.path.abspath(filename)
|
|
1316
1313
|
try:
|
|
1317
1314
|
with open(fn, encoding='utf-8', newline='') as i:
|
|
@@ -1351,9 +1348,9 @@ class ShellFrame(MiniFrame):
|
|
|
1351
1348
|
"self.ghost.SetSelection({})".format(self.ghost.Selection),
|
|
1352
1349
|
"self.watcher.SetSelection({})".format(self.watcher.Selection),
|
|
1353
1350
|
## Note: Perspectives should be called after all pages have been added.
|
|
1354
|
-
"
|
|
1355
|
-
"
|
|
1356
|
-
"
|
|
1351
|
+
"self._mgr.LoadPerspective({!r})".format(self._mgr.SavePerspective()),
|
|
1352
|
+
"self.ghost.loadPerspective({!r})".format(self.ghost.savePerspective()),
|
|
1353
|
+
"self.watcher.loadPerspective({!r})".format(self.watcher.savePerspective()),
|
|
1357
1354
|
"self._mgr.Update()\n",
|
|
1358
1355
|
)))
|
|
1359
1356
|
|
mwx/graphman.py
CHANGED
|
@@ -413,7 +413,7 @@ class LayerInterface(CtrlInterface):
|
|
|
413
413
|
try:
|
|
414
414
|
if session:
|
|
415
415
|
self.load_session(session)
|
|
416
|
-
except Exception
|
|
416
|
+
except Exception:
|
|
417
417
|
traceback.print_exc()
|
|
418
418
|
print("- Failed to load session of", self)
|
|
419
419
|
|
|
@@ -473,7 +473,7 @@ class LayerInterface(CtrlInterface):
|
|
|
473
473
|
if canvas:
|
|
474
474
|
canvas.draw_idle()
|
|
475
475
|
except Exception as e:
|
|
476
|
-
print("- Failed to draw Arts of {}:
|
|
476
|
+
print(f"- Failed to draw Arts of {self.__module__}:", e)
|
|
477
477
|
del self.Arts
|
|
478
478
|
|
|
479
479
|
|
|
@@ -1055,7 +1055,8 @@ class Frame(mwx.Frame):
|
|
|
1055
1055
|
|
|
1056
1056
|
if issubclass(cls, LayerInterface):
|
|
1057
1057
|
cls.__module__ = module.__name__ # __main__ to module
|
|
1058
|
-
warnings.warn(f"Duplicate iniheritance of LayerInterface by {cls}.",
|
|
1058
|
+
warnings.warn(f"Duplicate iniheritance of LayerInterface by {cls}.",
|
|
1059
|
+
stacklevel=2)
|
|
1059
1060
|
module.Plugin = cls
|
|
1060
1061
|
return cls
|
|
1061
1062
|
|
|
@@ -1099,13 +1100,14 @@ class Frame(mwx.Frame):
|
|
|
1099
1100
|
else:
|
|
1100
1101
|
module = import_module(name)
|
|
1101
1102
|
except Exception as e:
|
|
1102
|
-
print("- Unable to load {!r}:
|
|
1103
|
+
print(f"- Unable to load {root!r}:", e)
|
|
1103
1104
|
return False
|
|
1104
1105
|
|
|
1105
1106
|
## the module must have a class `Plugin`.
|
|
1106
1107
|
if not hasattr(module, 'Plugin'):
|
|
1107
1108
|
if isinstance(root, type):
|
|
1108
|
-
warnings.warn(f"Use dummy plug for debugging {name!r}.",
|
|
1109
|
+
warnings.warn(f"Use dummy plug for debugging {name!r}.",
|
|
1110
|
+
stacklevel=3)
|
|
1109
1111
|
module.__dummy_plug__ = root
|
|
1110
1112
|
self.register(root, module)
|
|
1111
1113
|
else:
|
|
@@ -1154,7 +1156,7 @@ class Frame(mwx.Frame):
|
|
|
1154
1156
|
try:
|
|
1155
1157
|
if session:
|
|
1156
1158
|
plug.load_session(session)
|
|
1157
|
-
except Exception
|
|
1159
|
+
except Exception:
|
|
1158
1160
|
traceback.print_exc()
|
|
1159
1161
|
print("- Failed to load session of", plug)
|
|
1160
1162
|
return None
|
mwx/nutshell.py
CHANGED
|
@@ -1891,10 +1891,10 @@ class EditorBook(AuiNotebook, CtrlInterface):
|
|
|
1891
1891
|
self.Freeze()
|
|
1892
1892
|
buf = Buffer(self, filename, style=wx.BORDER_DEFAULT)
|
|
1893
1893
|
self.set_attributes(buf, **self.defaultBufferStyle)
|
|
1894
|
-
self.handler('buffer_new', buf)
|
|
1895
1894
|
if index is None:
|
|
1896
1895
|
index = self.PageCount
|
|
1897
1896
|
self.InsertPage(index, buf, buf.name)
|
|
1897
|
+
self.handler('buffer_new', buf)
|
|
1898
1898
|
return buf
|
|
1899
1899
|
finally:
|
|
1900
1900
|
self.Thaw()
|
|
@@ -1995,7 +1995,7 @@ class EditorBook(AuiNotebook, CtrlInterface):
|
|
|
1995
1995
|
return True
|
|
1996
1996
|
return False
|
|
1997
1997
|
except Exception as e:
|
|
1998
|
-
self.post_message("Failed to load {!r}:
|
|
1998
|
+
self.post_message(f"Failed to load {filename!r}:", e)
|
|
1999
1999
|
self.delete_buffer(buf)
|
|
2000
2000
|
if org:
|
|
2001
2001
|
self.swap_buffer(org)
|
|
@@ -2031,7 +2031,7 @@ class EditorBook(AuiNotebook, CtrlInterface):
|
|
|
2031
2031
|
return True
|
|
2032
2032
|
return False
|
|
2033
2033
|
except Exception as e:
|
|
2034
|
-
self.post_message("Failed to save {!r}:
|
|
2034
|
+
self.post_message(f"Failed to save {filename!r}:", e)
|
|
2035
2035
|
return False
|
|
2036
2036
|
|
|
2037
2037
|
def load_buffer(self, buf=None):
|
mwx/utilus.py
CHANGED
mwx/wxwit.py
CHANGED
|
@@ -71,14 +71,6 @@ class Inspector(it.InspectionTree, CtrlInterface):
|
|
|
71
71
|
## InspectionTree wrapper interface
|
|
72
72
|
## --------------------------------
|
|
73
73
|
|
|
74
|
-
def BuildTree(self, *args, **kwargs):
|
|
75
|
-
"""(override)"""
|
|
76
|
-
try:
|
|
77
|
-
self.Freeze()
|
|
78
|
-
it.InspectionTree.BuildTree(self, *args, **kwargs)
|
|
79
|
-
finally:
|
|
80
|
-
self.Thaw()
|
|
81
|
-
|
|
82
74
|
def SetObj(self, obj):
|
|
83
75
|
"""Called from tree.toolFrame -> SetObj."""
|
|
84
76
|
if self.target is obj:
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
mwx/__init__.py,sha256=zLsXDgqyC5NsPCjRxjS2huvZ3uDyeOJ1vapotqe2ULM,834
|
|
2
|
-
mwx/bookshelf.py,sha256=
|
|
3
|
-
mwx/controls.py,sha256=
|
|
4
|
-
mwx/framework.py,sha256=
|
|
5
|
-
mwx/graphman.py,sha256=
|
|
2
|
+
mwx/bookshelf.py,sha256=UVVIwHaGO4aEHwZ8x5SKjpL-3MmQ1s6kkyuyRZqKWvU,5070
|
|
3
|
+
mwx/controls.py,sha256=prp1NhZqv1XANhi2PPxW9jtrgwj_02XMOOyyzZ48klM,47185
|
|
4
|
+
mwx/framework.py,sha256=Wxpr9WDshKkKG4x91POCHgU2TZoFhW9X4U8O6Lbxnck,75581
|
|
5
|
+
mwx/graphman.py,sha256=9MG0BzQh5lDDadyPPXps2M0hf6mPN3G0MQbBGdplY_I,70027
|
|
6
6
|
mwx/images.py,sha256=mrnUYH12I3XLVSZcEXlpVltX0XMxufbl2yRvDIQJZqc,49957
|
|
7
7
|
mwx/matplot2.py,sha256=qaF_gvLoLn-TimLbRR59KUavNr1ZpZQdSMqjzJk47rk,32682
|
|
8
8
|
mwx/matplot2g.py,sha256=mDaD367wjq6xsyIDX9ot8jLwYYGayoavWMhqsQVBHac,65442
|
|
9
9
|
mwx/matplot2lg.py,sha256=tg8u7w4DxiJdPN-E197NOmbQpc_1gZkgDHYv_xUhbFA,27224
|
|
10
10
|
mwx/mgplt.py,sha256=ITzxA97yDwr_35BUk5OqnyskSuKVDbpf2AQCKY1jHTI,5671
|
|
11
|
-
mwx/nutshell.py,sha256=
|
|
12
|
-
mwx/utilus.py,sha256=
|
|
11
|
+
mwx/nutshell.py,sha256=qz4qnEuGm5vEUtltux6caBLAoth92qc1zAyEmL6nbCg,135625
|
|
12
|
+
mwx/utilus.py,sha256=FTJhVFmx6TAE5rvZ_nfxZgyyaW4zMpXEz74v72X6m7Y,37399
|
|
13
13
|
mwx/wxmon.py,sha256=Qk86VbuuW2rR46pqEYLur13G_aloWz5SVv6sib30YY0,12717
|
|
14
14
|
mwx/wxpdb.py,sha256=2z3ZD9Oo1H-ONBHlaprkB9hrTmAI7o03sqO46ppEFE4,19129
|
|
15
15
|
mwx/wxwil.py,sha256=JK1du4i1RVMbDLqN8jLRDSu_JhKEp4mhHVMElzo4yoE,5578
|
|
16
|
-
mwx/wxwit.py,sha256=
|
|
16
|
+
mwx/wxwit.py,sha256=MQxXR6VqqT25K6dTQ1U_42SMq1yJT6y54xrMq-OMOaQ,7334
|
|
17
17
|
mwx/plugins/__init__.py,sha256=jnJ-Sl9XJ_7BFDslD_r7dsbxsOT57q_IaEriV53XIGY,41
|
|
18
18
|
mwx/plugins/ffmpeg_view.py,sha256=vUYNybIJsF1JGkDzjBgDyBQvDh8e1oKHlEMY5Fwc8L4,9399
|
|
19
19
|
mwx/plugins/fft_view.py,sha256=evj2kCe6N10JQczW8IajgLVrUWOihQaHQ2xiBzAsAl4,2675
|
|
@@ -21,8 +21,8 @@ mwx/plugins/frame_listview.py,sha256=T-2xSv_D2bk9fJ64aiSEe1rJRTeqaIpLVAYEUXW5vz8
|
|
|
21
21
|
mwx/plugins/line_profile.py,sha256=WJB5z7F53yg4dII2R36IFZvtkSOGWT669b1HmAAXSnQ,816
|
|
22
22
|
mwx/py/__init__.py,sha256=xykgfOytOwNuvXsfkLoumFZSTN-iBsHOjczYXngjmUE,12
|
|
23
23
|
mwx/py/filling.py,sha256=KaHooM32hrGGgqw75Cbt8lAvACwC6RXadob9LGgNnEc,16806
|
|
24
|
-
mwxlib-0.94.
|
|
25
|
-
mwxlib-0.94.
|
|
26
|
-
mwxlib-0.94.
|
|
27
|
-
mwxlib-0.94.
|
|
28
|
-
mwxlib-0.94.
|
|
24
|
+
mwxlib-0.94.6.dist-info/LICENSE,sha256=PGtRKCaTkmUDlBQwpptJAxJtdqxIUtAmdBsaT9nUVkA,1091
|
|
25
|
+
mwxlib-0.94.6.dist-info/METADATA,sha256=jTXP1YrO9TOtK_CcgwIuZpoMNSKJ8H-VGmRfiqYoJgY,1925
|
|
26
|
+
mwxlib-0.94.6.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
27
|
+
mwxlib-0.94.6.dist-info/top_level.txt,sha256=SI1Mh118AstnUFGPNq5aMNKiAnVNmZk1S9Ij-OwAEpY,4
|
|
28
|
+
mwxlib-0.94.6.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|