diff --git a/bananaSPLIT/guimain.py b/bananaSPLIT/guimain.py index a6ee535..a53b339 100644 --- a/bananaSPLIT/guimain.py +++ b/bananaSPLIT/guimain.py @@ -21,7 +21,6 @@ from libsplit import bananaSPLITTER from PyQt5.QtCore import QDir,pyqtSignal from slugify import slugify - class bananaMain(PyQt5.QtWidgets.QMainWindow): def __init__(self): PyQt5.QtWidgets.QMainWindow.__init__(self) @@ -159,22 +158,24 @@ class bananaTitolo(PyQt5.QtWidgets.QWidget): # imposta predefiniti interfaccia da file #Data (la piu complicata) self.titoloui.chk_data.setChecked(self.conf.getParam('docStruct','outDate')) - if self.conf.getParam('docStruct', 'outDateType') is 'jpn': - self.titoloui.rad_datajpn.setChecked(True) - elif self.conf.getParam('docStruct', 'outDateType') is 'it': - self.titoloui.rad_dataita.setChecked(True) - elif self.conf.getParam('docStruct', 'outDateType') is 'usa': - self.titoloui.rad_datausa.setChecked(True) + self.titoloui.rad_datajpn.setChecked(self.conf.getParam('docStruct', 'outDateType') is 'jpn') + self.titoloui.rad_dataita.setChecked(self.conf.getParam('docStruct', 'outDateType') is 'it') + self.titoloui.rad_datausa.setChecked(self.conf.getParam('docStruct', 'outDateType') is 'usa') #Titolo self.titoloui.chk_titolo.setChecked(self.conf.getParam('docStruct','outTitle')) self.titoloui.spn_ncarat.setValue(self.conf.getParam('docStruct', 'maxTitleLen')) #Numero Documento self.titoloui.chk_docnum.setChecked(self.conf.getParam('docStruct','outNumber')) #Separatore - for c in self.titoloui.lyt_sep.children(): - if isinstance(c, PyQt5.QtWidgets.QRadioButton): - if c.text() == self.conf.getParam('docStruct', 'outNameSep'): - c.setChecked(True) + found=False + for itmn in range(self.titoloui.lyt_sep.count()): + itm=self.titoloui.lyt_sep.itemAt(itmn).widget() + if isinstance(itm, PyQt5.QtWidgets.QRadioButton): + if itm.text() == self.conf.getParam('docStruct', 'outNameSep'): + itm.setChecked(True) + found = True + if not found: + self.titoloui.rad_altro.setChecked(True) self.titoloui.lin_altro.setText(self.conf.getParam('docStruct', 'customSep')) pass @@ -185,40 +186,62 @@ class bananaTitolo(PyQt5.QtWidgets.QWidget): def avanzateOk(self): self.log.debug("Avanzate Accettate") + c=self.conf + #data if self.advtitolo.titoloavui.rad_dataprimo: - self.conf.setParam(('docStruct', 'datePos'), 1) + c.setParam(('docStruct', 'datePos'), 1) elif self.advtitolo.titoloavui.rad_datasecondo: - self.conf.setParam(('docStruct', 'datePos'), 2) + c.setParam(('docStruct', 'datePos'), 2) elif self.advtitolo.titoloavui.rad_dataterzo: - self.conf.setParam(('docStruct', 'datePos'), 3) + c.setParam(('docStruct', 'datePos'), 3) else: - self.conf.setParam(('docStruct', 'datePos'), -1) - + c.setParam(('docStruct', 'datePos'), -1) + #numero if self.advtitolo.titoloavui.rad_numeroprimo: - self.conf.setParam(('docStruct', 'numberPos'), 1) + c.setParam(('docStruct', 'numberPos'), 1) elif self.advtitolo.titoloavui.rad_numerosecondo: - self.conf.setParam(('docStruct', 'numberPos'), 2) + c.setParam(('docStruct', 'numberPos'), 2) elif self.advtitolo.titoloavui.rad_numeroterzo: - self.conf.setParam(('docStruct', 'numberPos'), 3) + c.setParam(('docStruct', 'numberPos'), 3) else: - self.conf.setParam(('docStruct', 'numberPos'), -1) - + c.setParam(('docStruct', 'numberPos'), -1) + #titolo if self.advtitolo.titoloavui.rad_titoloprimo: - self.conf.setParam(('docStruct', 'titlePos'), 1) + c.setParam(('docStruct', 'titlePos'), 1) elif self.advtitolo.titoloavui.rad_titolosecondo: - self.conf.setParam(('docStruct', 'titlePos'), 2) + c.setParam(('docStruct', 'titlePos'), 2) elif self.advtitolo.titoloavui.rad_titoloterzo: - self.conf.setParam(('docStruct', 'titlePos'), 3) + c.setParam(('docStruct', 'titlePos'), 3) else: - self.conf.setParam(('docStruct', 'titlePos'), -1) - + c.setParam(('docStruct', 'titlePos'), -1) + #prefisso e suffisso + c.setParam(('docStruct', 'outPrefix'), self.advtitolo.titoloavui.txt_prefisso.text()) + c.setParam(('docStruct', 'outSuffix'), self.advtitolo.titoloavui.txt_suffisso.text()) + def avanzateKo(self): self.log.debug("Avanzate Rifiutate") pass def applica(self): self.log.info("Applico impostazioni Titolo") - pass + c=self.conf + c.setParam(('docStruct','outDate'),self.titoloui.chk_data.isChecked()) + c.setParam(('docStruct','outNumber'),self.titoloui.chk_docnum.isChecked()) + c.setParam(('docStruct','outTitle'),self.titoloui.chk_titolo.isChecked()) + if self.titoloui.rad_dataita.isChecked(): + c.setParam(('docStruct','outDateType'),'ita') + elif self.titoloui.rad_datajpn.isChecked(): + c.setParam(('docStruct','outDateType'),'jpn') + elif self.titoloui.rad_datausa.isChecked(): + c.setParam(('docStruct','outDateType'),'usa') + c.setParam(('docStruct','maxTitleLen'), self.titoloui.spn_ncarat.value()) + c.setParam(('docStruct', 'customSep'),self.titoloui.lin_altro.text()) + for itmn in range(self.titoloui.lyt_sep.count()): + itm=self.titoloui.lyt_sep.itemAt(itmn).widget() + if isinstance(itm, PyQt5.QtWidgets.QRadioButton): + if len(itm.text())==1 and itm.isChecked: + c.setParam(('docStruct', 'outNameSep'), itm.text()) + pass class bananaTitoloAvanzate(PyQt5.QtWidgets.QWidget): okSig = pyqtSignal(bool, name="OK") @@ -242,6 +265,18 @@ class bananaTitoloAvanzate(PyQt5.QtWidgets.QWidget): self.titoloavui.rad_titoloterzo.clicked.connect(self.gestisciBottoni) self.conf = confloader self.log = logger + #rimepi interfaccia + self.titoloavui.rad_dataprimo.setChecked(self.conf.getParam('docStruct','datePos')==1) + self.titoloavui.rad_datasecondo.setChecked(self.conf.getParam('docStruct','datePos')==2) + self.titoloavui.rad_dataterzo.setChecked(self.conf.getParam('docStruct','datePos')==3) + self.titoloavui.rad_titoloprimo.setChecked(self.conf.getParam('docStruct','titlePos')==1) + self.titoloavui.rad_titolosecondo.setChecked(self.conf.getParam('docStruct','titlePos')==2) + self.titoloavui.rad_titoloterzo.setChecked(self.conf.getParam('docStruct','titlePos')==3) + self.titoloavui.rad_numeroprimo.setChecked(self.conf.getParam('docStruct','numberPos')==1) + self.titoloavui.rad_numerosecondo.setChecked(self.conf.getParam('docStruct','numberPos')==2) + self.titoloavui.rad_numeroterzo.setChecked(self.conf.getParam('docStruct','numberPos')==3) + self.titoloavui.txt_prefisso.setText(self.conf.getParam('docStruct','outPrefix')) + self.titoloavui.txt_suffisso.setText(self.conf.getParam('docStruct','outSuffix')) pass def gestisciBottoni(self): diff --git a/bananaSPLIT/libbananasplit/defaults.json b/bananaSPLIT/libbananasplit/defaults.json index 52052da..9e934d9 100644 --- a/bananaSPLIT/libbananasplit/defaults.json +++ b/bananaSPLIT/libbananasplit/defaults.json @@ -22,7 +22,7 @@ "titlePos": 3, "maxTitleLen": 32, "outNameSep": "-", - "customSep": "", + "customSep": "~", "dateFormats": { "jpn": "{year:04d}{month:02d}{day:02d}", "it": "{day:02d}{month:02d}{year:04d}",