Пример #1
0
        public override void OnVersionChanged(VisualElement ve, VersionChangeType versionChangeType)
        {
            if (renderChain == null)
            {
                return;
            }

            bool transformChanged    = (versionChangeType & VersionChangeType.Transform) != 0;
            bool sizeChanged         = (versionChangeType & VersionChangeType.Size) != 0;
            bool overflowChanged     = (versionChangeType & VersionChangeType.Overflow) != 0;
            bool borderRadiusChanged = (versionChangeType & VersionChangeType.BorderRadius) != 0;
            bool borderWidthChanged  = (versionChangeType & VersionChangeType.BorderWidth) != 0;
            bool renderHintsChanged  = (versionChangeType & VersionChangeType.RenderHints) != 0;

            if (renderHintsChanged)
            {
                renderChain.UIEOnRenderHintsChanged(ve);
            }

            if (transformChanged || sizeChanged || borderWidthChanged)
            {
                renderChain.UIEOnTransformOrSizeChanged(ve, transformChanged, sizeChanged || borderWidthChanged);
            }

            if (overflowChanged || borderRadiusChanged)
            {
                renderChain.UIEOnClippingChanged(ve, false);
            }

            if ((versionChangeType & VersionChangeType.Opacity) != 0)
            {
                renderChain.UIEOnOpacityChanged(ve);
            }

            if ((versionChangeType & VersionChangeType.Color) != 0)
            {
                renderChain.UIEOnColorChanged(ve);
            }

            if ((versionChangeType & VersionChangeType.Repaint) != 0)
            {
                renderChain.UIEOnVisualsChanged(ve, false);
            }
        }