fluent/
fluent.rs

1use termio::prelude::*;
2
3fn main() {
4    println!("Direct styling with fluent interface:\n");
5    
6    // Basic color styling
7    println!("{}", "Red text".color(Color::Red));
8    
9    // Background color
10    println!("{}", "Blue text on yellow background".color(Color::Blue).bg(Color::Yellow));
11    
12    // Decorations
13    println!("{}", "Bold and italic text".decoration(Decoration::Bold).decoration(Decoration::Italic));
14    
15    // Padding and border
16    println!("{}", "Text with padding and border"
17        .padding(1)
18        .border(BorderStyle::Solid)
19        .border_color(Color::Green));
20    
21    // Complex chained styling
22    println!("{}", "Complex styling example"
23        .color(Color::Code(48))
24        .bg(Color::IntenseGreen)
25        .decoration(Decoration::Reverse)
26        .decoration(Decoration::DoubleUnderline)
27        .padding_trbl(1, 2, 1, 2)
28        .margin(1)
29        .border(BorderStyle::Double)
30        .border_color(Color::Yellow));
31    
32    // Different border styles
33    println!("{}", "Solid border".border(BorderStyle::Solid).padding(1));
34    println!("{}", "Dashed border".border(BorderStyle::Dashed).padding(1));
35    println!("{}", "Rounded border".border(BorderStyle::Rounded).padding(1));
36    
37    // Multiple decorations
38    let decorated = "Multiple decorations: bold, italic, underline"
39        .decoration(Decoration::Bold)
40        .decoration(Decoration::Italic)
41        .decoration(Decoration::Underline);
42    println!("{}", decorated);
43}