cad-editor/assets
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Hakan Seven ba3b3202e8 feat(thumbnails): embed DWG previews and wire cross-platform file thumbnails
Round-trip a raster preview through the DWG's embedded preview slot and
surface it to the OS file managers, so drawings show their contents in
Explorer / Finder / Nautilus instead of a generic document icon.

OCS:
* io::thumbnail — rasterize the scene to a BMP DIB on save (embedded via
  acadrust's new Preview type) and read it back on open for the Start
  page recent list; `--dwg-thumbnail IN OUT SIZE` CLI extracts a badged
  PNG for external thumbnailers.
* io::file_association::install_thumbnailer — self-install the OS
  integration on startup: Linux writes a .thumbnailer + hicolor mimetype
  icons; Windows registers the IThumbnailProvider DLL under HKCU.

Shared core:
* crates/dwg-thumbnailer — lean (image-only) preview extractor + the
  `badge_dwg` full-width "DWG" band, used by every platform so the
  ribbon is single-sourced. Ships an rlib+staticlib.
* crates/dwg-thumbnailer-win — IThumbnailProvider COM in-proc server
  (cfg(windows), CI-built as a workspace member).
* macos/ — QuickLook thumbnail extension (Swift + C-ABI bridge to the
  core staticlib), assembled into a .appex.

Icons & packaging (single SVG source -> per-platform assets in CI):
* assets/mimetypes/image-vnd.{dwg,dxf}.svg — themed file icons.
* packaging: WiX ships dwg/dxf.ico + the thumbnail DLL and points the
  ProgIds at them; Info.plist gets CFBundleTypeIconFile + the QuickLook
  extension in Contents/PlugIns.
* release.yml — generate .ico (Windows) and .icns (macOS) from the SVGs,
  build the QuickLook .appex, and bundle everything.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-11 01:27:17 +03:00
..
fonts feat(fonts): system TrueType support with shaping and fallback 2026-06-16 11:18:17 +03:00
icons feat(draw): Arc Continue command; 3-Point default 2026-07-08 20:39:40 +03:00
linetypes chore(assets): drop ACAD prefix from ISO names 2026-06-08 23:11:30 +03:00
mimetypes feat(thumbnails): embed DWG previews and wire cross-platform file thumbnails 2026-07-11 01:27:17 +03:00
patterns chore(assets): drop ACAD prefix from ISO names 2026-06-08 23:11:30 +03:00
intro_thumb.jpg feat(start): replace info cards with a clickable intro video 2026-06-27 12:21:14 +03:00
intro_thumb2.jpg feat(start): add a second intro video next to the first 2026-07-02 00:27:25 +03:00
logo.svg chore: rename H7CAD to Open CAD Studio 2026-05-23 17:16:15 +03:00
ocad.pgp feat(alias): centralize command aliases in user-editable ocad.pgp (#286/#288) 2026-07-10 12:39:22 +03:00