def __init__(self, model, enlargeFunction, parent): QWidget.__init__(self, parent) def enlarge(index): enlargeFunction(model.list[index.row()]) windowSize = self.window().frameSize() self.resize(QSize(windowSize.width()-(25+utilities.bigCardSize[0]),275)) lvViewer = QListView(self) lvViewer.setModel(model) lvViewer.setDragEnabled(True) lvViewer.setHorizontalScrollMode(QAbstractItemView.ScrollPerPixel) lvViewer.setFlow(QListView.LeftToRight) lvViewer.setFocus() self.connect(lvViewer, SIGNAL('clicked(QModelIndex)'), enlarge) button = QPushButton("Close", self) self.connect(button,SIGNAL('clicked()'),self.hide) layout = QVBoxLayout(self) layout.addWidget(QLabel("I'm sorry this is so ugly.",self)) layout.addWidget(lvViewer) layout.addWidget(button) self.setLayout(layout) self.show()
def displayExile(self): from PyQt4.QtGui import QListView, QAbstractItemView, QPushButton, QVBoxLayout, QLabel from PyQt4.QtCore import QSize from util import utilities windowSize = self.window().frameSize() self.viewer = QWidget(self.window()) self.viewer.move(10,10) self.viewer.resize(QSize(windowSize.width()-(25+utilities.bigCardSize[0]),275)) lvViewer = QListView(self.viewer) lvViewer.setModel(self.model) lvViewer.setDragEnabled(True) lvViewer.setHorizontalScrollMode(QAbstractItemView.ScrollPerPixel) lvViewer.setFlow(QListView.LeftToRight) lvViewer.setFocus() self.connect(lvViewer, SIGNAL('clicked(QModelIndex)'), self.enlarge) button = QPushButton("Close", self.viewer) self.connect(button,SIGNAL('clicked()'),self.hideViewer) layout = QVBoxLayout(self) layout.addWidget(QLabel("I'm sorry this is so ugly.",self.viewer)) layout.addWidget(lvViewer) layout.addWidget(button) self.viewer.setLayout(layout) self.viewer.show()