refresh: stack al día (vello 0.7 / wgpu 27 / parley 0.6) + motor 3D voxel
Re-sincroniza las fuentes desde el monorepo (estaba en vello 0.5/wgpu 24 y con la estructura vieja de eventloop) y suma el 3D: - bump del workspace a vello 0.7 / wgpu 27 / parley 0.6, + accesskit 0.24 / accesskit_winit 0.33 / vello_hybrid 0.0.9. - nuevos crates: llimphi-3d (voxels ray-march + mallas en un depth compartido, montable dentro de un View 2D vía set_viewport+scissor) y llimphi-voxel (world-gen, personajes, director de escenas) + shared/foreign-vox (puente .vox). - README: sección "Not just 2D — a 3D voxel engine" + GIF (docs/llimphi_voxel.gif). - excluido modules/allichay (arrastra deps fuera del alcance del front-door). - cargo check --workspace: verde. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
//! `llimphi-widget-panel` — firma visual transversal de los paneles gioser.
|
||||
//! `llimphi-widget-panel` — firma visual transversal de los paneles tawasuyu.
|
||||
//!
|
||||
//! Aporta dos detalles que aplicados consistentemente vuelven al sistema
|
||||
//! reconocible sin que se note "diseñado":
|
||||
@@ -36,8 +36,8 @@
|
||||
use llimphi_ui::llimphi_layout::taffy::prelude::{percent, Size, Style};
|
||||
use llimphi_ui::llimphi_raster::kurbo::{Affine, Point, Rect as KurboRect, RoundedRect};
|
||||
use llimphi_ui::llimphi_raster::peniko::{color::AlphaColor, Color, Fill, Gradient};
|
||||
use llimphi_ui::{PaintRect, View};
|
||||
use llimphi_theme::{alpha, radius, Theme};
|
||||
use llimphi_ui::{PaintRect, Shadow, View};
|
||||
use llimphi_theme::{alpha, elevation, radius, Theme};
|
||||
|
||||
/// Token bundle de la firma visual.
|
||||
#[derive(Debug, Clone, Copy)]
|
||||
@@ -184,6 +184,27 @@ pub fn panel_view<Msg: Clone + 'static>(
|
||||
.children(children)
|
||||
}
|
||||
|
||||
/// Variante elevada: agrega una sombra del nivel `elev` (token de
|
||||
/// [`llimphi_theme::elevation`]) al `panel_view`. Para dropdowns,
|
||||
/// popovers y dashboards que necesitan separación clara del fondo.
|
||||
/// Pasar `elevation::E2` para cards, `E3` para menús contextuales,
|
||||
/// `E4` para modales.
|
||||
pub fn panel_elevated_view<Msg: Clone + 'static>(
|
||||
children: Vec<View<Msg>>,
|
||||
style: PanelStyle,
|
||||
elev: elevation::Elev,
|
||||
) -> View<Msg> {
|
||||
let (a, blur, dy) = elev;
|
||||
let shadow = Shadow {
|
||||
color: Color::from_rgba8(0, 0, 0, a),
|
||||
blur,
|
||||
dx: 0.0,
|
||||
dy,
|
||||
spread: 0.0,
|
||||
};
|
||||
panel_view(children, style).shadow(shadow)
|
||||
}
|
||||
|
||||
// =====================================================================
|
||||
// Helpers internos
|
||||
// =====================================================================
|
||||
|
||||
Reference in New Issue
Block a user