Class: RSpecTelemetry::Trace::Viewer::ReportPane

Inherits:
Object
  • Object
show all
Defined in:
lib/rspec_telemetry/trace/viewer/report_pane.rb

Instance Method Summary collapse

Constructor Details

#initialize(rows, list:, focus:) ⇒ ReportPane

Returns a new instance of ReportPane.



9
10
11
12
13
# File 'lib/rspec_telemetry/trace/viewer/report_pane.rb', line 9

def initialize(rows, list:, focus:)
  @rows = rows
  @list = list
  @focus = focus
end

Instance Method Details

#draw(canvas, rect) ⇒ Object



15
16
17
18
19
20
21
22
# File 'lib/rspec_telemetry/trace/viewer/report_pane.rb', line 15

def draw(canvas, rect)
  highlight = @focus ? Theme::SELECT : Theme::SELECT_BLUR
  TuiTui::List.new(@list).draw(canvas, rect, highlight: highlight, scrollbar: Theme.base) do |index, selected|
    row = @rows[index]
    style = selected ? highlight : Theme.style(row.style)
    TuiTui::Line[TuiTui::Span[row.text, style]]
  end
end