blob: 75b2bd1d2218a1d82675185a658c248e7e70d7f8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#ifndef GAME_CLIENT_LINEINPUT_H
#define GAME_CLIENT_LINEINPUT_H
// line input helter
class LINEINPUT
{
char str[256];
int len;
int cursor_pos;
public:
static void manipulate(INPUT_EVENT e, char *str, int str_max_size, int *str_len, int *cursor_pos);
class CALLBACK
{
public:
virtual ~CALLBACK() {}
virtual bool event(INPUT_EVENT e) = 0;
};
LINEINPUT();
void clear();
void process_input(INPUT_EVENT e);
void set(const char *string);
const char *get_string() const { return str; }
int get_length() const { return len; }
unsigned cursor_offset() const { return cursor_pos; }
};
#endif
|