def save_player_info(self): """ Save player states plus undo/redo info for properties saving """ max_undo_save = 20 SlTrace.lg("Saving player current info") player_info = PlayerInfo(self.player_control, players=self.player_control.players) PlayerProp(self.player_control).save_props(player_info) SlTrace.lg(f"Saving player undo info max={max_undo_save}", "player_prop") PlayerProp(self.player_control, "undo").save_props(self.undo_stack[-max_undo_save:], stack_count=self.undo_stack_count) SlTrace.lg(f"Saving player redo info max={max_undo_save}", "player_prop") PlayerProp(self.player_control, "redo").save_props(self.redo_stack[-max_undo_save:], stack_count=self.undo_stack_count) if SlTrace.trace("set_updates_prop"): if not SlTrace.trace("set_updates_prop_abs"): sn1 = SlTrace.properties_properties_prev_sn() else: sn1 = None SlTrace.properties_change_print(sn1=sn1, req_match=r'.*\.(redo|undo)', req_match_not=True) if SlTrace.trace("undo_prop"): self.properties_stack_print( self.player_control.CONTROL_NAME_PREFIX)
def show_info(self): """ Show current info """ SlTrace.lg("show_info") if not SlTrace.trace("set_updates_prop_abs"): sn1 = SlTrace.properties_properties_prev_sn() else: sn1 = None SlTrace.properties_change_print(sn1=sn1, req_match=r'.*\.(redo|undo)', req_match_not=True) self.properties_stack_print(self.player_control.CONTROL_NAME_PREFIX)