Changeset bc11308b9b3d…
Parent fe38c01bfcf8…
by
Changes to 10 files · Browse files at bc11308b9b3d Showing diff from parent fe38c01bfcf8 Diff from another changeset...
@@ -25,7 +25,7 @@ class ArchiveDialog(QDialog):
""" Dialog to archive a particular Mercurial revision """
- output = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
makeLogVisible = pyqtSignal(bool)
progress = pyqtSignal(thread.DataWrapper)
|
@@ -140,7 +140,7 @@ commandFinished = pyqtSignal(int)
commandCanceling = pyqtSignal()
- output = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
progress = pyqtSignal(thread.DataWrapper)
def __init__(self, useInternal, parent):
@@ -183,7 +183,7 @@
def get_rawoutput(self):
if self.thread:
- return ''.join(self.thread.rawoutput)
+ return hglib.fromunicode(self.thread.rawoutput.join(''))
else:
return ''
@@ -200,27 +200,16 @@ self.thread.commandFinished.connect(self.command_finished)
self.thread.outputReceived.connect(self.output)
- self.thread.errorReceived.connect(self.output)
self.thread.progressReceived.connect(self.progress)
if self.internallog:
self.thread.outputReceived.connect(self.output_received)
- self.thread.errorReceived.connect(self.output_received)
-
if self.stbar:
self.thread.progressReceived.connect(self.stbar.progress)
self.thread.start()
return True
- def append_output(self, msg, style=''):
- msg = msg.replace('\n', '<br />')
- cursor = self.output_text.textCursor()
- cursor.movePosition(QTextCursor.End)
- cursor.insertHtml('<font style="%s">%s</font>' % (style, msg))
- max = self.output_text.verticalScrollBar().maximum()
- self.output_text.verticalScrollBar().setSliderPosition(max)
-
def clear_output(self):
if self.internallog:
self.output_text.clear()
@@ -263,13 +252,16 @@
self.commandCanceling.emit()
- @pyqtSlot(thread.DataWrapper)
- def output_received(self, wrapper):
- msg, label = wrapper.data
- msg = hglib.tounicode(msg)
+ @pyqtSlot(QString, QString)
+ def output_received(self, msg, label):
msg = Qt.escape(msg)
style = qtlib.geteffect(label)
- self.append_output(msg, style)
+ msg = msg.replace('\n', '<br />')
+ cursor = self.output_text.textCursor()
+ cursor.movePosition(QTextCursor.End)
+ cursor.insertHtml('<font style="%s">%s</font>' % (style, msg))
+ max = self.output_text.verticalScrollBar().maximum()
+ self.output_text.verticalScrollBar().setSliderPosition(max)
class Widget(QWidget):
@@ -279,7 +271,7 @@ commandFinished = pyqtSignal(int)
commandCanceling = pyqtSignal()
- output = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
progress = pyqtSignal(thread.DataWrapper)
makeLogVisible = pyqtSignal(bool)
@@ -455,7 +447,7 @@ commandFinished = pyqtSignal(int)
commandCanceling = pyqtSignal()
- output = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
progress = pyqtSignal(thread.DataWrapper)
makeLogVisible = pyqtSignal(bool)
|
@@ -33,7 +33,7 @@ commitComplete = pyqtSignal()
progress = pyqtSignal(thread.DataWrapper)
- output = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
makeLogVisible = pyqtSignal(bool)
def __init__(self, pats, opts, root=None, embedded=False, parent=None):
|
@@ -40,19 +40,14 @@ self.logte.setWordWrapMode(QTextOption.NoWrap)
vbox.addWidget(self.logte, 1)
- @pyqtSlot(thread.DataWrapper)
- def output(self, wrapper):
- msg, label = wrapper.data
- msg = hglib.tounicode(msg)
- msg = Qt.escape(msg)
- style = qtlib.geteffect(label)
- self.logMessage(msg, style)
-
@pyqtSlot()
def clear(self):
self.logte.clear()
- def logMessage(self, msg, style=''):
+ @pyqtSlot(QString, QString)
+ def output(self, msg, label):
+ msg = Qt.escape(msg)
+ style = qtlib.geteffect(label)
msg = msg.replace('\n', '<br/>')
cursor = self.logte.textCursor()
cursor.movePosition(QTextCursor.End)
|
@@ -89,6 +89,7 @@
def geteffect(labels):
'map labels like "log.date" to Qt font styles'
+ labels = str(labels) # Could be QString
effects = []
# Multiple labels may be requested
for l in labels.split():
|
@@ -20,7 +20,7 @@ class RenameDialog(QDialog):
"""TortoiseHg rename dialog"""
- output = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
makeLogVisible = pyqtSignal(bool)
progress = pyqtSignal(thread.DataWrapper)
|
@@ -18,10 +18,9 @@ from tortoisehg.hgqt.qtlib import CustomPrompt, SharedWidget, DemandWidget
from tortoisehg.hgqt.repomodel import HgRepoListModel
from tortoisehg.hgqt.quickbar import FindInGraphlogQuickBar
-from tortoisehg.hgqt import cmdui, update, tag, backout, merge, visdiff
+from tortoisehg.hgqt import cmdui, update, tag, backout, merge, visdiff, thread
from tortoisehg.hgqt import archive, thgimport, thgstrip, run, thgrepo, purge
-from tortoisehg.hgqt.thread import DataWrapper
from tortoisehg.hgqt.repoview import HgRepoView
from tortoisehg.hgqt.revdetails import RevDetailsWidget
from tortoisehg.hgqt.commit import CommitWidget
@@ -37,8 +36,8 @@ showMessageSignal = pyqtSignal(str)
closeSelfSignal = pyqtSignal(QWidget)
- progress = pyqtSignal(DataWrapper)
- output = pyqtSignal(DataWrapper)
+ progress = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
makeLogVisible = pyqtSignal(bool)
def __init__(self, repo, workbench):
|
@@ -29,7 +29,7 @@ outgoingNodes = pyqtSignal(object)
showMessage = pyqtSignal(unicode)
- output = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
progress = pyqtSignal(thread.DataWrapper)
makeLogVisible = pyqtSignal(bool)
|
@@ -27,8 +27,7 @@ self.data = data
class UiSignal(QObject):
- writeSignal = pyqtSignal(DataWrapper)
- errorSignal = pyqtSignal(DataWrapper)
+ writeSignal = pyqtSignal(QString, QString)
interactSignal = pyqtSignal(DataWrapper)
progressSignal = pyqtSignal(DataWrapper)
@@ -37,13 +36,14 @@ self.responseq = responseq
def write(self, *args, **opts):
- wrapper = DataWrapper((''.join(args), opts.get('label', '')))
- self.writeSignal.emit(wrapper)
+ msg = hglib.tounicode(''.join(args))
+ label = hglib.tounicode(opts.get('label', ''))
+ self.writeSignal.emit(msg, label)
def write_err(self, *args, **opts):
- for a in args:
- data = DataWrapper((str(a), opts.get('label', 'ui.error')))
- self.errorSignal.emit(data)
+ msg = hglib.tounicode(''.join(args))
+ label = hglib.tounicode(opts.get('label', 'ui.error'))
+ self.writeSignal.emit(msg, label)
def prompt(self, msg, choices, default):
try:
@@ -135,11 +135,8 @@ for feedback from Mercurial can be handled by the user via dialog
windows.
"""
- # (msg=str, label=str) [wrapped]
- outputReceived = pyqtSignal(DataWrapper)
-
- # (msg=str, label=str) [wrapped]
- errorReceived = pyqtSignal(DataWrapper)
+ # (msg=str, label=str)
+ outputReceived = pyqtSignal(QString, QString)
# (topic=str, item=str, pos=int, total=int, unit=str) [wrapped]
progressReceived = pyqtSignal(DataWrapper)
@@ -158,7 +155,7 @@ self.ret = -1
self.abortbyuser = False
self.responseq = Queue.Queue()
- self.rawoutput = []
+ self.rawoutput = QStringList()
self.finished.connect(self.thread_finished)
@@ -170,9 +167,9 @@ def thread_finished(self):
self.commandFinished.emit(self.ret)
- def output_handler(self, wrapper):
- self.rawoutput.append(wrapper.data[0])
- self.outputReceived.emit(wrapper)
+ @pyqtSlot(QString, QString)
+ def output_handler(self, msg, label):
+ self.rawoutput.append(msg)
def interact_handler(self, wrapper):
prompt, password, choices, default = wrapper.data
@@ -216,16 +213,15 @@
ui = QtUi(responseq=self.responseq)
ui.sig.writeSignal.connect(self.output_handler)
- ui.sig.errorSignal.connect(self.errorReceived)
ui.sig.interactSignal.connect(self.interact_handler)
ui.sig.progressSignal.connect(self.progressReceived)
+ ui.sig.writeSignal.connect(self.outputReceived)
if self.display:
cmd = '%% hg %s\n' % self.display
else:
cmd = '%% hg %s\n' % ' '.join(self.cmdline)
- w = DataWrapper((cmd, 'control'))
- self.outputReceived.emit(w)
+ self.outputReceived.emit(hglib.tounicode(cmd), 'control')
try:
for k, v in ui.configitems('defaults'):
@@ -249,5 +245,5 @@ msg = _('[command returned code %d %%s]') % int(self.ret)
else:
msg = _('[command completed successfully %s]')
- w = DataWrapper((msg % time.asctime() + '\n', 'control'))
- self.outputReceived.emit(w)
+ msg = hglib.tounicode(msg % time.asctime() + '\n')
+ self.outputReceived.emit(msg, 'control')
|
@@ -18,7 +18,7 @@
class UpdateDialog(QDialog):
- output = pyqtSignal(thread.DataWrapper)
+ output = pyqtSignal(QString, QString)
progress = pyqtSignal(thread.DataWrapper)
makeLogVisible = pyqtSignal(bool)
|
Loading...