Changeset 2615


Ignore:
Timestamp:
Feb 7, 2011, 8:54:31 PM (11 years ago)
Author:
Tim Podeszwa
Message:

Animation bug fixed

Location:
trunk/CrypPlugins/WebService
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/WebService/AnimationController.cs

    r2561 r2615  
    5151        public void InitializeAnimation()
    5252        {
    53             this._presentation.decAnimation.fillEncryptedDataTreeviewElements();
    54             this._presentation.decAnimation.initializeAnimation();
     53            this._presentation.decryptionAnimation.fillEncryptedDataTreeviewElements();
     54            this._presentation.decryptionAnimation.initializeAnimation();
    5555
    5656            if (this.GetSecurityHeaderElement(0).Equals("ds:Signature"))
     
    6969
    7070            this._actualSecurityElementNumber = 0;
    71             this._presentation.findSignatureItems((TreeViewItem)this._presentation.soapInput.Items[0], "ds:Signature");
     71            this._presentation.FindSignatureItems((TreeViewItem)this._presentation.soapInput.Items[0], "ds:Signature");
    7272            this.GetTotalSecurityElementsNumber();
    7373            this._controllerTimer.Start();
     
    8989        public void InitializeAnimations()
    9090        {
    91             this._presentation.decAnimation.initializeAnimation();
    92             this._presentation.initializeAnimation();
     91            this._presentation.decryptionAnimation.initializeAnimation();
     92            this._presentation.InitializeAnimation();
    9393        }
    9494        public void GetTotalSecurityElementsNumber()
     
    126126                    this._controllerTimer.Interval = new TimeSpan(0, 0, 0, 5, 0);
    127127                    this._controllerTimer.Stop();
    128                     this._presentation.decAnimation.getDecryptiontimer().Start();
     128                    this._presentation.decryptionAnimation.getDecryptiontimer().Start();
    129129                    if (this._actualSecurityElementNumber + 1 < this._wsSecurityElementsCounter)
    130130                    {
  • trunk/CrypPlugins/WebService/DecryptionAnimation.cs

    r2561 r2615  
    5050            {
    5151                case 1:
    52                     this.presentation.textBox2.Text += "\n Found EnrcyptedKey Element";
    53                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     52                    this.presentation._animationStepsTextBox.Text += "\n Found EnrcyptedKey Element";
     53                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    5454                    decryptionTimer.Interval = new TimeSpan(0, 0, 0, 5, 0);
    5555                    TreeViewItem item = (TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber];
    5656                    this.actualEncryptedKeyItem = item;
    57                     TreeViewItem actualEncryptedKeyParentItem = (TreeViewItem)item.Parent;
    58                     int t = actualEncryptedKeyParentItem.Items.IndexOf(item) + 1;
    59                     this.actualEncryptedKeyEndTagItem = (TreeViewItem)actualEncryptedKeyParentItem.Items[t];
    60 
     57                    if (item.Parent != null)
     58                    {
     59                        TreeViewItem actualEncryptedKeyParentItem = (TreeViewItem)item.Parent;
     60                        int t = actualEncryptedKeyParentItem.Items.IndexOf(item) + 1;
     61                        this.actualEncryptedKeyEndTagItem = (TreeViewItem)actualEncryptedKeyParentItem.Items[t];
     62                    }
    6163                    item.BringIntoView();
    6264                   
     
    6668                    break;
    6769                case 2:
    68                     this.presentation.textBox2.Text += "\n Encrypt Key";
    69                     this.presentation.textBox2.Text += "\n -> find EncryptionMethod";
    70                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     70                    this.presentation._animationStepsTextBox.Text += "\n Encrypt Key";
     71                    this.presentation._animationStepsTextBox.Text += "\n -> find EncryptionMethod";
     72                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    7173                    this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "EncryptionMethod", 1).BringIntoView();
    7274                    this.animateFoundElements(this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "EncryptionMethod", 1), this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "/xenc:EncryptionMethod", 1));
     
    7476                    break;
    7577                case 3:
    76                     this.presentation.textBox2.Text += "\n -> Get information about the key to decrypt the encrypted key";
    77                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     78                    this.presentation._animationStepsTextBox.Text += "\n -> Get information about the key to decrypt the encrypted key";
     79                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    7880                    this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "KeyInfo", 1).BringIntoView();
    7981                    this.animateFoundElements(this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "KeyInfo", 1), this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "/ds:KeyInfo", 1));
    80                     this.presentation.textBox2.Text += "\n The information shows that the key was encrypted mit the Web Service public key";
    81                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     82                    this.presentation._animationStepsTextBox.Text += "\n The information shows that the key was encrypted mit the Web Service public key";
     83                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    8284                    status++;
    8385                    break;
    8486                case 4:
    85                     this.presentation.textBox2.Text += "\n ->  Get the cipher data";
    86                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     87                    this.presentation._animationStepsTextBox.Text += "\n ->  Get the cipher data";
     88                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    8789                    this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "CipherData", 1).BringIntoView();
    8890                    this.animateFoundElements(this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "CipherData", 1), this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "/xenc:CipherData", 1));
     
    9092                    break;
    9193                case 5:
    92                     this.presentation.textBox2.Text += "\n ->  Get the cipher value inside cipher data";
    93                     this.presentation.textBox2.Text += "\n ->  which represents the encrypted key";
    94                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     94                    this.presentation._animationStepsTextBox.Text += "\n ->  Get the cipher value inside cipher data";
     95                    this.presentation._animationStepsTextBox.Text += "\n ->  which represents the encrypted key";
     96                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    9597                    this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "CipherValue", 1).BringIntoView();
    9698                    this.animateFoundElements(this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "CipherValue", 1), this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "/xenc:CipherValue", 1));
     
    98100                    break;
    99101                case 6:
    100                     this.presentation.textBox2.Text += "\n -> Decrypt the encrypted key";
    101                     this.presentation.textBox2.Text += "\n -> Get the reference list which shows";
    102                     this.presentation.textBox2.Text += "\n -> which data was encrypted with the encrypted key";
    103                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     102                    this.presentation._animationStepsTextBox.Text += "\n -> Decrypt the encrypted key";
     103                    this.presentation._animationStepsTextBox.Text += "\n -> Get the reference list which shows";
     104                    this.presentation._animationStepsTextBox.Text += "\n -> which data was encrypted with the encrypted key";
     105                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    104106                    this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "ReferenceList", 1).BringIntoView();
    105107                    this.animateFoundElements(this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "ReferenceList", 1), this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "/xenc:ReferenceList", 1));
     
    107109                    break;
    108110                case 7:
    109                     this.presentation.textBox2.Text += "\n -> Get the reference";
    110                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     111                    this.presentation._animationStepsTextBox.Text += "\n -> Get the reference";
     112                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    111113                    this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "DataReference", 1).BringIntoView();
    112114                    this.animateFoundElements(this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "DataReference", 1), this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "/xenc:DataReference", 1));
     
    116118                   
    117119                case 8:
    118                     this.presentation.textBox2.Text += "\n -> Get the referenced data";
    119                     this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     120                    this.presentation._animationStepsTextBox.Text += "\n -> Get the referenced data";
     121                    this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    120122                    TreeViewItem dataReference = this.findItem((TreeViewItem)this.encryptedKeyTreeviewElements[actualEncryptedKeyNumber], "DataReference", 1);
    121123                    dataReference.BringIntoView();
     
    161163                   break;
    162164                case 9:
    163                    this.presentation.textBox2.Text += "\n -> Decrypt the data and replace ";
    164                    this.presentation.textBox2.Text += "\n -> the EncryptedData Element with the decrypted data";
    165                    this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     165                   this.presentation._animationStepsTextBox.Text += "\n -> Decrypt the data and replace ";
     166                   this.presentation._animationStepsTextBox.Text += "\n -> the EncryptedData Element with the decrypted data";
     167                   this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    166168                  // n = this.actualEncryptedDataParent.Items.IndexOf(actualEncryptedData) + 1;
    167169                   this.animationAddElements(actualEncryptedData, actualEncryptedDataEndTag);
     
    305307                   break;
    306308                case 11:
    307                    this.presentation.textBox2.Text += "\n -> Remove EncryptedKey Element from security header";
    308                    this.presentation.textBox2.ScrollToLine(this.presentation.textBox2.LineCount - 1);
     309                   this.presentation._animationStepsTextBox.Text += "\n -> Remove EncryptedKey Element from security header";
     310                   this.presentation._animationStepsTextBox.ScrollToLine(this.presentation._animationStepsTextBox.LineCount - 1);
    309311                   this.animationAddElements(actualEncryptedKeyItem, actualEncryptedKeyEndTagItem);
    310312
  • trunk/CrypPlugins/WebService/WebService.cs

    r2561 r2615  
    269269            {
    270270                this.CheckSoap();
     271               
    271272                if (this._inputDocument != null)
    272273                {
    273274                    presentation.Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
    274275                    {
    275                         this.presentation.resetSoapInputItem();
     276                       
    276277
    277278                        this.presentation.namespacesTable.Clear();
    278                         this.presentation.CopyXmlToTreeView(this._inputDocument.ChildNodes[1], ref this.presentation.soapInput, false);
    279 
    280 
    281                         this.presentation.treeView4.Items.Add(this.presentation.soapInput);
    282                         this.presentation.findItem(presentation.soapInput, "Envelope", 1).IsExpanded = true;
    283                         this.presentation.findItem(presentation.soapInput, "Header", 1).IsExpanded = true;
    284                         this.presentation.findItem(presentation.soapInput, "Security", 1).IsExpanded = true;
    285                         this.presentation.findItem(presentation.soapInput, "Signature", 1).IsExpanded = true;
    286                         this.presentation.findItem(presentation.soapInput, "Body", 1).IsExpanded = true;
    287                         this.presentation.treeView4.Items.Refresh();
     279                   
     280                        this.presentation.soapInput = null;
     281                        this.presentation.soapInput = new TreeViewItem();
     282                        this.presentation._animationTreeView.Items.Clear();
     283                        presentation.soapInput.IsExpanded = true;
     284                        StackPanel panel1 = new StackPanel();
     285                        panel1.Orientation = System.Windows.Controls.Orientation.Horizontal;
     286                        TextBlock elem1 = new TextBlock();
     287                        elem1.Text = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>";
     288                        panel1.Children.Insert(0, elem1);
     289                        this.presentation.soapInput.Header = panel1;
     290                        this.presentation.CopyXmlToTreeView(this._inputDocument.SelectSingleNode("/*"), ref this.presentation.soapInput, false);
     291                     //   this.presentation.ResetSoapInputItem();
     292                       this.presentation._animationTreeView.Items.Add(this.presentation.soapInput);
     293                        this.presentation.FindTreeViewItem(presentation.soapInput, "Envelope", 1).IsExpanded = true;
     294                        this.presentation.FindTreeViewItem(presentation.soapInput, "Header", 1).IsExpanded = true;
     295                        this.presentation.FindTreeViewItem(presentation.soapInput, "Security", 1).IsExpanded = true;
     296                        this.presentation.FindTreeViewItem(presentation.soapInput, "Signature", 1).IsExpanded = true;
     297                        this.presentation.FindTreeViewItem(presentation.soapInput, "Body", 1).IsExpanded = true;
     298                        this.presentation._animationTreeView.Items.Refresh();
    288299
    289300                    }, null);
     
    322333
    323334                this.presentation.textBlock1.Inlines.Add(new Bold(new Run(_stringToCompile[2].ToString() + "\n")));
    324                 this.presentation.visualMethodName(WebServiceSettings.MethodName);
    325                 this.presentation.visualReturnParam("double");
     335                this.presentation.VisualMethodName(WebServiceSettings.MethodName);
     336                this.presentation.VisualReturnParam("double");
    326337                this.presentation.richTextBox1.Document.Blocks.Clear();
    327338                this.presentation.richTextBox1.AppendText("double endKapital;\n" + "int laufzeit=intparam1;\n" + "double zinssatz=doubleparam1;\n" + "double startKapital=doubleparam2;\n" + "endKapital=Math.Round(startKapital*(Math.Pow(1+zinssatz/100,laufzeit)));\n" + "return endKapital;");
     
    337348                    this._returnParameter[3] = "float";
    338349                    this._returnParameter[4] = "double";
    339                     this.presentation.visualReturnParam(_returnParameter[webserviceSettings.Test]);
     350                    this.presentation.VisualReturnParam(_returnParameter[webserviceSettings.Test]);
    340351                }
    341352
     
    344355                    if (webserviceSettings.Integer == 1)
    345356                    {
    346                         this.presentation.visualParam("int", 1);
     357                        this.presentation.VisualParam("int", 1);
    347358                    }
    348359                    if (webserviceSettings.Integer == 2)
    349360                    {
    350                         this.presentation.visualParam("int", 2);
     361                        this.presentation.VisualParam("int", 2);
    351362                    }
    352363                    if (webserviceSettings.Integer == 0)
    353364                    {
    354                         this.presentation.visualParam("int", 0);
     365                        this.presentation.VisualParam("int", 0);
    355366                    }
    356367
     
    360371                    if (webserviceSettings.String == 1)
    361372                    {
    362                         this.presentation.visualParam("string", 1);
     373                        this.presentation.VisualParam("string", 1);
    363374                    }
    364375                    if (webserviceSettings.String == 2)
    365376                    {
    366377
    367                         this.presentation.visualParam("string", 2);
     378                        this.presentation.VisualParam("string", 2);
    368379                    }
    369380
    370381                    if (webserviceSettings.String == 0)
    371382                    {
    372                         this.presentation.visualParam("string", 0);
     383                        this.presentation.VisualParam("string", 0);
    373384                    }
    374385                }
     
    377388                    if (webserviceSettings.Double == 1)
    378389                    {
    379                         this.presentation.visualParam("double", 1);
     390                        this.presentation.VisualParam("double", 1);
    380391                    }
    381392                    if (webserviceSettings.Double == 2)
    382393                    {
    383394
    384                         this.presentation.visualParam("double", 2);
     395                        this.presentation.VisualParam("double", 2);
    385396                    }
    386397
    387398                    if (webserviceSettings.Double == 0)
    388399                    {
    389                         this.presentation.visualParam("double", 0);
     400                        this.presentation.VisualParam("double", 0);
    390401                    }
    391402                }
     
    395406                {
    396407                    this._methodName = webserviceSettings.MethodName;
    397                     this.presentation.visualMethodName(webserviceSettings.MethodName);
     408                    this.presentation.VisualMethodName(webserviceSettings.MethodName);
    398409                }
    399410                string comma = "";
     
    682693            presentation.Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
    683694            {
    684                 header = this.presentation.copyContentToString(this.presentation.textBlock1);
     695                header = this.presentation.CopyTextBlockContentToString(this.presentation.textBlock1);
    685696
    686697            }, null);
     
    707718                description.Write(xmlWriter);
    708719                string theWsdl = stringWriter.ToString();
    709                 presentation.showWsdl(theWsdl);
     720                presentation.ShowWsdl(theWsdl);
    710721                this.Description = description;
    711722                StringReader stringReader = new StringReader(theWsdl);
     
    715726                presentation.Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
    716727                {
    717                     if (presentation.treeView1.HasItems)
    718                     {
    719                         xmlDecl = (System.Windows.Controls.TreeViewItem)presentation.treeView1.Items[0];
     728                    if (presentation._wsdlTreeView.HasItems)
     729                    {
     730                        xmlDecl = (System.Windows.Controls.TreeViewItem)presentation._wsdlTreeView.Items[0];
    720731                        if (xmlDecl.HasItems)
    721732                        {
     
    736747                    }
    737748
    738                     presentation.treeView1.Items.Add(presentation.item);
     749                    presentation._wsdlTreeView.Items.Add(presentation.item);
    739750                    presentation.item.IsExpanded = true;
    740751                    for (int i = 0; i < presentation.item.Items.Count; i++)
     
    795806            if (this.WebServiceSettings.Compiled == true)
    796807            {
    797                 this.presentation.compile();
     808                this.presentation.GetStringToCompile();
    798809            }
    799810
  • trunk/CrypPlugins/WebService/WebServicePresentation.xaml

    r639 r2615  
    22    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    33    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    4    Height="Auto" Width="Auto" MinWidth="640" MinHeight="480">
     4   Height="Auto" Width="Auto" MinWidth="640" MinHeight="480" mc:Ignorable="d" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" d:DesignHeight="480" d:DesignWidth="640">
    55    <Grid>
    6        <TabControl Name="tabControl1" BorderBrush="Transparent" Background="AliceBlue">
    7             <TabItem Header="Compiler" Name="tabQuellcode" IsSelected="True" Background="AliceBlue">
    8                 <Grid>
    9 
    10 
    11                     <Button Height="23" Margin="16.67,0,0,107.549" Name="compileButton" VerticalAlignment="Bottom" Click="compileButton_Click" ToolTip="Kompiliert die erstellte Methode" HorizontalAlignment="Left" Width="70.021">Compile</Button>
    12                 <Label Height="38.341" HorizontalAlignment="Left" Margin="16.67,20,0,0" Name="label1" VerticalAlignment="Top" Width="120" Foreground="DarkBlue" Grid.ColumnSpan="3">Method Header</Label>
    13                 <TextBox Margin="110,0,41.72,30.009" Name="textBox3" IsReadOnly="True" Height="100.02" VerticalAlignment="Bottom" />
    14                 <TextBlock Height="70" Margin="110,0,42.5,0" Name="textBlock1" VerticalAlignment="Top" Background="White"><TextBlock.TextDecorations><TextDecoration Location="OverLine"><TextDecoration.Pen><Pen /></TextDecoration.Pen></TextDecoration></TextBlock.TextDecorations></TextBlock>
    15                 <RichTextBox Margin="109.22,68.592,42.5,190.057" Name="richTextBox1" BorderBrush="White" TextChanged="richTextBox1_TextChanged" IsHitTestVisible="True" Focusable="True" AcceptsTab="True" VerticalScrollBarVisibility="Visible" AutoWordSelection="False" />
    16                 <Label Height="25.005" Margin="0,0,0,75.737" Name="label2" VerticalAlignment="Bottom" HorizontalAlignment="Left" Width="108.197">Compiler Result:</Label>
    17                 <Label Height="28" HorizontalAlignment="Left" Margin="16.67,70.014,0,0" Name="label3" VerticalAlignment="Top" Width="120" BorderBrush="Blue" Foreground="Blue" Grid.ColumnSpan="3">Method Body</Label>
    18                 <TextBlock Height="45.728" Margin="110,0,41.72,144.329" Name="textBlock2" VerticalAlignment="Bottom" Background="White" />
    19                 </Grid>
    20                 </TabItem>
    21             <TabItem Name="tabWsdl" Header="WSDL" IsSelected="True" IsEnabled="True" Background="AliceBlue">
    22                 <Grid><TreeView Margin="0,21.671,80.016,38.341" Name="treeView1" ScrollViewer.HorizontalScrollBarVisibility="Visible" ScrollViewer.VerticalScrollBarVisibility="Visible"></TreeView></Grid>
    23                
    24             </TabItem>
    25             <TabItem IsSelected="True" Name="SignatureTab" Header="Animation" Background="AliceBlue">
    26                 <Grid>
    27                     <TreeView Margin="0,0,276,9" Name="treeView4" ScrollViewer.VerticalScrollBarVisibility="Visible" ScrollViewer.HorizontalScrollBarVisibility="Visible" />
    28                     <Button HorizontalAlignment="Right" Margin="0,0,10,8.662" Name="resetButton" Width="75" Height="23.338" VerticalAlignment="Bottom" Click="resetButton_Click">Reset</Button>
    29                     <TextBox Margin="0,0.336,10,38" Name="textBox2" HorizontalAlignment="Right" Width="257" TextWrapping="WrapWithOverflow" VerticalScrollBarVisibility="Auto" />
    30                     <Button Height="23" HorizontalAlignment="Right" Margin="0,0,192,9" Name="button1" VerticalAlignment="Bottom" Width="75" Click="button1_Click_3">Play</Button>
     6        <Slider Height="38.341" Margin="0,0,5,0" Name="slider1" VerticalAlignment="Top" IsSelectionRangeEnabled="False" IsMoveToPointEnabled="False" IsDirectionReversed="False" ValueChanged="slider1_ValueChanged" HorizontalAlignment="Right" Width="221.711" />
     7        <TabControl Name="tabControl1" BorderBrush="Transparent" Background="AliceBlue" Margin="8,5,12,0">
     8            <TabItem Header="Compiler" Name="_compilerTab" IsSelected="True" Background="AliceBlue">
     9                <Grid Width="625">
     10                    <Button Height="23" Margin="16.67,0,0,107.549" Name="compileButton" VerticalAlignment="Bottom" Click="CompileButtonClickEventHandler" ToolTip="Kompiliert die erstellte Methode" HorizontalAlignment="Left" Width="70.021">Compile</Button>
     11                    <Label Height="38.341" HorizontalAlignment="Left" Margin="16.67,20,0,0" Name="label1" VerticalAlignment="Top" Width="120" Foreground="DarkBlue" Grid.ColumnSpan="3">Method Header</Label>
     12                    <TextBox Margin="110,0,41.72,30.009" Name="textBox3" IsReadOnly="True" Height="100.02" VerticalAlignment="Bottom" />
     13                    <TextBlock Height="70" Margin="110,0,42.5,0" Name="textBlock1" VerticalAlignment="Top" Background="White"><TextBlock.TextDecorations><TextDecoration Location="OverLine"><TextDecoration.Pen><Pen /></TextDecoration.Pen></TextDecoration></TextBlock.TextDecorations></TextBlock>
     14                    <RichTextBox Margin="109.22,68.592,42.5,190.057" Name="richTextBox1" BorderBrush="White" TextChanged="richTextBox1_TextChanged" IsHitTestVisible="True" Focusable="True" AcceptsTab="True" VerticalScrollBarVisibility="Visible" AutoWordSelection="False" />
     15                    <Label Height="25.005" Margin="0,0,0,75.737" Name="label2" VerticalAlignment="Bottom" HorizontalAlignment="Left" Width="108.197">Compiler Result:</Label>
     16                    <Label Height="28" HorizontalAlignment="Left" Margin="16.67,70.014,0,0" Name="label3" VerticalAlignment="Top" Width="120" BorderBrush="Blue" Foreground="Blue" Grid.ColumnSpan="3">Method Body</Label>
     17                    <TextBlock Height="45.728" Margin="110,0,41.72,144.329" Name="textBlock2" VerticalAlignment="Bottom" Background="White" />
    3118                </Grid>
    3219            </TabItem>
    33             <TabItem Name="traceTab" IsSelected="True" Header="WS-Security Trace" Background="AliceBlue">
    34                 <TextBox Name="txtTrace" FontFamily="Courier New" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" />
     20            <TabItem Name="_wsdlTab" Header="WSDL" IsSelected="True" IsEnabled="True" Background="AliceBlue">
     21                <Grid>
     22                    <TreeView Name="_wsdlTreeView" ScrollViewer.HorizontalScrollBarVisibility="Visible" ScrollViewer.VerticalScrollBarVisibility="Visible" Width="630" Height="447" VerticalContentAlignment="Stretch"></TreeView>
     23                </Grid>
     24            </TabItem>
     25            <TabItem IsSelected="True" Name="_animationTab" Header="Animation" Background="AliceBlue">
     26                <Grid>
     27                    <Grid.ColumnDefinitions>
     28                        <ColumnDefinition Width="349" />
     29                        <ColumnDefinition Width="22" />
     30                        <ColumnDefinition Width="239" />
     31                    </Grid.ColumnDefinitions>
     32                    <TreeView Name="_animationTreeView" ScrollViewer.VerticalScrollBarVisibility="Visible" ScrollViewer.HorizontalScrollBarVisibility="Visible" HorizontalAlignment="Left" Width="332" Height="447" Margin="0,0,0,-5" VerticalContentAlignment="Stretch" />
     33                    <Button HorizontalAlignment="Right" Margin="0,0,10,8.662" Name="resetButton" Width="75" Height="23.338" VerticalAlignment="Bottom" Click="resetButton_Click" Grid.Column="2">Reset</Button>
     34                    <TextBox Margin="0,0.336,0,38" Name="_animationStepsTextBox" HorizontalAlignment="Right" Width="267" TextWrapping="WrapWithOverflow" VerticalScrollBarVisibility="Auto" Grid.ColumnSpan="3" />
     35                    <Button Height="23" HorizontalAlignment="Right" Margin="0,0,162,6" Name="button1" VerticalAlignment="Bottom" Width="75" Click="button1_Click_3" Grid.Column="2">Play</Button>
     36                </Grid>
     37            </TabItem>
     38            <TabItem Name="_securityTraceTab" IsSelected="True" Header="WS-Security Trace" Background="AliceBlue">
     39                <TextBox Name="txtTrace" FontFamily="Courier New" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" Width="624" />
    3540            </TabItem>
    3641        </TabControl>
    37         <Slider Height="38.341" Margin="0,0,5,0" Name="slider1" VerticalAlignment="Top" IsSelectionRangeEnabled="False" IsMoveToPointEnabled="False" IsDirectionReversed="False" ValueChanged="slider1_ValueChanged" HorizontalAlignment="Right" Width="221.711" />
    3842    </Grid>
    3943</UserControl>
  • trunk/CrypPlugins/WebService/WebServicePresentation.xaml.cs

    r2561 r2615  
    2424using System.Windows.Threading;
    2525using System.Collections.ObjectModel;
     26using System.Threading;
    2627
    2728
     
    3334    public partial class WebServicePresentation : System.Windows.Controls.UserControl
    3435    {
    35         public TreeViewItem item, inboundPolicy,soapInput, item1;
    36    
    37         private bool referenceValid = true;
    38         private ArrayList signatureCollection, tempReferenceCollection, tempTransformCollection;
    39         private string theWsdl;
    40          public WebService webService;
    41         private string lastURI;
     36        #region Fields
     37        private bool _referenceValid = true;
     38        private ArrayList _signatureCollection;
     39        private ArrayList _tempReferenceCollection;
     40        private ArrayList _tempTransformCollection;
     41        private string _webServiceDescription;
     42        private string _lastURI;
     43        private Run _methodVisibility;
     44        private Run _returnParam;
     45        private Run _methodName;
     46        private Run _openBrace;
     47        private Run _closeBrace;
     48        private Run _comma;
     49        private Run _openMethodBrace;
     50        private Run _closeMethodBrace;
     51        private Bold _webMethod;
     52        private FlowDocument doc;
     53        private Bold _intParams;
     54        private Bold _stringParams;
     55        private Bold _doubleParams;
     56        private System.ComponentModel.SortDescription SD;
     57        private DispatcherTimer _dispatcherTimer;
     58        private DispatcherTimer _decryptionTimer;
     59        private DispatcherTimer _referenceTimer;
     60        private DispatcherTimer _transformTimer;
     61        private DoubleAnimation _textSizeAnimation;
     62        private DoubleAnimation _textSizeAnimationReverse;
     63        private DoubleAnimation _textSizeAnimation1;
     64        private DoubleAnimation _textSizeAnimationReverse1;
     65        private int _status;
     66        private int _referenceStatus;
     67        private int _transformstatus;
     68        private int _signatureNumber;
     69        private int _actualSignatureNumber;
     70        private int _signaturenumber;
     71        private int _actualReferenceNumber;
     72        private int _referenceNumber;
     73        private int _transformNumber;
     74        private int _transformCount;
     75        private AnimationController _animationController;
     76        #endregion
     77
     78        public bool isbusy;
    4279        public Hashtable namespacesTable;
    43         private FlowDocument flowDocument;
    44         private Run methodVisibility, returnParam, methodName, openBrace, closeBrace, komma, openMethodBrace, closeMethodBrace;
    45         private Bold webMethod;
    46         private  FlowDocument doc;
    47         private Bold intparams, stringparams, doubleparams;
    48         private System.ComponentModel.SortDescription SD;
    49         private DispatcherTimer dispatcherTimer,decryptionTimer, referenceTimer, transformTimer;
    50         private DoubleAnimation TextSizeAnimation, TextSizeAnimationReverse,TextSizeAnimation1, TextSizeAnimationReverse1;
    51         private int status, referenceStatus,transformstatus, signatureNumber, actualSignatureNumber,signaturenumber, actualReferenceNumber,referenceNumber,transformNumber,transformCount;
    52         private AnimationController animationController;
    53         public bool allowExecute, isbusy;
    54         public DecryptionAnimation decAnimation;
     80        public TreeViewItem item, soapInput, item1;
     81        public WebService webService;
     82        public DecryptionAnimation decryptionAnimation;
     83
     84        #region Constructor
    5585        public WebServicePresentation(WebService webService)
    5686        {
    57          
    58    
    5987            InitializeComponent();
    60             actualSignatureNumber = 1;
    61             decAnimation = new DecryptionAnimation(this);
     88            this._actualSignatureNumber = 1;
     89            decryptionAnimation = new DecryptionAnimation(this);
    6290            slider1.Opacity = 0;
    63             allowExecute = false;
    6491            isbusy = true;
    65        animationController = new AnimationController(this);
    66             this.signatureCollection = new ArrayList();
    67             this.tempTransformCollection = new ArrayList();
    68      
    69 
    70             StackPanel panel2= new StackPanel();
    71             panel2.Orientation = System.Windows.Controls.Orientation.Horizontal;
    72             panel2.Children.Add(new TextBlock(new Run("Tesfdsfsdft2")));
    73             panel2.Children.Add(new TextBlock(new Run("Test2")));
    74             panel2.Children.Add(new CheckBox());
    75        
    76             ComboBox encryptionCombo =new ComboBox();
    77             ComboBoxItem comboItem= new ComboBoxItem();
    78             comboItem.Content="Content";
    79             ComboBoxItem comboItem2 = new ComboBoxItem();
    80             comboItem2.Content ="Element";
    81            
    82             encryptionCombo.Items.Add(comboItem);
    83             encryptionCombo.Items.Add(comboItem2);
    84             encryptionCombo.SelectedItem = comboItem;
    85            
    86 
    87      
    88             Paragraph par = (Paragraph) this.richTextBox1.Document.Blocks.FirstBlock;
     92            this._animationController = new AnimationController(this);
     93            this._signatureCollection = new ArrayList();
     94            this._tempTransformCollection = new ArrayList();
     95            Paragraph par = (Paragraph)this.richTextBox1.Document.Blocks.FirstBlock;
    8996            par.LineHeight = 5;
    90             status = 1;
    91             dispatcherTimer = new DispatcherTimer();
    92             dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
    93             referenceTimer = new DispatcherTimer();
    94             referenceTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
    95             decryptionTimer = new DispatcherTimer();
    96             decryptionTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
    97             transformTimer = new DispatcherTimer();
    98             transformTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
    99             TextSizeAnimation = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
    100             TextSizeAnimationReverse = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
    101             TextSizeAnimation1 = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
    102             TextSizeAnimationReverse1 = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
    103             dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
    104             decryptionTimer.Tick += new EventHandler(decryptionTimer_Tick);
    105             referenceTimer.Tick += new EventHandler(referenceTimer_Tick);
    106             transformTimer.Tick += new EventHandler(transformTimer_Tick);
    107             doc=new FlowDocument();
    108             webMethod =  new Bold(new Run("[WebMethod]"+"\n"));
    109             methodVisibility = new Run();
    110             returnParam = new Run();
    111             methodName = new Run();
    112             intparams = new Bold();
    113             stringparams = new Bold();
    114             doubleparams = new Bold();
    115             openBrace = new Run();
    116             closeBrace = new Run();
    117             komma = new Run(",");
    118             Paragraph para = new Paragraph(webMethod);
    119             openMethodBrace = new Run("\n{");
    120            
     97            this._status = 1;
     98            this._dispatcherTimer = new DispatcherTimer();
     99            this._dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
     100            this._referenceTimer = new DispatcherTimer();
     101            this._referenceTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
     102            this._decryptionTimer = new DispatcherTimer();
     103            this._decryptionTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
     104            this._transformTimer = new DispatcherTimer();
     105            this._transformTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
     106            this._textSizeAnimation = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
     107            this._textSizeAnimationReverse = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
     108            this._textSizeAnimation1 = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
     109            this._textSizeAnimationReverse1 = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
     110            this._dispatcherTimer.Tick += new EventHandler(DispatcherTimerTickEventHandler);
     111            this._referenceTimer.Tick += new EventHandler(ReferenceTimerTickEventHandler);
     112            this._transformTimer.Tick += new EventHandler(TransformTimerTickEventHandler);
     113            doc = new FlowDocument();
     114            this._webMethod = new Bold(new Run("[WebMethod]" + "\n"));
     115            this._methodVisibility = new Run();
     116            this._returnParam = new Run();
     117            this._methodName = new Run();
     118            this._intParams = new Bold();
     119            this._stringParams = new Bold();
     120            this._doubleParams = new Bold();
     121            this._openBrace = new Run();
     122            this._closeBrace = new Run();
     123            this._comma = new Run(",");
     124            this._openMethodBrace = new Run("\n{");
    121125            textBlock2.Inlines.Add(new Run("}"));
    122             textBlock2.Visibility=Visibility.Visible;
    123 
    124             this.visualMethodName("methodName");
    125 
     126            textBlock2.Visibility = Visibility.Visible;
     127            this.VisualMethodName("methodName");
    126128            this.richTextBox1.Document = doc;
    127             this.textBlock1.Inlines.Add(webMethod);
    128             this.textBlock1.Inlines.Add(methodVisibility);
    129             this.textBlock1.Inlines.Add(returnParam);
    130             this.textBlock1.Inlines.Add(methodName);
    131             this.textBlock1.Inlines.Add(openBrace);
    132            
    133 
    134             this.textBlock1.Inlines.Add(intparams);
    135             this.textBlock1.Inlines.Add(stringparams);
    136             this.textBlock1.Inlines.Add(doubleparams);
    137             this.textBlock1.Inlines.Add(closeBrace);
    138             textBlock1.Inlines.Add(openMethodBrace);
     129            this.textBlock1.Inlines.Add(this._webMethod);
     130            this.textBlock1.Inlines.Add(this._methodVisibility);
     131            this.textBlock1.Inlines.Add(this._returnParam);
     132            this.textBlock1.Inlines.Add(this._methodName);
     133            this.textBlock1.Inlines.Add(this._openBrace);
     134            this.textBlock1.Inlines.Add(this._intParams);
     135            this.textBlock1.Inlines.Add(this._stringParams);
     136            this.textBlock1.Inlines.Add(this._doubleParams);
     137            this.textBlock1.Inlines.Add(this._closeBrace);
     138            textBlock1.Inlines.Add(_openMethodBrace);
    139139            item = new TreeViewItem();
    140140            item1 = new TreeViewItem();
     
    149149            soapInput.IsExpanded = true;
    150150            this.webService = webService;
    151             TreeViewItem inboundPolicyRoot = new TreeViewItem();
    152             TextBlock block2 = new TextBlock();
    153             block2.Text = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>";
    154             StackPanel panel3 = new StackPanel();
    155             panel2.Children.Add(block2);
    156             inboundPolicyRoot.Header = panel3;
    157             inboundPolicyRoot.Header = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>";
    158        
    159             inboundPolicy = new TreeViewItem();
    160             inboundPolicy.Header = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>";
    161            
    162151            namespacesTable = new Hashtable();
    163 
    164152            SD = new System.ComponentModel.SortDescription("param", System.ComponentModel.ListSortDirection.Ascending);
    165             tempReferenceCollection = new ArrayList();
    166  
    167        
    168            
    169             webService.Settings.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(Settings_PropertyChanged);
    170         }
    171 
    172      
    173 
    174        
    175 
    176         void decryptionTimer_Tick(object sender, EventArgs e)
    177         {
     153            this._tempReferenceCollection = new ArrayList();
     154            webService.Settings.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(SettingsPropertyChangedEventHandler);
     155        }
     156        #endregion
     157
     158        #region Methods
     159
     160        public void ResetSoapInputItem()
     161        {
     162            this.webService.InputString = this.webService.InputString;
     163            //this.Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     164            //{
     165
     166
     167            //    this.namespacesTable.Clear();
     168            //    this.presentation.CopyXmlToTreeView(this._inputDocument.ChildNodes[1], ref this.presentation.soapInput, false);
     169
     170            //    this._animationTreeView.Items.Clear();
     171
     172            //    this._animationTreeView.Items.Clear();
     173
     174            //    soapInput = null;
     175            //    soapInput = new TreeViewItem();
     176            //    TextBlock block = new TextBlock();
     177            //    block.Text = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>";
     178            //    StackPanel panel = new StackPanel();
     179            //    panel.Children.Add(block);
     180            //    soapInput.Header = panel;
     181            //    soapInput.IsExpanded = true;
     182            //    XmlNode rootElement = this.webService.InputString.SelectSingleNode("/*");
     183            //    CopyXmlToTreeView(rootElement, ref this.soapInput, false);
     184
     185            //    this._animationTreeView.Items.Add(soapInput);
     186            //    this._animationTreeView.Items.Refresh();
     187            //    this.InitializeAnimation();
     188            //    this.presentation._animationTreeView.Items.Add(this.presentation.soapInput);
     189            //    this.FindTreeViewItem(this.soapInput, "Envelope", 1).IsExpanded = true;
     190            //    this.FindTreeViewItem(this.soapInput, "Header", 1).IsExpanded = true;
     191            //    this.FindTreeViewItem(this.soapInput, "Security", 1).IsExpanded = true;
     192            //    this.FindTreeViewItem(this.soapInput, "Signature", 1).IsExpanded = true;
     193            //    this.FindTreeViewItem(this.soapInput, "Body", 1).IsExpanded = true;
     194            //    this._animationTreeView.Items.Refresh();
     195
     196            //}, null);
    178197           
    179         }
    180         public void resetSoapInputItem()
    181         {
    182             soapInput = new TreeViewItem();
    183             TextBlock block = new TextBlock();
    184             block.Text = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>";
    185             StackPanel panel = new StackPanel();
    186             panel.Children.Add(block);
    187             soapInput.Header = panel;
    188             soapInput.IsExpanded = true;
    189             this.treeView4.Items.Clear();
    190         }
    191 
    192         public void resetPolicyItem()
    193         {
    194            // this.treeView2.Items.Clear();
    195        inboundPolicy = new TreeViewItem();
    196             TextBlock block = new TextBlock();
    197             block.Text = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>";
    198             StackPanel panel = new StackPanel();
    199             panel.Children.Add(block);
    200             inboundPolicy.Header = panel;
    201             inboundPolicy.IsExpanded = true;
    202         }
    203         public void CopyXmlToTreeView(XmlNode xNode, ref TreeViewItem tviParent, bool withPics)
     198
     199        }
     200
     201        public void CopyXmlToTreeView(XmlNode xmlNode, ref TreeViewItem treeViewItemParent, bool withPics)
    204202        {
    205203            SolidColorBrush elemBrush = new SolidColorBrush(Colors.MediumVioletRed);
    206             if (xNode != null)
     204            if (xmlNode != null)
    207205            {
    208206                TreeViewItem item = new TreeViewItem();
     
    218216                tbTagOpen.Text = "<";
    219217                tbTagClose.Text = ">";
    220                 tbName.Text = xNode.Name;
     218                tbName.Text = xmlNode.Name;
    221219                tbTagOpen.Foreground = elemBrush;
    222220                tbTagClose.Foreground = elemBrush;
    223221                tbName.Foreground = elemBrush;
    224                 if (!xNode.NodeType.ToString().Equals("Text"))
     222                if (!xmlNode.NodeType.ToString().Equals("Text"))
    225223                {
    226224                    item.Name = "OpenItemXmlNode";
     
    229227                    panel.Children.Insert(0, tbTagOpen);
    230228                    panel.Children.Add(tbName);
    231                     if (!xNode.NamespaceURI.Equals(""))
    232                     {
    233                        insertNamespace(ref panel, xNode.NamespaceURI, xNode.Prefix);
    234                     }
    235                     if (xNode.Attributes != null)
    236                     {
    237                         insertAttributes(ref panel, xNode.Attributes);
    238                     }
    239          
     229                    if (!xmlNode.NamespaceURI.Equals(""))
     230                    {
     231                        InsertNamespace(ref panel, xmlNode.NamespaceURI, xmlNode.Prefix);
     232                    }
     233                    if (xmlNode.Attributes != null)
     234                    {
     235                        InsertAttributes(ref panel, xmlNode.Attributes);
     236                    }
     237
    240238                    panel.Children.Add(tbTagClose);
    241239
    242240                    if (withPics)
    243 
    244                     {
    245                         if (xNode.Name.Equals("s:Body"))
     241                    {
     242                        if (xmlNode.Name.Equals("s:Body"))
    246243                        {
    247                             addOpenLockToPanel(ref panel, xNode.Name, false);
     244                            AddOpenLockToPanel(ref panel, xmlNode.Name, false);
    248245                        }
    249246                        else
    250247                        {
    251                             addOpenLockToPanel(ref panel, xNode.Name, true);
     248                            AddOpenLockToPanel(ref panel, xmlNode.Name, true);
    252249                        }
    253                     } 
    254                    
    255                
     250                    }
     251
     252
    256253                    item.Header = panel;
    257254                    closeitem.Foreground = elemBrush;
    258                     tviParent.Items.Add(item);
    259                     if (xNode.HasChildNodes)
    260                     {
    261                         foreach (XmlNode child in xNode.ChildNodes)
     255                    treeViewItemParent.Items.Add(item);
     256                    if (xmlNode.HasChildNodes)
     257                    {
     258                        foreach (XmlNode child in xmlNode.ChildNodes)
    262259                        {
    263                             lastURI = xNode.NamespaceURI; ;
    264                             CopyXmlToTreeView(child, ref item,withPics);
     260                            _lastURI = xmlNode.NamespaceURI; ;
     261                            CopyXmlToTreeView(child, ref item, withPics);
    265262                        }
    266263                    }
     
    273270                    panel1.Children.Insert(0, tbTagOpen3);
    274271                    elem1.Name = "tbName";
    275                     elem1.Text = "/"+xNode.Name;
     272                    elem1.Text = "/" + xmlNode.Name;
    276273                    panel1.Children.Add(elem1);
    277274                    TextBlock tbTagClose3 = new TextBlock();
     
    279276                    tbTagClose3.Text = ">";
    280277                    panel1.Children.Add(tbTagClose3);
    281                  
     278
    282279                    closeitem.Header = panel1;
    283                    
    284                     tviParent.Items.Add(closeitem);
     280
     281                    treeViewItemParent.Items.Add(closeitem);
    285282                }
    286283                else
     
    288285                    TextBlock tbTagOpen2 = new TextBlock();
    289286                    TextBlock tbTagClose2 = new TextBlock();
    290          
     287
    291288                    tbTagOpen2.Name = "tbTagOpen";
    292289                    tbTagOpen2.Text = "<";
     
    297294                    TextBlock tbText = new TextBlock();
    298295                    tbText.Name = "TextNode";
    299                     tbText.Text = xNode.Value;
     296                    tbText.Text = xmlNode.Value;
    300297                    TextBlock emptyTextBlock = new TextBlock();
    301298                    emptyTextBlock.Text = "";
    302                     panel.Children.Insert(0,emptyTextBlock);
     299                    panel.Children.Insert(0, emptyTextBlock);
    303300                    panel.Children.Add(tbText);
    304301                    item.Header = panel;
    305                     tviParent.Items.Add(item);
    306                 }
    307             }
    308         }
    309          private void addOpenLockToPanel(ref StackPanel panel,string name, bool open)
     302                    treeViewItemParent.Items.Add(item);
     303                }
     304            }
     305
     306        }
     307        private void AddOpenLockToPanel(ref StackPanel panel, string name, bool open)
    310308        {
    311309            System.Drawing.Bitmap bitmap;
     
    332330                int n = splitter.Length;
    333331                if (splitter[1].ToString().Contains("+"))
    334                 {string[] nameSplitter=splitter[1].ToString().Split(new Char[] {'+'});
    335                  
     332                {
     333                    string[] nameSplitter = splitter[1].ToString().Split(new Char[] { '+' });
     334
    336335                    splitter[1] = nameSplitter[0];
    337                  nameSpace=   nameSplitter[1].ToString()+ ":" + splitter[n - 1].ToString();
    338                
     336                    nameSpace = nameSplitter[1].ToString() + ":" + splitter[n - 1].ToString();
     337
    339338                }
    340339                myImage2.Name = splitter[1].ToString();
     
    347346            if (open)
    348347            {
    349                 myImage2.MouseLeftButtonDown += new MouseButtonEventHandler(myImage2_MouseLeftButtonDown);
     348                myImage2.MouseLeftButtonDown += new MouseButtonEventHandler(MyImage2MouseLeftButtonDownEventHandler);
    350349            }
    351350            if (!open)
    352351            {
    353                 myImage2.MouseLeftButtonDown+=new MouseButtonEventHandler(myImage2_MouseLeftButtonDownClose);
    354             }
    355            
    356            
     352                myImage2.MouseLeftButtonDown += new MouseButtonEventHandler(MyImage2MouseLeftButtonDownCloseEventHandler);
     353            }
     354
     355
    357356            myImage2.ToolTip = "Click this picture to encrypt the <" + name + "> element";
    358             //myImage2.MouseEnter += new MouseEventHandler(myImage2_MouseEnter);
    359             //myImage2.MouseLeave += new MouseEventHandler(myImage2_MouseLeave);
    360             //ContextMenu menu = new ContextMenu();
    361             //MenuItem item1 = new MenuItem();
    362             //item1.Header="Test";
    363             //item1.IsCheckable=true;
    364             //menu.Items.Add(item1);
    365            
    366             //myImage2.ContextMenu = menu;
    367357            panel.Children.Add(myImage2);
    368358        }
    369          void myImage2_MouseLeftButtonDownClose(object sender, MouseButtonEventArgs e)
    370          {
    371              Image img = (Image)sender;
    372              string name = img.Name;
    373        
    374 
    375 
    376 
    377 
    378          }
    379          void myImage2_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
    380          {
    381              Image img = (Image)sender;
    382              string name = img.Name;
    383      
    384        
    385          
    386              
    387            
    388          }
    389         public StackPanel insertAttributes(ref StackPanel panel, XmlAttributeCollection attributes)
    390         {
    391             foreach (XmlAttribute tempAttribute in attributes)
     359       private void MyImage2MouseLeftButtonDownCloseEventHandler(object sender, MouseButtonEventArgs e)
     360        {
     361            Image img = (Image)sender;
     362            string name = img.Name;
     363        }
     364       private  void MyImage2MouseLeftButtonDownEventHandler(object sender, MouseButtonEventArgs e)
     365        {
     366            Image img = (Image)sender;
     367            string name = img.Name;
     368        }
     369        public StackPanel InsertAttributes(ref StackPanel panel, XmlAttributeCollection xmlAttributes)
     370        {
     371            foreach (XmlAttribute tempAttribute in xmlAttributes)
    392372            {
    393373                if (!tempAttribute.Name.Contains("xmlns"))
     
    412392                        TextBlock name = new TextBlock();
    413393                        name.Text = " " + tempAttribute.Name;
    414 
    415 
    416394                        TextBlock value = new TextBlock();
    417395                        value.Text = " =\"" + tempAttribute.Value + "\"";
    418396                        SolidColorBrush valueBrush = new SolidColorBrush(Colors.Blue);
    419397                        value.Foreground = valueBrush;
    420 
    421398                        panel.Children.Add(name);
    422399                        panel.Children.Add(value);
     
    426403            return panel;
    427404        }
    428         public StackPanel insertNamespace(ref StackPanel panel, string nspace, string Prefix)
    429         {
    430             if (!namespacesTable.ContainsValue(nspace))
    431             {
    432                 namespacesTable.Add(nspace, nspace);
     405        public StackPanel InsertNamespace(ref StackPanel panel, string nameSpace, string nameSpacePrefix)
     406        {
     407            if (!namespacesTable.ContainsValue(nameSpace))
     408            {
     409                namespacesTable.Add(nameSpace, nameSpace);
    433410                TextBlock xmlns = new TextBlock();
    434411                xmlns.Name = "xmlns";
     
    436413                TextBlock prefix = new TextBlock();
    437414                prefix.Name = "xmlnsPrefix";
    438                 if (!Prefix.Equals(""))
    439                 { prefix.Text = ":" + Prefix; }
     415                if (!nameSpacePrefix.Equals(""))
     416                { prefix.Text = ":" + nameSpacePrefix; }
    440417                else { prefix.Text = ""; }
    441418                SolidColorBrush valueBrush = new SolidColorBrush(Colors.Blue);
    442419                TextBlock value = new TextBlock();
    443420                value.Name = "xmlnsValue";
    444                 value.Text = "=" + "\"" + nspace + "\"";
     421                value.Text = "=" + "\"" + nameSpace + "\"";
    445422                value.Foreground = valueBrush;
    446423                panel.Children.Add(xmlns);
     
    450427            return panel;
    451428        }
    452         void dispatcherTimer_Tick(object sender, EventArgs e)
    453         { 
    454             switch(status)
    455             {
    456             case 1:
    457        
    458                 signatureNumber = this.webService.GetSignatureNumber();
    459                 this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    460                 dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 5, 0);
    461                 this.textBox2.Text+="\n Check for Signature Element";
    462                 this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    463          
    464                 this.treeView4.Items.Refresh();
    465    
    466                this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber],"Signature",1).BringIntoView();
    467 
    468                this.animateFoundElements((TreeViewItem)this.signatureCollection[this.signaturenumber], (TreeViewItem)signatureCollection[this.signaturenumber]);
    469                status = 2;
    470                 slider1.Value++;
    471                 break;
    472             case 2:
    473                 this.textBox2.Text+="\n Canonicalize SignedInfo";
    474                 this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    475                 this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "SignedInfo",1).BringIntoView();
    476                 this.animateFoundElements(this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "/SignedInfo", actualSignatureNumber), this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "/ds:SignedInfo>", actualSignatureNumber));
    477                    
    478                
    479            
    480                 status=3;
    481                 slider1.Value++;
    482                 break;
    483             case 3:
    484                 this.textBox2.Text+="\n -->Find Canonicalization Algorithm";
    485                 this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    486                 this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "CanonicalizationMethod", actualSignatureNumber).BringIntoView();
    487                 this.animateFoundElements(this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "/CanonicalizationMethod", actualSignatureNumber), this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "/ds:CanonicalizationMethod>", actualSignatureNumber));
    488                
    489                
    490                 status = 4;
    491                 slider1.Value++;
    492                 break;
    493             case 4:
    494                // this.calculateBox.Text = this.webService.getValidator().canonicalizeSignedInfo(this.signaturenumber);
    495 
    496                 this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    497                 this.findSignatureItems((TreeViewItem)signatureCollection[this.signaturenumber], "ds:Reference");
    498                 this.initializeReferenceAnimation();
    499                
    500              
    501              
    502                status = 5;
    503 
    504                dispatcherTimer.Stop();
    505                slider1.Value++;
    506                break;
    507          
    508             case 5:
    509              
    510 
    511                    this.textBox2.Text += "\n Signature Validation";
    512                    this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    513                    this.textBox2.Text += "\n -> Find Signature Method";
    514                    this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    515                    this.findItem(this.soapInput, "SignatureMethod", actualSignatureNumber).BringIntoView();
    516                    this.animateFoundElements(this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "SignatureMethod", actualSignatureNumber), this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "/ds:SignatureMethod", actualSignatureNumber));
    517                    status = 6;
    518                    slider1.Value++;
    519                
    520              
    521                break;
     429       private void DispatcherTimerTickEventHandler(object sender, EventArgs e)
     430        {
     431            switch (this._status)
     432            {
     433                case 1:
     434
     435                    _signatureNumber = this.webService.GetSignatureNumber();
     436                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     437                    _dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 5, 0);
     438                    this._animationStepsTextBox.Text += "\n Check for Signature Element";
     439                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     440                    this._animationTreeView.Items.Refresh();
     441                    this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "Signature", 1).BringIntoView();
     442                    this.AnimateFoundElements((TreeViewItem)this._signatureCollection[this._signaturenumber], (TreeViewItem)_signatureCollection[this._signaturenumber]);
     443                    _status = 2;
     444                    slider1.Value++;
     445                    break;
     446                case 2:
     447                    this._animationStepsTextBox.Text += "\n Canonicalize SignedInfo";
     448                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     449                    this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "SignedInfo", 1).BringIntoView();
     450                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "/SignedInfo", _actualSignatureNumber), this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "/ds:SignedInfo>", _actualSignatureNumber));
     451                    _status = 3;
     452                    slider1.Value++;
     453                    break;
     454                case 3:
     455                    this._animationStepsTextBox.Text += "\n -->Find Canonicalization Algorithm";
     456                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     457                    this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "CanonicalizationMethod", _actualSignatureNumber).BringIntoView();
     458                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "/CanonicalizationMethod", _actualSignatureNumber), this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "/ds:CanonicalizationMethod>", _actualSignatureNumber));
     459                    _status = 4;
     460                    slider1.Value++;
     461                    break;
     462                case 4:
     463                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     464                    this.FindSignatureItems((TreeViewItem)_signatureCollection[this._signaturenumber], "ds:Reference");
     465                    this.InitializeReferenceAnimation();
     466                    _status = 5;
     467                    _dispatcherTimer.Stop();
     468                    slider1.Value++;
     469                    break;
     470
     471                case 5:
     472                    this._animationStepsTextBox.Text += "\n Signature Validation";
     473                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     474                    this._animationStepsTextBox.Text += "\n -> Find Signature Method";
     475                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     476                    this.FindTreeViewItem(this.soapInput, "SignatureMethod", _actualSignatureNumber).BringIntoView();
     477                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "SignatureMethod", _actualSignatureNumber), this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "/ds:SignatureMethod", _actualSignatureNumber));
     478                    _status = 6;
     479                    slider1.Value++;
     480
     481
     482                    break;
    522483                case 6:
    523                this.textBox2.Text += "\n Get public key for signature validation";
    524                this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    525                this.findItem((TreeViewItem)signatureCollection[this.signaturenumber], "KeyInfo", 1).BringIntoView();
    526                this.animateFoundElements(this.findItem((TreeViewItem)signatureCollection[this.signaturenumber], "KeyInfo", 1), this.findItem((TreeViewItem)signatureCollection[this.signaturenumber], "/ds:KeyInfo", 1));
    527                status = 7;
    528                break;
    529             case 7:
    530                
    531 
    532                    this.textBox2.Text += "\n -> Validate SignatureValue over SignedInfo";
    533                    this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    534 
    535                    this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "SignatureValue", actualSignatureNumber).BringIntoView();
    536                    this.animateFoundElements(this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "SignatureValue", actualSignatureNumber), this.findItem((TreeViewItem)this.signatureCollection[this.signaturenumber], "/ds:SignatureValue", actualSignatureNumber));
    537                
    538                dispatcherTimer.Stop();
    539                status = 8;
    540                slider1.Value++;
    541                this.animationController.ControllerTimer.Start();
    542                break;
     484                    this._animationStepsTextBox.Text += "\n Get public key for signature validation";
     485                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     486                    this.FindTreeViewItem((TreeViewItem)_signatureCollection[this._signaturenumber], "KeyInfo", 1).BringIntoView();
     487                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)_signatureCollection[this._signaturenumber], "KeyInfo", 1), this.FindTreeViewItem((TreeViewItem)_signatureCollection[this._signaturenumber], "/ds:KeyInfo", 1));
     488                    _status = 7;
     489                    break;
     490                case 7:
     491                    this._animationStepsTextBox.Text += "\n -> Validate SignatureValue over SignedInfo";
     492                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     493                    this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "SignatureValue", _actualSignatureNumber).BringIntoView();
     494                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "SignatureValue", _actualSignatureNumber), this.FindTreeViewItem((TreeViewItem)this._signatureCollection[this._signaturenumber], "/ds:SignatureValue", _actualSignatureNumber));
     495                    _dispatcherTimer.Stop();
     496                    _status = 8;
     497                    slider1.Value++;
     498                    this._animationController.ControllerTimer.Start();
     499                    break;
    543500                case 8:
    544                this.tempReferenceCollection.Clear();
    545                this.animationController.ControllerTimer.Start();
    546                signatureNumber = this.webService.GetSignatureNumber();
    547                isbusy = false;
    548                this.actualSignatureNumber++;
    549                if (this.signaturenumber + 1 < this.signatureNumber)
    550                {
    551                    isbusy = true;
    552                    this.signaturenumber++;
    553                    status = 1;
    554                    slider1.Value++;
    555                }
    556 
    557              
    558                break;
    559             }
    560          
    561            
    562         }
    563         void referenceTimer_Tick(object sender, EventArgs e)
    564         {
    565             int n = this.webService.Validator.GetReferenceNumber(signaturenumber);
    566             switch (referenceStatus)
    567             {
    568                  case 1:
    569                     referenceTimer.Interval = new TimeSpan(0, 0, 0, 5, 0);
    570                     this.textBox2.Text += "\n Reference Validation";
    571                     this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    572                     referenceStatus++;
    573                  break;
     501                    this._tempReferenceCollection.Clear();
     502                    this._animationController.ControllerTimer.Start();
     503                    _signatureNumber = this.webService.GetSignatureNumber();
     504                    isbusy = false;
     505                    this._actualSignatureNumber++;
     506                    if (this._signaturenumber + 1 < this._signatureNumber)
     507                    {
     508                        isbusy = true;
     509                        this._signaturenumber++;
     510                        _status = 1;
     511                        slider1.Value++;
     512                    }
     513
     514                    break;
     515            }
     516
     517
     518        }
     519      private void ReferenceTimerTickEventHandler(object sender, EventArgs e)
     520        {
     521            int n = this.webService.Validator.GetReferenceNumber(_signaturenumber);
     522            switch (_referenceStatus)
     523            {
     524                case 1:
     525                    _referenceTimer.Interval = new TimeSpan(0, 0, 0, 5, 0);
     526                    this._animationStepsTextBox.Text += "\n Reference Validation";
     527                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     528                    _referenceStatus++;
     529                    break;
    574530                case 2:
    575                    this.textBox2.Text += "\n -> Find Reference Element";
    576                    this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    577                    // this.findSignatureItems((TreeViewItem)signatureCollection[this.i], "ds:Reference").BringIntoView() ;
    578                    this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "Reference", actualSignatureNumber).BringIntoView();
    579                    this.animateFoundElements(this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "Reference", actualSignatureNumber), this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "/ds:Reference", actualSignatureNumber));
    580                    referenceStatus++;
    581                    break;
     531                    this._animationStepsTextBox.Text += "\n -> Find Reference Element";
     532                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     533                    // this.findSignatureItems((TreeViewItem)signatureCollection[this.i], "ds:Reference").BringIntoView() ;
     534                    this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "Reference", _actualSignatureNumber).BringIntoView();
     535                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "Reference", _actualSignatureNumber), this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "/ds:Reference", _actualSignatureNumber));
     536                    _referenceStatus++;
     537                    break;
    582538
    583539                case 3:
    584                    this.textBox2.Text += "\n -> Get referenced Element";
    585                   this.findItem(this.soapInput, this.webService.Validator.GetSignatureReferenceName(signaturenumber),actualReferenceNumber).BringIntoView();
    586                   this.animateFoundElements(this.findItem(this.soapInput, this.webService.Validator.GetSignatureReferenceName(signaturenumber), actualReferenceNumber), this.findItem(this.soapInput, this.webService.Validator.GetSignatureReferenceName(signaturenumber), actualReferenceNumber));
    587                    referenceStatus++;
    588                    break;
    589                
     540                    this._animationStepsTextBox.Text += "\n -> Get referenced Element";
     541                    this.FindTreeViewItem(this.soapInput, this.webService.Validator.GetSignatureReferenceName(_signaturenumber), _actualReferenceNumber).BringIntoView();
     542                    this.AnimateFoundElements(this.FindTreeViewItem(this.soapInput, this.webService.Validator.GetSignatureReferenceName(_signaturenumber), _actualReferenceNumber), this.FindTreeViewItem(this.soapInput, this.webService.Validator.GetSignatureReferenceName(_signaturenumber), _actualReferenceNumber));
     543                    _referenceStatus++;
     544                    break;
     545
    590546                case 4:
    591                    this.textBox2.Text += "\n  -> Apply Transforms";
    592                    this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    593                    this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "Transforms", actualSignatureNumber).BringIntoView();
    594                    this.animateFoundElements(this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "Transforms", actualSignatureNumber), this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "/ds:Transforms", actualSignatureNumber));
    595                    this.transformCount = this.webService.Validator.GetTransformsCounter(signaturenumber, referenceNumber);
    596                    referenceTimer.Stop();
    597                    referenceStatus++;
    598                    this.findSignatureItems((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "ds:Transform");
    599                    initializeTransformAnimation();
    600                    
    601                    break;
     547                    this._animationStepsTextBox.Text += "\n  -> Apply Transforms";
     548                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     549                    this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "Transforms", _actualSignatureNumber).BringIntoView();
     550                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "Transforms", _actualSignatureNumber), this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "/ds:Transforms", _actualSignatureNumber));
     551                    this._transformCount = this.webService.Validator.GetTransformsCounter(_signaturenumber, _referenceNumber);
     552                    _referenceTimer.Stop();
     553                    _referenceStatus++;
     554                    this.FindSignatureItems((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "ds:Transform");
     555                    InitializeTransformAnimation();
     556
     557                    break;
    602558                case 5:
    603                    this.textBox2.Text += "\n  -> Digest References";
    604                    this.textBox2.Text += "\n    -> Find DigestAlgorithm";
    605                    this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    606                    this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "DigestMethod", actualSignatureNumber).BringIntoView();
    607                    this.animateFoundElements(this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "DigestMethod", actualSignatureNumber), this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "/ds:DigestMethod", actualSignatureNumber));
    608                    referenceStatus++;
    609                    break;
     559                    this._animationStepsTextBox.Text += "\n  -> Digest References";
     560                    this._animationStepsTextBox.Text += "\n    -> Find DigestAlgorithm";
     561                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     562                    this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "DigestMethod", _actualSignatureNumber).BringIntoView();
     563                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "DigestMethod", _actualSignatureNumber), this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "/ds:DigestMethod", _actualSignatureNumber));
     564                    _referenceStatus++;
     565                    break;
    610566                case 6:
    611                    this.textBox2.Text +="\n    -> Calculated DigestValue:" +"\n       "+this.webService.Validator.DigestElement(signaturenumber,referenceNumber);
    612                    this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    613                    referenceStatus++;
    614                    break;
     567                    this._animationStepsTextBox.Text += "\n    -> Calculated DigestValue:" + "\n       " + this.webService.Validator.DigestElement(_signaturenumber, _referenceNumber);
     568                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     569                    _referenceStatus++;
     570                    break;
    615571                case 7:
    616                     this.textBox2.Text+="\n    -> Compare the DigestValues:";
    617                     this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    618                    this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "DigestValue", actualSignatureNumber).BringIntoView();
    619                    this.animateFoundElements(this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "DigestValue", actualSignatureNumber), this.findItem((TreeViewItem)this.tempReferenceCollection[this.referenceNumber], "/ds:DigestValue", actualSignatureNumber));
    620                    referenceStatus++;
    621                    break;
     572                    this._animationStepsTextBox.Text += "\n    -> Compare the DigestValues:";
     573                    this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     574                    this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "DigestValue", _actualSignatureNumber).BringIntoView();
     575                    this.AnimateFoundElements(this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "DigestValue", _actualSignatureNumber), this.FindTreeViewItem((TreeViewItem)this._tempReferenceCollection[this._referenceNumber], "/ds:DigestValue", _actualSignatureNumber));
     576                    _referenceStatus++;
     577                    break;
    622578                case 8:
    623                    if (this.webService.Validator.CompareDigestValues(signaturenumber, referenceNumber, this.webService.Validator.DigestElement(signaturenumber, referenceNumber)))
    624                    {
    625 
    626                        this.textBox2.Text += "\n Reference Validation succesfull";
    627                        this.textBox2.ScrollToLine(this.textBox2.LineCount - 1);
    628                        this.referenceValid = true;
    629                        referenceStatus++;
    630                    }
    631                    else
    632                    {
    633                        this.textBox2.Text += "\n Reference Validation failed";
    634                        referenceStatus++;
    635                        this.referenceValid = false;
    636                    }
    637                    
     579                    if (this.webService.Validator.CompareDigestValues(_signaturenumber, _referenceNumber, this.webService.Validator.DigestElement(_signaturenumber, _referenceNumber)))
     580                    {
     581
     582                        this._animationStepsTextBox.Text += "\n Reference Validation succesfull";
     583                        this._animationStepsTextBox.ScrollToLine(this._animationStepsTextBox.LineCount - 1);
     584                        this._referenceValid = true;
     585                        _referenceStatus++;
     586                    }
     587                    else
     588                    {
     589                        this._animationStepsTextBox.Text += "\n Reference Validation failed";
     590                        _referenceStatus++;
     591                        this._referenceValid = false;
     592                    }
     593
    638594                    break;
    639595                case 9:
    640                     referenceTimer.Stop();
    641                     referenceNumber++;
    642                    // status = 7;
    643                     dispatcherTimer.Start();
    644                     break;
    645             }
    646            
    647         }
    648         void transformTimer_Tick(object sender, EventArgs e)
    649         {
    650             switch (transformstatus)
     596                    _referenceTimer.Stop();
     597                    _referenceNumber++;
     598                    // status = 7;
     599                    _dispatcherTimer.Start();
     600                    break;
     601            }
     602
     603        }
     604       private void TransformTimerTickEventHandler(object sender, EventArgs e)
     605        {
     606            switch (_transformstatus)
    651607            {
    652608                case 1:
    653                     transformTimer.Interval = new TimeSpan(0, 0, 0, 5, 0);
    654                     this.textBox2.Text += "\n Make Transforms";
    655                     transformstatus++;
     609                    _transformTimer.Interval = new TimeSpan(0, 0, 0, 5, 0);
     610                    this._animationStepsTextBox.Text += "\n Make Transforms";
     611                    _transformstatus++;
    656612
    657613                    break;
    658614                case 2:
    659                     this.textBox2.Text+="\n -> Find Transform";
    660                     TreeViewItem tempTransform = (TreeViewItem)this.tempTransformCollection[transformNumber];
     615                    this._animationStepsTextBox.Text += "\n -> Find Transform";
     616                    TreeViewItem tempTransform = (TreeViewItem)this._tempTransformCollection[_transformNumber];
    661617                    tempTransform.BringIntoView();
    662                     this.animateFoundElements(tempTransform, tempTransform);
    663                     transformstatus++;
     618                    this.AnimateFoundElements(tempTransform, tempTransform);
     619                    _transformstatus++;
    664620                    break;
    665621
    666622                case 3:
    667                     this.textBox2.Text += "\n  ->execute Transform";
    668                    this.textBox2.Text+="\n"+ this.webService.Validator.MakeTransforms(signaturenumber, referenceNumber, transformNumber);
    669                    
    670                    
    671                     transformstatus++;
     623                    this._animationStepsTextBox.Text += "\n  ->execute Transform";
     624                    this._animationStepsTextBox.Text += "\n" + this.webService.Validator.MakeTransforms(_signaturenumber, _referenceNumber, _transformNumber);
     625                    _transformstatus++;
    672626                    break;
    673627
    674628                case 4:
    675                     if (this.transformNumber + 1 < this.transformCount)
    676                     {
    677                         this.transformNumber++;
    678                         transformstatus = 2;
     629                    if (this._transformNumber + 1 < this._transformCount)
     630                    {
     631                        this._transformNumber++;
     632                        _transformstatus = 2;
    679633                        slider1.Value++;
    680634                    }
    681635                    else
    682636                    {
    683                         transformTimer.Stop();
    684                         referenceTimer.Start();
    685                        
    686                         referenceStatus = 5;
    687                     }
    688                    
    689 
    690                     break;
    691 
    692 
    693 
    694 
    695             }
    696         }
    697         public void initializeTransformAnimation()
    698         {
    699             transformstatus = 1;
    700             transformNumber = 0;
    701             transformTimer.Start();
    702          
    703 
    704         }
    705 
    706         public void initializeReferenceAnimation()
    707         {
    708 
    709             referenceStatus = 1;
    710             referenceNumber = 0;
    711             referenceTimer.Start();
    712            
    713 
    714         }
    715         public void initializeAnimation()
    716         {
    717             status = 1;
    718             signaturenumber=0;
    719          
    720         }
    721         public void animateFoundElements(TreeViewItem item, TreeViewItem item2,int i)
     637                        _transformTimer.Stop();
     638                        _referenceTimer.Start();
     639
     640                        _referenceStatus = 5;
     641                    }
     642
     643
     644                    break;
     645
     646
     647
     648
     649            }
     650        }
     651        private void InitializeTransformAnimation()
     652        {
     653            _transformstatus = 1;
     654            _transformNumber = 0;
     655            _transformTimer.Start();
     656
     657
     658        }
     659
     660        private void InitializeReferenceAnimation()
     661        {
     662
     663            _referenceStatus = 1;
     664            _referenceNumber = 0;
     665            _referenceTimer.Start();
     666
     667
     668        }
     669        public void InitializeAnimation()
     670        {
     671            _status = 1;
     672            _signaturenumber = 0;
     673
     674        }
     675
     676        private void AnimateFoundElements(TreeViewItem item, TreeViewItem item2)
    722677        {
    723678            Storyboard storyBoard = new Storyboard();
    724             TextSizeAnimation = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
    725             TextSizeAnimationReverse = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
    726             TextSizeAnimation1 = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
    727             TextSizeAnimationReverse1 = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
    728             storyBoard.Children.Add(TextSizeAnimation);
    729             storyBoard.Children.Add(TextSizeAnimationReverse);
    730             storyBoard.Children[0].BeginTime = new TimeSpan(0, 0, i);
    731             storyBoard.Children[1].BeginTime = new TimeSpan(0, 0, i+2);
    732             storyBoard.Children.Add(TextSizeAnimation1);
    733             storyBoard.Children.Add(TextSizeAnimationReverse1);
    734             storyBoard.Children[2].BeginTime = new TimeSpan(0, 0, i);
    735             storyBoard.Children[3].BeginTime = new TimeSpan(0, 0, i+2);
    736             Storyboard.SetTarget(TextSizeAnimation, item);
    737             Storyboard.SetTarget(TextSizeAnimationReverse, item);
    738             Storyboard.SetTarget(TextSizeAnimation1, item2);
    739             Storyboard.SetTarget(TextSizeAnimationReverse1, item2);
    740             Storyboard.SetTargetProperty(TextSizeAnimation, new PropertyPath(TextBlock.FontSizeProperty));
    741             Storyboard.SetTargetProperty(TextSizeAnimationReverse, new PropertyPath(TextBlock.FontSizeProperty));
    742             Storyboard.SetTargetProperty(TextSizeAnimation1, new PropertyPath(TextBlock.FontSizeProperty));
    743             Storyboard.SetTargetProperty(TextSizeAnimationReverse1, new PropertyPath(TextBlock.FontSizeProperty));
     679            _textSizeAnimation = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
     680            _textSizeAnimationReverse = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
     681            _textSizeAnimation1 = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
     682            _textSizeAnimationReverse1 = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
     683            storyBoard.Children.Add(_textSizeAnimation);
     684            storyBoard.Children.Add(_textSizeAnimationReverse);
     685            storyBoard.Children[0].BeginTime = new TimeSpan(0, 0, 2);
     686            storyBoard.Children[1].BeginTime = new TimeSpan(0, 0, 4);
     687            storyBoard.Children.Add(_textSizeAnimation1);
     688            storyBoard.Children.Add(_textSizeAnimationReverse1);
     689            storyBoard.Children[2].BeginTime = new TimeSpan(0, 0, 2);
     690            storyBoard.Children[3].BeginTime = new TimeSpan(0, 0, 4);
     691            Storyboard.SetTarget(_textSizeAnimation, item);
     692            Storyboard.SetTarget(_textSizeAnimationReverse, item);
     693            Storyboard.SetTarget(_textSizeAnimation1, item2);
     694            Storyboard.SetTarget(_textSizeAnimationReverse1, item2);
     695            Storyboard.SetTargetProperty(_textSizeAnimation, new PropertyPath(TextBlock.FontSizeProperty));
     696            Storyboard.SetTargetProperty(_textSizeAnimationReverse, new PropertyPath(TextBlock.FontSizeProperty));
     697            Storyboard.SetTargetProperty(_textSizeAnimation1, new PropertyPath(TextBlock.FontSizeProperty));
     698            Storyboard.SetTargetProperty(_textSizeAnimationReverse1, new PropertyPath(TextBlock.FontSizeProperty));
    744699            storyBoard.Begin();
    745700            StackPanel panel = (StackPanel)item.Header;
    746701            TextBlock block = (TextBlock)panel.Children[0];
    747 //block.BeginAnimation(TextBlock.FontSizeProperty,TextSizeAnimation);
    748             //block.BeginAnimation(TextBlock.FontSizeProperty, TextSizeAnimationReverse);
    749 
    750         }
    751         public void animateFoundElements(TreeViewItem item, TreeViewItem item2)
    752         {
    753             Storyboard storyBoard = new Storyboard();
    754             TextSizeAnimation = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
    755             TextSizeAnimationReverse = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
    756             TextSizeAnimation1 = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
    757             TextSizeAnimationReverse1 = new DoubleAnimation(16, 11, TimeSpan.FromSeconds(1));
    758             storyBoard.Children.Add(TextSizeAnimation);
    759             storyBoard.Children.Add(TextSizeAnimationReverse);
    760             storyBoard.Children[0].BeginTime = new TimeSpan(0, 0, 2);
    761             storyBoard.Children[1].BeginTime = new TimeSpan(0, 0, 4);
    762             storyBoard.Children.Add(TextSizeAnimation1);
    763             storyBoard.Children.Add(TextSizeAnimationReverse1);
    764             storyBoard.Children[2].BeginTime = new TimeSpan(0, 0, 2);
    765             storyBoard.Children[3].BeginTime = new TimeSpan(0, 0, 4);
    766             Storyboard.SetTarget(TextSizeAnimation, item);
    767             Storyboard.SetTarget(TextSizeAnimationReverse, item);
    768             Storyboard.SetTarget(TextSizeAnimation1, item2);
    769             Storyboard.SetTarget(TextSizeAnimationReverse1, item2);
    770             Storyboard.SetTargetProperty(TextSizeAnimation, new PropertyPath(TextBlock.FontSizeProperty));
    771             Storyboard.SetTargetProperty(TextSizeAnimationReverse, new PropertyPath(TextBlock.FontSizeProperty));
    772             Storyboard.SetTargetProperty(TextSizeAnimation1, new PropertyPath(TextBlock.FontSizeProperty));
    773             Storyboard.SetTargetProperty(TextSizeAnimationReverse1, new PropertyPath(TextBlock.FontSizeProperty));
    774             storyBoard.Begin();
    775             StackPanel panel = (StackPanel)item.Header;
    776             TextBlock block = (TextBlock)panel.Children[0];
    777    
    778             storyBoard.Children.Clear();//block.BeginAnimation(TextBlock.FontSizeProperty,TextSizeAnimation);
    779             //block.BeginAnimation(TextBlock.FontSizeProperty, TextSizeAnimationReverse);
    780 
    781         }
    782 
    783 
    784         public TreeViewItem findSignatureItems(TreeViewItem item, string bezeichner)
    785         {
    786          
    787             StackPanel tempHeader1 = (StackPanel)item.Header;
    788            
    789            // string Bezeichner = getNameFromPanel(tempHeader1);
     702            storyBoard.Children.Clear();
     703
     704        }
     705
     706
     707        public TreeViewItem FindSignatureItems(TreeViewItem treeViewItem, string name)
     708        {
     709
     710            StackPanel tempHeader1 = (StackPanel)treeViewItem.Header;
     711
     712            // string Bezeichner = getNameFromPanel(tempHeader1);
    790713            TextBlock text1 = (TextBlock)tempHeader1.Children[1];
    791             if (text1.Text.Equals(bezeichner))
    792             {
    793                
    794                     item1 = item;
    795                 if(bezeichner.Equals("ds:Reference"))
    796                 {
    797                     this.tempReferenceCollection.Add(item);
    798                 }
    799                 if (bezeichner.Equals("ds:Transform"))
    800                 {
    801                     this.tempTransformCollection.Add(item);
    802 
    803                 }
    804                     this.signatureCollection.Add(item);
    805                     return item;
    806              
    807             }
    808             foreach (TreeViewItem childItem in item.Items)
    809             {
    810                 findSignatureItems(childItem, bezeichner);
     714            if (text1.Text.Equals(name))
     715            {
     716
     717                item1 = treeViewItem;
     718                if (name.Equals("ds:Reference"))
     719                {
     720                    this._tempReferenceCollection.Add(treeViewItem);
     721                }
     722                if (name.Equals("ds:Transform"))
     723                {
     724                    this._tempTransformCollection.Add(treeViewItem);
     725
     726                }
     727                this._signatureCollection.Add(treeViewItem);
     728                return treeViewItem;
     729
     730            }
     731            foreach (TreeViewItem childItem in treeViewItem.Items)
     732            {
     733                FindSignatureItems(childItem, name);
    811734
    812735            }
     
    818741            return null;
    819742        }
    820  
    821         public TreeViewItem findItem(TreeViewItem item, string bezeichner, int n)
    822         {
    823          
    824             StackPanel tempHeader1 = (StackPanel)item.Header;
    825             string Bezeichner = getNameFromPanel(tempHeader1);
    826             if (Bezeichner != null)
    827             {
    828                 if (Bezeichner.Equals(bezeichner))
    829                 {
    830                     item1 = item;
    831                    
    832                     return item;
    833                 }
    834             }
    835             foreach (TreeViewItem childItem in item.Items)
    836             {
    837                 findItem(childItem, bezeichner,4);
     743
     744        public TreeViewItem FindTreeViewItem(TreeViewItem treeViewItem, string name, int n)
     745        {
     746
     747            StackPanel tempHeader1 = (StackPanel)treeViewItem.Header;
     748            string panelName = GetNameFromPanel(tempHeader1);
     749            if (panelName != null)
     750            {
     751                if (panelName.Equals(name))
     752                {
     753                    item1 = treeViewItem;
     754
     755                    return treeViewItem;
     756                }
     757            }
     758            foreach (TreeViewItem childItem in treeViewItem.Items)
     759            {
     760                FindTreeViewItem(childItem, name, 4);
    838761            }
    839762            if (item1 != null)
     
    843766            return null;
    844767        }
    845         private string getNameFromPanel(StackPanel panel)
     768        private string GetNameFromPanel(StackPanel panel)
    846769        {
    847770            foreach (object obj in panel.Children)
     
    870793        }
    871794
    872         void Settings_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
     795       private void SettingsPropertyChangedEventHandler(object sender, System.ComponentModel.PropertyChangedEventArgs e)
    873796        {
    874797            if (e.PropertyName == "TargetFilename")
    875798            {
    876799                string filename = webService.WebServiceSettings.TargetFilename;
    877              
    878                 {
    879                     this.save( filename);
    880                 }
    881             }
    882         }
    883        
    884    
    885         public void refreshTextBlock(string animateBlock)
    886         {
    887             DoubleAnimation widthAnimation =new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
     800
     801                {
     802                    this.Save(filename);
     803                }
     804            }
     805        }
     806
     807
     808        private void AnimateTextBlock(string animatedBlockName)
     809        {
     810            DoubleAnimation widthAnimation = new DoubleAnimation(11, 16, TimeSpan.FromSeconds(1));
    888811            widthAnimation.AutoReverse = true;
    889812            this.textBlock1.Inlines.Clear();
    890             this.textBlock1.Inlines.Add(webMethod);
    891        
    892             this.textBlock1.Inlines.Add(methodVisibility);
    893             this.textBlock1.Inlines.Add(returnParam);
    894             this.textBlock1.Inlines.Add(methodName);
    895 
    896             openBrace = new Run("(");
    897             this.textBlock1.Inlines.Add(openBrace);
    898             komma = new Run(",");
    899 
    900             this.textBlock1.Inlines.Add(intparams);
    901             TextRange intParamsText= new TextRange(intparams.ContentStart,intparams.ContentEnd);
    902             TextRange stringParamsText= new TextRange(stringparams.ContentStart,stringparams.ContentEnd);
    903             TextRange doubleParamsText = new TextRange(doubleparams.ContentStart, doubleparams.ContentEnd);
     813            this.textBlock1.Inlines.Add(_webMethod);
     814            this.textBlock1.Inlines.Add(_methodVisibility);
     815            this.textBlock1.Inlines.Add(_returnParam);
     816            this.textBlock1.Inlines.Add(_methodName);
     817            _openBrace = new Run("(");
     818            this.textBlock1.Inlines.Add(_openBrace);
     819            _comma = new Run(",");
     820            this.textBlock1.Inlines.Add(_intParams);
     821            TextRange intParamsText = new TextRange(_intParams.ContentStart, _intParams.ContentEnd);
     822            TextRange stringParamsText = new TextRange(_stringParams.ContentStart, _stringParams.ContentEnd);
     823            TextRange doubleParamsText = new TextRange(_doubleParams.ContentStart, _doubleParams.ContentEnd);
    904824            if (!intParamsText.Text.Equals(""))
    905825            {
     
    907827                {
    908828                    Run nochnRun = new Run(",");
    909                         this.textBlock1.Inlines.Add(nochnRun);
    910                          intParamsText = new TextRange(intparams.ContentStart, intparams.ContentEnd);
    911                          stringParamsText = new TextRange(stringparams.ContentStart, stringparams.ContentEnd);
    912                         doubleParamsText = new TextRange(doubleparams.ContentStart, doubleparams.ContentEnd);
    913                    
    914                 }
    915                 else{
    916                     if(!doubleParamsText.Text.Equals(""))
    917                     {
    918                         this.textBlock1.Inlines.Add(komma);
    919                 }
    920                 }
    921               }
    922             this.textBlock1.Inlines.Add(stringparams);
     829                    this.textBlock1.Inlines.Add(nochnRun);
     830                    intParamsText = new TextRange(_intParams.ContentStart, _intParams.ContentEnd);
     831                    stringParamsText = new TextRange(_stringParams.ContentStart, _stringParams.ContentEnd);
     832                    doubleParamsText = new TextRange(_doubleParams.ContentStart, _doubleParams.ContentEnd);
     833
     834                }
     835                else
     836                {
     837                    if (!doubleParamsText.Text.Equals(""))
     838                    {
     839                        this.textBlock1.Inlines.Add(_comma);
     840                    }
     841                }
     842            }
     843            this.textBlock1.Inlines.Add(_stringParams);
    923844            if (!intParamsText.Text.Equals(""))
    924845            {
    925846                if (!(doubleParamsText.Text.Equals("")))
    926847                {
    927                     this.textBlock1.Inlines.Add(komma);
    928                 }
    929             }
    930             this.textBlock1.Inlines.Add(doubleparams);
    931             closeBrace = new Run(")");
    932             this.textBlock1.Inlines.Add(closeBrace);
    933            
    934             switch (animateBlock)
     848                    this.textBlock1.Inlines.Add(_comma);
     849                }
     850            }
     851            this.textBlock1.Inlines.Add(_doubleParams);
     852            _closeBrace = new Run(")");
     853            this.textBlock1.Inlines.Add(_closeBrace);
     854
     855            switch (animatedBlockName)
    935856            {
    936857                case "methodName":
    937                     methodName.BeginAnimation(Bold.FontSizeProperty, widthAnimation);
    938                     break;
    939                 case"returnParam":
    940                     returnParam.BeginAnimation(Run.FontSizeProperty, widthAnimation);
    941                     break;
    942                 case"int":
    943                     intparams.BeginAnimation(Bold.FontSizeProperty, widthAnimation);
    944                     break;
    945                 case"string":
    946                     stringparams.BeginAnimation(Bold.FontSizeProperty, widthAnimation);
    947                     break;
    948                 case"float":
    949                     doubleparams.BeginAnimation(Bold.FontSizeProperty, widthAnimation);
    950                     break;
    951             }
    952             textBlock1.Inlines.Add(openMethodBrace);
     858                    _methodName.BeginAnimation(Bold.FontSizeProperty, widthAnimation);
     859                    break;
     860                case "returnParam":
     861                    _returnParam.BeginAnimation(Run.FontSizeProperty, widthAnimation);
     862                    break;
     863                case "int":
     864                    _intParams.BeginAnimation(Bold.FontSizeProperty, widthAnimation);
     865                    break;
     866                case "string":
     867                    _stringParams.BeginAnimation(Bold.FontSizeProperty, widthAnimation);
     868                    break;
     869                case "float":
     870                    _doubleParams.BeginAnimation(Bold.FontSizeProperty, widthAnimation);
     871                    break;
     872            }
     873            textBlock1.Inlines.Add(_openMethodBrace);
    953874            textBlock2.Visibility = Visibility.Visible;
    954875
    955876        }
    956         public void visualReturnParam(string returnType)
     877        public void VisualReturnParam(string returnType)
    957878        {
    958879            Run returnParam = new Run(" " + returnType);
    959880            returnParam.Foreground = Brushes.Blue;
    960             this.returnParam = returnParam;
    961             this.refreshTextBlock("returnParam");
    962 
    963 
    964         }
    965         public void visualMethodName(string name)
    966         {
    967             Run visibility  = new Run("public");
     881            this._returnParam = returnParam;
     882            this.AnimateTextBlock("returnParam");
     883
     884
     885        }
     886        public void VisualMethodName(string name)
     887        {
     888            Run visibility = new Run("public");
    968889            visibility.Foreground = Brushes.Blue;
    969             Run methodName = new Run(" "+name);
    970             this.methodVisibility = visibility;
    971             this.methodName = methodName;
    972             this.refreshTextBlock("methodName");
    973            
    974         }
    975 
    976         public void visualParam(string type, int anzahl)
     890            Run methodName = new Run(" " + name);
     891            this._methodVisibility = visibility;
     892            this._methodName = methodName;
     893            this.AnimateTextBlock("methodName");
     894
     895        }
     896
     897        public void VisualParam(string parameterType, int parameterCount)
    977898        {
    978899            Bold bold = new Bold();
    979900            string paramName = "";
    980             for (int i = 1; i <= anzahl; i++)
    981             {
    982 
    983                 Run typRun = new Run(type);
     901            for (int i = 1; i <= parameterCount; i++)
     902            {
     903
     904                Run typRun = new Run(parameterType);
    984905                typRun.Foreground = Brushes.Blue;
    985                
    986                 if(type.Equals("int"))
     906
     907                if (parameterType.Equals("int"))
    987908                {
    988909                    paramName = "intparam";
    989910                }
    990                 if (type.Equals("string"))
     911                if (parameterType.Equals("string"))
    991912                {
    992913                    paramName = "stringparam";
    993914                }
    994                 if(type.Equals("double"))
     915                if (parameterType.Equals("double"))
    995916                {
    996917                    paramName = "doubleparam";
    997918                }
    998919                Run nameRun;
    999                 if (i < anzahl)
     920                if (i < parameterCount)
    1000921                {
    1001922                    nameRun = new Run(" " + paramName + "" + i + ",");
     
    1005926                bold.Inlines.Add(nameRun);
    1006927            }
    1007             switch (type)
    1008             {
    1009                 case "int": 
    1010                     intparams = bold;
    1011                     this.refreshTextBlock(type);
     928            switch (parameterType)
     929            {
     930                case "int":
     931                    _intParams = bold;
     932                    this.AnimateTextBlock(parameterType);
    1012933                    break;
    1013934                case "string":
    1014                     stringparams = bold;
    1015                     this.refreshTextBlock(type);
     935                    _stringParams = bold;
     936                    this.AnimateTextBlock(parameterType);
    1016937                    break;
    1017938                case "double":
    1018                     doubleparams = bold;
    1019                     this.refreshTextBlock(type);
    1020                     break;
    1021 
    1022 
    1023 
    1024 
    1025             }
    1026                
    1027            
    1028            
    1029         }
    1030         public void save(string fileName)
     939                    _doubleParams = bold;
     940                    this.AnimateTextBlock(parameterType);
     941                    break;
     942
     943            }
     944
     945
     946
     947        }
     948        public void Save(string fileName)
    1031949        {
    1032950            if (this.webService.ServiceDescription != null)
     
    1039957        }
    1040958
    1041         private void button1_Click(object sender, RoutedEventArgs e)
    1042         {
    1043            
    1044 
    1045         }
    1046         public void showWsdl(string wsdl)
    1047         {
    1048             this.theWsdl = wsdl;
    1049         }
    1050         public void compile()
    1051         {
    1052             TextRange richTextBoxText = new TextRange(this.richTextBox1.Document.ContentStart, this.richTextBox1.Document.ContentEnd);
    1053 
     959        public void ShowWsdl(string wsdl)
     960        {
     961            this._webServiceDescription = wsdl;
     962        }
     963        public string GetStringToCompile()
     964        {
     965            TextRange methodCode = new TextRange(this.richTextBox1.Document.ContentStart, this.richTextBox1.Document.ContentEnd);
    1054966            TextRange endBrace = new TextRange(this.textBlock2.Inlines.FirstInline.ContentStart, this.textBlock2.Inlines.FirstInline.ContentEnd);
    1055             string header = copyContentToString(this.textBlock1);
    1056          
    1057             string codeToCompile = header + richTextBoxText.Text + endBrace.Text;
    1058             webService.Compile(codeToCompile);
    1059             this.webService.WebServiceSettings.Compiled = true;
    1060         }
    1061         public string copyContentToString(TextBlock block)
     967            string header = CopyTextBlockContentToString(this.textBlock1);
     968
     969            string codeToCompile = header + methodCode.Text + endBrace.Text;
     970            return codeToCompile;
     971        }
     972        public string CopyTextBlockContentToString(TextBlock block)
    1062973        {
    1063974            string blockString = "";
     
    1065976            {
    1066977                TextRange inlineRange = new TextRange(inline.ContentStart, inline.ContentEnd);
    1067                blockString += inlineRange.Text;
     978                blockString += inlineRange.Text;
    1068979            }
    1069980            return blockString;
    1070981        }
    1071         private void compileButton_Click(object sender, RoutedEventArgs e)
    1072         {
     982
     983        private void richTextBox1_TextChanged(object sender, TextChangedEventArgs e)
     984        {
     985            TextRange code = new TextRange(this.richTextBox1.Document.ContentStart, this.richTextBox1.Document.ContentEnd);
     986            if (webService != null)
     987            {
     988                this.webService.WebServiceSettings.UserCode = code.Text;
     989            }
     990
     991
     992
     993        }
     994
     995
     996        public AnimationController getAnimationController()
     997        {
     998            return this._animationController;
     999        }
     1000
     1001
     1002
     1003
     1004
     1005
     1006        private void button1_Click_1(object sender, RoutedEventArgs e)
     1007        {
     1008            if (this.webService.CheckSignature() == true)
     1009            {
     1010
     1011            }
     1012            else
     1013            {
     1014            }
     1015        }
     1016
     1017        private void playButton_Click(object sender, RoutedEventArgs e)
     1018        {
     1019
     1020            this.FindSignatureItems((TreeViewItem)this.soapInput.Items[0], "ds:Signature");
     1021            if (this._signatureCollection.Count > 0)
     1022            {
     1023                InitializeAnimation();
     1024                _dispatcherTimer.Start();
     1025            }
     1026            else
     1027            {// calculateBox.Text = "There is no signature in the message";
     1028            }
     1029        }
     1030
     1031        private void resetButton_Click(object sender, RoutedEventArgs e)
     1032        {
     1033            decryptionAnimation = new DecryptionAnimation(this);
     1034            this.button1.IsEnabled = true;
     1035            namespacesTable.Clear();
     1036            this._signatureCollection.Clear();
     1037            this._tempReferenceCollection.Clear();
     1038            this._animationStepsTextBox.Clear();
     1039
     1040            _dispatcherTimer.Stop();
     1041            _animationController.ControllerTimer.Stop();
     1042            _decryptionTimer.Stop();
     1043       
     1044
     1045            this.ResetSoapInputItem();
     1046
     1047            this._animationStepsTextBox.Clear();
     1048         
     1049          //  this.soapInput = new TreeViewItem();
     1050       
     1051           
     1052        }
     1053
     1054        private void slider1_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
     1055        {
     1056            this._actualSignatureNumber = 1;
     1057            //  status = (int)this.slider1.Value+1;
     1058        }
     1059
     1060        private void button1_Click_2(object sender, RoutedEventArgs e)
     1061        {
     1062
     1063            this._animationController.GetTotalSecurityElementsNumber();
     1064
     1065            decryptionAnimation.initializeAnimation();
     1066            decryptionAnimation.fillEncryptedDataTreeviewElements();
     1067
     1068        }
     1069        public DispatcherTimer getSignatureTimer()
     1070        {
     1071            return this._dispatcherTimer;
     1072        }
     1073
     1074        private void button1_Click_3(object sender, RoutedEventArgs e)
     1075        {
     1076            this._animationController.InitializeAnimation();
     1077            this.button1.IsEnabled = false;
     1078
     1079        }
     1080        #endregion
     1081
     1082        private void CompileButtonClickEventHandler(object sender, RoutedEventArgs e)
     1083        {
     1084             
    10731085            this.textBox3.Clear();
    1074             this.compile();
    1075         }
    1076 
    1077 
    1078         public StackPanel insertNamespace(ref StackPanel panel, string nspace)
    1079         {
    1080             if (!namespacesTable.ContainsValue(nspace))
    1081             {
    1082                 namespacesTable.Add(nspace, nspace);
    1083                 TextBlock xmlns = new TextBlock();
    1084                 xmlns.Text = " xmlns=";
    1085                 SolidColorBrush valueBrush = new SolidColorBrush(Colors.Blue);
    1086                 TextBlock value = new TextBlock();
    1087                 value.Text = "\"" + nspace + "\"";
    1088                 value.Foreground = valueBrush;
    1089                 panel.Children.Add(xmlns);
    1090                 panel.Children.Add(value);
    1091             }
    1092             return panel;
    1093         }
    1094 
    1095         //public StackPanel insertAttributes(ref StackPanel panel, XmlAttributeCollection attributes)
    1096         //{
    1097         //    foreach (XmlAttribute tempAttribute in attributes)
    1098         //    {
    1099         //        if (!tempAttribute.Name.Contains("xmlns"))
    1100         //        {
    1101         //            TextBlock name = new TextBlock();
    1102         //            name.Text = " " + tempAttribute.Name;
    1103 
    1104 
    1105         //            TextBlock value = new TextBlock();
    1106         //            value.Text = " =\"" + tempAttribute.Value + "\"";
    1107         //            SolidColorBrush valueBrush = new SolidColorBrush(Colors.Blue);
    1108         //            value.Foreground = valueBrush;
    1109 
    1110         //            panel.Children.Insert(1, name);
    1111         //            panel.Children.Insert(2, value);
    1112 
    1113         //        }
    1114         //        else
    1115         //        {
    1116         //            if (!namespacesTable.ContainsValue(tempAttribute.Value))
    1117         //            {
    1118         //                namespacesTable.Add(tempAttribute.Value, tempAttribute.Value);
    1119         //                TextBlock name = new TextBlock();
    1120         //                name.Text = " " + tempAttribute.Name;
    1121 
    1122 
    1123         //                TextBlock value = new TextBlock();
    1124         //                value.Text = " =\"" + tempAttribute.Value + "\"";
    1125         //                SolidColorBrush valueBrush = new SolidColorBrush(Colors.Blue);
    1126         //                value.Foreground = valueBrush;
    1127 
    1128         //                panel.Children.Insert(1, name);
    1129         //                panel.Children.Insert(2, value);
    1130         //            }
    1131         //        }
    1132         //    }
    1133         //    return panel;
    1134 
    1135 
    1136 
    1137         //}
    1138      
    1139 
    1140         private void richTextBox1_TextChanged(object sender, TextChangedEventArgs e)
    1141         {TextRange code = new TextRange(this.richTextBox1.Document.ContentStart,this.richTextBox1.Document.ContentEnd);
    1142         if (webService != null)
    1143         {
    1144             this.webService.WebServiceSettings.UserCode = code.Text;
    1145         }
    1146 
    1147 
    1148          
    1149         }
    1150 
    1151 
    1152         public AnimationController getAnimationController()
    1153         {
    1154             return this.animationController;
    1155         }
    1156 
    1157 
    1158        
    1159 
    1160  
    1161 
    1162         private void button1_Click_1(object sender, RoutedEventArgs e)
    1163         {
    1164             if (this.webService.CheckSignature()==true)
    1165             {
    1166                
    1167             }
    1168             else
    1169             {
    1170             }
    1171         }
    1172 
    1173         private void playButton_Click(object sender, RoutedEventArgs e)
    1174         {
    1175        
    1176             this.findSignatureItems((TreeViewItem)this.soapInput.Items[0], "ds:Signature");
    1177             if (this.signatureCollection.Count > 0)
    1178             {
    1179                 initializeAnimation();
    1180                 dispatcherTimer.Start();
    1181             }
    1182             else {// calculateBox.Text = "There is no signature in the message";
    1183             }
    1184         }
    1185 
    1186         private void resetButton_Click(object sender, RoutedEventArgs e)
    1187         {
    1188             namespacesTable.Clear();
    1189             this.signatureCollection.Clear();
    1190             this.tempReferenceCollection.Clear();
    1191             this.textBox2.Clear();
    1192      
    1193             dispatcherTimer.Stop();
    1194             animationController.ControllerTimer.Stop();
    1195             decryptionTimer.Stop();
    1196             this.textBox2.Clear();
    1197            
    1198             this.initializeAnimation();
    1199         }
    1200 
    1201         private void slider1_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
    1202         {
    1203             this.actualSignatureNumber = 1;
    1204           //  status = (int)this.slider1.Value+1;
    1205         }
    1206 
    1207         private void button1_Click_2(object sender, RoutedEventArgs e)
    1208         {
    1209            
    1210             this.animationController.GetTotalSecurityElementsNumber();
    1211            
    1212             decAnimation.initializeAnimation();
    1213             decAnimation.fillEncryptedDataTreeviewElements();
    1214 
    1215         }
    1216         public DispatcherTimer getSignatureTimer()
    1217         {
    1218             return this.dispatcherTimer;
    1219         }
    1220 
    1221         private void button1_Click_3(object sender, RoutedEventArgs e)
    1222         {
    1223             this.animationController.InitializeAnimation();
    1224             this.button1.IsEnabled = false;
    1225          
    1226         }
    1227        
    1228     }
     1086            this.webService.Compile(this.GetStringToCompile());
     1087        }
     1088
     1089        }
     1090
     1091   
    12291092}
Note: See TracChangeset for help on using the changeset viewer.