ImagePlayer::ImagePlayer(QWidget *parent, QString name ) : QWidget(parent) , surface(0) , playButton(0) , positionSlider(0) { connect(&movie, SIGNAL(stateChanged(QMovie::MovieState)), this, SLOT(movieStateChanged(QMovie::MovieState))); connect(&movie, SIGNAL(frameChanged(int)), this, SLOT(frameChanged(int))); ImageWidget *imageWidget = new ImageWidget( parent ); surface = imageWidget->videoSurface(); playButton = new QPushButton; playButton->setEnabled(false); playButton->setIcon(style()->standardIcon(QStyle::SP_MediaPlay)); connect(playButton, SIGNAL(clicked()), this, SLOT(play())); positionSlider = new QSlider(Qt::Horizontal); positionSlider->setRange(0, 0); connect(positionSlider, SIGNAL(sliderMoved(int)), this, SLOT(setPosition(int))); connect(&movie, SIGNAL(frameChanged(int)), positionSlider, SLOT(setValue(int))); QBoxLayout *controlLayout = new QHBoxLayout; controlLayout->setMargin(0); //controlLayout->addWidget(openButton); controlLayout->addWidget(playButton); controlLayout->addWidget(positionSlider); QBoxLayout *layout = new QVBoxLayout; layout->addWidget( imageWidget ); layout->addLayout( controlLayout ); setLayout(layout); // _name = name; openFile(); }