def onTextZoomChanged(self): """Triggered when a text zoom is changed""" self.setFont(getZoomedMonoFont()) for margin in self.getMargins(): if hasattr(margin, 'onTextZoomChanged'): margin.onTextZoomChanged() self._setSolidEdgeGeometry()
def __createLayout(self, labelText): """Creates the dialog layout""" self.resize(600, 250) self.setSizeGripEnabled(True) # Top level layout layout = QVBoxLayout(self) layout.addWidget(QLabel(labelText)) self.__newCaption = QTextEdit() self.__newCaption.setFont(getZoomedMonoFont()) self.__newCaption.setAcceptRichText(False) layout.addWidget(self.__newCaption) # Buttons at the bottom buttonBox = QDialogButtonBox(self) buttonBox.setOrientation(Qt.Horizontal) buttonBox.setStandardButtons(QDialogButtonBox.Ok) self.__OKButton = buttonBox.button(QDialogButtonBox.Ok) self.__OKButton.setDefault(True) buttonBox.accepted.connect(self.accept) buttonBox.rejected.connect(self.close) layout.addWidget(buttonBox) self.__newCaption.setFocus()
def __createLayout(self, varName, varType, varValue, isGlobal): """Creates the dialog layout""" varTypeParts = varType.split() if varTypeParts[0].lower() in ["string", "unicode", "qstring"]: length = str(len(varValue)) lines = str(len(varValue.splitlines())) varType = varType.split("(")[0].strip() + \ " (lines: " + lines + ", characters: " + length + ")" self.resize(600, 250) self.setSizeGripEnabled(True) # Top level layout layout = QVBoxLayout(self) gridLayout = QGridLayout() gridLayout.setSpacing(4) varScopeLabel = QLabel("Scope:", self) gridLayout.addWidget(varScopeLabel, 0, 0, Qt.AlignCenter) varScopeValue = HeaderLabel('Global' if isGlobal else 'Local', parent=self) varScopeValue.setToolTip("Double click to copy") font = varScopeValue.font() font.setFamily(GlobalData().skin['monoFont'].family()) gridLayout.addWidget(varScopeValue, 0, 1) varNameLabel = QLabel("Name:", self) gridLayout.addWidget(varNameLabel, 1, 0, Qt.AlignCenter) varNameValue = HeaderLabel(varName, parent=self) varNameValue.setToolTip("Double click to copy") gridLayout.addWidget(varNameValue, 1, 1) varTypeLabel = QLabel("Type:", self) gridLayout.addWidget(varTypeLabel, 2, 0, Qt.AlignCenter) varTypeValue = HeaderLabel(varType, parent=self) varTypeValue.setToolTip("Double click to copy") gridLayout.addWidget(varTypeValue, 2, 1) varValueLabel = QLabel("Value:", self) gridLayout.addWidget(varValueLabel, 3, 0, Qt.AlignTop) varValueValue = QTextEdit() varValueValue.setReadOnly(True) varValueValue.setFont(getZoomedMonoFont()) # varValueValue.setLineWrapMode(QTextEdit.NoWrap) varValueValue.setAcceptRichText(False) varValueValue.setPlainText(varValue) gridLayout.addWidget(varValueValue, 3, 1) layout.addLayout(gridLayout) # Buttons at the bottom buttonBox = QDialogButtonBox(self) buttonBox.setOrientation(Qt.Horizontal) buttonBox.setStandardButtons(QDialogButtonBox.Ok) self.__OKButton = buttonBox.button(QDialogButtonBox.Ok) self.__OKButton.setDefault(True) buttonBox.accepted.connect(self.close) buttonBox.rejected.connect(self.close) layout.addWidget(buttonBox) varValueValue.setFocus()
def __createLayout(self): """Creates the dialog layout""" self.resize(450, 150) self.setSizeGripEnabled(True) verticalLayout = QVBoxLayout(self) gridLayout = QGridLayout() # Link gridLayout.addWidget(QLabel('Link', self), 0, 0, 1, 1) self.linkEdit = QLineEdit(self) self.linkEdit.setClearButtonEnabled(True) self.linkEdit.setToolTip( 'A link to a file or to an external web resource') gridLayout.addWidget(self.linkEdit, 0, 1, 1, 1) self.linkEdit.textChanged.connect(self.__validate) self.fileButton = QPushButton(self) self.fileButton.setText('...') self.fileButton.setToolTip('Select an existing or non existing file') gridLayout.addWidget(self.fileButton, 0, 2, 1, 1) self.fileButton.clicked.connect(self.__onSelectPath) self.createCheckBox = QCheckBox( 'Create a markdown file if does not exist', self) self.createCheckBox.setChecked(False) gridLayout.addWidget(self.createCheckBox, 1, 1, 1, 1) self.createCheckBox.stateChanged.connect(self.__validate) # Anchor gridLayout.addWidget(QLabel('Anchor', self), 2, 0, 1, 1) self.anchorEdit = QLineEdit(self) self.anchorEdit.setClearButtonEnabled(True) gridLayout.addWidget(self.anchorEdit, 2, 1, 1, 1) self.anchorEdit.textChanged.connect(self.__validate) # Title titleLabel = QLabel('Title', self) titleLabel.setAlignment(Qt.AlignTop) gridLayout.addWidget(titleLabel, 3, 0, 1, 1) self.titleEdit = QTextEdit() self.titleEdit.setTabChangesFocus(True) self.titleEdit.setAcceptRichText(False) self.titleEdit.setFont(getZoomedMonoFont()) self.titleEdit.setToolTip( 'If provided then will be displayed in the rectangle') gridLayout.addWidget(self.titleEdit, 3, 1, 1, 1) # Buttons at the bottom buttonBox = QDialogButtonBox(self) buttonBox.setOrientation(Qt.Horizontal) buttonBox.setStandardButtons(QDialogButtonBox.Ok) self.__OKButton = buttonBox.button(QDialogButtonBox.Ok) self.__OKButton.setDefault(True) buttonBox.accepted.connect(self.accept) buttonBox.rejected.connect(self.close) verticalLayout.addLayout(gridLayout) verticalLayout.addWidget(buttonBox) self.linkEdit.setFocus()
def __init__(self, parent): QPlainTextEdit.__init__(self, parent) self.setLineWrapMode(QPlainTextEdit.NoWrap) self.setFont(getZoomedMonoFont()) self.setReadOnly(True) self.installEventFilter(self)
def __createLayout(self, parent): """Helper to create the viewer layout""" # __textEdit list area self.__textEdit = QPlainTextEdit(parent) self.__textEdit.setLineWrapMode(QPlainTextEdit.NoWrap) self.__textEdit.setFont(getZoomedMonoFont()) self.__textEdit.setReadOnly(True) # Buttons self.__selectAllButton = QAction(getIcon('selectall.png'), 'Select all', self) self.__selectAllButton.triggered.connect(self.__textEdit.selectAll) self.__copyButton = QAction(getIcon('copymenu.png'), 'Copy to clipboard', self) self.__copyButton.triggered.connect(self.__textEdit.copy) spacer = QWidget() spacer.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.__clearButton = QAction(getIcon('trash.png'), 'Clear all', self) self.__clearButton.triggered.connect(self.__clear) # Toolbar toolbar = QToolBar() toolbar.setOrientation(Qt.Vertical) toolbar.setMovable(False) toolbar.setAllowedAreas(Qt.LeftToolBarArea) toolbar.setIconSize(QSize(16, 16)) toolbar.setFixedWidth(28) toolbar.setContentsMargins(0, 0, 0, 0) toolbar.addAction(self.__selectAllButton) toolbar.addAction(self.__copyButton) toolbar.addWidget(spacer) toolbar.addAction(self.__clearButton) self.__header = QLabel("Signature: none", self) self.__header.setObjectName('signature') self.__header.setStyleSheet('QFrame#signature {' + getLabelStyle(self.__header) + '}') self.__header.setSizePolicy(QSizePolicy.Ignored, QSizePolicy.Fixed) self.__header.setFixedHeight(HEADER_HEIGHT) verticalLayout = QVBoxLayout() verticalLayout.setContentsMargins(2, 2, 2, 2) verticalLayout.setSpacing(2) verticalLayout.addWidget(self.__header) verticalLayout.addWidget(self.__textEdit) # layout layout = QHBoxLayout() layout.setContentsMargins(0, 0, 0, 0) layout.setSpacing(0) layout.addWidget(toolbar) layout.addLayout(verticalLayout) self.setLayout(layout)
def __createLayout(self): """Creates the tooltip layout""" verticalLayout = QVBoxLayout(self) verticalLayout.setContentsMargins(0, 0, 0, 0) self.info = QLabel() self.info.setAutoFillBackground(True) self.info.setFont(getZoomedMonoFont()) self.info.setFrameShape(QFrame.StyledPanel) self.info.setStyleSheet('padding: 4px') verticalLayout.addWidget(self.info) self.location = QLabel()
def __createLayout(self, fileName, info): """Creates the dialog layout""" self.resize(600, 220) self.setSizeGripEnabled(True) verticalLayout = QVBoxLayout(self) # Info label infoLabel = FitLabel(self) sizePolicy = QSizePolicy(QSizePolicy.Minimum, QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( infoLabel.sizePolicy().hasHeightForWidth()) infoLabel.setSizePolicy(sizePolicy) infoLabel.setText('Lexer/parser errors for ' + fileName) verticalLayout.addWidget(infoLabel) # Result window resultEdit = QTextEdit(self) resultEdit.setTabChangesFocus(False) resultEdit.setAcceptRichText(False) resultEdit.setReadOnly(True) resultEdit.setFont(getZoomedMonoFont()) if info is not None: modInfo = info else: modInfo = GlobalData().briefModinfoCache.get(fileName) if modInfo.isOK: resultEdit.setText('No errors found') else: resultEdit.setText('\n'.join(modInfo.lexerErrors + modInfo.errors)) verticalLayout.addWidget(resultEdit) # Buttons buttonBox = QDialogButtonBox(self) buttonBox.setOrientation(Qt.Horizontal) buttonBox.setStandardButtons(QDialogButtonBox.Close) verticalLayout.addWidget(buttonBox) buttonBox.rejected.connect(self.close)
def onTextZoomChanged(self): """The mono font has been globally changed""" self.__textEdit.setFont(getZoomedMonoFont())
def onTextZoomChanged(self): """Triggered when a mono font is chosen or zoom changed""" self.messages.setFont(getZoomedMonoFont())
def setText(self, text): """Sets the tooltip text""" self.info.setFont(getZoomedMonoFont()) self.info.setText(text)