コンテンツにスキップ

InheritedElement クラス

InheritedWidgetを祖先マップへ登録し、その値に依存する子孫Elementへ変更を通知するElementです。

名前空間: FloatSoda.Elements
アセンブリ: FloatSoda.dll

public class InheritedElement : ComponentElement, IBuildContext, IComparable<Element>

object ← Element ← ComponentElement ← InheritedElement

WindowElement

IBuildContext, IComparable<Element>

ComponentElement.Mount(Element?), ComponentElement.FirstBuild(), ComponentElement.PerformRebuild(), ComponentElement.Build(), ComponentElement.VisitChildren(Action<Element>), Element.Widget, Element.Parent, Element.Depth, Element.RenderObject, Element.InheritedWidgets, Element.Dependencies, Element.Owner, Element.DependOnInheritedWidgetOfExactType<T>(), Element.GetElementForInheritedWidgetOfExactType<T>(), Element.UpdateInheritance(), Element.InDirtyList, Element.Dirty, Element.VisitChildren(Action<Element>), Element.Mount(Element?), Element.Slot, Element.UpdateChild(Element?, Widget?), Element.UpdateChild(Element?, Widget?, object?), Element.UpdateSlotForChild(Element, object?), Element.UpdateSlot(object?), Element.Update(Widget), Element.InflateWidget(Widget, object?), Element.AttachRenderObject(), Element.DetachRenderObject(), Element.DeactivateChild(Element), Element.Deactivate(), Element.DidChangeDependencies(), Element.MarkNeedsBuild(), Element.Reassemble(), Element.Rebuild(), Element.PerformRebuild(), Element.CompareTo(Element?), object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.MemberwiseClone(), object.ReferenceEquals(object?, object?), object.ToString()

ServiceScopeExtension.GetRequiredService<T>(IBuildContext), ServiceScopeExtension.GetService<T>(IBuildContext)

管理しているInheritedWidgetの子Widgetを返します。

public override Widget Build()

Widget

InheritedWidgetが公開する子Widget。

指定したElementを、このInheritedWidgetの変更通知先から除外します。

public void RemoveDependent(Element dependent)

dependent Element

依存関係を解除するElement。

管理するInheritedWidgetを置き換え、通知条件を満たす場合は登録済みの依存Elementへ変更を通知します。

public override void Update(Widget newWidget)

newWidget Widget

同じスコープを引き継ぐ新しいInheritedWidget。

更新後はこのElementを再構築し、依存先へ通知した場合は各依存Elementにも再構築を要求します。

指定したElementを、このInheritedWidgetの変更通知先として登録します。

public void UpdateDependencies(Element dependent)

dependent Element

このInheritedWidgetの値に依存するElement。

親から継承した祖先マップを複製し、このInheritedWidgetを登録型の最近傍要素として追加します。

protected override void UpdateInheritance()

InheritedWidget