void UpdateFromId()
{
if( m_interpolatorData != null )
{
if( m_interpolatorData.Count == 0 )
{
for( int i = 0; i < 4; i++ )
m_containerGraph.DeleteConnection( false, UniqueId, i, false, true );
m_headerColor = UIUtils.GetColorFromCategory( "Default" );
m_content.text = "None";
m_additionalContent.text = string.Empty;
m_outputPorts[ 0 ].ChangeProperties( "None", WirePortDataType.OBJECT, false );
ConfigurePorts();
return;
}
bool areCompatible = TemplateHelperFunctions.CheckIfCompatibles( m_outputPorts[ 0 ].DataType, m_interpolatorData[ m_currentDataIdx ].DataType );
switch( m_interpolatorData[ m_currentDataIdx ].DataType )
{
default:
case WirePortDataType.INT:
case WirePortDataType.FLOAT:
m_outputPorts[ 0 ].ChangeProperties( Constants.EmptyPortValue, m_interpolatorData[ m_currentDataIdx ].DataType, false );
break;
case WirePortDataType.FLOAT2:
m_outputPorts[ 0 ].ChangeProperties( "XY", m_interpolatorData[ m_currentDataIdx ].DataType, false );
break;
case WirePortDataType.FLOAT3:
m_outputPorts[ 0 ].ChangeProperties( "XYZ", m_interpolatorData[ m_currentDataIdx ].DataType, false );
break;
case WirePortDataType.FLOAT4:
m_outputPorts[ 0 ].ChangeProperties( "XYZW", m_interpolatorData[ m_currentDataIdx ].DataType, false );
break;
case WirePortDataType.COLOR:
m_outputPorts[ 0 ].ChangeProperties( "RGBA", m_interpolatorData[ m_currentDataIdx ].DataType, false );
break;
}
ConfigurePorts();
if( !areCompatible )
{
m_containerGraph.DeleteConnection( false, UniqueId, 0, false, true );
}
m_dataName = m_interpolatorData[ m_currentDataIdx ].VarName;
m_content.text = m_dataName;
m_sizeIsDirty = true;
CheckWarningState();
}
}