Merge pull request #1187 from ramox81/codex/complete-splinedit-options

This commit is contained in:
Hakan Seven committed 2026-09-11 12:52:49 +03:00
commit 67768a3eca
5 files changed
+436 -165

No files matched your search

+18
View File
@@ -1993,6 +1993,15 @@ impl InputKind {
}
}
/// Current screen projection and configured aperture for point-feature picking.
#[derive(Clone, Copy)]
pub struct PointPickContext {
pub view: glam::Mat4,
pub eye: DVec3,
pub bounds: iced::Rectangle,
pub aperture_px: f32,
}
pub trait CadCommand: Send {
/// Preserve source appearance for commands that extract existing entities.
fn preserve_commit_style(&self) -> bool { false }
@@ -2065,6 +2074,12 @@ pub trait CadCommand: Send {
/// Called when the user left-clicks in the viewport (point pick).
fn on_point(&mut self, pt: DVec3) -> CmdResult;
/// Opt in only while a point input selects an existing point feature.
fn wants_point_pick_context(&self) -> bool { false }
/// Refreshed for each point input so zoom and viewport changes are reflected.
fn set_point_pick_context(&mut self, _context: Option<PointPickContext>) {}
/// Called when the user presses Enter (finalize / next option).
fn on_enter(&mut self) -> CmdResult;
@@ -2345,6 +2360,9 @@ pub trait CadCommand: Send {
CmdResult::Cancel
}
/// Exclude locked-layer entities from injected selection geometry.
fn selection_entities_exclude_locked(&self) -> bool { false }
fn inject_selection_entities(&mut self, _entities: Vec<SelectionEntity>) {}
fn area_preview_regions(&self) -> Option<Vec<AreaPreviewRegion>> {