7#ifndef INTEGRAL_FRAME_DURATION_H
8#define INTEGRAL_FRAME_DURATION_H
12#include <klocalizedstring.h>
19#include "kritaimpex_export.h"
26 const QString &customWarning = QString())
29 if (customWarning.isEmpty()) {
31 i18nc(
"image conversion warning",
32 "The image is animated with a frame duration in "
33 "<b>fractions of a millisecond</b>. The "
34 "format cannot represent this, and the frame "
35 "duration will be rounded to the nearest millisecond.");
45 const auto frameDuration = 1000.0
48 return std::round(frameDuration) != frameDuration;
67 const QString &customWarning = QString())
override
72 QString
id()
const override
74 return "IntegralFrameDurationCheck";
KisExportCheckBase * create(KisExportCheckBase::Level level, const QString &customWarning=QString()) override
IntegralFrameDurationCheckFactory()=default
~IntegralFrameDurationCheckFactory() override=default
QString id() const override
Level check(KisImageSP) const override
bool checkNeeded(KisImageSP image) const override
IntegralFrameDurationCheck(const QString &id, Level level, const QString &customWarning=QString())
The KisExportCheckBase class defines the interface of the individual checks of an export filter's cap...
bool hasAnimation() const
KisImageAnimationInterface * animationInterface() const