MCPcopy Create free account
hub / github.com/GCWing/BitFun / render

Method render

src/apps/cli/src/ui/startup.rs:422–469  ·  view source on GitHub ↗
(&mut self, frame: &mut Frame)

Source from the content-addressed store, hash-verified

420 // ======================== Rendering ========================
421
422 fn render(&mut self, frame: &mut Frame) {
423 let size = frame.area();
424 frame.render_widget(
425 Block::default().style(Style::default().bg(self.theme.background)),
426 size,
427 );
428
429 let chunks = Layout::default()
430 .direction(Direction::Vertical)
431 .constraints([
432 Constraint::Min(1), // main content
433 Constraint::Length(1), // bottom bar
434 ])
435 .split(size);
436
437 let main_area = chunks[0];
438 let input_area = self.render_main(frame, main_area);
439 self.render_bottom_bar(frame, chunks[1]);
440
441 // Overlay: command menu (above input area)
442 if self.command_menu.is_visible() {
443 let menu_area = Rect {
444 x: input_area.x,
445 y: main_area.y,
446 width: input_area.width,
447 height: input_area.y.saturating_sub(main_area.y),
448 };
449 self.command_menu.render(frame, menu_area, &self.theme);
450 }
451
452 // Overlay: selector popups (centered on full screen)
453 self.model_selector.render(frame, size, &self.theme);
454 self.agent_selector.render(frame, size, &self.theme);
455 self.session_selector.render(frame, size, &self.theme);
456 self.skill_selector.render(frame, size, &self.theme);
457 self.subagent_selector.render(frame, size, &self.theme);
458 self.theme_selector.render(frame, size, &self.theme);
459 self.provider_selector.render(frame, size, &self.theme);
460 self.model_config_form.render_mut(frame, size, &self.theme);
461
462 // Overlay: command palette (Ctrl+P)
463 self.command_palette.render(frame, size, &self.theme);
464
465 // Overlay: info popup (highest priority)
466 if let Some(ref msg) = self.info_popup {
467 super::widgets::render_info_popup(frame, size, msg, self.theme.primary);
468 }
469 }
470
471 /// Render main content, returns the input box area (for command menu positioning)
472 fn render_main(&mut self, frame: &mut Frame, area: Rect) -> Rect {

Callers

nothing calls this directly

Calls 7

render_info_popupFunction · 0.85
styleMethod · 0.80
render_mainMethod · 0.80
render_bottom_barMethod · 0.80
render_mutMethod · 0.80
renderMethod · 0.65
is_visibleMethod · 0.45

Tested by

no test coverage detected