Changeset 2701


Ignore:
Timestamp:
Feb 15, 2011, 11:43:32 PM (11 years ago)
Author:
weyers
Message:

EnigmaPresentation Settings synchronisation and start on play update and bugfixes, Pictures updated as .png, Rotor2 synchronisation update, Reflector bugfix

Location:
trunk/CrypPlugins/Enigma
Files:
7 deleted
6 edited

Legend:

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

    r2636 r2701  
    8989        private string FormattedEncrypt(int rotor1Pos, int rotor2Pos, int rotor3Pos, int rotor4Pos, string text)
    9090        {
    91             return postFormatOutput(core.Encrypt(rotor1Pos, rotor2Pos, rotor3Pos, rotor4Pos, preFormatInput(text)));
     91            String input = preFormatInput(text);
     92            myPresentation.setinput(input);
     93            myPresentation.playClick(null, EventArgs.Empty);
     94            return postFormatOutput(core.Encrypt(rotor1Pos, rotor2Pos, rotor3Pos, rotor4Pos, input));
    9295        }
    9396
     
    273276            this.analyzer.OnIntermediateResult += new EventHandler<IntermediateResultEventArgs>(analyzer_OnIntermediateResult);
    274277            this.statistics = new Dictionary<int, IDictionary<string, double[]>>();
    275             myPresentation = new EnigmaPresentation();
     278            myPresentation = new EnigmaPresentation(this.settings);
    276279            this.Presentation = myPresentation;
    277280            this.settings.PropertyChanged += myPresentation.settings_OnPropertyChange;
     
    456459        {
    457460            LogMessage("Enigma stopped", NotificationLevel.Info);
     461            myPresentation.stopclick(this, EventArgs.Empty);
    458462            analyzer.StopAnalysis();
    459463        }
  • trunk/CrypPlugins/Enigma/Enigma.csproj

    r2636 r2701  
    147147  </ItemGroup>
    148148  <ItemGroup>
    149     <Resource Include="Images\1.jpg" />
    150149    <Resource Include="Images\kiste.png" />
    151150    <Resource Include="Images\oldpaper.png" />
     
    154153    <Resource Include="Images\background2.png" />
    155154    <Resource Include="Images\rotor.png" />
    156     <Resource Include="Images\background2.jpg" />
    157     <Resource Include="Images\kiste.jpg" />
    158     <Resource Include="Images\oldpaper.jpg" />
    159     <Resource Include="Images\paper.jpg" />
    160     <Resource Include="Images\rotor.jpg" />
    161155    <Resource Include="Images\rotor1.jpg" />
    162156    <Resource Include="Images\rotor2.jpg" />
     
    164158    <Resource Include="Images\rotor4.jpg" />
    165159    <Resource Include="Images\rotor5.jpg" />
    166     <Resource Include="Images\walze.jpg" />
    167160  </ItemGroup>
    168161  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
  • trunk/CrypPlugins/Enigma/EnigmaPresentation.xaml

    r2636 r2701  
    8989                </Rectangle>
    9090            </Canvas>
    91             <WrapPanel  Canvas.Bottom="-50" Name="inputPanel" Canvas.Left="50" Width="950" Height="300">
     91            <WrapPanel  Canvas.Bottom="40" Name="inputPanel" Canvas.Left="50" Width="950" Height="200">
    9292                <WrapPanel.RenderTransform>
    9393                    <RotateTransform x:Name="TransRotate"
    94                            CenterX="25" CenterY="25" Angle="2" />
     94                           CenterX="25" CenterY="25" Angle="1.9" />
    9595                </WrapPanel.RenderTransform>
    9696
  • trunk/CrypPlugins/Enigma/EnigmaPresentation.xaml.cs

    r2636 r2701  
    198198                    b.Uid ="" +( Convert.ToInt32(e.PropertyName[9]) -65);
    199199                    b.Content = Convert.ToInt32(e.PropertyName[9]) - 65;
    200 
    201                     List_MouseLeftButtonDown(b,EventArgs.Empty);
     200                    int i = Convert.ToInt32(e.PropertyName[9]) - 65;
     201                    if(i == switchlist[i])
     202                    switch (i) {
     203                        case 0:
     204                           
     205                                switchbuttons(i, dummyset.PlugBoardA);
     206                                break;
     207                        case 1:
     208                                switchbuttons(i, dummyset.PlugBoardB);
     209                                break;
     210                        case 2:
     211                                switchbuttons(i, dummyset.PlugBoardC);
     212                                break;
     213                        case 3:
     214                           
     215                                switchbuttons(i, dummyset.PlugBoardD);
     216                                break;
     217                        case 4:
     218                                switchbuttons(i, dummyset.PlugBoardE);
     219                                break;
     220                        case 5:
     221                                switchbuttons(i, dummyset.PlugBoardF);
     222                                break;
     223                        case 6:
     224                                switchbuttons(i, dummyset.PlugBoardG);
     225                                break;
     226                        case 7:
     227                                switchbuttons(i, dummyset.PlugBoardH);
     228                                break;
     229                        case 8:
     230                                switchbuttons(i, dummyset.PlugBoardI);
     231                                break;
     232                        case 9:
     233                                switchbuttons(i, dummyset.PlugBoardJ);
     234                                break;
     235                        case 10:
     236                                switchbuttons(i, dummyset.PlugBoardK);
     237                                break;
     238                        case 11:
     239                                switchbuttons(i, dummyset.PlugBoardL);
     240                                break;
     241                        case 12:
     242                                switchbuttons(i, dummyset.PlugBoardM);
     243                                break;
     244                        case 13:
     245                                switchbuttons(i, dummyset.PlugBoardN);
     246                                break;
     247                        case 14:
     248                                switchbuttons(i, dummyset.PlugBoardO);
     249                                break;
     250                        case 15:
     251                                switchbuttons(i, dummyset.PlugBoardP);
     252                                break;
     253                        case 16:
     254                                switchbuttons(i, dummyset.PlugBoardQ);
     255                                break;
     256                        case 17:
     257                                switchbuttons(i, dummyset.PlugBoardR);
     258                                break;
     259                        case 18:
     260                                switchbuttons(i, dummyset.PlugBoardS);
     261                                break;
     262                        case 19:
     263                                switchbuttons(i, dummyset.PlugBoardT);
     264                                break;
     265                        case 20:
     266                                switchbuttons(i, dummyset.PlugBoardU);
     267                                break;
     268                        case 21:
     269                                switchbuttons(i, dummyset.PlugBoardV);
     270                                break;
     271                        case 22:
     272                                switchbuttons(i, dummyset.PlugBoardW);
     273                                break;
     274                        case 23:
     275                                switchbuttons(i, dummyset.PlugBoardX);
     276                                break;
     277                        case 24:
     278                                switchbuttons(i, dummyset.PlugBoardY);
     279                                break;
     280                        case 25:
     281                                switchbuttons(i, dummyset.PlugBoardZ);
     282                                break;
     283                       
     284
     285                }
     286
     287                    //List_MouseLeftButtonDown(b,EventArgs.Empty);
    202288                }, null);
    203289            }
     
    235321                    walzenarea.Children.Remove(walze);
    236322
    237                     Walze walze1 = new Walze(dummyset.Reflector + 1, this.Width, this.Height);
     323                    Walze walze1 = new Walze(dummyset.Reflector , this.Width, this.Height);
    238324                    walze1.fast = speed * 80;
    239325                    Canvas.SetLeft(walze1, 0);
     
    278364                    rotorarea.Children.Remove(rotorarray[2]);
    279365
    280                     Rotor2 rotor = new Rotor2(dummyset.Rotor1 + 1, this.Width, this.Height);
     366                    Rotor2 rotor = new Rotor2(dummyset.Rotor1, this.Width, this.Height, dummyset.Key[2] - 65, dummyset.Ring1);
    281367                    rotor.fast = speed * 80;
    282368                    rotor.Cursor = Cursors.Hand;
     
    323409                    rotorarea.Children.Remove(rotorarray[1]);
    324410
    325                     Rotor2 rotor = new Rotor2(dummyset.Rotor2 + 1, this.Width, this.Height);
     411                    Rotor2 rotor = new Rotor2(dummyset.Rotor2, this.Width, this.Height, dummyset.Key[1] - 65, dummyset.Ring2);
    326412                    rotor.fast = speed * 80;
    327413                    rotor.Cursor = Cursors.Hand;
     
    367453                    rotorarea.Children.Remove(rotorarray[0]);
    368454
    369                     Rotor2 rotor = new Rotor2(dummyset.Rotor3 + 1, this.Width, this.Height);
     455                    Rotor2 rotor = new Rotor2(dummyset.Rotor3, this.Width, this.Height, dummyset.Key[0] - 65, dummyset.Ring3);
    370456                    rotor.fast = speed * 80;
    371457                    rotor.Cursor = Cursors.Hand;
     
    383469            Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
    384470            {
     471                dropBoxCanvasWalze.Children.Remove(walzeimgs[dummyset.Reflector]);
    385472                dropBoxCanvas.Children.Remove(rotorimgs[dummyset.Rotor3]);
    386473                dropBoxCanvas.Children.Remove(rotorimgs[dummyset.Rotor2]);
     
    586673
    587674
    588         public EnigmaPresentation()
     675        public EnigmaPresentation(EnigmaSettings settings)
    589676        {
    590677            InitializeComponent();
     
    829916            rotorarea.Children.Add(rotorlocks3);
    830917
    831             Rotor2 rotor = new Rotor2(3, this.Width, this.Height);
     918            //String settingskey = settings.Key;
     919
     920           
     921
     922
     923            Rotor2 rotor = new Rotor2(settings.Rotor1, this.Width, this.Height,settings.Key[0]-65,settings.Ring1);
    832924            rotor.fast = speed * 80;
    833925            rotor.Cursor =  Cursors.Hand;
     
    843935
    844936
    845             Walze walze = new Walze(2, this.Width, this.Height);
     937            Walze walze = new Walze(settings.Reflector, this.Width, this.Height);
    846938            walze.fast = speed * 80;
    847939            Canvas.SetLeft(walze, 0);
     
    852944            this.walze = walze;
    853945
    854             Rotor2 rotor1 = new Rotor2(2, this.Width, this.Height);
     946            Rotor2 rotor1 = new Rotor2(settings.Rotor2, this.Width, this.Height, settings.Key[1] - 65, settings.Ring1);
    855947            rotor1.fast = speed * 80;
    856948            rotor1.Cursor = Cursors.Hand;
     
    862954            rotorarray[1] = rotor1;
    863955
    864             Rotor2 rotor2 = new Rotor2(1, this.Width, this.Height);
     956            Rotor2 rotor2 = new Rotor2(settings.Rotor3, this.Width, this.Height, settings.Key[2] - 65, settings.Ring1);
    865957            rotor2.fast = speed * 80;
    866958            rotor2.Cursor = Cursors.Hand;
     
    10211113            fadeOut.Duration = new Duration(TimeSpan.FromMilliseconds((1000)));
    10221114
     1115           
     1116
     1117            /*
    10231118            String input = "LJPQHSVDWCLYXZQFXHIUVWDJOBJNZXRCWEOTVNJCIONTFQNSXWISXKHJDAGDJVAKUKVMJAJHSZQQJHZOIAVZOWMSCKASRDNXKKSRFHCXCMPJGXYIJCCKISYYSHETXVVOVDQLZYTNJXNUWKZRXUJFXMBDIBRVMJKRHTCUJQPTEEIYNYNJBEAQJCLMUODFWMARQCFOBWN";
    10241119            inputtebo = new List<TextBlock>();
     
    10431138               
    10441139            }
    1045 
    1046         }
    1047 
     1140            */
     1141
     1142        }
     1143
     1144        public void setinput(String input)
     1145        {
     1146            Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     1147            {
     1148                inputtebo = new List<TextBlock>();
     1149
     1150                for (int i = 0; i < input.Length; i++)
     1151                {
     1152                    if (i % 5 == 0 && i != 0)
     1153                    {
     1154                        TextBlock t1 = new TextBlock();
     1155                        t1.Text = " ";
     1156                        t1.FontSize = 40;
     1157                        inputPanel.Children.Add(t1);
     1158
     1159                    }
     1160
     1161                    TextBlock t = new TextBlock();
     1162                    t.FontFamily = new FontFamily("Courier New");
     1163                    t.Text = input[i] + "";
     1164                    t.FontSize = 41;
     1165                    inputPanel.Children.Add(t);
     1166                    inputtebo.Add(t);
     1167
     1168                }
     1169
     1170
     1171            }, null);
     1172        }
    10481173
    10491174
     
    16411766                }
    16421767               
    1643                 System.GC.Collect();
     1768                //System.GC.Collect();
    16441769               
    16451770
     
    18111936        Boolean blupp = true;
    18121937
    1813         private void stopclick(object sender, EventArgs e)
     1938        public void stopclick(object sender, EventArgs e)
    18141939        {
    18151940            stop = true;
     1941            inputPanel.Children.Clear();
     1942            outputPanel.Children.Clear();
     1943            inputcounter = 0;
    18161944            everythingblack();
    18171945            blupp = true;
     
    18281956            rotorarea.Children.Add(rotorlocks4);
    18291957
    1830             Rotor2 rotor4 = new Rotor2(4, this.Width, this.Height);
     1958            Rotor2 rotor4 = new Rotor2(4, this.Width, this.Height, 0, 0);
    18311959            rotor4.fast = speed * 80;
    18321960            rotor4.Cursor = Cursors.Hand;
     
    18671995        Boolean playbool = false;
    18681996
    1869         private void playClick(object sender, EventArgs e)
    1870         {
     1997        public void playClick(object sender, EventArgs e)
     1998        {
     1999             Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     2000            {
     2001            stop = false;
    18712002            everythingblack();
    18722003            ColorAnimation colorani = new ColorAnimation();
     
    18852016            //inputtebo[0].Opacity = 0.0;
    18862017            playbool = true;
     2018                }, null);
     2019       
    18872020        }
    18882021
     
    20362169                    {
    20372170
    2038                         stop = true;
     2171                        //stop = true;
    20392172                        blupp = false;
    20402173                        temp = sender as Button;
     
    20882221
    20892222                        l.BeginAnimation(OpacityProperty, nop);
    2090                         stop = false;
     2223                        //stop = false;
    20912224                    }
    20922225                }
     
    20972230                    {
    20982231
    2099                         stop = true;
     2232                        //stop = true;
    21002233                        blupp = false;
    21012234                        temp = sender as Button;
     
    21482281
    21492282                        l.BeginAnimation(OpacityProperty, nop);
    2150                         stop = false;
     2283                        //stop = false;
    21512284                    }
    21522285                }
     
    42354368
    42364369            int urint = Int32.Parse(uID);
    4237             Rotor2 rotor2 = new Rotor2(urint, this.ActualWidth, this.ActualHeight);
     4370            Rotor2 rotor2 = new Rotor2(urint, this.ActualWidth, this.ActualHeight, 0, 0);
    42384371            Canvas.SetLeft(rotor2, 230);
    42394372            rotorarea.Children.Add(rotor2);
     
    42574390     
    42584391            int urint = Int32.Parse(uID);
    4259             Rotor2 rotor2 = new Rotor2(urint, this.ActualWidth, this.ActualHeight);
     4392            Rotor2 rotor2 = new Rotor2(urint, this.ActualWidth, this.ActualHeight, 0, 0);
    42604393            Canvas.SetLeft(rotor2, 460);
    42614394            rotorarea.Children.Add(rotor2);
     
    42794412
    42804413            int urint = Int32.Parse(uID);
    4281             Rotor2 rotor2 = new Rotor2(urint, this.ActualWidth, this.ActualHeight);
     4414            Rotor2 rotor2 = new Rotor2(urint, this.ActualWidth, this.ActualHeight, 0, 0);
    42824415            Canvas.SetLeft(rotor2, 690);
    42834416            rotorarea.Children.Add(rotor2);
     
    43014434
    43024435            int urint = Int32.Parse(uID);
    4303             Rotor2 rotor2 = new Rotor2(urint, this.ActualWidth, this.ActualHeight);
     4436            Rotor2 rotor2 = new Rotor2(urint, this.ActualWidth, this.ActualHeight, 0, 0);
    43044437            Canvas.SetLeft(rotor2, 0);
    43054438            rotorarea.Children.Add(rotor2);
  • trunk/CrypPlugins/Enigma/Rotor2.cs

    r2636 r2701  
    6161        int[] fuenf = new int[] { 21, 25, 1, 17, 6, 8, 19, 24, 20, 15, 18, 3, 13, 7, 11, 23, 0, 22, 12, 9, 16, 14, 5, 4, 2, 10 };
    6262
    63 
     63        public void changeoffset(int offset)
     64        {
     65
     66        }
    6467
    6568
     
    7073        }
    7174
    72         public Rotor2(int map, double width, double height)
     75        public Rotor2(int map, double width, double height, int offset, int ringoffset)
    7376        {
    7477
     
    7982            this.width = width;
    8083            this.height = height;
    81             this.map = map;
    82 
    83 
    84             this.Children.Add(alpha());
     84            this.map = map+1;
     85
     86
     87            this.Children.Add(alpha(offset,ringoffset-1));
    8588        }
    8689
     
    618621
    619622
     623
    620624                Line l = new Line();
    621625                l = this.cloneLine(lines[0]);
     
    929933            stack.Children.Add(dummy);
    930934
    931            
     935
    932936            int x = Int32.Parse(custom2.Text);
    933937            if (x != 1)
     
    11501154            }
    11511155
    1152             System.GC.Collect();
     1156            //System.GC.Collect();
    11531157        }
    11541158
     
    11591163
    11601164
    1161         private Canvas alpha()
     1165        private Canvas alpha(int offset, int ringoffset)
    11621166        {
    11631167
     
    12071211            temp.Children.Add(lineCanvas);
    12081212
    1209             for (int i = 0; i < 26; i++)
    1210             {
     1213            int max = 26;
     1214            int rest = 26 - offset;
     1215
     1216            for (int i = offset; i < max; i++)
     1217            {
     1218               
     1219                int inew = (i-offset +ringoffset)%26;
    12111220                TextBlock t = new TextBlock();
    1212                 t.Text = "" + (i + 1);
     1221                t.Text = "" + ((26-i+ringoffset)%26+1);
    12131222                t.Width = 29.4;
    12141223                t.Height = 29.4;
     
    12531262                Line t1 = new Line();
    12541263                t1.X1 = 170;
    1255                 t1.Y1 = 29.4 * i + 75;
     1264                t1.Y1 = 29.4 * inew + 75;
    12561265                t1.Opacity = 0.5;
    12571266                t1.X2 = 30;
     
    12621271
    12631272
    1264                 maparray[i, 0] = i;
     1273                maparray[inew, 0] = inew;
    12651274                switch (map)
    12661275                {
    12671276                    case 1:
    1268                         maparray[i, 1] = eins[i];
    1269                         t1.Y2 = 29.4 * eins[i] + 75;
     1277                        maparray[inew, 1] = ((eins[i] + rest + ringoffset) % 26);
     1278                        t1.Y2 = 29.4 * ((eins[i] + rest +ringoffset) % 26) + 75;
     1279                        iAm.Text = "I";
     1280                        nextint = einsnext;
     1281                        if (offset == nextint)
     1282                            next = true;
     1283                        break;
     1284
     1285                    case 2:
     1286                        maparray[inew, 1] = (zwei[i] + rest + ringoffset) % 26;
     1287                        t1.Y2 = 29.4 * ((zwei[i] + rest + ringoffset) % 26) + 75;
     1288                        nextint = zweinext;
     1289                        iAm.Text = "II";
     1290                        if (offset == nextint)
     1291                            next = true;
     1292                        break;
     1293                    case 3:
     1294                        maparray[inew, 1] = (drei[i] + rest + ringoffset) % 26;
     1295                        t1.Y2 = 29.4 * ((drei[i] + rest + ringoffset) % 26) + 75;
     1296                        nextint = dreinext;
     1297                        iAm.Text = "III";
     1298                        if (offset == nextint)
     1299                            next = true;
     1300                        break;
     1301                    case 4:
     1302                        maparray[inew, 1] = (vier[i] + rest + ringoffset) % 26;
     1303                        t1.Y2 = 29.4 * ((vier[i] + rest + ringoffset) % 26) + 75;
     1304                        nextint = viernext;
     1305                        iAm.Text = "IV";
     1306                        if (offset == nextint)
     1307                            next = true;
     1308                        break;
     1309                    case 5:
     1310                        maparray[inew, 1] = (fuenf[i] + rest + ringoffset) % 26;
     1311                        t1.Y2 = 29.4 * ((fuenf[i] + rest + ringoffset) % 26) + 75;
     1312                        nextint = fuenfnext;
     1313                        iAm.Text = "V";
     1314                        if (offset == nextint)
     1315                            next = true;
     1316                        if (i == 0)
     1317                        {
     1318                            t2.Foreground = Brushes.OrangeRed;
     1319                            t2.FontWeight = FontWeights.UltraBold;
     1320                            t2.FontSize = 22;
     1321                        }
     1322                        break;
     1323
     1324                }
     1325
     1326                lines[inew] = t1;
     1327
     1328
     1329
     1330                if (i == nextint + 1)
     1331                {
     1332                    t2.FontWeight = FontWeights.UltraBold;
     1333                    t2.Foreground = Brushes.OrangeRed;
     1334                    t2.FontSize = 22;
     1335                }
     1336
     1337
     1338                lineCanvas.Children.Add(t1);
     1339
     1340            }
     1341
     1342            for (int i = 0; i < offset; i++)
     1343            {
     1344                int inew = (i + rest+ringoffset)%26;
     1345
     1346                TextBlock t = new TextBlock();
     1347                t.Text = "" + ((26 - i +ringoffset) % 26 + 1);
     1348                t.Width = 29.4;
     1349                t.Height = 29.4;
     1350
     1351
     1352                t.FontSize = 20;
     1353                t.Background = Brushes.Gainsboro;
     1354                t.TextAlignment = TextAlignment.Center;
     1355                if (i % 2 == 0)
     1356                    t.Background = Brushes.Silver;
     1357                if (i == 0)
     1358                {
     1359                    t.FontWeight = FontWeights.UltraBold;
     1360                    t.Foreground = Brushes.OrangeRed;
     1361                    t.FontSize = 22;
     1362
     1363                }
     1364
     1365
     1366                stack.Children.Add(t);
     1367
     1368                tebo.Add(t);
     1369
     1370                TextBlock t2 = new TextBlock();
     1371                t2.Text = "" + Convert.ToChar(i + 65);
     1372                t2.Width = 29.4;
     1373                t2.Height = 29.4;
     1374
     1375
     1376                t2.FontSize = 20;
     1377                t2.Background = Brushes.Gainsboro;
     1378                t2.TextAlignment = TextAlignment.Center;
     1379                if (i % 2 == 0)
     1380                    t2.Background = Brushes.Silver;
     1381
     1382
     1383
     1384                stack1.Children.Add(t2);
     1385
     1386                tebo2.Add(t2);
     1387
     1388                Line t1 = new Line();
     1389                t1.X1 = 170;
     1390                t1.Y1 = 29.4 * ((i - offset + 26 +ringoffset )%26) + 75;
     1391                t1.Opacity = 0.5;
     1392                t1.X2 = 30;
     1393                t1.Y2 = 0;
     1394
     1395                t1.Stroke = Brushes.Black;
     1396
     1397
     1398
     1399                maparray[inew , 0] = inew ;
     1400                switch (map)
     1401                {
     1402                    case 1:
     1403                        maparray[inew, 1] = ((eins[i] + rest + ringoffset) % 26);
     1404                        t1.Y2 = 29.4 * ((eins[i] + rest+ringoffset) % 26) + 75;
    12701405                        iAm.Text = "I";
    12711406                        nextint = einsnext;
     
    12731408
    12741409                    case 2:
    1275                         maparray[i, 1] = zwei[i];
    1276                         t1.Y2 = 29.4 * zwei[i] + 75;
     1410                        maparray[inew, 1] = ((zwei[i] + rest + ringoffset) % 26);
     1411                        t1.Y2 = 29.4 * ((zwei[i] + rest + ringoffset) % 26) + 75;
    12771412                        nextint = zweinext;
    12781413                        iAm.Text = "II";
    12791414                        break;
    12801415                    case 3:
    1281                         maparray[i, 1] = drei[i];
    1282                         t1.Y2 = 29.4 * drei[i] + 75;
     1416                        maparray[inew, 1] = (drei[i] + rest + ringoffset) % 26;
     1417                        t1.Y2 = 29.4 * ((drei[i] + rest + ringoffset) % 26) + 75;
    12831418                        nextint = dreinext;
    12841419                        iAm.Text = "III";
    12851420                        break;
    12861421                    case 4:
    1287                         maparray[i, 1] = vier[i];
    1288                         t1.Y2 = 29.4 * vier[i] + 75;
     1422                        maparray[inew, 1] = (vier[i] + rest + ringoffset) % 26;
     1423                        t1.Y2 = 29.4 * ((vier[i] + rest + ringoffset) % 26) + 75;
    12891424                        nextint = viernext;
    12901425                        iAm.Text = "IV";
    12911426                        break;
    12921427                    case 5:
    1293                         maparray[i, 1] = fuenf[i];
    1294                         t1.Y2 = 29.4 * fuenf[i] + 75;
     1428                        maparray[inew, 1] = (fuenf[i] + rest + ringoffset) % 26;
     1429                        t1.Y2 = 29.4 * ((fuenf[i] + rest + ringoffset) % 26) + 75;
    12951430                        nextint = fuenfnext;
    12961431                        iAm.Text = "V";
     
    13041439
    13051440                }
    1306                 lines[i] = t1;
     1441                lines[inew] = t1;
    13071442
    13081443
     
    13171452
    13181453                lineCanvas.Children.Add(t1);
     1454
    13191455            }
    13201456
     
    13381474            Canvas.SetTop(down, 5);
    13391475
    1340             custom.Text = "A";
     1476            custom.Text = "" + Convert.ToChar(offset+65) ;
    13411477
    13421478            custom.Height = 50;
     
    14231559            Canvas.SetLeft(down1, 125);
    14241560
    1425             custom2.Text = "1";
     1561            custom2.Text = ""+(ringoffset+1);
    14261562
    14271563            custom2.Height = 50;
  • trunk/CrypPlugins/Enigma/Walze.cs

    r2636 r2701  
    273273        public Walze(int umkehr, double width, double height)
    274274        {
    275             typ = umkehr;
     275            typ = umkehr+1;
    276276            Rectangle myRectangle = new Rectangle();
    277277            myRectangle.Width = 260;
     
    286286            this.Children.Add(myRectangle);
    287287
    288             switch (umkehr)
     288            switch (umkehr+1)
    289289            {
    290290                case 1: this.umkehrlist = umkehrlist1;
Note: See TracChangeset for help on using the changeset viewer.