aboutsummaryrefslogtreecommitdiff
path: root/NucLedController/MainWindow.xaml
blob: b42921ee031e30bddb59f6bbc534e8007946dd0a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<Window x:Class="NucLedController.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:NucLedController"
        mc:Ignorable="d"
        Title="NUC LED Controller" Height="305.928" Width="382.999" SizeToContent="WidthAndHeight">
    <Grid Margin="10">
        <TabControl x:Name="tabControl" Height="223" VerticalAlignment="Top">
            <TabItem x:Name="MANUAL" Header="Manual Control">
                <TabItem.Background>
                    <LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
                        <GradientStop Color="#FFF0F0F0" Offset="0"/>
                        <GradientStop Color="#FFFFFEFE" Offset="1"/>
                    </LinearGradientBrush>
                </TabItem.Background>
                <Grid Background="White" HorizontalAlignment="Left" Width="332" Margin="0,0,-2,0">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition/>
                        <ColumnDefinition Width="2*"/>
                    </Grid.ColumnDefinitions>
                    <RadioButton x:Name="radioButtonEnableLed" Content="Enable LED" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" GroupName="LEDControl" IsChecked="True"/>
                    <ComboBox x:Name="comboBoxColour" HorizontalAlignment="Left" Margin="102,37,0,0" VerticalAlignment="Top" Width="83" IsEnabled="{Binding IsChecked, ElementName=radioButtonEnableLed}" Grid.ColumnSpan="2"/>
                    <Label x:Name="label" Content="Colour" HorizontalAlignment="Left" Margin="46,33,0,0" VerticalAlignment="Top"/>
                    <ComboBox x:Name="comboBoxTransition" HorizontalAlignment="Left" Margin="102,70,0,0" VerticalAlignment="Top" Width="123" IsEnabled="{Binding IsChecked, ElementName=radioButtonEnableLed}" Grid.ColumnSpan="2"/>
                    <Label x:Name="label1" Content="Transition" HorizontalAlignment="Left" Margin="30,66,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.165,0.065"/>
                    <RadioButton x:Name="radioButtonDisableLed" Content="Disable LED" HorizontalAlignment="Left" Margin="10,107,0,0" VerticalAlignment="Top" GroupName="LEDControl"/>
                </Grid>
            </TabItem>
            <TabItem x:Name="AUTO" Header="Auto">
                <Grid Background="White" HorizontalAlignment="Left" Width="332" Margin="0,0,-2,0">
                    <RadioButton x:Name="radioButtonCycleColour" Content="Cycle Colours" HorizontalAlignment="Left" Margin="10,54,0,0" VerticalAlignment="Top" Width="95" ToolTip="Cycle between the different LED colous, chaning every n milliseconds"/>
                    <Label x:Name="label2" Content="The following additional modes are not provided by the Intel WMI&#xA;Interface, they are generated and controlled by this program. They will&#xA;only work while this program is running, and will consume CPU time." HorizontalAlignment="Left" Margin="10,0,0,0" VerticalAlignment="Top" Width="340" Height="54" FontSize="10"/>
                    <Slider x:Name="sliderCycleRate" HorizontalAlignment="Left" Margin="113,74,0,0" VerticalAlignment="Top" Minimum="1" Maximum="5000" Width="110" LargeChange="100" Height="20" SmallChange="10" TickPlacement="BottomRight" IsSnapToTickEnabled="True" TickFrequency="10" IsEnabled="{Binding IsChecked, ElementName=radioButtonCycleColour}" Value="500" />
                    <Label x:Name="label3" Content="Cycle Rate " HorizontalAlignment="Left" Margin="40,69,0,0" VerticalAlignment="Top"/>
                    <TextBox x:Name="textBoxCycleRateVal" HorizontalAlignment="Left" Height="23" Margin="228,71,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="66" Text="{Binding ElementName=sliderCycleRate, Path=Value, UpdateSourceTrigger=PropertyChanged}" IsEnabled="{Binding IsChecked, ElementName=radioButtonCycleColour}"/>
                    <Label x:Name="label4" Content="(milliseconds)" HorizontalAlignment="Left" Margin="35,85,0,0" VerticalAlignment="Top" Width="73" FontSize="10" RenderTransformOrigin="0.511,0.319"/>
                    <RadioButton x:Name="radioButtonFadeColour" Content="Fade Colours" HorizontalAlignment="Left" Margin="10,119,0,0" VerticalAlignment="Top" Width="95" ToolTip="Fade between each colour (via fading to black). Low cycle rates will use a lot of CPU!"/>
                    <Label x:Name="label3_Copy" Content="Cycle Rate " HorizontalAlignment="Left" Margin="40,132,0,0" VerticalAlignment="Top"/>
                    <Label x:Name="label4_Copy" Content="(milliseconds)" HorizontalAlignment="Left" Margin="35,148,0,0" VerticalAlignment="Top" Width="73" FontSize="10" RenderTransformOrigin="0.511,0.319"/>
                    <Slider x:Name="sliderFadeRate" HorizontalAlignment="Left" Margin="113,138,0,0" VerticalAlignment="Top" Minimum="1" Maximum="30000" Width="110" LargeChange="500" Height="20" SmallChange="100" TickPlacement="BottomRight" IsSnapToTickEnabled="True" TickFrequency="100" IsEnabled="{Binding IsChecked, ElementName=radioButtonFadeColour}" Value="500" />
                    <TextBox x:Name="textBoxFadeRateVal" HorizontalAlignment="Left" Height="23" Margin="228,136,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="66" Text="{Binding Value, ElementName=sliderFadeRate, UpdateSourceTrigger=PropertyChanged}" IsEnabled="{Binding IsChecked, ElementName=radioButtonFadeColour}" RenderTransformOrigin="0.52,1.217"/>
                </Grid>
            </TabItem>
        </TabControl>
        <Button x:Name="button" Content="Apply" HorizontalAlignment="Left" Margin="0,234,0,0" VerticalAlignment="Top" Width="75" Click="applyChanges"/>
        <Label x:Name="lableStatusText" Content="" Margin="92,229,0,0" VerticalAlignment="Top" Foreground="#FF807F7F"/>
    </Grid>
</Window>