Skip to content

Commit d77461d

Browse files
author
krish_trip
committed
BEDGE-2722 moved the state loading to settings
1 parent 3336949 commit d77461d

File tree

2 files changed

+23
-21
lines changed

2 files changed

+23
-21
lines changed

main.py

Lines changed: 23 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,6 @@ def __init__(self, **kwargs):
153153
"rtu": [self.slave_start_add.text,
154154
self.slave_end_add.text,
155155
self.slave_count.text]}
156-
self.save = True
157156

158157
@property
159158
def modbus_device(self):
@@ -657,10 +656,7 @@ def _restore(self):
657656
self.slave_count.text) = self._slave_misc[self.active_server]
658657
self.slave_list._trigger_reset_populate()
659658

660-
def reset_state(self):
661-
self.save = False
662-
663-
def save_conf(self):
659+
def save_state(self):
664660
with open(SLAVES_FILE, 'w') as f:
665661
slave = [int(slave_no) for slave_no in self.slave_list.adapter.data]
666662
slaves_memory = []
@@ -671,12 +667,12 @@ def save_conf(self):
671667

672668
dump(dict(
673669
slaves_list=slave, active_server=self.active_server,
674-
port=self.port.text, slaves_memory=slaves_memory,
675-
save_state=self.save
670+
port=self.port.text, slaves_memory=slaves_memory
676671
), f, indent=4)
677672

678-
def load_conf(self):
679-
if not os.path.isfile(SLAVES_FILE):
673+
def load_state(self):
674+
if not bool(eval(self.config.get("State", "Load State"))) and \
675+
not os.path.isfile(SLAVES_FILE):
680676
return
681677

682678
with open(SLAVES_FILE, 'r') as f:
@@ -691,15 +687,11 @@ def load_conf(self):
691687
return
692688

693689
if 'active_server' not in data or 'port' not in data \
694-
or 'slaves_list' not in data or 'slaves_memory' not in data or \
695-
'save_state' not in data:
690+
or 'slaves_list' not in data or 'slaves_memory' not in data:
696691
self.show_error("LoadError: Failed to Load Config Error "
697692
"\nSave Your Config File it will be overwritten")
698693
return
699694

700-
if not data['save_state']:
701-
return
702-
703695
slaves_list = data['slaves_list']
704696
if not len(slaves_list):
705697
return
@@ -937,12 +929,22 @@ def load_conf(self):
937929
{
938930
"type": "numeric",
939931
"title": "Time interval",
940-
"desc": "When simulation is enabled, data is changed for eveery 'n' seconds defined here",
932+
"desc": "When simulation is enabled, data is changed for every 'n' seconds defined here",
941933
"section": "Simulation",
942934
"key": "time interval"
935+
},
936+
{
937+
"type": "title",
938+
"title": "State"
939+
},
940+
{
941+
"type": "bool",
942+
"title": "Load State",
943+
"desc": "Whether the previous state should be loaded or not, if not the original state is loaded",
944+
"section": "State",
945+
"key": "Load State"
943946
}
944947
945-
946948
]
947949
"""
948950

@@ -960,7 +962,7 @@ def build(self):
960962
self.gui = Gui(
961963
modbus_log=os.path.join(self.user_data_dir, 'modbus.log')
962964
)
963-
self.gui.load_conf()
965+
self.gui.load_state()
964966
return self.gui
965967

966968
def on_pause(self):
@@ -971,7 +973,7 @@ def on_stop(self):
971973
self.config.write()
972974
if self.gui.server_running:
973975
self.gui._stop_server()
974-
self.gui.save_conf()
976+
self.gui.save_state()
975977
if self.gui.server_running:
976978
if self.gui.simulating:
977979
self.gui.simulating = False
@@ -1016,6 +1018,9 @@ def build_config(self, config):
10161018
config.add_section('Simulation')
10171019
config.set('Simulation', 'time interval', 1)
10181020

1021+
config.add_section('State')
1022+
config.set('State', 'Load State', 1)
1023+
10191024
def build_settings(self, settings):
10201025
settings.register_type("numeric_range", SettingIntegerWithRange)
10211026
settings.add_json_panel('Modbus Settings', self.config,

templates/modbussimu.kv

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -295,9 +295,6 @@
295295
app_icon: 'assets/riptideLogo.png'
296296
disabled: True
297297
ActionOverflow:
298-
ActionButton:
299-
text: 'Reset State'
300-
on_release: root.reset_state()
301298
ActionButton:
302299
id: reset_simulation
303300
text: 'Reset Simulation'

0 commit comments

Comments
 (0)