def __init__(self): QDialog.__init__(self) QIcon.setThemeName("Adwaita") self.setWindowIcon(QIcon.fromTheme("document-print")) self.setupUi(self) self.resize(640, 480) self.setWindowTitle("QuikPrint " + __version__) self.settings = QSettings(self) # Create and setup widgets self.widthSpin.setHidden(True) self.heightSpin.setHidden(True) rangeValidator = QRegExpValidator(self.pagerangeEdit) rangeValidator.setRegExp( QRegExp('([0-9,-])*')) # TODO : check validity of whole string self.pagerangeEdit.setValidator(rangeValidator) # Set values printers = self.getPrinters() if printers == []: QMessageBox.critical(self, 'Error !', 'No Printers added', 'Close') return QDialog.accept(self) self.printersCombo.addItems(printers) # select default printer options default_printer = get_default_printer() selected_index = 0 for i, printer in enumerate(printers): if printer == default_printer: selected_index = i break self.printersCombo.setCurrentIndex(selected_index) self.selectPrinter(selected_index) # get printer independent options fit_to_page = True if self.settings.value("FitToPage", "false") == 'true' else False self.fitToPageBtn.setChecked(fit_to_page) brightness = int(self.settings.value("Brightness", 100)) gamma = int(self.settings.value("Gamma", 1000)) ppi = int(self.settings.value("PPI", 300)) natural_scaling = int(self.settings.value("NaturalScaling", 100)) scaling = int(self.settings.value("Scaling", 100)) paper_w = int(self.settings.value("PaperW", 100)) paper_h = int(self.settings.value("PaperH", 100)) self.brightnessSpin.setValue(brightness) self.gammaSpin.setValue(gamma) self.ppiSpin.setValue(ppi) self.naturalScalingSpin.setValue(natural_scaling) self.scalingSpin.setValue(scaling) self.widthSpin.setValue(paper_w) self.heightSpin.setValue(paper_h) # Connect Signals self.printersCombo.currentIndexChanged.connect(self.selectPrinter) self.paperSizeCombo.currentIndexChanged.connect(self.onPaperSizeChange) self.pixelDensityBtn.clicked.connect(self.onDensityBtnClick) self.printBtn.clicked.connect(self.accept) self.quitBtn.clicked.connect(self.reject) self.cancelJobsBtn.clicked.connect(self.cancelPrintJobs)
def __init__(self, parent): parent.setWindowTitle("Create a new directory") parent.resize(400, 250) parent.setAttribute(Qt.WA_DeleteOnClose) descriptionLabel = QLabel(parent) descriptionLabel.setText("Enter the name for the new directory " \ + "and choose a parent directory for it") newDirectoryLabel = QLabel(parent) newDirectoryLabel.setText("Name of the new directory") directoryLabel = QLabel(parent) directoryLabel.setText("Parent directory for the new directory") parent.newDirectoryInput = QLineEdit(parent) validator = QRegExpValidator(parent.newDirectoryInput) # altho a valid unix filename can contain anything but / and \0 (null) # this should be enough for every sane person pattern = QRegExp("[a-zA-Z0-9-_.]+") validator.setRegExp(pattern) parent.newDirectoryInput.setValidator(validator) parent.directoryInput = QLineEdit(parent.startDirectory, parent) parent.directoryInput.setReadOnly(True) browseButton = QPushButton("&Browse", parent) browseButton.clicked.connect(parent.browseDirectory) okButton = QPushButton("&Done", parent) okButton.clicked.connect(parent.createNewDirectory) cancelButton = QPushButton("&Cancel", parent) cancelButton.clicked.connect(parent.close) frame = QFrame(parent) frame.setFrameStyle(QFrame.HLine) frame.setFrameShadow(QFrame.Sunken) space = QWidget(parent) space.resize(400, 50) grid = QGridLayout(parent) grid.addWidget(descriptionLabel, 0, 0, 1, 3) grid.addWidget(newDirectoryLabel, 1, 0, 1, 3) grid.addWidget(parent.newDirectoryInput, 2, 0, 1, 3) grid.addWidget(directoryLabel, 3, 0, 1, 3) grid.addWidget(parent.directoryInput, 4, 0, 1, 2) grid.addWidget(browseButton, 4, 2, 1, 1) grid.addWidget(space, 5, 0, 1, 3) grid.addWidget(frame, 6, 0, 1, 3) grid.addWidget(cancelButton, 7, 0, 1, 1) grid.addWidget(okButton, 7, 2, 1, 1)
def createDialog(self): """ Create dialog """ self.dockToolbar = QToolBar(self) self.dockToolbar.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.setWindowTitle(WINDOW_TITLE) self.resize(500, 400) self.ipEdit = QLineEdit(self.defaultIp) ipRegExpVal = QRegExpValidator(self) ipRegExp = QRegExp("\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}") ipRegExpVal.setRegExp(ipRegExp) self.ipEdit.setValidator(ipRegExpVal) self.portEdit = QLineEdit(self.defaultPort) self.portEdit.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) validatorPort = QIntValidator(self) self.portEdit.setValidator(validatorPort) self.progressBar = QProgressBar(self) self.progressBar.setMaximum(100) self.progressBar.setProperty("value", 0) self.progressBar.setAlignment(Qt.AlignCenter) self.progressBar.setObjectName("progressBar") self.guiSikuliGroupBox = QGroupBox("") self.guiSikuliGroupBox.setFlat(True) self.automaticAdp = QRadioButton("Automatic") self.automaticAdp.setChecked(True) self.defaultAdp = QRadioButton("Default") self.genericAdp = QRadioButton("Generic") vbox = QHBoxLayout() vbox.addWidget(self.automaticAdp) vbox.addWidget(self.defaultAdp) vbox.addWidget(self.genericAdp) vbox.addStretch(1) self.guiSikuliGroupBox.setLayout(vbox) layout = QVBoxLayout() layout.addWidget(self.dockToolbar) layout.addSpacing(12) paramLayout = QGridLayout() paramLayout.addWidget(QLabel("Destination IP:"), 0, 0, Qt.AlignRight) paramLayout.addWidget(self.ipEdit, 0, 1) paramLayout.addWidget(QLabel("Destination Port:"), 1, 0, Qt.AlignRight) paramLayout.addWidget(self.portEdit, 1, 1) paramLayout.addWidget(QLabel(self.tr("Gui adapter selector:")), 2, 0, Qt.AlignRight) paramLayout.addWidget(self.guiSikuliGroupBox, 2, 1) layout.addLayout(paramLayout) self.logsEdit = QTextEdit() self.logsEdit.setReadOnly(True) self.logsEdit.setTextInteractionFlags(Qt.NoTextInteraction) layout.addSpacing(12) layout.addWidget(self.logsEdit) layout.addSpacing(12) layout.addWidget(self.progressBar) self.setLayout(layout)