def __init__(self, parent): QWidget.__init__(self, parent) p = parent.addPage(self, i18n("Titles and Headers")) l = QHBoxLayout(self) # The html view with the score layout example t = QTextBrowser(self) t.setOpenLinks(False) t.setOpenExternalLinks(False) # ensure that the full HTML example page is displayed t.setContentsMargins(2, 2, 2, 2) t.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) t.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) t.setMinimumSize(QSize(350, 350)) #t.document().documentLayout().documentSizeChanged.connect( #lambda size: t.setMinimumSize(size.toSize() + QSize(4, 4))) headers = ly.headers(i18n) msg = i18n("Click to enter a value.") t.setHtml(titles_html.format( copyrightmsg = i18n("bottom of first page"), taglinemsg = i18n("bottom of last page"), **dict((k, "<a title='{0}' href='{1}'>{2}</a>".format(msg, k, v)) for k, v in headers))) l.addWidget(t) t.anchorClicked.connect(lambda qurl: self.findChild(KLineEdit, qurl.toString()).setFocus()) g = QGridLayout() g.setVerticalSpacing(1) g.setColumnMinimumWidth(1, 200) l.addLayout(g) for row, (name, title) in enumerate(headers): l = QLabel(title + ":", self) e = KLineEdit(self) e.setObjectName(name) l.setBuddy(e) g.addWidget(l, row, 0) g.addWidget(e, row, 1) # set completion items parent.complete(e)