diff options
author | Geenz <geenz@geenzo.com> | 2013-03-27 08:49:45 -0400 |
---|---|---|
committer | Geenz <geenz@geenzo.com> | 2013-03-27 08:49:45 -0400 |
commit | 80a79e5d7b4f37f862b312e848b1d1e7f85b0fa9 (patch) | |
tree | 4f3ec2a50788ea15986b873c9980f36212090da2 /indra/llwindow/llwindowmacosx-objc.h | |
parent | 258b77b64777a5ce5fef0ef066aa52b34b43ba65 (diff) |
IME support is pretty much finished at this point.
Diffstat (limited to 'indra/llwindow/llwindowmacosx-objc.h')
-rw-r--r-- | indra/llwindow/llwindowmacosx-objc.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/indra/llwindow/llwindowmacosx-objc.h b/indra/llwindow/llwindowmacosx-objc.h index 2de185fed3..1d05db14b2 100644 --- a/indra/llwindow/llwindowmacosx-objc.h +++ b/indra/llwindow/llwindowmacosx-objc.h @@ -26,8 +26,17 @@ */ #include <map> +#include <vector> -typedef std::map<int, bool> segment_t; +typedef std::vector<std::pair<int, bool> > segment_t; + +typedef std::vector<int> segment_lengths; +typedef std::vector<int> segment_standouts; + +struct attributedStringInfo { + segment_lengths seg_lengths; + segment_standouts seg_standouts; +}; // This will actually hold an NSCursor*, but that type is only available in objective C. typedef void *CursorRef; @@ -122,7 +131,7 @@ void updatePreeditor(unsigned short *str); void setPreeditMarkedRange(int position, int length); void resetPreedit(); int wstring_length(const std::basic_string<wchar_t> & wstr, const int woffset, const int utf16_length, int *unaligned); -void setMarkedText(unsigned short *text, unsigned int *selectedRange, unsigned int *replacementRange, long text_len, segment_t segments); +void setMarkedText(unsigned short *text, unsigned int *selectedRange, unsigned int *replacementRange, long text_len, attributedStringInfo segments); void getPreeditLocation(float *location, unsigned int length); NSWindowRef getMainAppWindow(); |