Browse Source

UI updates

Ruben 5 years ago
parent
commit
7adb554d1a

+ 17 - 0
PicView/Configs/Styles/Label.xaml

@@ -7,5 +7,22 @@
         <Setter Property="FontWeight" Value="Bold" />
         <Setter Property="FontSize" Value="14" />
     </Style>
+
+    <Style x:Key="LabelShadow" TargetType="Label">
+        <Setter Property="Foreground" Value="{StaticResource MainColorBrush}" />
+        <Setter Property="FontFamily" Value="/PicView;component/Resources/fonts/#Aller" />
+        <Setter Property="FontWeight" Value="Bold" />
+        <Setter Property="FontSize" Value="14" />
+        <Setter Property="Effect">
+            <Setter.Value>
+                <DropShadowEffect
+                    BlurRadius="5"
+                    Direction="291"
+                    ShadowDepth="4"
+                    Color="#55000000" />
+            </Setter.Value>
+        </Setter>
+    </Style>
+
     <!--</SnippetLabel>-->
 </ResourceDictionary>

+ 7 - 3
PicView/PicVIew.csproj

@@ -174,11 +174,14 @@
       <SubType>Designer</SubType>
     </Page>
   </ItemGroup>
+  <ItemGroup>
+    <Content Include="Misc\PsEffects\**">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </Content>
+  </ItemGroup>
   <PropertyGroup>
-    <PostBuildEvent>
-    </PostBuildEvent>
     <FileVersion>0.9.8.5</FileVersion>
-    <SignAssembly>false</SignAssembly>
+    <SignAssembly>true</SignAssembly>
     <PackageLicenseFile></PackageLicenseFile>
     <Copyright>Ruben Hyldgaard Negendahl</Copyright>
     <PackageProjectUrl>https://github.com/Ruben2776/PicView</PackageProjectUrl>
@@ -201,4 +204,5 @@
   <Target Name="AfterBuild">
   </Target>
   -->
+
 </Project>

+ 7 - 6
PicView/UserControls/Menus/QuickSettingsMenu.xaml

@@ -18,9 +18,9 @@
                     ShadowDepth="5"
                     Color="{StaticResource AltInterfaceW}" />
             </Border.Effect>
-            
+
             <Grid>
-                
+
                 <Canvas Height="51" VerticalAlignment="Top">
                     <Canvas.Effect>
                         <DropShadowEffect
@@ -29,7 +29,7 @@
                             ShadowDepth="1"
                             Color="Black" />
                     </Canvas.Effect>
-                    
+
                     <Rectangle
                         Canvas.Top="50"
                         Width="428"
@@ -178,11 +178,12 @@
                 </Canvas>
 
                 <StackPanel Margin="0,51,0,0">
+
                     <Label
-                        Margin="0,5,0,2"
+                        Margin="0,5,0,3"
                         HorizontalAlignment="Center"
-                        Content="Set as wallpaper"
-                        Foreground="{StaticResource MainColorBrush}" />
+                        Content="Set as wallpaper" />
+
                     <Canvas Width="400" Height="50">
 
                         <Button

+ 36 - 12
PicView/UserControls/Menus/ToolsAndEffectsMenu.xaml

@@ -143,15 +143,21 @@
                         x:Name="CropButton"
                         FontWeight="Bold"
                         ToolTip="Crop image [C] (not implemented yet)">
-                        <StackPanel Orientation="Horizontal">
-                            <Label>Crop image</Label>
+                        <Canvas>
+                            <TextBlock
+                                Canvas.Left="-59"
+                                Canvas.Top="-8"
+                                FontSize="14"
+                                Text="Crop Picture" />
                             <Path
+                                Canvas.Left="42"
+                                Canvas.Top="-8"
                                 Width="17"
                                 Height="17"
                                 Data="M488 352h-40V109.25l59.31-59.31c6.25-6.25 6.25-16.38 0-22.63L484.69 4.69c-6.25-6.25-16.38-6.25-22.63 0L402.75 64H192v96h114.75L160 306.75V24c0-13.26-10.75-24-24-24H88C74.75 0 64 10.74 64 24v40H24C10.75 64 0 74.74 0 88v48c0 13.25 10.75 24 24 24h40v264c0 13.25 10.75 24 24 24h232v-96H205.25L352 205.25V488c0 13.25 10.75 24 24 24h48c13.25 0 24-10.75 24-24v-40h40c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24z"
                                 Fill="{StaticResource MainColorBrush}"
                                 Stretch="Fill" />
