Creating an object in Python with lots of long arguments
Your TalkDetailsWidget is underdeveloped, I think.  You could say that you have a view but no model, and that is causing you problems.

You want to be able to write

talk = self.talkDetailsWidget
presentation = Presentation(title=talk.title,
                          speaker=talk.presenter,   # ← Why the inconsistent vocabulary?
                      description=talk.description,
                         category=talk.category,
                            event=talk.event,
                             room=talk.room,
                             date=unicode(talk.date.toString(Qt.ISODate)),
                             time=unicode(talk.time.toString(Qt.ISOTime)))


Therefore, you'll need to implement new properties in TalkDetailsWidget.  To avoid copy-and-paste programming in TalkDetailsWidget, I suggest writing those getters using metaprogramming.

class TalkDetailsWidget(QWidget):
    …

    def _field_reader(field, method='text'):
        return property(fget=lambda self: unicode(getattr(getattr(self, field), method)()).strip(),
                        doc="Returns a Unicode string from the %s field with spaces stripped from each end" % (field))

    title       = _field_reader('titleLineEdit')
    presenter   = _field_reader('presenterLineEdit')
    description = _field_reader('descriptionTextEdit', method='toPlainText')
    category    = _field_reader('categoryLineEdit')
    event       = _field_reader('eventLineEdit')
    room        = _field_reader('roomLineEdit')

    @property
    def date(self):
        self.dateEdit.date()

    @property
    def time(self):
        self.timeEdit.time()