O arquivo de configuração atual é o seguinte:
mainwindow.title = 'test'
mainwindow.position.x = 100
mainwindow.position.y = 200
mainwindow.button.label = 'apply'
mainwindow.button.size.x = 100
mainwindow.button.size.y = 30
logger.datarate = 100
logger.enable = True
logger.filename = './test.log'
Isso é lido com python em um dicionário aninhado:
{
'mainwindow':{
'button':{
'label': {'value':'apply'},
...
},
'logger':{
datarate: {'value': 100},
enable: {'value': True},
filename: {'value': './test.log'}
},
...
}
Existe um jeito melhor de fazer isso? A idéia é obter o tipo de comportamento XML e evitar o XML o maior tempo possível. O usuário final é assumido quase totalmente como analfabeto do computador e basicamente usa o bloco de notas e copiar e colar. Portanto, o tipo "cabeçalho + variáveis" padrão do python é considerado muito difícil.
O usuário fictício edita o arquivo de configuração, programadores capazes manipulam os dicionários. O dicionário aninhado é escolhido para facilitar a divisão (o logger não precisa ou nem pode ter / editar parâmetros da janela principal).
Do what I want.
É o mais difícil para os computadores, embora: P
mainwindow.title =='test"