Merge pull request #135 from ers35/textinput-perf

Improve DrawLineNumbersPanel performance
This commit is contained in:
Kenny Shields 2014-07-30 20:12:16 -04:00
commit 0b8a35a799

View File

@ -1631,7 +1631,6 @@ function skin.DrawLineNumbersPanel(object)
local theight = font:getHeight("a") local theight = font:getHeight("a")
local textcolor = skin.controls.linenumberspanel_text_color local textcolor = skin.controls.linenumberspanel_text_color
local bodycolor = skin.controls.linenumberspanel_body_color local bodycolor = skin.controls.linenumberspanel_body_color
local mody = y
object:SetWidth(10 + font:getWidth(#lines)) object:SetWidth(10 + font:getWidth(#lines))
love.graphics.setFont(font) love.graphics.setFont(font)
@ -1642,10 +1641,18 @@ function skin.DrawLineNumbersPanel(object)
love.graphics.setColor(bordercolor) love.graphics.setColor(bordercolor)
--skin.OutlinedRectangle(x, y, width, height, true, true, true, false) --skin.OutlinedRectangle(x, y, width, height, true, true, true, false)
for i=1, #lines do local startline = math.ceil(offsety / theight)
if startline < 1 then
startline = 1
end
local endline = math.ceil(startline + (height / theight)) + 1
if endline > #lines then
endline = #lines
end
for i=startline, endline do
love.graphics.setColor(textcolor) love.graphics.setColor(textcolor)
love.graphics.print(i, x + 5, mody - offsety) love.graphics.print(i, x + 5, (y + (theight * (i - 1))) - offsety)
mody = mody + theight
end end
end end