diff --git a/src/Gemini/Framework/ShaderEffects/Converters/IsNullConverter.cs b/src/Gemini/Framework/ShaderEffects/Converters/IsNullConverter.cs new file mode 100644 index 00000000..3faa4a96 --- /dev/null +++ b/src/Gemini/Framework/ShaderEffects/Converters/IsNullConverter.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Data; + +namespace Gemini.Framework.ShaderEffects.Converters +{ + // From https://github.com/MahApps/MahApps.Metro/blob/9c331aa20b2b3fd6a9426e0687cfc535511bf134/MahApps.Metro/Converters/IsNullConverter.cs + + /// + /// Converts the value from true to false and false to true. + /// + public sealed class IsNullConverter : IValueConverter + { + private static IsNullConverter _instance; + + // Explicit static constructor to tell C# compiler + // not to mark type as beforefieldinit + static IsNullConverter() + { + } + + private IsNullConverter() + { + } + + public static IsNullConverter Instance + { + get { return _instance ?? (_instance = new IsNullConverter()); } + } + + public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) + { + return null == value; + } + + public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) + { + return Binding.DoNothing; + } + } +} diff --git a/src/Gemini/Gemini.csproj b/src/Gemini/Gemini.csproj index c99da540..e12fa04e 100644 --- a/src/Gemini/Gemini.csproj +++ b/src/Gemini/Gemini.csproj @@ -1,4 +1,4 @@ - + Debug @@ -149,6 +149,7 @@ + @@ -472,7 +473,6 @@ - @@ -484,4 +484,4 @@ --> - \ No newline at end of file + diff --git a/src/Gemini/Themes/VS2013/Controls/Window.xaml b/src/Gemini/Themes/VS2013/Controls/Window.xaml index 242a8eef..62941d99 100644 --- a/src/Gemini/Themes/VS2013/Controls/Window.xaml +++ b/src/Gemini/Themes/VS2013/Controls/Window.xaml @@ -1,8 +1,12 @@  - + + +