file_explorer.py 文件源码

python
阅读 17 收藏 0 点赞 0 评论 0

项目:SuperOcto 作者: mcecchi 项目源码 文件源码
def save(self, usb = False, *args,**kwargs):
        if self.meta != None:
            self.save_meta()
        save_dir = roboprinter.robo_screen()
        Logger.info(save_dir)
        save_dir = save_dir.replace("ROBOSAVE", "")
        Logger.info(save_dir)

        filename = os.path.basename(self.temp_file_path)

        if save_dir == 'local':
            save_dir = FILES_DIR + "/"+ filename
            final_dir = save_dir
            counter = 0
            #don't overwrite an already saved file
            while os.path.isfile(final_dir):
                counter += 1
                final_dir = save_dir.replace(".gcode", "_" + str(counter) + ".gcode")

            short_dir = 'local/'
        else:
            short_dir = save_dir  + "/"
            save_dir = FILES_DIR + "/" + save_dir + "/"+ filename
            final_dir = save_dir
            counter = 0
            #dont overwrite an already saved file
            while os.path.isfile(final_dir):
                counter += 1
                final_dir = save_dir.replace(".gcode", "_" + str(counter) + ".gcode")



        if os.path.isfile(self.temp_file_path):
            #copy the file
            shutil.copyfile(self.temp_file_path, final_dir)
            #remove the temporary file if it is not from a USB drive
            if not usb:
                os.remove(self.temp_file_path)

            fit_filename = filename.replace(".gcode", "_" + str(counter))


            if len(fit_filename) > 24:
                fit_filename = "..." + fit_filename[len(fit_filename) - 24:]

            layout = Confirmation_Screen(roboprinter.lang.pack['Files']['Save_File']['Sub_Title'],  fit_filename + roboprinter.lang.pack['Files']['Save_File']['Body'], "Icons/Slicer wizard icons/check_icon.png", roboprinter.robosm.go_back_to_main)            
            sc = Screen(name = 'confirmation')
            sc.add_widget(layout)
            roboprinter.robosm.add_widget(sc)
            roboprinter.robosm.current = sc.name

        Logger.info('File Saved/Removed')
        #add a 2 second delay for updating files
        Clock.schedule_once(self.update_files, 2)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号