RecorderItem CreateRecorderItem(RecorderSettings recorderSettings) { var info = RecordersInventory.GetRecorderInfo(recorderSettings.GetType()); var hasError = info == null; var recorderItem = new RecorderItem(m_ControllerSettings, recorderSettings, hasError ? null : info.iconName); recorderItem.OnEnableStateChanged += enabled => { if (enabled) { m_RecordingListItem.selection = recorderItem; } }; if (hasError) { recorderItem.state = RecorderItem.State.HasErrors; } return(recorderItem); }