forked from 1b-agent/opencadstudio-upstream
fix: feet-inch dynamic input, STRETCH preselection, ribbon title wrap
- Dynamic-input fields take ' and " and read 2'9" / 3' as lengths (#937) - STRETCH on a selection made by a crossing window stretches through that window and goes straight to the base point (#1068) - STRETCH's crossing-window steps show no coordinate boxes (#657) - Collapsed ribbon panel titles wrap at words, never mid-word (#920) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
178c7dff41
commit
1cbcc8f4c5
9 files changed
+67
-5
No files matched your search
@@ -67,6 +67,21 @@ impl StretchCommand {
|
||||
}
|
||||
}
|
||||
|
||||
/// A selection made by a crossing window before the command: that window
|
||||
/// marks what moves, so the command goes straight to the base point.
|
||||
pub fn preselected(
|
||||
handles: Vec<Handle>,
|
||||
wire_models: Vec<WireModel>,
|
||||
window: (DVec3, DVec3),
|
||||
) -> Self {
|
||||
Self {
|
||||
handles,
|
||||
wire_models,
|
||||
windows: vec![window],
|
||||
step: Step::Base,
|
||||
}
|
||||
}
|
||||
|
||||
/// Continue gathering crossing windows after the host has resolved the
|
||||
/// entities touched by the latest window.
|
||||
pub fn with_windows(
|
||||
@@ -223,6 +238,12 @@ impl CadCommand for StretchCommand {
|
||||
matches!(self.step, Step::WindowCorner1 | Step::WindowCorner2(_))
|
||||
}
|
||||
|
||||
fn selects_by_window(&self) -> bool {
|
||||
// Crossing windows select what stretches; dynamic input has nothing
|
||||
// to enter there (#657).
|
||||
self.window_corner_pick()
|
||||
}
|
||||
|
||||
fn window_first_corner(&self) -> Option<DVec3> {
|
||||
// Expose the first corner so the host draws a filled crossing marquee to
|
||||
// the cursor, matching a normal box selection instead of a bare outline.
|
||||
|
||||
Reference in new issue
Block a user