lettura e settaggio dei parametri in modo ricorsivo funzionante

This commit is contained in:
2019-12-18 21:00:15 +01:00
parent 705a6ce85c
commit b2d3a03da8
3 changed files with 21 additions and 11 deletions

View File

@@ -19,10 +19,13 @@ from libsplit import bananaSPLITTER
class bananaMain(PyQt5.QtWidgets.QMainWindow):
def __init__(self):
PyQt5.QtWidgets.QMainWindow.__init__(self)
self.logger = fancyLogger(fileLog=False)
self.conf = bananaCONF(workdir=r"./libbananasplit", logger=self.logger)
self.conf.open()
self.conf.use("testEN.json")
try:
self.logger = fancyLogger(filepath=r"./libbananasplit/loggerconf.json",fileLog=False)
self.conf = bananaCONF(workdir=r"./libbananasplit", logger=self.logger)
self.conf.open()
self.conf.use("testEN.json")
except:
sys.exit()
# inizializzazione interfaccia
self.ui = Ui_mainwin()
@@ -76,7 +79,8 @@ class bananaMain(PyQt5.QtWidgets.QMainWindow):
def openSavePreset(self):
self.logger.debug("Apri Salva Preset")
self.logger.debug(str(self.conf.setParam("pippo",'paths', 'INworkPath')))
self.conf.setParam(val="pippo",keys=('paths','INworkPath',))
self.logger.debug(str(self.conf.getParam('paths')))
pass
def openAdvOpt(self):

View File

@@ -5,6 +5,7 @@ Created on 2 nov 2019
'''
import json,os,glob,copy
from xml.dom import INUSE_ATTRIBUTE_ERR
from builtins import True
class bananaCONF(object):
'''
@@ -79,11 +80,16 @@ class bananaCONF(object):
return rv
pass
def setParam(self, val, *keys):
def setParam(self, keys=(), val=None):
sv = self.settingsList[self.inUse]
for k in keys:
sv = *sv[k]
sv = val
try:
for k in keys[:-1]:
sv = sv[k]
sv[keys[-1]] = val
return True
except ValueError as ve:
self.log.error("Parametro di configurazione non valido! [{}]".format(ve))
return False
pass

View File

@@ -3,11 +3,10 @@ Created on 2 nov 2019
@author: Emanuele Trabattoni
'''
import sys
import sys, os
import json
import logging
import colorama
from bananaSPLIT.main import fp
class fancyLogger(object):
'''
@@ -15,6 +14,7 @@ class fancyLogger(object):
'''
def __init__(self, filepath=None, name="Logger", consoleLog=True, fileLog=False):
try:
print(os.getcwd())
with open(filepath, 'r') as fp:
settings = json.load(fp)
fp.close()