Newer
Older
Correlator / PipeGallery / Converter / SignalIntensityImageConverter.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;
using System.Windows.Media.Imaging;

namespace PipeGallery.Converter
{
    public class SignalIntensityImageConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            try
            {
                int p = System.Convert.ToInt32(parameter);

                if (p == 0)
                {
                    int signalIntensity = (int)value;
                    switch (signalIntensity)
                    {
                        case 0:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon0.png", UriKind.RelativeOrAbsolute));
                        case 1:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon1.png", UriKind.RelativeOrAbsolute));
                        case 2:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon2.png", UriKind.RelativeOrAbsolute));
                        case 3:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon3.png", UriKind.RelativeOrAbsolute));
                        case 4:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon4.png", UriKind.RelativeOrAbsolute));
                        case 5:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon5.png", UriKind.RelativeOrAbsolute));

                    }
                }
                else if (p == 1)
                {
                    int signalIntensity = (int)value;
                    switch (signalIntensity)
                    {
                        case 0:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon0.png", UriKind.RelativeOrAbsolute));
                        case 1:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon1.png", UriKind.RelativeOrAbsolute));
                        case 2:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon2.png", UriKind.RelativeOrAbsolute));
                        case 3:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon3.png", UriKind.RelativeOrAbsolute));
                        case 4:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon4.png", UriKind.RelativeOrAbsolute));
                        case 5:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon5.png", UriKind.RelativeOrAbsolute));

                    }
                }
                else if (p == 2)
                {
                    bool fault = (bool)value;
                    if (fault)
                    {
                        return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\d1_r.png", UriKind.RelativeOrAbsolute));
                    }
                    else
                    {
                        return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\d2_r.png", UriKind.RelativeOrAbsolute));

                    }
                }
                else if (p == 3)
                {
                    bool fault = (bool)value;
                    if (fault)
                    {
                        return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\d1_b.png", UriKind.RelativeOrAbsolute));
                    }
                    else
                    {
                        return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\d2_b.png", UriKind.RelativeOrAbsolute));
                    }
                }
                else if (p == 4)
                {
                    int signalIntensity = (int)value;
                    switch (signalIntensity)
                    {
                        case 0:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon1.png", UriKind.RelativeOrAbsolute));
                        case 1:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon2.png", UriKind.RelativeOrAbsolute));
                        case 2:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon3.png", UriKind.RelativeOrAbsolute));
                        case 3:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon4.png", UriKind.RelativeOrAbsolute));
                        case 4:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon5.png", UriKind.RelativeOrAbsolute));
                        case 5:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon6.png", UriKind.RelativeOrAbsolute));

                    }
                }
                else if (p == 5)
                {
                    int signalIntensity = (int)value;
                    switch (signalIntensity)
                    {
                        case 0:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon1.png", UriKind.RelativeOrAbsolute));
                        case 1:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon7.png", UriKind.RelativeOrAbsolute));
                        case 2:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon8.png", UriKind.RelativeOrAbsolute));
                        case 3:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon9.png", UriKind.RelativeOrAbsolute));
                        case 4:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon10.png", UriKind.RelativeOrAbsolute));
                        case 5:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon11.png", UriKind.RelativeOrAbsolute));

                    }
                }
                else if (p == 6)
                {
                    int signalIntensity = (int)value;
                    switch (signalIntensity)
                    {
                        case 0:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon1.png", UriKind.RelativeOrAbsolute));
                        case 1:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon2.png", UriKind.RelativeOrAbsolute));
                        case 2:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon3.png", UriKind.RelativeOrAbsolute));
                        case 3:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon4.png", UriKind.RelativeOrAbsolute));
                        case 4:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon5.png", UriKind.RelativeOrAbsolute));
                        case 5:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon6.png", UriKind.RelativeOrAbsolute));

                    }
                }
                else if (p == 7)
                {
                    int signalIntensity = (int)value;
                    switch (signalIntensity)
                    {
                        case 0:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon1.png", UriKind.RelativeOrAbsolute));
                        case 1:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon2.png", UriKind.RelativeOrAbsolute));
                        case 2:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon3.png", UriKind.RelativeOrAbsolute));
                        case 3:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon4.png", UriKind.RelativeOrAbsolute));
                        case 4:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon5.png", UriKind.RelativeOrAbsolute));
                        case 5:
                            return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon6.png", UriKind.RelativeOrAbsolute));

                    }
                }
                else if (p == 8)
                {
                    return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon7.png", UriKind.RelativeOrAbsolute));
                }
                else if (p == 9)
                {
                    return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon7.png", UriKind.RelativeOrAbsolute));
                }
                return null;
            }
            catch
            {
                return null;
            }
        }

        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            throw new NotImplementedException();
        }
    }
}