25 lines
		
	
	
		
			881 B
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			881 B
		
	
	
	
		
			C#
		
	
	
	
	
	
namespace Engine.Core;
 | 
						|
 | 
						|
/// <summary>
 | 
						|
/// Indicates the object is an <see cref="IAssignable"/> with an assignable <see cref="IStateEnable"/> field.
 | 
						|
/// </summary>
 | 
						|
public interface IHasStateEnable : IAssignable
 | 
						|
{
 | 
						|
    /// <summary>
 | 
						|
    /// Event triggered when the <see cref="IStateEnable"/> value has has been assigned a new value.
 | 
						|
    /// </summary>
 | 
						|
    Event<IHasStateEnable> OnStateEnableAssigned { get; }
 | 
						|
 | 
						|
    /// <inheritdoc cref="IStateEnable" />
 | 
						|
    IStateEnable StateEnable { get; }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// Assign a value to the <see cref="IStateEnable"/> field of this object.
 | 
						|
    /// </summary>
 | 
						|
    /// <param name="stateEnable">New <see cref="IStateEnable"/> to assign.</param>
 | 
						|
    /// <returns> 
 | 
						|
    /// <see cref="true"/>, if the value given assigned successfully assigned, <see cref="false"/> if not.
 | 
						|
    /// </returns>
 | 
						|
    bool Assign(IStateEnable stateEnable);
 | 
						|
}
 |