36 ButtonEvent(
ButtonHandle button, ButtonEvent::Type type,
double time) :
52 ButtonEvent(
short keycode,
double time) :
68 ButtonEvent(
const wstring &candidate_string,
size_t highlight_start,
69 size_t highlight_end,
size_t cursor_pos) :
72 _candidate_string(candidate_string),
73 _highlight_start(highlight_start),
74 _highlight_end(highlight_end),
75 _cursor_pos(cursor_pos),
77 _time(
ClockObject::get_global_clock()->get_frame_time())
88 _button(copy._button),
89 _keycode(copy._keycode),
90 _candidate_string(copy._candidate_string),
91 _highlight_start(copy._highlight_start),
92 _highlight_end(copy._highlight_end),
93 _cursor_pos(copy._cursor_pos),
104 INLINE
void ButtonEvent::
106 _button = copy._button;
107 _keycode = copy._keycode;
108 _candidate_string = copy._candidate_string;
109 _highlight_start = copy._highlight_start;
110 _highlight_end = copy._highlight_end;
111 _cursor_pos = copy._cursor_pos;
124 return (_button == other._button &&
125 _keycode == other._keycode &&
126 _type == other._type);
134 INLINE
bool ButtonEvent::
144 INLINE
bool ButtonEvent::
146 if (_button != other._button) {
147 return _button < other._button;
149 if (_keycode != other._keycode) {
150 return _keycode < other._keycode;
153 return _type < other._type;
A ClockObject keeps track of elapsed real time and discrete time.