Class TvmMediaWidget<W extends org.teavm.jso.dom.html.HTMLMediaElement>

  • Type Parameters:
    W - type of TeaVM widget.
    All Implemented Interfaces:
    io.github.mmm.event.EventSource<io.github.mmm.ui.api.event.UiEvent,​io.github.mmm.ui.api.event.UiEventListener>, io.github.mmm.ui.api.attribute.AttributeFeatureMedia, io.github.mmm.ui.api.attribute.AttributeFeaturePlayback, io.github.mmm.ui.api.attribute.AttributeFeatureVolume, io.github.mmm.ui.api.attribute.AttributeReadAttached, io.github.mmm.ui.api.attribute.AttributeReadEnabled, io.github.mmm.ui.api.attribute.AttributeReadId, io.github.mmm.ui.api.attribute.AttributeReadValid, io.github.mmm.ui.api.attribute.AttributeReadVisible, io.github.mmm.ui.api.attribute.AttributeWriteEnabled, io.github.mmm.ui.api.attribute.AttributeWriteId, io.github.mmm.ui.api.attribute.AttributeWriteReadOnly, io.github.mmm.ui.api.attribute.AttributeWriteTooltip, io.github.mmm.ui.api.attribute.AttributeWriteValidationFailure, io.github.mmm.ui.api.attribute.AttributeWriteVisible, io.github.mmm.ui.api.widget.media.UiMediaWidget, io.github.mmm.ui.api.widget.UiActiveWidget, io.github.mmm.ui.api.widget.UiNativeWidget, io.github.mmm.ui.api.widget.UiRegularWidget, io.github.mmm.ui.api.widget.UiWidget, io.github.mmm.ui.spi.widget.UiNativeWidgetWrapper<W>
    Direct Known Subclasses:
    TvmAudioPlayer, TvmVideoPlayer

    public abstract class TvmMediaWidget<W extends org.teavm.jso.dom.html.HTMLMediaElement>
    extends TvmActiveWidget<W>
    implements io.github.mmm.ui.api.widget.media.UiMediaWidget
    Implementation of UiMediaWidget using TeaVM.
    Since:
    1.0.0
    • Constructor Detail

      • TvmMediaWidget

        public TvmMediaWidget​(W widget)
        The constructor.
        Parameters:
        widget - the TeaVM widget.
    • Method Detail

      • getMedia

        public io.github.mmm.ui.api.datatype.media.UiMedia getMedia()
        Specified by:
        getMedia in interface io.github.mmm.ui.api.widget.media.UiMediaWidget
      • setMedia

        public void setMedia​(io.github.mmm.ui.api.datatype.media.UiMedia media)
        Specified by:
        setMedia in interface io.github.mmm.ui.api.widget.media.UiMediaWidget
      • setMedia

        protected void setMedia​(org.teavm.jso.dom.html.HTMLMediaElement mediaElement,
                                io.github.mmm.ui.api.datatype.media.UiMedia media)
        Parameters:
        mediaElement - the HTMLMediaElement.
        media - the UiMedia to apply.
      • isPlaying

        public boolean isPlaying()
        Specified by:
        isPlaying in interface io.github.mmm.ui.api.attribute.AttributeFeaturePlayback
      • setPlaying

        public void setPlaying​(boolean playing)
        Specified by:
        setPlaying in interface io.github.mmm.ui.api.attribute.AttributeFeaturePlayback
      • getVolume

        public double getVolume()
        Specified by:
        getVolume in interface io.github.mmm.ui.api.attribute.AttributeFeatureVolume
      • setVolume

        public void setVolume​(double volume)
        Specified by:
        setVolume in interface io.github.mmm.ui.api.attribute.AttributeFeatureVolume
      • isMuted

        public boolean isMuted()
        Specified by:
        isMuted in interface io.github.mmm.ui.api.attribute.AttributeFeatureVolume
      • setMuted

        public void setMuted​(boolean mute)
        Specified by:
        setMuted in interface io.github.mmm.ui.api.attribute.AttributeFeatureVolume
      • getPosition

        public double getPosition()
        Specified by:
        getPosition in interface io.github.mmm.ui.api.attribute.AttributeFeatureMedia
      • setPosition

        public void setPosition​(double position)
        Specified by:
        setPosition in interface io.github.mmm.ui.api.attribute.AttributeFeatureMedia
      • getDuration

        public double getDuration()
        Specified by:
        getDuration in interface io.github.mmm.ui.api.attribute.AttributeFeatureMedia
      • setEnabledNative

        protected void setEnabledNative​(boolean enabled)
        Specified by:
        setEnabledNative in class TvmActiveWidget<W extends org.teavm.jso.dom.html.HTMLMediaElement>