From dbdfb216c0b26d5c3ef6e4b5eb8e5468c79bd56b Mon Sep 17 00:00:00 2001 From: Ace Date: Fri, 19 Jun 2020 19:39:02 +0200 Subject: [PATCH] Added common settings for each module's config It's now possible to get language, units and hours though each module's config. --- inkycal/config/settings_parser.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/inkycal/config/settings_parser.py b/inkycal/config/settings_parser.py index 938da0b..d61234d 100644 --- a/inkycal/config/settings_parser.py +++ b/inkycal/config/settings_parser.py @@ -104,8 +104,8 @@ class Settings: """Validate the basic config""" settings = self._settings - required = ['language', 'units', 'hours', 'model', 'calibration_hours'] - #'display_orientation'] + required = ['language', 'units', 'hours', 'model', 'calibration_hours', + 'display_orientation'] # Check if all required settings exist for param in required: @@ -163,6 +163,13 @@ class Settings: modules = [section['type'] for section in self._settings['panels']] return modules + def common_config(self): + common_config = { + 'language' : self.language, 'units' : self.units, 'hours' : self.hours + } + return common_config + + def get_config(self, module_name): """Ge the config of this module (size, config)""" if module_name not in self.active_modules(): @@ -172,7 +179,7 @@ class Settings: if section['type'] == module_name: config = section['config'] size = self.Layout.get_size(self.get_position(module_name)) - return {'size':size, 'config':config} + return {'size':size, 'config': {**config, **self.common_config()}} def get_position(self, module_name): """Get the position of this module's image on the display"""