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

Last change on this file since 2330 was 2330, checked in by nolte, 11 years ago

Keysearcher-Statistic view update.

File size: 8.2 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" mc:Ignorable="d"
8             d:DesignHeight="300" d:DesignWidth="300">
9    <UserControl.Resources>
10        <Controls:InformationToProgressConverter x:Key="InformationToProgressConverter"/>
11        <Controls:InformationToProgressConverter2 x:Key="InformationToProgressConverter2"/>
12        <Controls:MachineSumToProgressConverter x:Key="MachineSumToProgressConverter"/>
13        <Controls:ChunkSumConverter x:Key="ChunkSumConverter"/>
14        <Controls:StringLengthConverter x:Key="StringLengthConverter"/>
15        <g:WidthConverter x:Key="WidthConverter"></g:WidthConverter>
16        <AlternationConverter x:Key="TeamsBackgroundConverter">
17            <SolidColorBrush>LimeGreen</SolidColorBrush>
18            <SolidColorBrush>Red</SolidColorBrush>
19            <SolidColorBrush>Blue</SolidColorBrush>
20        </AlternationConverter>
21    </UserControl.Resources>
22   
23    <TabControl>
24        <TabItem Header="{Loc _Users_}">
25            <Grid>
26                <Grid.ColumnDefinitions>
27                    <ColumnDefinition Width="120"/>
28                    <ColumnDefinition/>
29                </Grid.ColumnDefinitions>
30                <Grid.RowDefinitions>
31                    <RowDefinition Height="Auto"/>
32                    <RowDefinition ScrollViewer.VerticalScrollBarVisibility="Auto"/>
33                </Grid.RowDefinitions>
34                <TextBlock Text="User/Host " Grid.Column="0" Grid.Row="0" HorizontalAlignment="Center"/>
35                <TextBlock Text="Calculated Chunks" Grid.Column="1" Grid.Row="0" HorizontalAlignment="Left"/>
36                <TreeView HorizontalAlignment="Stretch" Name="statisticsTree" VerticalAlignment="Stretch" ItemsSource="{Binding}" AlternationCount="3" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" >
37                    <TreeView.ItemTemplate>
38                        <HierarchicalDataTemplate ItemsSource="{Binding Path=Value}">
39                            <HierarchicalDataTemplate.ItemTemplate>
40                                <DataTemplate>
41                                    <StackPanel Orientation="Horizontal" Margin="1" ToolTip="{Binding Path=Value.Date}">
42                                        <Grid Width="70">
43                                            <TextBlock Text="{Binding Path=Value.Hostname, Converter={StaticResource ResourceKey=StringLengthConverter}}" HorizontalAlignment="Center" ToolTip="{Binding Path=Value.Hostname}"/>
44                                        </Grid>
45                                        <Grid>
46                                            <ProgressBar Foreground="{Binding RelativeSource={RelativeSource FindAncestor,  AncestorLevel=2, AncestorType={x:Type TreeViewItem}},Path=(ItemsControl.AlternationIndex),Converter={StaticResource ResourceKey=TeamsBackgroundConverter}}" Value="{Binding Path=Value.Count, Mode=OneTime, Converter={StaticResource ResourceKey=InformationToProgressConverter2}}" Width="{Binding ElementName=statisticsTree, Path=ActualWidth, Converter={StaticResource ResourceKey=WidthConverter}}" Maximum="1" />
47                                            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
48                                                <TextBlock Text="{Binding Path=Value.Count, StringFormat=\{0\,-5\}}"/>
49                                            </StackPanel>
50                                        </Grid>
51                                    </StackPanel>
52                                </DataTemplate>
53                            </HierarchicalDataTemplate.ItemTemplate>
54
55
56                            <StackPanel Orientation="Horizontal" Margin="1">
57                                <Grid Width="70">
58                                    <TextBlock Text="{Binding Path=Key, Converter={StaticResource ResourceKey=StringLengthConverter}}" HorizontalAlignment="Center" ToolTip="{Binding Path=Key}"/>
59                                </Grid>
60                                <Grid>
61                                    <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=WidthConverter}}" Maximum="1" />
62                                    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
63                                        <TextBlock Text="{Loc Total_}"/>
64                                        <TextBlock Text="{Binding Path=Key, Converter={StaticResource ResourceKey=ChunkSumConverter}, StringFormat=\{0\,-5\}}"/>
65                                    </StackPanel>
66                                </Grid>
67                            </StackPanel>
68                        </HierarchicalDataTemplate>
69                    </TreeView.ItemTemplate>
70                </TreeView>
71            </Grid>
72           
73
74        </TabItem>
75       
76        <TabItem Header="{Loc _Machines_}">
77            <Grid>
78                <Grid.ColumnDefinitions>
79                    <ColumnDefinition Width="120"/>
80                    <ColumnDefinition/>
81                </Grid.ColumnDefinitions>
82                <Grid.RowDefinitions>
83                    <RowDefinition Height="Auto"/>
84                    <RowDefinition ScrollViewer.VerticalScrollBarVisibility="Auto"/>
85                </Grid.RowDefinitions>
86                <TextBlock Text="Hostname " Grid.Column="0" Grid.Row="0" HorizontalAlignment="Center"/>
87                <TextBlock Text="Calculated Chunks" Grid.Column="1" Grid.Row="0" HorizontalAlignment="Left"/>
88                <TreeView HorizontalAlignment="Stretch" Name="machineTree" VerticalAlignment="Stretch" ItemsSource="{Binding}" AlternationCount="3" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2">
89                    <TreeView.ItemTemplate>
90                        <HierarchicalDataTemplate ItemsSource="{Binding Path=Value}">
91                            <!--<HierarchicalDataTemplate.ItemTemplate>
92                            <DataTemplate>
93                                <TextBlock Text="{Binding Path=Users}"/>
94                            </DataTemplate>
95                        </HierarchicalDataTemplate.ItemTemplate>-->
96
97                            <StackPanel Orientation="Horizontal" Margin="1" ToolTip="{Binding Path=Value.Users}">
98                                <Grid Width="70">
99                                    <TextBlock Text="{Binding Path=Value.Hostname, Converter={StaticResource ResourceKey=StringLengthConverter}}" HorizontalAlignment="Center" ToolTip="{Binding Path=Value.Hostname}"/>
100                                </Grid>
101                                <Grid>
102                                    <ProgressBar Value="{Binding Path=Value.Sum, Mode=OneTime, Converter={StaticResource ResourceKey=MachineSumToProgressConverter}}" Width="{Binding ElementName=machineTree, Path=ActualWidth, Converter={StaticResource ResourceKey=WidthConverter}}" Maximum="1" />
103                                    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
104                                        <TextBlock Text="{Binding Path=Value.Sum,StringFormat=\{0\,-5\}}"/>
105                                    </StackPanel>
106                                </Grid>
107                            </StackPanel>
108                        </HierarchicalDataTemplate>
109                    </TreeView.ItemTemplate>
110                </TreeView>
111            </Grid>
112        </TabItem>
113    </TabControl>
114</UserControl>
Note: See TracBrowser for help on using the repository browser.