Changeset 1789


Ignore:
Timestamp:
Aug 9, 2010, 7:03:32 PM (11 years ago)
Author:
weyers
Message:

TranspositionAnalyser QuickWatchPresentation assimilated to Keysearcher, Doubleclick-feature extended

Location:
trunk/CrypPlugins/TranspositionAnalyser
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/TranspositionAnalyser/TranspositionAnalyser.cs

    r1730 r1789  
    168168        {
    169169
    170 
     170           
    171171            if (this.input != null)
    172172            {
     
    12291229            {
    12301230                DateTime currentTime = DateTime.Now;
     1231
     1232                TimeSpan elapsedtime = DateTime.Now.Subtract(startTime); ;
     1233                TimeSpan elapsedspan = new TimeSpan(elapsedtime.Days, elapsedtime.Hours, elapsedtime.Minutes, elapsedtime.Seconds, 0);
     1234                   
     1235               
     1236
    12311237                TimeSpan span = currentTime.Subtract(startTime);
    12321238                int seconds = span.Seconds;
     
    12581264                {
    12591265
    1260                     ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).keysPerSecond.Text = "" + keysPerSec;
     1266                    ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).startTime.Content = "" + startTime;
     1267                    ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).keysPerSecond.Content = "" + keysPerSec;
     1268                   
    12611269
    12621270                    if (endTime != (new DateTime(1970, 1, 1)))
    12631271                    {
    1264                         ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).timeLeft.Text = "" + endTime.Subtract(DateTime.Now);
    1265 
    1266                         ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).endTime.Text = "" + endTime;
     1272                        ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).timeLeft.Content = "" + endTime.Subtract(DateTime.Now);
     1273                        ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).elapsedTime.Content = "" + elapsedspan ;
     1274                        ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).endTime.Content = "" + endTime;
    12671275                    }
    12681276                    else
    12691277                    {
    1270                         ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).timeLeft.Text = "incalculable";
    1271 
    1272                         ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).endTime.Text = "in a galaxy far, far away...";
     1278                        ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).timeLeft.Content = "incalculable";
     1279
     1280                        ((TranspositionAnalyserQuickWatchPresentation)QuickWatchPresentation).endTime.Content = "in a galaxy far, far away...";
    12731281                    }
    12741282                    if (list1 != null)
     
    13071315            }
    13081316        }
     1317
     1318       
    13091319
    13101320        private void geneticAnalysis(IControlEncryption sender)
  • trunk/CrypPlugins/TranspositionAnalyser/TranspositionAnalyserQuickWatchPresentation.xaml

    r1284 r1789  
    11<UserControl x:Class="TranspositionAnalyser.TranspositionAnalyserQuickWatchPresentation"
    22    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    3     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    4     HorizontalAlignment="Stretch"
    5     VerticalAlignment="Stretch"
    6     Background="White">
    7    
    8     <Canvas>
    9         <Grid>
    10             <Grid.RowDefinitions>
    11                 <RowDefinition Height="80"/>
    12                 <RowDefinition Height="*"/>
    13             </Grid.RowDefinitions>
    14             <Grid.ColumnDefinitions>
    15                 <ColumnDefinition/>
    16             </Grid.ColumnDefinitions>
     3    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
     4     <UserControl.Resources>
     5    <RotateTransform x:Key="HeaderRotate" Angle="270" />
     6    <Style x:Key="ValueRow1">
     7        <Setter Property="Label.Margin" Value="80,0,0,0" />
     8    </Style>
     9    <Style x:Key="ValueRow2">
     10        <Setter Property="Label.Margin" Value="80,0,0,0" />
     11    </Style>
     12    </UserControl.Resources>
     13    <Viewbox>
     14        <StackPanel Width="646">
     15            <Border BorderBrush="Silver" BorderThickness="2,2,2,2">
     16                <Grid Height="78" Background="#AFFFD4C1">
     17                    <Grid.ColumnDefinitions>
     18                        <ColumnDefinition Width="26" />
     19                        <ColumnDefinition Width="200*" />
     20                        <ColumnDefinition Width="200*" />
     21                    </Grid.ColumnDefinitions>
     22                    <Grid.RowDefinitions>
     23                        <RowDefinition Height="26" />
     24                        <RowDefinition Height="26" />
     25                        <RowDefinition Height="26" />
     26                    </Grid.RowDefinitions>
     27                    <Border BorderThickness="1" BorderBrush="Black" LayoutTransform="{StaticResource HeaderRotate}" Background="#FFE56B00" Grid.Column="0" Grid.RowSpan="3">
     28                        <Label Content="Local" FontSize="11" HorizontalAlignment="Center" Foreground="White" />
     29                    </Border>
     30                    <Label Content="Start:" Grid.Column="1" />
     31                    <Label Name="startTime" Style="{StaticResource ValueRow1}" Grid.Column="1" />
     32                    <Label Content="End:" HorizontalAlignment="Left" Grid.Column="2" />
     33                    <Label Name="endTime" Style="{StaticResource ValueRow2}" Grid.Column="2" />
     34                    <Label Content="Elapsed:" Grid.Column="1" Grid.Row="1" />
     35                    <Label Name="elapsedTime" Style="{StaticResource ValueRow1}" Grid.Column="1" Grid.Row="1" />
     36                    <Label Content="Remaining:" Grid.Column="2" Grid.Row="1" />
     37                    <Label Name="timeLeft" Style="{StaticResource ValueRow2}" Grid.Column="2" Grid.Row="1" />
     38                    <Label Content="Keys / sec:" Grid.Column="2" Grid.Row="2" />
     39                    <Label Name="keysPerSecond" Style="{StaticResource ValueRow2}" Grid.Column="2" Grid.Row="2" />
     40                </Grid>
     41            </Border>
     42            <Border BorderBrush="Silver" BorderThickness="2,0,2,2">
     43                <Grid>
     44                    <Grid.ColumnDefinitions>
     45                        <ColumnDefinition Width="26" />
     46                        <ColumnDefinition Width="*" />
     47                    </Grid.ColumnDefinitions>
     48                    <Border BorderThickness="1" BorderBrush="Black" LayoutTransform="{StaticResource HeaderRotate}" Background="#FF479308" Grid.Column="0">
     49                        <Label Content="Top Ten" FontSize="11" HorizontalAlignment="Center" Foreground="White" Width="50" />
     50                    </Border>
     51                    <ListView Name="ListView" Background="#AFE2FFCE" ItemsSource="{Binding}" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto" FontSize="10" Grid.Column="1" Height="250">
     52                        <ListView.ItemContainerStyle>
     53                            <Style TargetType="{x:Type ListViewItem}">
     54                                <EventSetter Event= "MouseDoubleClick" Handler="HandleDoubleClick" />
     55                            </Style>
     56                        </ListView.ItemContainerStyle>
    1757
    18             <Canvas>
    19                 <Grid Background="White" Width="300" Name="Grid" Grid.Row="0" Grid.Column="0">
    20                     <Grid.RowDefinitions>
    21                         <RowDefinition/>
    22                         <RowDefinition/>
    23                         <RowDefinition/>
    24                     </Grid.RowDefinitions>
    25                     <Grid.ColumnDefinitions>
    26                         <ColumnDefinition/>
    27                         <ColumnDefinition/>
    28                     </Grid.ColumnDefinitions>
    29 
    30                     <Label Grid.Row="0" Grid.Column="0" FontSize="12" Background="White" VerticalAlignment="Top" Height="28" Width="AUTO">Probable time left :</Label>
    31                     <Label Grid.Row="0" Grid.Column="1" FontSize="12" Background="White" VerticalAlignment="Top" Height="28" Width="AUTO">Estimated end time :</Label>
    32 
    33                     <TextBox Name="timeLeft" Grid.Row="1" Grid.Column="0"
    34                      TextAlignment="Center" IsReadOnly="True" TextWrapping="WrapWithOverflow" VerticalAlignment="Top" Height="28" FontSize="10" BorderThickness="1" />
    35                     <TextBox Name="endTime" Grid.Row="1" Grid.Column="1"
    36                      TextAlignment="Center" IsReadOnly="True" TextWrapping="WrapWithOverflow" VerticalAlignment="Top" Height="28" FontSize="10" BorderThickness="1" />
    37 
    38                     <Label Grid.Row="2" Grid.Column="0" FontSize="12" Grid.ColumnSpan="1" Background="White" Width="AUTO">Keys per second :</Label>
    39 
    40                     <TextBox x:Name="keysPerSecond" Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2"
    41                      TextAlignment="Left"  IsReadOnly="True" TextWrapping="WrapWithOverflow" FontSize="10" BorderThickness="1" HorizontalContentAlignment="Center" />
     58                        <ListView.View>
     59                            <GridView>
     60                                <GridViewColumn Header="#" DisplayMemberBinding="{Binding Path=Ranking}" Width="25">
     61                                    <GridViewColumn.CellTemplate>
     62                                        <DataTemplate>
     63                                            <Label/>
     64                                        </DataTemplate>
     65                                    </GridViewColumn.CellTemplate>
     66                                </GridViewColumn>
     67                                <GridViewColumn Header="Value" DisplayMemberBinding="{Binding Path=Value}">
     68                                    <GridViewColumn.CellTemplate>
     69                                        <DataTemplate>
     70                                            <Label/>
     71                                        </DataTemplate>
     72                                    </GridViewColumn.CellTemplate>
     73                                </GridViewColumn>
     74                                <GridViewColumn Header="Key" DisplayMemberBinding="{Binding Path=Key}">
     75                                    <GridViewColumn.CellTemplate>
     76                                        <DataTemplate>
     77                                            <Label/>
     78                                        </DataTemplate>
     79                                    </GridViewColumn.CellTemplate>
     80                                </GridViewColumn>
     81                                <GridViewColumn Header="Text" DisplayMemberBinding="{Binding Path=Text}">
     82                                    <GridViewColumn.CellTemplate>
     83                                        <DataTemplate>
     84                                            <Label/>
     85                                        </DataTemplate>
     86                                    </GridViewColumn.CellTemplate>
     87                                </GridViewColumn>
     88                            </GridView>
     89                        </ListView.View>
     90                    </ListView>
    4291                </Grid>
    43             </Canvas>
    44            
    45             <ListView Name="ListView" ItemsSource="{Binding}" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto" FontSize="10" Grid.Row="1" Grid.Column="0"  >
    46                 <ListView.ItemContainerStyle>
    47                 <Style TargetType="{x:Type ListViewItem}">
    48                     <EventSetter Event="MouseDoubleClick" Handler="HandleDoubleClick" />
    49                 </Style>
    50                 </ListView.ItemContainerStyle>
    51 
    52                 <ListView.View>
    53                     <GridView>
    54                         <GridViewColumn Header="Ranking" DisplayMemberBinding="{Binding Path=Ranking}">
    55                             <GridViewColumn.CellTemplate>
    56                                 <DataTemplate>
    57                                     <Label/>
    58                                 </DataTemplate>
    59                             </GridViewColumn.CellTemplate>
    60                         </GridViewColumn>
    61                         <GridViewColumn Header="Value" DisplayMemberBinding="{Binding Path=Value}">
    62                             <GridViewColumn.CellTemplate>
    63                                 <DataTemplate>
    64                                     <Label/>
    65                                 </DataTemplate>
    66                             </GridViewColumn.CellTemplate>
    67                         </GridViewColumn>
    68                         <GridViewColumn Header="Key" DisplayMemberBinding="{Binding Path=Key}">
    69                             <GridViewColumn.CellTemplate>
    70                                 <DataTemplate>
    71                                     <Label/>
    72                                 </DataTemplate>
    73                             </GridViewColumn.CellTemplate>
    74                         </GridViewColumn>
    75                         <GridViewColumn Header="Text" DisplayMemberBinding="{Binding Path=Text}">
    76                             <GridViewColumn.CellTemplate>
    77                                 <DataTemplate>
    78                                     <Label/>
    79                                 </DataTemplate>
    80                             </GridViewColumn.CellTemplate>
    81                         </GridViewColumn>
    82                     </GridView>
    83                 </ListView.View>
    84             </ListView>
    85         </Grid>
    86     </Canvas>
     92            </Border>
     93        </StackPanel>
     94    </Viewbox>
    8795</UserControl>
  • trunk/CrypPlugins/TranspositionAnalyser/TranspositionAnalyserQuickWatchPresentation.xaml.cs

    r1284 r1789  
    2727        {
    2828            InitializeComponent();
    29             SizeChanged += sizeChanged;
    3029            this.DataContext = entries;
    3130         
    3231        }
    3332
    34         public void sizeChanged(Object sender, EventArgs eventArgs)
    35         {
    36             double height = this.ActualHeight - this.Grid.ActualHeight;
    37             if (height < 0)
    38             {
    39                 height = 0;
    40             }
    41             this.ListView.Height = height;
    42             this.ListView.Width = this.ActualWidth;
    43 
    44             double heightTransform = (this.ActualHeight - height) / this.Grid.ActualHeight;
    45             double widthTransform = this.ActualWidth / this.Grid.ActualWidth;
    46 
    47             if (widthTransform > heightTransform)
    48             {
    49                 widthTransform = heightTransform;
    50             }
    51 
    52 
    53             this.Grid.RenderTransform = new ScaleTransform(widthTransform, heightTransform);
    54         }
     33       
    5534
    5635        public void HandleDoubleClick(Object sender, EventArgs eventArgs)
Note: See TracChangeset for help on using the changeset viewer.