void LoadData() { Xml_Manager manager = GameObject.Find("Manager").GetComponent <Xml_Manager> (); FileName = EditorUtility.OpenFilePanel("XML Maker", "Assets/MapToolkit_2.0/Temp/XmlData", "xml"); if (FileName == null || FileName == "") { manager.LoadFileStatus((int)FileStatus.Cancel); return; } else { manager.ListClear(); manager.ResetFileStatus(); } XML_Mark_Container xmlMarkCollection = XML_Mark_Container.Load(FileName); for (int i = 0; i < xmlMarkCollection.XML_Marks.Length; i++) { Xml_Manager.XmlMarker xmlData = new Xml_Manager.XmlMarker(); xmlData.locationName = xmlMarkCollection.XML_Marks [i].Name; xmlData.coordinate_x = xmlMarkCollection.XML_Marks [i].coordinate_x; xmlData.coordinate_y = xmlMarkCollection.XML_Marks [i].coordinate_y; xmlData.normalPixelInset_x = xmlMarkCollection.XML_Marks [i].normalPixelInset_x; xmlData.normalPixelInset_y = xmlMarkCollection.XML_Marks [i].normalPixelInset_y; xmlData.normalPixelInset_w = xmlMarkCollection.XML_Marks [i].normalPixelInset_w; xmlData.normalPixelInset_h = xmlMarkCollection.XML_Marks [i].normalPixelInset_h; xmlData.normalSprite = xmlMarkCollection.XML_Marks [i].normalSprite; xmlData.normalColor_r = xmlMarkCollection.XML_Marks [i].normalColor_r; xmlData.normalColor_g = xmlMarkCollection.XML_Marks [i].normalColor_g; xmlData.normalColor_b = xmlMarkCollection.XML_Marks [i].normalColor_b; xmlData.normalColor_a = xmlMarkCollection.XML_Marks [i].normalColor_a; xmlData.hoverSprite = xmlMarkCollection.XML_Marks [i].hoverSprite; xmlData.activeSprite = xmlMarkCollection.XML_Marks [i].activeSprite; xmlData.textPixelInset_x = xmlMarkCollection.XML_Marks [i].textPixelInset_x; xmlData.textPixelInset_y = xmlMarkCollection.XML_Marks [i].textPixelInset_y; xmlData.textFontSize = xmlMarkCollection.XML_Marks [i].textFontSize; xmlData.textShow = xmlMarkCollection.XML_Marks [i].textShow; xmlData.textColor_r = xmlMarkCollection.XML_Marks [i].textColor_r; xmlData.textColor_g = xmlMarkCollection.XML_Marks [i].textColor_g; xmlData.textColor_b = xmlMarkCollection.XML_Marks [i].textColor_b; xmlData.textColor_a = xmlMarkCollection.XML_Marks [i].textColor_a; manager.xmlArrayList.Add(xmlData); } Xml_Manager.XmlMarker tmp_xmlData2 = manager.xmlArrayList [0] as Xml_Manager.XmlMarker; manager.selection = tmp_xmlData2.locationName; manager.selection_number = 0; manager.SelectMarkClear(); manager.selectedMark = ""; manager.LoadFileStatus((int)FileStatus.Success); }
public void ItemList() { Xml_Manager manager = GameObject.Find("Manager").GetComponent <Xml_Manager> (); if (manager.xmlArrayList.Count > 0 && manager.xmlArrayList != null) { { GUILayout.BeginHorizontal(); GUILayout.Space(3f); GUILayout.BeginVertical(); mScroll = GUILayout.BeginScrollView(mScroll); bool delete = false; int index = 0; for (int k = 0; k < manager.xmlArrayList.Count; k++) { Xml_Manager.XmlMarker tmp_xmlData = manager.xmlArrayList [k] as Xml_Manager.XmlMarker; ++index; GUILayout.Space(-1f); bool highlight = (manager.selectedMark == tmp_xmlData.locationName); GUI.backgroundColor = highlight ? Color.white : new Color(0.8f, 0.8f, 0.8f); GUILayout.BeginHorizontal("AS TextArea", GUILayout.MinHeight(20f)); GUI.backgroundColor = Color.white; GUILayout.Label(index.ToString(), GUILayout.Width(24f)); if (GUILayout.Button(tmp_xmlData.locationName, "OL TextField", GUILayout.Height(20f))) { manager.selection = tmp_xmlData.locationName; manager.selection_number = k; manager.selectListIndex = k; manager.SelectMark(manager.selection, manager.selection_number); } if (mDelValues.Contains(k)) { GUI.backgroundColor = Color.red; if (GUILayout.Button("OK", GUILayout.Width(30f))) { delete = true; } GUI.backgroundColor = Color.green; if (GUILayout.Button("Delete", GUILayout.Width(50f))) { mDelNames.Remove(tmp_xmlData.locationName); mDelValues.Remove(k); delete = false; } GUI.backgroundColor = Color.white; } else { if (GUILayout.Button("Delete", GUILayout.Width(50f))) { mDelNames.Add(tmp_xmlData.locationName); mDelValues.Add(k); } } GUILayout.EndHorizontal(); } GUILayout.EndScrollView(); GUILayout.EndVertical(); GUILayout.Space(3f); GUILayout.EndHorizontal(); // If this sprite was marked for deletion, remove it from the atlas if (delete) { for (int i = 0; i < mDelNames.Count; i++) { for (int j = 0; j < manager.xmlArrayList.Count; j++) { Xml_Manager.XmlMarker tmp_xmlData = manager.xmlArrayList [j] as Xml_Manager.XmlMarker; if (tmp_xmlData.locationName == mDelNames [i]) { manager.xmlArrayList.RemoveAt(j); } } } mDelValues.Clear(); mDelNames.Clear(); } if (manager.xmlArrayList.Count == 0) { manager.SelectMarkClear(); } } } }