extracted sorting into a separate file. may later replace the unstable sort in the TSM table by a stable sort

This commit is contained in:
Manuel Simon Hirsig
2016-02-02 15:59:26 +01:00
parent f32e188cec
commit d7af47d1b2
11 changed files with 191 additions and 147 deletions
+7 -7
View File
@@ -5,7 +5,7 @@ function m.money_column(title, getter)
return {
title = title,
width = 80,
comparator = function(datum1, datum2) return Aux.util.compare(getter(datum1), getter(datum2), Aux.util.GT) end,
comparator = function(datum1, datum2) return Aux.sort.compare(getter(datum1), getter(datum2), Aux.sort.GT) end,
cell_initializer = Aux.sheet.default_cell_initializer('RIGHT'),
cell_setter = function(cell, datum)
cell.text:SetText(getter(datum) and Aux.util.money_string(getter(datum)) or 'N/A')
@@ -19,13 +19,13 @@ function m.owner_column(getter)
width = 90,
comparator = function(datum1, datum2)
if getter(datum1) == UnitName('player') and getter(datum2) == UnitName('player') then
return Aux.util.EQ
return Aux.sort.EQ
elseif getter(datum1) == UnitName('player') then
return Aux.util.LT
return Aux.sort.LT
elseif getter(datum2) == UnitName('player') then
return Aux.util.GT
return Aux.sort.GT
else
return Aux.util.compare(getter(datum1), getter(datum2), Aux.util.GT)
return Aux.sort.compare(getter(datum1), getter(datum2), Aux.sort.GT)
end
end,
cell_initializer = Aux.sheet.default_cell_initializer('LEFT'),
@@ -44,7 +44,7 @@ function m.percentage_market_column(item_key_getter, value_getter)
local market_price2 = Aux.history.market_value(item_key_getter(datum2))
local factor1 = value_getter(datum1) and market_price1 and market_price1 > 0 and value_getter(datum1) / market_price1
local factor2 = value_getter(datum2) and market_price2 and market_price2 > 0 and value_getter(datum2) / market_price2
return Aux.util.compare(factor1, factor2, Aux.util.GT)
return Aux.sort.compare(factor1, factor2, Aux.sort.GT)
end,
cell_initializer = Aux.sheet.default_cell_initializer('RIGHT'),
cell_setter = function(cell, datum)
@@ -70,7 +70,7 @@ function m.duration_column(getter)
return {
title = 'Left',
width = 30,
comparator = function(datum1, datum2) return Aux.util.compare(getter(datum1), getter(datum2), Aux.util.GT) end,
comparator = function(datum1, datum2) return Aux.sort.compare(getter(datum1), getter(datum2), Aux.sort.GT) end,
cell_initializer = Aux.sheet.default_cell_initializer('CENTER'),
cell_setter = function(cell, datum)
local text