rust_kanban/ui/rendering/view/
title_body.rs

1use crate::{
2    app::App,
3    ui::{
4        rendering::{
5            common::{draw_title, render_body, render_card_being_dragged, render_close_button},
6            view::TitleBody,
7        },
8        Renderable,
9    },
10};
11use ratatui::{
12    layout::{Constraint, Direction, Layout},
13    Frame,
14};
15
16impl Renderable for TitleBody {
17    fn render(rect: &mut Frame, app: &mut App, is_active: bool) {
18        let chunks = Layout::default()
19            .direction(Direction::Vertical)
20            .constraints([Constraint::Length(3), Constraint::Fill(1)].as_ref())
21            .split(rect.area());
22
23        rect.render_widget(draw_title(app, chunks[0], is_active), chunks[0]);
24        render_body(rect, chunks[1], app, false, is_active);
25        if app.config.enable_mouse_support {
26            render_close_button(rect, app, is_active)
27        }
28        render_card_being_dragged(chunks[1], app, rect, is_active);
29    }
30}