Пример #1
0
        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
        }
Пример #3
0
 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);
     }
 }
Пример #4
0
        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
        }
Пример #5
0
            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();
                }
            }
Пример #6
0
 public void SwitchLayers(int num1, int num2)
 {
     ArrayTools.Switch(gens, num1, num2);
 }