Merge pull request #28 from aclist/fix/type_checking

fix: clear linting errors
This commit is contained in:
aclist authored and GitHub committed 2025-12-20 22:17:28 +09:00
commit 01176c7798
38 files changed
+121 -161

No files matched your search

-2
View File
@@ -7,8 +7,6 @@ from dzgui.config.query import lookup
from dzgui.const.endpoints import BM_SERVERS from dzgui.const.endpoints import BM_SERVERS
from dzgui.const.enum import Preferences from dzgui.const.enum import Preferences
from typing import Union
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
def get_attributes(config: Path, uid: int) -> str: def get_attributes(config: Path, uid: int) -> str:
+2 -5
View File
@@ -1,7 +1,6 @@
import dayzquery import dayzquery
import hashlib import hashlib
import logging import logging
import re
import shlex import shlex
from dataclasses import dataclass from dataclasses import dataclass
@@ -11,13 +10,12 @@ import dzgui.api.pefile as PeFile
from dzgui.api.servers import Record, get_rules from dzgui.api.servers import Record, get_rules
from dzgui.const.constants import ( from dzgui.const.constants import (
APPID_DAYZ, APPID_DAYZ,
APPID_DAYZ_EXP,
LIBRARYFOLDERS_PATH, LIBRARYFOLDERS_PATH,
WORKSHOP_PATH, WORKSHOP_PATH,
) )
from dzgui.util.strings import checkmark from dzgui.util.strings import checkmark
from dzgui.config.query import enum_to_key, lookup from dzgui.config.query import lookup
from dzgui.const.enum import Preferences from dzgui.const.enum import Preferences
from typing import Any from typing import Any
@@ -91,7 +89,7 @@ def get_delimited_mods(steam_path: Path) -> list[Any]:
for mod in mods: for mod in mods:
mod_dir = mod.name mod_dir = mod.name
symlink = _hash(mod_dir) symlink = _hash(mod_dir)
# NOTE: malformed .cpp files could break this # FIXME: malformed .cpp files could break this
# mention that mods may be downloading # mention that mods may be downloading
meta = parse_meta(mod) meta = parse_meta(mod)
if meta is None: if meta is None:
@@ -157,7 +155,6 @@ def find_stale_mods(config: Path) -> list[int]:
for server in servers: for server in servers:
split = server.split(":") split = server.split(":")
ip = split[0] ip = split[0]
gport = split[1]
qport = split[2] qport = split[2]
mods = get_rules(ip, qport) mods = get_rules(ip, qport)
+2 -3
View File
@@ -2,7 +2,6 @@ import shutil
import textwrap import textwrap
from pathlib import Path from pathlib import Path
def write_desktop_file(share_path: Path) -> None: def write_desktop_file(share_path: Path) -> None:
template = f"""\ template = f"""\
[Desktop Entry] [Desktop Entry]
@@ -28,8 +27,8 @@ def write_shim_file(share_path: Path) -> None:
""" """
try: try:
file.write_text(textwrap.dedent(template)) file.write_text(textwrap.dedent(template))
f.chmod(f.stat().st_mode | stat.S_IEXEC) file.chmod(file.stat().st_mode | stat.S_IEXEC)
except OSError: except OSError as e:
logger.critical(e) logger.critical(e)
return return
clear_old_path() clear_old_path()
+2 -1
View File
@@ -1,7 +1,8 @@
import shutil import shutil
from pathlib import Path from pathlib import Path
def uninstall(path: Path) -> None def uninstall(path: Path) -> None:
pass
# TODO: use xdg object? # TODO: use xdg object?
# partial/full (keep config?) # partial/full (keep config?)
# -u removes state, log # -u removes state, log
+14 -14
View File
@@ -1,22 +1,13 @@
import logging import logging
import locale
import os
import re
import shutil import shutil
import threading import threading
import textwrap import textwrap
from datetime import datetime
from pathlib import Path from pathlib import Path
from typing import Any, Callable, TYPE_CHECKING from typing import Any, Callable, TYPE_CHECKING
import gi # noqa E402
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk, GLib, GObject
import dzgui.api.pefile as PeFile import dzgui.api.pefile as PeFile
from dzgui.api.probe import test_steam_api, test_bm_api from dzgui.api.probe import test_steam_api, test_bm_api
from dzgui.api.mods import ( from dzgui.api.mods import (
get_delimited_mods, get_delimited_mods,
get_local_mod_path, get_local_mod_path,
@@ -32,23 +23,32 @@ from dzgui.const.enum import (
ContextMenu, ContextMenu,
) )
from dzgui.const.constants import LIBRARYFOLDERS_PATH, APPID_DAYZ, APPID_DAYZ_EXP, HEX_RED, WINDOW_DEFAULT_X, WINDOW_DEFAULT_Y from dzgui.const.constants import (
from dzgui.controllers.model import ModelManager APPID_DAYZ,
APPID_DAYZ_EXP,
HEX_RED,
WINDOW_DEFAULT_X,
WINDOW_DEFAULT_Y
)
from dzgui.config import update from dzgui.config import update
from dzgui.config.query import lookup from dzgui.config.query import lookup
from dzgui.config.userprefs import UserPrefs from dzgui.config.userprefs import UserPrefs
from dzgui.controllers.model import ModelManager
from dzgui.util.diag import write_diagnostic from dzgui.util.diag import write_diagnostic
from dzgui.util import localize, cooldown, strings from dzgui.util import cooldown, strings
from dzgui.util._json import read_json, write_json from dzgui.util._json import read_json, write_json
from dzgui.util.open_links import open_workshop_page from dzgui.util.open_links import open_workshop_page
from dzgui.util.format import pluralize, format_mods from dzgui.util.format import format_mods
from dzgui.util.redact import redact_log from dzgui.util.redact import redact_log
from dzgui.views.dialogs.filepicker import FilePicker from dzgui.views.dialogs.filepicker import FilePicker
from dzgui.views.dialogs.generic import GenericDialog from dzgui.views.dialogs.generic import GenericDialog
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk, GLib, GObject # noqa E402
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
if TYPE_CHECKING: if TYPE_CHECKING:
+8 -6
View File
@@ -1,12 +1,14 @@
import re
from dataclasses import dataclass
from typing import Self from typing import Self
from dzgui.const.enum import FilterMode, MAIN_MENU_ROWS, HELP_MENU_ROWS
from dzgui.util import strings
import gi import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository.Gtk import ListStore from gi.repository.Gtk import ListStore # noqa E402
from gi.repository import GObject from gi.repository import GObject, GLib # noqa E402
from dzgui.const.enum import FilterMode, MAIN_MENU_ROWS, HELP_MENU_ROWS
from dataclasses import dataclass, fields
@dataclass @dataclass
@dataclass(slots=True, frozen=True) @dataclass(slots=True, frozen=True)
@@ -160,7 +162,7 @@ class ModelManager:
row[9] = self.ping_cache[row[7]] row[9] = self.ping_cache[row[7]]
if len(rows) > 0: if len(rows) > 0:
clone = ModelMan.new_model() clone = self.new_model()
rows = self.sort_rows(rows) rows = self.sort_rows(rows)
for row in rows: for row in rows:
clone.append(row) clone.append(row)
+1 -2
View File
@@ -32,7 +32,7 @@ def migrate_cols_file(res: Path) -> None:
return return
cols["View"] = cols.pop("Perspective") cols["View"] = cols.pop("Perspective")
cols["Max"] = cols.pop("Maximum") cols["Max"] = cols.pop("Maximum")
write_json(j, res) write_json(j, res)
def copy_state_files(state_path: Path) -> None: def copy_state_files(state_path: Path) -> None:
@@ -47,7 +47,6 @@ def copy_state_files(state_path: Path) -> None:
def copy_ipdb(ips_path: Path) -> None: def copy_ipdb(ips_path: Path) -> None:
home = Path.home() home = Path.home()
name = "ips.csv"
legacy = home / LEGACY_IPS_PATH legacy = home / LEGACY_IPS_PATH
if ips_path == legacy: if ips_path == legacy:
return return
-2
View File
@@ -1,11 +1,9 @@
import requests import requests
import os
import subprocess import subprocess
import sys import sys
from importlib import resources from importlib import resources
from packaging.version import Version, InvalidVersion from packaging.version import Version, InvalidVersion
from pathlib import Path
from dzgui.const.constants import APP_NAME_LOWER, REQUEST_TIMEOUT from dzgui.const.constants import APP_NAME_LOWER, REQUEST_TIMEOUT
from dzgui.const.endpoints import GITHUB_RELEASES, CODEBERG_RELEASES from dzgui.const.endpoints import GITHUB_RELEASES, CODEBERG_RELEASES
+2 -4
View File
@@ -3,20 +3,17 @@ import logging
import os import os
import sys import sys
from packaging.version import Version
from dzgui.api.mods import remove_stale_signatures from dzgui.api.mods import remove_stale_signatures
from dzgui.config.ipdb import get_ipdb from dzgui.config.ipdb import get_ipdb
from dzgui.config.userprefs import UserPrefs from dzgui.config.userprefs import UserPrefs
from dzgui.config.xdg import get_xdg_paths, parse_filepaths from dzgui.config.xdg import get_xdg_paths, parse_filepaths
from dzgui.const.constants import APP_NAME_LOWER
from dzgui.const.update import ALLOW_UPDATES from dzgui.const.update import ALLOW_UPDATES
from dzgui.init.coords import get_local_coords from dzgui.init.coords import get_local_coords
from dzgui.init.dayz import is_dayz_installed from dzgui.init.dayz import is_dayz_installed
from dzgui.init.flock import lock_acquire, lock_release from dzgui.init.flock import lock_acquire
from dzgui.init.migrate import ( from dzgui.init.migrate import (
has_new_config, has_new_config,
migrate_cols_file, migrate_cols_file,
@@ -107,6 +104,7 @@ def main() -> None:
rebuild_symlinks(XDG.config) rebuild_symlinks(XDG.config)
remove_stale_signatures(XDG.config, XDG.version) remove_stale_signatures(XDG.config, XDG.version)
# TODO: handle IP DB failure
get_ipdb(XDG.ips) get_ipdb(XDG.ips)
local_coords = get_local_coords(XDG.ips) local_coords = get_local_coords(XDG.ips)
-1
View File
@@ -1,5 +1,4 @@
from datetime import datetime from datetime import datetime
from pathlib import Path
def get_time() -> int: def get_time() -> int:
return int(datetime.now().timestamp()) return int(datetime.now().timestamp())
+2 -2
View File
@@ -1,6 +1,6 @@
import gi # noqa E402 import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk from gi.repository import Gtk, Gdk # noqa E402
def add_class(widget: Gtk.Widget, label: str) -> None: def add_class(widget: Gtk.Widget, label: str) -> None:
-1
View File
@@ -1,6 +1,5 @@
import re import re
import subprocess import subprocess
from pathlib import Path
CPU_FILE = "/proc/cpuinfo" CPU_FILE = "/proc/cpuinfo"
-2
View File
@@ -1,7 +1,5 @@
import os import os
import platform import platform
import re
import textwrap
from datetime import datetime from datetime import datetime
from pathlib import Path from pathlib import Path
+5 -4
View File
@@ -1,15 +1,16 @@
import multiprocessing import multiprocessing
from math import radians, cos, sin, asin, sqrt from math import radians, cos, sin, asin, sqrt
from typing import Self, TYPE_CHECKING from typing import TYPE_CHECKING
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa E402
import dzgui.util.ip as ip import dzgui.util.ip as ip
from dzgui.util.ip import GeolocationError from dzgui.util.ip import GeolocationError
from dzgui.util.localize import number from dzgui.util.localize import number
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk # noqa E402
if TYPE_CHECKING: if TYPE_CHECKING:
from dzgui.util.ip import Coords from dzgui.util.ip import Coords
-1
View File
@@ -1,5 +1,4 @@
import a2s import a2s
import gzip
import requests import requests
import shutil import shutil
import subprocess import subprocess
+2 -2
View File
@@ -1,6 +1,6 @@
import gi # noqa E402 import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gdk from gi.repository import Gdk # noqa E402
def is_navkey(key: int) -> bool: def is_navkey(key: int) -> bool:
nav_keys = [ nav_keys = [
+2 -2
View File
@@ -10,7 +10,7 @@ def number(num: int | float) -> str:
return locale.format_string(spec, num, grouping=True) return locale.format_string(spec, num, grouping=True)
def set_locale(): def set_locale() -> None:
locale.setlocale(locale.LC_ALL, "") locale.setlocale(locale.LC_ALL, "")
user_loc = loc if (loc := os.getenv("LC_CTYPE")) else "en_US.UTF-8" user_loc = loc if (loc := os.getenv("LC_CTYPE")) else "en_US.UTF-8"
locale.setlocale(locale.LC_NUMERIC, loc) locale.setlocale(locale.LC_NUMERIC, user_loc)
+2 -2
View File
@@ -1,6 +1,6 @@
import gi # noqa E402 import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk from gi.repository import Gtk # noqa E402
def set_surrounding_margins(widget: Gtk.Widget, margin: int) -> None: def set_surrounding_margins(widget: Gtk.Widget, margin: int) -> None:
""" """
-1
View File
@@ -1,5 +1,4 @@
import os import os
import shlex
import subprocess import subprocess
from dzgui.const.constants import APPID_DAYZ from dzgui.const.constants import APPID_DAYZ
-1
View File
@@ -1,5 +1,4 @@
from dataclasses import dataclass from dataclasses import dataclass
from typing import List, Dict
from dzgui.const.constants import SYSTEM_LOG from dzgui.const.constants import SYSTEM_LOG
-1
View File
@@ -1,4 +1,3 @@
import hashlib
import logging import logging
from pathlib import Path from pathlib import Path
+5 -5
View File
@@ -19,10 +19,6 @@ from enum import Enum
from pathlib import Path from pathlib import Path
from typing import Literal, Any from typing import Literal, Any
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa
# TODO: most likely very little of this will be retained # TODO: most likely very little of this will be retained
from dzgui.const.enum import ( from dzgui.const.enum import (
Preferences, Preferences,
@@ -35,7 +31,6 @@ from dzgui.const.enum import (
from dzgui.const.constants import NO_EXPAND, NO_FILL, EXPAND, FILL from dzgui.const.constants import NO_EXPAND, NO_FILL, EXPAND, FILL
from dzgui.const.constants import APP_NAME, APP_NAME_LOWER, WINDOW_DEFAULT_X, WINDOW_DEFAULT_Y from dzgui.const.constants import APP_NAME, APP_NAME_LOWER, WINDOW_DEFAULT_X, WINDOW_DEFAULT_Y
from dzgui.controllers.mc import Controller from dzgui.controllers.mc import Controller
from dzgui.util import css, dist, localize, strings, ip, deck, open_links from dzgui.util import css, dist, localize, strings, ip, deck, open_links
from dzgui.util.format import pluralize from dzgui.util.format import pluralize
@@ -62,6 +57,11 @@ from dzgui.views.dialogs.generic import GenericDialog
# TODO: not going to be in base anymore # TODO: not going to be in base anymore
import dzgui.util._json as JSON # noqa import dzgui.util._json as JSON # noqa
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa E402
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
# https://bugzilla.gnome.org/show_bug.cgi?id=708676 # https://bugzilla.gnome.org/show_bug.cgi?id=708676
warnings.filterwarnings("ignore", ".*g_value_get_int", Warning) warnings.filterwarnings("ignore", ".*g_value_get_int", Warning)
+4 -9
View File
@@ -1,16 +1,11 @@
import logging import logging
import functools
import gi # noqa E402
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk
from dzgui.const.enum import ButtonType from dzgui.const.enum import ButtonType
from dzgui.const.enum import NotebookPage from dzgui.const.constants import NO_EXPAND, NO_FILL
from dzgui.const.enum import RowType
from dzgui.const.constants import NO_EXPAND, NO_FILL, EXPAND, FILL
from typing import Callable import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk # noqa E402
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
+3 -3
View File
@@ -1,9 +1,9 @@
import gi # noqa E402 import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk from gi.repository import Gtk # noqa E402
class ConnectPanel(Gtk.Grid): class ConnectPanel(Gtk.Grid):
def __init__(self): def __init__(self) -> None:
super().__init__() super().__init__()
self.label = Gtk.Label(label="Connect by IP/ID") self.label = Gtk.Label(label="Connect by IP/ID")
+4 -4
View File
@@ -1,9 +1,9 @@
import gi # noqa E402
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk
from dzgui.const.constants import HELP_BUBBLE from dzgui.const.constants import HELP_BUBBLE
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk # noqa E402
class InfoEventBox(Gtk.EventBox): class InfoEventBox(Gtk.EventBox):
def __init__(self, text: str, parent: Gtk.Widget): def __init__(self, text: str, parent: Gtk.Widget):
super().__init__(margin_start=10) super().__init__(margin_start=10)
+2 -2
View File
@@ -1,9 +1,9 @@
import gi import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk from gi.repository import Gtk # noqa E402
class Icon(Gtk.Image): class Icon(Gtk.Image):
def __init__(self, name: str, l_margin=0): def __init__(self, name: str, l_margin=0) -> None:
super().__init__(icon_name=name, super().__init__(icon_name=name,
icon_size=Gtk.IconSize.BUTTON, icon_size=Gtk.IconSize.BUTTON,
margin_start=l_margin margin_start=l_margin
+2 -2
View File
@@ -1,6 +1,6 @@
import gi # noqa E402 import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk from gi.repository import Gtk # noqa E402
class LeftLabel(Gtk.Label): class LeftLabel(Gtk.Label):
def __init__(self, text: str, tooltip: str = ""): def __init__(self, text: str, tooltip: str = ""):
+5 -9
View File
@@ -1,16 +1,12 @@
import threading from typing import TYPE_CHECKING
import gi # noqa E402 from dzgui.const.enum import ModButton
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk, GLib
from dzgui.const.enum import ModButton, Popup
from dzgui.const.constants import NO_EXPAND, FILL from dzgui.const.constants import NO_EXPAND, FILL
from dzgui.util import strings from dzgui.util import strings
from dzgui.views.dialogs.generic import GenericDialog import gi
gi.require_version("Gtk", "3.0")
from typing import TYPE_CHECKING from gi.repository import Gtk # noqa E402
if TYPE_CHECKING: if TYPE_CHECKING:
from dzgui.controllers.mc import Controller from dzgui.controllers.mc import Controller
+1 -1
View File
@@ -1,6 +1,6 @@
import logging import logging
from dzgui.views.trees.tree_base import TreeView from dzgui.views.trees.tree_base import TreeView
from dzgui.const.enum import Popup, ContextMenu from dzgui.const.enum import ContextMenu
import gi import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
+5 -2
View File
@@ -1,3 +1,5 @@
import logging
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from importlib import resources from importlib import resources
@@ -8,6 +10,8 @@ import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk # noqa E402 from gi.repository import Gtk # noqa E402
logger = logging.getLogger(__name__)
if TYPE_CHECKING: if TYPE_CHECKING:
from dzgui.controllers.mc import Controller from dzgui.controllers.mc import Controller
@@ -19,11 +23,10 @@ class Changelog(Gtk.Box):
try: try:
changelog = resources.read_text(APP_NAME_LOWER, "data/CHANGELOG.md") changelog = resources.read_text(APP_NAME_LOWER, "data/CHANGELOG.md")
except OSError as e: except OSError as e:
logger.critical(e)
changelog = "Error: Failed to read changelog" changelog = "Error: Failed to read changelog"
# TODO: log error
# TODO: should long text be wrapped? # TODO: should long text be wrapped?
formatted = format_pango(changelog) formatted = format_pango(changelog)
self.changelog_label = Gtk.Label(valign=Gtk.Align.START, margin=15) self.changelog_label = Gtk.Label(valign=Gtk.Align.START, margin=15)
self.changelog_label.set_markup(formatted) self.changelog_label.set_markup(formatted)
+4 -6
View File
@@ -1,9 +1,3 @@
import typing
import gi # noqa E402
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
from dataclasses import fields from dataclasses import fields
from typing import Union, TYPE_CHECKING from typing import Union, TYPE_CHECKING
@@ -11,6 +5,10 @@ from dzgui.const.enum import NotebookPage
from dzgui.util.strings import developers from dzgui.util.strings import developers
from dzgui.util.css import add_class from dzgui.util.css import add_class
import gi # noqa E402
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk # noqa E402
if TYPE_CHECKING: if TYPE_CHECKING:
from dzgui.controllers.mc import Controller from dzgui.controllers.mc import Controller
from dzgui.config.userprefs import UserPrefs from dzgui.config.userprefs import UserPrefs
+9 -15
View File
@@ -1,18 +1,17 @@
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk # noqa
from pathlib import Path from pathlib import Path
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from dzgui.api import pefile as PeFile
from dzgui.api.steam import find_user_id
from dzgui.config import query
from dzgui.util import strings, css, open_links
from dzgui.views.components.label import LeftLabel from dzgui.views.components.label import LeftLabel
from dzgui.views.components.eventbox import InfoEventBox from dzgui.views.components.eventbox import InfoEventBox
from dzgui.views.components.icon import Icon
from dzgui.views.components.web_button import WebButton from dzgui.views.components.web_button import WebButton
from dzgui.views.dialogs.link_dialog import WorkshopLinkDialog from dzgui.views.dialogs.link_dialog import WorkshopLinkDialog
from dzgui.util import strings, css, open_links from dzgui.const.enum import Preferences, Popup
from dzgui.const.enum import Preferences, RowType, Popup
from dzgui.const.endpoints import STEAM_API_SETUP, BM_API_SETUP from dzgui.const.endpoints import STEAM_API_SETUP, BM_API_SETUP
from dzgui.const.constants import ( from dzgui.const.constants import (
APPID_DAYZ, APPID_DAYZ,
@@ -29,9 +28,9 @@ from dzgui.const.constants import (
VIEW_REVEAL, VIEW_REVEAL,
) )
from dzgui.config import query import gi
from dzgui.api import pefile as PeFile gi.require_version("Gtk", "3.0")
from dzgui.api.steam import find_user_id from gi.repository import Gtk, Gdk # noqa
if TYPE_CHECKING: if TYPE_CHECKING:
from dzgui.controllers.mc import Controller from dzgui.controllers.mc import Controller
@@ -264,7 +263,6 @@ class Options(Gtk.Box):
) -> None: ) -> None:
old_text = self.controller.query_config(enum) old_text = self.controller.query_config(enum)
button.set_sensitive(False) button.set_sensitive(False)
wait_msg = strings.dialog.working
match enum: match enum:
case Preferences.NAME: case Preferences.NAME:
value = entry.get_text().strip() value = entry.get_text().strip()
@@ -315,10 +313,6 @@ class Options(Gtk.Box):
def _on_radio_toggled( def _on_radio_toggled(
self, button: Gtk.RadioButton, context: Preferences self, button: Gtk.RadioButton, context: Preferences
) -> None: ) -> None:
AppNav = self.controller.get_mediator()
state = button.get_group()[0].get_active()
try: try:
self.controller.toggle_config(context) self.controller.toggle_config(context)
except Exception: except Exception:
+2 -2
View File
@@ -1,9 +1,9 @@
from dzgui.util.format import format_pango from dzgui.util.format import format_pango
from dzgui.util.strings import thanks from dzgui.util.strings import thanks
import gi # noqa E402 import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk from gi.repository import Gtk # noqa E402
""" """
Special thanks page recognizing contributors to the project in alpha-order Special thanks page recognizing contributors to the project in alpha-order
+6 -10
View File
@@ -1,18 +1,15 @@
import logging import logging
import multiprocessing
import subprocess from typing import Callable, TYPE_CHECKING
from dzgui.const.constants import SEPARATOR
from dzgui.util.keys import is_navkey
from dzgui.views.mixins.cursor_mixin import CursorMixin
import gi import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa
from dzgui.const.constants import SEPARATOR
from dzgui.util.keys import is_navkey
from dzgui.util import strings
from typing import Any, Callable, TYPE_CHECKING
from dzgui.views.mixins.cursor_mixin import CursorMixin
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
if TYPE_CHECKING: if TYPE_CHECKING:
@@ -85,7 +82,6 @@ class TreeView(CursorMixin, Gtk.TreeView):
self, treeview: Gtk.TreeView, event: Gdk.EventKey self, treeview: Gtk.TreeView, event: Gdk.EventKey
) -> None: ) -> None:
keyname = Gdk.keyval_name(event.keyval)
if is_navkey(event.keyval): if is_navkey(event.keyval):
# TODO: investigate this # TODO: investigate this
if self.sel_blocked is False: if self.sel_blocked is False:
+9 -16
View File
@@ -1,23 +1,16 @@
import logging import logging
import multiprocessing
import subprocess from typing import TYPE_CHECKING
from dzgui.const.enum import ContextMenuGroup
from dzgui.util import strings
from dzgui.views.trees.tree_base import TreeView
from dzgui.views.mixins.context_mixin import ContextMixin
import gi import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa E402 from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa E402
from dzgui.util.keys import is_navkey
from dzgui.util import strings
from typing import Any, TYPE_CHECKING
from dzgui.views.trees.tree_base import TreeView
from dzgui.views.mixins.context_mixin import ContextMixin
from dzgui.const.enum import ContextMenuGroup
from typing import Any
import dzgui.util._json as JSON # noqa
if TYPE_CHECKING: if TYPE_CHECKING:
from dzgui.controllers.mc import Controller from dzgui.controllers.mc import Controller
@@ -34,8 +27,8 @@ class LogTreeView(ContextMixin, TreeView):
self.set_headers_visible(True) self.set_headers_visible(True)
self.get_selection().set_mode(Gtk.SelectionMode.MULTIPLE) self.get_selection().set_mode(Gtk.SelectionMode.MULTIPLE)
s = self.controller.get_log_store() model = self.controller.get_log_store()
self.set_model(s) self.set_model(model)
for i, column_title in enumerate(strings.log_cols): for i, column_title in enumerate(strings.log_cols):
renderer = Gtk.CellRendererText() renderer = Gtk.CellRendererText()
+4 -6
View File
@@ -1,16 +1,14 @@
import logging import logging
import multiprocessing
import subprocess
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa
from dzgui.const.enum import RowType, NotebookPage from dzgui.const.enum import RowType, NotebookPage
from dzgui.util.open_links import open_link_by_rowtype from dzgui.util.open_links import open_link_by_rowtype
from dzgui.views.trees.tree_base import TreeView from dzgui.views.trees.tree_base import TreeView
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
if TYPE_CHECKING: if TYPE_CHECKING:
+9 -9
View File
@@ -1,18 +1,18 @@
import logging import logging
from typing import Any, Literal, TYPE_CHECKING from typing import Any, TYPE_CHECKING
from dzgui.util import strings, localize
from dzgui.views.trees.tree_base import TreeView
from dzgui.views.mixins.context_mixin import ContextMixin
from dzgui.views.mixins.mods_mixin import ModsMixin
from dzgui.const.enum import (
ContextMenuGroup,
)
import gi import gi
gi.require_version("Gtk", "3.0") gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa
from dzgui.const.enum import (
ContextMenuGroup,
RowType,
)
from dzgui.util import strings, localize
from dzgui.views.trees.tree_base import TreeView
from dzgui.views.mixins.context_mixin import ContextMixin
from dzgui.views.mixins.mods_mixin import ModsMixin
if TYPE_CHECKING: if TYPE_CHECKING:
from dzgui.controllers.mc import Controller from dzgui.controllers.mc import Controller
+3 -1
View File
@@ -45,12 +45,13 @@ test = [
"pre-commit==4.4.0", "pre-commit==4.4.0",
"pytest==8.4.2", "pytest==8.4.2",
"pytest-cov==7.0.0", "pytest-cov==7.0.0",
"PyGObject-stubs==2.13.0",
] ]
lint = [ lint = [
"mypy==1.17.0", "mypy==1.17.0",
"mypy_extensions==1.1.0", "mypy_extensions==1.1.0",
"ruff==0.11.13", "ruff==0.11.13",
"PyGObject-stubs==2.13.0",
"types-requests>=2.32.4",
] ]
dev = [ dev = [
"dzgui[docs,test,lint]" "dzgui[docs,test,lint]"
@@ -63,6 +64,7 @@ build-backend = "setuptools.build_meta"
[tool.ruff] [tool.ruff]
line-length = 88 line-length = 88
indent-width = 4 indent-width = 4
extend-exclude = ["tree_servers.py", "tree_server_mods.py", "dialogs", "right_panel.py", "filter_panel.py", "base.py", "*lib/a2s", "dist.py"]
[tool.ruff.format] [tool.ruff.format]
quote-style = "double" quote-style = "double"