-                        </StackPanel>
+                        </Canvas>
                     </Button>
                 </Border>
 
@@ -169,15 +175,21 @@
                         x:Name="ColorPickerButton"
                         FontWeight="Bold"
                         ToolTip="Pick color from image (not implemented yet)">
-                        <StackPanel Orientation="Horizontal">
-                            <Label>Color picker tool</Label>
+                        <Canvas>
+                            <TextBlock
+                                Canvas.Left="-69"
+                                Canvas.Top="-8"
+                                FontSize="14"
+                                Text="Color Picker Tool" />
                             <Path
+                                Canvas.Left="53"
+                                Canvas.Top="-10"
                                 Width="20"
                                 Height="20"
                                 Data="M50.75 333.25c-12 12-18.75 28.28-18.75 45.26V424L0 480l32 32 56-32h45.49c16.97 0 33.25-6.74 45.25-18.74l126.64-126.62-128-128L50.75 333.25zM483.88 28.12c-37.47-37.5-98.28-37.5-135.75 0l-77.09 77.09-13.1-13.1c-9.44-9.44-24.65-9.31-33.94 0l-40.97 40.97c-9.37 9.37-9.37 24.57 0 33.94l161.94 161.94c9.44 9.44 24.65 9.31 33.94 0L419.88 288c9.37-9.37 9.37-24.57 0-33.94l-13.1-13.1 77.09-77.09c37.51-37.48 37.51-98.26.01-135.75z"
                                 Fill="{StaticResource MainColorBrush}"
                                 Stretch="Fill" />
-                        </StackPanel>
+                        </Canvas>
                     </Button>
                 </Border>
 
@@ -196,15 +208,21 @@
                         x:Name="ExifButton"
                         FontWeight="Bold"
                         ToolTip="Show EXIF (not implemented yet)">
-                        <StackPanel Orientation="Horizontal">
-                            <Label>Show EXIF info</Label>
+                        <Canvas>
+                            <TextBlock
+                                Canvas.Left="-59"
+                                Canvas.Top="-8"
+                                FontSize="14"
+                                Text="Show EXIF Info" />
                             <Path
+                                Canvas.Left="43"
+                                Canvas.Top="-8"
                                 Width="20"
                                 Height="20"
                                 Data="M48 32C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48zm0 32h106c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H38c-3.3 0-6-2.7-6-6V80c0-8.8 7.2-16 16-16zm426 96H38c-3.3 0-6-2.7-6-6v-36c0-3.3 2.7-6 6-6h138l30.2-45.3c1.1-1.7 3-2.7 5-2.7H464c8.8 0 16 7.2 16 16v74c0 3.3-2.7 6-6 6zM256 424c-66.2 0-120-53.8-120-120s53.8-120 120-120 120 53.8 120 120-53.8 120-120 120zm0-208c-48.5 0-88 39.5-88 88s39.5 88 88 88 88-39.5 88-88-39.5-88-88-88zm-48 104c-8.8 0-16-7.2-16-16 0-35.3 28.7-64 64-64 8.8 0 16 7.2 16 16s-7.2 16-16 16c-17.6 0-32 14.4-32 32 0 8.8-7.2 16-16 16z"
                                 Fill="{StaticResource MainColorBrush}"
                                 Stretch="Fill" />
-                        </StackPanel>
+                        </Canvas>
                     </Button>
                 </Border>
 
@@ -222,15 +240,21 @@
                         x:Name="SearchButton"
                         FontWeight="Bold"
                         ToolTip="Search the web with this image (not implemented yet)">
-                        <StackPanel Orientation="Horizontal">
-                            <Label>Image Web search</Label>
+                        <Canvas>
+                            <TextBlock
+                                Canvas.Left="-69"
+                                Canvas.Top="-8"
+                                FontSize="14"
+                                Text="Image Web Search" />
                             <Path
