@@ -126,7 +126,6 @@ def __init__(
126126 self .file_data .on_file_list .connect (self .filesPage_widget .on_file_list )
127127 self .jobStatusPage_widget = JobStatusWidget (self )
128128 self .addWidget (self .jobStatusPage_widget )
129-
130129 self .confirmPage_widget .on_accept .connect (
131130 self .jobStatusPage_widget .on_print_start
132131 )
@@ -167,19 +166,15 @@ def __init__(
167166 self .printer .print_stats_update [str , float ].connect (
168167 self .jobStatusPage_widget .on_print_stats_update
169168 )
170-
171169 self .printer .print_stats_update [str , str ].connect (self .on_print_stats_update )
172170 self .printer .print_stats_update [str , dict ].connect (self .on_print_stats_update )
173171 self .printer .print_stats_update [str , float ].connect (self .on_print_stats_update )
174-
175172 self .printer .gcode_move_update [str , list ].connect (
176173 self .jobStatusPage_widget .on_gcode_move_update
177174 )
178-
179175 self .babystepPage = BabystepPage (self )
180176 self .babystepPage .request_back .connect (self .back_button )
181177 self .addWidget (self .babystepPage )
182-
183178 self .tune_page = TuneWidget (self )
184179 self .addWidget (self .tune_page )
185180 self .jobStatusPage_widget .tune_clicked .connect (
@@ -225,10 +220,8 @@ def __init__(
225220 self .tune_page .request_sensorsPage .connect (
226221 lambda : self .change_page (self .indexOf (self .sensorsPanel ))
227222 )
228-
229223 self .sensorsPanel = SensorsWindow (self )
230224 self .addWidget (self .sensorsPanel )
231-
232225 self .printer .request_object_subscription_signal .connect (
233226 self .sensorsPanel .handle_available_fil_sensors
234227 )
@@ -245,11 +238,8 @@ def __init__(
245238 partial (self .change_page , self .indexOf (self .filesPage_widget ))
246239 )
247240 self .babystepPage .run_gcode .connect (self .ws .api .run_gcode )
248-
249241 self .run_gcode_signal .connect (self .ws .api .run_gcode )
250-
251242 self .confirmPage_widget .on_delete .connect (self .delete_file )
252-
253243 self .change_page (self .indexOf (self .print_page )) # force set the initial page
254244
255245 @QtCore .pyqtSlot (str , dict , name = "on_print_stats_update" )
@@ -301,21 +291,22 @@ def on_slidePage_request(
301291 self .sliderPage .set_slider_maximum (max_value )
302292 self .change_page (self .indexOf (self .sliderPage ))
303293
304- def delete_file ( self , direcotry : str , name : str ):
305- """Handle Delete file button clicked"""
306- self . directory : str = direcotry
307- self . filename : str = name
294+ @ QtCore . pyqtSlot ( str , str , name = "delete_file" )
295+ @ QtCore . pyqtSlot ( str , name = "delete_file" )
296+ def delete_file ( self , filename : str , directory : str = "gcodes" ) -> None :
297+ """Handle Delete file signal, shows confirmation dialog"""
308298 self .dialogPage .set_message ("Are you sure you want to delete this file?" )
309- self .dialogPage .button_clicked .connect (self .on_dialog_button_clicked )
310- self .dialogPage .show ()
299+ self .dialogPage .accepted .connect (
300+ lambda : self ._on_delete_file_confirmed (filename , directory )
301+ )
302+ self .dialogPage .open ()
311303
312- def on_dialog_button_clicked (self , button_name : str ) -> None :
313- """Handle dialog button clicks"""
314- if button_name == "Confirm" :
315- self .ws .api .delete_file (self .filename , self .directory )
316- self .dialogPage .hide ()
317- else :
318- self .dialogPage .hide ()
304+ def _on_delete_file_confirmed (self , filename : str , directory : str ) -> None :
305+ """Handle confirmed file deletion after user accepted the dialog"""
306+ self .file_data .on_request_delete_file (filename , directory )
307+ self .request_back .emit ()
308+ self .filesPage_widget .reset_dir ()
309+ self .dialogPage .disconnect ()
319310
320311 def paintEvent (self , a0 : QtGui .QPaintEvent ) -> None :
321312 """Widget painting"""
@@ -349,6 +340,7 @@ def handle_cancel_print(self) -> None:
349340 self .ws .api .cancel_print ()
350341 self .on_cancel_print .emit ()
351342 self .loadscreen .show ()
343+ self .loadscreen .setModal (True )
352344 self .loadscreen .set_status_message ("Cancelling print...\n Please wait" )
353345
354346 def change_page (self , index : int ) -> None :
0 commit comments