public IList <Item> Sort(IList <Item> arr, SORT_TYPE type = SORT_TYPE.ID, SORT_ORDER order = SORT_ORDER.ASCENDING)
        {
            switch (type)
            {
            case SORT_TYPE.NAME:
                arr = arr.OrderBy(m => m.Name).ToList();
                break;

            case SORT_TYPE.STATUS:
                arr = arr.OrderBy(m => m.Status).ToList();
                break;

            case SORT_TYPE.UNIT_PRICE:
                arr = arr.OrderBy(m => m.UnitPrice).ToList();
                break;

            default:
                arr = arr.OrderBy(m => m.Id).ToList();
                break;
            }
            if (order.Equals(SORT_ORDER.DESCENDING))
            {
                arr = arr.Reverse().ToList();
            }
            return(arr);
        }
        public IList <Order> Sort(IList <Order> arr, SORT_TYPE type = SORT_TYPE.ID, SORT_ORDER order = SORT_ORDER.ASCENDING)
        {
            switch (type)
            {
            case SORT_TYPE.STATUS:
                arr = arr.OrderBy(m => m.Status).ToList();
                break;

            case SORT_TYPE.SUM_PRICE:
                arr = arr.OrderBy(m => m.SumPrice).ToList();
                break;

            case SORT_TYPE.ORDER_DATE:
                arr = arr.OrderBy(m => m.OrderDate).ToList();
                break;

            default:
                arr = arr.OrderBy(m => m.Id).ToList();
                break;
            }
            if (order.Equals(SORT_ORDER.DESCENDING))
            {
                arr = arr.Reverse().ToList();
            }
            return(arr);
        }
Example #3
0
    private void TableRefresh(SORT_TYPE sortType)
    {
        StaticManager.instance.GetCharacterDataList(
            (result) =>
        {
            int index = 0;
            List <ItemInstance> itemValue = new List <ItemInstance>();
            foreach (var val in result)
            {
                //copy
                itemValue.Add(val);
            }

            itemValue.Sort(delegate(ItemInstance A, ItemInstance B)
            {
                switch (sortType)
                {
                case SORT_TYPE.NEW:
                    return(DateTime.Compare(B.PurchaseDate.GetValueOrDefault(), A.PurchaseDate.GetValueOrDefault()));

                case SORT_TYPE.OLD:
                    return(DateTime.Compare(A.PurchaseDate.GetValueOrDefault(), B.PurchaseDate.GetValueOrDefault()));

                case SORT_TYPE.RARE_DES:
                    return(StaticManager.instance.GetCharRareToInt(A.ItemId) < StaticManager.instance.GetCharRareToInt(B.ItemId) ? 1 : (
                               StaticManager.instance.GetCharRareToInt(A.ItemId) > StaticManager.instance.GetCharRareToInt(B.ItemId) ? -1 : 0));

                case SORT_TYPE.RARE_ASC:
                    return(StaticManager.instance.GetCharRareToInt(A.ItemId) > StaticManager.instance.GetCharRareToInt(B.ItemId) ? 1 : (
                               StaticManager.instance.GetCharRareToInt(A.ItemId) < StaticManager.instance.GetCharRareToInt(B.ItemId) ? -1 : 0));

                case SORT_TYPE.EMO:
                    return(StaticManager.instance.GetCharEmoToInt(A.ItemId) < StaticManager.instance.GetCharEmoToInt(B.ItemId) ? 1 : (
                               StaticManager.instance.GetCharEmoToInt(A.ItemId) > StaticManager.instance.GetCharEmoToInt(B.ItemId) ? -1 : 0));

                case SORT_TYPE.LEVEL:
                    return(0);                            //not yet

                default:
                    return(0);
                }
            });

            foreach (ItemInstance item in itemValue)
            {
                AddIcon(index++, item);
            }
            characterListLoadingFinish = true;

            if (partyResult != null)
            {
                settingParty();
            }
        }, (error) =>
        {
            Debug.Log(error.GenerateErrorReport());
        });
    }
