6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
# File 'lib/fuso/views/settings_view.rb', line 6
def render(app)
lines = []
lines << ""
lines << Styles.title.render("Fuso — Settings")
lines << ""
left_lines = render_project_list(app)
right_lines = render_category_list(app)
max_left = left_lines.map { |l| visible_length(l) }.max || 0
max_rows = [left_lines.size, right_lines.size].max
max_rows.times do |i|
l = left_lines[i] || ""
r = right_lines[i] || ""
pad = max_left - visible_length(l) + 4
lines << " #{l}#{' ' * pad}#{r}"
end
if app.settings_input_mode
lines << ""
label = app.settings_focus == :projects ? "New project: " : "New category: "
lines << " " + Styles.input_label.render(label) + app.settings_input_buffer + "█"
end
if app.settings_message
lines << ""
lines << " " + Styles.dim.render(app.settings_message)
end
lines << ""
lines << render_help(app)
lines.join("\n")
end
|