@@ -258,8 +258,9 @@ def __init__(self, argv):
258258 self .icon_theme .append_search_path (ICON_THEME_DIR )
259259 self .icon_theme .append_search_path (USER_ICON_THEME_DIR )
260260
261- self .dialogs = dialogs .Dialogs ()
261+ self .dialogs = dialogs .Dialogs (caller = self )
262262 self .dialogs .connect ("play_sound" , self ._on_play_sound )
263+ self .dialogs .connect ('system-dialog-result' , self .system_dialog_return )
263264
264265 # check the arguments given from the command line (Ini file)
265266 self .user_mode = False
@@ -421,6 +422,8 @@ def __init__(self, argv):
421422 self .GSTAT .connect ('macro-call-request' , lambda w , name : self .request_macro_call (name ))
422423 self .GSTAT .connect ('cycle-start-request' , lambda w , state :self .request_start (state ))
423424 self .GSTAT .connect ('cycle-pause-request' , lambda w , state : self .request_pause (state ))
425+ self .GSTAT .connect ('ok-request' , lambda w , state : self .dialogs .dialog_ext_control (1 ))
426+ self .GSTAT .connect ('cancel-request' , lambda w , state : self .dialogs .dialog_ext_control (0 ))
424427
425428 # get if run from line should be used
426429 self .run_from_line = self .prefs .getpref ("run_from_line" , "no_run" , str )
@@ -4199,8 +4202,9 @@ def on_tbtn_setup_toggled(self, widget, data=None):
41994202 code = True
42004203 # else we ask for the code using the system.dialog
42014204 if self .widgets .rbt_use_unlock .get_active ():
4202- if self .dialogs .system_dialog (self ):
4203- code = True
4205+ self .dialogs .show_system_dialog ()
4206+ # we will wait for response
4207+ return
42044208 # Lets see if the user has the right to enter settings
42054209 if code :
42064210 self .widgets .ntb_main .set_current_page (1 )
@@ -4253,6 +4257,25 @@ def on_tbtn_setup_toggled(self, widget, data=None):
42534257
42544258 widget .set_image (self .widgets .img_settings )
42554259
4260+ # return code from system dialog
4261+ def system_dialog_return (self ,widget ,result ):
4262+ print (widget ,result )
4263+ # Lets see if the user has the right to enter settings
4264+ if result == 1 :
4265+ self .widgets .ntb_main .set_current_page (1 )
4266+ self .widgets .ntb_setup .set_current_page (0 )
4267+ self .widgets .ntb_button .set_current_page (_BB_SETUP )
4268+ #widget.set_image(self.widgets.img_settings_on)
4269+ elif result == 0 :
4270+ if self .widgets .rbt_hal_unlock .get_active ():
4271+ message = _ ("Hal Pin is low, Access denied" )
4272+ else :
4273+ message = _ ("wrong code entered, Access denied" )
4274+ self .dialogs .warning_dialog (self , _ ("Just to warn you" ), message )
4275+ self .widgets .tbtn_setup .set_active (False )
4276+ #widget.set_image(self.widgets.img_settings)
4277+
4278+
42564279 # Show or hide the user tabs
42574280 def on_tbtn_user_tabs_toggled (self , widget , data = None ):
42584281 if widget .get_active ():
0 commit comments