public override void SetEntryData(SettingsEntryBase entryData) { rangeEntry = CastEntryData <SettingsEntryRange <T> >(entryData); label.Text = entryData.Name; slider.IsWholeNumber = rangeEntry is SettingsEntryInt; }
/// <summary> /// Creates ane returns a new content entry for specified entry data. /// </summary> private BaseContentEntry CreateEntryObject(SettingsEntryBase entryData) { if (entryData == null) { throw new NullReferenceException("entryData mustn't be null!"); } if (entryData is SettingsEntryAction) { return(CreateChild <ContentButtonEntry>("action")); } else if (entryData is SettingsEntryBool) { return(CreateChild <ContentToggleEntry>("bool")); } else if (entryData is SettingsEntryEnum) { return(CreateChild <ContentSelectionEntry>("enum")); } else if (entryData is SettingsEntryFloat) { return(CreateChild <ContentFloatEntry>("float")); } else if (entryData is SettingsEntryInt) { return(CreateChild <ContentIntEntry>("int")); } else if (entryData is SettingsEntryString) { return(CreateChild <ContentInputEntry>("string")); } throw new Exception("Unsupported entry type: " + entryData.GetType().Name); }
/// <summary> /// Tries casting the specified entry data as type T and returns it. /// If failed, it will throw an exception. /// </summary> protected T CastEntryData <T>(SettingsEntryBase entryData) where T : SettingsEntryBase { if (entryData is T t) { return(t); } throw new ArgumentException("entryData is not a type of " + typeof(T).Name); }
public override void SetEntryData(SettingsEntryBase entryData) { enumEntry = CastEntryData <SettingsEntryEnum>(entryData); label.Text = enumEntry.Name; dropdownContext.Datas.Clear(); foreach (var item in enumEntry.GetValues()) { dropdownContext.Datas.Add(new DropdownData(item)); } dropdownContext.SelectData(dropdownContext.FindData(d => d.Text.Equals(enumEntry.Value, StringComparison.Ordinal))); }
public override void SetEntryData(SettingsEntryBase entryData) { if (boolEntry != null) { boolEntry.OnDataValueChange -= OnEntryValueChange; } boolEntry = CastEntryData <SettingsEntryBool>(entryData); boolEntry.OnDataValueChange += OnEntryValueChange; toggle.LabelText = boolEntry.Name; toggle.IsFocused = boolEntry.Value; }
public override void SetEntryData(SettingsEntryBase entryData) { if (stringEntry != null) { stringEntry.OnDataValueChange -= OnEntryValueChange; } stringEntry = CastEntryData <SettingsEntryString>(entryData); stringEntry.OnDataValueChange += OnEntryValueChange; label.Text = stringEntry.Name; input.Text = stringEntry.Value; }
public override void SetEntryData(SettingsEntryBase entryData) { if (this.rangeEntry != null) { this.rangeEntry.OnDataValueChange -= OnEntryValueChange; } base.SetEntryData(entryData); rangeEntry.OnDataValueChange += OnEntryValueChange; slider.MinValue = rangeEntry.MinValue; slider.MaxValue = rangeEntry.MaxValue; slider.Value = rangeEntry.Value; }
public override void SetEntryData(SettingsEntryBase entryData) { actionEntry = CastEntryData <SettingsEntryAction>(entryData); button.LabelText = entryData.Name; }
/// <summary> /// Sets entry data to be represented by this object. /// </summary> public abstract void SetEntryData(SettingsEntryBase entryData);