mirror of
https://github.com/aclist/dztui.git
synced 2026-11-10 20:10:38 +01:00
feat: refresh player count
This commit is contained in:
1 parent
06450ddadc
commit
e1f54bd75d
6 files changed
+105
-32
No files matched your search
@@ -10,7 +10,12 @@ from dzgui.util import strings
|
||||
if TYPE_CHECKING:
|
||||
from dzgui.managers.filter_man import FilterManager
|
||||
from dzgui.model.model_factory import FastInsertListStore
|
||||
from dzgui.model.servers import NewPlayerCount
|
||||
|
||||
import gi
|
||||
|
||||
gi.require_version("Gtk", "3.0")
|
||||
from gi.repository.Gtk import TreeIter
|
||||
|
||||
class ProxyModelManager:
|
||||
"""
|
||||
@@ -35,9 +40,27 @@ class ProxyModelManager:
|
||||
self.filtered: list = None
|
||||
self.success = True
|
||||
|
||||
def has_control_model(self) -> bool:
|
||||
pass
|
||||
|
||||
def append_row(self, row: list) -> None:
|
||||
self.proxy_model.append(row)
|
||||
|
||||
def append_row_to_control(self, row: list) -> None:
|
||||
self.control_model.append(row)
|
||||
self.filter(FilterMode.INITIAL, skip_cache=True)
|
||||
|
||||
def remove_row_from_control(self, row: list) -> None:
|
||||
for record in self.control_model:
|
||||
if row[7] == record[7] and row[8] == record[8]:
|
||||
self.control_model.remove(record)
|
||||
self.filter(FilterMode.INITIAL, skip_cache=True)
|
||||
|
||||
def update_playercount(self, playercount: "NewPlayerCount") -> None:
|
||||
treeiter = playercount.treeiter
|
||||
self.proxy_model[treeiter][4] = playercount.players
|
||||
self.proxy_model[treeiter][6] = playercount.queue
|
||||
|
||||
def clear_proxy_model(self) -> None:
|
||||
self.proxy_model.clear()
|
||||
|
||||
|
||||
Reference in new issue
Block a user