def __init__(self, viewer, snippets=None): self.model = None self.viewer = viewer QtWidgets.QWidget.__init__(self) self.layout = QtWidgets.QVBoxLayout(self) self.setLayout(self.layout) self.c = None self.tools = QtWidgets.QHBoxLayout(self) self.layout.addLayout(self.tools) self.runbutton = QtWidgets.QPushButton("Run") width = self.runbutton.fontMetrics().boundingRect("Run").width() + 20 self.runbutton.setMaximumWidth(width) self.tools.addWidget(self.runbutton) self.runbutton.clicked.connect(self.runCode) editor = CodeEdit() if has_pyqode: editor.backend.start(server.__file__) editor.panels.append(panels.FoldingPanel()) editor.panels.append(panels.LineNumberPanel()) editor.panels.append(panels.SearchAndReplacePanel(), panels.SearchAndReplacePanel.Position.BOTTOM) editor.panels.append(panels.EncodingPanel(), api.Panel.Position.TOP) editor.add_separator() editor.panels.append(pypanels.QuickDocPanel(), api.Panel.Position.BOTTOM) sh = editor.modes.append(PythonSH(editor.document())) editor.modes.append(modes.CaretLineHighlighterMode()) editor.modes.append(modes.CodeCompletionMode()) editor.modes.append(modes.ExtendedSelectionMode()) editor.modes.append(modes.FileWatcherMode()) editor.modes.append(modes.OccurrencesHighlighterMode()) editor.modes.append(modes.RightMarginMode()) editor.modes.append(modes.SmartBackSpaceMode()) editor.modes.append(modes.SymbolMatcherMode()) editor.modes.append(modes.ZoomMode()) editor.modes.append(pymodes.CommentsMode()) editor.modes.append(pymodes.CalltipsMode()) auto = pymodes.PyAutoCompleteMode() auto.logger.setLevel(logging.CRITICAL) editor.modes.append(auto) editor.modes.append(pymodes.PyAutoIndentMode()) editor.modes.append(pymodes.PyIndenterMode()) editor.show() else: editor.setStyleSheet("font-size: 10pt; font-family: Consolas, Courier;") self.editor = editor self.snippets = snippets if self.snippets: self.list = QtWidgets.QComboBox(self) self.replace_snippet(0) for snip_name in self.snippets.keys(): self.list.addItem(snip_name) self.tools.addWidget(self.list) self.list.currentIndexChanged[int].connect(self.replace_snippet) self.layout.addWidget(self.editor) self.output = QtWidgets.QTextEdit() self.output.setReadOnly(True) self.output.setStyleSheet("font-size: 10pt; font-family: Consolas, Courier; background-color: #444;") self.layout.addWidget(self.output)
""" Minimal example showing the use of the ExtendedSelectionMode. """ import logging logging.basicConfig(level=logging.DEBUG) import sys import os os.environ['QT_API'] = 'pyside2' # os.environ['QT_API'] = 'pyqt5' from pyqode.qt import QtWidgets from pyqode.core.api import CodeEdit from pyqode.core.backend import server from pyqode.core.modes import ExtendedSelectionMode if __name__ == '__main__': app = QtWidgets.QApplication(sys.argv) editor = CodeEdit() editor.backend.start(server.__file__) editor.resize(800, 600) print(editor.modes.append(ExtendedSelectionMode())) editor.file.open(__file__) editor.show() app.exec_() editor.close() del editor del app
""" Minimal example showing the use of the AutoCompleteMode. """ import logging logging.basicConfig(level=logging.DEBUG) import sys from pyqode.qt import QtWidgets from pyqode.core.api import CodeEdit, ColorScheme from pyqode.core.backend import server from pyqode.core.modes import PygmentsSH if __name__ == '__main__': app = QtWidgets.QApplication(sys.argv) editor = CodeEdit() editor.backend.start(server.__file__) editor.resize(800, 600) sh = editor.modes.append(PygmentsSH(editor.document())) sh.color_scheme = 'monokai' editor.file.open(__file__) editor.show() app.exec_() editor.close() del editor del app
self.cancel_requested.emit(self.editor) self.hide() def clone_settings(self, original): self.color = original.color self.foreground = original.foreground if __name__ == '__main__': import locale import sys from pyqode.core.api import CodeEdit def simulate_open(): pnl.on_open_failed(__file__, locale.getpreferredencoding()) def simulate_save(): pnl.on_save_failed(__file__, locale.getpreferredencoding()) app = QtWidgets.QApplication(sys.argv) # app.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5()) edit = CodeEdit() edit.setMinimumSize(800, 600) edit.file.open(__file__) pnl = EncodingPanel() edit.panels.append(pnl, pnl.Position.TOP) edit.show() simulate_open() QtCore.QTimer.singleShot(5000, simulate_save) app.exec_()
def clone_settings(self, original): self.color = original.color self.foreground = original.foreground if __name__ == '__main__': import locale import sys from pyqode.core.api import CodeEdit def simulate_open(): pnl.on_open_failed(__file__, locale.getpreferredencoding()) def simulate_save(): # pass # print(pnl) # print(pnl.on_save_failed) pnl.on_save_failed(__file__, locale.getpreferredencoding()) app = QtWidgets.QApplication(sys.argv) # app.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5()) edit = CodeEdit() edit.setMinimumSize(800, 600) edit.file.open(__file__) pnl = EncodingPanel() edit.panels.append(pnl, pnl.Position.TOP) edit.show() simulate_open() QtCore.QTimer.singleShot(5000, simulate_save) app.exec_()
def __init__(self,viewer,snippets=None): self.model=None self.viewer = viewer QtGui.QWidget.__init__(self) self.layout= QtGui.QVBoxLayout(self) self.setLayout(self.layout) self.c = None self.tools = QtGui.QHBoxLayout(self) self.layout.addLayout(self.tools) self.runbutton = QtGui.QPushButton("Run") width = self.runbutton.fontMetrics().boundingRect("Run").width() + 20 self.runbutton.setMaximumWidth(width) self.tools.addWidget(self.runbutton) self.runbutton.clicked.connect(self.runCode) editor = CodeEdit() if has_pyqode: editor.backend.start(server.__file__) editor.panels.append(panels.FoldingPanel()) editor.panels.append(panels.LineNumberPanel()) editor.panels.append(panels.SearchAndReplacePanel(), panels.SearchAndReplacePanel.Position.BOTTOM) editor.panels.append(panels.EncodingPanel(), api.Panel.Position.TOP) editor.add_separator() editor.panels.append(pypanels.QuickDocPanel(), api.Panel.Position.BOTTOM) sh = editor.modes.append(PythonSH(editor.document())) editor.modes.append(modes.CaretLineHighlighterMode()) editor.modes.append(modes.CodeCompletionMode()) editor.modes.append(modes.ExtendedSelectionMode()) editor.modes.append(modes.FileWatcherMode()) editor.modes.append(modes.OccurrencesHighlighterMode()) editor.modes.append(modes.RightMarginMode()) editor.modes.append(modes.SmartBackSpaceMode()) editor.modes.append(modes.SymbolMatcherMode()) editor.modes.append(modes.ZoomMode()) editor.modes.append(pymodes.CommentsMode()) editor.modes.append(pymodes.CalltipsMode()) auto = pymodes.PyAutoCompleteMode() auto.logger.setLevel(logging.CRITICAL) editor.modes.append(auto) editor.modes.append(pymodes.PyAutoIndentMode()) editor.modes.append(pymodes.PyIndenterMode()) editor.show() else: editor.setStyleSheet('font-size: 10pt; font-family: Consolas, Courier;') self.editor = editor self.snippets = snippets if self.snippets: self.list = QtWidgets.QComboBox(self) self.replace_snippet(0) for snip_name in self.snippets.keys(): self.list.addItem(snip_name) self.tools.addWidget(self.list) QtCore.QObject.connect(self.list, QtCore.SIGNAL("currentIndexChanged(int)"), self.replace_snippet) self.layout.addWidget(self.editor) self.output = QtGui.QTextEdit() self.output.setReadOnly(True) self.output.setStyleSheet('font-size: 10pt; font-family: Consolas, Courier; background-color: #444;') self.layout.addWidget(self.output)