public void SaveObject(string windowID)
        {
            if (this.m_Obj == null)
            {
                return;
            }
            string id = windowID + "." + m_ObjectAssemblyName + "." + m_ObjectClassName;

            EditorPrefsEx.SetObject(id, this.m_Obj);
        }
        public void LoadObject(string windowID)
        {
            if (this.m_Obj != null)
            {
                return;
            }
            string id = windowID + "." + m_ObjectAssemblyName + "." + m_ObjectClassName;

            if (!EditorPrefsEx.HasKey(id))
            {
                return;
            }
            Assembly assembly = Assembly.Load(m_ObjectAssemblyName);

            if (assembly != null)
            {
                Type type = assembly.GetType(m_ObjectClassName);
                if (type != null)
                {
                    this.m_Obj = EditorPrefsEx.GetObject(id, type);
                }
            }
        }
        public void ClearObject(string windowID)
        {
            string id = windowID + "." + m_ObjectAssemblyName + "." + m_ObjectClassName;

            EditorPrefsEx.DeleteKey(id);
        }