public override IEnumerable <VFXSetting> GetSettings(bool listHidden, VFXSettingAttribute.VisibleFlags flags) { var settings = base.GetSettings(listHidden, flags); settings = settings.Concat(subOutput.GetSettings(listHidden, flags)); return(settings); }
public virtual IEnumerable <VFXSetting> GetSettings(bool listHidden, VFXSettingAttribute.VisibleFlags flags = VFXSettingAttribute.VisibleFlags.All) { return(GetType().GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance).Where(f => { var attrArray = f.GetCustomAttributes(typeof(VFXSettingAttribute), true); if (attrArray.Length == 1) { var attr = attrArray[0] as VFXSettingAttribute; if (listHidden) { return true; } return (attr.visibleFlags & flags) != 0 && !filteredOutSettings.Contains(f.Name); } return false; }).Select(field => new VFXSetting(field, this))); }
public override IEnumerable <VFXSetting> GetSettings(bool listHidden, VFXSettingAttribute.VisibleFlags flags) { return(GetData().GetSettings(listHidden, flags)); // Just a bridge on data }