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

Last change on this file since 2426 was 2426, checked in by sauer, 11 years ago

Wizard: sample input

File size: 2.8 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 SelectedPluginChangedHandler OnSelectedPluginChanged;
26        event ProjectTitleChangedHandler OnProjectTitleChanged;
27        event OpenProjectFileHandler OnOpenProjectFile;
28        event EditorSpecificPluginsChanged OnEditorSpecificPluginsChanged;
29        event OpenTabHandler OnOpenTab;
30
31        void New();
32        void Open(string fileName);
33        void Save(string fileName);
34
35        void Add(Type type);
36        void AddEditorSpecific(EditorSpecificPluginInfo espi);
37        void DeleteEditorSpecific(EditorSpecificPluginInfo espi);
38        void Undo();
39        void Redo();
40        void Cut();
41        void Copy();
42        void Paste();
43        void Remove();
44        void Print();
45       
46        /// <summary>
47        /// Temp. extension to show help page if the tutorial-pdf-file is not available and
48        /// the "?-Button" in CrypWin is pressed.
49        /// </summary>
50        void ShowHelp();
51
52        /// <summary>
53        /// Used to display a plugin specific description button in settings pane.
54        /// </summary>
55        void ShowSelectedPluginDescription();
56
57        void Active();
58
59        bool CanUndo { get; }
60        bool CanRedo { get; }
61        bool CanCut { get; }
62        bool CanCopy { get; }
63        bool CanPaste { get; }
64        bool CanRemove { get; }
65        bool CanExecute { get; }
66        bool CanStop { get; }
67        bool HasChanges { get; }
68        bool CanPrint { get; }
69
70        string SamplesDir { set; }
71
72        /// <summary>
73        /// Gets the editor specific plugins, e.g. connector plugins to build subworkspace and the
74        /// currently available subworkspaces.
75        /// </summary>
76        /// <value>The editor specific plugins.</value>       
77        List<EditorSpecificPluginInfo> EditorSpecificPlugins { get; }
78
79        /// <summary>
80        /// Gets or sets the readOnly propability of an editor i.e. if something on the workspace can be changed.
81        /// </summary>
82        bool ReadOnly { get; set; }
83    }
84}
Note: See TracBrowser for help on using the repository browser.