forked from 1b-agent/opencadstudio-upstream
Cargo: codec 76d2a1c, kernel e652b4d, graph 0545fa9; text styles, templates, solid edges
- Text styles keep their TrueType typeface through save and reopen (codec reads and writes the STYLE record's ACAD extended data) (#1633) - Unnamed shape-file entries no longer show in text style lists (#1634) - Save As offers DWT 2018; NEW asks for the template to start from, while Ctrl+N and the quick-access New run QNEW with the default template (#1635) - An edge next to an earlier fillet of the same radius rounds together with it (kernel); the solid stays drawn and pickable while edges are chosen (#1625, #1107) - A full cache rebuild drops the B-rep cache too, so an undone fillet does not come back with the next edge operation (#1107) - Selected solids in shaded styles highlight only their visible edges (#1031) - VIEW ISO / SWISO / SEISO / NEISO / NWISO snap to the isometric corners Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
1cbcc8f4c5
commit
1eae36e726
43 files changed
+152
-34
No files matched your search
@@ -3137,6 +3137,8 @@ impl OpenCADStudio {
|
||||
let default_name = filename;
|
||||
let (filter_label, filter_ext): (&str, &str) = if ext.eq_ignore_ascii_case("dxf") {
|
||||
("DXF Files", "dxf")
|
||||
} else if ext.eq_ignore_ascii_case("dwt") {
|
||||
("Drawing Template (*.dwt)", "dwt")
|
||||
} else {
|
||||
("DWG Files", "dwg")
|
||||
};
|
||||
|
||||
@@ -8028,6 +8028,22 @@ impl OpenCADStudio {
|
||||
self.persist_settings_if_changed();
|
||||
Task::none()
|
||||
}
|
||||
Message::NewFromTemplate(Some(path)) => {
|
||||
let task = self.update(Message::TabNew);
|
||||
let idx = self.active_tab;
|
||||
match self.apply_template(&path.to_string_lossy()) {
|
||||
Ok(_) => {
|
||||
self.tabs[idx].dirty = false;
|
||||
self.refresh_layer_panel();
|
||||
self.sync_ribbon_styles();
|
||||
}
|
||||
Err(error) => self
|
||||
.command_line
|
||||
.push_error(error["error"].as_str().unwrap_or("template")),
|
||||
}
|
||||
task
|
||||
}
|
||||
Message::NewFromTemplate(None) => Task::none(),
|
||||
Message::QnewTemplateBrowse => Task::perform(
|
||||
async {
|
||||
crate::sys::file_dialog()
|
||||
|
||||
Reference in new issue
Block a user