source: trunk/CrypTool/MainWindow.xaml.cs @ 1422

Last change on this file since 1422 was 1422, checked in by saternus, 12 years ago

Add files

File size: 1.7 KB
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using System.Windows;
6using System.Windows.Controls;
7using System.Windows.Data;
8using System.Windows.Documents;
9using System.Windows.Input;
10using System.Windows.Media;
11using System.Windows.Media.Imaging;
12using System.Windows.Navigation;
13using System.Windows.Shapes;
14using Cryptool.PluginBase;
15
16namespace CrypTool
17{
18    /// <summary>
19    /// Interaction logic for MainWindow.xaml
20    /// </summary>
21    public partial class MainWindow : Window
22    {
23        private Dictionary<string, List<Type>> currentPlugins = new Dictionary<string, List<Type>>();
24
25       
26
27       
28        public Dictionary<string, Type> LoadedTypes { get; set; }
29       
30
31
32
33        public MainWindow()
34        {
35            InitializeComponent();
36        }
37
38
39
40
41        private void LoadPlugins()
42        {
43            foreach (Type pluginType in this.LoadedTypes.Values)
44            {
45                if (pluginType.GetEditorSpecificPluginAttribute() != null)
46                    continue;
47               
48                foreach (string interfaceName in PluginExtension.Interfaces)
49                {
50                    if (pluginType.GetInterface(interfaceName) != null)
51                    {
52                        if (!this.currentPlugins.ContainsKey(interfaceName))
53                            this.currentPlugins.Add(interfaceName, new List<Type>());
54                        this.currentPlugins[interfaceName].Add(pluginType);
55
56
57
58                    }
59                }
60            }
61
62
63        }
64
65        private void Window_Loaded(object sender, RoutedEventArgs e)
66        {
67            LoadPlugins();
68        }
69
70    }
71}
Note: See TracBrowser for help on using the repository browser.