2018-05-18 06:49:19 +00:00
|
|
|
#!/usr/bin/env python3
|
|
|
|
# -*-coding:utf-8 -*
|
|
|
|
|
|
|
|
import tkinter as tk
|
|
|
|
from pdfembannersrc import choice
|
|
|
|
import logging
|
|
|
|
import argparse
|
|
|
|
|
|
|
|
#TODO :
|
|
|
|
# * Remove Forms
|
|
|
|
|
|
|
|
parser = argparse.ArgumentParser(description="""
|
|
|
|
PDF Embanner
|
|
|
|
Program to manipulate PDFs based on PyPDF2 python library
|
|
|
|
|
|
|
|
use pdfembanner to launch GUI
|
|
|
|
""", formatter_class=argparse.RawDescriptionHelpFormatter)
|
|
|
|
parser.add_argument('--verbose', '-v', action='count')
|
|
|
|
args = parser.parse_args()
|
|
|
|
|
|
|
|
# Logger
|
|
|
|
logger = logging.getLogger()
|
|
|
|
logger.setLevel(logging.DEBUG)
|
|
|
|
|
|
|
|
console_handler = logging.StreamHandler()
|
|
|
|
if(args.verbose is not None):
|
|
|
|
if(args.verbose==1):
|
|
|
|
console_handler.setLevel(logging.WARN)
|
|
|
|
elif(args.verbose==2):
|
|
|
|
console_handler.setLevel(logging.INFO)
|
|
|
|
elif(args.verbose>=3):
|
|
|
|
console_handler.setLevel(logging.DEBUG)
|
|
|
|
else:
|
|
|
|
console_handler.setLevel(logging.ERROR)
|
|
|
|
formatter = logging.Formatter('%(levelname)s :: %(message)s')
|
|
|
|
console_handler.setFormatter(formatter)
|
|
|
|
logger.addHandler(console_handler)
|
|
|
|
|
2018-05-26 07:37:23 +00:00
|
|
|
if(args.verbose is not None and args.verbose>=2):
|
2018-05-18 06:49:19 +00:00
|
|
|
logger.info("Logger level set to {}".format("INFO" if args.verbose==2 else "DEBUG"))
|
|
|
|
logger.debug("Launching app")
|
|
|
|
|
|
|
|
|
|
|
|
# Main window
|
|
|
|
fenetre = tk.Tk()
|
|
|
|
fenetre.geometry("+400+200")
|
|
|
|
fenetre.title("PDF Embanner")
|
|
|
|
interface = choice.Choice(fenetre)
|
|
|
|
fenetre.resizable(0,0)
|
|
|
|
fenetre.bind("<Escape>", interface.close)
|
|
|
|
fenetre.bind("1", interface.do1)
|
|
|
|
fenetre.bind("2", interface.do2)
|
|
|
|
fenetre.bind("3", interface.do3)
|
|
|
|
fenetre.bind("4", interface.do4)
|
|
|
|
fenetre.bind("5", interface.do5)
|
|
|
|
fenetre.bind("6", interface.do6)
|
|
|
|
fenetre.bind("7", interface.do7)
|
|
|
|
logger.debug("App launched")
|
|
|
|
|
|
|
|
fenetre.mainloop()
|
|
|
|
logger.debug("App closed")
|
|
|
|
|