class CmdPrompt(QWidget): """ CmdPrompt for Embroidermodder. """ def __init__(self, parent=None): """Default class constructor.""" super(CmdPrompt, self).__init__(parent) qDebug("CmdPrompt Constructor") self.setObjectName("Command Prompt") self.promptInput = promptInput = CmdPromptInput(self) self.promptHistory = CmdPromptHistory() self.promptDivider = QFrame(self) promptVBoxLayout = QVBoxLayout(self) self.promptSplitter = CmdPromptSplitter(self) self.setFocusProxy(promptInput) self.promptHistory.setFocusProxy(promptInput) self.promptDivider.setLineWidth(1) self.promptDivider.setFrameStyle(QFrame.HLine) QWIDGETSIZE_MAX = 1 # TODO/FIXME. What is QWIDGETSIZE_MAX??? self.promptDivider.setMaximumSize(QWIDGETSIZE_MAX, 1) promptVBoxLayout.addWidget(self.promptSplitter) promptVBoxLayout.addWidget(self.promptHistory) promptVBoxLayout.addWidget(self.promptDivider) promptVBoxLayout.addWidget(promptInput) promptVBoxLayout.setSpacing(0) promptVBoxLayout.setContentsMargins(0, 0, 0, 0) self.setLayout(promptVBoxLayout) #TODO# self.styleHash = QHash<QString, QString>() #TODO# self.styleHash.insert("color", "#000000") # Match -------| #TODO# self.styleHash.insert("background-color", "#FFFFFF") # | #TODO# self.styleHash.insert("selection-color", "#FFFFFF") # | #TODO# self.styleHash.insert("selection-background-color", "#000000") # Match -------| #TODO# self.styleHash.insert("font-family", "Monospace") #TODO# self.styleHash.insert("font-style", "normal") #TODO# self.styleHash.insert("font-size", "12px") # self.updateStyle() self.blinkState = False self.blinkTimer = QTimer(self) self.blinkTimer.timeout.connect(self.blink) self.show() #### stopBlinking = SIGNAL(str) #TODO# I'm guessing these are custom Signals... #TODO# promptInput.stopBlinking.connect(self.stopBlinking) #TODO# connect(promptInput, SIGNAL(appendHistory(const QString&, int)), promptHistory, SLOT(appendHistory(const QString&, int))); #TODO# connect(this, SIGNAL(appendTheHistory(const QString&, int)), promptHistory, SLOT(appendHistory(const QString&, int))); # For use outside of command prompt #TODO# connect(promptInput, SIGNAL(startCommand(const QString&)), this, SIGNAL(startCommand(const QString&))); #TODO# connect(promptInput, SIGNAL(runCommand(const QString&, const QString&)), this, SIGNAL(runCommand(const QString&, const QString&))); #TODO# connect(promptInput, SIGNAL(deletePressed()), this, SIGNAL(deletePressed())); #TODO# connect(promptInput, SIGNAL(tabPressed()), this, SIGNAL(tabPressed())); #TODO# connect(promptInput, SIGNAL(escapePressed()), this, SIGNAL(escapePressed())); #TODO# connect(promptInput, SIGNAL(upPressed()), this, SIGNAL(upPressed())); #TODO# connect(promptInput, SIGNAL(downPressed()), this, SIGNAL(downPressed())); #TODO# connect(promptInput, SIGNAL(F1Pressed()), this, SIGNAL(F1Pressed())); #TODO# connect(promptInput, SIGNAL(F2Pressed()), this, SIGNAL(F2Pressed())); #TODO# connect(promptInput, SIGNAL(F3Pressed()), this, SIGNAL(F3Pressed())); #TODO# connect(promptInput, SIGNAL(F4Pressed()), this, SIGNAL(F4Pressed())); #TODO# connect(promptInput, SIGNAL(F5Pressed()), this, SIGNAL(F5Pressed())); #TODO# connect(promptInput, SIGNAL(F6Pressed()), this, SIGNAL(F6Pressed())); #TODO# connect(promptInput, SIGNAL(F7Pressed()), this, SIGNAL(F7Pressed())); #TODO# connect(promptInput, SIGNAL(F8Pressed()), this, SIGNAL(F8Pressed())); #TODO# connect(promptInput, SIGNAL(F9Pressed()), this, SIGNAL(F9Pressed())); #TODO# connect(promptInput, SIGNAL(F10Pressed()), this, SIGNAL(F10Pressed())); #TODO# connect(promptInput, SIGNAL(F11Pressed()), this, SIGNAL(F11Pressed())); #TODO# connect(promptInput, SIGNAL(F12Pressed()), this, SIGNAL(F12Pressed())); #TODO# connect(promptInput, SIGNAL(cutPressed()), this, SIGNAL(cutPressed())); #TODO# connect(promptInput, SIGNAL(copyPressed()), this, SIGNAL(copyPressed())); #TODO# connect(promptInput, SIGNAL(pastePressed()), this, SIGNAL(pastePressed())); #TODO# connect(promptInput, SIGNAL(selectAllPressed()), this, SIGNAL(selectAllPressed())); #TODO# connect(promptInput, SIGNAL(undoPressed()), this, SIGNAL(undoPressed())); #TODO# connect(promptInput, SIGNAL(redoPressed()), this, SIGNAL(redoPressed())); #TODO# #TODO# connect(promptInput, SIGNAL(shiftPressed()), this, SIGNAL(shiftPressed())); #TODO# connect(promptInput, SIGNAL(shiftReleased()), this, SIGNAL(shiftReleased())); #TODO# #TODO# connect(promptHistory, SIGNAL(historyAppended(const QString&)), this, SIGNAL(historyAppended(const QString&))); def floatingChanged(self, isFloating): #TODO """ TOWRITE :param `isFloating`: TOWRITE :type `isFloating`: bool """ qDebug("CmdPrompt floatingChanged(%d)", isFloating) if isFloating: self.promptSplitter.hide() else: self.promptSplitter.show() def saveHistory(self, fileName, html): #TODO """ TOWRITE :param `fileName`: TOWRITE :type `fileName`: QString :param `html`: TOWRITE :type `html`: bool """ qDebug("CmdPrompt saveHistory") file = QFile(fileName) if (not file.open(QIODevice.WriteOnly | QIODevice.Text)): return # TODO: save during input in case of crash output = QTextStream(file) if html: output << promptHistory.toHtml() else: output << promptHistory.toPlainText() def alert(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ alertTxt = "<font color=\"red\">" + txt + "</font>" # TODO: Make the alert color customizable self.setPrefix(alertTxt) #TODO# appendHistory(QString()) def startBlinking(self): """ TOWRITE """ self.blinkTimer.start(750) self.promptInput.isBlinking = True def stopBlinking(self): """ TOWRITE """ self.blinkTimer.stop() self.promptInput.isBlinking = False def blink(self): """ TOWRITE """ self.blinkState = not self.blinkState if self.blinkState: qDebug("CmdPrompt blink1") else: qDebug("CmdPrompt blink0") def setPromptTextColor(self, color): """ TOWRITE :param `color`: TOWRITE :type `color`: QColor """ self.styleHash.insert("color", color.name()) self.styleHash.insert("selection-background-color", color.name()) self.updateStyle() def setPromptBackgroundColor(self, color): """ TOWRITE :param `color`: TOWRITE :type `color`: QColor """ self.styleHash.insert("background-color", color.name()) self.styleHash.insert("selection-color", color.name()) self.updateStyle() def setPromptFontFamily(self, family): """ TOWRITE :param `family`: TOWRITE :type `family`: QString """ self.styleHash.insert("font-family", family) self.updateStyle() def setPromptFontStyle(self, style): """ TOWRITE :param `style`: TOWRITE :type `style`: QString """ self.styleHash.insert("font-style", style) self.updateStyle() def setPromptFontSize(self, size): """ TOWRITE :param `size`: TOWRITE :type `size`: int """ self.styleHash.insert("font-size", QString().setNum(size).append("px")) self.updateStyle() def updateStyle(self): # TODO """ TOWRITE """ style = "QTextBrowser,QLineEdit{" QHashIterator < QString, QString > i(*styleHash) while (i.hasNext()): i.next() style.append(i.key() + ":" + i.value() + ";") style.append("}") self.setStyleSheet(style) def appendHistory(self, txt): # TODO """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ if (txt.isNull()): #TODO# #TODO# emit appendTheHistory(self.promptInput.curText, self.promptInput.prefix.length()) return qDebug("CmdPrompt - appendHistory()") #TODO# emit appendTheHistory(txt, self.promptInput.prefix.length()) def setPrefix(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ self.promptInput.prefix = txt self.promptInput.curText = txt self.promptInput.setText(txt)
class CmdPrompt(QWidget): """ CmdPrompt for Embroidermodder. """ def __init__(self, parent=None): """Default class constructor.""" super(CmdPrompt, self).__init__(parent) qDebug("CmdPrompt Constructor") self.setObjectName("Command Prompt") self.promptInput = promptInput = CmdPromptInput(self) self.promptHistory = CmdPromptHistory() self.promptDivider = QFrame(self) promptVBoxLayout = QVBoxLayout(self) self.promptSplitter = CmdPromptSplitter(self) self.setFocusProxy(promptInput) self.promptHistory.setFocusProxy(promptInput) self.promptDivider.setLineWidth(1) self.promptDivider.setFrameStyle(QFrame.HLine) QWIDGETSIZE_MAX = 1 # TODO/FIXME. What is QWIDGETSIZE_MAX??? self.promptDivider.setMaximumSize(QWIDGETSIZE_MAX, 1) promptVBoxLayout.addWidget(self.promptSplitter) promptVBoxLayout.addWidget(self.promptHistory) promptVBoxLayout.addWidget(self.promptDivider) promptVBoxLayout.addWidget(promptInput) promptVBoxLayout.setSpacing(0) promptVBoxLayout.setContentsMargins(0, 0, 0, 0) self.setLayout(promptVBoxLayout) #TODO# self.styleHash = QHash<QString, QString>() #TODO# self.styleHash.insert("color", "#000000") # Match -------| #TODO# self.styleHash.insert("background-color", "#FFFFFF") # | #TODO# self.styleHash.insert("selection-color", "#FFFFFF") # | #TODO# self.styleHash.insert("selection-background-color", "#000000") # Match -------| #TODO# self.styleHash.insert("font-family", "Monospace") #TODO# self.styleHash.insert("font-style", "normal") #TODO# self.styleHash.insert("font-size", "12px") # self.updateStyle() self.blinkState = False self.blinkTimer = QTimer(self) self.blinkTimer.timeout.connect(self.blink) self.show() #### stopBlinking = SIGNAL(str) #TODO# I'm guessing these are custom Signals... #TODO# promptInput.stopBlinking.connect(self.stopBlinking) #TODO# connect(promptInput, SIGNAL(appendHistory(const QString&, int)), promptHistory, SLOT(appendHistory(const QString&, int))); #TODO# connect(this, SIGNAL(appendTheHistory(const QString&, int)), promptHistory, SLOT(appendHistory(const QString&, int))); # For use outside of command prompt #TODO# connect(promptInput, SIGNAL(startCommand(const QString&)), this, SIGNAL(startCommand(const QString&))); #TODO# connect(promptInput, SIGNAL(runCommand(const QString&, const QString&)), this, SIGNAL(runCommand(const QString&, const QString&))); #TODO# connect(promptInput, SIGNAL(deletePressed()), this, SIGNAL(deletePressed())); #TODO# connect(promptInput, SIGNAL(tabPressed()), this, SIGNAL(tabPressed())); #TODO# connect(promptInput, SIGNAL(escapePressed()), this, SIGNAL(escapePressed())); #TODO# connect(promptInput, SIGNAL(upPressed()), this, SIGNAL(upPressed())); #TODO# connect(promptInput, SIGNAL(downPressed()), this, SIGNAL(downPressed())); #TODO# connect(promptInput, SIGNAL(F1Pressed()), this, SIGNAL(F1Pressed())); #TODO# connect(promptInput, SIGNAL(F2Pressed()), this, SIGNAL(F2Pressed())); #TODO# connect(promptInput, SIGNAL(F3Pressed()), this, SIGNAL(F3Pressed())); #TODO# connect(promptInput, SIGNAL(F4Pressed()), this, SIGNAL(F4Pressed())); #TODO# connect(promptInput, SIGNAL(F5Pressed()), this, SIGNAL(F5Pressed())); #TODO# connect(promptInput, SIGNAL(F6Pressed()), this, SIGNAL(F6Pressed())); #TODO# connect(promptInput, SIGNAL(F7Pressed()), this, SIGNAL(F7Pressed())); #TODO# connect(promptInput, SIGNAL(F8Pressed()), this, SIGNAL(F8Pressed())); #TODO# connect(promptInput, SIGNAL(F9Pressed()), this, SIGNAL(F9Pressed())); #TODO# connect(promptInput, SIGNAL(F10Pressed()), this, SIGNAL(F10Pressed())); #TODO# connect(promptInput, SIGNAL(F11Pressed()), this, SIGNAL(F11Pressed())); #TODO# connect(promptInput, SIGNAL(F12Pressed()), this, SIGNAL(F12Pressed())); #TODO# connect(promptInput, SIGNAL(cutPressed()), this, SIGNAL(cutPressed())); #TODO# connect(promptInput, SIGNAL(copyPressed()), this, SIGNAL(copyPressed())); #TODO# connect(promptInput, SIGNAL(pastePressed()), this, SIGNAL(pastePressed())); #TODO# connect(promptInput, SIGNAL(selectAllPressed()), this, SIGNAL(selectAllPressed())); #TODO# connect(promptInput, SIGNAL(undoPressed()), this, SIGNAL(undoPressed())); #TODO# connect(promptInput, SIGNAL(redoPressed()), this, SIGNAL(redoPressed())); #TODO# #TODO# connect(promptInput, SIGNAL(shiftPressed()), this, SIGNAL(shiftPressed())); #TODO# connect(promptInput, SIGNAL(shiftReleased()), this, SIGNAL(shiftReleased())); #TODO# #TODO# connect(promptHistory, SIGNAL(historyAppended(const QString&)), this, SIGNAL(historyAppended(const QString&))); def floatingChanged(self, isFloating): #TODO """ TOWRITE :param `isFloating`: TOWRITE :type `isFloating`: bool """ qDebug("CmdPrompt floatingChanged(%d)", isFloating) if isFloating: self.promptSplitter.hide() else: self.promptSplitter.show() def saveHistory(self, fileName, html): #TODO """ TOWRITE :param `fileName`: TOWRITE :type `fileName`: QString :param `html`: TOWRITE :type `html`: bool """ qDebug("CmdPrompt saveHistory"); file = QFile(fileName) if (not file.open(QIODevice.WriteOnly | QIODevice.Text)): return # TODO: save during input in case of crash output = QTextStream(file) if html: output << promptHistory.toHtml() else: output << promptHistory.toPlainText() def alert(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ alertTxt = "<font color=\"red\">" + txt + "</font>" # TODO: Make the alert color customizable self.setPrefix(alertTxt) #TODO# appendHistory(QString()) def startBlinking(self): """ TOWRITE """ self.blinkTimer.start(750) self.promptInput.isBlinking = True def stopBlinking(self): """ TOWRITE """ self.blinkTimer.stop() self.promptInput.isBlinking = False def blink(self): """ TOWRITE """ self.blinkState = not self.blinkState if self.blinkState: qDebug("CmdPrompt blink1") else: qDebug("CmdPrompt blink0") def setPromptTextColor(self, color): """ TOWRITE :param `color`: TOWRITE :type `color`: QColor """ self.styleHash.insert("color", color.name()) self.styleHash.insert("selection-background-color", color.name()) self.updateStyle() def setPromptBackgroundColor(self, color): """ TOWRITE :param `color`: TOWRITE :type `color`: QColor """ self.styleHash.insert("background-color", color.name()) self.styleHash.insert("selection-color", color.name()) self.updateStyle() def setPromptFontFamily(self, family): """ TOWRITE :param `family`: TOWRITE :type `family`: QString """ self.styleHash.insert("font-family", family) self.updateStyle() def setPromptFontStyle(self, style): """ TOWRITE :param `style`: TOWRITE :type `style`: QString """ self.styleHash.insert("font-style", style) self.updateStyle() def setPromptFontSize(self, size): """ TOWRITE :param `size`: TOWRITE :type `size`: int """ self.styleHash.insert("font-size", QString().setNum(size).append("px")) self.updateStyle() def updateStyle(self): # TODO """ TOWRITE """ style = "QTextBrowser,QLineEdit{" QHashIterator<QString, QString> i(*styleHash); while (i.hasNext()): i.next() style.append(i.key() + ":" + i.value() + ";") style.append("}") self.setStyleSheet(style) def appendHistory(self, txt): # TODO """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ if (txt.isNull()): #TODO# #TODO# emit appendTheHistory(self.promptInput.curText, self.promptInput.prefix.length()) return qDebug("CmdPrompt - appendHistory()") #TODO# emit appendTheHistory(txt, self.promptInput.prefix.length()) def setPrefix(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ self.promptInput.prefix = txt self.promptInput.curText = txt self.promptInput.setText(txt)
class CmdPrompt(QWidget): """ Subclass of `QWidget`_ CmdPrompt for Embroidermodder. .. sphinx_generate_methods_summary:: CmdPrompt """ def QWIDGETSIZE_MAX(self): return (1 << 24) - 1 def __init__(self, parent=None): """ Default class constructor. :param `parent`: Pointer to a parent widget instance. :type `parent`: `QWidget`_ """ super(CmdPrompt, self).__init__(parent) qDebug("CmdPrompt Constructor") self.setObjectName("Command Prompt") self.promptInput = promptInput = CmdPromptInput(self) self.promptHistory = promptHistory = CmdPromptHistory() self.promptDivider = QFrame(self) promptVBoxLayout = QVBoxLayout(self) self.promptSplitter = CmdPromptSplitter(self) self.setFocusProxy(promptInput) self.promptHistory.setFocusProxy(promptInput) self.promptDivider.setLineWidth(1) self.promptDivider.setFrameStyle(QFrame.HLine) self.promptDivider.setMaximumSize(self.QWIDGETSIZE_MAX(), 1) promptVBoxLayout.addWidget(self.promptSplitter) promptVBoxLayout.addWidget(self.promptHistory) promptVBoxLayout.addWidget(self.promptDivider) promptVBoxLayout.addWidget(promptInput) promptVBoxLayout.setSpacing(0) promptVBoxLayout.setContentsMargins(0, 0, 0, 0) self.setLayout(promptVBoxLayout) self.styleHash = {} # QHash<QString, QString>() self.styleHash["color"] = "#000000" # Match -------| self.styleHash["background-color"] = "#FFFFFF" # | self.styleHash["selection-color"] = "#FFFFFF" # | self.styleHash["selection-background-color"] = "#000000" # Match -------| self.styleHash["font-family"] = "Monospace" self.styleHash["font-style"] = "normal" self.styleHash["font-size"] = "12px" self.updateStyle() self.blinkState = False self.blinkTimer = QTimer(self) self.blinkTimer.timeout.connect(self.blink) self.show() self.connect(promptInput, SIGNAL("stopBlinking()"), self, SLOT("stopBlinking()")) self.connect(promptInput, SIGNAL("appendHistory(QString, int)"), promptHistory, SLOT("appendHistory(const QString&, int)")) self.connect(self, SIGNAL("appendTheHistory(QString, int)"), promptHistory, SLOT("appendHistory(const QString&, int)")) # For use outside of command prompt self.connect(promptInput, SIGNAL("startCommand(QString)"), self, SIGNAL("startCommand(QString)")) self.connect(promptInput, SIGNAL("runCommand(QString, QString)"), self, SIGNAL("runCommand(QString, QString)")) self.connect(promptInput, SIGNAL("deletePressed()"), self, SIGNAL("deletePressed()")) self.connect(promptInput, SIGNAL("tabPressed()"), self, SIGNAL("tabPressed()")) self.connect(promptInput, SIGNAL("escapePressed()"), self, SIGNAL("escapePressed()")) self.connect(promptInput, SIGNAL("upPressed()"), self, SIGNAL("upPressed()")) self.connect(promptInput, SIGNAL("downPressed()"), self, SIGNAL("downPressed()")) self.connect(promptInput, SIGNAL("F1Pressed()"), self, SIGNAL("F1Pressed()")) self.connect(promptInput, SIGNAL("F2Pressed()"), self, SIGNAL("F2Pressed()")) self.connect(promptInput, SIGNAL("F3Pressed()"), self, SIGNAL("F3Pressed()")) self.connect(promptInput, SIGNAL("F4Pressed()"), self, SIGNAL("F4Pressed()")) self.connect(promptInput, SIGNAL("F5Pressed()"), self, SIGNAL("F5Pressed()")) self.connect(promptInput, SIGNAL("F6Pressed()"), self, SIGNAL("F6Pressed()")) self.connect(promptInput, SIGNAL("F7Pressed()"), self, SIGNAL("F7Pressed()")) self.connect(promptInput, SIGNAL("F8Pressed()"), self, SIGNAL("F8Pressed()")) self.connect(promptInput, SIGNAL("F9Pressed()"), self, SIGNAL("F9Pressed()")) self.connect(promptInput, SIGNAL("F10Pressed()"), self, SIGNAL("F10Pressed()")) self.connect(promptInput, SIGNAL("F11Pressed()"), self, SIGNAL("F11Pressed()")) self.connect(promptInput, SIGNAL("F12Pressed()"), self, SIGNAL("F12Pressed()")) self.connect(promptInput, SIGNAL("cutPressed()"), self, SIGNAL("cutPressed()")) self.connect(promptInput, SIGNAL("copyPressed()"), self, SIGNAL("copyPressed()")) self.connect(promptInput, SIGNAL("pastePressed()"), self, SIGNAL("pastePressed()")) self.connect(promptInput, SIGNAL("selectAllPressed()"), self, SIGNAL("selectAllPressed()")) self.connect(promptInput, SIGNAL("undoPressed()"), self, SIGNAL("undoPressed()")) self.connect(promptInput, SIGNAL("redoPressed()"), self, SIGNAL("redoPressed()")) self.connect(promptInput, SIGNAL("shiftPressed()"), self, SIGNAL("shiftPressed()")) self.connect(promptInput, SIGNAL("shiftReleased()"), self, SIGNAL("shiftReleased()")) self.connect(promptHistory, SIGNAL("historyAppended(QString)"), self, SIGNAL("historyAppended(QString)")) def updateStyle(self): """ TOWRITE """ style = ["QTextBrowser,QLineEdit{"] for key, value in self.styleHash.items(): style.append(key + ":" + value + ";") style.append("}") style = "".join(style) self.setStyleSheet(style) # Slots ------------------------------------------------------------------ @Slot(bool) def floatingChanged(self, isFloating): """ TOWRITE :param `isFloating`: TOWRITE :type `isFloating`: bool """ qDebug("CmdPrompt floatingChanged(%d)" % isFloating) if isFloating: self.promptSplitter.hide() else: self.promptSplitter.show() @Slot(str, bool) def saveHistory(self, fileName, html): """ TOWRITE :param `fileName`: TOWRITE :type `fileName`: QString :param `html`: TOWRITE :type `html`: bool """ qDebug("CmdPrompt saveHistory") file = QFile(fileName) if (not file.open(QIODevice.WriteOnly | QIODevice.Text)): return # TODO: save during input in case of crash output = QTextStream(file) if html: output << self.promptHistory.toHtml() else: output << self.promptHistory.toPlainText() @Slot(str) def alert(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ alertTxt = "<font color=\"red\">" + txt + "</font>" # TODO: Make the alert color customizable self.setPrefix(alertTxt) self.appendHistory('') @Slot() def startBlinking(self): """ TOWRITE """ self.blinkTimer.start(750) self.promptInput.isBlinking = True @Slot() def stopBlinking(self): """ TOWRITE """ self.blinkTimer.stop() self.promptInput.isBlinking = False @Slot() def blink(self): """ TOWRITE """ self.blinkState = not self.blinkState if self.blinkState: qDebug("CmdPrompt blink1") else: qDebug("CmdPrompt blink0") @Slot(QColor) def setPromptTextColor(self, color): """ TOWRITE :param `color`: TOWRITE :type `color`: `QColor`_ """ self.styleHash["color"] = color.name() self.styleHash["selection-background-color"] = color.name() self.updateStyle() @Slot(QColor) def setPromptBackgroundColor(self, color): """ TOWRITE :param `color`: TOWRITE :type `color`: `QColor`_ """ self.styleHash["background-color"] = color.name() self.styleHash["selection-color"] = color.name() self.updateStyle() @Slot(str) def setPromptFontFamily(self, family): """ TOWRITE :param `family`: TOWRITE :type `family`: QString """ self.styleHash["font-family"] = family self.updateStyle() @Slot(str) def setPromptFontStyle(self, style): """ TOWRITE :param `style`: TOWRITE :type `style`: QString """ self.styleHash["font-style"] = style self.updateStyle() @Slot(int) def setPromptFontSize(self, size): """ TOWRITE :param `size`: TOWRITE :type `size`: int """ self.styleHash["font-size"] = "%spx" % size # QString().setNum(size).append("px")) self.updateStyle() @Slot(str) def appendHistory(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ if not txt: self.appendTheHistory.emit(self.promptInput.curText, len(self.promptInput.prefix)) return qDebug("CmdPrompt - appendHistory()") self.appendTheHistory(txt, len(self.promptInput.prefix)) @Slot(str) def setPrefix(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ self.promptInput.prefix = txt self.promptInput.curText = txt self.promptInput.setText(txt) # cmdprompt.hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh @Slot() def getHistory(self): """ TOWRITE :rtype: QString """ return self.promptHistory.toHtml() @Slot() def getPrefix(self): """ TOWRITE :rtype: QString """ return self.promptInput.prefix @Slot() def getCurrentText(self): """ TOWRITE :rtype: QString """ return self.promptInput.curText @Slot(str) def setCurrentText(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ self.promptInput.curText = self.promptInput.prefix + txt self.promptInput.setText(self.promptInput.curText) @Slot(str) def setHistory(self, txt): """ TOWRITE :param `txt`: TOWRITE :type `txt`: QString """ self.promptHistory.setHtml(txt) self.promptHistory.moveCursor(QTextCursor.End, QTextCursor.MoveAnchor) @Slot(int) def startResizingTheHistory(self, y): """ TOWRITE :param `y`: TOWRITE :type `y`: int """ self.promptHistory.startResizeHistory(y) @Slot(int) def stopResizingTheHistory(self, y): """ TOWRITE :param `y`: TOWRITE :type `y`: int """ self.promptHistory.stopResizeHistory(y) @Slot(int) def resizeTheHistory(self, y): """ TOWRITE :param `y`: TOWRITE :type `y`: int """ self.promptHistory.resizeHistory(y) @Slot(str, str) def addCommand(self, alias, cmd): """ TOWRITE :param `alias`: TOWRITE :type `alias`: QString :param `alias`: TOWRITE :type `alias`: QString """ self.promptInput.addCommand(alias, cmd) @Slot() def endCommand(self): """ TOWRITE """ self.promptInput.endCommand() @Slot() def isCommandActive(self): """ TOWRITE :rtype: bool """ return self.promptInput.cmdActive @Slot() def activeCommand(self): """ TOWRITE :rtype: QString """ return self.promptInput.curCmd @Slot() def lastCommand(self): """ TOWRITE :rtype: QString """ return self.promptInput.lastCmd @Slot() def processInput(self): """ TOWRITE """ self.promptInput.processInput() @Slot() def enableRapidFire(self): """ TOWRITE """ self.promptInput.rapidFireEnabled = True @Slot() def disableRapidFire(self): """ TOWRITE """ self.promptInput.rapidFireEnabled = False @Slot() def isRapidFireEnabled(self): """ TOWRITE :rtype: bool """ return self.promptInput.rapidFireEnabled # Signals ---------------------------------------------------------------- appendTheHistory = Signal(str, int) # For connecting outside of command prompt startCommand = Signal(str) runCommand = Signal(str, str) deletePressed = Signal() tabPressed = Signal() escapePressed = Signal() upPressed = Signal() downPressed = Signal() F1Pressed = Signal() F2Pressed = Signal() F3Pressed = Signal() F4Pressed = Signal() F5Pressed = Signal() F6Pressed = Signal() F7Pressed = Signal() F8Pressed = Signal() F9Pressed = Signal() F10Pressed = Signal() F11Pressed = Signal() F12Pressed = Signal() cutPressed = Signal() copyPressed = Signal() pastePressed = Signal() selectAllPressed = Signal() undoPressed = Signal() redoPressed = Signal() shiftPressed = Signal() shiftReleased = Signal() showSettings = Signal() historyAppended = Signal(str)