Zum Inhalt

layer_react_util

Quelle: base/tealdef/gui/layers/layer_react_util.d.tl

Hinweise

Gemeinsame Bausteine der Karten-Layer: Verlaufsfarben für Legenden, HUD-Icons für Stadtbewertung und Nachfrage, gefilterte Entitäts-Tooltips, Legendencontainer und Ersatzfarben für eine LayerConfig.

LayerReactUtil

record global base/tealdef/gui/layers/layer_react_util.d.tl:3

global record LayerReactUtil

Laden: local layer_react_util = ug_require "::/gui/layers/layer_react_util.tl" as LayerReactUtil

Hinweise

Gemeinsame Helfer der Karten-Layer.

Felder

Name Typ Beschreibung
TownRatingHudIcon Recipe2<string, Engine.Entity> HUD-Icon-Recipe, das den Namen einer Stadt und einen Bewertungsbalken für eine Bewertung zeigt. Parameter sind der Bewertungsschlüssel und die Stadt-Entität.
TownDemandsHudIcon Recipe<Engine.Entity> HUD-Icon-Recipe, das den Namen einer Stadt und die Güterversorgung ihres Wohn-, Industrie- und Gewerbegebiets im Verhältnis zur Nachfrage zeigt.
LayerLegendWrapper Recipe<LayerLegendWrapperParam> Box-Layout um die Legende oder den Fensterinhalt eines Layers. Alle Layer-Recipes packen ihren Inhalt darin ein.
LayerLegendFakeWindow Recipe<LayerLegendFakeWindowParam> Zeigt eine Layer-Legende im Stil eines Fensters (Klasse fake-builtin-window), ohne ein Fenster zu sein. Das Stadtfenster verwendet sie für seine Layer-Ansichten. 1-mal im Basisspiel verwendet
ColorIndicator Recipe<string> Kleines Farbfeld (Style-Klasse color-indicator-inner) für Legenden. Die Verschmutzungslegende verwendet es mit den Klassen odd und event.

Funktionen

makeGradientColorsOf2(GradientColorsOf2) : {GradientColor} base/tealdef/gui/layers/layer_react_util.d.tl:34

Aufruf: layer_react_util.makeGradientColorsOf2(…)

Hinweise

Interpoliert numberOfLevels Farben von colorA bis colorB für eine builtin.GradientLegend.

Rückgabe {GradientColor}: Liste von Farben mit Labels. Nur die erste und die letzte Stufe haben ein Label, außer iterativeLabels ist gesetzt.

Beispiel

-- from gui/layers/layer_noise.tl
builtin.GradientLegend{
    colors = layer_react_util.makeGradientColorsOf2{
        colorA = averageColors[1],
        colorB = emissionMinMaxColor[2],
        numberOfLevels = emission_config.pollutionNumSteps,
        labelLeft = pGetText("layer-rating-label", "Low"),
        labelRight = pGetText("layer-rating-label", "High"),
    },
    horizontal = true,
    discrete = true,
    internalLabels = false,
},
Im Basisspiel verwendet: 3-mal in 1 Datei

base/content/gui/gui/entity_window/town/town.tl:96