Example #4
0
 private void OnQuery_SORT()
 {
     currentSortType++;
     if ((int)currentSortType >= Enum.GetValues(typeof(SORT_TYPE)).Length)
     {
         currentSortType = SORT_TYPE.NAME;
     }
     Sort();
     RefreshUI();
 }
 public void ResetScrollListBySortType(SORT_TYPE type)
 {
     sort_type = type;
     if (sort_type == type)
     {
         reverse_sort = !reverse_sort;
     }
     scrollList.scrollRect.velocity = Vector2.zero;
     scrollList.rectTrScrollLayer.anchoredPosition = Vector2.zero;
     scrollList.SetItemOrder(getOrder());
     updateDetailInfo(scrollList.getFirstItemOrder());
 }
Example #6
0
    public void OnClickSortType(int btn_idx)
    {
        sortType = (SORT_TYPE)btn_idx;
        updateSortView();

        if (PartyInfoVC.checkInst())
        {
            if (SubViewEquipment.checkInst())
            {
                DebugLog.Log(false, "Reset Equip List");
                SubViewEquipment.Inst.ResetScrollListBySortType(sortType);
            }
            else if (SubViewDeconstruction.checkInst())
            {
                DebugLog.Log(false, "Reset deconstruct List");
                SubViewDeconstruction.Inst.ResetScrollListBySortType(sortType);
            }
            else if (SubViewUpgrade.checkInst())
            {
                DebugLog.Log(false, "Reset SubViewUpgrade List");
                SubViewUpgrade.Inst.ResetScrollListBySortType(sortType);
            }
            else
            {
                DebugLog.Log(false, "Reset Partyinfo List");
                PartyInfoVC.Inst.ResetScrollListBySortType(sortType);
            }
        }
        else if (InventoryVC.checkInst())
        {
            if (SubViewDeconstruction.checkInst())
            {
                DebugLog.Log(false, "Reset deconstruct List");
                SubViewDeconstruction.Inst.ResetScrollListBySortType(sortType);
            }
            else if (SubViewUpgrade.checkInst())
            {
                DebugLog.Log(false, "Reset SubViewUpgrade List");
                SubViewUpgrade.Inst.ResetScrollListBySortType(sortType);
            }
            else
            {
                DebugLog.Log(false, "Reset Inven List");
                EquipmentInfoManager.Inst.ResetScrollListBySortType(sortType);
            }
        }
    }
Example #7
0
 public static long getSortTime(SORT_TYPE type, int[] array)
 {
     var attempts = new long[Form1.ATTEMPTS];
     for (var j = 0; j < Form1.ATTEMPTS; j++)
     {
         switch (type)
         {
             case SORT_TYPE.SORT:
                 myStopwatch.Restart();
                 Array.Sort(array);
                 myStopwatch.Stop();
                 break;
             case SORT_TYPE.QUICKSORT:
                 Quicksort<int> q = new Quicksort<int>();
                 myStopwatch.Restart();
                 q.QSort(array);
                 myStopwatch.Stop();
                 break;
             case SORT_TYPE.HEAPSORT:
                 Heapsort h = new Heapsort();
                 myStopwatch.Restart();
                 h.heapSort(array);
                 myStopwatch.Stop();
                 break;
             case SORT_TYPE.SHELLSORT:
                 ShellSort<int> s = new ShellSort<int>();
                 myStopwatch.Restart();
                 s.Sort(array);
                 myStopwatch.Stop();
                 break;
             default:
                 throw new Exception("Unknown error");
         }
         attempts[j] = myStopwatch.ElapsedMilliseconds;
     }
     Array.Sort(attempts);
     return attempts[Form1.ATTEMT_NUMBER_TO_USE-1];
 }
