mirror of
https://github.com/aclist/dztui.git
synced 2026-11-05 09:34:46 +01:00
feat: update history on connect
This commit is contained in:
1 parent
cdcd38c326
commit
f7fe62e661
5 files changed
+47
-21
No files matched your search
@@ -55,10 +55,27 @@ class ProxyModelManager:
|
||||
self.proxy_model[treeiter][4] = playercount.players
|
||||
self.proxy_model[treeiter][6] = playercount.queue
|
||||
|
||||
# def append_to_history(self, row: list) -> None:
|
||||
# if len(self.control_model) == 10:
|
||||
# del self.control_model[0]
|
||||
# self.control_model.append(row)
|
||||
def append_row_to_history(
|
||||
self, history: list[str, str, str, str, int, int, int, str, int, int, str, bool]
|
||||
) -> None:
|
||||
addr = history[7]
|
||||
qport = history[8]
|
||||
|
||||
found = False
|
||||
for i, row in enumerate(self.control_model):
|
||||
if addr == row[7] and qport == row[8]:
|
||||
print("record exists in history")
|
||||
item = self.control_model.pop(i)
|
||||
self.control_model.append(item)
|
||||
found = True
|
||||
break
|
||||
|
||||
if found is False:
|
||||
self.control_model.append(history)
|
||||
if len(self.control_model) == 11:
|
||||
del self.control_model[0]
|
||||
|
||||
self.filter(FilterMode.INITIAL, skip_cache=True)
|
||||
|
||||
def remove_row_from_control(self, record: "Record") -> None:
|
||||
if self.control_model is None:
|
||||
|
||||
+12
-14
@@ -214,22 +214,9 @@ class ServerModelManager:
|
||||
res = Servers.query_by_record(record)
|
||||
self._parse_single_record(res, delete=True)
|
||||
|
||||
# TODO:
|
||||
# def add_to_history(self, record: Servers.Record) -> None:
|
||||
# functionally similar to remove action
|
||||
# # needs to be called from controller against history tree, not current tree
|
||||
# proxy_man = self._get_proxy_man()
|
||||
# # proxy_man.append_row_to_history
|
||||
# control_model = proxy_man.get_control()
|
||||
# config_man = self.controller.get_config_man()
|
||||
# config_man.update_history_file(control_model)
|
||||
|
||||
def remove_from_history(self, record: Servers.Record) -> None:
|
||||
"""Fully unthreaded, just removes a row"""
|
||||
def update_history(self) -> None:
|
||||
proxy_man = self._get_proxy_man()
|
||||
proxy_man.remove_row_from_control(record)
|
||||
control_model = proxy_man.get_control()
|
||||
|
||||
config_man = self.controller.get_config_man()
|
||||
config_man.update_history_file(control_model)
|
||||
|
||||
@@ -246,6 +233,17 @@ class ServerModelManager:
|
||||
self.first_iteration = False
|
||||
self.emitter.emit("servers_loaded_init")
|
||||
|
||||
def add_to_history(self, record: dict[str, Any]) -> None:
|
||||
proxy_man = self._get_proxy_man()
|
||||
row = Servers.parse_json([record])
|
||||
proxy_man.append_row_to_history(row[0])
|
||||
self.update_history()
|
||||
|
||||
def remove_from_history(self, record: Servers.Record) -> None:
|
||||
proxy_man = self._get_proxy_man()
|
||||
proxy_man.remove_row_from_control(record)
|
||||
self.update_history()
|
||||
|
||||
def add_by_str(self, addr: str) -> None:
|
||||
if addr.isdigit():
|
||||
self.add_by_id(addr)
|
||||
|
||||
Reference in new issue
Block a user