Class RenderProfileElement
Represents an element of a Profile that has advanced rendering capabilities
public abstract class RenderProfileElement : ProfileElement, IBreakableModel, IDisposable, IPluginFeatureDependent
- Inheritance
-
RenderProfileElement
- Implements
- Derived
- Inherited Members
Properties
Bounds
The bounds of this entity
public SKRectI Bounds { get; }
Property Value
DisplayCondition
Gets or sets the display condition used to determine whether this element is active or not
public ICondition DisplayCondition { get; set; }
Property Value
DisplayConditionMet
Gets whether the display conditions applied to this layer where met or not during last update
Always true if the layer has no display conditions
public bool DisplayConditionMet { get; }
Property Value
Enabled
Gets a boolean indicating whether this render element and its layers/brushes are enabled
public bool Enabled { get; protected set; }
Property Value
LayerEffects
Gets a read-only collection of the layer effects on this entity
public ReadOnlyCollection<BaseLayerEffect> LayerEffects { get; }
Property Value
Parent
Gets the parent of this element
public ProfileElement Parent { get; }
Property Value
Path
Gets the path containing all the LEDs this entity is applied to, any rendering outside the entity Path is clipped.
public SKPath? Path { get; protected set; }
Property Value
ShouldBeEnabled
Gets a boolean indicating whether this render element and its layers/brushes should be enabled
public abstract bool ShouldBeEnabled { get; }
Property Value
Timeline
Gets the timeline associated with this render element
public Timeline Timeline { get; }
Property Value
Methods
AddLayerEffect(BaseLayerEffect)
Adds a the provided layer effect to the render profile element
public void AddLayerEffect(BaseLayerEffect layerEffect)
Parameters
layerEffect
BaseLayerEffectThe effect to add.
Disable()
Enables the render element and its brushes and effects
public abstract void Disable()
Dispose(bool)
Disposes the profile element
protected override void Dispose(bool disposing)
Parameters
disposing
bool
Enable()
Disables the render element and its brushes and effects
public abstract void Enable()
GetAllLayerProperties()
Creates a list of all layer properties present on this render element
public abstract List<ILayerProperty> GetAllLayerProperties()
Returns
- List<ILayerProperty>
A list of all layer properties present on this render element
OverrideTimelineAndApply(TimeSpan)
Overrides the main timeline to the specified time and clears any extra time lines
public abstract void OverrideTimelineAndApply(TimeSpan position)
Parameters
position
TimeSpanThe position to set the timeline to
RemoveLayerEffect(BaseLayerEffect)
Removes the provided layer effect.
public void RemoveLayerEffect(BaseLayerEffect layerEffect)
Parameters
layerEffect
BaseLayerEffectThe effect to remove.
UpdateDisplayCondition()
Evaluates the display conditions on this element and applies any required changes to the Timeline
public void UpdateDisplayCondition()
UpdateTimeline(double)
Updates the Timeline according to the provided deltaTime
and current display
condition
protected void UpdateTimeline(double deltaTime)
Parameters
deltaTime
double
Events
LayerEffectsUpdated
Occurs when a layer effect has been added or removed to this render element
public event EventHandler? LayerEffectsUpdated