from tkinter import *
from tkinter.messagebox import *


from time import localtime as lc
from datetime import datetime as dt

# Criação da janela principal
sistema = Tk()
sistema.title('Mynelle - Sistema de Pausas')  # Definição de título
sistema.iconbitmap('imagens/clock.ico')

# Criando painel
painel_texto = StringVar()
painel_texto.set('Mynelle')
painel = Label(sistema,
               textvariable=painel_texto,
               height=2,
               font='Arial 15 bold'
               ).grid(row=0,
                      columnspan=4,
                      sticky='we')

# Criando variáveis
hora_pausa = []  # Lista para receber os horários das pausas

# Funções


def cadastroPausa1():
    hora = []
    hora_temp = pausa1.get()
    for c in hora_temp:
        hora.append(c)
    if len(hora) != 4:
        showinfo(title='ERRO! Max 4 caracteres!', message='Informe a pausa com 4 dígitos \
sendo dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
    else:
        hora_temp = str(hora[0]) + str(hora[1]) + str(hora[2]) + str(hora[3])
        print(type(hora_temp), hora_temp)
        try:
            hora_temp = int(hora_temp)
        except:
            showinfo(title='ERRO! Formato não numérico!',
                     message='Favor informar a data e hora em formato \
numérico, com dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
        else:
            if hora_temp not in hora_pausa:
                hora_pausa.append(hora_temp)
                vis_cadastro_pausa1['text'] = hora_temp
                pausa1.delete(0, 'end')
            else:
                showinfo(title='ERRO! Repetição!', message='A hora inserida já está cadastrada no sistema!')



def cadastroPausa2() -> None:
    hora = []
    hora_temp = pausa2.get()
    for c in hora_temp:
       hora.append(c)
    if len(hora) != 4:
        showinfo(title='ERRO! Max 4 caracteres!', message='Informe a pausa com 4 dígitos \
sendo dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
    else:
        hora_temp = str(hora[0]) + str(hora[1]) + str(hora[2]) + str(hora[3])
        print(type(hora_temp), hora_temp)
        try:
            hora_temp = int(hora_temp)
        except:
            showinfo(title='ERRO! Formato não numérico!',
                     message='Favor informar a data e hora em formato \
numérico, com dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
        else:
            if hora_temp not in hora_pausa:
                hora_pausa.append(hora_temp)
                vis_cadastro_pausa2['text'] = hora_temp
                pausa2.delete(0, 'end')
            else:
                showinfo(title='ERRO! Repetição!', message='A hora inserida já está cadastrada no sistema!')



def cadastroPausa3():
    hora = []
    hora_temp = pausa3.get()
    for c in hora_temp:
        hora.append(c)
    if len(hora) != 4:
        showinfo(title='ERRO! Max 4 caracteres!', message='Informe a pausa com 4 dígitos \
sendo dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
    else:
        hora_temp = str(hora[0]) + str(hora[1]) + str(hora[2]) + str(hora[3])
        print(type(hora_temp), hora_temp)
        try:
            hora_temp = int(hora_temp)
        except:
            showinfo(title='ERRO! Formato não numérico!',
                     message='Favor informar a data e hora em formato \
numérico, com dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
        else:
            if hora_temp not in hora_pausa:
                hora_pausa.append(hora_temp)
                vis_cadastro_pausa3['text'] = hora_temp
                pausa3.delete(0, 'end')
            else:
                showinfo(title='ERRO! Repetição!', message='A hora inserida já está cadastrada no sistema!')



def iniciar():
    pass


def encerrar():
    pass


def reset():
    pass


def relatorio():
    pass


def ajuda():
    pass


# Criando caixa de texto para receber pausas
pausa1 = Entry(sistema)
pausa1.grid(row=1, column=0)
pausa2 = Entry(sistema)
pausa2.grid(row=2, column=0)
pausa3 = Entry(sistema)
pausa3.grid(row=3, column=0)

# Criando botões de cadastro das pausas
bt_cadastro1 = Button(sistema,
                      text='Cadastre a 1ª pausa descanso',
                      command=cadastroPausa1).grid(row=1, column=1)
bt_cadastro2 = Button(sistema,
                      text='Cadastre a pausa lanche',
                      command=cadastroPausa2).grid(row=2, column=1)
bt_cadastro3 = Button(sistema,
                      text='Cadastre a 2ª pausa descanso',
                      command=cadastroPausa3).grid(row=3, column=1)

# Criando botões de registro das pausas
bt_registro1 = Button(sistema, text='Registrar Pausa').grid(row=1, column=2)
bt_registro2 = Button(sistema, text='Registrar Pausa').grid(row=2, column=2)
bt_registro3 = Button(sistema, text='Registrar Pausa').grid(row=3, column=2)

# Criando botões de retorno das pausas
bt_retorno1 = Button(sistema, text='Registrar Retorno').grid(row=1, column=3)
bt_retorno2 = Button(sistema, text='Registrar Retorno').grid(row=2, column=3)
bt_retorno3 = Button(sistema, text='Registrar Retorno').grid(row=3, column=3)

# Criando Labels para visualização das pausas

vis_cadastro_pausa1 = Label(sistema)
vis_cadastro_pausa1.grid(row=4, column=1)
vis_cadastro_pausa2 = Label(sistema)
vis_cadastro_pausa2.grid(row=5, column=1)
vis_cadastro_pausa3 = Label(sistema)
vis_cadastro_pausa3.grid(row=6, column=1)

# Criando botões gerenciais

bt_iniciar = Button(sistema, text='INICIAR').grid(row=4, column=0)
bt_reset = Button(sistema, text='RESET').grid(row=6, column=0)
bt_relatorio = Button(sistema, text='RELATÓRIO').grid(row=5, column=4)
bt_finalizar = Button(sistema, text='ENCERRAR').grid(row=5, column=5)


sistema.mainloop()

from tkinter import *
from tkinter.messagebox import *


from time import localtime as lc
from datetime import datetime as dt

# Criação da janela principal
sistema = Tk()
sistema.title('Mynelle - Sistema de Pausas')  # Definição de título
sistema.iconbitmap('imagens/clock.ico')

# Criando painel
painel_texto = StringVar()
painel_texto.set('Mynelle')
painel = Label(sistema,
               textvariable=painel_texto,
               height=2,
               font='Arial 15 bold'
               ).grid(row=0,
                      columnspan=4,
                      sticky='we')

# Criando variáveis
hora_pausa = []  # Lista para receber os horários das pausas

# Funções


def cadastroPausa1():
    hora = []
    hora_temp = pausa1.get()
    for c in hora_temp:
        hora.append(c)
    if len(hora) != 4:
        showinfo(title='ERRO! Max 4 caracteres!', message='Informe a pausa com 4 dígitos \
sendo dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
    else:
        hora_temp = str(hora[0]) + str(hora[1]) + str(hora[2]) + str(hora[3])
        print(type(hora_temp), hora_temp)
        try:
            hora_temp = int(hora_temp)
        except:
            showinfo(title='ERRO! Formato não numérico!',
                     message='Favor informar a data e hora em formato \
numérico, com dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
        else:
            if hora_temp not in hora_pausa:
                hora_pausa.append(hora_temp)
                vis_cadastro_pausa1['text'] = hora_temp
                pausa1.delete(0, 'end')
            else:
                showinfo(title='ERRO! Repetição!', message='A hora inserida já está cadastrada no sistema!')



def cadastroPausa2() -> None:
    hora = []
    hora_temp = pausa2.get()
    for c in hora_temp:
       hora.append(c)
    if len(hora) != 4:
        showinfo(title='ERRO! Max 4 caracteres!', message='Informe a pausa com 4 dígitos \
sendo dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
    else:
        hora_temp = str(hora[0]) + str(hora[1]) + str(hora[2]) + str(hora[3])
        print(type(hora_temp), hora_temp)
        try:
            hora_temp = int(hora_temp)
        except:
            showinfo(title='ERRO! Formato não numérico!',
                     message='Favor informar a data e hora em formato \
numérico, com dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
        else:
            if hora_temp not in hora_pausa:
                hora_pausa.append(hora_temp)
                vis_cadastro_pausa2['text'] = hora_temp
                pausa2.delete(0, 'end')
            else:
                showinfo(title='ERRO! Repetição!', message='A hora inserida já está cadastrada no sistema!')



def cadastroPausa3():
    hora = []
    hora_temp = pausa3.get()
    for c in hora_temp:
        hora.append(c)
    if len(hora) != 4:
        showinfo(title='ERRO! Max 4 caracteres!', message='Informe a pausa com 4 dígitos \
sendo dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
    else:
        hora_temp = str(hora[0]) + str(hora[1]) + str(hora[2]) + str(hora[3])
        print(type(hora_temp), hora_temp)
        try:
            hora_temp = int(hora_temp)
        except:
            showinfo(title='ERRO! Formato não numérico!',
                     message='Favor informar a data e hora em formato \
numérico, com dois dígitos para a hora \
e dois dígitos para os minutos.\n\
Exemplo: 1320 (13 horas e 20 minutos)')
        else:
            if hora_temp not in hora_pausa:
                hora_pausa.append(hora_temp)
                vis_cadastro_pausa3['text'] = hora_temp
                pausa3.delete(0, 'end')
            else:
                showinfo(title='ERRO! Repetição!', message='A hora inserida já está cadastrada no sistema!')



def iniciar():
    pass


def encerrar():
    pass


def reset():
    pass


def relatorio():
    pass


def ajuda():
    pass


# Criando caixa de texto para receber pausas
pausa1 = Entry(sistema)
pausa1.grid(row=1, column=0)
pausa2 = Entry(sistema)
pausa2.grid(row=2, column=0)
pausa3 = Entry(sistema)
pausa3.grid(row=3, column=0)

# Criando botões de cadastro das pausas
bt_cadastro1 = Button(sistema,
                      text='Cadastre a 1ª pausa descanso',
                      command=cadastroPausa1).grid(row=1, column=1)
bt_cadastro2 = Button(sistema,
                      text='Cadastre a pausa lanche',
                      command=cadastroPausa2).grid(row=2, column=1)
bt_cadastro3 = Button(sistema,
                      text='Cadastre a 2ª pausa descanso',
                      command=cadastroPausa3).grid(row=3, column=1)

# Criando botões de registro das pausas
bt_registro1 = Button(sistema, text='Registrar Pausa').grid(row=1, column=2)
bt_registro2 = Button(sistema, text='Registrar Pausa').grid(row=2, column=2)
bt_registro3 = Button(sistema, text='Registrar Pausa').grid(row=3, column=2)

# Criando botões de retorno das pausas
bt_retorno1 = Button(sistema, text='Registrar Retorno').grid(row=1, column=3)
bt_retorno2 = Button(sistema, text='Registrar Retorno').grid(row=2, column=3)
bt_retorno3 = Button(sistema, text='Registrar Retorno').grid(row=3, column=3)

# Criando Labels para visualização das pausas

vis_cadastro_pausa1 = Label(sistema)
vis_cadastro_pausa1.grid(row=4, column=1)
vis_cadastro_pausa2 = Label(sistema)
vis_cadastro_pausa2.grid(row=5, column=1)
vis_cadastro_pausa3 = Label(sistema)
vis_cadastro_pausa3.grid(row=6, column=1)

# Criando botões gerenciais

bt_iniciar = Button(sistema, text='INICIAR').grid(row=4, column=0)
bt_reset = Button(sistema, text='RESET').grid(row=6, column=0)
bt_relatorio = Button(sistema, text='RELATÓRIO').grid(row=5, column=4)
bt_finalizar = Button(sistema, text='ENCERRAR').grid(row=5, column=5)


sistema.mainloop()

# Criação da janela principal # Definição de título # Criando painel # Criando variáveis # Lista para receber os horários das pausas # Funções # Criando caixa de texto para receber pausas # Criando botões de cadastro das pausas # Criando botões de registro das pausas # Criando botões de retorno das pausas # Criando Labels para visualização das pausas # Criando botões gerenciais