3
3
# Created for TagStudio: https://github.com/CyanVoxel/TagStudio
4
4
5
5
6
- import typing
7
- from types import FunctionType
6
+ from collections . abc import Callable
7
+ from typing import TYPE_CHECKING , override
8
8
9
9
import structlog
10
10
from PySide6 .QtCore import QEvent , Qt , Signal
20
20
logger = structlog .get_logger (__name__ )
21
21
22
22
# Only import for type checking/autocompletion, will not be imported at runtime.
23
- if typing . TYPE_CHECKING :
23
+ if TYPE_CHECKING :
24
24
from tagstudio .core .library .alchemy .library import Library
25
25
26
26
@@ -31,7 +31,7 @@ def __init__(
31
31
self ,
32
32
id : int | None = 0 ,
33
33
alias : str | None = None ,
34
- on_remove_callback = None ,
34
+ on_remove_callback : Callable [[], None ] | None = None ,
35
35
) -> None :
36
36
super ().__init__ ()
37
37
@@ -84,11 +84,13 @@ def _adjust_width(self):
84
84
self .text_field .setMinimumWidth (text_width )
85
85
self .text_field .adjustSize ()
86
86
87
- def enterEvent (self , event : QEnterEvent ) -> None : # noqa: N802
87
+ @override
88
+ def enterEvent (self , event : QEnterEvent ) -> None :
88
89
self .update ()
89
90
return super ().enterEvent (event )
90
91
91
- def leaveEvent (self , event : QEvent ) -> None : # noqa: N802
92
+ @override
93
+ def leaveEvent (self , event : QEvent ) -> None :
92
94
self .update ()
93
95
return super ().leaveEvent (event )
94
96
@@ -106,9 +108,9 @@ def __init__(
106
108
has_edit : bool ,
107
109
has_remove : bool ,
108
110
library : "Library | None" = None ,
109
- on_remove_callback : FunctionType | None = None ,
110
- on_click_callback : FunctionType | None = None ,
111
- on_edit_callback : FunctionType | None = None ,
111
+ on_remove_callback : Callable [[], None ] | None = None ,
112
+ on_click_callback : Callable [[], None ] | None = None ,
113
+ on_edit_callback : Callable [[], None ] | None = None ,
112
114
) -> None :
113
115
super ().__init__ ()
114
116
self .tag = tag
@@ -271,13 +273,15 @@ def set_tag(self, tag: Tag | None) -> None:
271
273
def set_has_remove (self , has_remove : bool ):
272
274
self .has_remove = has_remove
273
275
274
- def enterEvent (self , event : QEnterEvent ) -> None : # noqa: N802
276
+ @override
277
+ def enterEvent (self , event : QEnterEvent ) -> None :
275
278
if self .has_remove :
276
279
self .remove_button .setHidden (False )
277
280
self .update ()
278
281
return super ().enterEvent (event )
279
282
280
- def leaveEvent (self , event : QEvent ) -> None : # noqa: N802
283
+ @override
284
+ def leaveEvent (self , event : QEvent ) -> None :
281
285
if self .has_remove :
282
286
self .remove_button .setHidden (True )
283
287
self .update ()
0 commit comments