Revision 519b2fe3
Von Christian Ehringfeld vor mehr als 8 Jahren hinzugefügt
src/validators/imagevalidator.cpp | ||
---|---|---|
#include "imagevalidator.h"
|
||
|
||
#ifdef QT_GUI_LIB
|
||
#include <QImage>
|
||
#endif
|
||
using namespace CuteEntityManager;
|
||
ImageValidator::ImageValidator() : FileValidator() {
|
||
|
||
}
|
||
|
||
ErrorMsg ImageValidator::validateParam(QVariant value, Param param) const {
|
||
ErrorMsg msg = FileValidator::validateParam(value, param);
|
||
if (msg.getErrorMsg().isEmpty()) {
|
||
msg = this->validateImage(value, param);
|
||
}
|
||
return msg;
|
||
}
|
||
|
||
ErrorMsg ImageValidator::validateImage(QVariant value, Param param) const {
|
||
#ifdef QT_GUI_LIB
|
||
//isImage
|
||
QImage img = QImage(value.toString());
|
||
if (!img.isNull()) {
|
||
if (param.getName() == "minWidth"
|
||
&& img.width() < param.getValue().toLongLong()) {
|
||
ErrorMsg(param.getName(),
|
||
"The image " + value.toString() +
|
||
" is too smal. The width cannot be smaller than " + param.getValue().toString()
|
||
+ ".");
|
||
} else if (param.getName() == "maxWidth"
|
||
&& img.width() > param.getValue().toLongLong()) {
|
||
ErrorMsg(param.getName(),
|
||
"The image " + value.toString() +
|
||
" is too smal. The width cannot be larger than " + param.getValue().toString() +
|
||
".");
|
||
} else if (param.getName() == "minHeight"
|
||
&& img.height() < param.getValue().toLongLong()) {
|
||
ErrorMsg(param.getName(),
|
||
"The image " + value.toString() +
|
||
" is too smal. The height cannot be smaller than " + param.getValue().toString()
|
||
+ ".");
|
||
} else if (param.getName() == "maxHeight"
|
||
&& img.height() > param.getValue().toLongLong()) {
|
||
ErrorMsg(param.getName(),
|
||
"The image " + value.toString() +
|
||
" is too smal. The height cannot be larger than " + param.getValue().toString()
|
||
+ ".");
|
||
}
|
||
} else {
|
||
return ErrorMsg("", "The file " + value.toString() + " is not a valid image.");
|
||
}
|
||
#else
|
||
Q_UNUSED(value)
|
||
Q_UNUSED(param)
|
||
#endif
|
||
return ErrorMsg();
|
||
}
|
Auch abrufbar als: Unified diff
file, image and pattern validator