def __init__(self, parent=None): super(MainWindow, self).__init__(parent) # self.stackLayout = QStackedLayout() self.settings = QSettings('settings.ini', QSettings.IniFormat) self.vLayout = QVBoxLayout() self.toolBar = QToolBar('mainToolBar') self.addToolBar(Qt.RightToolBarArea, self.toolBar) self.centralWidget = QSplitter(Qt.Vertical) self.setCentralWidget(self.centralWidget) self.status = self.statusBar() self.colorWidgets = {} self.levelWidgets = {} self.cmbGS = QComboBox() self.cmbGS.addItems(self.listGSLevel) self.connect(self.cmbGS, SIGNAL("currentIndexChanged(int)"), self.fillCmbGSLevel) self.gsLevel = self.levelGS[self.cmbGS.currentText()] self.xdpiCmbBox = QComboBox() self.xdpiCmbBox.addItems(['720', '600', '360', '300', '180', '150']) self.ydpiCmbBox = QComboBox() self.ydpiCmbBox.addItems(['360', '300', '180', '150', '90', '75']) self.table = QTableWidget(0, 4) self.connect(self.table, SIGNAL("cellClicked(int, int)"), self.tableCellActivated) self.table.setHorizontalHeaderLabels( ['Filename', 'Color', 'GS Level', 'Size']) self._table = TableWidget(self.table, self.cmbGS, self.xdpiCmbBox, self.ydpiCmbBox) self.connect(self._table, SIGNAL("insertRowAfter(int)"), self.addFile) self.connect(self._table, SIGNAL("removeRowAt(int)"), self.removeFile) # self._table.setAcceptDrops(True) self.table.setAcceptDrops(True) self.scene = QGraphicsScene() self.view = QGraphicsView(self.scene) self.scale = False self.chkBoxScale = QCheckBox("See the Whole") self.connect(self.chkBoxScale, SIGNAL("toggled(bool)"), self.setScale) self.centralWidget.addWidget(self._table) vbox = QVBoxLayout() vbox.addWidget(self.chkBoxScale) vbox.addWidget(self.view) widget = QWidget() widget.setLayout(vbox) self.centralWidget.addWidget(widget) # self.centralWidget.addWidget(self.statusBar) savePrnAction = self.createAction('Create .prn', self.savePrnFile, QKeySequence.Save, 'save_as', 'Create test file') self.toolBar.addAction(savePrnAction) unpackPrnAction = self.createAction('Unpack .prn', self.unpackPrnFile, QKeySequence.Open, 'analyze', 'Unpack prn file') self.toolBar.addAction(unpackPrnAction) editHeaderAction = self.createAction( 'Edit .prn', self.changeResolution, QKeySequence(Qt.CTRL + Qt.Key_E), 'edit', 'Change print resolution in prn file') self.toolBar.addAction(editHeaderAction) self.pix = QPixmap() self.pix.convertFromImage(QImage()) self.grPixmap = QGraphicsPixmapItem(self.pix) self.scene.addItem(self.grPixmap) # self.view.scale(0.3, 0.3) self.setWindowTitle('PRN Creator {}'.format(self.ver)) self.setWindowIcon(QIcon('icons/icon.png')) desktop = QApplication.desktop() rect = desktop.availableGeometry() pos = self.settings.value('window/pos', QPoint(0, 0)) if pos.x() < rect.left(): x = rect.left() else: x = pos.x() if pos.y() < rect.top(): y = rect.top() else: y = pos.y() self.resize(self.settings.value('window/size', QSize(640, 480))) self.move(x, y) self.setWindowState( Qt.WindowState(int(self.settings.value('window/state', 0))))