-
-
-
- # Remove all methods that are key commands since they can be
- # executed with CmdKeyExecute
- 'LineDown' : (None, 0, 0, 0),
- 'LineDownExtend' : (None, 0, 0, 0),
- 'LineUp' : (None, 0, 0, 0),
- 'LineUpExtend' : (None, 0, 0, 0),
- 'CharLeft' : (None, 0, 0, 0),
- 'CharLeftExtend' : (None, 0, 0, 0),
- 'CharRight' : (None, 0, 0, 0),
- 'CharRightExtend' : (None, 0, 0, 0),
- 'WordLeft' : (None, 0, 0, 0),
- 'WordLeftExtend' : (None, 0, 0, 0),
- 'WordRight' : (None, 0, 0, 0),
- 'WordRightExtend' : (None, 0, 0, 0),
- 'Home' : (None, 0, 0, 0),
- 'HomeExtend' : (None, 0, 0, 0),
- 'LineEnd' : (None, 0, 0, 0),
- 'LineEndExtend' : (None, 0, 0, 0),
- 'DocumentStart' : (None, 0, 0, 0),
- 'DocumentStartExtend' : (None, 0, 0, 0),
- 'DocumentEnd' : (None, 0, 0, 0),
- 'DocumentEndExtend' : (None, 0, 0, 0),
- 'PageUp' : (None, 0, 0, 0),
- 'PageUpExtend' : (None, 0, 0, 0),
- 'PageDown' : (None, 0, 0, 0),
- 'PageDownExtend' : (None, 0, 0, 0),
- 'EditToggleOvertype' : (None, 0, 0, 0),
- 'Cancel' : (None, 0, 0, 0),
- 'DeleteBack' : (None, 0, 0, 0),
- 'Tab' : (None, 0, 0, 0),
- 'BackTab' : (None, 0, 0, 0),
- 'NewLine' : (None, 0, 0, 0),
- 'FormFeed' : (None, 0, 0, 0),
- 'VCHome' : (None, 0, 0, 0),
- 'VCHomeExtend' : (None, 0, 0, 0),
- 'ZoomIn' : (None, 0, 0, 0),
- 'ZoomOut' : (None, 0, 0, 0),
- 'DelWordLeft' : (None, 0, 0, 0),
- 'DelWordRight' : (None, 0, 0, 0),
- 'LineCut' : (None, 0, 0, 0),
- 'LineDelete' : (None, 0, 0, 0),
- 'LineTranspose' : (None, 0, 0, 0),
- 'LowerCase' : (None, 0, 0, 0),
- 'UpperCase' : (None, 0, 0, 0),
- 'LineScrollDown' : (None, 0, 0, 0),
- 'LineScrollUp' : (None, 0, 0, 0),
- 'DeleteBackNotLine' : (None, 0, 0, 0),
-
-
-
-
+ 'SetCursor' : ('SetSTCCursor', 0, 0, 0),
+ 'GetCursor' : ('GetSTCCursor', 0, 0, 0),
+
+ 'LoadLexerLibrary' : (None, 0,0,0),
+
+ 'SetPositionCache' : ('SetPositionCacheSize', 0, 0, 0),
+ 'GetPositionCache' : ('GetPositionCacheSize', 0, 0, 0),
+
+ 'GetLexerLanguage' : (None, 0, 0, 0),
+ 'SetFontQuality' : (None, 0, 0, 0),
+ 'GetFontQuality' : (None, 0, 0, 0),
+ 'SetSelection' : (None, 0, 0, 0),
+
+ 'GetCharacterPointer' : (0,
+ 'const char* %s() const;',
+ 'const char* %s() const {\n'
+ ' return (const char*)SendMsg(%s, 0, 0);',
+ 0),
+
+ 'GetRangePointer' : (0,
+ 'const char* %s(int position, int rangeLength) const;',
+ 'const char* %s(int position, int rangeLength) const {\n'
+ ' return (const char*)SendMsg(%s, position, rangeLength);',
+ 0),
+
+
+ 'GetWordChars' :
+ (0,
+ 'wxString %s() const;',
+
+ '''wxString %s() const {
+ int msg = %s;
+ int len = SendMsg(msg, 0, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, 0, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);''',
+
+ ('Get the set of characters making up words for when moving or selecting by word.',)),
+
+ 'GetTag' :
+ (0,
+ 'wxString %s(int tagNumber) const;',
+
+ '''wxString %s(int tagNumber) const {
+ int msg = %s;
+ int len = SendMsg(msg, tagNumber, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, tagNumber, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);''',
+ 0),
+
+ 'GetWhitespaceChars' :
+ (0,
+ 'wxString %s() const;',
+
+ '''wxString %s() const {
+ int msg = %s;
+ int len = SendMsg(msg, 0, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, 0, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);''',
+ 0),
+
+
+ 'GetPunctuationChars' :
+ (0,
+ 'wxString %s() const;',
+
+ '''wxString %s() const {
+ int msg = %s;
+ int len = SendMsg(msg, 0, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, 0, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);''',
+ 0),
+
+
+ 'PropertyNames' :
+ (0,
+ 'wxString %s() const;',
+
+ '''wxString %s() const {
+ int msg = %s;
+ int len = SendMsg(msg, 0, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, 0, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);''',
+ 0),
+
+
+
+ 'DescribeProperty' :
+ (0,
+ 'wxString %s(const wxString& name) const;',
+
+ '''wxString %s(const wxString& name) const {
+ int msg = %s;
+ int len = SendMsg(msg, (sptr_t)(const char*)wx2stc(name), (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, (sptr_t)(const char*)wx2stc(name), (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);''',
+ 0),
+
+
+
+ 'DescribeKeyWordSets' :
+ (0,
+ 'wxString %s() const;',
+
+ '''wxString %s() const {
+ int msg = %s;
+ int len = SendMsg(msg, 0, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, 0, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);''',
+ 0),
+
+
+ 'MarkerDefineRGBAImage' :
+ (0,
+ 'void %s(int markerNumber, const unsigned char* pixels);',
+ '''void %s(int markerNumber, const unsigned char* pixels) {
+ SendMsg(%s, markerNumber, (sptr_t)pixels);''',
+ 0),
+
+
+ 'RegisterRGBAImage' :
+ (0,
+ 'void %s(int type, const unsigned char* pixels);',
+ '''void %s(int type, const unsigned char* pixels) {
+ SendMsg(%s, type, (sptr_t)pixels);''',
+ 0),
+
+
+ # I think these are only available on the native OSX backend, so
+ # don't add them to the wx API...
+ 'FindIndicatorShow' : (None, 0,0,0),
+ 'FindIndicatorFlash' : (None, 0,0,0),
+ 'FindIndicatorHide' : (None, 0,0,0),
+
+ 'CreateLoader' :
+ (0,
+ 'void* %s(int bytes) const;',
+ """void* %s(int bytes) const {
+ return (void*)(sptr_t)SendMsg(%s, bytes); """,
+ 0),
+
+ 'PrivateLexerCall' :
+ (0,
+ 'void* %s(int operation, void* pointer);',
+ """void* %s(int operation, void* pointer) {
+ return (void*)(sptr_t)SendMsg(%s, operation, (sptr_t)pointer); """,
+ 0),
+