Skip to content

Commit ebd13f9

Browse files
chore(crossTools): improve typing (#571)
1 parent dd25671 commit ebd13f9

5 files changed

Lines changed: 398 additions & 100 deletions

File tree

apps/dumbPaintTool/dumbPaintTool/app/maintemplate.py

Lines changed: 34 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,8 @@ def _showAboutTTk(btn):
127127
glbls.clearSnapshot()
128128
glbls.saveSnapshot()
129129

130-
ttk.ttkConnectDragOpen(ttk.TTkEncoding.APPLICATION_JSON, self._openDragData)
131-
ttk.ttkConnectDragOpen(ttk.TTkEncoding.IMAGE, self._openImageData)
130+
ttk.TTkCrossTools.ttkConnectDragOpen(ttk.TTkCrossTools.Encoding.APPLICATION_JSON, self._openDragData)
131+
ttk.TTkCrossTools.ttkConnectDragOpen(ttk.TTkCrossTools.Encoding.IMAGE, self._openImageData)
132132

133133
ttk.TTkShortcut(ttk.TTkK.CTRL | ttk.TTkK.Key_Z).activated.connect(glbls.undo)
134134
ttk.TTkShortcut(ttk.TTkK.CTRL | ttk.TTkK.Key_Y).activated.connect(glbls.redo)
@@ -147,56 +147,68 @@ def _new(self):
147147

148148
@ttk.pyTTkSlot()
149149
def _open(self):
150-
ttk.ttkCrossOpen(
150+
ttk.TTkCrossTools.open(
151151
path='.',
152-
encoding=ttk.TTkEncoding.APPLICATION_JSON,
152+
encoding=ttk.TTkCrossTools.Encoding.APPLICATION_JSON,
153153
filter="DumbPaintTool Files (*.DPT.json);;Json Files (*.json);;All Files (*)",
154154
cb=self._openDragData)
155155

156156
@ttk.pyTTkSlot()
157157
def _openImage(self):
158-
ttk.ttkCrossOpen(
158+
ttk.TTkCrossTools.open(
159159
path='.',
160-
encoding=ttk.TTkEncoding.IMAGE,
160+
encoding=ttk.TTkCrossTools.Encoding.IMAGE,
161161
filter="Images (*.png *.jpg *.gif *.ico);;All Files (*)",
162162
cb=self._openImageData)
163163

164164
@ttk.pyTTkSlot()
165165
def _save(self):
166166
doc = self._parea.exportDocument()
167-
ttk.ttkCrossSave(glbls.fileName(), json.dumps(doc, indent=1), ttk.TTkEncoding.APPLICATION_JSON)
167+
ttk.TTkCrossTools.save(
168+
filePath=glbls.fileName(),
169+
content=json.dumps(doc, indent=1),
170+
encoding=ttk.TTkCrossTools.Encoding.APPLICATION_JSON)
168171

169172
@ttk.pyTTkSlot()
170173
def _saveAs(self):
171174
doc = self._parea.exportDocument()
172-
ttk.ttkCrossSaveAs(glbls.fileName(), json.dumps(doc, indent=1), ttk.TTkEncoding.APPLICATION_JSON,
173-
filter="DumbPaintTool Files (*.DPT.json);;Json Files (*.json);;All Files (*)",
174-
cb=lambda _d:glbls.setFilename(_d['name']))
175+
ttk.TTkCrossTools.saveAs(
176+
filePath=glbls.fileName(),
177+
content=json.dumps(doc, indent=1),
178+
encoding=ttk.TTkCrossTools.Encoding.APPLICATION_JSON,
179+
filter="DumbPaintTool Files (*.DPT.json);;Json Files (*.json);;All Files (*)",
180+
cb=lambda _d:glbls.setFilename(_d.name))
175181

176182
@ttk.pyTTkSlot()
177183
def _saveAsAnsi(self):
178184
image = self._parea.exportImage()
179185
text = ttk.TTkString(image)
180-
ttk.ttkCrossSaveAs(glbls.fileName(), text.toAnsi(), ttk.TTkEncoding.TEXT_PLAIN_UTF8,
181-
filter="Ansi text Files (*.Ansi.txt);;Text Files (*.txt);;All Files (*)")
186+
ttk.TTkCrossTools.saveAs(
187+
filePath=glbls.fileName(),
188+
content=text.toAnsi(),
189+
encoding=ttk.TTkCrossTools.Encoding.TEXT_PLAIN_UTF8,
190+
filter="Ansi text Files (*.Ansi.txt);;Text Files (*.txt);;All Files (*)")
182191

183192
@ttk.pyTTkSlot()
184193
def _saveAsAscii(self):
185194
image = self._parea.exportImage()
186195
text = ttk.TTkString(image)
187-
ttk.ttkCrossSaveAs('untitled.DPT.ASCII.txt', text.toAscii(), ttk.TTkEncoding.TEXT_PLAIN_UTF8,
188-
filter="ASCII Text Files (*.ASCII.txt);;Text Files (*.txt);;All Files (*)")
189-
190-
@ttk.pyTTkSlot(dict)
191-
def _openImageData(self, data):
192-
newWindow = ImportImage(data['data'])
196+
ttk.TTkCrossTools.saveAs(
197+
filePath='untitled.DPT.ASCII.txt',
198+
content=text.toAscii(),
199+
encoding=ttk.TTkCrossTools.Encoding.TEXT_PLAIN_UTF8,
200+
filter="ASCII Text Files (*.ASCII.txt);;Text Files (*.txt);;All Files (*)")
201+
202+
@ttk.pyTTkSlot(ttk.TTkCrossTools.CB_Data_Open)
203+
def _openImageData(self, data:ttk.TTkCrossTools.CB_Data_Open):
204+
newWindow = ImportImage(data.data)
193205
newWindow.exportedImage.connect(self._parea.pasteEvent)
194206
ttk.TTkHelper.overlay(None, newWindow, 10, 4, modal=True)
195207

196-
@ttk.pyTTkSlot(dict)
197-
def _openDragData(self, data):
198-
dd = json.loads(data['data'])
199-
glbls.setFilename(data['name'])
208+
@ttk.pyTTkSlot(ttk.TTkCrossTools.CB_Data_Open)
209+
def _openDragData(self, data:ttk.TTkCrossTools.CB_Data_Open):
210+
dd = json.loads(data.data)
211+
glbls.setFilename(data.name)
200212
if 'layers' in dd:
201213
self.importDocument(dd)
202214
else:

libs/pyTermTk/TermTk/TTkCore/constant.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -471,7 +471,7 @@ class Alignment(IntEnum):
471471
CENTER_ALIGN = Alignment.CENTER_ALIGN
472472
JUSTIFY = Alignment.JUSTIFY
473473

474-
class FileMode(int):
474+
class FileMode(IntEnum):
475475
'''FileMode
476476
477477
.. autosummary::
@@ -492,7 +492,7 @@ class FileMode(int):
492492
# Directory = FileMode.Directory
493493
# ExistingFiles = FileMode.ExistingFiles
494494

495-
class AcceptMode(int):
495+
class AcceptMode(IntEnum):
496496
'''AcceptMode
497497
498498
.. autosummary::

0 commit comments

Comments
 (0)