Free cookie consent management tool by TermsFeed Policy Generator

source: trunk/sources/HeuristicLab.ExtLibs/HeuristicLab.Netron/3.0.2672.12446/Netron.Diagramming.Core-3.0.2672.12446/Tools/HotKeys.cs @ 2768

Last change on this file since 2768 was 2768, checked in by mkommend, 14 years ago

added solution folders and sources for the netron library (ticket #867)

File size: 15.2 KB
Line 
1using System;
2using System.Collections.Generic;
3using System.Text;
4using System.Diagnostics;
5
6namespace Netron.Diagramming.Core
7{
8    /// <summary>
9    /// This class implementing the <see cref="IKeyboardListener"/> collects all the hotkeys.
10    /// </summary>
11    class HotKeys : IKeyboardListener
12    {
13        // ------------------------------------------------------------------
14        /// <summary>
15        /// Specifies if the Control key is pressed.  This is set in the
16        /// KeyPress and KeyUp methods.
17        /// </summary>
18        // ------------------------------------------------------------------
19        bool controlIsPressed = false;
20
21        private IController mController;
22
23        public IController Controller
24        {
25            get { return mController; }
26        }
27
28        public HotKeys(IController controller)
29        {
30            mController = controller;
31        }
32
33        public void KeyUp(System.Windows.Forms.KeyEventArgs e)
34        {
35            ICommand cmd = null;
36            switch (e.KeyCode)
37            {
38                case System.Windows.Forms.Keys.A:
39                    if (controlIsPressed)
40                    {
41                        this.Controller.SelectAll();
42                    }
43                    break;
44                case System.Windows.Forms.Keys.Add:
45                    break;
46                case System.Windows.Forms.Keys.Alt:
47                    break;
48
49                case System.Windows.Forms.Keys.Attn:
50                    break;
51                case System.Windows.Forms.Keys.B:
52                    break;
53                case System.Windows.Forms.Keys.Back:
54                    break;
55                case System.Windows.Forms.Keys.BrowserBack:
56                    break;
57                case System.Windows.Forms.Keys.BrowserFavorites:
58                    break;
59                case System.Windows.Forms.Keys.BrowserForward:
60                    break;
61                case System.Windows.Forms.Keys.BrowserHome:
62                    break;
63                case System.Windows.Forms.Keys.BrowserRefresh:
64                    break;
65                case System.Windows.Forms.Keys.BrowserSearch:
66                    break;
67                case System.Windows.Forms.Keys.BrowserStop:
68                    break;
69                case System.Windows.Forms.Keys.C:
70                    if (controlIsPressed)
71                    {
72                        this.Controller.ActivateTool(
73                            ControllerBase.CopyToolName);
74                    }
75                    break;
76                case System.Windows.Forms.Keys.Cancel:
77                    break;
78                case System.Windows.Forms.Keys.Capital:
79                    break;
80
81                case System.Windows.Forms.Keys.Clear:
82                    break;
83                case System.Windows.Forms.Keys.Control:
84                    break;
85                case System.Windows.Forms.Keys.ControlKey:
86                    break;
87                case System.Windows.Forms.Keys.Crsel:
88                    break;
89                case System.Windows.Forms.Keys.D:
90                    break;
91                case System.Windows.Forms.Keys.D0:
92                    break;
93                case System.Windows.Forms.Keys.D1:
94                    break;
95                case System.Windows.Forms.Keys.D2:
96                    break;
97                case System.Windows.Forms.Keys.D3:
98                    break;
99                case System.Windows.Forms.Keys.D4:
100                    break;
101                case System.Windows.Forms.Keys.D5:
102                    break;
103                case System.Windows.Forms.Keys.D6:
104                    break;
105                case System.Windows.Forms.Keys.D7:
106                    break;
107                case System.Windows.Forms.Keys.D8:
108                    break;
109                case System.Windows.Forms.Keys.D9:
110                    break;
111                case System.Windows.Forms.Keys.Decimal:
112                    break;
113                case System.Windows.Forms.Keys.Delete:
114                    // The following code was moved to the DeleteTool.
115                    //cmd = new DeleteCommand(
116                    //    this.mController,
117                    //    Selection.SelectedItems.Copy());
118                    //this.Controller.UndoManager.AddUndoCommand(cmd);
119                    //cmd.Redo();
120
121                    Controller.ActivateTool(ControllerBase.DeleteToolName);
122                    break;
123                case System.Windows.Forms.Keys.Divide:
124                    break;
125                case System.Windows.Forms.Keys.Down:
126                    break;
127                case System.Windows.Forms.Keys.E:
128                    break;
129                case System.Windows.Forms.Keys.End:
130                    break;
131                case System.Windows.Forms.Keys.Enter:
132                    break;
133                case System.Windows.Forms.Keys.EraseEof:
134                    break;
135                case System.Windows.Forms.Keys.Escape:
136                    break;
137                case System.Windows.Forms.Keys.Execute:
138                    break;
139
140                case System.Windows.Forms.Keys.F:
141                    break;
142                case System.Windows.Forms.Keys.F1:
143                    break;
144                case System.Windows.Forms.Keys.F10:
145                    break;
146                case System.Windows.Forms.Keys.F11:
147                    break;
148                case System.Windows.Forms.Keys.F12:
149                    break;
150                case System.Windows.Forms.Keys.F13:
151                    break;
152                case System.Windows.Forms.Keys.F14:
153                    break;
154                case System.Windows.Forms.Keys.F15:
155                    break;
156                case System.Windows.Forms.Keys.F16:
157                    break;
158                case System.Windows.Forms.Keys.F17:
159                    break;
160                case System.Windows.Forms.Keys.F18:
161                    break;
162                case System.Windows.Forms.Keys.F19:
163                    break;
164                case System.Windows.Forms.Keys.F2:
165                    break;
166                case System.Windows.Forms.Keys.F20:
167                    break;
168                case System.Windows.Forms.Keys.F21:
169                    break;
170                case System.Windows.Forms.Keys.F22:
171                    break;
172                case System.Windows.Forms.Keys.F23:
173                    break;
174                case System.Windows.Forms.Keys.F24:
175                    break;
176                case System.Windows.Forms.Keys.F3:
177                    break;
178                case System.Windows.Forms.Keys.F4:
179                    break;
180                case System.Windows.Forms.Keys.F5:
181                    break;
182                case System.Windows.Forms.Keys.F6:
183                    break;
184                case System.Windows.Forms.Keys.F7:
185                    break;
186                case System.Windows.Forms.Keys.F8:
187                    break;
188                case System.Windows.Forms.Keys.F9:
189                    break;
190                case System.Windows.Forms.Keys.FinalMode:
191                    break;
192                case System.Windows.Forms.Keys.G:
193                    break;
194                case System.Windows.Forms.Keys.H:
195                    break;
196
197
198
199                case System.Windows.Forms.Keys.Help:
200                    break;
201                case System.Windows.Forms.Keys.Home:
202                    break;
203                case System.Windows.Forms.Keys.I:
204                    break;
205
206                case System.Windows.Forms.Keys.Insert:
207                    break;
208                case System.Windows.Forms.Keys.J:
209                    break;
210
211                case System.Windows.Forms.Keys.K:
212                    break;
213
214                case System.Windows.Forms.Keys.KeyCode:
215                    break;
216                case System.Windows.Forms.Keys.L:
217                    break;
218                case System.Windows.Forms.Keys.LButton:
219                    break;
220                case System.Windows.Forms.Keys.LControlKey:
221                    break;
222                case System.Windows.Forms.Keys.LMenu:
223                    break;
224                case System.Windows.Forms.Keys.LShiftKey:
225                    break;
226                case System.Windows.Forms.Keys.LWin:
227                    break;
228
229                case System.Windows.Forms.Keys.Left:
230                    break;
231                case System.Windows.Forms.Keys.LineFeed:
232                    break;
233                case System.Windows.Forms.Keys.M:
234                    break;
235                case System.Windows.Forms.Keys.MButton:
236                    break;
237
238                case System.Windows.Forms.Keys.Menu:
239                    break;
240                case System.Windows.Forms.Keys.Modifiers:
241                    break;
242                case System.Windows.Forms.Keys.Multiply:
243                    break;
244                case System.Windows.Forms.Keys.N:
245                    if (controlIsPressed)
246                        this.Controller.ParentControl.NewDocument();
247                    break;
248                case System.Windows.Forms.Keys.Next:
249                    break;
250                case System.Windows.Forms.Keys.NoName:
251                    break;
252                case System.Windows.Forms.Keys.None:
253                    break;
254                case System.Windows.Forms.Keys.NumLock:
255                    break;
256                case System.Windows.Forms.Keys.NumPad0:
257                    break;
258                case System.Windows.Forms.Keys.NumPad1:
259
260                    break;
261                case System.Windows.Forms.Keys.NumPad2:
262                    break;
263                case System.Windows.Forms.Keys.NumPad3:
264                    break;
265                case System.Windows.Forms.Keys.NumPad4:
266                    break;
267                case System.Windows.Forms.Keys.NumPad5:
268                    break;
269                case System.Windows.Forms.Keys.NumPad6:
270                    break;
271                case System.Windows.Forms.Keys.NumPad7:
272                    break;
273                case System.Windows.Forms.Keys.NumPad8:
274                    break;
275                case System.Windows.Forms.Keys.NumPad9:
276                    break;
277                case System.Windows.Forms.Keys.O:
278                    this.Controller.ParentControl.Open();
279                    break;
280
281
282                case System.Windows.Forms.Keys.Oemcomma:
283                    break;
284                case System.Windows.Forms.Keys.Oemplus:
285                    break;
286
287                case System.Windows.Forms.Keys.P:
288
289                    break;
290
291                case System.Windows.Forms.Keys.Packet:
292                    break;
293
294                case System.Windows.Forms.Keys.PageUp:
295                    break;
296                case System.Windows.Forms.Keys.Pause:
297                    break;
298                case System.Windows.Forms.Keys.Play:
299                    break;
300                case System.Windows.Forms.Keys.Print:
301                    break;
302                case System.Windows.Forms.Keys.PrintScreen:
303                    break;
304
305                case System.Windows.Forms.Keys.ProcessKey:
306                    break;
307                case System.Windows.Forms.Keys.Q:
308                    break;
309                case System.Windows.Forms.Keys.R:
310                    break;
311                case System.Windows.Forms.Keys.RButton:
312                    break;
313                case System.Windows.Forms.Keys.RControlKey:
314                    break;
315                case System.Windows.Forms.Keys.RMenu:
316                    break;
317                case System.Windows.Forms.Keys.RShiftKey:
318                    break;
319                case System.Windows.Forms.Keys.RWin:
320                    break;
321
322                case System.Windows.Forms.Keys.Right:
323                    break;
324                case System.Windows.Forms.Keys.S:
325                    this.Controller.ParentControl.Save();
326                    break;
327                case System.Windows.Forms.Keys.Scroll:
328                    break;
329                case System.Windows.Forms.Keys.Select:
330                    break;
331                case System.Windows.Forms.Keys.SelectMedia:
332                    break;
333                case System.Windows.Forms.Keys.Separator:
334                    break;
335                case System.Windows.Forms.Keys.Shift:
336                    break;
337                case System.Windows.Forms.Keys.ShiftKey:
338                    break;
339                case System.Windows.Forms.Keys.Sleep:
340                    break;
341
342                case System.Windows.Forms.Keys.Space:
343                    break;
344                case System.Windows.Forms.Keys.Subtract:
345                    break;
346                case System.Windows.Forms.Keys.T:
347                    break;
348                case System.Windows.Forms.Keys.Tab:
349                    break;
350                case System.Windows.Forms.Keys.U:
351                    break;
352                case System.Windows.Forms.Keys.Up:
353                    break;
354                case System.Windows.Forms.Keys.V:
355                    if (controlIsPressed)
356                    {
357                        this.Controller.ActivateTool(
358                            ControllerBase.PasteToolName);
359                    }
360                    break;
361                case System.Windows.Forms.Keys.VolumeDown:
362                    break;
363                case System.Windows.Forms.Keys.VolumeMute:
364                    break;
365                case System.Windows.Forms.Keys.VolumeUp:
366                    break;
367                case System.Windows.Forms.Keys.W:
368                    break;
369                case System.Windows.Forms.Keys.X:
370                    if (controlIsPressed)
371                    {
372                        this.Controller.ActivateTool(
373                            ControllerBase.CutToolName);
374                    }
375                    break;
376
377                case System.Windows.Forms.Keys.Y:
378                    if (controlIsPressed)
379                    {
380                        if (this.Controller.UndoManager.CanRedo())
381                        {
382                            this.Controller.Redo();
383                        }
384                    }
385                    break;
386                case System.Windows.Forms.Keys.Z:
387                    if (controlIsPressed)
388                    {
389                        if (this.Controller.UndoManager.CanUndo())
390                        {
391                            this.Controller.Undo();
392                        }
393                    }
394                    break;
395                case System.Windows.Forms.Keys.Zoom:
396                    break;
397                default:
398                    break;
399            }
400
401            this.controlIsPressed = e.Control;
402        }
403
404        public void KeyDown(System.Windows.Forms.KeyEventArgs e)
405        {
406            this.controlIsPressed = e.Control;
407        }
408
409        public void KeyPress(System.Windows.Forms.KeyPressEventArgs e)
410        {
411           
412        }
413    }
414}
Note: See TracBrowser for help on using the repository browser.