+                                Canvas.Left="53"
+                                Canvas.Top="-10"
                                 Width="20"
                                 Height="20"
                                 Data="M220.6 130.3l-67.2 28.2V43.2L98.7 233.5l54.7-24.2v130.3l67.2-209.3zm-83.2-96.7l-1.3 4.7-15.2 52.9C80.6 106.7 52 145.8 52 191.5c0 52.3 34.3 95.9 83.4 105.5v53.6C57.5 340.1 0 272.4 0 191.6c0-80.5 59.8-147.2 137.4-158zm311.4 447.2c-11.2 11.2-23.1 12.3-28.6 10.5-5.4-1.8-27.1-19.9-60.4-44.4-33.3-24.6-33.6-35.7-43-56.7-9.4-20.9-30.4-42.6-57.5-52.4l-9.7-14.7c-24.7 16.9-53 26.9-81.3 28.7l2.1-6.6 15.9-49.5c46.5-11.9 80.9-54 80.9-104.2 0-54.5-38.4-102.1-96-107.1V32.3C254.4 37.4 320 106.8 320 191.6c0 33.6-11.2 64.7-29 90.4l14.6 9.6c9.8 27.1 31.5 48 52.4 57.4s32.2 9.7 56.8 43c24.6 33.2 42.7 54.9 44.5 60.3s.7 17.3-10.5 28.5zm-9.9-17.9c0-4.4-3.6-8-8-8s-8 3.6-8 8 3.6 8 8 8 8-3.6 8-8z"
                                 Fill="{StaticResource MainColorBrush}"
                                 Stretch="Fill" />
-                        </StackPanel>
+                        </Canvas>
                     </Button>
                 </Border>
 

+ 16 - 22
PicView/Windows/AllSettings.xaml

@@ -64,31 +64,23 @@
         <Rectangle
             x:Name="LeftBorderRectangle"
             Width="7"
-            DockPanel.Dock="Left">
-            <Rectangle.Fill>
-                <SolidColorBrush Color="{StaticResource BackgroundColorAltW}" />
-            </Rectangle.Fill>
-        </Rectangle>
+            Panel.ZIndex="1"
+            DockPanel.Dock="Left"
+            Fill="{StaticResource BackgroundColorBrushAltW}" />
 
         <Rectangle
             x:Name="RightBorderRectangle"
             Width="7"
-            Margin="-1,0,0,0"
-            DockPanel.Dock="Right">
-            <Rectangle.Fill>
-                <SolidColorBrush Color="{StaticResource BackgroundColorAltW}" />
-            </Rectangle.Fill>
-        </Rectangle>
+            Panel.ZIndex="1"
+            DockPanel.Dock="Right"
+            Fill="{StaticResource BackgroundColorBrushAltW}" />
 
         <Rectangle
             x:Name="BottomBorderRectangle"
             Height="7"
-            Margin="-1,0,0,0"
-            DockPanel.Dock="Bottom">
-            <Rectangle.Fill>
-                <SolidColorBrush Color="{StaticResource BackgroundColorAltW}" />
-            </Rectangle.Fill>
-        </Rectangle>
+            Panel.ZIndex="1"
+            DockPanel.Dock="Bottom"
+            Fill="{StaticResource BackgroundColorBrushAltW}" />
 
         <Border BorderBrush="{StaticResource BorderBrush}" BorderThickness="1">
             <ScrollViewer
@@ -104,7 +96,7 @@
                         HorizontalAlignment="Center"
                         VerticalAlignment="Center"
                         Content="Color Themes"
-                        Foreground="{StaticResource MainColorBrush}" />
+                        Style="{StaticResource LabelShadow}" />
 
                     <WrapPanel
                         Margin="0,3,0,8"
@@ -256,7 +248,8 @@
                         HorizontalAlignment="Center"
                         VerticalAlignment="Center"
                         Content="Set as wallpaper"
-                        Foreground="{StaticResource MainColorBrush}" />
+                        Style="{StaticResource LabelShadow}" />
+
                     <WrapPanel
                         Margin="0,3,0,8"
                         HorizontalAlignment="Center"
@@ -317,7 +310,7 @@
                     <Label
                         HorizontalAlignment="Center"
                         Content="Image Stretching"
-                        Foreground="{StaticResource MainColorBrush}" />
+                        Style="{StaticResource LabelShadow}" />
 
                     <WrapPanel
                         Margin="0,3,0,8"
@@ -372,7 +365,8 @@
                         Margin="0,3,0,0"
                         HorizontalAlignment="Center"
                         VerticalAlignment="Center"
-                        Content="Adjust timing for slideshow" />
+                        Content="Adjust timing for slideshow"
+                        Style="{StaticResource LabelShadow}" />
 
                     <StackPanel
                         Margin="0,3,0,10"
@@ -401,7 +395,7 @@
                             TextAlignment="Center"
                             ToolTip="Enter the slideshow amount in seconds." />
 
