def __init__(self, master): super().__init__(master) fileMenu = tk.Menu(self, tearoff=False) self.add_cascade(label="File", menu=fileMenu) fileMenu.add_command(label="Open File", command=lambda : File_Explorer.open_file(master)) fileMenu.add_command(label="Save as", command=lambda : File_Explorer.save_file(master)) fileMenu.add_separator() fileMenu.add_command(label="Exit", command=self.quit)
def make_screen(self): self.file_options = FileOptions(self.show_selectable_files, self.refresh, self.folders_only, self.create_folder) self.file_explorer = File_Explorer(self.file_options.storage, self.folders_only) self.goto_file_explorer() return self.bb_screen
def create_widgets(self): self.explorer = File_Explorer(self) # sets the position self.explorer.pack(side="top") self.label = tk.Label(self) def set_label(e): self.label["text"]=self.explorer.content self.bind("<<Fileread>>", set_label) self.label.pack()
class Application(me): def __init__(self, master=None): super().__init__(master) self.master = master self.pack() self.create_widgets() def create_widgets(self): self.explorer = File_Explorer(self) # sets the position self.explorer.pack(side="top") self.label = tk.Label(self) def set_label(e): self.label["text"]=self.explorer.content self.bind("<<Fileread>>", set_label) self.label.pack()
def open_file_select_screen(self): layout = File_Explorer('model', self.create_button, enable_editing=False) #continue to the stl select screen back_destination = self.sm.current title = roboprinter.lang.pack['Slicer_Wizard']['Select_File']['Title'] name = "choose_file" self.sm._generate_backbutton_screen(name=name, title=title, back_destination=back_destination, content=layout)
class File_Overseer(object): """ docstring for File_Overseer File Overseer will stitch all of the different parts together. """ switcher = True def __init__(self): super(File_Overseer, self).__init__() #self.make_screen() self.bb_screen = File_BB() self.exit = False roboprinter.screen_controls = self.bb_screen pass def make_screen(self): self.file_options = FileOptions(self.show_selectable_files, self.refresh, self.folders_only, self.create_folder) self.file_explorer = File_Explorer(self.file_options.storage, self.folders_only) self.goto_file_explorer() return self.bb_screen def goto_USB(self): self.file_explorer.directory.goto_root() self.file_explorer.next_directory('USB') self.file_explorer.set_exit() self.exit = True self.goto_file_explorer() def goto_root(self): self.exit = False self.file_explorer.directory.goto_root() self.goto_file_explorer() def goto_file_options(self): self.file_options.original_screen = roboprinter.screen_controls.get_screen_data( ) roboprinter.screen_controls.set_screen_content( self.file_options, #content self.file_options.title, #title of content back_function=self.file_options. return_to_previous_list, #back button function option_function=self.file_options.exit_from_file_explorer, option_icon="Icons/cancel_button_icon.png" ) #option Button function def goto_file_explorer(self): self.file_explorer.update_file_screen() back_function = partial(self.file_explorer.up_one_directory, exit=self.exit) roboprinter.screen_controls.set_screen_content( self.file_explorer, #content self.file_explorer.current_title, #title of content back_function=back_function, #back button function option_function=self.goto_file_options, option_icon="Icons/Files_Icons/Hamburger_lines.png" ) #option Button function def show_selectable_files(self, callback_dict): previous_screen = roboprinter.screen_controls.get_screen_data() def option_button_function(): callback_dict['callback']( self.file_explorer.file_list, previous_screen, self.file_explorer.resume_selectable_dir, self.file_explorer.update_selected_folders) self.file_explorer.show_selectable_cur_dir() back_function = partial(self.back_to_previous, screen=previous_screen) icon = callback_dict['icon'] roboprinter.screen_controls.set_screen_content( self.file_explorer, #content self.file_explorer.current_title, #title of content back_function=back_function, #back button function option_function=option_button_function, #option Button function option_icon=icon) def back_to_previous(self, screen): # Logger.info("Returning to previous screen") roboprinter.screen_controls.populate_old_screen(screen) def refresh(self): self.file_explorer.refresh() def folders_only(self, callback_dict, back_to_name=None): #get the previous screen previous_screen = roboprinter.screen_controls.get_screen_data() #make a partial that will recall the previous screen back_function = partial(self.back_to_previous, screen=previous_screen) #make a partial that will give that callback to the back_button as well as a screen name and let the backbutton decide where to go folder_only_back = partial(self.file_explorer.folders_only_back_button, previous_screen_callback=back_function, back_to_name=back_to_name) def option_button_function(): callback_dict['callback']( self.file_explorer.return_current_directory(), self.goto_file_explorer) self.file_explorer.show_only_folders() icon = callback_dict['icon'] roboprinter.screen_controls.set_screen_content( self.file_explorer, #content self.file_explorer.current_title, #title of content back_function=folder_only_back, #back button function option_function=option_button_function, #option Button function option_icon=icon) ''' This gets executed by file options when a new folder needs to be created. ''' def create_folder(self): #get current directory cur_dir = self.file_explorer.return_current_directory() self.file_options.create_new_folder(cur_dir, self.goto_file_explorer)
def __init__(self, master=None): super().__init__(master, bg="white") self.master = master self.rowconfigure(0, weight=1) self.playImg = tk.PhotoImage(file="images/pause.png") self.playButton = tk.Button(self, image=self.playImg, bd=0, bg="white", command=lambda: self.toggle()) self.playButton.grid(row=0, column=0, padx=5, pady=3) self.saveImg = tk.PhotoImage(file="images/floppy.png") self.saveAsButton = tk.Button( self, image=self.saveImg, border=0, bg="white", command=lambda: File_Explorer.save_file(master)) self.saveAsButton.grid(row=0, column=1, padx=5, pady=3) self.scaleImg = tk.PhotoImage(file="images/pan.png") self.scaleButton = tk.Button( self, image=self.scaleImg, border=0, bg="white", command=lambda: self.master.set_mode("pan")) self.scaleButton.grid(row=0, column=2, padx=5, pady=3) self.zoomInImg = tk.PhotoImage(file="images/zoomIn.png") self.scaleButton = tk.Button( self, image=self.zoomInImg, border=0, bg="white", command=lambda: self.master.set_mode("zoomIn")) self.scaleButton.grid(row=0, column=3, padx=5, pady=3) self.zoomOutImg = tk.PhotoImage(file="images/zoomOut.png") self.scaleButton = tk.Button( self, image=self.zoomOutImg, border=0, bg="white", command=lambda: self.master.set_mode("zoomOut")) self.scaleButton.grid(row=0, column=4, padx=5, pady=3) self.deleteImg = tk.PhotoImage(file="images/trash.png") self.deleteButton = tk.Button(self, image=self.deleteImg, border=0, bg="white", command=lambda: self.master.delete_tab()) self.deleteButton.grid(row=0, column=5, padx=5, pady=3) n = tk.StringVar() mapchoosen = ttk.Combobox(self, width=10, textvariable=n) # Adding combobox drop down list mapchoosen['values'] = ( ' PiYG', ' cool', ' pink', ' ocean', ' BrBG', ' rainbow', ) mapchoosen.grid(column=15, row=0) mapchoosen.current(0) mapchoosen.bind('<<ComboboxSelected>>', map)
def update_files(self): files = File_Explorer('machinecode', FileButton, enable_editing=True) self.clear_widgets() self.add_widget(files) #helper function from the Meta Rader Clock.schedule_once(self.call_to_analyze, 0.01)
def __init__(self,master=None): super().__init__(master,bg="white") self.master = master # open file button + the icon self.grid(row=0,column=5,sticky="ew") self.openImg = tk.PhotoImage(file="images/folder1.png") self.openButton = tk.Button(self , image=self.openImg, border=0, bg="white" , command=lambda : File_Explorer.open_file(master)) self.openButton.grid(row=0 ,column=0,padx=5,pady=3) #save as button + the icon self.saveImg = tk.PhotoImage(file="images/floppy1.png") self.saveAsButton =tk.Button(self , image=self.saveImg, border=0, bg="white" , command=lambda : File_Explorer.save_file(master)) self.saveAsButton.grid(row=0 ,column=1,padx=5,pady=3) # #scale button + the icon self.scaleImg = tk.PhotoImage(file="images/pan.png") self.scaleButton = tk.Button(self , image=self.scaleImg, border=0, bg="white" , command=lambda : self.master.set_mode("pan")) self.scaleButton.grid(row=0 ,column=2,padx=5,pady=3) self.zoomInImg = tk.PhotoImage(file="images/zoomIn.png") self.scaleButton = tk.Button(self , image=self.zoomInImg, border=0, bg="white" , command=lambda : self.master.set_mode("zoomIn")) self.scaleButton.grid(row=0 ,column=3,padx=5,pady=3) self.zoomOutImg = tk.PhotoImage(file="images/zoomOut.png") self.scaleButton = tk.Button(self , image=self.zoomOutImg, border=0, bg="white" , command=lambda : self.master.set_mode("zoomOut")) self.scaleButton.grid(row=0 ,column=4,padx=5,pady=3)