Added Tooltips

This commit is contained in:
Darth Affe 2017-09-29 11:17:47 +02:00
parent 07e4221877
commit 0ccc1f3dbb
5 changed files with 33 additions and 16 deletions

View File

@ -1,6 +1,7 @@
using System; using System;
using System.IO; using System.IO;
using System.Windows; using System.Windows;
using System.Windows.Controls;
using Hardcodet.Wpf.TaskbarNotification; using Hardcodet.Wpf.TaskbarNotification;
using KeyboardAudioVisualizer.AudioProcessing; using KeyboardAudioVisualizer.AudioProcessing;
using KeyboardAudioVisualizer.Helper; using KeyboardAudioVisualizer.Helper;
@ -32,6 +33,8 @@ namespace KeyboardAudioVisualizer
try try
{ {
ToolTipService.ShowDurationProperty.OverrideMetadata(typeof(DependencyObject), new FrameworkPropertyMetadata(int.MaxValue));
_taskbarIcon = (TaskbarIcon)FindResource("TaskbarIcon"); _taskbarIcon = (TaskbarIcon)FindResource("TaskbarIcon");
_taskbarIcon.DoubleClickCommand = ApplicationManager.Instance.OpenConfigurationCommand; _taskbarIcon.DoubleClickCommand = ApplicationManager.Instance.OpenConfigurationCommand;

View File

@ -42,45 +42,54 @@
<Label controls:Formular.IsLabel="True" Content="Spectrum:" /> <Label controls:Formular.IsLabel="True" Content="Spectrum:" />
<ComboBox controls:Formular.Fill="True" <ComboBox controls:Formular.Fill="True"
ItemsSource="{Binding Source={StaticResource SpectrumModes}}" ItemsSource="{Binding Source={StaticResource SpectrumModes}}"
SelectedItem="{Binding SpectrumMode}"/> SelectedItem="{Binding SpectrumMode}"
ToolTip="Defines how the spectrum is grouped together.&#x0a; - Linear: Each bar represents the same range of frequencies.&#x0a; - Logarithmic: The higher the frequencies get the wider the range of grouped frequencies.&#x0a; - Gamma: Uses a configurable Gamma-Value to group the frequencies." />
<Label controls:Formular.IsLabel="True" Content="Value:" /> <Label controls:Formular.IsLabel="True" Content="Value:" />
<ComboBox controls:Formular.Fill="True" <ComboBox controls:Formular.Fill="True"
ItemsSource="{Binding Source={StaticResource ValueModes}}" ItemsSource="{Binding Source={StaticResource ValueModes}}"
SelectedItem="{Binding ValueMode}"/> SelectedItem="{Binding ValueMode}"
ToolTip="Defines how the value of a bar is calculated.&#x0a; - Sum: Sums the power of all frequencies grouped in the bar using all available data.&#x0a; - Max: Uses the maximum value in each group making sure peaks are caught well.&#x0a; - Average: Uses the average of all frequencies grouped in the bar. " />
<Label controls:Formular.IsLabel="True" Content="Bars:" /> <Label controls:Formular.IsLabel="True" Content="Bars:" />
<Slider controls:Formular.Fill="True" Minimum="1" Maximum="96" IsSnapToTickEnabled="True" TickFrequency="1" TickPlacement="BottomRight" <Slider controls:Formular.Fill="True" Minimum="1" Maximum="96" IsSnapToTickEnabled="True" TickFrequency="1" TickPlacement="BottomRight"
Value="{Binding Bars}" /> Value="{Binding Bars}"
ToolTip="The number of bars used to represent the spectrum.." />
</controls:Formular> </controls:Formular>
<controls:Formular Grid.Column="2"> <controls:Formular Grid.Column="2">
<Label controls:Formular.IsLabel="True" Content="Min Freq.:" /> <Label controls:Formular.IsLabel="True" Content="Min Freq.:" />
<Slider controls:Formular.Fill="True" Minimum="0" Maximum="22100" IsSnapToTickEnabled="True" TickFrequency="10" TickPlacement="None" <Slider controls:Formular.Fill="True" Minimum="0" Maximum="22100" IsSnapToTickEnabled="True" TickFrequency="10" TickPlacement="None"
Value="{Binding MinFrequency}" /> Value="{Binding MinFrequency}"
ToolTip="The minimum frequency used in the graph." />
<Label controls:Formular.IsLabel="True" Content="Max Freq.:" /> <Label controls:Formular.IsLabel="True" Content="Max Freq.:" />
<Slider controls:Formular.Fill="True" Minimum="0" Maximum="22100" IsSnapToTickEnabled="True" TickFrequency="10" TickPlacement="None" <Slider controls:Formular.Fill="True" Minimum="0" Maximum="22100" IsSnapToTickEnabled="True" TickFrequency="10" TickPlacement="None"
Value="{Binding MaxFrequency}" /> Value="{Binding MaxFrequency}"
ToolTip="The maximum frequency used in the graph." />
<Label controls:Formular.IsLabel="True" Content="Gamma:" /> <Label controls:Formular.IsLabel="True" Content="Gamma:" />
<Slider controls:Formular.Fill="True" Minimum="1" Maximum="6" IsSnapToTickEnabled="True" TickFrequency="0.25" TickPlacement="BottomRight" <Slider controls:Formular.Fill="True" Minimum="1" Maximum="6" IsSnapToTickEnabled="True" TickFrequency="0.25" TickPlacement="BottomRight"
IsEnabled="{Binding SpectrumMode, Converter={StaticResource EqualsToBoolConverter}, ConverterParameter={x:Static visualizationProvider:SpectrumMode.Gamma}}" IsEnabled="{Binding SpectrumMode, Converter={StaticResource EqualsToBoolConverter}, ConverterParameter={x:Static visualizationProvider:SpectrumMode.Gamma}}"
Value="{Binding Gamma}" /> Value="{Binding Gamma}"
ToolTip="Only used if 'Gamma' is selected as spectrum!&#x0a;Higher values cause more compression of high frequencies." />
</controls:Formular> </controls:Formular>
<controls:Formular Grid.Column="4"> <controls:Formular Grid.Column="4">
<Label controls:Formular.IsLabel="True" controls:Formular.LineBreaks="1" Content="Reference:" /> <Label controls:Formular.IsLabel="True" controls:Formular.LineBreaks="1" Content="Reference:" />
<Slider controls:Formular.Fill="True" Minimum="1" Maximum="240" IsSnapToTickEnabled="True" TickFrequency="1" TickPlacement="None" <Slider controls:Formular.Fill="True" Minimum="1" Maximum="240" IsSnapToTickEnabled="True" TickFrequency="1" TickPlacement="None"
Value="{Binding ReferenceLevel}" /> Value="{Binding ReferenceLevel}"
ToolTip="The reference value used to calculate the power of each bar.&#x0a;(You can read this as 'scaling')" />
<Label controls:Formular.IsLabel="True" controls:Formular.LineBreaks="1" Content="Smoothing:" /> <Label controls:Formular.IsLabel="True" controls:Formular.LineBreaks="1" Content="Smoothing:" />
<Slider controls:Formular.Fill="True" Minimum="1" Maximum="10" IsSnapToTickEnabled="True" TickFrequency="0.5" TickPlacement="BottomRight" <Slider controls:Formular.Fill="True" Minimum="1" Maximum="10" IsSnapToTickEnabled="True" TickFrequency="0.5" TickPlacement="BottomRight"
Value="{Binding Smoothing}" /> Value="{Binding Smoothing}"
ToolTip="Smooths the graph to prevent flickering.&#x0a;Low values will cause a hectic fast plot, high values a slow one without peaks." />
<Label controls:Formular.IsLabel="True" controls:Formular.LineBreaks="1" Content="Emphasize:" /> <Label controls:Formular.IsLabel="True" controls:Formular.LineBreaks="1" Content="Emphasize:" />
<Slider controls:Formular.Fill="True" Minimum="0" Maximum="2" IsSnapToTickEnabled="True" TickFrequency="0.05" TickPlacement="BottomRight" <Slider controls:Formular.Fill="True" Minimum="0" Maximum="2" IsSnapToTickEnabled="True" TickFrequency="0.05" TickPlacement="BottomRight"
Value="{Binding EmphasisePeaks}" /> Value="{Binding EmphasisePeaks}"
ToolTip="Emphasizes peaks. The higher the value, the bigger the difference between a 'loud-bar' and a 'quite-bar'." />
</controls:Formular> </controls:Formular>
</Grid> </Grid>
</DataTemplate> </DataTemplate>

View File

@ -36,19 +36,22 @@
<Label controls:Formular.IsLabel="True" Content="Calculation:" /> <Label controls:Formular.IsLabel="True" Content="Calculation:" />
<ComboBox controls:Formular.Fill="True" <ComboBox controls:Formular.Fill="True"
ItemsSource="{Binding Source={StaticResource ConversionModes}}" ItemsSource="{Binding Source={StaticResource ConversionModes}}"
SelectedItem="{Binding ConversionMode}"/> SelectedItem="{Binding ConversionMode}"
ToolTip="Defines how the RMS of the audio is plotted.&#x0a;Exponential has the widest range of peaks while linear has the least." />
</controls:Formular> </controls:Formular>
<controls:Formular Grid.Column="2"> <controls:Formular Grid.Column="2">
<Label controls:Formular.IsLabel="True" Content="Scale:" /> <Label controls:Formular.IsLabel="True" Content="Scale:" />
<Slider controls:Formular.Fill="True" Minimum="1" Maximum="20" IsSnapToTickEnabled="True" TickFrequency="0.5" TickPlacement="BottomRight" <Slider controls:Formular.Fill="True" Minimum="1" Maximum="20" IsSnapToTickEnabled="True" TickFrequency="0.5" TickPlacement="BottomRight"
Value="{Binding Scale}" /> Value="{Binding Scale}"
ToolTip="Scales the whole graph." />
</controls:Formular> </controls:Formular>
<controls:Formular Grid.Column="4"> <controls:Formular Grid.Column="4">
<Label controls:Formular.IsLabel="True" controls:Formular.LineBreaks="1" Content="Smoothing:" /> <Label controls:Formular.IsLabel="True" controls:Formular.LineBreaks="1" Content="Smoothing:" />
<Slider controls:Formular.Fill="True" Minimum="1" Maximum="10" IsSnapToTickEnabled="True" TickFrequency="0.5" TickPlacement="BottomRight" <Slider controls:Formular.Fill="True" Minimum="1" Maximum="10" IsSnapToTickEnabled="True" TickFrequency="0.5" TickPlacement="BottomRight"
Value="{Binding Smoothing}" /> Value="{Binding Smoothing}"
ToolTip="Smooths the plot to prevent flickering.&#x0a;Low values will cause a hectic fast plot, high values a slow one without peaks." />
</controls:Formular> </controls:Formular>
</Grid> </Grid>
</DataTemplate> </DataTemplate>

View File

@ -8,7 +8,6 @@
xmlns:styles="clr-namespace:KeyboardAudioVisualizer.Styles" xmlns:styles="clr-namespace:KeyboardAudioVisualizer.Styles"
xmlns:core="clr-namespace:RGB.NET.Core;assembly=RGB.NET.Core" xmlns:core="clr-namespace:RGB.NET.Core;assembly=RGB.NET.Core"
xmlns:keyboardAudioVisualizer="clr-namespace:KeyboardAudioVisualizer" xmlns:keyboardAudioVisualizer="clr-namespace:KeyboardAudioVisualizer"
xmlns:audioProcessing="clr-namespace:KeyboardAudioVisualizer.AudioProcessing"
xmlns:converter="clr-namespace:KeyboardAudioVisualizer.Converter" xmlns:converter="clr-namespace:KeyboardAudioVisualizer.Converter"
xmlns:visualizationProvider="clr-namespace:KeyboardAudioVisualizer.AudioProcessing.VisualizationProvider" xmlns:visualizationProvider="clr-namespace:KeyboardAudioVisualizer.AudioProcessing.VisualizationProvider"
xmlns:helper="clr-namespace:KeyboardAudioVisualizer.Helper" xmlns:helper="clr-namespace:KeyboardAudioVisualizer.Helper"
@ -67,7 +66,8 @@
ItemTemplate="{StaticResource DataTemplateVisualizationSelection}" ItemTemplate="{StaticResource DataTemplateVisualizationSelection}"
ItemsSource="{Binding Source={StaticResource DataProviderVisualizationTypes}, ItemsSource="{Binding Source={StaticResource DataProviderVisualizationTypes},
Converter={StaticResource VisualizationProviderSelectableConverter}, ConverterParameter={x:Static core:RGBDeviceType.Keyboard}}" Converter={StaticResource VisualizationProviderSelectableConverter}, ConverterParameter={x:Static core:RGBDeviceType.Keyboard}}"
SelectedItem="{Binding SelectedPrimaryVisualization}" /> SelectedItem="{Binding SelectedPrimaryVisualization}"
ToolTip="The visualization shown on the device.&#x0a; - Frequency Bars: Shows vertical bars representing the frequencies of the song.&#x0a; - Level: Shows two horizontal bars representing the loudness of the song (left and right).&#x0a; - Beat: Shows a flash to the beat of the song (this doesn't work too well right now :()" />
</controls:Formular> </controls:Formular>
</GroupBox> </GroupBox>
@ -163,7 +163,8 @@
<Label controls:Formular.IsLabel="True" Content="Update-Rate" /> <Label controls:Formular.IsLabel="True" Content="Update-Rate" />
<Slider Minimum="1" Maximum="40" controls:Formular.Fill="True" IsSnapToTickEnabled="True" TickFrequency="1" TickPlacement="BottomRight" <Slider Minimum="1" Maximum="40" controls:Formular.Fill="True" IsSnapToTickEnabled="True" TickFrequency="1" TickPlacement="BottomRight"
Value="{Binding UpdateRate}" /> Value="{Binding UpdateRate}"
ToolTip="Defines how fast the data is updated.&#x0a;Low values can reduce CPU-usage but will cause stuttering." />
<Label controls:Formular.LineBreaks="1" controls:Formular.IsLabel="True" Content="Devices:" /> <Label controls:Formular.LineBreaks="1" controls:Formular.IsLabel="True" Content="Devices:" />
</controls:Formular> </controls:Formular>

View File

@ -80,7 +80,8 @@
Margin="0,-4,0,0" Orientation="Horizontal"> Margin="0,-4,0,0" Orientation="Horizontal">
<CheckBox VerticalAlignment="Center" Content="Enable Equalizer" <CheckBox VerticalAlignment="Center" Content="Enable Equalizer"
Foreground="{StaticResource BrushForeground}" Foreground="{StaticResource BrushForeground}"
IsChecked="{Binding Path=Equalizer.IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" /> IsChecked="{Binding Path=Equalizer.IsEnabled, RelativeSource={RelativeSource TemplatedParent}}"
ToolTip="Enables the Equalizer.&#x0a;The Equalier Allows to finetune the graph by slective increasing/decresing the value.&#x0a;You can add new pivots by rightclicking on the visualization-window.&#x0a;Existing pivots can be deleted by rightclicking on them or moved by leftclicking and dragging around." />
<Button VerticalAlignment="Center" Margin="12,0,0,0" <Button VerticalAlignment="Center" Margin="12,0,0,0"
Visibility="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Equalizer.IsEnabled, Converter={StaticResource BoolToVisibilityConverter}, ConverterParameter=True}" Visibility="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Equalizer.IsEnabled, Converter={StaticResource BoolToVisibilityConverter}, ConverterParameter=True}"