-                        <Label Content="Sec." />
+                        <Label Content="Sec." Style="{StaticResource LabelShadow}" />
 
                     </StackPanel>
 

+ 131 - 52
PicView/Windows/Effects.xaml

@@ -105,168 +105,232 @@
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Negative Colors" />
+                            Content="Negative Colors">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="NegativeBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
+
 
                         <RadioButton
                             x:Name="GrayscaleButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Black &amp; White" />
+                            Content="Black &amp; White">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="GrayscaleBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="ColorToneButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Color Tone" />
+                            Content="Color Tone">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="ColortoneBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="OldMovieButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Old Movie" />
+                            Content="Old Movie">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="OldMovieBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="BloomButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Bloom" />
+                            Content="Bloom">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="BloomBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="GloomButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Gloom" />
+                            Content="Gloom">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="GloomBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="MonochromeButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Monochrome" />
+                            Content="Monochrome">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="MonocromeBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="WavewarperButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Wave Warper" />
+                            Content="Wave Warper">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="WavewarperBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="UnderwaterButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Underwater" />
+                            Content="Underwater">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="UnderwaterBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="BandedSwirlButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Banded Swirl" />
+                            Content="Banded Swirl">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="BandedSwirlBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="RippleButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Ripple" />
+                            Content="Ripple">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="RippleBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="RippleAltButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Ripple Alt" />
+                            Content="Ripple Alt">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="RippleAltBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="BlurButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Blur" />
+                            Content="Blur" >
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="BlurBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="DirectionalBlurButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Directional Blur" />
+                            Content="Directional Blur">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="DirectionalBlurBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="TelescopicBlurButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Telescopic Blur" />
+                            Content="Telescopic Blur">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="TelescopicBlurBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="PixelateButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Pixelate" />
+                            Content="Pixelate">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="PixelateBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="EmbossedButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Embossed" />
+                            Content="Embossed">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="EmbossedBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="SmoothMagnifyButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Smooth Magnify" />
+                            Content="Smooth Magnify">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="SmoothMagnifyBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="PivotButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Pivot" />
+                            Content="Pivot">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="PivotBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="PaperfoldButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Paper fold" />
+                            Content="Paper fold">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="PaperfoldBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="PencilSketchButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Pencil Sketch" />
+                            Content="Pencil Sketch">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="PencilSketchBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
 
                         <RadioButton
@@ -274,16 +338,22 @@
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Sketch" />
+                            Content="Sketch">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="SketchBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="TonemappingButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Tone mapping" />
+                            Content="Tone mapping">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="TonemappingBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
 
                         <RadioButton
@@ -291,16 +361,22 @@
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Frosty Outline" />
+                            Content="Frosty Outline">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="FrostyOutlineBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                         <RadioButton
                             x:Name="BandsButton"
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Bands" />
+                            Content="Bands">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="BandsBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
 
                         <RadioButton
@@ -308,8 +384,11 @@
                             MinWidth="125"
                             Margin="5"
                             Padding="10"
-                            Background="{StaticResource BackgroundColorBrush}"
-                            Content="Glass Tile" />
+                            Content="Glass Tile">
+                            <RadioButton.Background>
+                                <SolidColorBrush x:Name="GlasTileBrush" Color="{StaticResource BackgroundColorAlt}" />
+                            </RadioButton.Background>
+                        </RadioButton>
 
                     </WrapPanel>
 

+ 105 - 0
PicView/Windows/Effects.xaml.cs

@@ -2,6 +2,7 @@
 using System.Windows;
 using System.Windows.Input;
 using static PicView.Fields;
+using static PicView.MouseOverAnimations;
 using PicView.HlslEffects;
 
 namespace PicView.Windows
@@ -33,80 +34,184 @@ namespace PicView.Windows
             NegativeButton.Click += Negative;
             NegativeButton.Unchecked += Remove_Effects;
 
+            NegativeButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(NegativeBrush);
+            NegativeButton.MouseEnter += (s, x) => ButtonMouseOverAnim(NegativeBrush, true);
+            NegativeButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(NegativeBrush, false);
+
             GrayscaleButton.Click += GraySceale;
             GrayscaleButton.Unchecked += Remove_Effects;
 
+            GrayscaleButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(GrayscaleBrush);
+            GrayscaleButton.MouseEnter += (s, x) => ButtonMouseOverAnim(GrayscaleBrush, true);
+            GrayscaleButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(GrayscaleBrush, false);
+
             ColorToneButton.Click += ColorToneEffect;
             ColorToneButton.Unchecked += Remove_Effects;
 
