foreach (const QtCamImageResolution& r, res) {
if (r.name() == resolution) {
- return m_cam->device()->imageMode()->setResolution(r);
+ bool set = m_cam->device()->imageMode()->setResolution(r);
+ if (set) {
+ emit currentResolutionMegapixelChanged();
+ }
+
+ return set;
}
}
int ImageSettings::aspectRatioCount() const {
return aspectRatios().count();
}
+
+QString ImageSettings::currentResolutionMegapixel() const {
+ if (!m_cam || !m_cam->device()) {
+ return QString();
+ }
+
+ return QString("%1").arg(m_cam->device()->imageMode()->currentResolution().megaPixels());
+}
Q_PROPERTY(int aspectRatioCount READ aspectRatioCount NOTIFY aspectRatioCountChanged);
Q_PROPERTY(ImageResolutionModel *resolutions READ resolutions NOTIFY resolutionsChanged);
Q_PROPERTY(bool ready READ isReady NOTIFY readyChanged);
+ Q_PROPERTY(QString currentResolutionMegapixel READ currentResolutionMegapixel NOTIFY currentResolutionMegapixelChanged);
public:
ImageSettings(QObject *parent = 0);
int aspectRatioCount() const;
+ QString currentResolutionMegapixel() const;
+
signals:
void settingsChanged();
void cameraChanged();
void resolutionsChanged();
void readyChanged();
void aspectRatioCountChanged();
+ void currentResolutionMegapixelChanged();
private slots:
void deviceChanged();