diff options
author | Tse Kit Yam <me@kytse.com> | 2016-11-23 10:46:28 +1100 |
---|---|---|
committer | Tse Kit Yam <me@kytse.com> | 2016-11-23 10:46:28 +1100 |
commit | d2c7abab397926735f5a41ca17fd280a409e2940 (patch) | |
tree | efe207d319eef0ac417295439593a7baf36e20c7 /src/Editor.cxx | |
parent | 4ae76e455aec66826a284356d63cc2b5995c0b2f (diff) | |
download | scintilla-mirror-d2c7abab397926735f5a41ca17fd280a409e2940.tar.gz |
Implementation of MarginRightClick event.
Diffstat (limited to 'src/Editor.cxx')
-rw-r--r-- | src/Editor.cxx | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx index 43d28a8c0..9c4e39490 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -2465,6 +2465,22 @@ bool Editor::NotifyMarginClick(Point pt, bool shift, bool ctrl, bool alt) { return NotifyMarginClick(pt, ModifierFlags(shift, ctrl, alt)); } +bool Editor::NotifyMarginRightClick(Point pt, int modifiers) { + int marginRightClicked = vs.MarginFromLocation(pt); + if ((marginRightClicked >= 0) && vs.ms[marginRightClicked].sensitive) { + int position = pdoc->LineStart(LineFromLocation(pt)); + SCNotification scn = {}; + scn.nmhdr.code = SCN_MARGINRIGHTCLICK; + scn.modifiers = modifiers; + scn.position = position; + scn.margin = marginRightClicked; + NotifyParent(scn); + return true; + } else { + return false; + } +} + void Editor::NotifyNeedShown(int pos, int len) { SCNotification scn = {}; scn.nmhdr.code = SCN_NEEDSHOWN; @@ -4578,6 +4594,11 @@ void Editor::ButtonDownWithModifiers(Point pt, unsigned int curTime, int modifie ShowCaretAtCurrentPosition(); } +void Editor::RightButtonDownWithModifiers(Point pt, unsigned int, int modifiers) { + if (NotifyMarginRightClick(pt, modifiers)) + return; +} + void Editor::ButtonDown(Point pt, unsigned int curTime, bool shift, bool ctrl, bool alt) { return ButtonDownWithModifiers(pt, curTime, ModifierFlags(shift, ctrl, alt)); } |