blob: 7c3e95b00710518f070cb9c9673183eddaeb0c23 (
plain)
1
2
3
4
5
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
|
use {
super::*,
crate::{
conf::Conf,
},
ahash::AHashMap,
};
/// all the skin things used by the broot application
/// during running
pub struct AppSkin {
/// the skin used in the focused panel
pub focused: PanelSkin,
/// the skin used in unfocused panels
pub unfocused: PanelSkin,
}
impl AppSkin {
pub fn new(conf: &Conf, no_style: bool) -> Self {
if no_style {
Self {
focused: PanelSkin::new(StyleMap::no_term()),
unfocused: PanelSkin::new(StyleMap::no_term()),
}
} else {
let def_skin;
let skin = if let Some(skin) = &conf.skin {
skin
} else {
def_skin = AHashMap::default();
&def_skin
};
let StyleMaps { focused, unfocused } = StyleMaps::create(skin);
Self {
focused: PanelSkin::new(focused),
unfocused: PanelSkin::new(unfocused),
}
}
}
}
|