void CMackieControlXT::TempDisplaySelectedTrackName()
{
	SONAR_MIXER_STRIP eMixerStrip = m_cState.GetMixerStrip();
	DWORD dwStripNum = m_cState.GetSelectedStripNum();

	char szStripName[64];
	DWORD dwLen = sizeof(szStripName);

	if (!GetStripName(eMixerStrip, dwStripNum, szStripName, &dwLen))
		return;

	char szTrackType[64];
	switch (eMixerStrip)
	{
		case MIX_STRIP_TRACK:	snprintf(szTrackType, sizeof(szTrackType), "Track %d", dwStripNum + 1);		break;
		case MIX_STRIP_AUX:		snprintf(szTrackType, sizeof(szTrackType), "Aux %d", dwStripNum + 1);		break;
		case MIX_STRIP_MAIN:	snprintf(szTrackType, sizeof(szTrackType), "VMain %c", dwStripNum + 'A');	break;
		case MIX_STRIP_BUS:		snprintf(szTrackType, sizeof(szTrackType), "Bus %d", dwStripNum + 1);		break;
		case MIX_STRIP_MASTER:	snprintf(szTrackType, sizeof(szTrackType), "Master %d", dwStripNum + 1);	break;
		default:
			return;
	}

	char szLine[1024];

	if (IsAPluginMode(m_cState.GetAssignment()))
	{
		char szPluginName[64];
		dwLen = sizeof(szPluginName);

		if (GetCurrentPluginName(m_cState.GetAssignment(), m_cState.GetMixerStrip(),
								m_cState.GetSelectedStripNum(), m_cState.GetPluginNumOffset(),
								szPluginName, &dwLen))
			snprintf(szLine, sizeof(szLine), "%s: \"%s\", Plugin: \"%s\"", szTrackType, szStripName, szPluginName);
		else
			snprintf(szLine, sizeof(szLine), "%s: \"%s\", Plugin: --None--", szTrackType, szStripName);
	}
	else
	{
		snprintf(szLine, sizeof(szLine), "%s: \"%s\"", szTrackType, szStripName);
	}

	szLine[LCD_WIDTH] = 0;

	char szBuf[LCD_WIDTH];
	snprintf(szBuf, sizeof(szBuf), "%-56s", szLine);

	m_cState.SetTempDisplayText(szBuf);
}
void CMackieControlMaster::ShiftPluginNumOffset(int iAmount)
{
	if (IsAPluginMode(m_cState.GetAssignment()))
	{
		int iPluginNumOffset = m_cState.GetPluginNumOffset() + iAmount;

		if (iPluginNumOffset < 0)
			iPluginNumOffset = 0;
		else if (iPluginNumOffset > 9)
			iPluginNumOffset = 9;

		m_cState.SetPluginNumOffset(iPluginNumOffset);

		TempDisplaySelectedTrackName();
	}
}