Fix Vip List sorting

Fixes Vip list sorting issues for both alphabetical sorting and
online/offline sorting. Fixes Issue #169
Tested in 8.61
This commit is contained in:
Jeffrey 2013-01-07 19:38:23 -06:00
parent 3ed2eeb104
commit 4c0c6e635e
1 changed files with 6 additions and 3 deletions

View File

@ -97,13 +97,14 @@ function onAddVip(id, name, state)
for i=1,childrenCount do
local child = vipList:getChildByIndex(i)
if state == VipState.Online and not child.vipState == VipState.Online then
if state == VipState.Online and child.vipState ~= VipState.Online then
vipList:insertChild(i, label)
return
end
if (not state == VipState.Online and not child.vipState == VipState.Online)
if (state ~= VipState.Online and child.vipState ~= VipState.Online)
or (state == VipState.Online and child.vipState == VipState.Online) then
local childText = child:getText():lower()
local length = math.min(childText:len(), nameLower:len())
@ -113,6 +114,8 @@ function onAddVip(id, name, state)
return
elseif nameLower:byte(j) > childText:byte(j) then
break
elseif j == nameLower:len() then -- We are at the end of nameLower, and its shorter than childText, thus insert before
vipList:insertChild(i, label)
end
end
end