public static void AttemptDrawAttributes(RequiresFeatureAttribute requiredFeature, OptinalFeatureAttribute optinalFeature) { var hasAttributes = requiredFeature != null || optinalFeature != null; var skin = EditorGUIUtility.GetBuiltinSkin(EditorSkin.Inspector); if (hasAttributes) { EditorGUILayout.BeginVertical(skin.box); } if (requiredFeature != null) { DrawRequiredFeatures(requiredFeature, skin); } if (optinalFeature != null) { DrawOptinalFeatures(optinalFeature, skin); } if (hasAttributes) { EditorGUILayout.EndVertical(); } }
private static void DrawOptinalFeatures(OptinalFeatureAttribute optinalFeature, GUISkin skin) { EditorGUILayout.LabelField("This effect optinally uses:", skin.GetStyle(GUISkinProperties.HeaderLabel)); foreach (var feature in optinalFeature.FeatureTypes) { EditorGUILayout.LabelField(feature.Name); } }