public void UpdateStatus(AudioDeviceManager deviceManager)
        {
            DefaultState = CalculateDeviceDefaultState(deviceManager);
            Kind = _device.Kind;
            State = _device.State;
            IsVisible = CalculateIsVisible();

            // Only do work such as get text, icons, etc if we're visible
            if (IsVisible)
            {   
                Description = TryGetOrDefault(_device.TryGetDeviceDescription, Description);
                FriendlyName = TryGetOrDefault(_device.TryDeviceFriendlyName, FriendlyName);
                DeviceStateFriendlyName = GetDeviceStateFriendlyName();

                string iconPath;
                if (_device.TryGetDeviceClassIconPath(out iconPath))
                {
                    Image = GetImage(iconPath);
                }
            }
        }
 public InputSwitcherService(AudioDeviceManager manager)
 {
     _manager = manager;
 }
 public InputSwitcherService(AudioDeviceManager manager)
 {
     _manager = manager;
 }
        private AudioDeviceDefaultState CalculateDeviceDefaultState(AudioDeviceManager deviceManager)
        {
            AudioDeviceDefaultState state = AudioDeviceDefaultState.None;

            if (deviceManager.IsDefaultAudioDevice(_device, AudioDeviceRole.Multimedia))
            {
                state |= AudioDeviceDefaultState.Multimedia;
            }

            if (deviceManager.IsDefaultAudioDevice(_device, AudioDeviceRole.Communications))
            {
                state |= AudioDeviceDefaultState.Communications;
            }

            return state;
        }
 public SetAsDefaultCommunicationDeviceCommand(AudioDeviceManager manager)
     : base(manager, AudioDeviceRole.Communications)
 {
     Text = Resources.SetAsDefaultComunicationDevice;
     Image = Resources.DefaultCommunicationsDevice;
 }
 public SetAsDefaultMultimediaDeviceCommand(AudioDeviceManager manager)
     : base(manager, AudioDeviceRole.Multimedia)
 {
     Text = Resources.SetAsDefaultMultimediaDevice;
     Image = Resources.DefaultMultimediaDevice;
 }