source: trunk/CrypPlugins/ToString/ToString.cs @ 2263

Last change on this file since 2263 was 493, checked in by Matthäus Wander, 12 years ago

added progress to ToString plugin

File size: 2.8 KB
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using Cryptool.PluginBase.IO;
6using Cryptool.PluginBase;
7using System.Windows.Controls;
8using System.ComponentModel;
9using Cryptool.PluginBase.Miscellaneous;
10
11namespace Cryptool.Plugins.ToString
12{
13  [Author("Thomas Schmid", "thomas.schmid@cryptool.org", "Uni Siegen", "http://www.uni-siegen.de")]
14  [PluginInfo(false, "ToString", "Input values To String.", null, "ToString/icon.png")]
15  public class ToString : IThroughput
16  {
17    # region private variables
18      private object input;
19    private ToStringSettings settings = new ToStringSettings();
20    # endregion private variables
21
22    # region public interface
23    [PropertyInfo(Direction.InputData, "Input", "Input", "", true, false, DisplayLevel.Beginner, QuickWatchFormat.Text, null)]
24    public object Input
25    {
26      get { return input; }
27      set
28      {
29        input = value;
30        OnPropertyChanged("Input");
31        OnPropertyChanged("Output");
32      }
33    }
34
35    [PropertyInfo(Direction.OutputData, "Output", "Output.", "", true, false, DisplayLevel.Beginner, QuickWatchFormat.Text, null)]
36    public string Output
37    {
38      get 
39      {
40        if (input != null)
41          return input.ToString();
42        else
43          return null;
44      }
45      set { } 
46    }
47    # endregion public interface
48
49    #region IPlugin Members
50
51#pragma warning disable 67
52                public event StatusChangedEventHandler OnPluginStatusChanged;
53                public event GuiLogNotificationEventHandler OnGuiLogNotificationOccured;
54#pragma warning restore
55   
56    public ISettings Settings
57    {
58      get { return settings; }
59    }
60
61    public UserControl Presentation
62    {
63      get { return null; }
64    }
65
66    public UserControl QuickWatchPresentation
67    {
68      get { return null; }
69    }
70
71    public void PreExecution()
72    {
73    }
74
75    public void Execute()
76    {
77        OnProgressChanged(1, 1);
78    }
79
80    public void PostExecution()
81    {
82    }
83
84    public void Pause()
85    {
86    }
87
88    public void Stop()
89    {
90    }
91
92    public void Initialize()
93    {
94    }
95
96    public void Dispose()
97    {
98    }
99
100    #endregion
101
102    #region INotifyPropertyChanged Members
103
104    public event PropertyChangedEventHandler PropertyChanged;
105
106    protected void OnPropertyChanged(string name)
107    {
108      EventsHelper.PropertyChanged(PropertyChanged, this, new PropertyChangedEventArgs(name));
109    }
110
111    public event PluginProgressChangedEventHandler OnPluginProgressChanged;
112
113    private void OnProgressChanged(double value, double max)
114    {
115        EventsHelper.ProgressChanged(OnPluginProgressChanged, this, new PluginProgressEventArgs(value, max));
116    }
117
118    #endregion
119  }
120}
Note: See TracBrowser for help on using the repository browser.