fix tabs, disable widgets during load/save, don't crash when there isn't any notes
This commit is contained in:
parent
b8adf34e52
commit
3cd28382e8
1 changed files with 34 additions and 23 deletions
|
|
@ -349,6 +349,8 @@ class ContactNotes(QWidget):
|
|||
self.weboob = weboob
|
||||
self.contact = contact
|
||||
|
||||
self.ui.textEdit.setEnabled(False)
|
||||
self.ui.saveButton.setEnabled(False)
|
||||
self.process = QtDo(self.weboob, self._getNotes_cb, self._getNotes_eb)
|
||||
self.process.do('get_notes', self.contact.id, backends=(self.contact.backend,))
|
||||
|
||||
|
|
@ -356,14 +358,17 @@ class ContactNotes(QWidget):
|
|||
|
||||
|
||||
def _getNotes_cb(self, backend, data):
|
||||
if not backend:
|
||||
if not backend or not data:
|
||||
self.process = None
|
||||
self.ui.textEdit.setEnabled(True)
|
||||
self.ui.saveButton.setEnabled(True)
|
||||
return
|
||||
|
||||
self.ui.textEdit.setText(data)
|
||||
|
||||
|
||||
def _getNotes_eb(self, backend, error, backtrace):
|
||||
self.ui.textEdit.setEnabled(True)
|
||||
self.ui.saveButton.setEnabled(True)
|
||||
content = unicode(self.tr('Unable to load notes:\n%s\n')) % to_unicode(error)
|
||||
if logging.root.level == logging.DEBUG:
|
||||
content += '\n%s\n' % to_unicode(backtrace)
|
||||
|
|
@ -372,14 +377,20 @@ class ContactNotes(QWidget):
|
|||
|
||||
def saveNotes(self):
|
||||
text = unicode(self.ui.textEdit.toPlainText())
|
||||
self.ui.saveButton.setEnabled(False)
|
||||
self.ui.textEdit.setEnabled(False)
|
||||
|
||||
self.process = QtDo(self.weboob, self._saveNotes_cb, self._saveNotes_eb)
|
||||
self.process.do('save_notes', self.contact.id, text, backends=(self.contact.backend,))
|
||||
|
||||
def _saveNotes_cb(self, backend, data):
|
||||
self.ui.saveButton.setEnabled(True)
|
||||
self.ui.textEdit.setEnabled(True)
|
||||
pass
|
||||
|
||||
def _saveNotes_eb(self, backend, error, backtrace):
|
||||
self.ui.saveButton.setEnabled(True)
|
||||
self.ui.textEdit.setEnabled(True)
|
||||
content = unicode(self.tr('Unable to save notes:\n%s\n')) % to_unicode(error)
|
||||
if logging.root.level == logging.DEBUG:
|
||||
content += '\n%s\n' % to_unicode(backtrace)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue