a bit of refactor
This commit is contained in:
44
scam.py
44
scam.py
@ -98,25 +98,24 @@ class MainPanel(wx.Panel):
|
|||||||
cfg = pc.get_instance_config(instance)
|
cfg = pc.get_instance_config(instance)
|
||||||
print(cfg)
|
print(cfg)
|
||||||
|
|
||||||
self.orig_cfg = cfg
|
|
||||||
self.camera = cfg["camera_name"]
|
self.camera = cfg["camera_name"]
|
||||||
|
|
||||||
|
self.orig_cfg = cfg
|
||||||
|
name_mapping = None
|
||||||
|
|
||||||
if not clargs.show_all_settings:
|
if not clargs.show_all_settings:
|
||||||
|
self.orig_cfg = filter_dict(cfg, SHOWN_SETTINGS, ENFORCED_SETTINGS)
|
||||||
|
name_mapping = SHOWN_SETTINGS
|
||||||
|
|
||||||
check_incoming_cfg(cfg)
|
check_incoming_cfg(cfg)
|
||||||
|
cfg = filter_dict(cfg, SHOWN_SETTINGS)
|
||||||
|
|
||||||
|
self.entries.update(cfg, name_mapping)
|
||||||
|
|
||||||
self.eb_bkg.Enable()
|
self.eb_bkg.Enable()
|
||||||
self.btn_print.Enable()
|
self.btn_print.Enable()
|
||||||
self.btn_save.Enable()
|
self.btn_save.Enable()
|
||||||
|
|
||||||
if clargs.show_all_settings:
|
|
||||||
self.entries.update(cfg)
|
|
||||||
else:
|
|
||||||
filtered_cfg = {k: v for k, v in cfg.items() if k in SHOWN_SETTINGS}
|
|
||||||
for k in SHOWN_SETTINGS:
|
|
||||||
if k not in filtered_cfg:
|
|
||||||
filtered_cfg[k] = None
|
|
||||||
self.entries.update(filtered_cfg, SHOWN_SETTINGS)
|
|
||||||
|
|
||||||
self._adjust_size()
|
self._adjust_size()
|
||||||
|
|
||||||
|
|
||||||
@ -136,15 +135,11 @@ class MainPanel(wx.Panel):
|
|||||||
|
|
||||||
|
|
||||||
def on_print(self, event):
|
def on_print(self, event):
|
||||||
new_cfg = self.make_cfg()
|
|
||||||
|
|
||||||
old_cfg = self.orig_cfg
|
old_cfg = self.orig_cfg
|
||||||
if not clargs.show_all_settings:
|
new_cfg = self.make_cfg()
|
||||||
old_cfg = {k: v for k, v in old_cfg.items() if k in list(SHOWN_SETTINGS) + ENFORCED_SETTINGS}
|
print("\nold config:\n", old_cfg)
|
||||||
|
print("\nnew config:\n", new_cfg)
|
||||||
print("old config:", old_cfg)
|
print("\nunchanged\n" if old_cfg == new_cfg else "changed")
|
||||||
print("new config:", new_cfg)
|
|
||||||
print("unchanged" if old_cfg == new_cfg else "changed")
|
|
||||||
|
|
||||||
|
|
||||||
def on_save_cfg(self, event):
|
def on_save_cfg(self, event):
|
||||||
@ -183,6 +178,19 @@ def printable(val):
|
|||||||
return repr(val).replace("'", '"')
|
return repr(val).replace("'", '"')
|
||||||
|
|
||||||
|
|
||||||
|
def filter_dict(d, *args):
|
||||||
|
allkeys = []
|
||||||
|
for keys in args:
|
||||||
|
allkeys.extend(keys)
|
||||||
|
|
||||||
|
res = {k: v for k, v in d.items() if k in allkeys}
|
||||||
|
for k in allkeys:
|
||||||
|
if k not in res:
|
||||||
|
res[k] = None
|
||||||
|
|
||||||
|
return res
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user