+            ColorToneButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(ColortoneBrush);
+            ColorToneButton.MouseEnter += (s, x) => ButtonMouseOverAnim(ColortoneBrush, true);
+            ColorToneButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(ColortoneBrush, false);
+
             OldMovieButton.Click += OldMovieEffect;
             OldMovieButton.Unchecked += Remove_Effects;
 
+            OldMovieButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(OldMovieBrush);
+            OldMovieButton.MouseEnter += (s, x) => ButtonMouseOverAnim(OldMovieBrush, true);
+            OldMovieButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(OldMovieBrush, false);
+
             BloomButton.Click += Bloom;
             BloomButton.Unchecked += Remove_Effects;
 
+            BloomButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(BloomBrush);
+            BloomButton.MouseEnter += (s, x) => ButtonMouseOverAnim(BloomBrush, true);
+            BloomButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(BloomBrush, false);
+
             GloomButton.Click += Gloom;
             GloomButton.Unchecked += Remove_Effects;
 
+            GloomButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(GloomBrush);
+            GloomButton.MouseEnter += (s, x) => ButtonMouseOverAnim(GloomBrush, true);
+            GloomButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(GloomBrush, false);
+
             MonochromeButton.Click += Monochrome;
             MonochromeButton.Unchecked += Remove_Effects;
 
+            MonochromeButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(MonocromeBrush);
+            MonochromeButton.MouseEnter += (s, x) => ButtonMouseOverAnim(MonocromeBrush, true);
+            MonochromeButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(MonocromeBrush, false);
+
             WavewarperButton.Click += WaveWarperEffect;
             WavewarperButton.Unchecked += Remove_Effects;
 
+            WavewarperButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(WavewarperBrush);
+            WavewarperButton.MouseEnter += (s, x) => ButtonMouseOverAnim(WavewarperBrush, true);
+            WavewarperButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(WavewarperBrush, false);
+
             UnderwaterButton.Click += UnderWaterEffect;
             UnderwaterButton.Unchecked += Remove_Effects;
 
+            UnderwaterButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(UnderwaterBrush);
+            UnderwaterButton.MouseEnter += (s, x) => ButtonMouseOverAnim(UnderwaterBrush, true);
+            UnderwaterButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(UnderwaterBrush, false);
+
             BandedSwirlButton.Click += BandedSwirlEffect;
             BandedSwirlButton.Unchecked += Remove_Effects;
 
+            BandedSwirlButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(BandedSwirlBrush);
+            BandedSwirlButton.MouseEnter += (s, x) => ButtonMouseOverAnim(BandedSwirlBrush, true);
+            BandedSwirlButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(BandedSwirlBrush, false);
+
             RippleButton.Click += RippleEffect1;
             RippleButton.Unchecked += Remove_Effects;
 
+            RippleButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(RippleBrush);
+            RippleButton.MouseEnter += (s, x) => ButtonMouseOverAnim(RippleBrush, true);
+            RippleButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(RippleBrush, false);
+
             RippleAltButton.Click += RippleEffect2;
             RippleAltButton.Unchecked += Remove_Effects;
 
+            RippleAltButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(RippleAltBrush);
+            RippleAltButton.MouseEnter += (s, x) => ButtonMouseOverAnim(RippleAltBrush, true);
+            RippleAltButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(RippleAltBrush, false);
+
             BlurButton.Click += Poison_blur;
             BlurButton.Unchecked += Remove_Effects;
 
+            BlurButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(BlurBrush);
+            BlurButton.MouseEnter += (s, x) => ButtonMouseOverAnim(BlurBrush, true);
+            BlurButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(BlurBrush, false);
+
             DirectionalBlurButton.Click += Dir_blur;
             DirectionalBlurButton.Unchecked += Remove_Effects;
 
+            DirectionalBlurButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(DirectionalBlurBrush);
+            DirectionalBlurButton.MouseEnter += (s, x) => ButtonMouseOverAnim(DirectionalBlurBrush, true);
+            DirectionalBlurButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(DirectionalBlurBrush, false);
+
             TelescopicBlurButton.Click += Teleskopisk_blur;
             TelescopicBlurButton.Unchecked += Remove_Effects;
 
