source: trunk/CrypPlugins/PKCS1/WpfControls/RsaKeyGen/RsaKeyGenControl.xaml @ 1885

Last change on this file since 1885 was 1885, checked in by schomburg, 11 years ago

added english menus
changed GUI a bit
added additional input for bleichenbacher signatures

File size: 7.9 KB
Line 
1<UserControl x:Class="PKCS1.WpfControls.RsaKeyGen.RsaKeyGenControl"
2    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4    xmlns:my="clr-namespace:PKCS1.WpfResources"
5    xmlns:lib="clr-namespace:PKCS1.Library"
6    xmlns:lang="clr-namespace:PKCS1.Resources.lang.Gui"
7    HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
8    <UserControl.Resources>
9        <my:ErrorsToMessageConverter x:Key="eToMConverter" />
10    </UserControl.Resources>
11    <ScrollViewer  VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto">
12        <Grid>
13            <Grid.RowDefinitions>
14            <RowDefinition Height="auto" />
15            <RowDefinition Height="auto" />
16        </Grid.RowDefinitions>
17            <GroupBox Grid.Row="0" Margin="0,0,0,0">
18                <GroupBox.Header>
19                    <x:Static Member="lang:RsaKeyGenCtrl.genRsaKey"></x:Static>
20                </GroupBox.Header>
21            <Grid>
22                <Grid.RowDefinitions>
23                    <RowDefinition Height="auto" />
24                    <RowDefinition Height="*" />
25                </Grid.RowDefinitions>
26                <Grid Grid.Row="0">
27                    <Grid.ColumnDefinitions>
28                        <ColumnDefinition Width="auto" />
29                        <ColumnDefinition Width="auto" />
30                        <ColumnDefinition Width="auto" />
31                    </Grid.ColumnDefinitions>
32                    <Grid Grid.Column="0">
33                        <Grid.RowDefinitions>
34                            <RowDefinition Height="auto" />
35                            <RowDefinition Height="auto" />
36                        </Grid.RowDefinitions>
37                            <Label Grid.Row="0" Margin="5,0,5,0">
38                                <x:Static Member="lang:RsaKeyGenCtrl.pubKey"></x:Static></Label>
39                            <Label Grid.Row="1" Margin="5,0,5,5">
40                                <x:Static Member="lang:RsaKeyGenCtrl.bitSize"></x:Static>
41                            </Label>
42                    </Grid>
43                    <Grid Grid.Column="1">
44                        <Grid.RowDefinitions>
45                            <RowDefinition Height="auto" />
46                            <RowDefinition Height="auto" />
47                        </Grid.RowDefinitions>
48                            <TextBox Grid.Row="0" Name="tbInputPubKey"  Margin="5,0,5,5" MinWidth="50">
49                                    <TextBox.Text>
50                                    <Binding Source="{x:Static lib:RsaKey.Instance}" Path="PubExponent" UpdateSourceTrigger="PropertyChanged">
51                                        <Binding.ValidationRules>
52                                            <my:NumberValidationRule UpperBound="20" LowerBound="0" />
53                                        </Binding.ValidationRules>
54                                    </Binding>
55                                </TextBox.Text>                                 
56                            </TextBox>                           
57                            <TextBox Grid.Row="1" Name="tbInputMod" Margin="5,0,5,5" MinWidth="50">
58                                <TextBox.Text>
59                                    <Binding Source="{x:Static lib:RsaKey.Instance}" Path="RsaKeySize" UpdateSourceTrigger="PropertyChanged">
60                                        <Binding.ValidationRules>
61                                            <my:NumberValidationRule UpperBound="4097" LowerBound="1023" />
62                                        </Binding.ValidationRules>
63                                    </Binding>
64                                </TextBox.Text>
65                            </TextBox>
66                    </Grid>
67                    <Grid Grid.Column="2">
68                        <Grid.RowDefinitions>
69                            <RowDefinition Height="auto" />
70                            <RowDefinition Height="auto" />
71                        </Grid.RowDefinitions>
72                            <DockPanel Grid.Row="0">
73                                <Label Margin="5,0,5,0">
74                                    <x:Static Member="lang:RsaKeyGenCtrl.pubKeyComment"></x:Static></Label>
75                                <Image Name="btnHelpPubKey" Cursor="Hand" Source="../../Resources/icons/help.png" Width="16" Height="16" HorizontalAlignment="Right" MouseLeftButtonDown="btn_Help_MouseLeftButtonDown" />
76                            </DockPanel>
77                            <DockPanel Grid.Row="1">
78                                <Label Margin="5,0,5,5">
79                                    <x:Static Member="lang:RsaKeyGenCtrl.bitSizeUnit"></x:Static>
80                                </Label>
81                                <Image Name="btnHelpBitSizeModulus" Cursor="Hand" Source="../../Resources/icons/help.png" Width="16" Height="16" HorizontalAlignment="Right" MouseLeftButtonDown="btn_Help_MouseLeftButtonDown" />
82                            </DockPanel>
83                    </Grid>
84                </Grid>
85                <Grid Grid.Row="1">
86                    <Grid.ColumnDefinitions>
87                        <ColumnDefinition Width="*" />
88                        <ColumnDefinition Width="auto" />
89                        <ColumnDefinition Width="auto" />
90                    </Grid.ColumnDefinitions>
91                        <TextBlock Grid.Column="0"  Foreground="Red" FontWeight="Bold" FontSize="10"
92                                Text="{Binding ElementName=tbInputPubKey,
93                                Path=(Validation.Errors),
94                                Converter={StaticResource eToMConverter}}" />
95                        <TextBlock Grid.Column="0"  Foreground="Red" FontWeight="Bold" FontSize="10"
96                                Text="{Binding ElementName=tbInputMod,
97                                Path=(Validation.Errors),
98                                Converter={StaticResource eToMConverter}}" />
99                        <Button Grid.Column="2" Name="btnGenRsaKey" Click="btnGenRsaKey_Click" Height="25" MinWidth="100" VerticalAlignment="Bottom" HorizontalContentAlignment="Right">
100                            <x:Static Member="lang:RsaKeyGenCtrl.genKey"></x:Static>
101                        </Button>
102                </Grid>
103            </Grid>
104        </GroupBox>       
105            <GroupBox Grid.Row="1" Margin="0,15,0,0">
106                <GroupBox.Header>
107                    <x:Static Member="lang:RsaKeyGenCtrl.generatedKey"></x:Static>
108                </GroupBox.Header>
109                <Grid>
110                <Grid.RowDefinitions>
111                    <RowDefinition Height="auto" />
112                    <RowDefinition Height="auto" />
113                    <RowDefinition Height="auto" />
114                    <RowDefinition Height="auto" />
115                </Grid.RowDefinitions>
116                    <Label Grid.Row="0">
117                        <x:Static Member="lang:RsaKeyGenCtrl.privKey"></x:Static></Label>
118                <Label Grid.Row="0" Margin="150,0,0,0" Name="lblPrivKeyLength"></Label>
119                <TextBox Grid.Row="1" Name="tbResultPrivKey" IsReadOnly="True" TextWrapping="Wrap" MaxWidth="450" MinHeight="80" Margin="5,0,5,5" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" TextChanged="tbResultPrivKey_TextChanged"></TextBox>
120                    <Label Grid.Row="2">
121                        <x:Static Member="lang:RsaKeyGenCtrl.mod"></x:Static></Label>
122                <Label Grid.Row="2" Margin="150,0,0,0" Name="lblModulusLength"></Label>
123                <TextBox Grid.Row="3" Name="tbResultModulus" IsReadOnly="True" TextWrapping="Wrap" MaxWidth="450" MinHeight="80" Margin="5,0,5,5" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" TextChanged="tbResultModulus_TextChanged"></TextBox>
124            </Grid>           
125        </GroupBox>
126    </Grid>
127    </ScrollViewer>
128</UserControl>
Note: See TracBrowser for help on using the repository browser.