chore: clear typehinting errors

This commit is contained in:
aclist 2026-05-16 00:39:02 +09:00
parent 8fc7aa5165
commit a3875789c1
5 changed files with 19 additions and 15 deletions

View File

@ -1,6 +1,6 @@
import re
from typing import Any, Optional, TYPE_CHECKING, Union
from typing import Any, TYPE_CHECKING, Union
from warnings import deprecated
from dzgui.const.enum import FilterMode
@ -14,7 +14,6 @@ if TYPE_CHECKING:
from dzgui.model.servers import NewPlayerCount
# TODO: annotate list contents (list[list[Any]])
class ProxyModelManager:
"""
Manages access to cached FastInsertListStore resources and
@ -35,9 +34,13 @@ class ProxyModelManager:
self.proxy_model: "FastInsertListStore"
self.filter_man = filter_man
# TODO: list typehints
self.control_model: list | None = None
self.filtered: list = []
self.control_model: (
list[tuple[str, str, str, str, int, int, int, str, int, int, str, bool]]
| None
) = None
self.filtered: list[
tuple[str, str, str, str, int, int, int, str, int, int, str, bool]
] = []
self.success = True
def has_control_model(self) -> bool:
@ -48,7 +51,9 @@ class ProxyModelManager:
def append_row(self, row: list) -> None:
self.proxy_model.append(row)
def append_row_to_control(self, row: list) -> None:
def append_row_to_control(
self, row: tuple[str, str, str, str, int, int, int, str, int, int, str, bool]
) -> None:
if self.control_model is None:
raise AttributeError("Trying to add rows to a non-existent model")
self.control_model.append(row)

View File

@ -60,6 +60,7 @@ class ServerModelManager:
There may be cases where you want to instantiate this class without dumping servers,
e.g., adding saved servers from another tab
"""
self.first_iteration = True
match self.enum:
case ServerTab.BROWSER:
@ -92,12 +93,10 @@ class ServerModelManager:
futures = [executor.submit(job, key, APPID_DAYZ, param) for param in params]
for future in as_completed(futures):
try:
# NOTE: faciliates early aborting via sigint
# TODO: make this logic available to all dump contexts
if self.controller.get_exit_event().is_set():
return
self.thread_man.increment_dialog()
res = future.result(timeout=API_TIMEOUT)
if res.status != 200 or not res.parsed:
@ -236,7 +235,6 @@ class ServerModelManager:
def add_to_history(self, record: dict[str, Any]) -> None:
proxy_man = self._get_proxy_man()
row = Servers.parse_json([record])
print(type(row[0]))
proxy_man.append_row_to_history(row[0])
self.update_history()
@ -285,7 +283,7 @@ class ServerModelManager:
proxy_man = self._get_proxy_man()
config_man = self.controller.get_config_man()
fqip = Servers.response_to_fqip(row)
record = response.get_record() # Servers.response_to_record(row)
record = response.get_record()
# TODO: less convoluted
if delete:
@ -394,7 +392,8 @@ class ServerModelManager:
# TODO: distinguish signals, e.g. "servers_failed_to_load", "servers_loaded_empty"
# customize statusbar and dialog accordingly
self.emitter.emit("servers_loaded", self.enum)
# TODO: drop, causes errors
# self.emitter.emit("servers_loaded", self.enum)
# FIXME: destroy wait dialog first
# see threadman.set_cleanup_func(_, destroy_first=True)
if show_dialog:

View File

@ -45,7 +45,7 @@ class ButtonGrid(Gtk.Grid):
checkbox = Gtk.CheckButton(label=check)
label = checkbox.get_child()
if label is not None:
label.set_ellipsize(Pango.EllipsizeMode.END) # type: ignore
label.set_ellipsize(Pango.EllipsizeMode.END) # type: ignore
if defaults[check]:
checkbox.set_active(True)
@ -188,6 +188,7 @@ class FilterPanel(Gtk.Box):
self.maps_entry: Gtk.Entry = self.maps_combo.get_child() # type: ignore
self.maps_entry.set_completion(completion)
# TODO: strings
self.maps_entry.set_placeholder_text("Filter by map")
self.maps_entry.connect("changed", self._on_map_completion, True)
self.maps_entry.connect("key-press-event", self._on_map_entry_keypress)

View File

@ -28,7 +28,6 @@ from dzgui.views.components.eventbox import InfoEventBox
from dzgui.views.components.buttons import WebButton
from dzgui.views.components.frame import HeadingFrame
from dzgui.views.dialogs.generic import ExceptionDialog
from dzgui.views.dialogs.link_dialog import WorkshopLinkDialog
import gi

View File

@ -78,8 +78,8 @@ class ServerTreeView(ContextMixin, TreeView): # type: ignore
"IP": 240,
}
# TODO: abstract
# FIXME: resize col width func causes snapping behavior
# TODO: abstract column population logic
# TODO: resize col width func causes snapping behavior
browser_cols = strings.browser_cols
for i, column_title in enumerate(browser_cols):
renderer = Gtk.CellRendererText()