Example #1
0
    def save(self, file_name, row):
        """ Скачать что-то с сервера """
        try:
            path: str = filedialog.askdirectory(
                initialdir="/home/snorcros",
                title="Select a dir for download",
                mustexist=1)

            if path:
                progressbar = Progressbar(self,
                                          orient='horizontal',
                                          length=150,
                                          mode='indeterminate')
                progressbar.grid(row=row, column=4)
                progressbar.config(maximum=100, value=0)

                save_thread = threading.Thread(target=self.client.save,
                                               args=(file_name, path))
                save_thread.start()

                progressbar.start(interval=50)
                while save_thread.is_alive():
                    self.master.update_idletasks()
                    time.sleep(0.05)

                progressbar.stop()
                progressbar.destroy()
                ft_done("File " + file_name + " was download to " + path)
        except ConnectionResetError:
            ft_error("Server died :c")
            self.disconnect()
        except Exception as e:
            ft_error(e)
Example #2
0
    def load_to_serv(self):
        """ Загрузить что-то на сервер """
        try:
            file_name: str = filedialog.askopenfilename(
                initialdir="/home/snorcros",
                title="Select a File",
                filetypes=(("Text files", "*.txt*"), ("all files", "*.*")))
            if file_name:
                print(file_name)
                progressbar = Progressbar(self,
                                          orient='horizontal',
                                          length=200,
                                          mode='indeterminate')
                progressbar.grid(row=2, column=2)
                progressbar.config(maximum=100, value=0)

                load_thread = threading.Thread(target=self.client.load,
                                               args=(file_name, ))
                load_thread.start()

                progressbar.start(interval=50)
                while load_thread.is_alive():
                    self.master.update_idletasks()
                    time.sleep(0.05)

                file_name = file_name.split(sep='/')[-1]
                progressbar.stop()
                progressbar.destroy()
                ft_done("File " + file_name + " was load to server")
                self.add_file_to_root(file_name)
        except ConnectionResetError:
            ft_error("Server died :c")
            self.disconnect()
        except Exception as e:
            ft_error(e)
Example #3
0
    def __init__(self, master, async_loop):
        Frame.__init__(self, master)
        self.async_loop = async_loop
        Frame.configure(self)
        self.master = master
        self.master.protocol("WM_DELETE_WINDOW", self.on_closing)
        self.file_widgets = []
        self.current_row = 3
        self.client = None

        menu = Menu(self)
        menu.add_command(label='Upload to server', command=self.load_to_serv)
        self.master.config(menu=menu)

        from frames.StartPage import TCP_IP
        from frames.StartPage import TCP_PORT
        info = "IP: " + str(TCP_IP) + "\tPORT: " + str(TCP_PORT)
        Label(self, text=info).grid(row=1, column=1)
        Button(self, text="Disconnect", command=self.disconnect).grid(row=1,
                                                                      column=2)
        Button(self, text="Upload to server",
               command=self.load_to_serv).grid(row=2, column=1)
        try:
            self.client = Client(TCP_IP, TCP_PORT)
            files = self.client.get_name_files()
            self.add_file_rows_to_root(files)
        except ConnectionRefusedError:
            raise ConnectionRefusedError
        except ConnectionResetError:
            ft_error("Server died :c")
            self.disconnect()
        except Exception as e:
            ft_error(e)
Example #4
0
    def __init__(self, master, async_loop):
        Frame.__init__(self, master)
        self.async_loop = async_loop
        Frame.configure(self)
        self.master = master
        self.master.protocol("WM_DELETE_WINDOW", self.on_closing)
        self.file_widgets = []
        self.current_row = 3
        self.client = None

        menu = Menu(self)
        # menu.add_command(label='Upload to server', command=self.load_to_serv)
        self.master.config(menu=menu)

        from frames.StartPage import ADR_SRC
        from frames.StartPage import ADR_DEST
        info = "Sender Address: " + str(ADR_SRC) + "\tDestination Address: " + str(ADR_DEST)
        Label(self, text=info).grid(row=1, column=1)

        do_ip_callback = functools.partial(do_ip_package, "First_package", ADR_SRC, ADR_DEST)
        Button(self, text="Do IP Package", command=do_ip_callback).grid(row=1, column=2)

        try:
            a = 0
            # self.client = Client(ADR_SRC, ADR_DEST)
            # files = self.client.get_name_files()
        except Exception as e:
            ft_error(e)
Example #5
0
def get_params(e1, e2, master):
    try:
        global TCP_IP, TCP_PORT
        TCP_IP = str(e1.get())
        if re.fullmatch(r'(?:[0-9]{1,3}\.){3}[0-9]{1,3}', TCP_IP) is None:
            raise Exception("Invalid IP! IP must be like 127.0.0.1!")
        TCP_PORT = int(e2.get())
        print(TCP_IP, TCP_PORT)
        master.switch_frame(PageOne)
    except ConnectionRefusedError:
        ft_error("Server is not available :c")
    except ValueError:
        ft_error("Invalid port! Port must be a number!")
    except Exception as e:
        ft_error(e)
Example #6
0
def get_params(e1, e2, master):
    try:
        global ADR_SRC, ADR_DEST
        ADR_SRC = str(e1.get())
        if re.fullmatch(r'(?:[0-9]{1,3}\.){3}[0-9]{1,3}', ADR_SRC) is None:
            raise Exception(
                "Invalid Sender Address! Address must be like 127.0.0.1!")
        ADR_DEST = str(e2.get())
        if re.fullmatch(r'(?:[0-9]{1,3}\.){3}[0-9]{1,3}', ADR_DEST) is None:
            raise Exception(
                "Invalid Destination Address! Address must be like 127.0.0.1!")
        print(ADR_SRC, ADR_DEST)
        master.switch_frame(PageOne)
    except ConnectionRefusedError:
        ft_error("Server is not available :c")
    except ValueError:
        ft_error("Invalid port! Port must be a number!")
    except Exception as e:
        ft_error(e)