public static void SortHeroList(ref ListView <IHeroData> heroList, CMallSortHelper.HeroViewSortType sortType = CMallSortHelper.HeroViewSortType.Default, bool bDesc = false) { if (Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo() == null) { return; } HeroViewSortImp heroViewSortImp = CMallSortHelper.CreateHeroViewSorter(); if (heroViewSortImp != null) { heroViewSortImp.SetSortType(sortType); heroList.Sort(heroViewSortImp); } if (bDesc) { heroList.Reverse(); } }
private void FilterHeroData(bool bOnlySort) { ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); if (!bOnlySort) { this.m_heroList.Clear(); for (int i = 0; i < allHeroList.get_Count(); i++) { if (this.m_selectHeroType == enHeroJobType.All || allHeroList.get_Item(i).bMainJob == (byte)this.m_selectHeroType || allHeroList.get_Item(i).bMinorJob == (byte)this.m_selectHeroType) { IHeroData heroData = CHeroDataFactory.CreateHeroData(allHeroList.get_Item(i).dwCfgID); CMallItem cMallItem = new CMallItem(heroData.cfgID, CMallItem.IconType.Normal); if (this.m_ownFlag) { if (cMallItem.Owned(false)) { this.m_heroList.Add(heroData); } } else { this.m_heroList.Add(heroData); } } } } HeroViewSortImp heroViewSortImp = CMallSortHelper.CreateHeroViewSorter(); if (heroViewSortImp != null) { heroViewSortImp.SetSortType(this.m_heroSortType); this.m_heroList.Sort(heroViewSortImp); if (this.m_bSortDesc) { this.m_heroList.Reverse(); } } }
private void OnHeroSortTypeSelect(CUIEvent uiEvent) { CUIFormScript form = Singleton <CUIManager> .GetInstance().GetForm(CHeroOverviewSystem.s_heroViewFormPath); if (form == null) { return; } GameObject widget = form.GetWidget(2); if (widget != null) { widget.CustomSetActive(false); } CMallSortHelper.HeroViewSortType srcWidgetIndexInBelongedList = (CMallSortHelper.HeroViewSortType)uiEvent.m_srcWidgetIndexInBelongedList; HeroViewSortImp heroViewSortImp = CMallSortHelper.CreateHeroViewSorter(); heroViewSortImp.SetSortType(srcWidgetIndexInBelongedList); if (this.m_heroSortType != srcWidgetIndexInBelongedList) { this.m_bSortDesc = false; this.m_heroSortType = srcWidgetIndexInBelongedList; this.ResetHeroListData(true); } else if (srcWidgetIndexInBelongedList != CMallSortHelper.HeroViewSortType.Default) { this.m_bSortDesc = !this.m_bSortDesc; this.ResetHeroListData(false); } GameObject widget2 = form.GetWidget(1); if (widget2 != null) { widget2.GetComponent <Text>().text = CMallSortHelper.CreateHeroViewSorter().GetSortTypeName(this.m_heroSortType); } }