Example #8
0
        private void btnSort_Click(object sender, EventArgs e)
        {
            if (this.dgv.CurrentCell == null)
            {
                return;
            }

            string focused_compnam = (string)this.dgv.Rows[this.dgv.CurrentCell.RowIndex].Cells[this.col_compnam.Name].Value;

            if (this.sort_type == SORT_TYPE.COMPCOD)
            {
                this.sccomp_list    = new BindingList <SccompDbfVM>(DbfTable.GetSccompList().ToViewModel().OrderBy(s => s.compnam).ToList());
                this.dgv.DataSource = this.sccomp_list;
                this.sort_type      = SORT_TYPE.COMPNAM;

                var selected_row = this.dgv.Rows.Cast <DataGridViewRow>().Where(r => (string)r.Cells[this.col_compnam.Name].Value == focused_compnam).FirstOrDefault();
                if (selected_row != null)
                {
                    selected_row.Cells[this.dgv.FirstDisplayedScrollingColumnIndex].Selected = true;
                }
                return;
            }

            if (this.sort_type == SORT_TYPE.COMPNAM)
            {
                this.sccomp_list    = new BindingList <SccompDbfVM>(DbfTable.GetSccompList().ToViewModel().OrderBy(s => s.compcod).ToList());
                this.dgv.DataSource = this.sccomp_list;
                this.sort_type      = SORT_TYPE.COMPCOD;

                var selected_row = this.dgv.Rows.Cast <DataGridViewRow>().Where(r => (string)r.Cells[this.col_compnam.Name].Value == focused_compnam).FirstOrDefault();
                if (selected_row != null)
                {
                    selected_row.Cells[this.dgv.FirstDisplayedScrollingColumnIndex].Selected = true;
                }
                return;
            }
        }
