From 0bb12a083552a2cd021c13c2bbe136dc8faeff36 Mon Sep 17 00:00:00 2001 From: Faraphel Date: Sun, 14 Aug 2022 11:45:34 +0200 Subject: [PATCH] now using TYPE_CHECKING instead of using dummy type int --- source/__init__.py | 8 ++++---- source/gui/mod_settings.py | 8 +++++--- source/gui/preview/__init__.py | 6 +++--- source/gui/preview/track_formatting.py | 5 +++-- source/gui/preview/track_selecting.py | 6 +++--- source/gui/preview/track_sorting.py | 4 +++- source/mkw/Cup.py | 11 ++++++++--- source/mkw/MKWColor.py | 1 - source/mkw/ModConfig.py | 1 - source/mkw/Patch/Patch.py | 7 +++++-- source/mkw/Patch/PatchDirectory.py | 8 ++++++-- source/mkw/Patch/PatchFile.py | 8 ++++++-- source/mkw/Patch/PatchObject.py | 7 +++++-- source/mkw/Patch/PatchOperation/BmgDecoder.py | 6 +++--- source/mkw/Patch/PatchOperation/BmgEncoder.py | 5 +++-- .../Patch/PatchOperation/BmgTxtEditor/CTFileLayer.py | 6 ++++-- .../BmgTxtEditor/FormatOriginalTrackLayer.py | 5 +++-- .../mkw/Patch/PatchOperation/BmgTxtEditor/IDLayer.py | 6 ++++-- .../Patch/PatchOperation/BmgTxtEditor/PatchLayer.py | 6 ++++-- .../Patch/PatchOperation/BmgTxtEditor/RegexLayer.py | 5 +++-- .../mkw/Patch/PatchOperation/BmgTxtEditor/__init__.py | 6 ++++-- source/mkw/Patch/PatchOperation/ImageDecoder.py | 6 +++--- .../Patch/PatchOperation/ImageEditor/ColorLayer.py | 6 ++++-- .../Patch/PatchOperation/ImageEditor/ImageLayer.py | 5 +++++ .../mkw/Patch/PatchOperation/ImageEditor/TextLayer.py | 8 +++++++- .../mkw/Patch/PatchOperation/ImageEditor/__init__.py | 6 ++++-- source/mkw/Patch/PatchOperation/ImageEncoder.py | 6 +++--- source/mkw/Patch/PatchOperation/Rename.py | 6 +++--- source/mkw/Patch/PatchOperation/Special.py | 6 +++--- source/mkw/Patch/PatchOperation/StrEditor.py | 8 ++++++-- source/mkw/Patch/PatchOperation/__init__.py | 6 ++++-- source/mkw/Patch/__init__.py | 7 +++---- 32 files changed, 124 insertions(+), 71 deletions(-) diff --git a/source/__init__.py b/source/__init__.py index edcea6a..ecb8f23 100644 --- a/source/__init__.py +++ b/source/__init__.py @@ -11,11 +11,11 @@ __author__ = 'Faraphel' discord_url = "https://discord.gg/HEYW5v8ZCd" github_wiki_url = "https://github.com/Faraphel/MKWF-Install/wiki/help" -Ko = 1_000 -Mo = 1_000 * Ko -Go = 1_000 * Mo +Ko: int = 1_000 +Mo: int = 1_000 * Ko +Go: int = 1_000 * Mo -minimum_space_available = 15*Go +minimum_space_available: int = 15*Go def threaded(func: Callable) -> Callable: diff --git a/source/gui/mod_settings.py b/source/gui/mod_settings.py index 1d404fe..d14f878 100644 --- a/source/gui/mod_settings.py +++ b/source/gui/mod_settings.py @@ -1,10 +1,12 @@ import tkinter from tkinter import ttk +from typing import TYPE_CHECKING + from source.translation import translate as _ - -ModConfig: any -AbstractModSettings: any +if TYPE_CHECKING: + from source.mkw.ModConfig import ModConfig + from source.mkw.ModSettings import AbstractModSettings class Window(tkinter.Toplevel): diff --git a/source/gui/preview/__init__.py b/source/gui/preview/__init__.py index 1190be0..3eff68a 100644 --- a/source/gui/preview/__init__.py +++ b/source/gui/preview/__init__.py @@ -1,9 +1,9 @@ import tkinter from abc import abstractmethod, ABC -from typing import Type +from typing import Type, TYPE_CHECKING - -ModConfig: any +if TYPE_CHECKING: + from source.mkw.ModConfig import ModConfig class InvalidPreviewWindowName(Exception): diff --git a/source/gui/preview/track_formatting.py b/source/gui/preview/track_formatting.py index c27ab8f..28df018 100644 --- a/source/gui/preview/track_formatting.py +++ b/source/gui/preview/track_formatting.py @@ -1,12 +1,13 @@ import tkinter from tkinter import ttk +from typing import TYPE_CHECKING import re from source.mkw.MKWColor import MKWColor from source.gui.preview import AbstractPreviewWindow - -ModConfig: any +if TYPE_CHECKING: + from source.mkw.ModConfig import ModConfig class Window(AbstractPreviewWindow): diff --git a/source/gui/preview/track_selecting.py b/source/gui/preview/track_selecting.py index ee60e2d..0a70835 100644 --- a/source/gui/preview/track_selecting.py +++ b/source/gui/preview/track_selecting.py @@ -1,13 +1,13 @@ import tkinter from tkinter import ttk -import re +from typing import TYPE_CHECKING from source.mkw.MKWColor import MKWColor from source.gui.preview import AbstractPreviewWindow from source.gui import better_gui_error - -ModConfig: any +if TYPE_CHECKING: + from source.mkw.ModConfig import ModConfig class Window(AbstractPreviewWindow): diff --git a/source/gui/preview/track_sorting.py b/source/gui/preview/track_sorting.py index 3215060..47334d9 100644 --- a/source/gui/preview/track_sorting.py +++ b/source/gui/preview/track_sorting.py @@ -1,11 +1,13 @@ import tkinter from tkinter import ttk +from typing import TYPE_CHECKING from source.mkw.MKWColor import MKWColor from source.gui.preview import AbstractPreviewWindow from source.gui import better_gui_error -ModConfig: any +if TYPE_CHECKING: + from source.mkw.ModConfig import ModConfig class Window(AbstractPreviewWindow): diff --git a/source/mkw/Cup.py b/source/mkw/Cup.py index 650d689..16a0b61 100644 --- a/source/mkw/Cup.py +++ b/source/mkw/Cup.py @@ -1,11 +1,16 @@ -# class that represent a mario kart wii cup +from typing import TYPE_CHECKING + from PIL import Image, ImageDraw, ImageFont - -ModConfig: any +if TYPE_CHECKING: + from source.mkw import ModConfig class Cup: + """ + class that represent a mario kart wii track cup + """ + __slots__ = ["_tracks", "cup_name", "cup_id"] _last_cup_id = 0 diff --git a/source/mkw/MKWColor.py b/source/mkw/MKWColor.py index 9b1ab6f..3090619 100644 --- a/source/mkw/MKWColor.py +++ b/source/mkw/MKWColor.py @@ -1,4 +1,3 @@ - class ColorNotFound(Exception): def __init__(self, color_data: any): super().__init__(f'Can\'t find color "{color_data}"') diff --git a/source/mkw/ModConfig.py b/source/mkw/ModConfig.py index 2df1bda..e3d065e 100644 --- a/source/mkw/ModConfig.py +++ b/source/mkw/ModConfig.py @@ -18,7 +18,6 @@ from source.wt.szs import SZSPath CT_ICON_SIZE: int = 128 -Thread: any default_global_settings: dict[str, dict[str, str]] = { "replace_random_new": { diff --git a/source/mkw/Patch/Patch.py b/source/mkw/Patch/Patch.py index 77258da..65a3db0 100644 --- a/source/mkw/Patch/Patch.py +++ b/source/mkw/Patch/Patch.py @@ -1,6 +1,9 @@ -from typing import Generator, IO +from pathlib import Path +from typing import Generator, IO, TYPE_CHECKING -from source.mkw.Patch import * +if TYPE_CHECKING: + from source.mkw.ModConfig import ModConfig + from source.mkw.ExtractedGame import ExtractedGame class Patch: diff --git a/source/mkw/Patch/PatchDirectory.py b/source/mkw/Patch/PatchDirectory.py index 33b23be..802e9dd 100644 --- a/source/mkw/Patch/PatchDirectory.py +++ b/source/mkw/Patch/PatchDirectory.py @@ -1,8 +1,12 @@ -from typing import Generator +from pathlib import Path +from typing import Generator, TYPE_CHECKING -from source.mkw.Patch import * +from source.mkw.Patch import PathOutsidePatch, InvalidPatchMode from source.mkw.Patch.PatchObject import PatchObject +if TYPE_CHECKING: + from source.mkw.ExtractedGame import ExtractedGame + class PatchDirectory(PatchObject): """ diff --git a/source/mkw/Patch/PatchFile.py b/source/mkw/Patch/PatchFile.py index 58cf763..85db9ee 100644 --- a/source/mkw/Patch/PatchFile.py +++ b/source/mkw/Patch/PatchFile.py @@ -1,11 +1,15 @@ from io import BytesIO -from typing import Generator, IO +from pathlib import Path +from typing import Generator, IO, TYPE_CHECKING -from source.mkw.Patch import * +from source.mkw.Patch import PathOutsidePatch, InvalidPatchMode from source.mkw.Patch.PatchOperation import AbstractPatchOperation from source.mkw.Patch.PatchObject import PatchObject from source.wt.szs import SZSPath +if TYPE_CHECKING: + from source.mkw.ExtractedGame import ExtractedGame + class PatchFile(PatchObject): """ diff --git a/source/mkw/Patch/PatchObject.py b/source/mkw/Patch/PatchObject.py index 003ce59..0d5f489 100644 --- a/source/mkw/Patch/PatchObject.py +++ b/source/mkw/Patch/PatchObject.py @@ -1,8 +1,11 @@ import json from abc import abstractmethod, ABC -from typing import Generator +from pathlib import Path +from typing import Generator, TYPE_CHECKING -from source.mkw.Patch import * +if TYPE_CHECKING: + from source.mkw.Patch import Patch + from source.mkw.ExtractedGame import ExtractedGame class PatchObject(ABC): diff --git a/source/mkw/Patch/PatchOperation/BmgDecoder.py b/source/mkw/Patch/PatchOperation/BmgDecoder.py index a48993d..1debbaf 100644 --- a/source/mkw/Patch/PatchOperation/BmgDecoder.py +++ b/source/mkw/Patch/PatchOperation/BmgDecoder.py @@ -1,11 +1,11 @@ from io import BytesIO -from typing import IO +from typing import IO, TYPE_CHECKING from source.mkw.Patch.PatchOperation import AbstractPatchOperation from source.wt import bmg - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class BmgDecoder(AbstractPatchOperation): diff --git a/source/mkw/Patch/PatchOperation/BmgEncoder.py b/source/mkw/Patch/PatchOperation/BmgEncoder.py index 817523f..80d5a9a 100644 --- a/source/mkw/Patch/PatchOperation/BmgEncoder.py +++ b/source/mkw/Patch/PatchOperation/BmgEncoder.py @@ -1,10 +1,11 @@ from io import BytesIO -from typing import IO +from typing import IO, TYPE_CHECKING from source.mkw.Patch.PatchOperation import AbstractPatchOperation from source.wt import bmg -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class BmgEncoder(AbstractPatchOperation): diff --git a/source/mkw/Patch/PatchOperation/BmgTxtEditor/CTFileLayer.py b/source/mkw/Patch/PatchOperation/BmgTxtEditor/CTFileLayer.py index fc85bad..a65c70d 100644 --- a/source/mkw/Patch/PatchOperation/BmgTxtEditor/CTFileLayer.py +++ b/source/mkw/Patch/PatchOperation/BmgTxtEditor/CTFileLayer.py @@ -1,8 +1,10 @@ +from typing import TYPE_CHECKING + from source.mkw.Patch.PatchOperation.BmgTxtEditor import AbstractLayer from source.wt import ctc - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class CTFileLayer(AbstractLayer): diff --git a/source/mkw/Patch/PatchOperation/BmgTxtEditor/FormatOriginalTrackLayer.py b/source/mkw/Patch/PatchOperation/BmgTxtEditor/FormatOriginalTrackLayer.py index 2630ddb..5bd321e 100644 --- a/source/mkw/Patch/PatchOperation/BmgTxtEditor/FormatOriginalTrackLayer.py +++ b/source/mkw/Patch/PatchOperation/BmgTxtEditor/FormatOriginalTrackLayer.py @@ -1,11 +1,12 @@ import re +from typing import TYPE_CHECKING from source.mkw.Patch.PatchOperation.BmgTxtEditor import AbstractLayer from source.mkw.Track.CustomTrack import CustomTrack from source.wt import bmg - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class FormatOriginalTrackLayer(AbstractLayer): diff --git a/source/mkw/Patch/PatchOperation/BmgTxtEditor/IDLayer.py b/source/mkw/Patch/PatchOperation/BmgTxtEditor/IDLayer.py index bd7779d..47a96cf 100644 --- a/source/mkw/Patch/PatchOperation/BmgTxtEditor/IDLayer.py +++ b/source/mkw/Patch/PatchOperation/BmgTxtEditor/IDLayer.py @@ -1,7 +1,9 @@ +from typing import TYPE_CHECKING + from source.mkw.Patch.PatchOperation.BmgTxtEditor import AbstractLayer - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class IDLayer(AbstractLayer): diff --git a/source/mkw/Patch/PatchOperation/BmgTxtEditor/PatchLayer.py b/source/mkw/Patch/PatchOperation/BmgTxtEditor/PatchLayer.py index 44d765e..127b0ce 100644 --- a/source/mkw/Patch/PatchOperation/BmgTxtEditor/PatchLayer.py +++ b/source/mkw/Patch/PatchOperation/BmgTxtEditor/PatchLayer.py @@ -1,8 +1,10 @@ +from typing import TYPE_CHECKING + from source.mkw.Patch.PatchOperation.BmgTxtEditor import AbstractLayer from source.wt import bmg - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class PatchLayer(AbstractLayer): diff --git a/source/mkw/Patch/PatchOperation/BmgTxtEditor/RegexLayer.py b/source/mkw/Patch/PatchOperation/BmgTxtEditor/RegexLayer.py index 1c87f73..1e9696a 100644 --- a/source/mkw/Patch/PatchOperation/BmgTxtEditor/RegexLayer.py +++ b/source/mkw/Patch/PatchOperation/BmgTxtEditor/RegexLayer.py @@ -1,9 +1,10 @@ import re +from typing import TYPE_CHECKING from source.mkw.Patch.PatchOperation.BmgTxtEditor import AbstractLayer - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class RegexLayer(AbstractLayer): diff --git a/source/mkw/Patch/PatchOperation/BmgTxtEditor/__init__.py b/source/mkw/Patch/PatchOperation/BmgTxtEditor/__init__.py index 646d535..0a1baf6 100644 --- a/source/mkw/Patch/PatchOperation/BmgTxtEditor/__init__.py +++ b/source/mkw/Patch/PatchOperation/BmgTxtEditor/__init__.py @@ -1,10 +1,12 @@ from io import BytesIO -from typing import IO +from typing import IO, TYPE_CHECKING from abc import ABC, abstractmethod -from source.mkw.Patch import * from source.mkw.Patch.PatchOperation import AbstractPatchOperation +if TYPE_CHECKING: + from source.mkw.Patch.PatchOperation import Layer + from source.mkw.Patch import Patch Layer: any Patch: any diff --git a/source/mkw/Patch/PatchOperation/ImageDecoder.py b/source/mkw/Patch/PatchOperation/ImageDecoder.py index bf08018..d7d02b6 100644 --- a/source/mkw/Patch/PatchOperation/ImageDecoder.py +++ b/source/mkw/Patch/PatchOperation/ImageDecoder.py @@ -1,11 +1,11 @@ from io import BytesIO -from typing import IO +from typing import IO, TYPE_CHECKING from source.mkw.Patch.PatchOperation import AbstractPatchOperation from source.wt import img - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class ImageDecoder(AbstractPatchOperation): diff --git a/source/mkw/Patch/PatchOperation/ImageEditor/ColorLayer.py b/source/mkw/Patch/PatchOperation/ImageEditor/ColorLayer.py index cad70b1..ac9bb94 100644 --- a/source/mkw/Patch/PatchOperation/ImageEditor/ColorLayer.py +++ b/source/mkw/Patch/PatchOperation/ImageEditor/ColorLayer.py @@ -1,9 +1,11 @@ +from typing import TYPE_CHECKING + from PIL import ImageDraw, Image from source.mkw.Patch.PatchOperation.ImageEditor import AbstractLayer - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class ColorLayer(AbstractLayer): diff --git a/source/mkw/Patch/PatchOperation/ImageEditor/ImageLayer.py b/source/mkw/Patch/PatchOperation/ImageEditor/ImageLayer.py index dcdd61b..fd24c80 100644 --- a/source/mkw/Patch/PatchOperation/ImageEditor/ImageLayer.py +++ b/source/mkw/Patch/PatchOperation/ImageEditor/ImageLayer.py @@ -1,8 +1,13 @@ +from typing import TYPE_CHECKING + from PIL import Image from source.mkw.Patch import * from source.mkw.Patch.PatchOperation.ImageEditor import AbstractLayer +if TYPE_CHECKING: + from source.mkw.Patch import Patch + class ImageLayer(AbstractLayer): """ diff --git a/source/mkw/Patch/PatchOperation/ImageEditor/TextLayer.py b/source/mkw/Patch/PatchOperation/ImageEditor/TextLayer.py index 86de89c..5dbb5ce 100644 --- a/source/mkw/Patch/PatchOperation/ImageEditor/TextLayer.py +++ b/source/mkw/Patch/PatchOperation/ImageEditor/TextLayer.py @@ -1,8 +1,14 @@ +from pathlib import Path +from typing import TYPE_CHECKING + from PIL import ImageFont, ImageDraw, Image -from source.mkw.Patch import * +from source.mkw.Patch import PathOutsidePatch from source.mkw.Patch.PatchOperation.ImageEditor import AbstractLayer +if TYPE_CHECKING: + from source.mkw.Patch import Patch + class TextLayer(AbstractLayer): """ diff --git a/source/mkw/Patch/PatchOperation/ImageEditor/__init__.py b/source/mkw/Patch/PatchOperation/ImageEditor/__init__.py index a007ada..1c9fabc 100644 --- a/source/mkw/Patch/PatchOperation/ImageEditor/__init__.py +++ b/source/mkw/Patch/PatchOperation/ImageEditor/__init__.py @@ -1,11 +1,13 @@ from io import BytesIO -from typing import IO +from typing import IO, TYPE_CHECKING from abc import abstractmethod, ABC from PIL import Image -from source.mkw.Patch import * from source.mkw.Patch.PatchOperation import AbstractPatchOperation +if TYPE_CHECKING: + from source.mkw.Patch.PatchOperation import Layer + from source.mkw.Patch import Patch Layer: any Patch: any diff --git a/source/mkw/Patch/PatchOperation/ImageEncoder.py b/source/mkw/Patch/PatchOperation/ImageEncoder.py index 7cb1db6..29e6d7b 100644 --- a/source/mkw/Patch/PatchOperation/ImageEncoder.py +++ b/source/mkw/Patch/PatchOperation/ImageEncoder.py @@ -1,11 +1,11 @@ from io import BytesIO -from typing import IO +from typing import IO, TYPE_CHECKING from source.mkw.Patch.PatchOperation import AbstractPatchOperation from source.wt import img - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class ImageEncoder(AbstractPatchOperation): diff --git a/source/mkw/Patch/PatchOperation/Rename.py b/source/mkw/Patch/PatchOperation/Rename.py index 3961fd7..aad4bfb 100644 --- a/source/mkw/Patch/PatchOperation/Rename.py +++ b/source/mkw/Patch/PatchOperation/Rename.py @@ -1,9 +1,9 @@ -from typing import IO +from typing import IO, TYPE_CHECKING from source.mkw.Patch.PatchOperation import AbstractPatchOperation - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class Rename(AbstractPatchOperation): diff --git a/source/mkw/Patch/PatchOperation/Special.py b/source/mkw/Patch/PatchOperation/Special.py index ed19359..2f6f932 100644 --- a/source/mkw/Patch/PatchOperation/Special.py +++ b/source/mkw/Patch/PatchOperation/Special.py @@ -1,9 +1,9 @@ -from typing import IO +from typing import IO, TYPE_CHECKING from source.mkw.Patch.PatchOperation import AbstractPatchOperation - -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class Special(AbstractPatchOperation): diff --git a/source/mkw/Patch/PatchOperation/StrEditor.py b/source/mkw/Patch/PatchOperation/StrEditor.py index a86e414..4c3a8e5 100644 --- a/source/mkw/Patch/PatchOperation/StrEditor.py +++ b/source/mkw/Patch/PatchOperation/StrEditor.py @@ -1,10 +1,14 @@ from io import BytesIO -from typing import IO +from pathlib import Path +from typing import IO, TYPE_CHECKING +from source.mkw.Patch import PathOutsidePatch from source.mkw.Patch.PatchOperation import AbstractPatchOperation -from source.mkw.Patch import * from source.wt import wstrt +if TYPE_CHECKING: + from source.mkw.Patch import Patch + class StrEditor(AbstractPatchOperation): """ diff --git a/source/mkw/Patch/PatchOperation/__init__.py b/source/mkw/Patch/PatchOperation/__init__.py index dd6859c..9cd02af 100644 --- a/source/mkw/Patch/PatchOperation/__init__.py +++ b/source/mkw/Patch/PatchOperation/__init__.py @@ -1,6 +1,8 @@ -from source.mkw.Patch import * from abc import ABC, abstractmethod -from typing import IO, Type +from typing import IO, Type, TYPE_CHECKING + +if TYPE_CHECKING: + from source.mkw.Patch import Patch Patch: any Layer: any diff --git a/source/mkw/Patch/__init__.py b/source/mkw/Patch/__init__.py index 2150691..ad626ce 100644 --- a/source/mkw/Patch/__init__.py +++ b/source/mkw/Patch/__init__.py @@ -1,9 +1,8 @@ from pathlib import Path +from typing import TYPE_CHECKING - -ModConfig: any -ExtractedGame: any -Patch: any +if TYPE_CHECKING: + from source.mkw.Patch import Patch class PathOutsidePatch(Exception):