mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-06 20:02:16 +00:00
3e70ad9876
* View navigator: a custom body as the navigator, and a right-click menu to switch types A right-click anywhere on the view navigator opens a menu with its three types: Axes, Cube and Custom. Custom opens the Custom View Navigator panel (a feature panel with OK and Cancel): pick a body in the view, its texture (Themed: the cube's colours; Modeled: the body's own appearance and the view's edge colour), and whether the cube's rotation arrows and Home button go around it. The navigator previews the panel's choices while it is open; Cancel leaves it as it was. The custom navigator draws the body at the cube's size through a small depth-buffered raster, so hidden faces stay hidden; hovering a face highlights it, a click looks straight at it (and frames the model with navigator_fit on), a drag orbits. Until a body is chosen it draws the cube. The body is kept as a packed snapshot (16-bit, base64) with the preferences and in settings profiles, so it stays across runs and designs and travels with an exported profile. Bodies over 10,000 triangles, and long or flat ones (thinnest width under a fifth of the widest), are refused. New command view.navigator (style, body, texture, arrows, home) does the same without opening anything; new preferences navigator_texture, navigator_arrows and navigator_home, and a Custom choice for navigator_style. Defaults are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: a hovered face in Modeled takes the view's selection colours In the Modeled texture the face under the pointer is filled and outlined the way the view selects a face of the model (sel_face, sel_edge), not in the cube's hover blue and accent, which Themed keeps. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: a hovered face in Modeled lights up as the view's mouse-over does The face under the pointer keeps its own colour, a little lighter (hover_face_lift) and still shaded, with its edges in the view's mouse-over edge colour (hover_edge), as the 3D view shows a face under the pointer; not the selection colours. Themed keeps the cube's hover blue and accent. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: rotation arrows and Home on by default navigator_arrows and navigator_home start on, so a new custom navigator has the cube's arrows and Home button around it; the Custom View Navigator panel turns either off. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: the strings in every complete language, and test fixes - The new messages in Arabic, Hebrew and Vietnamese (complete catalogs, like Japanese and Chinese). - The navigator's raster goes through one colour helper, listed with its reason among the files allowed colour literals (the design's appearance shaded into pixels). - nav_settings joins the requested-icon manifest (the view.navigator command's icon). - A visible edge piece is kept only when the stretch seen with it, across the edge's segments, is at least two samples long: a hidden edge no longer shows a sliver at a silhouette corner. - The navigator layout test treats Custom without a body as the cube it draws; the panel and size tests no longer assume an empty undo list, the style before opening, or a coarse sphere. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: profiles carry its texture, arrows and Home Settings profiles keep a fixed set of preference keys (#9907), which the custom navigator's newer settings are not part of. They travel in the profile's own `view_navigator` entry, next to its body (`view_gizmo`): captured, checked (a value this version can't read is left out) and applied, leaving the fixed key set unchanged. The cube's arrow inversion (#10286) applies to the custom navigator's arrows too, through the shared arrows(). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: follow main's Vec3 move and fallible world_state Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: list view.navigator in the rig's EXEMPT, refuse a stored body that can't save again, right-click without a widget over the navigator Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: keep the body unless picked again, save only a profile that reads back, no navigator menu through a popup Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: refuse a stored body with a triangle past its points Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: a stored body meets the triangle and aspect limits a picked one does Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Custom view navigator: a body at the 5:1 limit stays inside it once packed Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>