All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
iOSKeyboardInput.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #import <UIKit/UIKit.h>
6 #import <Foundation/Foundation.h>
7 
8 #include "IKeyboardInput.h"
9 #include "KeyboardInput.h"
10 #include "iOSKeyboardLocationObserver.h"
11 #include "AppInterface.h"
12 
13 namespace Eegeo
14 {
15  namespace UI
16  {
17  namespace NativeInput
18  {
19  namespace iOS
20  {
21  class iOSKeyboardInput;
22  }
23  }
24  }
25 }
26 
27 @interface iOSKeyboardInput_TextHandler : UIViewController <UITextViewDelegate> {
28  Eegeo::UI::NativeInput::iOS::iOSKeyboardInput* pKeyboard;
29 }
30 
31 - (void)setKeyboard:(Eegeo::UI::NativeInput::iOS::iOSKeyboardInput*) keyboard;
32 
33 @end
34 
36 {
38 };
39 
40 namespace Eegeo
41 {
42  namespace UI
43  {
44  namespace NativeInput
45  {
46  namespace iOS
47  {
48  class iOSKeyboardInput : public IKeyboardInput
49  {
51  iOSKeyboardInput_LocationObserverImpl* m_pLocationObserverImpl;
52  IKeyboardInputDismissedHandler& m_dismissedHandler;
53  IKeyboardInputKeyPressedHandler& m_keyPressedHandler;
54  UITextView* m_textBox;
55  bool m_closed;
56 
57  public:
58  iOSKeyboardInput(IKeyboardInputDismissedHandler& dismissedHandler,
59  IKeyboardInputKeyPressedHandler& keyPressedHandler,
60  KeyboardType keyboardType,
61  ReturnKeyType returnKeyType);
62 
63  ~iOSKeyboardInput();
64 
65  void HandleKeyPressed(const AppInterface::KeyboardData& data);
66 
67  void Dismiss();
68 
69  iOSKeyboardInput* Show();
70 
71  iOSKeyboardInput* SetLocationChangedObserver(Eegeo::UI::NativeInput::IKeyboardLocationObserver* pObserver);
72  };
73  }
74  }
75  }
76 }