<commit_before>﻿using System.Collections.Generic;

namespace AGS.API
{
    /// <summary>
    /// Allows changing properties of the button to "animate" it as it moves between states (idle, hover, pushed).
    /// Each <see cref="ButtonAnimation"/> represents one of this states, and can have a different animation (or image),
    /// border, background color (tint) or text rendering configuration (font, shadows, etc- <see cref="ITextConfig"/>).
    /// </summary>
    [PropertyFolder]
    public class ButtonAnimation
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="T:AGS.API.ButtonAnimation"/> class.
        /// </summary>
        /// <param name="animation">Animation.</param>
        public ButtonAnimation(IAnimation animation)
        {
            Animation = animation;
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="T:AGS.API.ButtonAnimation"/> class.
        /// </summary>
        /// <param name="image">Image.</param>
        public ButtonAnimation(IImage image)
        {
            Image = image;
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="T:AGS.API.ButtonAnimation"/> class.
        /// </summary>
        /// <param name="border">Border.</param>
        /// <param name="textConfig">Text config.</param>
        /// <param name="tint">Tint.</param>
        [MethodWizard]
        public ButtonAnimation(IBorderStyle border, ITextConfig textConfig, Color? tint)
        {
            Border = border;
            TextConfig = textConfig;
            Tint = tint;
        }

        /// <summary>
        /// Gets or sets the image.
        /// </summary>
        public IImage Image { get; set; }

        /// <summary>
        /// Gets or sets the animation.
        /// </summary>
        /// <value>The animation.</value><commit_msg>Button animation- annotations<commit_after>﻿using System.Collections.Generic;

namespace AGS.API
{
    /// <summary>
    /// Allows changing properties of the button to "animate" it as it moves between states (idle, hover, pushed).
    /// Each <see cref="ButtonAnimation"/> represents one of this states, and can have a different animation (or image),
    /// border, background color (tint) or text rendering configuration (font, shadows, etc- <see cref="ITextConfig"/>).
    /// </summary>
    [PropertyFolder]
    [ConcreteImplementation(DisplayName = "Button State Animation")]
    public class ButtonAnimation
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="T:AGS.API.ButtonAnimation"/> class.
        /// </summary>
        /// <param name="animation">Animation.</param>
        public ButtonAnimation(IAnimation animation)
        {
            Animation = animation;
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="T:AGS.API.ButtonAnimation"/> class.
        /// </summary>
        /// <param name="image">Image.</param>
        public ButtonAnimation(IImage image)
        {
            Image = image;
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="T:AGS.API.ButtonAnimation"/> class.
        /// </summary>
        /// <param name="border">Border.</param>
        /// <param name="textConfig">Text config.</param>
        /// <param name="tint">Tint.</param>
        public ButtonAnimation(IBorderStyle border, ITextConfig textConfig, Color? tint)
        {
            Border = border;
            TextConfig = textConfig;
            Tint = tint;
        }

        [MethodWizard]
        public ButtonAnimation(IAnimation animation, IBorderStyle border, ITextConfig textConfig, Color? tint)
        {
            Border = border;
            TextConfig = textConfig;
            Tint = tint;
            Animation = animation;
        }

        /// <summary>
        /// Gets or sets the image.
        /// </summary>
        public IImage Image { get; set; }

        /// <summary>
        /// Gets or sets the animation.
        /// </summary>
        /// <value>The animation.</value>
{'fraction_non_alphanumeric': 0.13544457978075516, 'fraction_numerical': 0.0, 'mean_word_length': 1.8895144264602393, 'pattern_counts': {'":': 0, '<': 61, '<?xml version=': 0, '>': 61, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2397672', 'n_tokens_mistral': 1070, 'n_tokens_neox': 1050, 'n_words': 312}