UGDK  0.5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
textinput.h
Go to the documentation of this file.
1 #ifndef UGDK_INPUT_TEXTINPUT_H_
2 #define UGDK_INPUT_TEXTINPUT_H_
3 
4 #include <ugdk/system.h>
5 #include <ugdk/math.h>
6 #include <string>
7 #include <memory>
8 
9 namespace ugdk {
10 namespace input {
11 
12 class TextInput {
13  public:
14  void Start(const math::Integer2D& candidate_list_location, const math::Integer2D& candidate_list_size);
15  void Stop();
16 
17  const char* current_composition() const { return composition_; }
18  int cursor() const { return cursor_; }
19  int selection_size() const { return selection_size_; }
20 
21  private:
22  TextInput();
23  ~TextInput();
24 
25  const system::SDLEventHandler* event_handler();
26 
27  std::unique_ptr<system::SDLEventHandler> event_handler_;
28  char composition_[32];
29  int cursor_;
30  int selection_size_;
31 
32  friend class Manager;
34 };
35 
36 } // namespace input
37 } // namespace ugdk
38 
39 #endif // UGDK_INPUT_TEXTINPUT_H_
Definition: textinput.h:12
Definition: integer2D.h:20
int cursor() const
Definition: textinput.h:18
void Start(const math::Integer2D &candidate_list_location, const math::Integer2D &candidate_list_size)
Definition: animation.h:11
friend class TextInputSDLEventHandler
Definition: textinput.h:33
const char * current_composition() const
Definition: textinput.h:17
Definition: manager.h:18
int selection_size() const
Definition: textinput.h:19