All Downloads are FREE. Search and download functionalities are using the official Maven repository.

main.cesium.ClockViewModel.kt Maven / Gradle / Ivy

// Automatically generated - do not modify!

@file:Suppress(
    "EXTERNAL_CLASS_CONSTRUCTOR_PROPERTY_PARAMETER",
)

package cesium

/**
 * A view model which exposes a [Clock] for user interfaces.
 * @see Online Documentation
 *
 * @constructor
 * @property [clock] The clock object wrapped by this view model, if undefined a new instance will be created.
 * @see Online Documentation
 */
@JsName("\$cesium__ClockViewModel")
external class ClockViewModel(var clock: Clock = definedExternally) {
    /**
     * Gets the current system time.
     * This property is observable.
     * @see Online Documentation
     */
    var systemTime: JulianDate

    /**
     * Gets or sets the start time of the clock.
     * See [Clock.startTime].
     * This property is observable.
     * @see Online Documentation
     */
    var startTime: JulianDate

    /**
     * Gets or sets the stop time of the clock.
     * See [Clock.stopTime].
     * This property is observable.
     * @see Online Documentation
     */
    var stopTime: JulianDate

    /**
     * Gets or sets the current time.
     * See [Clock.currentTime].
     * This property is observable.
     * @see Online Documentation
     */
    var currentTime: JulianDate

    /**
     * Gets or sets the clock multiplier.
     * See [Clock.multiplier].
     * This property is observable.
     * @see Online Documentation
     */
    var multiplier: Double

    /**
     * Gets or sets the clock step setting.
     * See [Clock.clockStep].
     * This property is observable.
     * @see Online Documentation
     */
    var clockStep: ClockStep

    /**
     * Gets or sets the clock range setting.
     * See [Clock.clockRange].
     * This property is observable.
     * @see Online Documentation
     */
    var clockRange: ClockRange

    /**
     * Gets or sets whether the clock can animate.
     * See [Clock.canAnimate].
     * This property is observable.
     * @see Online Documentation
     */
    var canAnimate: Boolean

    /**
     * Gets or sets whether the clock should animate.
     * See [Clock.shouldAnimate].
     * This property is observable.
     * @see Online Documentation
     */
    var shouldAnimate: Boolean

    /**
     * Updates the view model with the contents of the underlying clock.
     * Can be called to force an update of the viewModel if the underlying
     * clock has changed and `Clock.tick` has not yet been called.
     * @see Online Documentation
     */
    fun synchronize()

    /**
     * @return true if the object has been destroyed, false otherwise.
     * @see Online Documentation
     */
    fun isDestroyed(): Boolean

    /**
     * Destroys the view model.  Should be called to
     * properly clean up the view model when it is no longer needed.
     * @see Online Documentation
     */
    fun destroy()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy