11from uip import ui_assetWindow
22from PySide6 import QtWidgets , QtCore , QtGui
33import _thread , api , browseWindow , pyperclip , downloader , typing , os , path_saver
4+ from INSLogger import Logger
45
56
67class AssetWindow (ui_assetWindow .Ui_Dialog , QtWidgets .QDialog ):
8+ logger = Logger ("AssetWindow" )
9+
710 def __init__ (self , parent = None ):
811 super ().__init__ (parent = parent )
912 self .setupUi (self )
@@ -44,16 +47,16 @@ def __init__(self, parent=None):
4447 def init_progress_bar (self ):
4548 """初始化进度条交互功能"""
4649 # 设置进度条范围
47- self .horizontalSlider_playprogress .setRange (0 , 100 )
50+ # self.horizontalSlider_playprogress.setRange(0, 100) #Not needed in the new version
4851
49- # 连接滑块信号
50- self .horizontalSlider_playprogress .sliderPressed .connect (self .on_slider_pressed )
51- self .horizontalSlider_playprogress .sliderReleased .connect (
52- self .on_slider_released
53- )
54- self .horizontalSlider_playprogress .valueChanged .connect (
55- self .on_slider_value_changed
56- )
52+ # # 连接滑块信号
53+ # self.horizontalSlider_playprogress.sliderPressed.connect(self.on_slider_pressed)
54+ # self.horizontalSlider_playprogress.sliderReleased.connect(
55+ # self.on_slider_released
56+ # )
57+ # self.horizontalSlider_playprogress.valueChanged.connect(
58+ # self.on_slider_value_changed
59+ # )
5760
5861 def on_slider_pressed (self ):
5962 """进度条开始拖动时调用"""
@@ -154,10 +157,10 @@ def _on_font_page_loaded(self, success):
154157 self .js_code , self ._on_font_js_executed
155158 )
156159 else :
157- print ("字体预览页面加载失败" )
160+ self . logger . log ("字体预览页面加载失败" )
158161
159162 def _on_font_js_executed (self , result ):
160- print ("JS执行完成,结果:" , result )
163+ self . logger . log ("JS执行完成,结果:" , result )
161164
162165 def setData (self , data : dict ):
163166 if "H1" in data .keys ():
@@ -174,6 +177,7 @@ def setData(self, data: dict):
174177 if url .startswith ("/" ):
175178 url = f"http://localhost:{ self .parent ().parent ().port } " + url
176179 self .widget_image .loader .load_image (url )
180+ self .pushButton_saveimage .clicked .connect (self .save_img )
177181 else :
178182 self .tabWidget .setTabEnabled (2 , False )
179183 else :
@@ -182,9 +186,9 @@ def setData(self, data: dict):
182186 self .tabWidget .setTabEnabled (6 , True )
183187 full_link = f"http://localhost:{ self .parent ().parent ().port } { data ['Video' ]} "
184188 self .widget_video_play .load_video (full_link )
185- self .video_check_interval = QtCore .QTimer ()
186- self .video_check_interval .timeout .connect (self .update_vdo_proc )
187- self .video_check_interval .start (1000 ) # 1秒更新一次
189+ # self.video_check_interval = QtCore.QTimer()
190+ # self.video_check_interval.timeout.connect(self.update_vdo_proc)
191+ # self.video_check_interval.start(1000) # 1秒更新一次
188192 self .pushButton_savevdo .clicked .connect (self .save_vdo )
189193 else :
190194 self .pushButton_savevdo .clicked .connect (self .empty )
@@ -245,7 +249,7 @@ def save_audio(self):
245249 self .setEnabled (True )
246250
247251 save_name : str = self .audio_name
248- filters = f"{ save_name .split ("." )[1 ]} File (*.{ save_name .split ("." )[1 ]} )"
252+ filters = f"{ save_name .split ('.' )[1 ]} File (*.{ save_name .split ('.' )[1 ]} )"
249253 save_path = QtWidgets .QFileDialog .getSaveFileName (
250254 self ,
251255 "Save File..." ,
@@ -258,7 +262,7 @@ def save_audio(self):
258262 self .saving_dialogs .append (downloader .Downloader (self ))
259263 self .saving_dialogs [- 1 ].show ()
260264 full_url = (
261- f"http://localhost:{ self .parent ().parent ().port } { self ._data [" Audio" ]} "
265+ f"http://localhost:{ self .parent ().parent ().port } { self ._data [' Audio' ]} "
262266 )
263267 self .saving_dialogs [- 1 ].file_download (full_url , save_path )
264268
@@ -284,7 +288,7 @@ def save_vdo(self):
284288 self .setEnabled (True )
285289
286290 save_name : str = self .vdo_name
287- filters = f"{ save_name .split ("." )[1 ]} File (*.{ save_name .split ("." )[1 ]} )"
291+ filters = f"{ save_name .split ('.' )[1 ]} File (*.{ save_name .split ('.' )[1 ]} )"
288292 save_path = QtWidgets .QFileDialog .getSaveFileName (
289293 self ,
290294 "Save File..." ,
@@ -297,7 +301,7 @@ def save_vdo(self):
297301 self .saving_dialogs .append (downloader .Downloader (self ))
298302 self .saving_dialogs [- 1 ].show ()
299303 full_url = (
300- f"http://localhost:{ self .parent ().parent ().port } { self ._data [" Video" ]} "
304+ f"http://localhost:{ self .parent ().parent ().port } { self ._data [' Video' ]} "
301305 )
302306 self .saving_dialogs [- 1 ].file_download (full_url , save_path )
303307
@@ -307,6 +311,31 @@ def _get_file_name(self):
307311 )
308312 self .vdo_name_got = True
309313
314+ def save_img (self ):
315+ if not self ._data ["Image" ]:
316+ return
317+ save_name : str = list (self ._data ["Image" ].keys ())[0 ]
318+ ext = self ._get_img_ext (list (self ._data ["Image" ].values ())[0 ])
319+ self .logger .debug ("savename:" , save_name , "ext:" , ext )
320+ filters = f"{ ext } File(*.{ ext } )"
321+ save_path = QtWidgets .QFileDialog .getSaveFileName (
322+ self ,
323+ "Save File..." ,
324+ dir = os .path .join (path_saver .get_last_export_path (), save_name ),
325+ filter = filters ,
326+ )[0 ]
327+ if not save_path :
328+ return
329+ path_saver .save_last_export_path (path_saver .get_file_dir (save_path ))
330+ self .saving_dialogs .append (downloader .Downloader (self ))
331+ self .saving_dialogs [- 1 ].show ()
332+ full_url = f"http://localhost:{ self .parent ().parent ().port } { list (self ._data ['Image' ].values ())[0 ]} "
333+ self .saving_dialogs [- 1 ].file_download (full_url , save_path )
334+
335+ _get_img_ext = staticmethod (
336+ lambda lnk : str (lnk ).lower ().split ("extension=" )[- 1 ].split ("&" )[0 ]
337+ )
338+
310339 def save_yaml (self ):
311340 if not self ._data ["Yaml" ]:
312341 return
@@ -323,7 +352,7 @@ def save_yaml(self):
323352 path_saver .save_last_export_path (path_saver .get_file_dir (save_path ))
324353 self .saving_dialogs .append (downloader .Downloader (self ))
325354 self .saving_dialogs [- 1 ].show ()
326- full_url = f"http://localhost:{ self .parent ().parent ().port } { list (self ._data [" Yaml" ].values ())[0 ]} "
355+ full_url = f"http://localhost:{ self .parent ().parent ().port } { list (self ._data [' Yaml' ].values ())[0 ]} "
327356 self .saving_dialogs [- 1 ].file_download (full_url , save_path )
328357
329358 def save_json (self ):
@@ -342,14 +371,14 @@ def save_json(self):
342371 path_saver .save_last_export_path (path_saver .get_file_dir (save_path ))
343372 self .saving_dialogs .append (downloader .Downloader (self ))
344373 self .saving_dialogs [- 1 ].show ()
345- full_url = f"http://localhost:{ self .parent ().parent ().port } { list (self ._data [" Json" ].values ())[0 ]} "
374+ full_url = f"http://localhost:{ self .parent ().parent ().port } { list (self ._data [' Json' ].values ())[0 ]} "
346375 self .saving_dialogs [- 1 ].file_download (full_url , save_path )
347376
348377 def save_text (self ):
349378 if not self ._data ["Text" ]:
350379 return # 没有
351380 save_name : str = list (self ._data ["Text" ].keys ())[0 ]
352- filters = f"{ save_name .split ("." )[1 ]} File (*.{ save_name .split ("." )[1 ]} );;Text File (*.txt);;All Files(*.*)"
381+ filters = f"{ save_name .split ('.' )[1 ]} File (*.{ save_name .split ('.' )[1 ]} );;Text File (*.txt);;All Files(*.*)"
353382 save_path = QtWidgets .QFileDialog .getSaveFileName (
354383 self ,
355384 "Save File..." ,
@@ -360,7 +389,7 @@ def save_text(self):
360389 return # 取消了
361390 path_saver .save_last_export_path (path_saver .get_file_dir (save_path ))
362391 self .saving_dialogs .append (downloader .Downloader (self ))
363- full_url = f"http://localhost:{ self .parent ().parent ().port } { list (self ._data [" Text" ].values ())[0 ]} "
392+ full_url = f"http://localhost:{ self .parent ().parent ().port } { list (self ._data [' Text' ].values ())[0 ]} "
364393 self .saving_dialogs [- 1 ].show ()
365394 self .saving_dialogs [- 1 ].file_download (full_url , save_path )
366395
@@ -517,6 +546,9 @@ def dependencies_context_menu(self):
517546
518547 def open_content (self , table : QtWidgets .QTableWidget , selection_text : str ):
519548 link = self ._data [f"{ selection_text } _links" ][table .selectedItems ()[0 ].row ()]
549+ if not link :
550+ # 没有就退出
551+ return
520552 if "Assets" in link :
521553 self .is_data_loaded = False
522554 self .loaded_data = None
@@ -548,7 +580,7 @@ def _open_assets(self, link):
548580 self .loaded_data = api .get_loaded_assets (
549581 self .parent ().parent ().port , from_url = True , url = link
550582 )
551- # print (self.loaded_data)
583+ # self.logger.log (self.loaded_data)
552584 self .is_data_loaded = True
553585
554586 def closeEvent (self , arg__1 ):
0 commit comments