28 lines
751 B
Rust
28 lines
751 B
Rust
use gpui::Div;
|
|
|
|
use crate::{prelude::*, v_stack};
|
|
|
|
/// Create an elevated surface.
|
|
///
|
|
/// Must be used inside of a relative parent element
|
|
pub fn elevated_surface<V: 'static>(level: ElevationIndex, cx: &mut ViewContext<V>) -> Div<V> {
|
|
let colors = cx.theme().colors();
|
|
|
|
// let shadow = BoxShadow {
|
|
// color: hsla(0., 0., 0., 0.1),
|
|
// offset: point(px(0.), px(1.)),
|
|
// blur_radius: px(3.),
|
|
// spread_radius: px(0.),
|
|
// };
|
|
|
|
v_stack()
|
|
.rounded_lg()
|
|
.bg(colors.elevated_surface_background)
|
|
.border()
|
|
.border_color(colors.border)
|
|
.shadow(level.shadow())
|
|
}
|
|
|
|
pub fn modal<V>(cx: &mut ViewContext<V>) -> Div<V> {
|
|
elevated_surface(ElevationIndex::ModalSurface, cx)
|
|
}
|