Added DB autoload on startup option

This commit is contained in:
Marco Dalla Tiezza
2024-06-06 19:06:45 +02:00
parent faf9a5293a
commit 485eccb373
6 changed files with 223 additions and 165 deletions

View File

@@ -6401,71 +6401,77 @@ Mode: Image.Pres\
erveAspectFit\x0d\x0a \ erveAspectFit\x0d\x0a \
}\x0d\x0a }\x0d\ }\x0d\x0a }\x0d\
\x0a}\x0d\x0a\ \x0a}\x0d\x0a\
\x00\x00\x03\xf0\ \x00\x00\x04P\
\x00\ \x00\
\x00\x0f\xd5x\xda\xddWQo\xdb6\x10~/\xd0\xff\ \x00\x12tx\xda\xddX_o\xdb6\x10\x7f/\xd0\xef\
\xc0\xea\xc9F7\xc5i;lp\x97\x07\xdb\x05\xda\x00\ \xc0\xfa\xc9FW\xc5\xe96l\xf0\x96\x07\xdb\x01\xb6\x00\
\x0d\x9a&\x19\x8aa\xd8\x03-\x9dd\xc2\x14\xa9\x90T\ \x0d\x9a\xc6\x19\x8aa\xd8\x03-\x9dd\xc2\x14\xa9\x90T\
\x1co\xf5\x7f\xdf\x91\xb4b\xc9\xa6%\x17(P`J\ \x1co\xf3w\xdf\x91\x94mI\xa6e\xe7a\xe86\xd9\
\x90\x90\xbc\xef\x8e\xc7\xe3\xdd\xf1\x8e\x15\xa5T\x86|6\ HD\xde\xef\x8e\xf7\x8f\xc7\xa3Y^He\xc8'\xf3\
\x9f+\x96,\x9f?c\xady\xfc\x85\x89T\xae\x0e\x96\ \xa9d\xf1\xf2\xf5+\xd6\x18G\x9f\x99H\xe4\xea`z\
gR\x18%\xb9>J\x88\xaf\xa8\x01\xc5(?@|\ *\x85Q\x92\xeb\xa3\x84\xe8\x96\x1aP\x8c\xf2\x03\xc4\x07\
\xa4kY\x19\xe4\xb4?^<\xf9\xf7\xf93\x82\x1fK\ \xba\x96\xa5AN\xfb\xf1\xe2\xc9\x9f\xaf_\x11|X2\
\xc7d\xe5V\xae\x15d\xa0@$\xe0\x80\x96\xb8b\xa9\ \x22+7s\xa7 \x05\x05\x22\x06\x07\xb4\xc4\x15K\xcc\
Y\x8c\xc9\x9b_F~\xbe\x00\x96/\x0c.\x8cF5\ bD\xbe\xf9v\xe8\xc7\x0b`\xd9\xc2\xe0\xc4p\xb8\x85\
d&q+\x01\xc2\xc4R\xd81\x07\x03(r+\xdd\ L%.%@\x98H\x0a\xfb\xce\xc1\x00\x8a\xac\xa4\xdb\
~\x8f\xe4\x82\xdc&\x0a@\xc4N\x1e9#\xaf\xc8\xcf\ \xe7\x99\x5c\x91Y\xac\x00D\xe4\xe4\x91\x0b\xf2\x9e\xbc#\
\xe4i\xbcC\xaewH\xbf\xd3\x16\xba\x9bx\xec\xa6\xde\ \xbb\xf7=r\xbdG\xfa\x95*\xe8~\xe0\xb1\x9b\xed\xe2\
\xbc\x90)\xe5\xcc\xac\xc7x\xd2xR\x96\x9c%\xd40\ \xb9L(gf=BK\xa3qQp\x16S\xc3\xa4\
)\xae\xec\xba\x87d\x9c\xe6\xda\xd1k\xb3\xfau\xc3\x0c\ \xb8\xb5\xf3\x1e\x92r\x9aiG\xdf\xba\xd5\xcf\x1bf8\
\x871\xb9\xd7wj\x10M\x94\x81\x82i\xdc\xaaa\x84\ \x8c\xc8\xa3~P\xfd\xdeX\x19\xc8\x99\xc6\xa5jN\xe8\
hXc5\xcb\x05\xe5D\xd3\x07\xa8M<I\x12<\ \x0d\xb6X\xcd2A9\xd1\xf4\x09\xb6.\x1e\xc71\xda\
\xf3@\x1b\xc5DN\xa8\xca\x87G\xa1w\x0b(\xa0\x8d\ \xdc\xd7F1\x91\x11\xaa\xb2\xc1Q\xe8\xc3\x02r\xe8D\
\xdc\xaaV\x89\xc4j\xeb\xd0\x13\xce\x07\xc3\xa6\xd9\x02\xbb\ \x8eK#\xb9\xa4I\x9f\x09S!*\xe5K\x11[{\
%\xb2\x98\xcb\xa9|\xf4\xd38\xa9\x14jj\xee\xe0\xd1\ <\x8a\xf3\xfe\xa0\xee\xd8\x80>\xb1\xcc\xe7r\x22\x9f\xfd\
\x0c\xc3|~\xeb\x9a\xcd\xcd\x02\x5c\x9b\x03\x85\xb8\xa4\xe9\ 0\x8aK\x85\xb6\x98\x07x6\x830\x9fWn\xcb\xe6\
\xde\xde\xd4\xfdki\x98IE\x06\x0fT\xa1\x0f\xd9;\ F\x1d\x5c;E\xe3\x05\xc4K\xbbN5\x11\xb9\x09H\
\x1e\xbdu\x83\xdf\xc9\xbe\x9a\xb2\x12\xc6\xd3^\xbel\x09\ \x06\xad\x00\xed\x0c\xb0\xa0\x96\xae\xd4\xfdkX\x94JE\
p\xfe\x97\x91\xadlrqq\xb1\xcf\xfb@y\x05\x13\ \xfaOTaV\xda\xac\x19\xfe\xe0^~$m\xb3d\
3@\xe6\xe1\x01\xab\xfd\xc2&\xb9\x14)X\x95\x90\xed\ )\x8c\xa7\xbd}\xdb\x10\xe02:%\x95lruu\
\x90e\xae\x80.\xdb\xcb\x9b\xddts\x8aM\xbc]\x8d\ \xd5\xe6}\xa2\xbc\x84\xb1\xe9#\xf3\xe0\x80\xd5>a\x17\
\xfd\xfbM\x16\xd9\xde@\xafA\x9c\xe4\x96=<\xe7\xc9\ \xde\x88\x04\xacJ\xc8v\xc82W@\x97\xcd\xe9\xcd~\
\xe6h]\xf5w\xb4\xc6;<\xbc\xcc\xaf@k\x9aC\ \xb89\xc7'>\x0e\xc6\xfe}\x91G\xaa\x88\x9dt\x88\
S\x01\x9bFRGlD\xd0-\xbab\xba\xc3\xb8h\ \x93\xdc\xf0\x87\xe7<\xdb\x1d\x8d\xd4\xf8\xa7\xbc\xb1\xcb/\
\x1d\x13\xa3*\xa8\xe55\x221j0:'N_D\ #\xb3\x8c7=\xe1\xac8\x9cv:\x1e\xc9F\xd4\xd0\
\x0d^\xbf%\xc2\xfe\xd0\xa0H\xd9\xc0.\xa8&s\xcc\ \xa8\x12j\x8b\x13\xe0\x1a^\xc0\x9eR\xc4\x1fW\xfe\x1a\
\x19\x9e\x89\xe8\x0a]Ag\x15\xe7\xeb\x17\xa4\x0el\x05\ #'\xb3[\xd0\x9af\x0d\xb1\xb6\xaa&\x8eX+(\
\xdaPL\x88nx_1\x05\xee\xae\x92\x05\x159\x8a\ 3\xdcA\xc9\x1e\xe3\x8a\xd7\xa8\xd2p?]\x15\xa6^\
0\x92\x18\xba\x04\x02Y\x06\x89\x89\xa3\xa6z\xc8(R\ \x8d\xd1\xed\xbd\xe4M\xaf\xc6\xeb\x97D\xd8/\x1a\x14)\
\xaa\xd2ie\x8c\x14\x98J\xbc\x0d\xe2O\xcb&J\x0a\ j\xd8\x05\xd5d\x8e%\xd43\x11]b\x1e\xeb\xb4\xe4\
\xeb\x81\xe5~\xee\xf3It/\xbb\xc6\x09\x97\x1a\x06\xc3\ |\xfd\x86l\xeb\x9c\x02m(\x9e\x0f\xee\xf5\xb1d\x0a\
\xb0\x99\xfd\xf0\x9a\x8a\x96}\xa9H\x16R\xe98c\x1c\ \x5c\xa2\xc5\x0b*2\x14a$1t\x09\x04\xd2\x14b\
MXR{\xaf\xcd\xfdg\x92W\x85\xf0y~_\x81\ \x13\xf5\xea\xea!\xa3H\xa8J&\xa51R`e\xf5\
0o\x08\xa1l\x9e\xbd\xc2\x1c\xc5\xc4\x98\x9c\x8f\xc2 \ >\x88>.\xeb()\xec\xf6)\xdaG\x81?SZ\
\x0eY/f.\xd1XE\x1f\xca\xc8\xb2\x09i\x83n\ \x87M\x14s\xa9\xa1?\x08\xbb\xd9\xbf\xdeQ\xd1\xf0/\
\xe4*|\x1c\xfby\x8a;\xd1\x17\xffF\xed{\xd5\x0e\ \x15\xf1B*\x1d\xa5\x8c\xa3\x0b\x0bj\x93\xb2\xbe\xfeT\
9\x07\x1e\x12\xe1\x5c\x0f\x93 \xbaT\x1d\xd6\xc4\x85M\ \xf22\x17\xfe\xd8k+\x10\xe6\x0d!\x94=vn\xb1\
\x14\xc6f\xf8\xca\xc6%{\x04~\xcb\xfeAG<\x7f\ 31\x22\x97\xc30\x88Cz\x123\x97\xe8\xac\xfc\
\x15\xc6%\x9c\x95\xb5:!\xfa1\xd5\xf7q\x9b\xd0i\ \x14\xca\xc8\xa2\x0ei\x82\xee\xe5*l\x8e}<\xc5Y\
f\xdb\xf8>v \x1b\x86\xad\x1c\x10\x86m\xdf\xf5\xf3\ \xf4\xd9\x1f\xd9\xed\xac\xda#\xe7\xc0C\x22\x5c\xeaa\xc5\
\xd7\xbf\x86\xe9O\xef\xfcoa:F2\xa0+\xfd\x15\ \xc7\x94\xda\xd6$\xe2\xf6|/\x8cM\xb1\xe9\x88\x0a\xf6\
\xa6\xda/\xba]k\x0c\xbd\xe8\xa7\x0e\xc8G\xbbI'\ \x0c|\xc6\xfe\xc0D\xbc|\x1f\xc6\xc5\x9c\x15\xa3\xd66\
\xe2\x1dU\xcb#\xd7\xf1w\xd0b\x9d\x06\xfc\x11\x1e\xe5\ <G\xf56n\x13\xb2fZ\x15\xa7c\x06\xd9m\xd8\
\xdf\xa5\xff\x8bK\xf9\xd3\xfc0\x9f\xba\x81\xb4\xd3]\xae\ (`aX\xd5\xe6\x5c~\xfd]\x98\xbek{\xbe\x0f\
\x99Xv\x03*\x85\x05j\xb7\xcb\x01\x94'\xc0\xf0M\ \xd3q'\x03\xa6\xd2oa\xaa}z\xb3\xb5\xc6\xad\xd7\
e\xb9\xec\x84L\xf1\xad\xee\xf7\xff^\xd4lME'\ \xfb\xaa\x03\xf2\xc1.\xd2\x89\xb8\xa6jy$\x1c\xbf\x07\
\xe0\x0e(\xef\x04\xbc\xb7\x15u\xbf&\xa7\xc0\x8an]\ =\xd6\xe9\xc0/\x91Q\xfeP\xfd\xbf\xa4\x94\xb7\xe6\x8b\
\xff\x04\xce\xe5\xaa\x132)\xe6\xa0:\x11\x9f\x94}\x94\ \xe5\xd4=$\x9d\xe9r\xc7\xc4\xb2\x1bP*\xec\xd7\xbb\
{/\xe9\x04\xd8T\xc9\x95\xe83\xcd\xba\xf7\x12\x1d\xe8\ S\x0e\xa08\x03\x86\x0d\x01\xcbd'd\x82\x8d\xc6\xe9\
\xbbe\xa1KL\x8b=\x09\xe8\xc36T\x0e\xa3\xf8@\ \xfc?\x89\x9a\xae\xa9\xe8\x04<\x00\xe5\x9d\x80\x9f\xec\x05\
\x9a\xafJB\xf2|&\xf2\xfd\x8d-\xc4\xa2\xe1!\x86\ \xe3\xb4&\xe7\xc0\xf2n]\x7f\x05\xce\xe5\xaa\x132\xce\
%R\xc4ZV*\xb1\x95\xd5\xbdJ\xc6g\xac\xc02\ \xe7\xa0:\x11\x1f\x95=\x94O\x06\xe9\x0c\xd8D\xc9\x95\
K\x9fY\x8a>\xb3\x15U\xac\x1f\xf2\xc0\xe9S\xa6K\ 8\xe5\x9a\xf5\xc9 :\xd0\x7f\xb1\x0a\xd9\xfe\xee\x9dm\
N\xb1\xf3\x9a\xcc\xb1\xb5\xa1\x89\xf1\x9a\xc4\xb6\xaf\x98\x82\ \xf0\xc8\x8ce7\xd7\xe4\x9a\x1a:\xa7\xd8\x0fb\xf79\
f)\x5c\xa2\x88\xa3\xc7\xc4\xb6-\x17\x05&\x13\xdf\xba\ \xb3\xfdPY\xfc\xab+S\xd5\xa6vV\xa6V+\xfb\
\xd9\xd9\x8dk\xf2\xbe>\xcd\xa7\xae\x868\x94\x80}&\ \xf2x\xdc\xe01u\x22\x14?W\xa5\xebP\xf7\x03i\
\xf6y\xcb@\xa5\xd5l\x81\x5c?\x15&\x87\xeb\xd4X\ \xbeK\x0c\xc9\xf31\xf1\xd7o\xdb\x18\xf7\x06\x87\x18\x16\
\x96 B,\x9b\x13\xaac\xfc\xfd\x0f\xae\x0e\xc4\xc5\ K\x11iY\xaa\xd8v\xba\x8f*\x1e]\xb0\x1c\xdb^\
}a)\xfa\xc2v\xb8\x91~\xca\x02QK\x98.8\
]\x8f\xc8x\x8e7o\x1a\x1b\xafId/\xb5\x13\xd0\
,\x81\x1b\x14q\xd4L\xca\xf1v\x9ecq\xf7\xbf,\
\xd8\xd1\xbd\xfb\x0d\xe2\xaf\xddx\xe2z\xbaC\x09RL\
9\xb3\xd7\x87\xd1\xb1@\xed.\xf3ar\xf8\xde\x10\xc9\
\x02D\x88es\xc6U\x0b\xbf\x7f\x03\xe3\xf0j\xd6\
\x00\x00\x09\xe5\ \x00\x00\x09\xe5\
\x00\ \x00\
\x00W]x\xda\xed\x5cko\xdb:\x12\xfd^\xa0\xff\ \x00W]x\xda\xed\x5cko\xdb:\x12\xfd^\xa0\xff\
@@ -6863,52 +6869,52 @@ O\xd8\xa2\x19K?d\x8e\xec\xf0\xd5\xef\x1d\xed\xf8]\
\xb2\x8a;[\xe5\xbc\xf3\xdf\x9f\xd6\xfc\xcf\x02fG\xbd\ \xb2\x8a;[\xe5\xbc\xf3\xdf\x9f\xd6\xfc\xcf\x02fG\xbd\
\xb5\xe2\x9d\xfd\xa9\xc0\x81AP\x19t~\xb4\xab\xf8>\ \xb5\xe2\x9d\xfd\xa9\xc0\x81AP\x19t~\xb4\xab\xf8>\
{\xe0\xcdHw\x8c-~\x7f\x01K`a9\ {\xe0\xcdHw\x8c-~\x7f\x01K`a9\
\x00\x00\x02\xbb\ \x00\x00\x02\xbf\
\x00\ \x00\
\x00\x195x\xda\xed\x98Oo\xda0\x18\xc6\xef\x93\xf6\ \x00\x199x\xda\xed\x98]o\x9b0\x14\x86\xef'\xed\
\x1d,viw\x88L\x02$D\xe2P\xb1He\x02\ ?X\xd9M\xbb\x0bd \x09\x04)\x17U\x8a\xd6H\
:B\xdan\xc7\xfcq\xc0\xaa\x89YbV\xd6\x89\xef\ \xf9P\x08M\xb7K>Lb\xd5\xc1\x198[\xda\xa9\
\xbe\x84\x94\x92\xc4N!L\x9a@\x8a\xe1\x90\xd8\xcf\xfb\ \xff}\x90\xb4\x0d`\x93\x84L\x9aR\x09'\x17`\xbf\
\xe4\xc5\xbf\xd7I0^,i\xc8\xc0\x84MV\xd8}\ \xe7\xe5\xc0s\xcc\x87\xf1rE#\x06&l\xb2\xc6\xde\
\xfa\xf8\x01\xe7\xce\xa5G\x1cx\xf4\x99\xeb\xee\xd3\x80\x85\ \xe3\xe7O8\xb7/=\xe0\xd0\xa7\xbf\xb9\xee\x1e\x0dY\
\x94D\xa5\x03\xd2\xc8f(\xc46\xe1\x14C\xfb7]\ DI\x5c: \x0d\x1d\x86\x22\xec\x10N1p\x9e\xe8\
\xb182\xf9\x0c\x18Z\x80?\xc9\x11\x88\x9b\xbf\x0a\x5c\ \x9a%\x91\xe9\xaf\xcf\xd0\x12\xfcI\xb7@\xd2\x82u\xe8\
\x86i\x00\x22\xc4\x86x6g\xd1\xd5\xd3 \xf0\xd0\xfa\ 1LC\x10#6\xc0\xf3\x05\x8b\xaf\x1e\xfb\xa1\x8f6\
:\xd1\x80\xd7\x16\xa2\xfd\xf0\xf5\xbe\x1b\xfb\xe0U\x0dz\ \xd7\xa9\x06\xbc\xb6\x08\xed\x87\xaf\xf7\xdd8\x00\xafj\xd0\
\xbd\x1e\x80\xb9\x984\xceePr)\xa1!\xe8\x81\xc6\ \xedv\x01\xcc\xc5\xec\xe2<\x06%\x8f\x12\x1a\x81.h\
\xa7\xb6\xd2u|\xbf\xb1\x17m\x00\x22\x11*\x1a5\x85\ |i\xa9\x1d7\x08\x1a{\xd1\x0b@$FE#Y\
F\xcd\x8c\x11t]\xbf\xa5\x1c4\x92\x85Fru#\ h$g\x8c\xa0\xe7\x05M\xf5\xa8\x91\x224R\xaa\x1b\
Eh\xa4d\x8c|\x88 \x84\x07\x8dZB\xa3Vu\ \xa9B#5c\x14@\x04!<j\xd4\x14\x1a5\xab\
\xa3\xb6\xd0\xa8\x9d5\xf2\x1d\xf5\x08\xa3\x8e\xd0\xa8\x933\ \x1b\xb5\x84F\xad\xacQ\xe0j'\x18\xb5\x85F\xed\x9c\
R\x9d#\x8cT\xa1\x91\x9a1B\x1a<\xe6\xa7iB\ \x91\xe6\x9e`\xa4\x09\x8d\xb4\x8c\x11\xd2\xe1)\xa7\xa6\x0b\
#\xad\xbaQWh\xd4}\xd7(=\xdcp\xeb#\xb7\ \x8d\xf4\xeaF\x1d\xa1Q\xe7\xa0\xd1n\xf3\x85\x9b\x1f\xb9\
\x04\xf2k#_\xe3\xb2\xd3\xf2\xd4l\x8ds\xb5\xabv\ )\x90\x9f\x1b\xf9\x1aW\xdc\xa6\xafek\x9c\xab]\xad\
4Y)\x08\xe4C\x82l\xad\xa9]U\xcee]\xac\ \xad+jA\xa0\x1c\x13dkM\xebhJ.\xebb\
!\xa1 [\x1bZ\xb3\xeds\x82NN\xd0jr\x82\ \x0d\x09\x05\xd9\xda\xd0\xe5V\xc0\x09\xda9AS\xe6\x04\
,K\xb5\x0d\x15N\xa0\x1d\x12t\xcb\x04o\x13\xde\xa7\ Y\x96Z\x0b\xaa\x9c@?&\xe8\x94\x09\xde/x\x8f\
d\xb5\x08\xd2;Vv\x9a\xed\xc0\x9d\xd30\x92|L\ \x92\xf52\xdc\xdd\xb1\xb2\x97\xd9\x09\xbd\x05\x8db)\xc0\
\x88\x0e\x96v\x88\x02\xb6\x1f\x8d\x96\xb6\x8b\x83\x99\x0e\xe0\ \x84\x18`\xe5D(d\xfb\xd1x\xe5x8\x9c\x1b\x00\
\xce'if|E;\x98\x11T,\x03\xec\xe9i:\ \xbe\xf9\xa4\xcdJ\x8e\xe8\x84s\x82\x8ae\x80}c\x97\
\xf9\xeemn\xba(\xf7\xa4\xa59m\x13x\xc4\x1e\x9b\ N\xbe{\x9b\x9b!\xca=m\xbb\x9c\xb6\x09<`\x9f\
\xeb\x80\x85+T\xaa\xb9EI\xb1\x88D.\xc1KQ\ -\x0c\xc0\xa25*\xd5\xdc\xa1\xb4XD\x22\x8f\xe0\x95\
?\xa3\xcb!\xf2\x99i{x\x15\xe9\xa0\x09\xb9a3\ \xa8\x9f\xd1\xd5\x00\x05\xccr|\xbc\x8e\x0d Cn\xd8\
\xb1,\x1b\x1f\xda\x0e\x22\xc5_\xba\x0dD\xeb8\x8f\x9f\ J-\xcb\xc6\x07\x8e\x8bH\xf1L\xb7\x81h\x93\xe4\xf1\
\x91\x15^5\xa6\xf7\xdf\x0c\x13L\xad;s\xd4\xb8\xe6\ 3\xb6\xa3\xab\x86\xf9\xdd\xb6\xcc\xa1\x09\xa6\xf6\xd8\x1a6\
\xa5\xef\xcf\xf2\xae\xc5\x12\xfc\x12?ulrC\xf0,\ \xaey\xf1\xe1\xeb\xfc\xd6\x12\x09~N\x9e;\x0e\xb9!\
X\xc4\x22\x1dX\xf1U\xa4\xed\xf9m?\xee@!\x1f\ x\x1e.\x13\x91\x01\xec\xe48\xd2v\xff\xae\x97t\xa0\
\xf7\x0b\x85\x0c\xbb%Q\x0feQ~|%\xc9\xa1\xc4\ \x88\x8f\xfb\x85\x22\x86\xbd\x92\xa8YYT\x90\x1cIr\
\x13\xcd\xd9\x9b`\x89\xd7\x88L\xf1\x0b\xda\xa5-\xcd\xb7\ )\xf1EW\xed]\xb0\xc2\x1bD\xa6\xf8\x19\xbd\xa5-\
\x00>CI\xc9\x87lr\xab\xbdB\xb5hgU-\ -\xb6\x08\xbeBI\xcd\x87\xbc\xe4\xe6{\x85z\xd1/\
G\xe16\xbe[\xa612j\xe0'\x01W/\x0f\xf8\ \xaa^N\x02>5g\xa6U\xf3>\x8f\xb7\xf6\x01y\
\xd4x0\xcc\x9a\xf7i\xbc;%\xbc\xb9\x87\xe1\xf9\xf0\ \xdb\xd6x\xf4\xad\xe6}\x16\xefv\x09o\xeeix9\
\x1e\xdd|\xbd\xab\xef\xe7\xa7\xe1n\x97\xe2.\xbc\x1c\x9d\ \xbc\x87\xe3[\xd3\xba\xb1\xeb\x19~\x1e\xf1V)\xf1\xc2\
\x11\xee\xc1\xb8\xc6}\x22\xeeV\xd9\xdd\xbc\xf8\xb2|>\ \x0b\xd2\x05\x11\xef\x8f\xc6V\x8d\xfb,\xdc\xcd\xb2\x1bz\
\xb8o\xfa\xd6\xe0\xc1\xa8IW$\xad\x5c\x1e\xe9\xfb\xf1\ \xf1\x85\xf9rp\xdf\xf4\xec\xfe\xcc\xacIW$\xad~\
\xd4\xb0\xac\xa1\xf1\xa5\x86]\x11\xb6\x5c\x02\x9b\xfb\x17}\ <\xd2\xf7\xa3\xa9i\xdb\x03\xf3\xb6\x86]\x11\xb6R\x02\
>\xb0'\xf7\x03\xc3\xaaAW\x04\xdd\xbc<\xd0\xf1\xbb\ \x9b\xfb\x92\xbe\x1c\xd8\x93\xfb\xbei\xd7\xa0+\x82\x96?\
\xf8\x0fP\xd3>\x856,\xa1\xcdm\xaf\xfd\x17\xda\x0e\ \x1e\xe8\xe4\xf3\xeb\x07\xa8i\x9fC\x1b\x96\xd0\xe6\x96\xd8\
e\x8c.\xde\xdb\x9dI\x15\xff\xbeA3\x18\xd7\x0f}\ \xfe\x0bm\x972F\x97\x87Vhv\x8a\x7f_\xa4\xe9\
n/6\xfe\xfe\x05D}A\x9e\ \x8f\xea\x87>\xb7\x1e\x9b\xfc\xff\x02j\xe6B\xc4\
\x00\x00\x03~\ \x00\x00\x03~\
\x00\ \x00\
\x00\x160x\xda\xcdX[O\xdb0\x14~G\xe2?\ \x00\x160x\xda\xcdX[O\xdb0\x14~G\xe2?\
@@ -6967,48 +6973,48 @@ J\x93\xaaV\xd6\xaf/\xb0\xf74W\x06\xa8\xe9\x12\xf3\
\xd0\xba\xc4\xc4O\x17\x87\x07]\x12\xd6Nz\xf7Jo\ \xd0\xba\xc4\xc4O\x17\x87\x07]\x12\xd6Nz\xf7Jo\
\xed\x22\x0e\xaf\xd9\x97\x9b\xa4\xb6\x81b\xcdy\xc6\x0d\xb7\ \xed\x22\x0e\xaf\xd9\x97\x9b\xa4\xb6\x81b\xcdy\xc6\x0d\xb7\
\x85#\x15C\xeb\x87\xf9\xff\x0b\x83\x18\xec\xb5\ \x85#\x15C\xeb\x87\xf9\xff\x0b\x83\x18\xec\xb5\
\x00\x00\x02v\ \x00\x00\x02|\
\x00\ \x00\
\x00\x10\x1dx\xda\xed\x97]o\x9b0\x14\x86\xef'\xed\ \x00\x10'x\xda\xed\x97[o\xda0\x18\x86\xef'\xed\
?X\x99T5\xbb@\x06BH\xd1:)\xca\x90\x9a\ ?XL\xaa\xca\xa4E\xce\x89\xd0h\x9d\x84h\xb4\x22\
)i\x15B\xd3k>Lb\xcd\xc1\x0c\xcc\x9au\xca\ A\x11!\xa5\xd798`\xcd\xc4Y\xe2t\xac\x13\xff\
\x7f\x1f\x84|`\x0c\xcd\xd2IU.\xe2\xe4\x02\xdb\xaf\ }\x09\xe1\x10\xe7PV&U\x5c`\xb8\x88\xed\xd7o\
_\x1f\xfb9\x80\xc1\xcb\x88\xc6\x0cL\xd8$\xc5\xde\x8f\ >\xfb\xf9\x9c8x\x19\xd2\x88\x81\x09\x9b$\xd8\xfd\xf1\
\x8f\x1f0W\x97\x9ep\xe8\xd3g\xa1y@C\x16S\ \xf1\x03\xe6\xea\xc2\x13\x0e<\xfa\xab\xd2\xdc\xa7\x01\x8b(\
\x924vHc\x87\xa1\x18;DP\x8c\x9c\xdf4e\ \x89\x1b;\x84\x91\xcdP\x84mRQ\x0c\xed\xdf4a\
\xd9\xc8\xfc7dh\x09\xfe\xe4W +A\x1az\x0c\ \xe9\xc8\xec7`h\x09\xfedW -~\x12\xb8\x0c\
\xd3\x10$\x88\x8d\xf0|\xc1\x92kg\x18\xfah\xd5\xce\ \xd3\x00\xc4\x88\x0d\xf1|\xc1\xe2k{\x10xh\xd5\xce\
5`[bt\xe8n\x1f\x9aq\x00\xb6j\xf0\xf5\x16\ 4`[\x22t\xe8n\x1f\x9a\xb1\x0f\xb6j\xf0\xed\x16\
@pu\x05\xb6\xd5/\xa0\xc7\x19\x14&\x1e\x83\x92G\ @pu\x05\xb6\xd5\xaf\xa0\xcb\x19\xe4&.\x83\x82K\
\x09\x8d\xc1-h}\xd2\xd4\x1b7\x08Z\x07\xd1\x1a \ \x09\x8d\xc0-h}R\xe5\x1b\xc7\xf7[\x07\xd1\x1a \
\x92\xa0\x8ak\x8fs\x95\xbb\xb5\xb6r\xc9\x16z^\xd0\ \x12\xa3\x92k\x97s\x15;\xb5\xb6b\xc1\x16\xba\xae\xaf\
Q\x8f\xd9\xca]\xceW\x85\xb5\xbeJ\xc97\x80\x08B\ \xc8\xc7l\xc5\x0e\xe7+\xc3Z_\xa9\xe0\xebC\x04!\
x\xccW\xe5wA\xab\xf7U\xcb\xbe\x81\xab\x1f\xf7\xd5\ <\xe6+\xf3\xab\xa0\xd6\xfb\xcaE_\xdf\xd1\x8e\xfb\xaa\
x_\x19\xd6\x1bw8c\xdd=n\xdc\xe4\xa4\x95\x9c\ \xbc\xaf\x08\xeb\x8d\x15\xceXs\x8e\x1b79\xa9\x05'\
P\x0fV\x96^\x5c\xae\x85,\xe2\x12\x85\xcf \x1e\xbe\ \xd4\x85\xa5\xa9\xe7\x97\xebJ\x16q\x89\xc2g\x10\x0f_\
\xe2v|\xbd\x0c_\xc0\xa8w{\x8aZ\x11\x94y\xe8\ r\x14O+\xc2\xaf`\xd4:]I.\x09\x8a<\xb4\
7\xba\xc2\x05U\xdd\xd8\x9e\xac\x05\x82\xa0\xc3\x09:\xb2\ \x1bM\xe2\x82*/lWT\xfd\x8a@\xe1\x04\x8aX\
(\xaf[\xd7\xa0\xba\x17\xec\x17;\xa0$]\x86\xc5\ \x11\x14\xe7\xad\xa9P\xde\x0b\xf6\x93\xedS\x92,\x83|\
=U^\xa2\x13z\x0b\x1a'R\x80\x091@\xe4\xc4\ O\x15\xa7h\x07\xee\x82F\xb1\xe0cBt\x10\xda\x11\
(d\x87\xde$r<\x1c\xce\x0d\x00w>y\xb1\xb2\ \x0a\xd8\xa17\x0em\x17\x07s\x1d\xc0\x9dOV\xcc\xf4\
\x19\x9dpNP\x15\x01\xf6\x8d\x22\x1c\xbey\x13\x9bQ\ \x8ev0'\xa8\x8c\x00{z\x1e\x0e\xdf\xbc\x89M/\
\x0dmW\x8a\x986\x01<a\x9f-\x0c\xc0\xe2\x145\ \x87\xb6+yL\x9b\x00\x9e\xb0\xc7\x16:`Q\x82\x1a\
j\xeeP\x0e\xaaN\xe4\x11\x1c\xd5\xb53\x1a\x8dP\xc0\ 5\xf7(\x03U'r\x09\x0e\xeb\xda\x19\x0d\x87\xc8g\
,\xc7\xc7ibd\xb9#t[\xb9eS\xff\xc8q\ \xa6\xed\xe1$\xd6\xd3\xdc\xa9t\x9b\x99eS\xff\xd0v\
\x11\xa9\xaet3\x10\xad\xb28~&v|\xdd\x9a\x9a\ \x10)\xcft3\x10\xad\xd28~\xc6Vt\xdd\x9a\x1a\
3\xd32\xc1\xd4~\xb0\xc6\xad\xb6\xa8}}\x9bw%\ 3\xc34\xc0\xd4\x1a\x9b\xa3V\xbb\xaa}}\x99w%\
\x93\xe0\x97\xec\xc1\xe8\x90>\xc1\xf3p\x99\x89\x0c`g\ \x95\xe0\x97\xf4\xc1h\x93\x1e\xc1\xf3`\x99\x8at`\xa5\
\xd3H\x9b\xfa\xdd k@\xb18\xee\x17\x8a\x19\xf6\x1a\ \xb7\x116\xf5\xfb~\xda\x80\xa2\xea\xb8g\x141\xec6\
F\xcd\x9aF\x05\xd9L\x92K\x89_\xb7i{A\x84\ \x8c\x9a5\x8d\xf2\xd3;\x09\x0e%^\xdd\xa2\xed\x05!\
W\x88L\xf1\x0b\xda\x85--6\x04>CI\xe1\x87\ ^!2\xc5/h\x17\xb6\xb0\xd8\x10\xf8\x0c\x05\x89\x1f\
\xac\xb9[\xed\x84t\xe94\xa4\x8b\x90\xea\xef\x92.\xff\ \xb2\xe6\xb6\xda\x1b\xd2EiH\x97J\xaa\xbfK\xba\xfc\
\xc4{\xdc\xff\xfe`]p\xbf\x09\xb7\xda\x88\xbb\xf2\xe8\ \x1bo\xcb\x1c?|\xbf\xf0>\x89\xb7\xdc\xc8\xbb\xf4\xec\
;#\xdc\xc3\xfb\x0b\xee7\xe2V\x9a^\x06\xd5W\xe1\ ;\x1f\xde\xa3\xf1\x9da\xf6\xac\xcb\x0e?\x8d\xb8\xd4\xf4\
\xf9\xe0\xee\x0f\xec\xe1\xcc\xbc\x90>\x91\xb4\xdc@Z8\ B(\xbf\x0e\xcf\x87x\xafo\x0df\xc6\x97\x0b\xefS\
\x15\x9d\x0f\xe9\xc7\xfb\xa9i\xdb#\xf3\xdb\x05\xf6\x89\xb0\ x\x8b\x0d\xbc+\xe7\xa3\xf3\xe1\xfd\xf805,kh\
a\x03l\xe1\x8c\xfc.\xb0]\xca\x18]\xbev\xcc+\ \xdc]`\xbf\x116l\x80]9-\xbf\x0bl\x872\
\x14\xff\x7f\xd2\x9b<\x0eM\xfb\x92-\xa5\xaf\xa9\xec\xff\ F\x97\xaf\x1d\xf8r\xc5\xff\x9f\xf9&\x8f\x03\xc3\xbad\
\x17\x08(\x06\xbc\ K\xe1\xbb*\xfd\xff\x05CN\x09\xae\
" "
qt_resource_name = b"\ qt_resource_name = b"\
@@ -7270,17 +7276,17 @@ qt_resource_struct = b"\
\x00\x00\x01\x8f\xcb\x84\x8f\xb2\ \x00\x00\x01\x8f\xcb\x84\x8f\xb2\
\x00\x00\x03<\x00\x01\x00\x00\x00\x01\x00\x01>\xe2\ \x00\x00\x03<\x00\x01\x00\x00\x00\x01\x00\x01>\xe2\
\x00\x00\x01\x8f\xe9\xc7\xa9\x5c\ \x00\x00\x01\x8f\xe9\xc7\xa9\x5c\
\x00\x00\x05\xa8\x00\x00\x00\x00\x00\x01\x00\x01\x9e\x83\ \x00\x00\x05\xa8\x00\x00\x00\x00\x00\x01\x00\x01\x9e\xe3\
\x00\x00\x01\x8f\xcb\x83\x89\xfd\ \x00\x00\x01\x8f\xcb\x83\x89\xfd\
\x00\x00\x03r\x00\x01\x00\x00\x00\x01\x00\x01I\x0c\ \x00\x00\x03r\x00\x01\x00\x00\x00\x01\x00\x01I\x0c\
\x00\x00\x01\x8f\xe4\x8f\x92\xee\ \x00\x00\x01\x8f\xe4\x8f\x92\xee\
\x00\x00\x05\x86\x00\x00\x00\x00\x00\x01\x00\x01\x98\xd4\ \x00\x00\x05\x86\x00\x00\x00\x00\x00\x01\x00\x01\x994\
\x00\x00\x01\x8f\xc8\xd7c\x19\ \x00\x00\x01\x8f\xc8\xd7c\x19\
\x00\x00\x03X\x00\x02\x00\x00\x00\x04\x00\x00\x00+\ \x00\x00\x03X\x00\x02\x00\x00\x00\x04\x00\x00\x00+\
\x00\x00\x00\x00\x00\x00\x00\x00\ \x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x04\xc4\x00\x01\x00\x00\x00\x01\x00\x01v7\ \x00\x00\x04\xc4\x00\x01\x00\x00\x00\x01\x00\x01v7\
\x00\x00\x01\x8f\xe4\x96f\xc0\ \x00\x00\x01\x8f\xe4\x96f\xc0\
\x00\x00\x05d\x00\x01\x00\x00\x00\x01\x00\x01\x8e\xeb\ \x00\x00\x05d\x00\x01\x00\x00\x00\x01\x00\x01\x8fK\
\x00\x00\x01\x8f\xe4\x96PE\ \x00\x00\x01\x8f\xe4\x96PE\
\x00\x00\x04\xe6\x00\x01\x00\x00\x00\x01\x00\x01\x7f-\ \x00\x00\x04\xe6\x00\x01\x00\x00\x00\x01\x00\x01\x7f-\
\x00\x00\x01\x8f\xcb\x83z\xd6\ \x00\x00\x01\x8f\xcb\x83z\xd6\
@@ -7291,16 +7297,16 @@ qt_resource_struct = b"\
\x00\x00\x04\x9e\x00\x01\x00\x00\x00\x01\x00\x01t\x09\ \x00\x00\x04\x9e\x00\x01\x00\x00\x00\x01\x00\x01t\x09\
\x00\x00\x01\x8f\xd301\xb9\ \x00\x00\x01\x8f\xd301\xb9\
\x00\x00\x05@\x00\x01\x00\x00\x00\x01\x00\x01\x8a\xf7\ \x00\x00\x05@\x00\x01\x00\x00\x00\x01\x00\x01\x8a\xf7\
\x00\x00\x01\x8f\xe4\x8e\xdd\xf9\ \x00\x00\x01\x8f\xee\x84(\xe5\
\x00\x00\x05\x06\x00\x00\x00\x00\x00\x01\x00\x01\x85\xce\ \x00\x00\x05\x06\x00\x00\x00\x00\x00\x01\x00\x01\x85\xce\
\x00\x00\x01\x8f\xe4\x8f\x0e\x0f\ \x00\x00\x01\x8f\xe4\x8f\x0e\x0f\
\x00\x00\x05\xdc\x00\x01\x00\x00\x00\x01\x00\x01\xa76\ \x00\x00\x05\xdc\x00\x01\x00\x00\x00\x01\x00\x01\xa7\x96\
\x00\x00\x01\x8f\xee>\xc2\xd2\
\x00\x00\x06$\x00\x01\x00\x00\x00\x01\x00\x01\xad\xdb\
\x00\x00\x01\x8f\xeeO\xac\x19\
\x00\x00\x05\xc0\x00\x01\x00\x00\x00\x01\x00\x01\xa4\x93\
\x00\x00\x01\x8f\xc8\xd7c\x19\ \x00\x00\x01\x8f\xc8\xd7c\x19\
\x00\x00\x06$\x00\x01\x00\x00\x00\x01\x00\x01\xadw\ \x00\x00\x06\x00\x00\x01\x00\x00\x00\x01\x00\x01\xaaY\
\x00\x00\x01\x8f\xc8\xd7c\x19\
\x00\x00\x05\xc0\x00\x01\x00\x00\x00\x01\x00\x01\xa43\
\x00\x00\x01\x8f\xc8\xd7c\x19\
\x00\x00\x06\x00\x00\x01\x00\x00\x00\x01\x00\x01\xa9\xf5\
\x00\x00\x01\x8f\xe4\xc6\xf5\xd8\ \x00\x00\x01\x8f\xe4\xc6\xf5\xd8\
" "

View File

@@ -10,6 +10,7 @@ from artemis.utils.path_utils import DATA_DIR
from artemis.utils.network_utils import NetworkManager from artemis.utils.network_utils import NetworkManager
from artemis.utils.generic_utils import generate_filter_query from artemis.utils.generic_utils import generate_filter_query
from artemis.utils.path_utils import normalize_dialog_path from artemis.utils.path_utils import normalize_dialog_path
from artemis.utils.config_utils import CONFIGURE_QT
from artemis.ui.preferences import UIPreferences from artemis.ui.preferences import UIPreferences
from artemis.ui.dbmanager import UIdbmanager from artemis.ui.dbmanager import UIdbmanager
@@ -69,6 +70,8 @@ class UIArtemis(QObject):
self.network_manager = NetworkManager(self) self.network_manager = NetworkManager(self)
self.autoload_db()
def _connect(self): def _connect(self):
# QML > Python connections # QML > Python connections
@@ -331,6 +334,13 @@ class UIArtemis(QObject):
self.cateditor.load_cateditor_ui() self.cateditor.load_cateditor_ui()
def autoload_db(self):
sig_id_path = DATA_DIR / 'SigID' / Constants.SQL_NAME
autoload = CONFIGURE_QT.get_or_default("Database", "autoload", 0)
if sig_id_path.exists() and int(autoload):
self.load_db('SigID')
def dialog_popup(self, message_type, title, message): def dialog_popup(self, message_type, title, message):
""" Opens a general dialog popup """ Opens a general dialog popup

View File

@@ -9,6 +9,7 @@ class UIPreferences(QObject):
show_ui = Signal() show_ui = Signal()
load_material_accent = Signal(str) load_material_accent = Signal(str)
load_material_theme = Signal(str) load_material_theme = Signal(str)
load_autoload = Signal(int)
def __init__(self, parent): def __init__(self, parent):
@@ -27,11 +28,13 @@ class UIPreferences(QObject):
# QML > Python connections # QML > Python connections
self._window.saveMaterialAccent.connect(self.save_material_accent) self._window.saveMaterialAccent.connect(self.save_material_accent)
self._window.saveMaterialTheme.connect(self.save_material_theme) self._window.saveMaterialTheme.connect(self.save_material_theme)
self._window.saveAutoload.connect(self.save_autoload)
# Python > QML connections # Python > QML connections
self.show_ui.connect(self._window.show) self.show_ui.connect(self._window.show)
self.load_material_accent.connect(self._window.loadMaterialAccent) self.load_material_accent.connect(self._window.loadMaterialAccent)
self.load_material_theme.connect(self._window.loadMaterialTheme) self.load_material_theme.connect(self._window.loadMaterialTheme)
self.load_autoload.connect(self._window.loadAutoload)
def load_preferences_ui(self): def load_preferences_ui(self):
@@ -39,6 +42,7 @@ class UIPreferences(QObject):
""" """
self.load_material_accent.emit(CONFIGURE_QT.get_or_default("Material", "Accent", "Green")) self.load_material_accent.emit(CONFIGURE_QT.get_or_default("Material", "Accent", "Green"))
self.load_material_theme.emit(CONFIGURE_QT.get_or_default("Material", "Theme", "System")) self.load_material_theme.emit(CONFIGURE_QT.get_or_default("Material", "Theme", "System"))
self.load_autoload.emit(int(CONFIGURE_QT.get_or_default("Database", "autoload", 0)))
self.show_ui.emit() self.show_ui.emit()
@@ -54,3 +58,10 @@ class UIPreferences(QObject):
""" Saving material theme setting """ Saving material theme setting
""" """
CONFIGURE_QT.set("Material", "Theme", material_theme) CONFIGURE_QT.set("Material", "Theme", material_theme)
@Slot(int)
def save_autoload(self, autoload):
""" Saving autoload setting
"""
CONFIGURE_QT.set("Database", "autoload", str(autoload))

View File

@@ -32,10 +32,13 @@ class Config(ConfigParser):
self.write(f, space_around_delimiters=self._space_around_delimiters) self.write(f, space_around_delimiters=self._space_around_delimiters)
if not (PREFERENCES_DIR / 'qtquickcontrols2.conf').exists(): def prepare_qt_conf():
copy_file( if not (PREFERENCES_DIR / 'qtquickcontrols2.conf').exists():
BASE_DIR / 'config' / 'qtquickcontrols2.conf', copy_file(
PREFERENCES_DIR / 'qtquickcontrols2.conf' BASE_DIR / 'config' / 'qtquickcontrols2.conf',
) PREFERENCES_DIR / 'qtquickcontrols2.conf'
)
prepare_qt_conf()
CONFIGURE_QT = Config((PREFERENCES_DIR / 'qtquickcontrols2.conf').resolve().as_posix()) CONFIGURE_QT = Config((PREFERENCES_DIR / 'qtquickcontrols2.conf').resolve().as_posix())

View File

@@ -5,3 +5,6 @@ style=Material
variant=Dense variant=Dense
theme=System theme=System
accent=Green accent=Green
[Database]
autoload=0

View File

@@ -23,10 +23,12 @@ Window {
signal saveMaterialAccent(string arg) signal saveMaterialAccent(string arg)
signal saveMaterialTheme(string arg) signal saveMaterialTheme(string arg)
signal saveAutoload(int arg)
function saveAll() { function saveAll() {
saveMaterialAccent(comboBoxAccent.currentText) saveMaterialAccent(comboBoxAccent.currentText)
saveMaterialTheme(comboBoxTheme.currentText) saveMaterialTheme(comboBoxTheme.currentText)
saveAutoload(checkBoxAutoload.checked)
} }
function loadMaterialAccent(accent) { function loadMaterialAccent(accent) {
@@ -47,6 +49,14 @@ Window {
} }
} }
function loadAutoload(toggle) {
if (toggle) {
checkBoxAutoload.checked = true
} else {
checkBoxAutoload.checked = false
}
}
DialogMessage { DialogMessage {
id: dialogPreferencesSaved id: dialogPreferencesSaved
modal: true modal: true
@@ -132,6 +142,21 @@ Window {
} }
} }
RowLayout {
Layout.fillWidth: true
Label {
text: "Auto-load SigID Database on Startup"
font.pixelSize: 12
clip: true
Layout.fillWidth: true
}
CheckBox {
id: checkBoxAutoload
}
}
Item { Item {
Layout.fillHeight: true Layout.fillHeight: true
} }