Пример #1
0
        public static void Render(IOutlineSettingsEx settings, UnityEngine.Object undoContext)
        {
            var obj = (OutlineSettings)EditorGUILayout.ObjectField("Outline Settings", settings.OutlineSettings, typeof(OutlineSettings), true);

            if (settings.OutlineSettings != obj)
            {
                Undo.RecordObject(undoContext, "Settings");
                settings.OutlineSettings = obj;
            }

            if (obj)
            {
                EditorGUI.BeginDisabledGroup(true);
                EditorGUI.indentLevel += 1;

                Render((IOutlineSettings)settings, undoContext);

                EditorGUILayout.HelpBox(string.Format("Outline settings are overriden with values from {0}.", obj.name), MessageType.Info, true);
                EditorGUI.indentLevel -= 1;
                EditorGUI.EndDisabledGroup();
            }
            else
            {
                EditorGUI.indentLevel += 1;

                Render((IOutlineSettings)settings, undoContext);

                EditorGUI.indentLevel -= 1;
            }
        }
 protected void Init(IOutlineSettingsEx settings)
 {
     _settings       = settings;
     _changeTracking = settings as IChangeTracking;
     base.Init(settings);
 }