+            TelescopicBlurButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(TelescopicBlurBrush);
+            TelescopicBlurButton.MouseEnter += (s, x) => ButtonMouseOverAnim(TelescopicBlurBrush, true);
+            TelescopicBlurButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(TelescopicBlurBrush, false);
+
             PixelateButton.Click += PixelateEffect;
             PixelateButton.Unchecked += Remove_Effects;
 
+            PixelateButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(PixelateBrush);
+            PixelateButton.MouseEnter += (s, x) => ButtonMouseOverAnim(PixelateBrush, true);
+            PixelateButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(PixelateBrush, false);
+
             EmbossedButton.Click += Embossed;
             EmbossedButton.Unchecked += Remove_Effects;
 
+            EmbossedButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(EmbossedBrush);
+            EmbossedButton.MouseEnter += (s, x) => ButtonMouseOverAnim(EmbossedBrush, true);
+            EmbossedButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(EmbossedBrush, false);
+
             SmoothMagnifyButton.Click += MagnifySmoothEffect;
             SmoothMagnifyButton.Unchecked += Remove_Effects;
 
+            SmoothMagnifyButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(SmoothMagnifyBrush);
+            SmoothMagnifyButton.MouseEnter += (s, x) => ButtonMouseOverAnim(SmoothMagnifyBrush, true);
+            SmoothMagnifyButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(SmoothMagnifyBrush, false);
+
             PivotButton.Click += PivotEffect;
             PivotButton.Unchecked += Remove_Effects;
 
+            PivotButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(PivotBrush);
+            PivotButton.MouseEnter += (s, x) => ButtonMouseOverAnim(PivotBrush, true);
+            PivotButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(PivotBrush, false);
+
             PaperfoldButton.Click += PaperFoldEffect;
             PaperfoldButton.Unchecked += Remove_Effects;
 
+            PaperfoldButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(PaperfoldBrush);
+            PaperfoldButton.MouseEnter += (s, x) => ButtonMouseOverAnim(PaperfoldBrush, true);
+            PaperfoldButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(PaperfoldBrush, false);
+
             PencilSketchButton.Click += SketchPencilStrokeEffect;
             PencilSketchButton.Unchecked += Remove_Effects;
 
+            PencilSketchButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(PencilSketchBrush);
+            PencilSketchButton.MouseEnter += (s, x) => ButtonMouseOverAnim(PencilSketchBrush, true);
+            PencilSketchButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(PencilSketchBrush, false);
+
             SketchButton.Click += Sketch;
             SketchButton.Unchecked += Remove_Effects;
 
+            SketchButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(SketchBrush);
+            SketchButton.MouseEnter += (s, x) => ButtonMouseOverAnim(SketchBrush, true);
+            SketchButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(SketchBrush, false);
+
             TonemappingButton.Click += ToneMapping;
             TonemappingButton.Unchecked += Remove_Effects;
 
+            TonemappingButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(TonemappingBrush);
+            TonemappingButton.MouseEnter += (s, x) => ButtonMouseOverAnim(TonemappingBrush, true);
+            TonemappingButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(TonemappingBrush, false);
+
             BandsButton.Click += bands;
             BandsButton.Unchecked += Remove_Effects;
 
+            BandsButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(BandsBrush);
+            BandsButton.MouseEnter += (s, x) => ButtonMouseOverAnim(BandsBrush, true);
+            BandsButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(BandsBrush, false);
+
             GlasTileButton.Click += GlasTileEffect;
             GlasTileButton.Unchecked += Remove_Effects;
 
+            GlasTileButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(GlasTileBrush);
+            GlasTileButton.MouseEnter += (s, x) => ButtonMouseOverAnim(GlasTileBrush, true);
+            GlasTileButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(GlasTileBrush, false);
+
             FrostyOutlineButton.Click += FrostyOutlineEffect;
             FrostyOutlineButton.Unchecked += Remove_Effects;
+
+            FrostyOutlineButton.PreviewMouseLeftButtonDown += (s, x) => PreviewMouseButtonDownAnim(FrostyOutlineBrush);
+            FrostyOutlineButton.MouseEnter += (s, x) => ButtonMouseOverAnim(FrostyOutlineBrush, true);
+            FrostyOutlineButton.MouseLeave += (s, x) => ButtonMouseLeaveAnimBgColor(FrostyOutlineBrush, false);
         }
 
         #region Keyboard Shortcuts