예제 #1
0
        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);
        }
예제 #2
0
        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
 }