cannam@6: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ cannam@6: cannam@6: #include "ImageWindow.h" cannam@6: cannam@6: #include cannam@6: #include cannam@6: #include cannam@6: cannam@6: #include cannam@6: cannam@7: ImageWindow *ImageWindow::m_instance = 0; cannam@7: cannam@6: ImageWindow::ImageWindow(QWidget *parent) : cannam@6: QDialog(parent), cannam@6: m_pixmap(0) cannam@6: { cannam@6: QVBoxLayout *layout = new QVBoxLayout; cannam@6: setLayout(layout); cannam@6: m_label = new QLabel; cannam@6: layout->addWidget(m_label); cannam@6: } cannam@6: cannam@6: ImageWindow::~ImageWindow() cannam@6: { cannam@6: delete m_pixmap; cannam@6: } cannam@6: cannam@7: ImageWindow * cannam@7: ImageWindow::getInstance() cannam@7: { cannam@7: if (m_instance) return m_instance; cannam@7: m_instance = new ImageWindow(); cannam@7: m_instance->show(); cannam@7: return m_instance; cannam@7: } cannam@7: cannam@6: void cannam@6: ImageWindow::showImage(QString image) cannam@6: { cannam@6: std::cerr << "ImageWindow::showImage(\"" << image.toStdString() << "\")" << std::endl; cannam@6: cannam@6: if (m_imageName == image) return; cannam@6: QPixmap *oldPixmap = m_pixmap; cannam@6: m_pixmap = new QPixmap(image); cannam@6: m_label->setPixmap(*m_pixmap); cannam@6: m_label->setFixedSize(m_pixmap->size()); cannam@6: m_label->show(); cannam@6: delete oldPixmap; cannam@6: m_imageName = image; cannam@6: } cannam@6: