source: trunk/CrypPluginBase/Editor/IEditor.cs @ 1994

Last change on this file since 1994 was 1994, checked in by Sven Rech, 11 years ago
  • removed tabs from another editor
  • fixed a lot of the tabbing stuff

this was a lot of work

File size: 2.6 KB
Line 
1/*
2   Copyright 2008 Martin Saternus, University of Duisburg-Essen
3
4   Licensed under the Apache License, Version 2.0 (the "License");
5   you may not use this file except in compliance with the License.
6   You may obtain a copy of the License at
7
8       http://www.apache.org/licenses/LICENSE-2.0
9
10   Unless required by applicable law or agreed to in writing, software
11   distributed under the License is distributed on an "AS IS" BASIS,
12   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   See the License for the specific language governing permissions and
14   limitations under the License.
15*/
16
17using System;
18using Cryptool.UiPluginBase;
19using System.Collections.Generic;
20
21namespace Cryptool.PluginBase.Editor
22{
23    public interface IEditor : IPlugin, IApplication
24    {
25        event ChangeDisplayLevelHandler OnChangeDisplayLevel;
26        event SelectedPluginChangedHandler OnSelectedPluginChanged;
27        event ProjectTitleChangedHandler OnProjectTitleChanged;
28        event OpenProjectFileHandler OnOpenProjectFile;
29        event EditorSpecificPluginsChanged OnEditorSpecificPluginsChanged;
30        event OpenTabHandler OnOpenTab;
31
32        void New();
33        void Open(string fileName);
34        void Save(string fileName);
35
36        void Add(Type type);
37        void AddEditorSpecific(EditorSpecificPluginInfo espi);
38        void DeleteEditorSpecific(EditorSpecificPluginInfo espi);
39        void Undo();
40        void Redo();
41       
42        /// <summary>
43        /// Temp. extension to show help page if the tutorial-pdf-file is not available and
44        /// the "?-Button" in CrypWin is pressed.
45        /// </summary>
46        void ShowHelp();
47
48        /// <summary>
49        /// Used to display a plugin specific description button in settings pane.
50        /// </summary>
51        void ShowSelectedPluginDescription();
52
53        void Active();
54
55        bool CanUndo { get; }
56        bool CanRedo { get; }
57        bool CanExecute { get; }
58        bool CanStop { get; }
59        bool HasChanges { get; }
60
61        /// <summary>
62        /// Gets or sets the display level. Can be reverted using the OnChangeDisplayLevel event.
63        /// </summary>
64        /// <value>The display level.</value>
65        DisplayLevel DisplayLevel { get; set; }
66
67        /// <summary>
68        /// Gets the editor specific plugins, e.g. connector plugins to build subworkspace and the
69        /// currently available subworkspaces.
70        /// </summary>
71        /// <value>The editor specific plugins.</value>       
72        List<EditorSpecificPluginInfo> EditorSpecificPlugins { get; }
73    }
74}
Note: See TracBrowser for help on using the repository browser.