override fun onPropertyChanged()

in platf-skia/src/commonMain/kotlin/org/jetbrains/letsPlot/skia/shape/Text.kt [101:124]


    override fun onPropertyChanged(prop: KProperty<*>) {
        if (prop == Text::x
            || prop == Text::y
            || prop == Text::textAlignment
            || prop == Text::textOrigin
        ) {
            invalidateLayout()
        }

        children.forEach { el ->
            el as TSpan
            when (prop) {
                Text::fill -> el.inheritValue(TSpan::fill, fill)
                Text::stroke -> el.inheritValue(TSpan::stroke, stroke)
                Text::strokeDashArray -> el.inheritValue(TSpan::strokeDashArray, strokeDashArray)
                Text::fontFamily -> el.inheritValue(TSpan::fontFamily, fontFamily)
                Text::fontSlant -> el.inheritValue(TSpan::fontSlant, fontSlant)
                Text::fontWeight -> el.inheritValue(TSpan::fontWeight, fontWeight)
                Text::fontSize -> el.inheritValue(TSpan::fontSize, fontSize)
                Text::strokeWidth -> el.inheritValue(TSpan::strokeWidth, strokeWidth)
                Text::strokeOpacity -> el.inheritValue(TSpan::strokeOpacity, strokeOpacity)
            }
        }
    }