def __init__(self, tmpl, parent=None): super(TemplateEditorDialog, self).__init__(parent=parent) self.real_tmpl = tmpl self.tmpl = vcs.createtemplate(source=tmpl) l = QtGui.QVBoxLayout() self.editor = TemplateEditor() self.editor.setTemplate(self.tmpl) l.addWidget(self.editor) buttons = QtGui.QHBoxLayout() cancel = QtGui.QPushButton("Cancel") cancel.clicked.connect(self.reject) save_as = QtGui.QPushButton("Save As") save_as.clicked.connect(self.customName) save = QtGui.QPushButton("Save") save.clicked.connect(self.accept) self.accepted.connect(self.save) save.setDefault(True) buttons.addWidget(cancel, alignment=QtCore.Qt.AlignLeft) buttons.addStretch() buttons.addWidget(save_as) buttons.addWidget(save) l.addLayout(buttons) self.setLayout(l)
class TemplateEditorDialog(QtGui.QDialog): createdTemplate = QtCore.Signal(object) editedTemplate = QtCore.Signal(object) def __init__(self, tmpl, parent=None): super(TemplateEditorDialog, self).__init__(parent=parent) self.real_tmpl = tmpl self.tmpl = vcs.createtemplate(source=tmpl) l = QtGui.QVBoxLayout() self.editor = TemplateEditor() self.editor.setTemplate(self.tmpl) l.addWidget(self.editor) buttons = QtGui.QHBoxLayout() cancel = QtGui.QPushButton("Cancel") cancel.clicked.connect(self.reject) save_as = QtGui.QPushButton("Save As") save_as.clicked.connect(self.customName) save = QtGui.QPushButton("Save") save.clicked.connect(self.accept) self.accepted.connect(self.save) save.setDefault(True) buttons.addWidget(cancel, alignment=QtCore.Qt.AlignLeft) buttons.addStretch() buttons.addWidget(save_as) buttons.addWidget(save) l.addLayout(buttons) self.setLayout(l) def customName(self): name = QtGui.QInputDialog.getText(self, u"Save As", u"Name for template:") self.save(name) def save(self, name=None): if name is None: sync_template(self.real_tmpl, self.tmpl) self.editedTemplate.emit(self.real_tmpl) else: template = vcs.createtemplate(name, self.tmpl.name) self.createdTemplate.emit(template)