void DrawArrayValues(ISD_Variable var) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Values Type"); ISD_PlistValueTypes type = (ISD_PlistValueTypes)EditorGUILayout.EnumPopup(var.ArrayType); if (type == ISD_PlistValueTypes.Array || type == ISD_PlistValueTypes.Dictionary) { type = var.ArrayType; } var.ArrayType = type; EditorGUILayout.EndHorizontal(); var.IsListOpen = EditorGUILayout.Foldout(var.IsListOpen, "Array Values"); //var.ArrayValue.co if (var.IsListOpen) { foreach (ISD_VariableListed v in var.ArrayValue) { EditorGUILayout.BeginHorizontal(); GUI.enabled = false; v.Type = (ISD_PlistValueTypes)EditorGUILayout.EnumPopup(var.ArrayType); GUI.enabled = true; DrawValueFiled(v); bool removed = DrawSrotingButtons((object)v, var.ArrayValue); if (removed) { return; } EditorGUILayout.EndHorizontal(); } EditorGUILayout.BeginHorizontal(); EditorGUILayout.Space(); if (GUILayout.Button("Add New Value", GUILayout.Width(100))) { var.ArrayValue.Add(new ISD_VariableListed()); } EditorGUILayout.EndHorizontal(); } EditorGUILayout.Space(); }
void DrawDicitionarryValues(ISD_Variable var) { var.IsListOpen = EditorGUILayout.Foldout(var.IsListOpen, "Dictionary Values"); //var.ArrayValue.co if (var.IsListOpen) { foreach (KeyValuePair <string, ISD_VariableListed> pair in var.DictionaryValue) { EditorGUI.indentLevel++; { EditorGUILayout.BeginHorizontal(); ISD_VariableListed v = pair.Value; v.IsOpen = EditorGUILayout.Foldout(v.IsOpen, v.DictKey); EditorGUILayout.LabelField("(" + var.Type.ToString() + ")"); bool removed = DrawSrotingButtons((object)v, var.ArrayValue); if (removed) { return; } EditorGUILayout.EndHorizontal(); if (v.IsOpen) { EditorGUILayout.BeginHorizontal(); v.Type = (ISD_PlistValueTypes)EditorGUILayout.EnumPopup(v.Type); DrawValueFiled(v); EditorGUILayout.EndHorizontal(); } } EditorGUI.indentLevel--; } EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Add New Value With Key:"); newVarKey = EditorGUILayout.TextField(newVarKey); EditorGUILayout.Space(); if (GUILayout.Button("Add", GUILayout.Width(100))) { if (newVarKey.Length > 0) { ISD_VariableListed newDictValue = new ISD_VariableListed(); newDictValue.DictKey = newVarKey; var.AddVarToDictionary(newDictValue); } } EditorGUILayout.EndHorizontal(); } EditorGUILayout.Space(); }
static void AddDictionaryToPlist(ISD_Variable var, XmlNode node, XmlDocument doc) { if (var.DictValues.Count == 0) { return; } foreach (ISD_VariableListed varDict in var.DictValues) { XmlNode tempNode = null; switch (varDict.Type) { case ISD_PlistValueTypes.Boolean: tempNode = doc.CreateElement(varDict.BooleanValue.ToString().ToLower()); break; case ISD_PlistValueTypes.Float: tempNode = doc.CreateElement("real"); tempNode.InnerText = varDict.FloatValue.ToString(); break; case ISD_PlistValueTypes.Integer: tempNode = doc.CreateElement("integer"); tempNode.InnerText = varDict.IntegerValue.ToString(); break; case ISD_PlistValueTypes.String: tempNode = doc.CreateElement("string"); tempNode.InnerText = varDict.StringValue; break; } XmlNode tempKeyNode = doc.CreateElement("key"); tempKeyNode.InnerText = varDict.DictKey; node.AppendChild(tempKeyNode); node.AppendChild(tempNode); } }
static void AddArrayToPlist(ISD_Variable var, XmlNode node, XmlDocument doc) { if (var.ArrayValue.Count == 0) { return; } foreach (ISD_VariableListed varArray in var.ArrayValue) { switch (var.ArrayType) { case ISD_PlistValueTypes.Boolean: XmlNode tempBoolNode = doc.CreateElement(varArray.BooleanValue.ToString().ToLower()); node.AppendChild(tempBoolNode); break; case ISD_PlistValueTypes.Float: XmlNode tempFloatNode = doc.CreateElement("real"); tempFloatNode.InnerText = varArray.FloatValue.ToString(); node.AppendChild(tempFloatNode); break; case ISD_PlistValueTypes.Integer: XmlNode tempIntegerNode = doc.CreateElement("integer"); tempIntegerNode.InnerText = varArray.IntegerValue.ToString(); node.AppendChild(tempIntegerNode); break; case ISD_PlistValueTypes.String: XmlNode tempStringNode = doc.CreateElement("string"); tempStringNode.InnerText = varArray.StringValue; node.AppendChild(tempStringNode); break; } } }
void DrawArrayValues (ISD_Variable var) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Values Type"); ISD_PlistValueTypes type = (ISD_PlistValueTypes) EditorGUILayout.EnumPopup (var.ArrayType); if(type == ISD_PlistValueTypes.Array ||type == ISD_PlistValueTypes.Dictionary) { type = var.ArrayType; } var.ArrayType = type; EditorGUILayout.EndHorizontal(); var.IsListOpen = EditorGUILayout.Foldout(var.IsListOpen, "Array Values"); //var.ArrayValue.co if(var.IsListOpen) { foreach(ISD_VariableListed v in var.ArrayValue) { EditorGUILayout.BeginHorizontal(); GUI.enabled = false; v.Type = (ISD_PlistValueTypes) EditorGUILayout.EnumPopup (var.ArrayType); GUI.enabled = true; DrawValueFiled(v); bool removed = DrawSrotingButtons((object) v, var.ArrayValue); if(removed) { return; } EditorGUILayout.EndHorizontal(); } EditorGUILayout.BeginHorizontal(); EditorGUILayout.Space(); if(GUILayout.Button("Add New Value", GUILayout.Width(100))) { var.ArrayValue.Add(new ISD_VariableListed()); } EditorGUILayout.EndHorizontal(); } EditorGUILayout.Space(); }
void DrawDicitionarryValues (ISD_Variable var) { var.IsListOpen = EditorGUILayout.Foldout(var.IsListOpen, "Dictionary Values"); //var.ArrayValue.co if(var.IsListOpen) { foreach(KeyValuePair<string, ISD_VariableListed> pair in var.DictionaryValue) { EditorGUI.indentLevel++; { EditorGUILayout.BeginHorizontal(); ISD_VariableListed v = pair.Value; v.IsOpen = EditorGUILayout.Foldout(v.IsOpen, v.DictKey); EditorGUILayout.LabelField("(" + var.Type.ToString() + ")"); bool removed = DrawSrotingButtons((object) v, var.ArrayValue); if(removed) { return; } EditorGUILayout.EndHorizontal(); if(v.IsOpen) { EditorGUILayout.BeginHorizontal(); v.Type = (ISD_PlistValueTypes) EditorGUILayout.EnumPopup (v.Type); DrawValueFiled(v); EditorGUILayout.EndHorizontal(); } } EditorGUI.indentLevel--; } EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Add New Value With Key:"); newVarKey = EditorGUILayout.TextField(newVarKey); EditorGUILayout.Space(); if(GUILayout.Button("Add", GUILayout.Width(100))) { if(newVarKey.Length > 0) { ISD_VariableListed newDictValue = new ISD_VariableListed(); newDictValue.DictKey = newVarKey; var.AddVarToDictionary(newDictValue); } } EditorGUILayout.EndHorizontal(); } EditorGUILayout.Space(); }
void PlistValues () { ISDSettings.Instance.IsPlistSettingsOpen = EditorGUILayout.Foldout(ISDSettings.Instance.IsPlistSettingsOpen, "Plist values"); if(ISDSettings.Instance.IsPlistSettingsOpen) { if (ISDSettings.Instance.PlistVariables.Count == 0) { EditorGUILayout.HelpBox("No Plist values added", MessageType.None); } EditorGUI.indentLevel++; { foreach(ISD_Variable var in ISDSettings.Instance.PlistVariables) { EditorGUILayout.BeginVertical (GUI.skin.box); EditorGUILayout.BeginHorizontal(); var.IsOpen = EditorGUILayout.Foldout(var.IsOpen, var.Name); EditorGUILayout.LabelField("(" + var.Type.ToString() + ")"); bool ItemWasRemoved = DrawSrotingButtons((object) var, ISDSettings.Instance.PlistVariables); if(ItemWasRemoved) { return; } EditorGUILayout.EndHorizontal(); if(var.IsOpen) { EditorGUI.indentLevel++; { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Type"); var.Type = (ISD_PlistValueTypes) EditorGUILayout.EnumPopup (var.Type); EditorGUILayout.EndHorizontal(); if(var.Type == ISD_PlistValueTypes.String || var.Type == ISD_PlistValueTypes.Integer || var.Type == ISD_PlistValueTypes.Float || var.Type == ISD_PlistValueTypes.Boolean) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Value"); switch(var.Type) { case ISD_PlistValueTypes.Boolean: var.BooleanValue = EditorGUILayout.Toggle (var.BooleanValue); break; case ISD_PlistValueTypes.Float: var.FloatValue = EditorGUILayout.FloatField(var.FloatValue); break; case ISD_PlistValueTypes.Integer: var.IntegerValue = EditorGUILayout.IntField (var.IntegerValue); break; case ISD_PlistValueTypes.String: var.StringValue = EditorGUILayout.TextField (var.StringValue); break; } EditorGUILayout.EndHorizontal(); } if(var.Type == ISD_PlistValueTypes.Array) { DrawArrayValues(var); } if(var.Type == ISD_PlistValueTypes.Dictionary) { DrawDicitionarryValues(var); } }EditorGUI.indentLevel--; } EditorGUILayout.EndVertical (); } EditorGUILayout.Space(); }EditorGUI.indentLevel--; EditorGUILayout.BeginVertical (GUI.skin.box); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Add New Variable"); NewPlistValueName = EditorGUILayout.TextField(NewPlistValueName); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.Space(); if(GUILayout.Button("Add", GUILayout.Width(100))) { ISD_Variable var = new ISD_Variable(); var.Name = NewPlistValueName; ISDSettings.Instance.PlistVariables.Add(var); NewPlistValueName = string.Empty; } EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); EditorGUILayout.EndVertical (); } }
public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject) { if(IOSNativeSettings.Instance.EnableInAppsAPI) { string StoreKit = "StoreKit.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(StoreKit)) { ISD_Framework F = new ISD_Framework(); F.Name = StoreKit; ISDSettings.Instance.Frameworks.Add(F); } } if(IOSNativeSettings.Instance.EnableGameCenterAPI) { string GameKit = "GameKit.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(GameKit)) { ISD_Framework F = new ISD_Framework(); F.Name = GameKit; ISDSettings.Instance.Frameworks.Add(F); } } if(IOSNativeSettings.Instance.EnableSocialSharingAPI) { string Accounts = "Accounts.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(Accounts)) { ISD_Framework F = new ISD_Framework(); F.Name = Accounts; ISDSettings.Instance.Frameworks.Add(F); } string SocialF = "Social.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(SocialF)) { ISD_Framework F = new ISD_Framework(); F.Name = SocialF; ISDSettings.Instance.Frameworks.Add(F); } string MessageUI = "MessageUI.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(MessageUI)) { ISD_Framework F = new ISD_Framework(); F.Name = MessageUI; ISDSettings.Instance.Frameworks.Add(F); } ISD_Variable LSApplicationQueriesSchemes = new ISD_Variable(); LSApplicationQueriesSchemes.Name = "LSApplicationQueriesSchemes"; LSApplicationQueriesSchemes.Type = ISD_PlistValueTypes.Array; LSApplicationQueriesSchemes.ArrayType = ISD_PlistValueTypes.String; ISD_VariableListed instagram = new ISD_VariableListed(); instagram.StringValue = "instagram"; instagram.Type = ISD_PlistValueTypes.String; LSApplicationQueriesSchemes.ArrayValue.Add(instagram); ISD_VariableListed whatsapp = new ISD_VariableListed(); whatsapp.StringValue = "whatsapp"; whatsapp.Type = ISD_PlistValueTypes.String; LSApplicationQueriesSchemes.ArrayValue.Add(whatsapp); if(!ISDSettings.Instance.ContainsPlistVarkWithName(LSApplicationQueriesSchemes.Name)) { ISDSettings.Instance.PlistVariables.Add(LSApplicationQueriesSchemes); } } if(IOSNativeSettings.Instance.EnableMediaPlayerAPI) { string MediaPlayer = "MediaPlayer.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(MediaPlayer)) { ISD_Framework F = new ISD_Framework(); F.Name = MediaPlayer; ISDSettings.Instance.Frameworks.Add(F); } } if(IOSNativeSettings.Instance.EnableCameraAPI) { string MobileCoreServices = "MobileCoreServices.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(MobileCoreServices)) { ISD_Framework F = new ISD_Framework(); F.Name = MobileCoreServices; ISDSettings.Instance.Frameworks.Add(F); } } if(IOSNativeSettings.Instance.EnableReplayKit) { string ReplayKit = "ReplayKit.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(ReplayKit)) { ISD_Framework F = new ISD_Framework(); F.Name = ReplayKit; F.IsOptional = true; ISDSettings.Instance.Frameworks.Add(F); } } if(IOSNativeSettings.Instance.EnableCloudKit) { string CloudKit = "CloudKit.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(CloudKit)) { ISD_Framework F = new ISD_Framework(); F.Name = CloudKit; F.IsOptional = true; ISDSettings.Instance.Frameworks.Add(F); } } if(IOSNativeSettings.Instance.EnableSoomla) { string AdSupport = "AdSupport.framework"; if(!ISDSettings.Instance.ContainsFreamworkWithName(AdSupport)) { ISD_Framework F = new ISD_Framework(); F.Name = AdSupport; ISDSettings.Instance.Frameworks.Add(F); } string libsqlite3 = "libsqlite3.dylib"; if(!ISDSettings.Instance.ContainsLibWithName(libsqlite3)) { ISD_Lib L = new ISD_Lib(); L.Name = libsqlite3; ISDSettings.Instance.Libraries.Add(L); } #if UNITY_5 string linkerGlag = "-force_load Libraries/Plugins/iOS/libSoomlaGrowLite.a"; #else string linkerGlag = "-force_load Libraries/libSoomlaGrowLite.a"; #endif if(!ISDSettings.Instance.linkFlags.Contains(linkerGlag)) { ISDSettings.Instance.linkFlags.Add(linkerGlag); } } Debug.Log("ISN Postprocess Done"); }
static void AddDictionaryToPlist (ISD_Variable var, XmlNode node, XmlDocument doc) { if(var.DictValues.Count == 0) return; foreach(ISD_VariableListed varDict in var.DictValues) { XmlNode tempNode = null; switch(varDict.Type) { case ISD_PlistValueTypes.Boolean: tempNode = doc.CreateElement (varDict.BooleanValue.ToString ().ToLower ()); break; case ISD_PlistValueTypes.Float: tempNode = doc.CreateElement ("real"); tempNode.InnerText = varDict.FloatValue.ToString (); break; case ISD_PlistValueTypes.Integer: tempNode = doc.CreateElement ("integer"); tempNode.InnerText = varDict.IntegerValue.ToString (); break; case ISD_PlistValueTypes.String: tempNode = doc.CreateElement ("string"); tempNode.InnerText = varDict.StringValue; break; } XmlNode tempKeyNode = doc.CreateElement ("key"); tempKeyNode.InnerText = varDict.DictKey; node.AppendChild (tempKeyNode); node.AppendChild (tempNode); } }
static void AddArrayToPlist (ISD_Variable var, XmlNode node, XmlDocument doc) { if(var.ArrayValue.Count == 0) return; foreach(ISD_VariableListed varArray in var.ArrayValue) { switch(var.ArrayType) { case ISD_PlistValueTypes.Boolean: XmlNode tempBoolNode = doc.CreateElement (varArray.BooleanValue.ToString ().ToLower ()); node.AppendChild (tempBoolNode); break; case ISD_PlistValueTypes.Float: XmlNode tempFloatNode = doc.CreateElement ("real"); tempFloatNode.InnerText = varArray.FloatValue.ToString (); node.AppendChild (tempFloatNode); break; case ISD_PlistValueTypes.Integer: XmlNode tempIntegerNode = doc.CreateElement ("integer"); tempIntegerNode.InnerText = varArray.IntegerValue.ToString (); node.AppendChild (tempIntegerNode); break; case ISD_PlistValueTypes.String: XmlNode tempStringNode = doc.CreateElement ("string"); tempStringNode.InnerText = varArray.StringValue; node.AppendChild (tempStringNode); break; } } }
public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject) { if (IOSNativeSettings.Instance.EnableInAppsAPI) { string StoreKit = "StoreKit.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(StoreKit)) { ISD_Framework F = new ISD_Framework(); F.Name = StoreKit; ISDSettings.Instance.Frameworks.Add(F); } } if (IOSNativeSettings.Instance.EnableGameCenterAPI) { string GameKit = "GameKit.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(GameKit)) { ISD_Framework F = new ISD_Framework(); F.Name = GameKit; ISDSettings.Instance.Frameworks.Add(F); } } if (IOSNativeSettings.Instance.EnableSocialSharingAPI) { string Accounts = "Accounts.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(Accounts)) { ISD_Framework F = new ISD_Framework(); F.Name = Accounts; ISDSettings.Instance.Frameworks.Add(F); } string SocialF = "Social.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(SocialF)) { ISD_Framework F = new ISD_Framework(); F.Name = SocialF; ISDSettings.Instance.Frameworks.Add(F); } string MessageUI = "MessageUI.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(MessageUI)) { ISD_Framework F = new ISD_Framework(); F.Name = MessageUI; ISDSettings.Instance.Frameworks.Add(F); } ISD_Variable LSApplicationQueriesSchemes = new ISD_Variable(); LSApplicationQueriesSchemes.Name = "LSApplicationQueriesSchemes"; LSApplicationQueriesSchemes.Type = ISD_PlistValueTypes.Array; LSApplicationQueriesSchemes.ArrayType = ISD_PlistValueTypes.String; ISD_VariableListed instagram = new ISD_VariableListed(); instagram.StringValue = "instagram"; instagram.Type = ISD_PlistValueTypes.String; LSApplicationQueriesSchemes.ArrayValue.Add(instagram); ISD_VariableListed whatsapp = new ISD_VariableListed(); whatsapp.StringValue = "whatsapp"; whatsapp.Type = ISD_PlistValueTypes.String; LSApplicationQueriesSchemes.ArrayValue.Add(whatsapp); if (!ISDSettings.Instance.ContainsPlistVarkWithName(LSApplicationQueriesSchemes.Name)) { ISDSettings.Instance.PlistVariables.Add(LSApplicationQueriesSchemes); } } if (IOSNativeSettings.Instance.EnableMediaPlayerAPI) { string MediaPlayer = "MediaPlayer.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(MediaPlayer)) { ISD_Framework F = new ISD_Framework(); F.Name = MediaPlayer; ISDSettings.Instance.Frameworks.Add(F); } } if (IOSNativeSettings.Instance.EnableCameraAPI) { string MobileCoreServices = "MobileCoreServices.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(MobileCoreServices)) { ISD_Framework F = new ISD_Framework(); F.Name = MobileCoreServices; ISDSettings.Instance.Frameworks.Add(F); } } if (IOSNativeSettings.Instance.EnableReplayKit) { string ReplayKit = "ReplayKit.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(ReplayKit)) { ISD_Framework F = new ISD_Framework(); F.Name = ReplayKit; F.IsOptional = true; ISDSettings.Instance.Frameworks.Add(F); } } if (IOSNativeSettings.Instance.EnableCloudKit) { string CloudKit = "CloudKit.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(CloudKit)) { ISD_Framework F = new ISD_Framework(); F.Name = CloudKit; F.IsOptional = true; ISDSettings.Instance.Frameworks.Add(F); } } if (IOSNativeSettings.Instance.EnableSoomla) { string AdSupport = "AdSupport.framework"; if (!ISDSettings.Instance.ContainsFreamworkWithName(AdSupport)) { ISD_Framework F = new ISD_Framework(); F.Name = AdSupport; ISDSettings.Instance.Frameworks.Add(F); } string libsqlite3 = "libsqlite3.dylib"; if (!ISDSettings.Instance.ContainsLibWithName(libsqlite3)) { ISD_Lib L = new ISD_Lib(); L.Name = libsqlite3; ISDSettings.Instance.Libraries.Add(L); } #if UNITY_5 string linkerGlag = "-force_load Libraries/Plugins/iOS/libSoomlaGrowLite.a"; #else string linkerGlag = "-force_load Libraries/libSoomlaGrowLite.a"; #endif if (!ISDSettings.Instance.linkFlags.Contains(linkerGlag)) { ISDSettings.Instance.linkFlags.Add(linkerGlag); } } Debug.Log("ISN Postprocess Done"); }
void PlistValues() { ISDSettings.Instance.IsPlistSettingsOpen = EditorGUILayout.Foldout(ISDSettings.Instance.IsPlistSettingsOpen, "Plist values"); if (ISDSettings.Instance.IsPlistSettingsOpen) { if (ISDSettings.Instance.PlistVariables.Count == 0) { EditorGUILayout.HelpBox("No Plist values added", MessageType.None); } EditorGUI.indentLevel++; { foreach (ISD_Variable var in ISDSettings.Instance.PlistVariables) { EditorGUILayout.BeginVertical(GUI.skin.box); EditorGUILayout.BeginHorizontal(); var.IsOpen = EditorGUILayout.Foldout(var.IsOpen, var.Name); EditorGUILayout.LabelField("(" + var.Type.ToString() + ")"); bool ItemWasRemoved = DrawSrotingButtons((object)var, ISDSettings.Instance.PlistVariables); if (ItemWasRemoved) { return; } EditorGUILayout.EndHorizontal(); if (var.IsOpen) { EditorGUI.indentLevel++; { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Type"); var.Type = (ISD_PlistValueTypes)EditorGUILayout.EnumPopup(var.Type); EditorGUILayout.EndHorizontal(); if (var.Type == ISD_PlistValueTypes.String || var.Type == ISD_PlistValueTypes.Integer || var.Type == ISD_PlistValueTypes.Float || var.Type == ISD_PlistValueTypes.Boolean) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Value"); switch (var.Type) { case ISD_PlistValueTypes.Boolean: var.BooleanValue = EditorGUILayout.Toggle(var.BooleanValue); break; case ISD_PlistValueTypes.Float: var.FloatValue = EditorGUILayout.FloatField(var.FloatValue); break; case ISD_PlistValueTypes.Integer: var.IntegerValue = EditorGUILayout.IntField(var.IntegerValue); break; case ISD_PlistValueTypes.String: var.StringValue = EditorGUILayout.TextField(var.StringValue); break; } EditorGUILayout.EndHorizontal(); } if (var.Type == ISD_PlistValueTypes.Array) { DrawArrayValues(var); } if (var.Type == ISD_PlistValueTypes.Dictionary) { DrawDicitionarryValues(var); } } EditorGUI.indentLevel--; } EditorGUILayout.EndVertical(); } EditorGUILayout.Space(); } EditorGUI.indentLevel--; EditorGUILayout.BeginVertical(GUI.skin.box); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Add New Variable"); NewPlistValueName = EditorGUILayout.TextField(NewPlistValueName); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.Space(); if (GUILayout.Button("Add", GUILayout.Width(100))) { ISD_Variable var = new ISD_Variable(); var.Name = NewPlistValueName; ISDSettings.Instance.PlistVariables.Add(var); NewPlistValueName = string.Empty; } EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); EditorGUILayout.EndVertical(); } }