Skip to main content

ITpUiControl


public interface ITpUiControl                                                    
{                                                                                
    /// <summary>                                                                
    /// Set c# object Value                                                      
    /// </summary>                                                               
    /// <param name="value">c# object (or boxed UnityEngine.Object) value</param>
    /// <param name="withNotify">permit notification if appropriate</param>      
    void SetValue(object value, bool withNotify = true);                         
                                                                                 
    /// <summary>                                                                
    /// Run an effect on the control, if implemented                             
    /// </summary>                                                               
    /// <param name="effectType">Value from UiEffect enum</param>                
    /// <param name="duration">duration of the effect.</param>                   
    /// <param name = "endPoint" >endpoint for V3 type effects</param>           
    /// <param name = "endColor" >endpoint for Color type effects</param>        
    /// <returns>false if unimplemented.</returns>                               
    bool RunEffect(UiEffect effectType,                                          
                   float    duration,                                            
                   Vector3? endPoint = null,                                     
                   Color?   endColor = null);                                    
                                                                                 
    /// <summary>                                                                
    /// Returns a value from the FLAGS enum UiEffect,                            
    /// shows the controls effect capabilities.                                  
    /// </summary>                                                               
    UiEffect SupportedEffects { get; }                                           
                                                                                 
    /// <summary>                                                                
    /// Get integer Value                                                        
    /// </summary>                                                               
    int GetIntValue { get; }                                                     
                                                                                 
    /// <summary>                                                                
    /// Get bool Value                                                           
    /// </summary>                                                               
    bool GetBoolValue { get; }                                                   
                                                                                 
    /// <summary>                                                                
    /// Get c# object Value                                                      
    /// </summary>                                                               
    object GetValue { get; }                                                     
                                                                                 
    /// <summary>                                                                
    /// Get string value                                                         
    /// </summary>                                                               
    string GetStringValue { get; }                                               
                                                                                 
    /// <summary>                                                                
    /// Get value as a character.                                                
    /// </summary>                                                               
    char GetCharValue { get; }                                                   
                                                                                 
    /// <summary>                                                                
    /// Does this tile accept clicks?                                            
    /// </summary>                                                               
    bool AcceptsClicks { get; }                                                  
                                                                                 
    /// <summary>                                                                
    /// Does this tile accept hover?                                             
    /// </summary>                                                               
    bool AcceptsHover { get; }                                                   
                                                                                 
                                                                                 
}