InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IKeyBoard.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Robin_Briggs
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16 //
17 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18 // with the terms of the Adobe license agreement accompanying it. If you have received
19 // this file from a source other than Adobe, then your use, modification, or
20 // distribution of it requires the prior written permission of Adobe.
21 //
22 //
23 // The keyboard is the keeper of the key focus. An event handler must
24 // aquire the key focus in order to get key events.
25 //
26 //========================================================================================
27 
28 #ifndef __IKEYBOARD__
29 #define __IKEYBOARD__
30 
31 #include "IPMUnknown.h"
32 
33 class IEventHandler;
34 class IWindow;
35 
36 class IKeyBoard : public IPMUnknown
37 {
38 public:
39  enum { kDefaultIID = IID_IKEYBOARD };
40 
46  virtual bool16 AcquireKeyFocus(IEventHandler *newKeyFocus, bool16 validate = kTrue) = 0;
47 
54  virtual bool16 RelinquishKeyFocus(bool16 validate = kTrue) = 0;
55 
59  virtual bool16 RelinquishKeyFocusForWindow(IWindow* window, bool16 validate = kTrue) = 0;
60 
65  virtual void RemoveEventHandlersForWindow(IWindow* window) = 0;
66 
69  virtual IEventHandler* GetKeyFocus() const = 0;
70 
77 
81  virtual bool16 RestoreLastEditboxKeyFocusInPalette() = 0;
82 
86  virtual void AppSuspend() = 0;
87 
91  virtual void AppResume() = 0;
92 
97  virtual bool16 ValidateCurrentKeyFocus() = 0;
98 
103  virtual void OpenExternalModalWindow(bool isDVAOwnedWindow = false) = 0;
104 
109  virtual void ExternalModalWindowClosed() = 0;
110 
111 #ifdef WINDOWS
112 
116  virtual void GetScriptAndCodePage(int32& outWritingScript, int32& outCodePage) const = 0;
117 #endif
118 
119 };
120 
121 #endif // __IKEYBOARD__