Example #9
0
        void OnGUI()
        {
            //外横框
            GUILayout.BeginHorizontal(GUILayout.ExpandHeight(true), GUILayout.ExpandWidth(true));

            GUILayout.BeginVertical(blackStyle);
            showText = GUILayout.Toggle(showText, "显示为文本", GUILayout.Width(100), GUILayout.Height(18));
            EditorGUILayout.BeginHorizontal();
            EditorGUILayout.LabelField("平台", GUILayout.Width(30));
            int newtarget = EditorGUILayout.Popup(selectBuildTarget, displayBuildTargets);

            if (selectBuildTarget != newtarget)
            {
                currentBuildTarget = buildTargets[selectBuildTarget];
                currentReport      = ShaderCompileReport.GetTargetConfigure(currentBuildTarget);
            }
            EditorGUILayout.EndHorizontal();

            string btnShowString = "显示完全剔除的shader";

            preColor  = GUI.color;
            GUI.color = showInFilterListShader ? Color.white : Color.gray;
            if (GUILayout.Button(btnShowString, GUILayout.Width(200)))
            {
                showInFilterListShader = !showInFilterListShader;
            }
            GUI.color = preColor;

            EditorGUILayout.BeginHorizontal(blackStyle);
            EditorGUILayout.LabelField("排序条件", GUILayout.Width(90));
            SORT_TYPE prevSortType = sortType;

            sortType = (SORT_TYPE)EditorGUILayout.EnumPopup(sortType);
            if (sortType != prevSortType)
            {
                SortShaderList();
                EditorGUIUtility.ExitGUI();
                return;
            }
            EditorGUILayout.EndHorizontal();
            if (sortType != SORT_TYPE.Keyword)
            {
                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("关键字数 >=", GUILayout.Width(90));
                minimumKeywordCount = EditorGUILayout.IntSlider(minimumKeywordCount, 0, maxKeywordsCountFound);
                EditorGUILayout.EndHorizontal();
            }
            EditorGUILayout.BeginHorizontal();
            EditorGUILayout.LabelField("文件名过滤", GUILayout.Width(90));
            fileFilter = EditorGUILayout.TextField(fileFilter);
            if (GUILayout.Button(new GUIContent("清空", "清空文件名过滤"), GUILayout.Width(60)))
            {
                fileFilter = "";
                GUIUtility.keyboardControl = 0;
            }
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            EditorGUILayout.LabelField("关键字过滤", GUILayout.Width(90));
            keywordFilter = EditorGUILayout.TextField(keywordFilter);
            if (GUILayout.Button(new GUIContent("清空", "清空关键字过滤"), GUILayout.Width(60)))
            {
                keywordFilter = "";
                GUIUtility.keyboardControl = 0;
            }
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.Separator();


            scrollViewPos = EditorGUILayout.BeginScrollView(scrollViewPos);

            if (currentReport != null)
            {
                int count = currentReport.infos.Count;
                for (int index = 0; index < count; index++)
                {
                    preColor = GUI.color;
                    GUIStyle btnStyle = selection == index ? foldoutNormal : foldoutNormal;
                    GUI.color = selection == index ? Color.yellow:Color.white;
                    ShaderCompileVariantInfo info = currentReport.infos[index];

                    if (info.keywordsCount < minimumKeywordCount)
                    {
                        continue;
                    }
                    if (!showInFilterListShader)
                    {
                        if (info.totalVaraints == info.strippedVaraints)
                        {
                            continue;
                        }
                    }
                    if (!string.IsNullOrEmpty(fileFilter))
                    {
                        bool found = false;
                        if (info.shaderName.IndexOf(fileFilter, StringComparison.CurrentCultureIgnoreCase) >= 0)
                        {
                            found = true;
                        }
                        if (!found)
                        {
                            continue;
                        }
                    }
                    if (!string.IsNullOrEmpty(keywordFilter))
                    {
                        int  kwCount = info.keyWordList.Count;
                        bool found   = false;
                        for (int w = 0; w < kwCount; w++)
                        {
                            if (info.keyWordList[w].IndexOf(keywordFilter, StringComparison.CurrentCultureIgnoreCase) >= 0)
                            {
                                found = true;
                                break;
                            }
                        }
                        if (!found)
                        {
                            continue;
                        }
                    }

                    bool clickshaderName = (GUILayout.Button("" + index + " " + info.shaderName + " (关键字数: " + info.keywordsCount + " 变体总数: " + info.totalVaraints + " 剔除的变体数: " + info.strippedVaraints + ")", btnStyle));
                    selection = clickshaderName ? (selection != index ? index : -1) : selection;
                    GUI.color = preColor;
                    if (selection == index)
                    {
                        #region 列表单项
                        EditorGUILayout.BeginHorizontal();
                        EditorGUILayout.LabelField("", GUILayout.Width(15), GUILayout.Height(18));
                        EditorGUILayout.BeginVertical();

                        if (showText)
                        {
                            string tKeystring = "";
                            foreach (string str in info.keyWordList)
                            {
                                tKeystring += str + ";";
                            }
                            EditorGUILayout.BeginHorizontal();
                            EditorGUILayout.LabelField("关键字:", GUILayout.Width(50), GUILayout.Height(18));
                            EditorGUILayout.TextField(tKeystring, GUILayout.Height(18));
                            EditorGUILayout.EndHorizontal();
                        }
                        else
                        {
                            string[] buildinkeys = info.keyWordList.ToArray();

                            EditorGUILayout.BeginHorizontal();
                            EditorGUILayout.LabelField("关键字:", GUILayout.Width(50), GUILayout.Height(18));
                            int select = GUILayout.SelectionGrid(-1, buildinkeys, 3);
                            EditorGUILayout.EndHorizontal();
                        }

                        for (int snippetIndex = 0; snippetIndex < info.snippetComileDatas.Count; snippetIndex++)
                        {
                            SnippetComileDataTuple tuple = info.snippetComileDatas[snippetIndex];
                            //绘制snippet
                            preColor  = GUI.color;
                            GUI.color = snippetSelection == snippetIndex ? Color.yellow : Color.white;
                            string snippetTitle      = "" + snippetIndex + " PassName:" + tuple.snippet.passName + " ShaderType:" + Enum.GetName(typeof(StripShaderType), tuple.snippet.shaderType) + " PassType:" + Enum.GetName(typeof(StripPassType), tuple.snippet.passType) + " 变体数量:" + tuple.shaderVariants.Count;
                            bool   clicksnippetTitle = (GUILayout.Button(new GUIContent(snippetTitle), btnStyle));
                            snippetSelection = clicksnippetTitle ? (snippetSelection != snippetIndex ? snippetIndex:-1) : snippetSelection;
                            GUI.color        = preColor;
                            if (snippetSelection == snippetIndex)
                            {
                                EditorGUILayout.BeginHorizontal();
                                EditorGUILayout.LabelField("", GUILayout.Width(15), GUILayout.Height(18));

                                EditorGUILayout.BeginVertical();

                                for (int variantIndex = 0; variantIndex < tuple.shaderVariants.Count; variantIndex++)
                                {
                                    StripShaderCompilerData stripShaderCompilerData = tuple.shaderVariants[variantIndex];
                                    preColor  = GUI.color;
                                    GUI.color = stripShaderCompilerData.isStripped ? Color.cyan : Color.white;
                                    EditorGUILayout.BeginHorizontal();
                                    EditorGUILayout.LabelField("" + variantIndex, GUILayout.Width(45), GUILayout.Height(18));
                                    EditorGUILayout.EndHorizontal();
                                    EditorGUILayout.Toggle("isStripped", stripShaderCompilerData.isStripped);

                                    string shaderRequirements           = Enum.Format(typeof(UnityEditor.Rendering.ShaderRequirements), stripShaderCompilerData.shaderRequirements, "G");
                                    string platforName                  = Enum.Format(typeof(UnityEditor.Rendering.ShaderCompilerPlatform), stripShaderCompilerData.shaderCompilerPlatform, "G");
                                    string graphicsTierName             = Enum.Format(typeof(UnityEngine.Rendering.GraphicsTier), stripShaderCompilerData.graphicsTier, "G");
                                    string stripBuiltinShaderDefineName = Enum.Format(typeof(StripBuiltinShaderDefine), stripShaderCompilerData.platformKeywordSet, "G");
                                    if (showText)
                                    {
                                        EditorGUILayout.TextField("ShaderCompilerPlatform:", platforName, GUILayout.Height(18));
                                        EditorGUILayout.TextField("GraphicsTier:", graphicsTierName, GUILayout.Height(18));
                                        EditorGUILayout.TextField("ShaderRequirements:", shaderRequirements, GUILayout.Height(18));
                                        EditorGUILayout.TextField("PlatformKeywordSet:", stripBuiltinShaderDefineName, GUILayout.Height(18));

                                        string builtinDefaultKeystring = "";
                                        foreach (string str in stripShaderCompilerData.builtinDefaultList)
                                        {
                                            builtinDefaultKeystring += str + ";";
                                        }
                                        EditorGUILayout.BeginHorizontal();
                                        // EditorGUILayout.LabelField("BuiltinDefault Keywords:", GUILayout.Width(200), GUILayout.Height(18));
                                        EditorGUILayout.TextField("BuiltinDefault Keywords:", builtinDefaultKeystring, GUILayout.Height(18));
                                        EditorGUILayout.EndHorizontal();

                                        string builtinExtraKeystring = "";
                                        foreach (string str in stripShaderCompilerData.builtinExtraList)
                                        {
                                            builtinExtraKeystring += str + ";";
                                        }
                                        EditorGUILayout.BeginHorizontal();
                                        //  EditorGUILayout.LabelField("BuiltinExtra Keywords:", GUILayout.Width(200), GUILayout.Height(18));
                                        EditorGUILayout.TextField("BuiltinExtra Keywords:", builtinExtraKeystring, GUILayout.Height(18));
                                        EditorGUILayout.EndHorizontal();

                                        string builtinAutoStrippedKeystring = "";
                                        foreach (string str in stripShaderCompilerData.builtinAutoStrippedList)
                                        {
                                            builtinAutoStrippedKeystring += str + ";";
                                        }
                                        EditorGUILayout.BeginHorizontal();
                                        //   EditorGUILayout.LabelField("BuiltinAutoStripped Keywords:", GUILayout.Width(200), GUILayout.Height(18));
                                        EditorGUILayout.TextField("BuiltinAutoStripped Keywords:", builtinAutoStrippedKeystring, GUILayout.Height(18));
                                        EditorGUILayout.EndHorizontal();

                                        string userDefinedKeystring = "";
                                        foreach (string str in stripShaderCompilerData.userDefinedList)
                                        {
                                            builtinAutoStrippedKeystring += str + ";";
                                        }
                                        EditorGUILayout.BeginHorizontal();
                                        // EditorGUILayout.LabelField("UserDefined Keywords:", GUILayout.Width(200), GUILayout.Height(18));
                                        EditorGUILayout.TextField("UserDefined Keywords:", userDefinedKeystring, GUILayout.Height(18));
                                        EditorGUILayout.EndHorizontal();
                                    }
                                    else
                                    {
                                        EditorGUILayout.EnumPopup("ShaderCompilerPlatform:", stripShaderCompilerData.shaderCompilerPlatform, GUILayout.Height(18));
                                        EditorGUILayout.EnumPopup("GraphicsTier:", stripShaderCompilerData.graphicsTier, GUILayout.Height(18));
                                        EditorGUILayout.EnumFlagsField("ShaderRequirements:", stripShaderCompilerData.shaderRequirements, GUILayout.Height(18));
                                        EditorGUILayout.EnumFlagsField("PlatformKeywordSet:", stripShaderCompilerData.platformKeywordSet, GUILayout.Height(18));

                                        EditorGUILayout.BeginHorizontal();
                                        EditorGUILayout.LabelField("BuiltinDefault Keywords:", GUILayout.Height(18));
                                        GUILayout.SelectionGrid(-1, stripShaderCompilerData.builtinDefaultList.ToArray(), 5);
                                        EditorGUILayout.EndHorizontal();
                                        EditorGUILayout.BeginHorizontal();
                                        EditorGUILayout.LabelField("BuiltinExtra Keywords:", GUILayout.Height(18));
                                        GUILayout.SelectionGrid(-1, stripShaderCompilerData.builtinExtraList.ToArray(), 5);
                                        EditorGUILayout.EndHorizontal();
                                        EditorGUILayout.BeginHorizontal();
                                        EditorGUILayout.LabelField("BuiltinAutoStripped Keywords:", GUILayout.Height(18));
                                        GUILayout.SelectionGrid(-1, stripShaderCompilerData.builtinAutoStrippedList.ToArray(), 5);
                                        EditorGUILayout.EndHorizontal();
                                        EditorGUILayout.BeginHorizontal();
                                        EditorGUILayout.LabelField("UserDefined Keywords:", GUILayout.Height(18));
                                        GUILayout.SelectionGrid(-1, stripShaderCompilerData.userDefinedList.ToArray(), 5);
                                        EditorGUILayout.EndHorizontal();
                                    }
                                    GUI.color = preColor;
                                    EditorGUILayout.Separator();
                                }
                                EditorGUILayout.EndVertical();
                                EditorGUILayout.EndHorizontal();
                            }
                        }
                        EditorGUILayout.EndVertical();
                        EditorGUILayout.EndHorizontal();
                        #endregion
                    }
                }
            }

            EditorGUILayout.EndScrollView();

            GUILayout.EndVertical();

            //外横框结束
            GUILayout.EndHorizontal();
        }
