diff options
author | mitchell <70453897+667e-11@users.noreply.github.com> | 2020-03-12 12:10:54 -0400 |
---|---|---|
committer | mitchell <70453897+667e-11@users.noreply.github.com> | 2020-03-12 12:10:54 -0400 |
commit | 0549db74ae256cb77b3da0a83ddb0c22d910fb29 (patch) | |
tree | efad84bf2a8347214c117e020bd4b81eb4a84cab | |
parent | 21fe6139c683240c6be4718e448c4915b2fc1021 (diff) |
When generating iface for Scintilla events, move modifiers parameter to end.
-rw-r--r-- | core/iface.lua | 2 | ||||
-rwxr-xr-x | scripts/gen_iface.lua | 12 |
2 files changed, 8 insertions, 6 deletions
diff --git a/core/iface.lua b/core/iface.lua index f3f3847a..8360bbed 100644 --- a/core/iface.lua +++ b/core/iface.lua @@ -47,7 +47,7 @@ M.properties = {accessibility={2703,2702,1,0},additional_caret_fore={2605,2604,3 -- Map of Scintilla event IDs to tables of event names and event parameters. -- @class table -- @name events -M.events = {[2000]={"style_needed","position"},[2001]={"char_added","ch","character_source"},[2002]={"save_point_reached"},[2003]={"save_point_left"},[2004]={"modify_attempt_ro"},[2005]={"key","ch","modifiers"},[2006]={"double_click","modifiers","position","line"},[2007]={"update_ui","updated"},[2008]={"modified","position","modification_type","text","length","lines_added","line","fold_level_now","fold_level_prev","token","annotation_lines_added"},[2009]={"macro_record","message","w_param","l_param"},[2010]={"margin_click","margin","position","modifiers"},[2011]={"need_shown","position","length"},[2013]={"painted"},[2014]={"user_list_selection","list_type","text","position","ch","list_completion_method"},[2015]={"uri_dropped","text"},[2016]={"dwell_start","position","x","y"},[2017]={"dwell_end","position","x","y"},[2018]={"zoom"},[2019]={"hot_spot_click","modifiers","position"},[2020]={"hot_spot_double_click","modifiers","position"},[2021]={"call_tip_click","position"},[2022]={"auto_c_selection","text","position","ch","list_completion_method"},[2023]={"indicator_click","modifiers","position"},[2024]={"indicator_release","modifiers","position"},[2025]={"auto_c_cancelled"},[2026]={"auto_c_char_deleted"},[2027]={"hot_spot_release_click","modifiers","position"},[2028]={"focus_in"},[2029]={"focus_out"},[2030]={"auto_c_completed","text","position","ch","list_completion_method"},[2031]={"margin_right_click","margin","position","modifiers"},[2032]={"auto_c_selection_change","list_type","text","position"},} +M.events = {[2000]={"style_needed","position"},[2001]={"char_added","ch","character_source"},[2002]={"save_point_reached"},[2003]={"save_point_left"},[2004]={"modify_attempt_ro"},[2005]={"key","ch","modifiers"},[2006]={"double_click","position","line","modifiers"},[2007]={"update_ui","updated"},[2008]={"modified","position","modification_type","text","length","lines_added","line","fold_level_now","fold_level_prev","token","annotation_lines_added"},[2009]={"macro_record","message","w_param","l_param"},[2010]={"margin_click","position","margin","modifiers"},[2011]={"need_shown","position","length"},[2013]={"painted"},[2014]={"user_list_selection","list_type","text","position","ch","list_completion_method"},[2015]={"uri_dropped","text"},[2016]={"dwell_start","position","x","y"},[2017]={"dwell_end","position","x","y"},[2018]={"zoom"},[2019]={"hot_spot_click","position","modifiers"},[2020]={"hot_spot_double_click","position","modifiers"},[2021]={"call_tip_click","position"},[2022]={"auto_c_selection","text","position","ch","list_completion_method"},[2023]={"indicator_click","position","modifiers"},[2024]={"indicator_release","position","modifiers"},[2025]={"auto_c_cancelled"},[2026]={"auto_c_char_deleted"},[2027]={"hot_spot_release_click","position","modifiers"},[2028]={"focus_in"},[2029]={"focus_out"},[2030]={"auto_c_completed","text","position","ch","list_completion_method"},[2031]={"margin_right_click","position","margin","modifiers"},[2032]={"auto_c_selection_change","list_type","text","position"},} local marker_number, indic_number, list_type, image_type = -1, -1, 0, 0 diff --git a/scripts/gen_iface.lua b/scripts/gen_iface.lua index 3455b2dd..5737b338 100755 --- a/scripts/gen_iface.lua +++ b/scripts/gen_iface.lua @@ -39,15 +39,15 @@ for line in io.lines('../src/scintilla/include/Scintilla.iface') do elseif line:find('^evt ') then local name, value, param_list = line:match(event_patt) name = to_lua_name(name) - local event = {string.format('%q', name)} + local event, has_modifiers = {string.format('%q', name)}, false for param in param_list:gmatch('(%a+)[,)]') do - if param ~= 'void' then + if param ~= 'void' and param ~= 'modifiers' then event[#event + 1] = string.format('%q', to_lua_name(param)) + elseif param == 'modifiers' then + has_modifiers = true end end - if name:find('^margin') then - event[2], event[4] = event[4], event[2] -- swap modifiers, margin - end + if has_modifiers then event[#event + 1] = '"modifiers"' end events[#events + 1] = value events[value] = table.concat(event, ',') elseif line:find('^fun ') then @@ -189,6 +189,7 @@ local marker_number, indic_number, list_type, image_type = -1, -1, 0, 0 -- @see buffer.marker_define -- @name next_marker_number function M.next_marker_number() + assert(marker_number < M.constants.MARKER_MAX, 'too many markers in use') marker_number = marker_number + 1 return marker_number end @@ -201,6 +202,7 @@ end -- @see buffer.indic_style -- @name next_indic_number function M.next_indic_number() + assert(indic_number < M.constants.INDICATOR_MAX, 'too many indicators in use') indic_number = indic_number + 1 return indic_number end |