|
@@ -2,7 +2,7 @@
|
|
|
|
|
|
#include <QFileInfo>
|
|
|
|
|
|
-QspImgCanvas::QspImgCanvas(QWidget *parent) : QDialog(parent)
|
|
|
+QspImgCanvas::QspImgCanvas(QWidget *parent) : QWidget(parent)
|
|
|
{
|
|
|
m_posX = m_posY = 0;
|
|
|
m_isAnim = false;
|
|
@@ -16,11 +16,14 @@ QspImgCanvas::QspImgCanvas(QWidget *parent) : QDialog(parent)
|
|
|
sizePolicy().setVerticalPolicy(QSizePolicy::Expanding);
|
|
|
label_image.sizePolicy().setHorizontalPolicy(QSizePolicy::Expanding);
|
|
|
label_image.sizePolicy().setVerticalPolicy(QSizePolicy::Expanding);
|
|
|
- label_image.setScaledContents(true);
|
|
|
+ //label_image.setScaledContents(true);
|
|
|
layout.addWidget(&label_image);
|
|
|
setLayout(&layout);
|
|
|
- setVisible(false);
|
|
|
- setModal(false);
|
|
|
+ label_image.setMinimumSize(50, 50);
|
|
|
+ setMinimumSize(50, 50);
|
|
|
+ //setVisible(false);
|
|
|
+ //setModal(false);
|
|
|
+ connect(&m_movie, SIGNAL(frameChanged(int)), this, SLOT(OnNewFrame(int)) );
|
|
|
}
|
|
|
|
|
|
QspImgCanvas::~QspImgCanvas()
|
|
@@ -49,7 +52,7 @@ bool QspImgCanvas::OpenFile(const QString &fileName)
|
|
|
}
|
|
|
if (m_isAnim)
|
|
|
{
|
|
|
- label_image.setMovie(&m_movie);
|
|
|
+ //label_image.setMovie(&m_movie);
|
|
|
ret = true;
|
|
|
}
|
|
|
else
|
|
@@ -60,7 +63,8 @@ bool QspImgCanvas::OpenFile(const QString &fileName)
|
|
|
}
|
|
|
if (ret)
|
|
|
{
|
|
|
- setVisible(true);
|
|
|
+ resizeEvent(0);
|
|
|
+ //setVisible(true);
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
@@ -84,22 +88,48 @@ void QspImgCanvas::SetGamePath(const QString &path)
|
|
|
|
|
|
bool QspImgCanvas::SetBackgroundColor(const QColor &color)
|
|
|
{
|
|
|
+ QString sheet = QString::fromLatin1("QLabel { background-color : %1 }").arg(color.name());
|
|
|
+ label_image.setStyleSheet(sheet);
|
|
|
//wxWindow::SetBackgroundColor(color);
|
|
|
//m_animation->SetBackgroundColor(color);
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
-void QspImgCanvas::keyPressEvent(QKeyEvent *event)
|
|
|
+void QspImgCanvas::resizeEvent(QResizeEvent *event)
|
|
|
{
|
|
|
- if(event->key() == Qt::Key_Escape)
|
|
|
+ if (m_isAnim)
|
|
|
{
|
|
|
- setVisible(false);
|
|
|
- event->ignore();
|
|
|
+ //label_image.setMovie(&m_movie);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ if(!m_image.isNull())
|
|
|
+ label_image.setPixmap(m_image.scaled(label_image.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation));
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-void QspImgCanvas::closeEvent(QCloseEvent *event)
|
|
|
+void QspImgCanvas::OnNewFrame(int frameNumber)
|
|
|
{
|
|
|
- setVisible(false);
|
|
|
- event->ignore();
|
|
|
+ if (m_isAnim)
|
|
|
+ {
|
|
|
+ if(m_movie.isValid())
|
|
|
+ {
|
|
|
+ label_image.setPixmap(m_movie.currentPixmap().scaled(label_image.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation));
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
+//void QspImgCanvas::keyPressEvent(QKeyEvent *event)
|
|
|
+//{
|
|
|
+// if(event->key() == Qt::Key_Escape)
|
|
|
+// {
|
|
|
+// setVisible(false);
|
|
|
+// event->ignore();
|
|
|
+// }
|
|
|
+//}
|
|
|
+
|
|
|
+//void QspImgCanvas::closeEvent(QCloseEvent *event)
|
|
|
+//{
|
|
|
+// setVisible(false);
|
|
|
+// event->ignore();
|
|
|
+//}
|