diff --git a/src/Classes/DropDownControl.lua b/src/Classes/DropDownControl.lua index 2805428b5e..27a9648209 100644 --- a/src/Classes/DropDownControl.lua +++ b/src/Classes/DropDownControl.lua @@ -19,7 +19,15 @@ local DropDownClass = newClass("DropDownControl", "Control", "ControlHost", "Too end, -- value mapping function function(listVal) - return StripEscapes(type(listVal) == "table" and listVal.label or listVal) + if type(listVal) == "table" then + if listVal.searchFilter then + return StripEscapes(listVal.searchFilter) + end + if listVal.label then + return StripEscapes(listVal.label) + end + end + return StripEscapes(listVal) end ) self.controls.scrollBar = new("ScrollBarControl", {"TOPRIGHT",self,"TOPRIGHT"}, -1, 0, 18, 0, (height - 4) * 4) @@ -359,9 +367,16 @@ function DropDownClass:Draw(viewPort, noTooltip) SetDrawColor(0.66, 0.66, 0.66) end -- draw actual item label with search match highlight if available - local label = type(listVal) == "table" and listVal.label or listVal + local label = nil + local detail = nil + if type(listVal) == "table" then + label = listVal.label + detail = listVal.detail + else + label = listVal + end DrawString(0, y, "LEFT", lineHeight, "VAR", label) - if selDetail ~= nil then + if detail ~= nil then local detail = listVal.detail dx = DrawStringWidth(lineHeight, "VAR", detail) DrawString(width - dx - 4 - 22, y, "LEFT", lineHeight, "VAR", detail) diff --git a/src/Classes/ImportTab.lua b/src/Classes/ImportTab.lua index 37f69f6749..5dfb600046 100644 --- a/src/Classes/ImportTab.lua +++ b/src/Classes/ImportTab.lua @@ -522,6 +522,7 @@ function ImportTabClass:BuildCharacterList(league) t_insert(self.controls.charSelect.list, { label = charName, char = char, + searchFilter = charName.." "..charClass, detail = detail }) end