summaryrefslogtreecommitdiffstats
path: root/pictureviewer2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'pictureviewer2.cpp')
-rw-r--r--pictureviewer2.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/pictureviewer2.cpp b/pictureviewer2.cpp
index fcdf4b7..7033a52 100644
--- a/pictureviewer2.cpp
+++ b/pictureviewer2.cpp
@@ -418,7 +418,15 @@ void PictureViewer2::showFile(const PicData &file){
mCurPicData = file;
QPixmap pixmap(file.at(PicFilesModel::FullPath).toString());
if(pixmap.isNull()){
- pixmap = QPixmap(mDefaultFile);
+ mCurPicData = Helper::convertToPng(file);
+ mFiles[mCurPos] = mCurPicData;
+ if(mCurPicData.isEmpty()){
+ return;
+ }
+ pixmap = QPixmap(mCurPicData.at(3).toString());
+ if(pixmap.isNull()){
+ pixmap = QPixmap(mDefaultFile);
+ }
}
if(mUseGradient){
setGradient(pixmap);
@@ -441,7 +449,7 @@ void PictureViewer2::showFile(const PicData &file){
mCur->setPos(picRect.topLeft());
setWindowTitle(constructWindowTitle());
if(mConfigInfoPos != ConfigurationDialog::NoDisplay && mShowInfoItem){
- constructInfoItem(file, pixmap.size());
+ constructInfoItem(mCurPicData, pixmap.size());
}else{
if(mFnItem){
mScene->removeItem(mFnItem);
@@ -450,7 +458,7 @@ void PictureViewer2::showFile(const PicData &file){
}
}
if(mConfigMapPos != ConfigurationDialog::NoDisplay && mShowMappingItem){
- constructMappingItem(file);
+ constructMappingItem(mCurPicData);
}else{
if(mMappingItem){
mScene->removeItem(mMappingItem);