mirror of
				https://github.com/Textualize/textual.git
				synced 2025-10-17 02:38:12 +03:00 
			
		
		
		
	slots
This commit is contained in:
		| @@ -92,6 +92,7 @@ class Idle(Event, type=EventType.IDLE): | ||||
|  | ||||
|  | ||||
| class Resize(Event, type=EventType.RESIZE): | ||||
|     __slots__ = ["width", "height"] | ||||
|     width: int | ||||
|     height: int | ||||
|  | ||||
| @@ -119,7 +120,7 @@ class Shutdown(Event, type=EventType.SHUTDOWN): | ||||
|  | ||||
| @rich_repr | ||||
| class Key(Event, type=EventType.KEY, bubble=True): | ||||
|     code: int = 0 | ||||
|     __slots__ = ["code"] | ||||
|  | ||||
|     def __init__(self, sender: MessageTarget, code: int) -> None: | ||||
|         super().__init__(sender) | ||||
| @@ -136,6 +137,8 @@ class Key(Event, type=EventType.KEY, bubble=True): | ||||
|  | ||||
| @rich_repr | ||||
| class Move(Event, type=EventType.MOVE): | ||||
|     __slots__ = ["x", "y"] | ||||
|  | ||||
|     def __init__(self, sender: MessageTarget, x: int, y: int) -> None: | ||||
|         super().__init__(sender) | ||||
|         self.x = x | ||||
| @@ -148,6 +151,8 @@ class Move(Event, type=EventType.MOVE): | ||||
|  | ||||
| @rich_repr | ||||
| class _MouseBase(Event, type=EventType.PRESS): | ||||
|     __slots__ = ["x", "y", "button", "alt", "ctrl", "shift"] | ||||
|  | ||||
|     def __init__( | ||||
|         self, | ||||
|         sender: MessageTarget, | ||||
| @@ -193,6 +198,8 @@ class DoubleClick(_MouseBase, type=EventType.DOUBLE_CLICK): | ||||
|  | ||||
| @rich_repr | ||||
| class Timer(Event, type=EventType.TIMER, priority=10): | ||||
|     __slots__ = ["time", "count", "callback"] | ||||
|  | ||||
|     def __init__( | ||||
|         self, | ||||
|         sender: MessageTarget, | ||||
| @@ -211,6 +218,8 @@ class Timer(Event, type=EventType.TIMER, priority=10): | ||||
|  | ||||
| @rich_repr | ||||
| class Enter(Event, type=EventType.ENTER): | ||||
|     __slots__ = ["x", "y"] | ||||
|  | ||||
|     def __init__(self, sender: MessageTarget, x: int, y: int) -> None: | ||||
|         super().__init__(sender) | ||||
|         self.x = x | ||||
| @@ -234,5 +243,5 @@ class Blur(Event, type=EventType.BLUR): | ||||
|  | ||||
|  | ||||
| class Update(Event, type=EventType.UPDATE): | ||||
|     def can_batch(self, event: Event) -> bool: | ||||
|     def can_batch(self, event: Message) -> bool: | ||||
|         return isinstance(event, Update) and event.sender == self.sender | ||||
|   | ||||
| @@ -9,17 +9,24 @@ from ._types import MessageTarget | ||||
| class Message: | ||||
|     """Base class for a message.""" | ||||
|  | ||||
|     __slots__ = [ | ||||
|         "sender", | ||||
|         "name", | ||||
|         "time", | ||||
|         "_no_default_action", | ||||
|         "_stop_propagation", | ||||
|     ] | ||||
|  | ||||
|     sender: MessageTarget | ||||
|     bubble: ClassVar[bool] = False | ||||
|     default_priority: ClassVar[int] = 0 | ||||
|  | ||||
|     _no_default_action: bool = False | ||||
|     _stop_propagaton: bool = False | ||||
|  | ||||
|     def __init__(self, sender: MessageTarget) -> None: | ||||
|         self.sender = sender | ||||
|         self.name = camel_to_snake(self.__class__.__name__) | ||||
|         self.time = monotonic() | ||||
|         self._no_default_action = False | ||||
|         self._stop_propagaton = False | ||||
|         super().__init__() | ||||
|  | ||||
|     def __init_subclass__(cls, bubble: bool = False, priority: int = 0) -> None: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Will McGugan
					Will McGugan