﻿using System;
using BugseePlugin.Internals;

namespace BugseePlugin.Internals
{
    /// <summary>
    /// Base class for appearance properties containers
    /// </summary>
    internal class AppearanceBase
    {
        private Func<BugseeAppearanceProperties, AppearanceValue, AppearanceValue> getSetHandler;

        internal AppearanceBase(Func<BugseeAppearanceProperties, AppearanceValue, AppearanceValue> getSetHandler)
        {
            this.getSetHandler = getSetHandler;
        }


        internal AppearanceValue g(BugseeAppearanceProperties prop)
        {
            return getSetHandler(prop, null);
        }

        internal void s(BugseeAppearanceProperties prop, AppearanceValue value)
        {
            getSetHandler(prop, value);
        }
    }
}
