mwxlib 0.94.2__py3-none-any.whl → 0.94.5__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 +54 -95
- mwx/framework.py +19 -17
- mwx/graphman.py +2 -2
- mwx/matplot2g.py +0 -2
- mwx/nutshell.py +4 -8
- mwx/utilus.py +2 -0
- mwx/wxwit.py +0 -8
- {mwxlib-0.94.2.dist-info → mwxlib-0.94.5.dist-info}/METADATA +1 -1
- {mwxlib-0.94.2.dist-info → mwxlib-0.94.5.dist-info}/RECORD +12 -12
- {mwxlib-0.94.2.dist-info → mwxlib-0.94.5.dist-info}/LICENSE +0 -0
- {mwxlib-0.94.2.dist-info → mwxlib-0.94.5.dist-info}/WHEEL +0 -0
- {mwxlib-0.94.2.dist-info → mwxlib-0.94.5.dist-info}/top_level.txt +0 -0
mwx/bookshelf.py
CHANGED
|
@@ -2,29 +2,17 @@
|
|
|
2
2
|
import re
|
|
3
3
|
import wx
|
|
4
4
|
|
|
5
|
-
from .
|
|
6
|
-
from .nutshell import EditorBook
|
|
7
|
-
from .framework import CtrlInterface
|
|
5
|
+
from .framework import CtrlInterface, postcall
|
|
8
6
|
|
|
9
7
|
|
|
10
|
-
class
|
|
11
|
-
"""
|
|
12
|
-
"""
|
|
13
|
-
def __init__(self, tree, buffer):
|
|
14
|
-
self.tree = tree
|
|
15
|
-
self.buffer = buffer
|
|
16
|
-
self._itemId = None #: reference <TreeItemId>
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface, TreeList):
|
|
20
|
-
"""TreeList control
|
|
8
|
+
class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface):
|
|
9
|
+
"""TreeList/Ctrl
|
|
21
10
|
|
|
22
11
|
Construct treectrl in the order of tree:list.
|
|
23
12
|
"""
|
|
24
13
|
def __init__(self, parent, *args, **kwargs):
|
|
25
14
|
wx.TreeCtrl.__init__(self, parent, *args, **kwargs)
|
|
26
15
|
CtrlInterface.__init__(self)
|
|
27
|
-
TreeList.__init__(self)
|
|
28
16
|
|
|
29
17
|
self.Font = wx.Font(9, wx.DEFAULT, wx.NORMAL, wx.NORMAL)
|
|
30
18
|
|
|
@@ -39,7 +27,7 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface, TreeList):
|
|
|
39
27
|
'buffer_deleted' : [ None, self.on_buffer_deleted ],
|
|
40
28
|
'buffer_activated' : [ None, self.on_buffer_selected ],
|
|
41
29
|
'buffer_inactivated' : [ None, ],
|
|
42
|
-
'buffer_caption_reset' : [ None, self.
|
|
30
|
+
'buffer_caption_reset' : [ None, self.on_buffer_filename ],
|
|
43
31
|
'buffer_filename_reset' : [ None, self.on_buffer_filename ],
|
|
44
32
|
},
|
|
45
33
|
}
|
|
@@ -52,18 +40,20 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface, TreeList):
|
|
|
52
40
|
def enter(v):
|
|
53
41
|
data = self.GetItemData(self.Selection)
|
|
54
42
|
if data:
|
|
55
|
-
data.
|
|
43
|
+
data.SetFocus()
|
|
56
44
|
|
|
57
45
|
@self.handler.bind('f5 pressed')
|
|
58
46
|
def refresh(v):
|
|
59
|
-
self.
|
|
47
|
+
self.build_tree(clear=0)
|
|
48
|
+
if self.target:
|
|
49
|
+
self.target.current_editor.SetFocus()
|
|
50
|
+
wx.CallAfter(self.SetFocus)
|
|
60
51
|
|
|
61
52
|
@self.handler.bind('delete pressed')
|
|
62
53
|
def delete(v):
|
|
63
54
|
data = self.GetItemData(self.Selection)
|
|
64
55
|
if data:
|
|
65
|
-
|
|
66
|
-
buf.parent.kill_buffer(buf) # -> focus moves
|
|
56
|
+
data.parent.kill_buffer(data) # -> focus moves
|
|
67
57
|
wx.CallAfter(self.SetFocus)
|
|
68
58
|
|
|
69
59
|
@self.handler.bind('*button* pressed')
|
|
@@ -75,29 +65,39 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface, TreeList):
|
|
|
75
65
|
|
|
76
66
|
def OnDestroy(self, evt):
|
|
77
67
|
if evt.EventObject is self:
|
|
78
|
-
self.
|
|
68
|
+
self.detach()
|
|
79
69
|
evt.Skip()
|
|
80
70
|
|
|
71
|
+
def attach(self, target):
|
|
72
|
+
self.detach()
|
|
73
|
+
self.target = target
|
|
74
|
+
for editor in self.target.all_editors:
|
|
75
|
+
editor.handler.append(self.context)
|
|
76
|
+
self.build_tree()
|
|
77
|
+
|
|
78
|
+
def detach(self):
|
|
79
|
+
if not self.target:
|
|
80
|
+
return
|
|
81
|
+
for editor in self.target.all_editors:
|
|
82
|
+
editor.handler.remove(self.context)
|
|
83
|
+
self.target = None
|
|
84
|
+
self.build_tree()
|
|
85
|
+
|
|
81
86
|
## --------------------------------
|
|
82
87
|
## TreeList/Ctrl wrapper interface
|
|
83
88
|
## --------------------------------
|
|
84
89
|
|
|
85
|
-
def
|
|
90
|
+
def build_tree(self, clear=True):
|
|
86
91
|
"""Build tree control.
|
|
87
|
-
All items will be
|
|
92
|
+
All items will be cleared if specified.
|
|
88
93
|
"""
|
|
89
|
-
|
|
90
|
-
self.
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
self.
|
|
95
|
-
|
|
96
|
-
self._set_item(self.RootItem, *branch)
|
|
97
|
-
finally:
|
|
98
|
-
if wnd:
|
|
99
|
-
wnd.SetFocus() # restore focus
|
|
100
|
-
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()
|
|
101
101
|
|
|
102
102
|
def _get_item(self, root, key):
|
|
103
103
|
"""Returns the first item [root/key] found.
|
|
@@ -110,83 +110,42 @@ class EditorTreeCtrl(wx.TreeCtrl, CtrlInterface, TreeList):
|
|
|
110
110
|
return item
|
|
111
111
|
item, cookie = self.GetNextChild(root, cookie)
|
|
112
112
|
|
|
113
|
-
def _set_item(self, root, key,
|
|
114
|
-
"""Set the item [root/key] with
|
|
113
|
+
def _set_item(self, root, key, data):
|
|
114
|
+
"""Set the item [root/key] with data recursively.
|
|
115
115
|
"""
|
|
116
116
|
item = self._get_item(root, key) or self.AppendItem(root, key)
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
data._itemId = item
|
|
125
|
-
self.SetItemData(item, data)
|
|
126
|
-
buf = data.buffer
|
|
127
|
-
self.SetItemText(item, buf.caption_prefix + buf.name)
|
|
128
|
-
except AttributeError:
|
|
129
|
-
pass
|
|
130
|
-
for branch in branches:
|
|
131
|
-
self._set_item(item, *branch)
|
|
117
|
+
if isinstance(data, list):
|
|
118
|
+
for buf in data:
|
|
119
|
+
self._set_item(item, buf.name, buf)
|
|
120
|
+
else:
|
|
121
|
+
data.__itemId = item
|
|
122
|
+
self.SetItemData(item, data)
|
|
123
|
+
self.SetItemText(item, data.caption_prefix + data.name)
|
|
132
124
|
|
|
133
125
|
## --------------------------------
|
|
134
126
|
## Actions for bookshelf interfaces
|
|
135
127
|
## --------------------------------
|
|
136
128
|
|
|
137
|
-
|
|
138
|
-
"""Reset a branch for EditorBook/Buffer."""
|
|
139
|
-
self[editor.Name] = [
|
|
140
|
-
[buf.name, ItemData(self, buf)] for buf in editor.all_buffers
|
|
141
|
-
]
|
|
142
|
-
|
|
143
|
-
def watch(self, target):
|
|
144
|
-
self.unwatch()
|
|
145
|
-
self.target = target
|
|
146
|
-
if self.target:
|
|
147
|
-
for editor in self.target.get_pages(EditorBook):
|
|
148
|
-
editor.handler.append(self.context)
|
|
149
|
-
self.reset_tree(editor)
|
|
150
|
-
self.reset()
|
|
151
|
-
|
|
152
|
-
def unwatch(self):
|
|
153
|
-
if self.target:
|
|
154
|
-
for editor in self.target.get_pages(EditorBook):
|
|
155
|
-
editor.handler.remove(self.context)
|
|
156
|
-
self[:] = [] # clear tree
|
|
157
|
-
self.reset()
|
|
158
|
-
self.target = None
|
|
159
|
-
|
|
129
|
+
## @postcall
|
|
160
130
|
def on_buffer_new(self, buf):
|
|
161
|
-
self
|
|
162
|
-
self.reset(clear=0)
|
|
131
|
+
self.build_tree(clear=0)
|
|
163
132
|
|
|
133
|
+
## @postcall
|
|
164
134
|
def on_buffer_deleted(self, buf):
|
|
165
|
-
|
|
166
|
-
self.reset()
|
|
135
|
+
self.Delete(buf.__itemId)
|
|
167
136
|
|
|
137
|
+
@postcall
|
|
168
138
|
def on_buffer_selected(self, buf):
|
|
169
|
-
|
|
170
|
-
self.SelectItem(data._itemId)
|
|
171
|
-
|
|
172
|
-
def on_buffer_caption(self, buf):
|
|
173
|
-
data = self[f"{buf.parent.Name}/{buf.name}"]
|
|
174
|
-
self.SetItemText(data._itemId, buf.caption_prefix + buf.name)
|
|
139
|
+
self.SelectItem(buf.__itemId)
|
|
175
140
|
|
|
141
|
+
@postcall
|
|
176
142
|
def on_buffer_filename(self, buf):
|
|
177
|
-
self.
|
|
178
|
-
self.reset()
|
|
143
|
+
self.SetItemText(buf.__itemId, buf.caption_prefix + buf.name)
|
|
179
144
|
|
|
180
145
|
def OnSelChanged(self, evt):
|
|
181
146
|
if self and self.HasFocus():
|
|
182
147
|
data = self.GetItemData(evt.Item)
|
|
183
|
-
if data
|
|
184
|
-
data.
|
|
148
|
+
if data:
|
|
149
|
+
data.SetFocus()
|
|
185
150
|
self.SetFocus()
|
|
186
151
|
evt.Skip()
|
|
187
|
-
|
|
188
|
-
## def OnItemTooltip(self, evt):
|
|
189
|
-
## data = self.GetItemData(evt.Item)
|
|
190
|
-
## if data and data.buffer:
|
|
191
|
-
## evt.SetToolTip(data.buffer.filename)
|
|
192
|
-
## evt.Skip()
|
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.5"
|
|
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)
|
|
@@ -1004,7 +1001,7 @@ class AuiNotebook(aui.AuiNotebook):
|
|
|
1004
1001
|
pane.name = f"pane{j+1}"
|
|
1005
1002
|
self._mgr.LoadPerspective(frames)
|
|
1006
1003
|
self._mgr.Update()
|
|
1007
|
-
except Exception:
|
|
1004
|
+
except Exception as e:
|
|
1008
1005
|
print("- Failed to load perspective:", e)
|
|
1009
1006
|
finally:
|
|
1010
1007
|
self.Parent.Thaw()
|
|
@@ -1016,7 +1013,7 @@ class FileDropLoader(wx.DropTarget):
|
|
|
1016
1013
|
def __init__(self, target):
|
|
1017
1014
|
wx.DropTarget.__init__(self)
|
|
1018
1015
|
|
|
1019
|
-
self.
|
|
1016
|
+
self.editor = target
|
|
1020
1017
|
self.textdo = wx.TextDataObject()
|
|
1021
1018
|
self.filedo = wx.FileDataObject()
|
|
1022
1019
|
self.DataObject = wx.DataObjectComposite()
|
|
@@ -1024,7 +1021,7 @@ class FileDropLoader(wx.DropTarget):
|
|
|
1024
1021
|
self.DataObject.Add(self.filedo, True)
|
|
1025
1022
|
|
|
1026
1023
|
def OnData(self, x, y, result):
|
|
1027
|
-
editor = self.
|
|
1024
|
+
editor = self.editor
|
|
1028
1025
|
self.GetData()
|
|
1029
1026
|
if self.textdo.TextLength > 1:
|
|
1030
1027
|
f = self.textdo.Text.strip()
|
|
@@ -1156,12 +1153,9 @@ class ShellFrame(MiniFrame):
|
|
|
1156
1153
|
|
|
1157
1154
|
self.Bookshelf = EditorTreeCtrl(self, name="Bookshelf",
|
|
1158
1155
|
style=wx.TR_DEFAULT_STYLE|wx.TR_HIDE_ROOT)
|
|
1159
|
-
self.Bookshelf.
|
|
1156
|
+
self.Bookshelf.attach(self)
|
|
1160
1157
|
|
|
1161
1158
|
self.ghost.AddPage(self.Bookshelf, "Bookshelf", bitmap=Icon('book'))
|
|
1162
|
-
## self._mgr.AddPane(self.Bookshelf,
|
|
1163
|
-
## aui.AuiPaneInfo().Name("bookshelf")
|
|
1164
|
-
## .Caption("Bookshelf").Right().Show(1))
|
|
1165
1159
|
|
|
1166
1160
|
self.ghost.SetDropTarget(FileDropLoader(self.Scratch))
|
|
1167
1161
|
|
|
@@ -1250,7 +1244,7 @@ class ShellFrame(MiniFrame):
|
|
|
1250
1244
|
'add_log' : [ None, self.add_log ],
|
|
1251
1245
|
'add_help' : [ None, self.add_help ],
|
|
1252
1246
|
'title_window' : [ None, self.on_title_window ],
|
|
1253
|
-
'buffer_caption_reset' : [ None, self.on_buffer_caption ],
|
|
1247
|
+
'buffer_caption_reset' : [ None, self.on_buffer_caption ], # => self.OnActivate
|
|
1254
1248
|
},
|
|
1255
1249
|
0 : {
|
|
1256
1250
|
'* pressed' : (0, fork_debugger),
|
|
@@ -1638,7 +1632,7 @@ class ShellFrame(MiniFrame):
|
|
|
1638
1632
|
filename, ln = m.groups()
|
|
1639
1633
|
lineno = int(ln)
|
|
1640
1634
|
editor = self.find_editor(filename) or self.Log
|
|
1641
|
-
ret =
|
|
1635
|
+
ret = editor.load_file(filename, lineno, verbose=1)
|
|
1642
1636
|
if ret:
|
|
1643
1637
|
self.popup_window(editor, show, focus)
|
|
1644
1638
|
return ret
|
|
@@ -1912,13 +1906,21 @@ class ShellFrame(MiniFrame):
|
|
|
1912
1906
|
"""Yields all editors in the notebooks."""
|
|
1913
1907
|
yield from self.ghost.get_pages(type(self.Log))
|
|
1914
1908
|
|
|
1909
|
+
@property
|
|
1910
|
+
def current_editor(self):
|
|
1911
|
+
"""Currently selected editor or scratch."""
|
|
1912
|
+
editor = self.ghost.CurrentPage
|
|
1913
|
+
if isinstance(editor, type(self.Log)):
|
|
1914
|
+
return editor
|
|
1915
|
+
return next((x for x in self.all_editors if x.IsShown()), self.Scratch)
|
|
1916
|
+
|
|
1915
1917
|
def find_editor(self, fn):
|
|
1916
1918
|
"""Find an editor which has the specified fn:filename or code."""
|
|
1917
|
-
for
|
|
1918
|
-
buf =
|
|
1919
|
+
for book in self.all_editors:
|
|
1920
|
+
buf = book.find_buffer(fn)
|
|
1919
1921
|
if buf:
|
|
1920
|
-
|
|
1921
|
-
return
|
|
1922
|
+
book.swap_page(buf)
|
|
1923
|
+
return book
|
|
1922
1924
|
|
|
1923
1925
|
## --------------------------------
|
|
1924
1926
|
## Find text dialog
|
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
|
|
|
@@ -1154,7 +1154,7 @@ class Frame(mwx.Frame):
|
|
|
1154
1154
|
try:
|
|
1155
1155
|
if session:
|
|
1156
1156
|
plug.load_session(session)
|
|
1157
|
-
except Exception
|
|
1157
|
+
except Exception:
|
|
1158
1158
|
traceback.print_exc()
|
|
1159
1159
|
print("- Failed to load session of", plug)
|
|
1160
1160
|
return None
|
mwx/matplot2g.py
CHANGED
|
@@ -946,8 +946,6 @@ class GraphPlot(MatplotPanel):
|
|
|
946
946
|
xr, yr = max(nx), max(ny) # bottom-right
|
|
947
947
|
self.message("[Region] "
|
|
948
948
|
"crop={}:{}:{}:{}".format(xr-xo, yr-yo, xo, yo)) # (W:H:left:top)
|
|
949
|
-
else:
|
|
950
|
-
return self.trace_point(x[[0,-1]], y[[0,-1]], type)
|
|
951
949
|
|
|
952
950
|
def writeln(self):
|
|
953
951
|
"""Puts (override) attributes of current frame to the modeline."""
|
mwx/nutshell.py
CHANGED
|
@@ -290,7 +290,7 @@ class EditorInterface(CtrlInterface):
|
|
|
290
290
|
self.__mark = -1
|
|
291
291
|
self.__stylus = {}
|
|
292
292
|
|
|
293
|
-
## Custom constants embedded in stc
|
|
293
|
+
## Custom constants embedded in wx.stc
|
|
294
294
|
stc.STC_P_WORD3 = 20
|
|
295
295
|
stc.STC_STYLE_CARETLINE = 40
|
|
296
296
|
stc.STC_STYLE_ANNOTATION = 41
|
|
@@ -986,7 +986,7 @@ class EditorInterface(CtrlInterface):
|
|
|
986
986
|
self.EnsureVisible(self.cline)
|
|
987
987
|
yield err
|
|
988
988
|
|
|
989
|
-
def
|
|
989
|
+
def grep_backward(self, pattern, flags=re.M):
|
|
990
990
|
text = self.GetTextRange(0, self.cpos)
|
|
991
991
|
errs = re.finditer(pattern, text, flags)
|
|
992
992
|
for err in reversed(list(errs)):
|
|
@@ -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()
|
|
@@ -1965,7 +1965,7 @@ class EditorBook(AuiNotebook, CtrlInterface):
|
|
|
1965
1965
|
"""
|
|
1966
1966
|
buf = self.find_buffer(filename)
|
|
1967
1967
|
if not buf:
|
|
1968
|
-
buf = self.create_buffer(
|
|
1968
|
+
buf = self.create_buffer("*temp file*")
|
|
1969
1969
|
elif buf.need_buffer_save and verbose:
|
|
1970
1970
|
if wx.MessageBox( # Confirm load.
|
|
1971
1971
|
"You are leaving unsaved content.\n\n"
|
|
@@ -3141,10 +3141,6 @@ class Nautilus(Shell, EditorInterface):
|
|
|
3141
3141
|
|
|
3142
3142
|
def help(self, obj):
|
|
3143
3143
|
"""Full description."""
|
|
3144
|
-
## if obj is None:
|
|
3145
|
-
## self.message("Currently redirected to stdin/stdout.")
|
|
3146
|
-
## wx.CallAfter(pydoc.help)
|
|
3147
|
-
## return
|
|
3148
3144
|
doc = pydoc.plain(pydoc.render_doc(obj))\
|
|
3149
3145
|
or "No description about {}".format(obj)
|
|
3150
3146
|
self.parent.handler('add_help', doc) or print(doc)
|
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=
|
|
2
|
+
mwx/bookshelf.py,sha256=UVVIwHaGO4aEHwZ8x5SKjpL-3MmQ1s6kkyuyRZqKWvU,5070
|
|
3
3
|
mwx/controls.py,sha256=1eguX5eofsA6hmS2y7R4hvlFjFikVoZ8v2S1ES7rjEU,47196
|
|
4
|
-
mwx/framework.py,sha256=
|
|
5
|
-
mwx/graphman.py,sha256=
|
|
4
|
+
mwx/framework.py,sha256=Hi16j2sajupXq2_m37VMfxumj6eXwfaGq8Le26IMfFc,75494
|
|
5
|
+
mwx/graphman.py,sha256=kntmZcVxIubUtH7mLiDyDr2rXw_2iEvtV9DkFDYtt8s,69991
|
|
6
6
|
mwx/images.py,sha256=mrnUYH12I3XLVSZcEXlpVltX0XMxufbl2yRvDIQJZqc,49957
|
|
7
7
|
mwx/matplot2.py,sha256=qaF_gvLoLn-TimLbRR59KUavNr1ZpZQdSMqjzJk47rk,32682
|
|
8
|
-
mwx/matplot2g.py,sha256=
|
|
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=VcUDTzqdBdHztVGfkjqEL9DUO6cKaGYvYCAME0Jl0qk,135647
|
|
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.5.dist-info/LICENSE,sha256=PGtRKCaTkmUDlBQwpptJAxJtdqxIUtAmdBsaT9nUVkA,1091
|
|
25
|
+
mwxlib-0.94.5.dist-info/METADATA,sha256=tMDN9Giu-NWqUZx5Pzf0OzlAtx_P6HSMW8EVWd0scMw,1925
|
|
26
|
+
mwxlib-0.94.5.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
27
|
+
mwxlib-0.94.5.dist-info/top_level.txt,sha256=SI1Mh118AstnUFGPNq5aMNKiAnVNmZk1S9Ij-OwAEpY,4
|
|
28
|
+
mwxlib-0.94.5.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|