integrar interface gráfico na aplicação
This commit is contained in:
33
main.py
33
main.py
@ -3,18 +3,30 @@
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from modules import scanner, copier
|
from modules import scanner, copier
|
||||||
from modules.logger import logger
|
from modules.logger import logger
|
||||||
|
from modules.gui import UniqGUI
|
||||||
|
import tkinter as tk
|
||||||
|
|
||||||
|
|
||||||
|
def main_gui():
|
||||||
|
# interface gráfica
|
||||||
|
root = tk.Tk()
|
||||||
|
app = UniqGUI(root)
|
||||||
|
root.mainloop()
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
# Mostrar menu e interagir com o utilizador
|
# Mostrar menu e interagir com o utilizador
|
||||||
# Receber caminho da origem e destino
|
# Receber caminho da origem e destino
|
||||||
caminho_pasta_origem = input("Introduza caminho da pasta de origem: ").strip()
|
caminho_pasta_origem = input(
|
||||||
|
"Introduza caminho da pasta de origem: ").strip()
|
||||||
if not Path(caminho_pasta_origem).is_dir():
|
if not Path(caminho_pasta_origem).is_dir():
|
||||||
logger.error("Caminho '%s' não é um directório válido.", caminho_pasta_origem)
|
logger.error("Caminho '%s' não é um directório válido.",
|
||||||
|
caminho_pasta_origem)
|
||||||
raise NotADirectoryError(
|
raise NotADirectoryError(
|
||||||
f"Erro: {caminho_pasta_origem} não é um directório válido"
|
f"Erro: {caminho_pasta_origem} não é um directório válido"
|
||||||
)
|
)
|
||||||
caminho_pasta_destino = input("Introduza caminho da pasta de destino: ").strip()
|
caminho_pasta_destino = input(
|
||||||
|
"Introduza caminho da pasta de destino: ").strip()
|
||||||
if not Path(caminho_pasta_destino).is_dir():
|
if not Path(caminho_pasta_destino).is_dir():
|
||||||
logger.info(
|
logger.info(
|
||||||
"Não foi encontrado directório de destino '%s'. criado directório.",
|
"Não foi encontrado directório de destino '%s'. criado directório.",
|
||||||
@ -36,7 +48,8 @@ def main():
|
|||||||
== "s"
|
== "s"
|
||||||
)
|
)
|
||||||
# definir formato de data
|
# definir formato de data
|
||||||
formato_data: str = input("Defina um formato de data (defeito: %d-%m-%Y): ").strip()
|
formato_data: str = input(
|
||||||
|
"Defina um formato de data (defeito: %d-%m-%Y): ").strip()
|
||||||
if not formato_data:
|
if not formato_data:
|
||||||
formato_data = "%d-%m-%Y"
|
formato_data = "%d-%m-%Y"
|
||||||
# excluir duplicados?
|
# excluir duplicados?
|
||||||
@ -47,8 +60,10 @@ def main():
|
|||||||
# criar lista de ficheiros que estão na origem
|
# criar lista de ficheiros que estão na origem
|
||||||
# excluir os duplicados
|
# excluir os duplicados
|
||||||
if excluir_duplicados:
|
if excluir_duplicados:
|
||||||
dicionario_ficheiros = scanner.listar_ficheiros_unicos(caminho_pasta_origem)
|
dicionario_ficheiros = scanner.listar_ficheiros_unicos(
|
||||||
lista_ficheiros = [ficheiros[0] for ficheiros in dicionario_ficheiros.values()]
|
caminho_pasta_origem)
|
||||||
|
lista_ficheiros = [ficheiros[0]
|
||||||
|
for ficheiros in dicionario_ficheiros.values()]
|
||||||
# ou manter todos os ficheiros
|
# ou manter todos os ficheiros
|
||||||
else:
|
else:
|
||||||
lista_ficheiros = scanner.listar_ficheiros(caminho_pasta_origem)
|
lista_ficheiros = scanner.listar_ficheiros(caminho_pasta_origem)
|
||||||
@ -67,8 +82,10 @@ def main():
|
|||||||
usar_data_criacao,
|
usar_data_criacao,
|
||||||
formato_data,
|
formato_data,
|
||||||
)
|
)
|
||||||
print(f"Concluida a cópia de {len(lista_ficheiros)} para {caminho_pasta_destino}.")
|
print(f"Concluida a cópia de {len(lista_ficheiros)} para {
|
||||||
|
caminho_pasta_destino}.")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
main()
|
# main()
|
||||||
|
main_gui()
|
||||||
|
|||||||
Reference in New Issue
Block a user