colors = layer_react_util.makeGradientColorsOf2({

makeGradientColorsOfN(GradientColorsOfN) : {GradientColor} base/tealdef/gui/layers/layer_react_util.d.tl:35

Aufruf: layer_react_util.makeGradientColorsOfN(…)

Hinweise

Interpoliert Farben durch alle Einträge von colors für eine builtin.GradientLegend.

Rückgabe {GradientColor}: Liste von Farben mit Labels. Die Liste endet genau mit der letzten Farbe.

buildMouseEmissionInfo(Engine.Component.EmissionGrid.Type) : TreeNodeId base/tealdef/gui/layers/layer_react_util.d.tl:36

Aufruf: layer_react_util.buildMouseEmissionInfo(…)

Hinweise

Baut eine Checkbox „Mouse Position Info“ („Mauspositionsinfo“). Ist sie angehakt, zeigt sie die aktuelle und die mittlere Emission an der Mausposition, als Rohwert und in dB.

Rückgabe TreeNodeId

Details

Muss innerhalb einer Recipe-Funktion aufgerufen werden (verwendet React-State und onStep).

makeFilteredSelectorTooltips(selectedEntityRef : ReactRefT<Engine.Entity>, preFilter : {Engine.ComponentType}) : TreeNodeId base/tealdef/gui/layers/layer_react_util.d.tl:40

Aufruf: layer_react_util.makeFilteredSelectorTooltips(…)

Hinweise

Erzeugt einen Aktions-Tooltip mit dem Standard-Tooltip für Entitäten, beschränkt auf Entitäten mit einem der angegebenen Komponententypen.

Parameter Typ Beschreibung
selectedEntityRef ReactRefT<Engine.Entity> Referenz, die die überfahrene oder ausgewählte Entität hält.
preFilter {Engine.ComponentType} Komponententypen, für die Tooltips erscheinen, meist getHudIconPreFilter() des Layers.

Rückgabe TreeNodeId

createDefaultFallbackColor(surface : GResColor, details : GResColor, overwriteMapSurface? : boolean, overwriteMapDetails? : boolean) : LayerConfig.ColorPassFn.FallbackColor base/tealdef/gui/layers/layer_react_util.d.tl:53

Aufruf: layer_react_util.createDefaultFallbackColor(…)

Hinweise

Erzeugt die Ersatzfarbe des Farbdurchgangs eines Layers. Sie gilt für alles, was kein eigener Painter einfärbt.

Parameter Typ Beschreibung
surface GResColor Farbe für Gelände, Wasser und andere Flächen.
details GResColor Farbe für Kanten, Knoten und Parallelstreifen.
overwriteMapSurface? boolean Wird für die Flächenfarbe an BaseColor.fromColor übergeben.
overwriteMapDetails? boolean Wird für die Detailfarbe an BaseColor.fromColor übergeben.

Rückgabe LayerConfig.ColorPassFn.FallbackColor: Eine neue LayerConfig.ColorPassFn.FallbackColor.

Beispiel

colorPassFn.fallbackColor = layer_react_util.createDefaultFallbackColor(layerColors.Noise.Fallback.Surface, layerColors.Noise.Fallback.Details)
Im Basisspiel verwendet: 8-mal in 6 Dateien

base/content/gui/gui/construction/construction_react_util.tl:610

colorPassFn.fallbackColor = layer_react_util.createDefaultFallbackColor(layerColors.Construction.Fallback.Surface, layerColors.Construction.Fallback.Details)
base/content/gui/gui/entity_window/maintenance_station/maintenance_station.tl:164
fallbackColor = layer_react_util.createDefaultFallbackColor(hudGuiConfig.colors.FallbackVehicle, hudGuiConfig.colors.FallbackVehicle, true, true),
base/content/gui/gui/entity_window/town/town.tl:63
colorPassFn.fallbackColor = layer_react_util.createDefaultFallbackColor(layerColors.CargoFlow.Fallback.Surface, layerColors.CargoFlow.Fallback.Details)
base/content/gui/gui/entity_window/vehicle/vehicle.tl:581
fallbackColor = layer_react_util.createDefaultFallbackColor(hudGuiConfig.colors.FallbackVehicle, hudGuiConfig.colors.FallbackVehicle, true, true),
base/content/gui/gui/line_vehicle_mgmt/line_util.tl:1059
colorPassFn.fallbackColor = layer_react_util.createDefaultFallbackColor(layerColors.Terrain.Fallback.Surface, layerColors.Terrain.Fallback.Details, true, true)
base/content/gui/gui/statistics/statistics.tl:461
fallbackColor = layer_react_util.createDefaultFallbackColor(hudGuiConfig.colors.FallbackVehicle, hudGuiConfig.colors.FallbackVehicle, true, true),

LayerReactUtil.GradientColorsOf2

record base/tealdef/gui/layers/layer_react_util.d.tl:4

record GradientColorsOf2

Hinweise

Eingabe von makeGradientColorsOf2, ein Verlauf zwischen zwei Farben.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/gui/gui/layers/layer_react_util.tl:14

function layer_react_util.makeGradientColorsOf2(params : LayerReactUtil.GradientColorsOf2) : {LayerReactUtil.GradientColor}

Felder

Name Typ Beschreibung
colorA Vec4f Farbe der ersten Stufe.
colorB Vec4f Farbe der letzten Stufe.
numberOfLevels integer Anzahl der Stufen.
labelLeft string Label der ersten Stufe (Standard „Low“, im Spiel „Niedrig“).
labelRight string Label der letzten Stufe (Standard „High“, im Spiel „Hoch“).
iterativeLabels boolean Bei wahr bekommt jede Stufe ihre Nummer als Label, statt labelLeft und labelRight zu verwenden.

LayerReactUtil.GradientColorsOf3

record base/tealdef/gui/layers/layer_react_util.d.tl:13

record GradientColorsOf3

Hinweise

Verlaufsdefinition mit drei Farben. Keine Funktion des Basisspiels nimmt sie entgegen.

Felder

Name Typ Beschreibung
colorA Vec4f
colorB Vec4f
colorC Vec4f
numberOfLevels integer
labelLeft string
labelRight string
iterativeLabels boolean

LayerReactUtil.GradientColorsOfN

record base/tealdef/gui/layers/layer_react_util.d.tl:23

record GradientColorsOfN

Hinweise

Eingabe von makeGradientColorsOfN, ein Verlauf durch mehrere Farben.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/gui/gui/layers/layer_react_util.tl:38

function layer_react_util.makeGradientColorsOfN(params : LayerReactUtil.GradientColorsOfN) : {LayerReactUtil.GradientColor}

Felder

Name Typ Beschreibung
colors {Vec4f} Farben, zwischen denen der Reihe nach interpoliert wird.
numberOfLevels integer Gesamtzahl der Stufen, gleichmäßig auf die Paare benachbarter Farben verteilt.
labels {string} Optionale Labels, eins pro Farbe, jeweils an der Stufe, an der diese Farbe beginnt.

LayerReactUtil.GradientColor

record base/tealdef/gui/layers/layer_react_util.d.tl:29

record GradientColor

Hinweise

Eine Stufe eines Legendenverlaufs.

Im Basisspiel verwendet: 4-mal in 1 Datei

base/content/gui/gui/layers/layer_react_util.tl:14

function layer_react_util.makeGradientColorsOf2(params : LayerReactUtil.GradientColorsOf2) : {LayerReactUtil.GradientColor}

Felder

Name Typ Beschreibung
color Vec4f Farbe der Stufe.
label string Label der Stufe (darf leer sein).

LayerReactUtil.LayerLegendWrapperParam

record base/tealdef/gui/layers/layer_react_util.d.tl:42

record LayerLegendWrapperParam

Hinweise

Parameter von LayerLegendWrapper.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/gui/gui/layers/layer_react_util.tl:220

layer_react_util.LayerLegendWrapper = react.RegisterRecipe("LayerLegendWrapper", function(param : LayerReactUtil.LayerLegendWrapperParam) : TreeNodeId

Felder

Name Typ Beschreibung
content TreeNodeId Zu umhüllender Knoten.

LayerReactUtil.LayerLegendFakeWindowParam

record base/tealdef/gui/layers/layer_react_util.d.tl:47

record LayerLegendFakeWindowParam

Hinweise

Parameter von LayerLegendFakeWindow.

Im Basisspiel verwendet: 2-mal in 2 Dateien

base/content/gui/gui/entity_window/town/town.tl:141

local TownLayerLegendOnFullscreen = react.RegisterRecipe("TownLayerLegendOnFullscreen", function(param : LayerReactUtil.LayerLegendFakeWindowParam) : TreeNodeId
base/content/gui/gui/layers/layer_react_util.tl:229
layer_react_util.LayerLegendFakeWindow = react.RegisterRecipe("LayerLegendFakeWindow", function(param : LayerReactUtil.LayerLegendFakeWindowParam) : TreeNodeId

Felder

Name Typ Beschreibung
title string Optionaler Titel über der Legende.
legendRecipe Recipe0 Anzuzeigendes Legendenrezept, etwa LayerTraffic.Legend.