HomeWeb Components API Reference - v0.17.0
    Preparing search index...

    Class ScreenComponentElement

    The ScreenComponentElement interface provides properties and methods for manipulating <pc-screen> elements. The ScreenComponentElement interface also inherits the properties and methods of the HTMLElement interface.

    Engine component: ScreenComponent (screen).

    Hierarchy (View Summary)

    Index
    • get closestApp(): AppElement | null

      The nearest ancestor <pc-app> element, or null if this element has no <pc-app> ancestor. The search starts at the parent, so an element never resolves to itself.

      Returns AppElement | null

      The closest app element, or null.

    • get closestEntity(): EntityBaseElement | null

      The nearest ancestor element that fronts an entity — <pc-entity>, <pc-model> or <pc-node> — or null if this element has no such ancestor. The search starts at the parent, so an element never resolves to itself.

      Returns EntityBaseElement | null

      The closest entity-fronting element, or null.

    • get enabled(): boolean

      Gets the enabled state of the component.

      Returns boolean

      The enabled state of the component.

    • set enabled(value: boolean): void

      Sets the enabled state of the component.

      Parameters

      • value: boolean

        The enabled state of the component.

      Returns void

    • get scaleBlend(): number

      Gets how the screen's resolutions are weighted against each other.

      Returns number

      The scale blend factor.

    • set scaleBlend(value: number): void

      Sets how the screen's resolution and referenceResolution are weighted against each other when scaleMode is blend, from 0 (follow the resolution) to 1 (follow the reference resolution). Ignored while scaleMode is none.

      Parameters

      • value: number

        The scale blend factor.

      Returns void

    • get scaleMode(): "none" | "blend"

      Gets how the screen scales its contents.

      Returns "none" | "blend"

      The scale mode.

    • set scaleMode(value: "none" | "blend"): void

      Sets how the screen scales its contents. none renders at resolution and ignores referenceResolution; blend scales between the two, weighted by scaleBlend, which is what keeps a UI laid out at one resolution usable at another. Requires screenSpace - the engine forces none on a world-space screen, which does not support scaling.

      Parameters

      • value: "none" | "blend"

        The scale mode ('none' or 'blend').

      Returns void

    • Called when the element is fully initialized and ready. Subclasses should call this when they're ready. Resolves the ready promise and dispatches a bubbling, composed ready event. Signals at most once per readiness cycle: a repeat call before _resetReady has re-armed the promise does nothing.

      Returns void

    • Returns the ready promise to its pending state. Subclasses should call this when the resource their readiness announced is torn down (typically from disconnectedCallback), so that a later re-initialization can signal readiness again. Does nothing while the promise is still pending — an in-flight waiter carries over to the next readiness cycle rather than being stranded on a promise nothing will ever resolve.

      Returns void

    • Returns the data the component is created with. Overridden by subclasses to supply the initial values of their cached properties.

      Returns {
          priority: number;
          referenceResolution: Vec2;
          resolution: Vec2;
          scaleBlend: number;
          scaleMode: string;
          screenSpace: boolean;
      }

      The initial component data.

    • Returns a promise that resolves with this element when it's ready. This is the low-level primitive underlying whenReady, which is the recommended way to wait for elements.

      Readiness tracks the element's current lifecycle: once a ready element is torn down (for example by removing it from the document), this returns a fresh promise that resolves when the element is next ready. A promise obtained earlier stays resolved — call this again after re-inserting an element rather than reusing a promise from before its removal.

      Returns Promise<ScreenComponentElement>

      A promise that resolves with this element when it's ready.