Option Strict On
Option Explicit On

Namespace Nexamas.UI.Theming

    ''' <summary>
    ''' Describes the fill and ring layers available for one interaction state.
    ''' </summary>
    ''' <remarks>
    ''' This structure is theme data only. It does not determine whether the state is active.
    ''' </remarks>
    <Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Advanced)>
    Friend Structure MASInteractionThemeState

        Friend Sub New(fill As MASInteractionThemeLayer,
                       ring As MASInteractionThemeLayer)
            _fill = fill
            _ring = ring
        End Sub

        Private ReadOnly _fill As MASInteractionThemeLayer
        Private ReadOnly _ring As MASInteractionThemeLayer

        Friend ReadOnly Property Fill As MASInteractionThemeLayer
            Get
                Return _fill
            End Get
        End Property

        Friend ReadOnly Property Ring As MASInteractionThemeLayer
            Get
                Return _ring
            End Get
        End Property

        Friend Shared ReadOnly Property None As MASInteractionThemeState
            Get
                Return New MASInteractionThemeState(MASInteractionThemeLayer.None, MASInteractionThemeLayer.None)
            End Get
        End Property

    End Structure

End Namespace