Skip to content
Brass Orrery

Orrery Terrain · OrreryTerrainEditor module · class

FOrreryTerrainEdRegistry

Editor only

Where the mode's palettes, tools, actions, layers and brush targets come from.

Declaration

class FOrreryTerrainEdRegistry
Header
#include "Mode/OrreryTerrainEdRegistry.h"
Module
PublicDependencyModuleNames.Add("OrreryTerrainEditor"); in an editor module’s Build.cs: an editor module, not in packaged games.
Stability
Stable: changes within a major version only add.
Thread
Game thread, editor only.

Description

Built-in entries are registered by the module at startup, with the same calls a buyer's or our own editor module makes in StartupModule (and undoes in ShutdownModule). Extensions that must not depend on this module register an IOrreryTerrainEdExtensionV1 as a modular feature instead; the registry pulls their lists whenever the mode is entered or a feature (un)registers. The mode and its toolkit read the registry only; nothing else is hard-wired.

Lists come back in display order: ascending Order, then Id. An id that is already registered is refused.

Brush targets come in two versions that share one id namespace: V1 targets (IOrreryTerrainBrushTarget) receive dabs without a mask, V2 targets (IOrreryTerrainBrushTargetV2, experimental) receive the mask with every dab. An id taken by a V1 target cannot be taken by a V2 target, and the other way round, so one object is never both. Precedence for a duplicate id from extensions: direct entries first (V1 before V2), then extensions in extension id order, V1 before V2.

Note.

Game thread, editor only. Not a UObject.

Functions

Properties

NameTypeDefaultMeaning
OnChangedFSimpleMulticastDelegate—

Fired after any change of the registered lists (direct or extension); the toolkit rebuilds its palettes.