using System; using System.Collections.Generic; using UnityEngine; using UnityEditor; using VoxelBusters.CoreLibrary; namespace VoxelBusters.CoreLibrary.Editor.NativePlugins { public partial class NativeFeatureExporterSettings { [Serializable] public class IosPlatformProperties { #region Fields [SerializeField] private List m_files = new List(); [SerializeField] private List m_folders = new List(); [SerializeField] private List m_headerPaths = new List(); [SerializeField] private List m_frameworks = new List(); [SerializeField] private List m_capabilities = new List(); [SerializeField] private List m_macros = new List(); #endregion #region Properties public PBXFile[] Files { get { return m_files.ToArray(); } set { Assert.IsPropertyNotNull(value, "value"); // set new value m_files = new List(value); } } public PBXFile[] Folders { get { return m_folders.ToArray(); } set { Assert.IsPropertyNotNull(value, "value"); // set new value m_folders = new List(value); } } public PBXFile[] HeaderPaths { get { return m_headerPaths.ToArray(); } set { Assert.IsPropertyNotNull(value, "value"); // set new value m_headerPaths = new List(value); } } public PBXFramework[] Frameworks { get { return m_frameworks.ToArray(); } set { Assert.IsPropertyNotNull(value, "value"); // set new value m_frameworks = new List(value); } } public PBXCapability[] Capabilities { get { return m_capabilities.ToArray(); } set { Assert.IsPropertyNotNull(value, "value"); // set new value m_capabilities = new List(value); } } public string[] Macros { get { return m_macros.ToArray(); } set { Assert.IsPropertyNotNull(value, "value"); // set new value m_macros = new List(value); } } #endregion #region Public methods public void AddCapability(PBXCapability value) { m_capabilities.Add(value); } public void RemoveCapability(PBXCapability value) { m_capabilities.Remove(value); } public void ClearCapabilities() { m_capabilities.Clear(); } public void AddMacro(string value) { m_macros.Add(value); } public void RemoveMacro(string value) { m_macros.Remove(value); } public void ClearMacros() { m_macros.Clear(); } public void AddFramework(PBXFramework value) { m_frameworks.Add(value); } public void RemoveFramework(PBXFramework value) { m_frameworks.Remove(value); } #endregion } } }