class SmartWindow extends Computer
{
	default m_controllerTypeName = 'SmartWindowController';

	protected event OnTakeControl( ri : EntityResolveComponentsInterface )
	{
		super.OnTakeControl( ri );
		m_controller = ( ( SmartWindowController )( EntityResolveComponentsInterface.GetComponent( ri, 'controller' ) ) );
	}

	private const override function GetController() : SmartWindowController
	{
		return ( ( SmartWindowController )( m_controller ) );
	}

	public const override function GetDevicePS() : SmartWindowControllerPS
	{
		return GetController().GetPS();
	}

	private override function InitializeScreenDefinition()
	{
		if( !( TDBID.IsValid( m_screenDefinition.screenDefinition ) ) )
		{
			m_screenDefinition.screenDefinition = T"DevicesUIDefinitions.SmartWindow_3x4";
		}
		if( !( TDBID.IsValid( m_screenDefinition.style ) ) )
		{
			m_screenDefinition.style = T"DevicesUIStyles.None";
		}
	}

}

