X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3d7a4fe81fa69e9c518a62174ef584bdbb6af7c3..31d7fc0f9cb3f5913ecd4a039a816487a6753a93:/contrib/src/stc/gen_iface.py diff --git a/contrib/src/stc/gen_iface.py b/contrib/src/stc/gen_iface.py index d88aae231b..541dd96ee8 100644 --- a/contrib/src/stc/gen_iface.py +++ b/contrib/src/stc/gen_iface.py @@ -35,7 +35,7 @@ valPrefixes = [('SCI_', ''), ('SCWS_', 'WS_'), ] -# Message function values that should have a CMD_ constant as well +# Message function values that should have a CMD_ constant generated cmdValues = [ (2300, 2349), 2011, 2013, @@ -44,10 +44,15 @@ cmdValues = [ (2300, 2349), (2395, 2396), 2404, (2413, 2416), - (2450, 2454), + (2426, 2442), + (2450, 2455), ] +# Should a funciton be also generated for the CMDs? +FUNC_FOR_CMD = True + + # Map some generic typenames to wx types, using return value syntax retTypeMap = { 'position': 'int', @@ -275,6 +280,7 @@ methodOverrideMap = { 'AutoCGetDropRestOfWord' : ('AutoCompGetDropRestOfWord', 0,0,0), 'AutoCGetTypeSeparator' : ('AutoCompGetTypeSeparator', 0, 0, 0), 'AutoCSetTypeSeparator' : ('AutoCompSetTypeSeparator', 0, 0, 0), + 'AutoCGetCurrent' : ('AutoCompGetCurrent', 0, 0, 0), 'RegisterImage' : (0, @@ -330,14 +336,14 @@ methodOverrideMap = { int startPos, int endPos, wxDC* draw, - wxDC* target, // Why does it use two? Can they be the same? + wxDC* target, wxRect renderRect, wxRect pageRect);''', ''' int %s(bool doDraw, int startPos, int endPos, wxDC* draw, - wxDC* target, // Why does it use two? Can they be the same? + wxDC* target, wxRect renderRect, wxRect pageRect) { RangeToFormat fr; @@ -547,74 +553,16 @@ methodOverrideMap = { 'GrabFocus' : (None, 0, 0, 0), + + # Rename some that would otherwise hide the wxWindow methods 'SetFocus' : ('SetSTCFocus', 0, 0, 0), 'GetFocus' : ('GetSTCFocus', 0, 0, 0), - + 'SetCursor' : ('SetSTCCursor', 0, 0, 0), + 'GetCursor' : ('GetSTCCursor', 0, 0, 0), 'LoadLexerLibrary' : (None, 0,0,0), - - # 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), - 'HomeWrap' : (None, 0, 0, 0), - 'HomeWrapExtend' : (None, 0, 0, 0), - 'LineEndWrap' : (None, 0, 0, 0), - 'LineEndWrapExtend' : (None, 0, 0, 0), - 'VCHomeWrap' : (None, 0, 0, 0), - 'VCHomeWrapExtend' : (None, 0, 0, 0), - 'ParaDown' : (None, 0, 0, 0), - 'ParaDownExtend' : (None, 0, 0, 0), - 'ParaUp' : (None, 0, 0, 0), - 'ParaUpExtend' : (None, 0, 0, 0), - - - '' : ('', 0, 0, 0), } @@ -850,9 +798,12 @@ def parseFun(line, methods, docs, values): for v in cmdValues: if (type(v) == type(()) and v[0] <= num <= v[1]) or v == num: parseVal('CMD_%s=%s' % (string.upper(name), number), values, docs) - - #if retType == 'void' and not param1 and not param2: - + + # if we are not also doing a function for CMD values, then + # just return, otherwise fall through to the append blow. + if not FUNC_FOR_CMD: + return + methods.append( (retType, name, number, param1, param2, tuple(docs)) )