void CachedImage::saveToFile(const QString& filename) { if (!_available) return; if (filename.isEmpty()) return; auto pathTo = QString("%1/Taaasty/") .arg(QStandardPaths::writableLocation(QStandardPaths::PicturesLocation)); QDir dirTo; dirTo.mkpath(pathTo); auto to = QString("%1%2%3%4") .arg(pathTo) .arg(filename) .arg(_extension.isEmpty() ? QString() : ".") .arg(_extension); if (QFile::exists(to))// && !QFile::remove(to)) { qDebug() << "File exists" << to; emit Tasty::instance()->error(0, QString("Файл уже существует:\n%1").arg(to)); emit savingError(); return; } if (!QFile::copy(_path(), to)) { qDebug() << "Error copying" << to; emit Tasty::instance()->error(0, QString("Не удалось сохранить изображение в %1").arg(to)); emit savingError(); return; } emit Tasty::instance()->info(QString("Изображение сохранено в %1").arg(to)); emit fileSaved(); }
void QTlenRosterManager::saveMyAvatar(QImage image) { QByteArray ba; QBuffer buffer(&ba); buffer.open(QIODevice::WriteOnly); image.save(&buffer, "PNG"); image.save(QDir::homePath() + "/.qtlen4/avatar.png", "PNG"); QTlenAvatarSaver *saver = new QTlenAvatarSaver(); connect(saver, SIGNAL(saved()), this, SIGNAL(avatarSaved())); connect(saver, SIGNAL(error()), this, SIGNAL(savingError())); saver->start(); saver->saveAvatar(mailInfo, ba, token, 0); }