UnityEditor.EditorWrapper.Init C# (CSharp) Method

Init() private method

private Init ( UnityEngine obj, EditorFeatures requirements ) : bool
obj UnityEngine
requirements EditorFeatures
return bool
        private bool Init(UnityEngine.Object obj, EditorFeatures requirements)
        {
            this.editor = Editor.CreateEditor(obj);
            if (this.editor == null)
            {
                return false;
            }
            if (((requirements & EditorFeatures.PreviewGUI) > EditorFeatures.None) && !this.editor.HasPreviewGUI())
            {
                return false;
            }
            MethodInfo method = this.editor.GetType().GetMethod("OnSceneDrag", BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);
            if (method != null)
            {
                this.OnSceneDrag = (VoidDelegate) Delegate.CreateDelegate(typeof(VoidDelegate), this.editor, method);
            }
            else
            {
                if ((requirements & EditorFeatures.OnSceneDrag) > EditorFeatures.None)
                {
                    return false;
                }
                this.OnSceneDrag = new VoidDelegate(this.DefaultOnSceneDrag);
            }
            return true;
        }

Usage Example

 public static EditorWrapper Make(UnityEngine.Object obj, EditorFeatures requirements)
 {
   EditorWrapper editorWrapper = new EditorWrapper();
   if (editorWrapper.Init(obj, requirements))
     return editorWrapper;
   editorWrapper.Dispose();
   return (EditorWrapper) null;
 }
All Usage Examples Of UnityEditor.EditorWrapper::Init