static public PopupMenu DrawPopup(MenuItem[] items, Vector2 pos, bool closeAllOther = false, bool sort = true) { //sorting items according to their priority/name if (sort) { for (int i = 0; i < items.Length; i++) { for (int j = 0; j < items.Length; j++) { if (items[i].priority == items[j].priority) //sorting by name if priority equal { if ((int)(items[i].name[0]) < (int)(items[j].name[0])) { ArrayTools.Switch(items, items[i], items[j]); } } else if (items[i].priority < items[j].priority) { ArrayTools.Switch(items, items[i], items[j]); } } } for (int i = 0; i < items.Length; i++) { items[i].SortItems(); } } PopupMenu popupWindow = new PopupMenu(); popupWindow.items = items; PopupWindow.Show(new Rect(pos.x, pos.y, 0, 0), popupWindow); return(popupWindow); }
public void Switch(int ch1, int ch2) { #if UNITY_EDITOR ArrayTools.Switch(srcArr, ch1, ch2); TextureArrayTools.Switch(ref texArr, ch1, ch2); SaveSources(); #endif }
public void SwitchLayers(int num1, int num2) { ArrayTools.Switch(array, num1, num2); TextureArrayTools.Switch(mainTexArray, num1, num2); TextureArrayTools.Switch(bumpMapArray, num1, num2); TextureArrayTools.Switch(specSmoothMapArray, num1, num2); TextureArrayTools.Switch(sssVanishMapArray, num1, num2); if (changeBlockData) { Voxeland.current.data.SwitchType((byte)num1, (byte)num2); } }
public void SwitchLayers(int num1, int num2) { ArrayTools.Switch(array, num1, num2); if (changeBlockData) { Voxeland.current.data.SwitchType((byte)num1, (byte)num2); } #if UNITY_EDITOR if (textureArrays) { mainTexArrDec.Switch(num1, num2); bumpTexArrDec.Switch(num1, num2); UnityEditor.AssetDatabase.Refresh(); } #endif }
public void SortItems() { if (subItems == null) { return; } for (int i = 0; i < subItems.Length; i++) { for (int j = 0; j < subItems.Length; j++) { if (subItems[i].priority == subItems[j].priority && subItems[i].name != null && subItems[j].name != null) //sorting by name if priority equal { for (int c = 0; c < Mathf.Min(subItems[i].name.Length, subItems[j].name.Length); c++) { if ((int)(subItems[i].name[c]) != (int)(subItems[j].name[c])) { if ((int)(subItems[i].name[c]) < (int)(subItems[j].name[c])) { ArrayTools.Switch(subItems, subItems[i], subItems[j]); } break; } } } if (subItems[i].priority < subItems[j].priority) { ArrayTools.Switch(subItems, subItems[i], subItems[j]); } } } for (int i = 0; i < subItems.Length; i++) { subItems[i].SortItems(); } }
public void SwitchLayers(int num1, int num2) { ArrayTools.Switch(gens, num1, num2); }