MCPcopy Create free account
hub / github.com/angular-rust/ux-components / add

Method add

src/elements/element.rs:530–553  ·  view source on GitHub ↗
(&self, child: &dyn Element)

Source from the content-addressed store, hash-verified

528 }
529
530 fn add(&self, child: &dyn Element) {
531 let mut comp = self.as_ref().borrow_mut();
532
533 assert!(
534 !comp.destroyed,
535 "Widget was already destroyed but is being interacted with"
536 );
537
538 if let Some(parent) = child.parent() {
539 parent.remove(child.id());
540
541 if parent.id() != self.id() {
542 comp.children.push(child.id());
543 child.set_parent(Some(self.id()));
544 if comp.onchildadd.is_some() {
545 let _ = comp.onchildadd.get().try_send(child.id());
546 }
547 }
548
549 if let Some(widget) = comp.canvas.as_ref() {
550 widget.sync_depth();
551 }
552 }
553 }
554
555 /// The child must be sure that his parent reference is correct.
556 /// The child must remove the parent reference by himself: child.set_parent(None);

Callers

nothing calls this directly

Implementers 15

transform.rssrc/elements/transform.rs
media_query.rssrc/elements/media_query.rs
navigation_toolbar.rssrc/elements/navigation_toolbar.rs
calendar_date_picker.rssrc/elements/calendar_date_picker.rs
custom_scroll_view.rssrc/elements/custom_scroll_view.rs
preferred_size.rssrc/elements/preferred_size.rs
rust_logo.rssrc/elements/rust_logo.rs
panel.rssrc/elements/panel.rs
single_child_scroll_view.rssrc/elements/single_child_scroll_view.
choice_chip.rssrc/elements/choice_chip.rs
tab_page_selector.rssrc/elements/tab_page_selector.rs
align.rssrc/elements/align.rs

Calls 9

pushMethod · 0.80
set_parentMethod · 0.80
try_sendMethod · 0.80
as_refMethod · 0.45
parentMethod · 0.45
removeMethod · 0.45
idMethod · 0.45
getMethod · 0.45
sync_depthMethod · 0.45

Tested by

no test coverage detected