diff options
Diffstat (limited to 'widgets/hourly.lua')
| -rw-r--r-- | widgets/hourly.lua | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/widgets/hourly.lua b/widgets/hourly.lua index 31a425b..c523b83 100644 --- a/widgets/hourly.lua +++ b/widgets/hourly.lua @@ -15,10 +15,13 @@ local function draw_curve(cr, x, y, w, h, colors, hours, S) local n = math.min(#hours, 24) local label = math.max(9, math.min(h * 0.135, w / 8 * 0.22, S * 0.32)) local glyph = label * 1.5 - -- A gutter on the left for the raindrop that labels the rain-chance row. - -- The whole band shifts, so the hour columns stay aligned with each other. + -- A gutter on the left for the legend glyphs that label the temperature, + -- rain-chance and hour rows. The whole band shifts, so the hour columns stay + -- aligned with each other. + local I = weather.ICON card.font(cr, card.FONT_MONO, label, false) - local gutter = card.advance(cr, weather.ICON.raindrop .. ' ') + local gutter = math.max(card.advance(cr, I.raindrop), card.advance(cr, I.thermometer), + card.advance(cr, I.clock)) + card.advance(cr, ' ') local x0 = x x, w = x + gutter, w - gutter local slot = w / n @@ -50,7 +53,7 @@ local function draw_curve(cr, x, y, w, h, colors, hours, S) end end cairo_fill(cr) - card.text(cr, x0, base - label * 0.1, weather.ICON.raindrop) + card.text(cr, x0, base - label * 0.1, I.raindrop) card.rgba(cr, colors.rule, 0.6) cairo_set_line_width(cr, 1) @@ -74,6 +77,12 @@ local function draw_curve(cr, x, y, w, h, colors, hours, S) end cairo_stroke(cr) + card.font(cr, card.FONT_MONO, label, false) + card.rgba(cr, colors.value) + card.text(cr, x0, y + glyph + label * 1.3, I.thermometer) + card.rgba(cr, colors.label) + card.text(cr, x0, y + h - label * 0.2, I.clock) + for i = 1, n, 3 do local hr = hours[i] card.font(cr, card.FONT_MONO, glyph, false) |
