コード例 #1
0
 public Setting(SettingDescription desc, string label, string explanation, bool isChecked)
 {
     Description = desc;
     Label       = label;
     Explanation = explanation;
     IsChecked   = isChecked;
 }
コード例 #2
0
        public TrackedSettingToast(SettingDescription description)
            : base(description.Name, description.Value, description.Shortcut)
        {
            FillFlowContainer <OptionLight> optionLights;

            Children = new Drawable[]
            {
                new Container
                {
                    Anchor = Anchor.BottomCentre,
                    Origin = Anchor.BottomCentre,
                    Margin = new MarginPadding {
                        Bottom = lights_bottom_margin
                    },
                    Children = new Drawable[]
                    {
                        optionLights = new FillFlowContainer <OptionLight>
                        {
                            Margin = new MarginPadding {
                                Bottom = 5
                            },
                            Spacing      = new Vector2(5, 0),
                            Direction    = FillDirection.Horizontal,
                            Anchor       = Anchor.TopCentre,
                            Origin       = Anchor.TopCentre,
                            AutoSizeAxes = Axes.Both
                        },
                    }
                }
            };

            int optionCount    = 0;
            int selectedOption = -1;

            switch (description.RawValue)
            {
            case bool val:
                optionCount = 1;
                if (val)
                {
                    selectedOption = 0;
                }
                break;

            case Enum _:
                var values = Enum.GetValues(description.RawValue.GetType());
                optionCount    = values.Length;
                selectedOption = Convert.ToInt32(description.RawValue);
                break;
            }

            ValueText.Origin = optionCount > 0 ? Anchor.BottomCentre : Anchor.Centre;

            for (int i = 0; i < optionCount; i++)
            {
                optionLights.Add(new OptionLight {
                    Glowing = i == selectedOption
                });
            }
        }
コード例 #3
0
 public Settings(SettingDescription desc, bool isChecked)
 {
     Description = desc;
     IsChecked   = isChecked;
 }
コード例 #4
0
 /// <summary>
 /// Vermerkt eine Einstellung.
 /// </summary>
 /// <typeparam name="TValueType">Der Datentyp des zugehörigen Wertes.</typeparam>
 /// <param name="name">Der Name der Einstellung.</param>
 /// <param name="defaultValue">Der voreingestellt Wert.</param>
 private static void Add <TValueType>(SettingNames name, TValueType defaultValue) => m_Settings[name] = new SettingDescription <TValueType>(name, defaultValue);
コード例 #5
0
 /// <summary>
 /// Vermerkt eine Einstellung.
 /// </summary>
 /// <typeparam name="T">Der Datentyp des zugehörigen Wertes.</typeparam>
 /// <param name="name">Der Name der Einstellung.</param>
 /// <param name="defaultValue">Der voreingestellt Wert.</param>
 private static void Add <T>(SettingNames name, T defaultValue)
 {
     // Create new
     m_Settings[name] = new SettingDescription <T>(name, defaultValue);
 }
コード例 #6
0
 private void OnEnable()
 {
     SettingDescription = FindObjectOfType <SettingDescription>();
     DescriptionButtonObject.GetComponent <Button>().onClick.AddListener(() => OnDescriptionButtonClick());
 }