added delete key in keyPressEvent

This commit is contained in:
Salvatore Larosa 2012-09-11 16:05:52 +02:00
parent 80c03e5d33
commit a090559f3d
3 changed files with 37 additions and 22 deletions

View File

@ -286,11 +286,11 @@ class PythonEdit(QsciScintilla, code.InteractiveInterpreter):
Check if selected text is r/w, Check if selected text is r/w,
otherwise remove read-only parts of selection otherwise remove read-only parts of selection
""" """
if self.current_prompt_pos is None: #if self.current_prompt_pos is None:
self.move_cursor_to_end() #self.move_cursor_to_end()
return #return
line_from, index_from, line_to, index_to = self.getSelection() line_from, index_from, line_to, index_to = self.getSelection()
pline, pindex = self.current_prompt_pos pline, pindex = self.getCursorPosition()
if line_from < pline or \ if line_from < pline or \
(line_from == pline and index_from < pindex): (line_from == pline and index_from < pindex):
self.setSelection(pline, pindex, line_to, index_to) self.setSelection(pline, pindex, line_to, index_to)
@ -377,11 +377,13 @@ class PythonEdit(QsciScintilla, code.InteractiveInterpreter):
elif e.key() == Qt.Key_Left: elif e.key() == Qt.Key_Left:
e.accept() e.accept()
if e.modifiers() & Qt.ShiftModifier: if e.modifiers() & Qt.ShiftModifier:
if index > 4:
if e.modifiers() & Qt.ControlModifier: if e.modifiers() & Qt.ControlModifier:
self.SendScintilla(QsciScintilla.SCI_WORDLEFTEXTEND) self.SendScintilla(QsciScintilla.SCI_WORDLEFTEXTEND)
else: else:
self.SendScintilla(QsciScintilla.SCI_CHARLEFTEXTEND) self.SendScintilla(QsciScintilla.SCI_CHARLEFTEXTEND)
else: else:
if index > 4:
if e.modifiers() & Qt.ControlModifier: if e.modifiers() & Qt.ControlModifier:
self.SendScintilla(QsciScintilla.SCI_WORDLEFT) self.SendScintilla(QsciScintilla.SCI_WORDLEFT)
else: else:
@ -389,15 +391,24 @@ class PythonEdit(QsciScintilla, code.InteractiveInterpreter):
elif e.key() == Qt.Key_Right: elif e.key() == Qt.Key_Right:
e.accept() e.accept()
if e.modifiers() & Qt.ShiftModifier: if e.modifiers() & Qt.ShiftModifier:
if index >= 4:
if e.modifiers() & Qt.ControlModifier: if e.modifiers() & Qt.ControlModifier:
self.SendScintilla(QsciScintilla.SCI_WORDRIGHTEXTEND) self.SendScintilla(QsciScintilla.SCI_WORDRIGHTEXTEND)
else: else:
self.SendScintilla(QsciScintilla.SCI_CHARRIGHTEXTEND) self.SendScintilla(QsciScintilla.SCI_CHARRIGHTEXTEND)
else: else:
if index >= 4:
if e.modifiers() & Qt.ControlModifier: if e.modifiers() & Qt.ControlModifier:
self.SendScintilla(QsciScintilla.SCI_WORDRIGHT) self.SendScintilla(QsciScintilla.SCI_WORDRIGHT)
else: else:
self.SendScintilla(QsciScintilla.SCI_CHARRIGHT) self.SendScintilla(QsciScintilla.SCI_CHARRIGHT)
elif e.key() == Qt.Key_Delete:
if self.hasSelectedText():
self.check_selection()
self.removeSelectedText()
elif self.is_cursor_on_last_line():
self.SendScintilla(QsciScintilla.SCI_CLEAR)
event.accept()
## TODO: press event for auto-completion file directory ## TODO: press event for auto-completion file directory
#elif e.key() == Qt.Key_Tab: #elif e.key() == Qt.Key_Tab:
#self.show_file_completion() #self.show_file_completion()

View File

@ -11,7 +11,7 @@ class HelpDialog(QtGui.QDialog):
self.setupUi() self.setupUi()
def setupUi(self): def setupUi(self):
self.resize(500, 300) self.resize(400, 300)
self.webView = QtWebKit.QWebView() self.webView = QtWebKit.QWebView()
self.setWindowTitle("Help Python Console") self.setWindowTitle("Help Python Console")
self.verticalLayout= QtGui.QVBoxLayout() self.verticalLayout= QtGui.QVBoxLayout()

View File

@ -22,6 +22,10 @@
</tr> </tr>
</table> </table>
<p align="justify"> <p align="justify">
Now you can use auto-completion for syntax in console!!!
<br>
(Thanks to Larry Shaffer who provided the API files)
<br><br>
To access Quantum GIS environment from this console To access Quantum GIS environment from this console
use qgis.utils.iface object (instance of QgisInterface class). use qgis.utils.iface object (instance of QgisInterface class).
To import the class QgisInterface can also use the dedicated To import the class QgisInterface can also use the dedicated
@ -52,7 +56,7 @@
</tr> </tr>
<tr> <tr>
<td><img src="../iconConsole/iconRunConsole.png" /></td> <td><img src="../iconConsole/iconRunConsole.png" /></td>
<td>Run commnand (like Enter key pressed)</td> <td>Run command (like Enter key pressed)</td>
</tr> </tr>
</table> </table>
</body> </body>