mirror of
https://github.com/Textualize/textual.git
synced 2025-10-17 02:38:12 +03:00
made register / unregister private
This commit is contained in:
@@ -40,18 +40,31 @@ class NodeList:
|
||||
return widget in self._nodes
|
||||
|
||||
def _append(self, widget: Widget) -> None:
|
||||
"""Append a Widget.
|
||||
|
||||
Args:
|
||||
widget (Widget): A widget.
|
||||
"""
|
||||
if widget not in self._nodes_set:
|
||||
self._nodes.append(widget)
|
||||
self._nodes_set.add(widget)
|
||||
self._updates += 1
|
||||
|
||||
def _remove(self, widget: Widget) -> None:
|
||||
"""Remove a widget from the list.
|
||||
|
||||
Removing a widget not in the list is a null-op.
|
||||
|
||||
Args:
|
||||
widget (Widget): A Widget in the list.
|
||||
"""
|
||||
if widget in self._nodes_set:
|
||||
del self._nodes[self._nodes.index(widget)]
|
||||
self._nodes_set.remove(widget)
|
||||
self._updates += 1
|
||||
|
||||
def _clear(self) -> None:
|
||||
"""Clear the node list."""
|
||||
if self._nodes:
|
||||
self._nodes.clear()
|
||||
self._nodes_set.clear()
|
||||
|
||||
@@ -603,7 +603,7 @@ class App(Generic[ReturnType], DOMNode):
|
||||
as keyword args they will be assigned an id of the key.
|
||||
|
||||
"""
|
||||
self.register(self.screen, *anon_widgets, **widgets)
|
||||
self._register(self.screen, *anon_widgets, **widgets)
|
||||
|
||||
def mount_all(self, widgets: Iterable[Widget]) -> None:
|
||||
"""Mount widgets from an iterable.
|
||||
@@ -612,7 +612,7 @@ class App(Generic[ReturnType], DOMNode):
|
||||
widgets (Iterable[Widget]): An iterable of widgets.
|
||||
"""
|
||||
for widget in widgets:
|
||||
self.register(self.screen, widget)
|
||||
self._register(self.screen, widget)
|
||||
|
||||
def push_screen(self, screen: Screen | None = None) -> Screen:
|
||||
"""Push a new screen on the screen stack.
|
||||
@@ -856,7 +856,7 @@ class App(Generic[ReturnType], DOMNode):
|
||||
return True
|
||||
return False
|
||||
|
||||
def register(
|
||||
def _register(
|
||||
self, parent: DOMNode, *anon_widgets: Widget, **widgets: Widget
|
||||
) -> None:
|
||||
"""Mount widget(s) so they may receive events.
|
||||
@@ -878,13 +878,13 @@ class App(Generic[ReturnType], DOMNode):
|
||||
widget.id = widget_id
|
||||
self._register_child(parent, widget)
|
||||
if widget.children:
|
||||
self.register(widget, *widget.children)
|
||||
self._register(widget, *widget.children)
|
||||
apply_stylesheet(widget)
|
||||
|
||||
for _widget_id, widget in name_widgets:
|
||||
widget.post_message_no_wait(events.Mount(sender=parent))
|
||||
|
||||
def unregister(self, widget: Widget) -> None:
|
||||
def _unregister(self, widget: Widget) -> None:
|
||||
"""Unregister a widget.
|
||||
|
||||
Args:
|
||||
@@ -1016,7 +1016,7 @@ class App(Generic[ReturnType], DOMNode):
|
||||
# If the event has been forwarded it may have bubbled up back to the App
|
||||
if isinstance(event, events.Mount):
|
||||
screen = Screen()
|
||||
self.register(self, screen)
|
||||
self._register(self, screen)
|
||||
self.push_screen(screen)
|
||||
await super().on_event(event)
|
||||
|
||||
|
||||
@@ -219,7 +219,7 @@ class MessagePump:
|
||||
print(self, "close_messages")
|
||||
self._closing = True
|
||||
await self._message_queue.put(MessagePriority(None))
|
||||
self.app.unregister(self)
|
||||
self.app._unregister(self)
|
||||
cancel_tasks = list(self._child_tasks)
|
||||
for task in cancel_tasks:
|
||||
task.cancel()
|
||||
|
||||
@@ -191,7 +191,7 @@ class Widget(DOMNode):
|
||||
|
||||
|
||||
"""
|
||||
self.app.register(self, *anon_widgets, **widgets)
|
||||
self.app._register(self, *anon_widgets, **widgets)
|
||||
self.screen.refresh()
|
||||
|
||||
def compose(self) -> ComposeResult:
|
||||
|
||||
Reference in New Issue
Block a user