Linked images and placed documents in the art of the stored brushes (a
scatter or art brush's art, a pattern brush's tiles) are listed in the
Links panel after the other stored art, one row per linked or placed
object in each brush tile, with the brush as owner
(`{kind: brush, name, index, tile?}`). Check Links, the missing and
modified files reported on open, the link watch, Find in Folder, Relink
(including Relink All Instances), Update, Embed, Placement Options, Link
Info and Go To act on them, and their tooltip names the brush.
- vectorcraft-doc: `Document::mounted_art` holds art kept outside the
document's trees while a command looks it up by id; the stored-art
lookups, link visitors and `art_roots` include it, and
`number_mounted_art` gives its objects ids of their own.
- vectorcraft-brush: `stored_art::StoredArt` mounts the art of the
brushes that hold images or placed documents and writes back only the
entries whose art changed. Entries that do not read as a brush are left
as stored. `brush::store` keeps ids of their own in that art, so a row
keeps its id between commands.
- vectorcraft-engine: the links commands, opening a document, saving a
placed document's source, output of linked files and placed documents,
color masks after Update or Relink, and Package relinking go through
the mounted art.
Brush art rows follow the general Links rule as VectorCraft's own
application of it.
Linked images and placed documents kept only in symbols, graph designs,
pattern swatches or opacity masks now have ids of their own. links.list
lists them after the layers' own, one row per stored object, with an
owner naming what holds them; links.check, the missing, modified and
updated files reported on open, the link watch and links.findFiles
report them by id; relink (All Instances included), update, embed,
placementOptions, info and image.info act on them. links.goTo on one
clears the selection and returns onCanvas: false with its owner, and the
Links panel says the link has no place on the canvas.
- Document::visit_stored, stored_node and stored_node_mut find objects
in every stored art. fix_next_id counts their ids and gives an object
there whose id is 0, past the id range or already used a new one,
updating Objects on Path references to renamed children.
- Copies of masked objects give the mask art new ids, and symbols and
patterns that placed art brings from another document take ids of the
document they join.
- The Links panel picks such rows in the panel itself, drops the pick
when the canvas selection changes, and draws their thumbnails from a
lookup made once per list refresh. Select by Link Status leaves them
out, as it cannot select them.