1use gpui::App;
4
5pub trait AppExt {
7 fn brand(&self) -> crate::Brand;
9
10 fn set_brand(&mut self, brand: crate::Brand);
12
13 fn appearance_mode(&self) -> crate::appearance::AppearanceMode;
15
16 fn set_appearance_mode(&mut self, mode: crate::appearance::AppearanceMode);
18
19 fn set_palette(&mut self, build: fn(crate::Appearance) -> crate::Theme);
21
22 fn set_base_text_size(&mut self, points: f32);
24}
25
26impl AppExt for App {
27 fn brand(&self) -> crate::Brand {
28 crate::brand::brand(self)
29 }
30
31 fn set_brand(&mut self, brand: crate::Brand) {
32 crate::brand::set_brand(brand, self)
33 }
34
35 fn appearance_mode(&self) -> crate::appearance::AppearanceMode {
36 crate::appearance::mode(self)
37 }
38
39 fn set_appearance_mode(&mut self, mode: crate::appearance::AppearanceMode) {
40 crate::appearance::set_mode(mode, self)
41 }
42
43 fn set_palette(&mut self, build: fn(crate::Appearance) -> crate::Theme) {
44 crate::theme::install::set_palette(build, self)
45 }
46
47 fn set_base_text_size(&mut self, points: f32) {
48 crate::theme::typography::set_base_text_size(points, self)
49 }
50}