EntityNames.h header

#include <ew/app/EntityNames.h>

Namespace ew::app

Functions

std::vector< QString > ew::app::search::entityNames(const ew::core::project::Project &project)

The distinct, non-empty names an entity in project goes by – each entity's display name and every alias – sorted case-insensitively.

These are the coined words the editor has to know about: they drive entity-name autocompletion while writing, and they are what spell-check must learn so a name the codex already knows is not red-underlined. Aliases belong in both, which Entity::aliases states as its own contract: "used for link resolution ... and for spell-check (so coined names are not flagged)".

std::vector< QString > ew::app::search::entityNames(const ew::core::project::Project &project, const app::library::MountedLibraries &libraries)

As entityNames, spanning project and every library mounted into it.

The spanning form exists because its siblings have one and the working graph is a single graph: EntityLinker and entityPreview both resolve across mounts, so a shared-universe library's entity auto-links and hover-previews. Without this overload the same name was simultaneously known and unknown to three neighbouring features – linked in the prose, absent from the typeahead, and flagged as a misspelling (F-0087).