// --------------------------------------------------------------------------------------------------------------------
//
// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
//
//
// Defines the LogLevelConverter type.
//
// --------------------------------------------------------------------------------------------------------------------
namespace HandBrakeWPF.Converters.Options
{
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Globalization;
using System.Windows.Data;
///
/// The log level converter.
///
public class LogLevelConverter : IValueConverter
{
///
/// The convert.
///
///
/// The value.
///
///
/// The target type.
///
///
/// The parameter.
///
///
/// The culture.
///
///
/// The .
///
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value.GetType() == typeof(BindingList))
{
return new List { "Minimised", "Standard", "Extended" };
}
else if (value is int)
{
switch ((int)value)
{
case 0:
return "Minimised";
case 2:
return "Extended";
default:
return "Standard";
}
}
return null;
}
///
/// The convert back.
///
///
/// The value.
///
///
/// The target type.
///
///
/// The parameter.
///
///
/// The culture.
///
///
/// The .
///
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
switch ((string)value)
{
case "Minimised":
return 0;
case "Extended":
return 2;
default:
case "Standard":
return 1;
}
}
}
}