Example #10
0
        public Task <List <Rank> > getAllAsync(int page = 1, int limit = 20, string sortByName = "name", SORT_TYPE sortByType = SORT_TYPE.DESC)
        {
            // var filter = Builders<Rank>.Filter.Empty;

            //  .Eq("_id", new ObjectId(userId));

            SortDefinition <Rank> sort;

            if (sortByType == SORT_TYPE.DESC)
            {
                sort = new SortDefinitionBuilder <Rank>().Descending(sortByName);
            }
            else
            {
                sort = new SortDefinitionBuilder <Rank>().Ascending(sortByName);
            }

            return(_ranks.Find(FilterDefinition <Rank> .Empty)
                   .Sort(sort)
                   .Skip((page - 1) * limit)
                   .Limit(limit)
                   .ToListAsync());
        }
Example #11
0
 public NodeSorterBy(SORT_TYPE type = SORT_TYPE.BY_DATE)
 {
     order_type = type;
 }
        public async Task <ActionResult <ControllerResponse <List <GetRank> > > > get(int page = 1, int limit = 20, string sortByField = "name", SORT_TYPE sortByType = SORT_TYPE.DESC)
        {
            _logger.LogInformation("In GET rank");
            var ranks = await _rankService.getAllAsync(page, limit, sortByField, sortByType);

            // var ranks = await _rankService.getAllAsync(page,limit,sortBy);
            return(Ok(new ControllerResponse <List <GetRank> >
            {
                data = ranks.Select(o => _mapper.Map <GetRank>(o)).ToList()
            }));
        }