source: trunk/CrypPlugins/KeySearcher/Presentation/Controls/StatisticsPresentation.xaml

Last change on this file was 3481, checked in by Sven Rech, 10 years ago

renamed JokersGrid to a more appropriate name

File size: 30.7 KB
Line 
1<UserControl x:Class="KeySearcherPresentation.Controls.StatisticsPresentation"
2             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
5             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
6             xmlns:g="clr-namespace:KeySearcher.P2P.Helper"
7             xmlns:Controls="clr-namespace:KeySearcherPresentation.Controls" xmlns:System="clr-namespace:System;assembly=mscorlib" xmlns:Converter="clr-namespace:KeySearcherConverter" xmlns:Controls1="clr-namespace:KeySearcher.Presentation.Controls" mc:Ignorable="d"
8             d:DesignHeight="300" d:DesignWidth="300">
9    <UserControl.Resources>
10
11        <Style x:Key="{x:Type ProgressBar}"
12     TargetType="{x:Type ProgressBar}">
13            <Setter Property="Template">
14                <Setter.Value>
15                    <ControlTemplate TargetType="{x:Type ProgressBar}">
16                        <Grid MinHeight="14" MinWidth="200">
17                            <Border
18            Name="PART_Track"
19            CornerRadius="2"
20            Background="#BBB"
21            BorderBrush="#CCC"
22            BorderThickness="1" />
23                            <Border
24            Name="PART_Indicator"
25            CornerRadius="2"
26            Background="{TemplateBinding Foreground}"
27            BorderBrush="#CCC"
28            BorderThickness="1"
29            HorizontalAlignment="Left" />
30                        </Grid>
31                    </ControlTemplate>
32                </Setter.Value>
33            </Setter>
34        </Style>
35        <Controls:InformationToProgressConverter x:Key="InformationToProgressConverter"/>
36        <Controls:InformationToProgressConverter2 x:Key="InformationToProgressConverter2"/>
37        <Controls:CurrTrueVisibleConverter1 x:Key="CurrTrueVisibleConverter1"/>
38        <Controls:DateTrueVisibleConverter1 x:Key="DateTrueVisibleConverter1"/>
39        <Controls:CurrTrueVisibleConverter2 x:Key="CurrTrueVisibleConverter2"/>
40        <Controls:DateTrueVisibleConverter2 x:Key="DateTrueVisibleConverter2"/>
41        <Controls:DateToColorConverter1 x:Key="DateToColorConverter1"/>
42        <Controls:DateToColorConverter2 x:Key="DateToColorConverter2"/>
43        <Controls:MaxDateConverter x:Key="MaxDateConverter"/>
44        <Controls:TimeConverter x:Key="TimeConverter"/>
45        <Controls:MachineSumToProgressConverter x:Key="MachineSumToProgressConverter"/>
46        <Controls:ChunkSumConverter x:Key="ChunkSumConverter"/>
47        <Controls:StringLengthConverter x:Key="StringLengthConverter"/>
48        <Controls:HideDeadMachineConverter x:Key="HideDeadMachineConverter"/>
49        <Controls:HideDeadUserConverter x:Key="HideDeadUserConverter"/>
50        <Controls:ColorToDateConverter x:Key="ColorToDateConverter"/>       
51        <RotateTransform x:Key="HeaderRotate" Angle="270" />
52        <g:WidthConverter x:Key="WidthConverter"></g:WidthConverter>
53        <g:WidthConverter2 x:Key="WidthConverter2"></g:WidthConverter2>
54        <AlternationConverter x:Key="TeamsBackgroundConverter">
55            <SolidColorBrush>LimeGreen</SolidColorBrush>
56            <SolidColorBrush>Red</SolidColorBrush>
57            <SolidColorBrush>Blue</SolidColorBrush>
58        </AlternationConverter>
59
60        <Style x:Key="ItemStyle" TargetType="TreeViewItem">
61            <Setter x:Name="P" Property="IsExpanded" Value="True" />
62            <Setter Property="Visibility" Value="{Binding Path=Key, Converter={StaticResource HideDeadUserConverter}}"/>
63        </Style>
64
65        <Style x:Key="ItemStyle2" TargetType="TreeViewItem">
66            <Setter x:Name="P" Property="IsExpanded" Value="False" />
67            <Setter Property="Visibility" Value="{Binding Path=Key, Converter={StaticResource HideDeadUserConverter}}"/>
68        </Style>
69
70       <!-- <Storyboard x:Key="BestGlow" RepeatBehavior="Forever">
71            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(TextElement.Foreground).(SolidColorBrush.Color)" Storyboard.TargetName="BestUser">
72                <EasingColorKeyFrame KeyTime="0:0:1" Value="DarkGoldenrod"/>
73                <EasingColorKeyFrame KeyTime="0:0:2" Value="Black"/>
74            </ColorAnimationUsingKeyFrames>
75            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(TextElement.Foreground).(SolidColorBrush.Color)" Storyboard.TargetName="BestMachine">
76                <EasingColorKeyFrame KeyTime="0:0:1" Value="DarkGoldenrod"/>
77                <EasingColorKeyFrame KeyTime="0:0:2" Value="Black"/>
78            </ColorAnimationUsingKeyFrames>
79        </Storyboard>  -->
80
81    </UserControl.Resources>
82    <!-- <UserControl.Triggers>
83        <EventTrigger RoutedEvent="Loaded">
84            <BeginStoryboard Storyboard="{StaticResource BestGlow}" />
85        </EventTrigger>
86    </UserControl.Triggers> -->
87    <Grid>
88        <Grid.RowDefinitions>
89            <RowDefinition Height="Auto" />
90            <RowDefinition Height="*" />
91        </Grid.RowDefinitions>
92
93        <Label Height="30"  Background="Beige" BorderBrush="Black" BorderThickness="0,0,0,2" Grid.Row="0" FontWeight="Bold" VerticalAlignment="Top" HorizontalContentAlignment="Center" ClipToBounds="True">
94            <Label.Content>
95                <Canvas Width="95">
96                    <TextBlock FontSize="14" Text="{Loc S_t_a_t_i_s_t_i_c_s}"
97                    Canvas.Top="3" Canvas.Left="1" 
98                    Foreground="Gray" TextAlignment="Center"/>
99                <TextBlock FontSize="14"
100                    Canvas.Top="2" Canvas.Left="2" Text="{Loc S_t_a_t_i_s_t_i_c_s}">
101                    <TextBlock.Foreground>
102                    <LinearGradientBrush StartPoint="0,0" EndPoint="0,1" >
103                    <GradientStop Color="Black" Offset="0.15"/>
104                    <GradientStop Color="Blue" Offset="1"/>
105                    </LinearGradientBrush>
106                    </TextBlock.Foreground></TextBlock>
107              <!-- 
108                <TextBlock FontSize="18"
109                    Canvas.Top="2" Canvas.Left="2" Foreground="Gray">Keysearcher Statistics</TextBlock>
110                <TextBlock FontSize="18" Canvas.Top="0" Canvas.Left="0" >
111                    <TextBlock.Foreground>
112                    <LinearGradientBrush StartPoint="0,0" EndPoint="0,1" >
113                    <GradientStop Color="DarkBlue" Offset="0.15"/>
114                    <GradientStop Color="Blue" Offset="0.85"/>
115                    <GradientStop Color="#FFFFD190" Offset="1"/>
116                </LinearGradientBrush>
117                    </TextBlock.Foreground>
118                        Keysearcher Statistics</TextBlock>
119                -->
120            </Canvas>
121            </Label.Content>
122        </Label>
123        <Button Name="myProgButton" Content="X" Click="SwitchView" Width="25" Height="17" VerticalAlignment="Top" HorizontalAlignment="Right" FontWeight="bold" FontSize="9" Foreground="White" BorderBrush="DarkBlue">
124            <Button.Background>
125                <LinearGradientBrush StartPoint="0,0" EndPoint="0,1" >
126                    <GradientStop Color="#FFFFD190" Offset="0.2"/>
127                    <GradientStop Color="Crimson" Offset="0.85"/>
128                    <GradientStop Color="#FFFFD190" Offset="1"/>
129                </LinearGradientBrush>
130            </Button.Background>
131        </Button>
132
133        <TabControl Grid.Row="2" >
134            <TabControl.Resources>
135                <Style TargetType="{x:Type TabItem}">
136                    <Style.Triggers>
137                        <Trigger Property="IsSelected" Value="True">
138                            <Setter Property="Background">
139                                <Setter.Value>
140                                    <LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
141                                        <GradientStop Color="#FFF3F3F3" Offset="0"/>
142                                        <GradientStop Color="#FF00BDFF" Offset="1"/>
143                                    </LinearGradientBrush>
144                                </Setter.Value>
145                            </Setter>
146                        </Trigger>
147                    </Style.Triggers>
148                </Style>
149            </TabControl.Resources>
150
151            <TabItem Header="{Loc _Information_}">
152                <Grid>
153                <Controls:GuttenbergGrid>
154                   
155                        <StackPanel MinWidth="407" ScrollViewer.HorizontalScrollBarVisibility="Auto">
156                            <Border BorderBrush="Silver" BorderThickness="2,2,2,2">
157                                <Grid Height="225" Background="#AFE2E2FF">
158                                    <Grid.RowDefinitions>
159                                        <RowDefinition Height="25" />
160                                        <RowDefinition Height="25" />
161                                        <RowDefinition Height="25" />
162                                        <RowDefinition Height="25" />
163                                        <RowDefinition Height="25" />
164                                        <RowDefinition Height="25" />
165                                        <RowDefinition Height="25" />
166                                        <RowDefinition Height="25" />
167                                        <RowDefinition Height="25" />
168                                    </Grid.RowDefinitions>
169                                    <Grid.ColumnDefinitions>
170                                        <ColumnDefinition Width="26" />
171                                        <ColumnDefinition Width="*" />
172                                    </Grid.ColumnDefinitions>
173                                    <Border BorderThickness="1" BorderBrush="Black" LayoutTransform="{StaticResource HeaderRotate}" Grid.Column="0" Grid.RowSpan="9" Background="#FF5C5CFF">
174                                        <Label Content="{Loc Aggregate_Statistics_}" FontSize="11" HorizontalAlignment="Center" Foreground="White" />
175                                    </Border>
176                                    <Label Content="{Loc Total__Blocks__to__Search_}" VerticalAlignment="Center" Grid.Row="0" Grid.Column="1" />
177                                    <Label Content="-" Name="TotalAmountOfBlocks" VerticalAlignment="Center" Grid.Row="0" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
178                                    <Label Content="{Loc Total__Blocks__Tested_}" VerticalAlignment="Center" Grid.Row="1" Grid.Column="1" />
179                                    <Label Content="-" Name="TotalBlocksTested" VerticalAlignment="Center" Grid.Row="1" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
180                                    <Label Content="{Loc Total__Keys__to_Search_}" VerticalAlignment="Center" Grid.Row="2" Grid.Column="1" />
181                                    <Label Content="-" Name="TotalAmountOfKeys" VerticalAlignment="Center" Grid.Row="2" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
182                                    <Label Content="{Loc Total__Keys__Tested_}" VerticalAlignment="Center" Grid.Row="3" Grid.Column="1" />
183                                    <Label Content="-" Name="TotalKeysTested" VerticalAlignment="Center" Grid.Row="3" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
184                                    <Label Content="{Loc Total__Users_}" VerticalAlignment="Center" Grid.Row="4" Grid.Column="1" />
185                                    <Label Content="-" Name="UserCount" VerticalAlignment="Center"  Grid.Row="4" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5"/>
186                                    <Label Content="{Loc Total__Machines_}" VerticalAlignment="Center" Grid.Row="5" Grid.Column="1" />
187                                    <Label Content="-" Name="MachineCount" VerticalAlignment="Center"  Grid.Row="5" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5"/>
188                                    <Label Content="{Loc Working__Days_}" VerticalAlignment="Center" Grid.Row="6" Grid.Column="1" />
189                                    <Label Content="-" Name="WorkingDays" VerticalAlignment="Center" Grid.Row="6" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
190                                    <Label Content="{Loc Percent__Complete_}" VerticalAlignment="Center" Grid.Row="7" Grid.Column="1" />
191                                    <Label Content="-" Name="PercentsComplete" VerticalAlignment="Center" Grid.Row="7" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
192                                    <Label Content="{Loc Average__rate_}" VerticalAlignment="Center" Grid.Row="8" Grid.Column="1" />
193                                    <Label Content="-" Name="Rate" VerticalAlignment="Center"  Grid.Row="8" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5"/>
194
195                                </Grid>
196                            </Border>
197
198                            <Border BorderBrush="Silver" BorderThickness="2,0,2,2">
199                                <Grid Height="100" Background="#AFAAE1E8">
200                                    <Grid.RowDefinitions>
201                                        <RowDefinition Height="25" />
202                                        <RowDefinition Height="25" />
203                                        <RowDefinition Height="25" />
204                                        <RowDefinition Height="25" />
205                                    </Grid.RowDefinitions>
206                                    <Grid.ColumnDefinitions>
207                                        <ColumnDefinition Width="26" />
208                                        <ColumnDefinition Width="*" />
209                                    </Grid.ColumnDefinitions>
210                                    <Border BorderThickness="1" BorderBrush="Black" LayoutTransform="{StaticResource HeaderRotate}" Grid.Column="0" Grid.RowSpan="6" Background="#FF099BA7">
211                                        <Label Content="{Loc Current_Stats_}" FontSize="11" HorizontalAlignment="Center" Foreground="White" />
212                                    </Border>
213                                    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Grid.Row="0" Grid.Column="1">
214                                        <Label Content="{Loc Last__Update__Time }" VerticalAlignment="Center" Name="LastUpdateTimeText" ToolTip="{Loc _Next_Update_Time___}" />
215                                        <Label Content="-" Name="LastUpdateTime"  VerticalAlignment="Center" HorizontalContentAlignment="Center" ToolTip="{Loc _Next_Update_Time___}" />
216                                    </StackPanel>
217                                    <Label Content="{Loc Current__Users_}" VerticalAlignment="Center" Grid.Row="1" Grid.Column="1" />
218                                    <Label Content="-" Name="CurrentUserCount" VerticalAlignment="Center"  Grid.Row="1" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5"/>
219                                    <Label Content="{Loc Current__Machines_}" VerticalAlignment="Center" Grid.Row="2" Grid.Column="1" />
220                                    <Label Content="-" Name="CurrentMachineCount" VerticalAlignment="Center"  Grid.Row="2" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5"/>
221                                    <Label Content="{Loc Current__rate_}"  VerticalAlignment="Center" HorizontalContentAlignment="Left"  Grid.Row="3" Grid.Column="1" />
222                                    <Label Content="-" Name="CurrentRate" VerticalAlignment="Center" Grid.Row="3" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
223                                </Grid>
224                            </Border>
225                            <Border BorderBrush="Silver" BorderThickness="2,0,2,2">
226                                <Grid Height="50" Background="#FFE8DAAA">
227                                    <Grid.RowDefinitions>
228                                        <RowDefinition Height="25" />
229                                        <RowDefinition Height="25" />     
230                                    </Grid.RowDefinitions>
231                                    <Grid.ColumnDefinitions>
232                                        <ColumnDefinition Width="26" />
233                                        <ColumnDefinition Width="*" />
234                                    </Grid.ColumnDefinitions>
235                                    <Border BorderThickness="1" BorderBrush="Black" LayoutTransform="{StaticResource HeaderRotate}" Grid.Column="0" Grid.RowSpan="6" Background="Red">
236                                        <Label Content="Top" FontSize="11" HorizontalAlignment="Center" Foreground="White" />
237                                    </Border>
238                                    <Label Content="{Loc Top__user_}"  VerticalAlignment="Center" HorizontalContentAlignment="Left"  Grid.Row="0" Grid.Column="1" />
239                                    <Label Content="" Name="BestUser" VerticalAlignment="Center" Grid.Row="0" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
240                                    <Label Content="{Loc Top__machine_}"  VerticalAlignment="Center" HorizontalContentAlignment="Left"  Grid.Row="1" Grid.Column="1" />
241                                    <Label Content="" Name="BestMachine" VerticalAlignment="Center" Grid.Row="1" Grid.Column="1" HorizontalContentAlignment="Right" Padding="5,5,20,5" />
242                                </Grid>
243                            </Border>
244                       </StackPanel>
245                   
246                </Controls:GuttenbergGrid>
247                </Grid>
248
249            </TabItem>
250            <TabItem Header="{Loc _Users_}">
251                <Grid>
252                    <Grid.ColumnDefinitions>
253                        <ColumnDefinition Width="120"/>
254                        <ColumnDefinition/>
255                    </Grid.ColumnDefinitions>
256                    <Grid.RowDefinitions>
257                        <RowDefinition Height="Auto"/>
258                        <RowDefinition ScrollViewer.VerticalScrollBarVisibility="Auto"/>
259                    </Grid.RowDefinitions>
260                    <StackPanel Orientation="Horizontal">
261                        <TextBlock Text="User/Host " Grid.Column="0" Grid.Row="0" HorizontalAlignment="Center" VerticalAlignment="Center"/>
262                    </StackPanel>
263                    <TextBlock Text="Calculated Chunks" Grid.Column="1" Grid.Row="0" HorizontalAlignment="Left" VerticalAlignment="Center"/>
264                    <CheckBox Height="15" Content="{Loc HideDeadUser_}" Name="HideDead" VerticalAlignment="Center" Grid.Column="1" Grid.Row="0" FlowDirection="RightToLeft" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"  Checked="Checked" Unchecked="Checked" HorizontalAlignment="Center"/>
265                    <Button Content="Expand" Grid.Column="1" Grid.Row="0" Click="Button_Click" Width="50" HorizontalAlignment="Right"></Button>
266                    <TreeView HorizontalAlignment="Stretch" VirtualizingStackPanel.IsVirtualizing="False" Name="statisticsTree" VerticalAlignment="Stretch" ItemsSource="{Binding}" AlternationCount="3" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" >                   
267                        <TreeView.ItemTemplate>
268                            <HierarchicalDataTemplate ItemsSource="{Binding Path=Value}">
269                                <HierarchicalDataTemplate.ItemTemplate>
270                                    <DataTemplate>
271                                        <StackPanel Orientation="Horizontal" Margin="1" ToolTip="{Binding Path=Value.Date, Converter={StaticResource ResourceKey=TimeConverter}}">                                           
272                                            <Grid Width="70">
273                                                <TextBlock Text="{Binding Path=Value.Hostname, Converter={StaticResource ResourceKey=StringLengthConverter}}" HorizontalAlignment="Center" ToolTip="{Binding Path=Value.Hostname}"/>
274                                            </Grid>
275                                            <Grid>
276                                                <ProgressBar Width="{Binding ElementName=statisticsTree, Path=ActualWidth, Converter={StaticResource ResourceKey=WidthConverter}}" Value="{Binding Path=Value.Count, Mode=OneTime, Converter={StaticResource ResourceKey=InformationToProgressConverter2}}" Maximum="1">
277                                                    <ProgressBar.Foreground>
278                                                        <MultiBinding Converter="{StaticResource ResourceKey=ColorToDateConverter}">
279                                                            <Binding Path="Value.Date" Mode="OneTime"></Binding>
280                                                            <Binding RelativeSource="{RelativeSource FindAncestor, AncestorLevel=2, AncestorType={x:Type TreeViewItem}}" Path="(ItemsControl.AlternationIndex)"></Binding>
281                                                        </MultiBinding> 
282                                                    </ProgressBar.Foreground>
283                                                </ProgressBar>
284                                                <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
285                                                    <TextBlock Text="{Binding Path=Value.Count, StringFormat=\{0\,-5\}}"/>
286                                                </StackPanel>
287                                            </Grid>
288                                            <Grid Width="17">                                               
289                                                <Ellipse Name="MyEllipse2" Height="13" Width="13" HorizontalAlignment="Right" StrokeThickness="1" Stroke="Black" Fill="{Binding Path=Value.Date, Mode=OneTime, Converter={StaticResource ResourceKey=DateToColorConverter2}}" ToolTip="{Binding Path=Value.Date, Converter={StaticResource ResourceKey=TimeConverter}}" />
290                                               
291                                                <Line X1="6" Y1="7" X2="10" Y2="13" Stroke="Black" StrokeThickness="2" Visibility="{Binding Path=Value.Current, Converter={StaticResource ResourceKey=CurrTrueVisibleConverter2}}"/>
292                                                <Line X1="10" Y1="13" X2="14" Y2="4" Stroke="Black" StrokeThickness="2" Visibility="{Binding Path=Value.Current, Converter={StaticResource ResourceKey=CurrTrueVisibleConverter2}}"/>
293
294                                                <Line X1="7" Y1="4" X2="14" Y2="12" Stroke="White" StrokeThickness="2" Visibility="{Binding Path=Value.Dead, Converter={StaticResource ResourceKey=DateTrueVisibleConverter2}}"/>
295                                                <Line X1="7" Y1="12" X2="14" Y2="4" Stroke="White" StrokeThickness="2" Visibility="{Binding Path=Value.Dead, Converter={StaticResource ResourceKey=DateTrueVisibleConverter2}}"/>
296                                            </Grid>
297                                        </StackPanel>
298                                    </DataTemplate>
299                                </HierarchicalDataTemplate.ItemTemplate>
300
301
302                                <StackPanel Orientation="Horizontal" Margin="1">
303                                    <Grid Width="70">
304                                        <TextBlock Text="{Binding Path=Key, Converter={StaticResource ResourceKey=StringLengthConverter}}" HorizontalAlignment="Center" ToolTip="{Binding Path=Key}"/>
305                                    </Grid>
306                                    <Grid>
307                                    <ProgressBar x:Name="Bar" Foreground="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TreeViewItem}},Path=(ItemsControl.AlternationIndex),Converter={StaticResource ResourceKey=TeamsBackgroundConverter}}" Value="{Binding Path=Value, Mode=OneTime, Converter={StaticResource ResourceKey=InformationToProgressConverter}}" Width="{Binding ElementName=statisticsTree, Path=ActualWidth, Converter={StaticResource ResourceKey=WidthConverter2}}" Maximum="1" ToolTip="{Binding Path=Key, Converter={StaticResource ResourceKey=MaxDateConverter}}" />
308                                        <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
309                                            <TextBlock Text="{Binding Path=Key, Converter={StaticResource ResourceKey=ChunkSumConverter}, StringFormat=\{0\,-5\}}"/>
310                                        </StackPanel>
311                                    </Grid>
312                                    <Grid Width="17">
313                                        <Ellipse Name="MyEllipse1" Height="13" Width="13" HorizontalAlignment="Right" StrokeThickness="1" Stroke="Black" Fill="{Binding Path=Key, Mode=OneTime, Converter={StaticResource ResourceKey=DateToColorConverter1}}" ToolTip="{Binding Path=Key, Converter={StaticResource ResourceKey=MaxDateConverter}}" />
314                                        <Line X1="6" Y1="7" X2="10" Y2="13" Stroke="Black" StrokeThickness="2" Visibility="{Binding Path=Key, Converter={StaticResource ResourceKey=CurrTrueVisibleConverter1}}"/>
315                                        <Line X1="10" Y1="13" X2="14" Y2="4" Stroke="Black" StrokeThickness="2" Visibility="{Binding Path=Key, Converter={StaticResource ResourceKey=CurrTrueVisibleConverter1}}"/>
316
317                                        <Line X1="7" Y1="4" X2="14" Y2="12" Stroke="White" StrokeThickness="2" Visibility="{Binding Path=Key, Converter={StaticResource ResourceKey=DateTrueVisibleConverter1}}"/>
318                                        <Line X1="7" Y1="12" X2="14" Y2="4" Stroke="White" StrokeThickness="2" Visibility="{Binding Path=Key, Converter={StaticResource ResourceKey=DateTrueVisibleConverter1}}"/>
319                                    </Grid>
320                                </StackPanel>
321                            </HierarchicalDataTemplate>
322                        </TreeView.ItemTemplate>
323                    </TreeView>
324                </Grid>
325                </TabItem>
326       
327            <TabItem Header="{Loc _Machines_}">
328                        <Grid>
329                    <Grid.ColumnDefinitions>
330                        <ColumnDefinition Width="120"/>
331                        <ColumnDefinition/>
332                    </Grid.ColumnDefinitions>
333                    <Grid.RowDefinitions>
334                        <RowDefinition Height="Auto"/>
335                        <RowDefinition ScrollViewer.VerticalScrollBarVisibility="Auto"/>
336                    </Grid.RowDefinitions>
337                    <TextBlock Text="Hostname " Grid.Column="0" Grid.Row="0" HorizontalAlignment="Center"/>
338                    <TextBlock Text="Calculated Chunks" Grid.Column="1" Grid.Row="0" HorizontalAlignment="Left"/>
339                    <CheckBox Height="15" Content="{Loc HideDeadMachines_}" Name="HideDead2" VerticalAlignment="Center" Grid.Column="1" Grid.Row="0" FlowDirection="RightToLeft" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"  Checked="Checked2" Unchecked="Checked2" HorizontalAlignment="Center"/>
340                    <TreeView HorizontalAlignment="Stretch" Name="machineTree" VirtualizingStackPanel.IsVirtualizing="False" VerticalAlignment="Stretch" ItemsSource="{Binding}" AlternationCount="3" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2">
341                        <TreeView.ItemContainerStyle>
342                            <Style TargetType="{x:Type TreeViewItem}">
343                                <Setter Property="Visibility" Value="{Binding Path=Value.Dead, Converter={StaticResource HideDeadMachineConverter}}"/>
344                            </Style>
345                        </TreeView.ItemContainerStyle>
346                        <TreeView.ItemTemplate>
347                            <HierarchicalDataTemplate ItemsSource="{Binding Path=Value}">
348                                <StackPanel Orientation="Horizontal" Margin="1" ToolTip="{Binding Path=Value.Users}">
349                                    <Grid Width="70">
350                                        <TextBlock Text="{Binding Path=Value.Hostname, Converter={StaticResource ResourceKey=StringLengthConverter}}" HorizontalAlignment="Center" ToolTip="{Binding Path=Value.Hostname}"/>
351                                    </Grid>
352                                    <Grid>
353                                        <ProgressBar Value="{Binding Path=Value.Sum, Mode=OneTime, Converter={StaticResource ResourceKey=MachineSumToProgressConverter}}" Width="{Binding ElementName=machineTree, Path=ActualWidth, Converter={StaticResource ResourceKey=WidthConverter2}}" Maximum="1" />
354                                        <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
355                                            <TextBlock Text="{Binding Path=Value.Sum,StringFormat=\{0\,-5\}}"/>
356                                        </StackPanel>
357                                    </Grid>
358                                    <Grid Width="17">
359                                        <Ellipse Name="MyEllipse3" Height="13" Width="13" HorizontalAlignment="Right" StrokeThickness="1" Stroke="Black" Fill="{Binding Path=Value.Date, Mode=OneTime, Converter={StaticResource ResourceKey=DateToColorConverter2}}" ToolTip="{Binding Path=Value.Date, Converter={StaticResource ResourceKey=TimeConverter}}" />
360
361                                        <Line X1="6" Y1="7" X2="10" Y2="13" Stroke="Black" StrokeThickness="2" Visibility="{Binding Path=Value.Current, Converter={StaticResource ResourceKey=CurrTrueVisibleConverter2}}"/>
362                                        <Line X1="10" Y1="13" X2="14" Y2="4" Stroke="Black" StrokeThickness="2" Visibility="{Binding Path=Value.Current, Converter={StaticResource ResourceKey=CurrTrueVisibleConverter2}}"/>
363
364                                        <Line X1="7" Y1="4" X2="14" Y2="12" Stroke="White" StrokeThickness="2" Visibility="{Binding Path=Value.Dead, Converter={StaticResource ResourceKey=DateTrueVisibleConverter2}}"/>
365                                        <Line X1="7" Y1="12" X2="14" Y2="4" Stroke="White" StrokeThickness="2" Visibility="{Binding Path=Value.Dead, Converter={StaticResource ResourceKey=DateTrueVisibleConverter2}}"/>
366                                    </Grid>
367                                </StackPanel>
368                            </HierarchicalDataTemplate>
369                        </TreeView.ItemTemplate>
370                    </TreeView>
371                </Grid>
372                </TabItem>
373                <TabItem Header="{Loc KeyPoolTree_}">
374                    <Controls1:KeyPoolTreePresentation x:Name="KeyPoolTreePresentation"/>
375                </TabItem>
376        </TabControl>
377    </Grid>
378</UserControl>
Note: See TracBrowser for help on using the repository browser.