QScintilla/KeySequenceTranslator.py

changeset 4650
b1ca3bcde70b
child 5389
9b1c800daff3
equal deleted inserted replaced
4649:bbc8b2de9173 4650:b1ca3bcde70b
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2016 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing functions to map QScintilla keyboard commands to
8 QKeySequence standard keys.
9 """
10
11 from __future__ import unicode_literals
12
13 from PyQt5.QtCore import qVersion
14 from PyQt5.QtGui import QKeySequence
15 from PyQt5.Qsci import QsciScintilla
16
17 __all__ = ["s2qTranslate"]
18
19 Scintilla2QKeySequence = {
20 QsciScintilla.SCI_CHARLEFT: QKeySequence.MoveToPreviousChar,
21 QsciScintilla.SCI_CHARRIGHT: QKeySequence.MoveToNextChar,
22 QsciScintilla.SCI_LINEUP: QKeySequence.MoveToPreviousLine,
23 QsciScintilla.SCI_LINEDOWN: QKeySequence.MoveToNextLine,
24 QsciScintilla.SCI_WORDPARTLEFT: QKeySequence.UnknownKey,
25 QsciScintilla.SCI_WORDPARTRIGHT: QKeySequence.UnknownKey,
26 QsciScintilla.SCI_WORDLEFT: QKeySequence.MoveToNextWord,
27 QsciScintilla.SCI_WORDRIGHT: QKeySequence.MoveToPreviousWord,
28 QsciScintilla.SCI_VCHOME: QKeySequence.MoveToStartOfLine,
29 QsciScintilla.SCI_HOMEDISPLAY: QKeySequence.UnknownKey,
30 QsciScintilla.SCI_LINEEND: QKeySequence.MoveToEndOfLine,
31 QsciScintilla.SCI_LINESCROLLDOWN: QKeySequence.UnknownKey,
32 QsciScintilla.SCI_LINESCROLLUP: QKeySequence.UnknownKey,
33 QsciScintilla.SCI_PARAUP: QKeySequence.MoveToStartOfBlock,
34 QsciScintilla.SCI_PARADOWN: QKeySequence.MoveToEndOfBlock,
35 QsciScintilla.SCI_PAGEUP: QKeySequence.MoveToPreviousPage,
36 QsciScintilla.SCI_PAGEDOWN: QKeySequence.MoveToNextPage,
37 QsciScintilla.SCI_DOCUMENTSTART: QKeySequence.MoveToStartOfDocument,
38 QsciScintilla.SCI_DOCUMENTEND: QKeySequence.MoveToEndOfDocument,
39 QsciScintilla.SCI_TAB: QKeySequence.UnknownKey,
40 QsciScintilla.SCI_BACKTAB: QKeySequence.UnknownKey,
41 QsciScintilla.SCI_CHARLEFTEXTEND: QKeySequence.SelectPreviousChar,
42 QsciScintilla.SCI_CHARRIGHTEXTEND: QKeySequence.SelectNextChar,
43 QsciScintilla.SCI_LINEUPEXTEND: QKeySequence.SelectPreviousLine,
44 QsciScintilla.SCI_LINEDOWNEXTEND: QKeySequence.SelectNextLine,
45 QsciScintilla.SCI_WORDPARTLEFTEXTEND: QKeySequence.UnknownKey,
46 QsciScintilla.SCI_WORDPARTRIGHTEXTEND: QKeySequence.UnknownKey,
47 QsciScintilla.SCI_WORDLEFTEXTEND: QKeySequence.SelectPreviousWord,
48 QsciScintilla.SCI_WORDRIGHTEXTEND: QKeySequence.SelectNextWord,
49 QsciScintilla.SCI_VCHOMEEXTEND: QKeySequence.SelectStartOfLine,
50 QsciScintilla.SCI_LINEENDEXTEND: QKeySequence.SelectEndOfLine,
51 QsciScintilla.SCI_PARAUPEXTEND: QKeySequence.SelectStartOfBlock,
52 QsciScintilla.SCI_PARADOWNEXTEND: QKeySequence.SelectEndOfBlock,
53 QsciScintilla.SCI_PAGEUPEXTEND: QKeySequence.SelectPreviousPage,
54 QsciScintilla.SCI_PAGEDOWNEXTEND: QKeySequence.SelectNextPage,
55 QsciScintilla.SCI_DOCUMENTSTARTEXTEND: QKeySequence.SelectStartOfDocument,
56 QsciScintilla.SCI_DOCUMENTENDEXTEND: QKeySequence.SelectEndOfDocument,
57 QsciScintilla.SCI_DELETEBACK: QKeySequence.UnknownKey,
58 QsciScintilla.SCI_DELETEBACKNOTLINE: QKeySequence.UnknownKey,
59 QsciScintilla.SCI_CLEAR: QKeySequence.Delete,
60 QsciScintilla.SCI_DELWORDLEFT: QKeySequence.DeleteStartOfWord,
61 QsciScintilla.SCI_DELWORDRIGHT: QKeySequence.DeleteEndOfWord,
62 QsciScintilla.SCI_DELLINELEFT: QKeySequence.UnknownKey,
63 QsciScintilla.SCI_DELLINERIGHT: QKeySequence.DeleteEndOfLine,
64 QsciScintilla.SCI_NEWLINE: QKeySequence.InsertLineSeparator,
65 QsciScintilla.SCI_LINEDELETE: QKeySequence.UnknownKey,
66 QsciScintilla.SCI_LINEDUPLICATE: QKeySequence.UnknownKey,
67 QsciScintilla.SCI_LINETRANSPOSE: QKeySequence.UnknownKey,
68 QsciScintilla.SCI_LINECUT: QKeySequence.UnknownKey,
69 QsciScintilla.SCI_LINECOPY: QKeySequence.UnknownKey,
70 QsciScintilla.SCI_EDITTOGGLEOVERTYPE: QKeySequence.UnknownKey,
71 QsciScintilla.SCI_LINEENDDISPLAY: QKeySequence.UnknownKey,
72 QsciScintilla.SCI_LINEENDDISPLAYEXTEND: QKeySequence.UnknownKey,
73 QsciScintilla.SCI_FORMFEED: QKeySequence.UnknownKey,
74 QsciScintilla.SCI_CANCEL: QKeySequence.UnknownKey,
75 QsciScintilla.SCI_LINEDOWNRECTEXTEND: QKeySequence.UnknownKey,
76 QsciScintilla.SCI_LINEUPRECTEXTEND: QKeySequence.UnknownKey,
77 QsciScintilla.SCI_CHARLEFTRECTEXTEND: QKeySequence.UnknownKey,
78 QsciScintilla.SCI_CHARRIGHTRECTEXTEND: QKeySequence.UnknownKey,
79 QsciScintilla.SCI_VCHOMERECTEXTEND: QKeySequence.UnknownKey,
80 QsciScintilla.SCI_LINEENDRECTEXTEND: QKeySequence.UnknownKey,
81 QsciScintilla.SCI_PAGEUPRECTEXTEND: QKeySequence.UnknownKey,
82 QsciScintilla.SCI_PAGEDOWNRECTEXTEND: QKeySequence.UnknownKey,
83 QsciScintilla.SCI_SELECTIONDUPLICATE: QKeySequence.UnknownKey,
84 QsciScintilla.SCI_SCROLLTOSTART: QKeySequence.UnknownKey,
85 QsciScintilla.SCI_SCROLLTOEND: QKeySequence.UnknownKey,
86 QsciScintilla.SCI_VERTICALCENTRECARET: QKeySequence.UnknownKey,
87 QsciScintilla.SCI_WORDRIGHTEND: QKeySequence.UnknownKey,
88 QsciScintilla.SCI_WORDRIGHTENDEXTEND: QKeySequence.UnknownKey,
89 QsciScintilla.SCI_WORDLEFTEND: QKeySequence.UnknownKey,
90 QsciScintilla.SCI_WORDLEFTENDEXTEND: QKeySequence.UnknownKey,
91 QsciScintilla.SCI_HOME: QKeySequence.UnknownKey,
92 QsciScintilla.SCI_HOMEEXTEND: QKeySequence.UnknownKey,
93 QsciScintilla.SCI_HOMERECTEXTEND: QKeySequence.UnknownKey,
94 QsciScintilla.SCI_HOMEDISPLAYEXTEND: QKeySequence.UnknownKey,
95 QsciScintilla.SCI_HOMEWRAP: QKeySequence.UnknownKey,
96 QsciScintilla.SCI_HOMEWRAPEXTEND: QKeySequence.UnknownKey,
97 QsciScintilla.SCI_VCHOMEWRAP: QKeySequence.UnknownKey,
98 QsciScintilla.SCI_VCHOMEWRAPEXTEND: QKeySequence.UnknownKey,
99 QsciScintilla.SCI_LINEENDWRAP: QKeySequence.UnknownKey,
100 QsciScintilla.SCI_LINEENDWRAPEXTEND: QKeySequence.UnknownKey,
101 QsciScintilla.SCI_STUTTEREDPAGEUP: QKeySequence.UnknownKey,
102 QsciScintilla.SCI_STUTTEREDPAGEUPEXTEND: QKeySequence.UnknownKey,
103 QsciScintilla.SCI_STUTTEREDPAGEDOWN: QKeySequence.UnknownKey,
104 QsciScintilla.SCI_STUTTEREDPAGEDOWNEXTEND: QKeySequence.UnknownKey,
105 QsciScintilla.SCI_DELWORDRIGHTEND: QKeySequence.UnknownKey,
106 QsciScintilla.SCI_MOVESELECTEDLINESUP: QKeySequence.UnknownKey,
107 QsciScintilla.SCI_MOVESELECTEDLINESDOWN: QKeySequence.UnknownKey,
108 QsciScintilla.SCI_LOWERCASE: QKeySequence.UnknownKey,
109 QsciScintilla.SCI_UPPERCASE: QKeySequence.UnknownKey,
110 }
111 if qVersion() >= "5.2.0":
112 Scintilla2QKeySequence[QsciScintilla.SCI_LINEDELETE] = \
113 QKeySequence.DeleteCompleteLine,
114 if qVersion() >= "5.5.0":
115 Scintilla2QKeySequence[QsciScintilla.SCI_DELETEBACK] = \
116 QKeySequence.Backspace
117
118
119 def s2qTranslate(scintillaCommand):
120 """
121 Function to translate a QScintilla command to a QKeySequence.
122
123 @param scintillaCommand QScintilla command
124 @type int
125 @return Qt key sequence
126 @rtype QKeySequence.StandardKey
127 """
128 assert scintillaCommand in Scintilla2QKeySequence
129 return Scintilla2QKeySequence[scintillaCommand]

eric ide

mercurial