#include "videosettings.h"
#include "imagesettings.h"
-#include <qmediaservice.h>
-#include <qmediarecorder.h>
-#include <qcamera.h>
-#include <qcameraviewfinder.h>
+#include <QMediaService>
+#include <QMediaRecorder>
+#include <QCameraViewfinder>
-#include <qmessagebox.h>
-#include <qpalette.h>
+#include <QMessageBox>
+#include <QPalette>
#include <QtWidgets>
ui->menuDevices->addAction(videoDeviceAction);
}
- connect(videoDevicesGroup, SIGNAL(triggered(QAction*)), this, SLOT(updateCameraDevice(QAction*)));
+ connect(videoDevicesGroup, SIGNAL(triggered(QAction*)), SLOT(updateCameraDevice(QAction*)));
connect(ui->captureWidget, SIGNAL(currentChanged(int)), SLOT(updateCaptureMode()));
#ifdef HAVE_CAMERA_BUTTONS
return;
switch (event->key()) {
-#if QT_VERSION >= 0x040700
case Qt::Key_CameraFocus:
displayViewfinder();
camera->searchAndLock();
}
event->accept();
break;
-#endif
default:
QMainWindow::keyPressEvent(event);
}
}
-void Camera::keyReleaseEvent(QKeyEvent * event)
+void Camera::keyReleaseEvent(QKeyEvent *event)
{
if (event->isAutoRepeat())
return;
switch (event->key()) {
-#if QT_VERSION >= 0x040700
case Qt::Key_CameraFocus:
camera->unlock();
break;
-#endif
default:
QMainWindow::keyReleaseEvent(event);
}
Qt::SmoothTransformation);
ui->lastImagePreviewLabel->setPixmap(QPixmap::fromImage(scaledImage));
- //display captured image for 4 seconds
+
+ // Display captured image for 4 seconds.
displayCapturedImage();
QTimer::singleShot(4000, this, SLOT(displayViewfinder()));
}
}
void Camera::takeImage()
-
{
isCapturingImage = true;
imageCapture->capture();
#ifndef CAMERA_H
#define CAMERA_H
-#include <qcamera.h>
-#include <qmediarecorder.h>
-#include <qcameraimagecapture.h>
-
-QT_BEGIN_NAMESPACE
-namespace Ui {
- class Camera;
-}
-class QCameraViewfinder;
-QT_END_NAMESPACE
+#include <QCamera>
+#include <QCameraImageCapture>
+#include <QMediaRecorder>
#include <QMainWindow>
-#include <QDir>
-QT_USE_NAMESPACE
+QT_BEGIN_NAMESPACE
+namespace Ui { class Camera; }
+QT_END_NAMESPACE
class Camera : public QMainWindow
{
Q_OBJECT
+
public:
Camera(QWidget *parent = 0);
~Camera();
void displayRecorderError();
void displayCameraError();
- void updateCameraDevice(QAction*);
+ void updateCameraDevice(QAction *action);
void updateCameraState(QCamera::State);
void updateCaptureMode();
void updateRecordTime();
- void processCapturedImage(int requestId, const QImage& img);
+ void processCapturedImage(int requestId, const QImage &img);
void updateLockStatus(QCamera::LockStatus, QCamera::LockChangeReason);
void displayViewfinder();
void displayCapturedImage();
- void readyForCapture(bool);
- void imageSaved(int, const QString&);
+ void readyForCapture(bool ready);
+ void imageSaved(int id, const QString &fileName);
protected:
- void keyPressEvent(QKeyEvent * event);
- void keyReleaseEvent(QKeyEvent * event);
- void closeEvent(QCloseEvent *event );
+ void keyPressEvent(QKeyEvent *event);
+ void keyReleaseEvent(QKeyEvent *event);
+ void closeEvent(QCloseEvent *event);
private:
Ui::Camera *ui;
#include "imagesettings.h"
#include "ui_imagesettings.h"
-#include <QtWidgets/qcombobox.h>
-#include <QtCore/qdebug.h>
-#include <qcameraimagecapture.h>
-#include <qmediaservice.h>
-
+#include <QComboBox>
+#include <QDebug>
+#include <QCameraImageCapture>
+#include <QMediaService>
ImageSettings::ImageSettings(QCameraImageCapture *imageCapture, QWidget *parent) :
void ImageSettings::selectComboBoxItem(QComboBox *box, const QVariant &value)
{
- for (int i=0; i<box->count(); i++) {
+ for (int i = 0; i < box->count(); ++i) {
if (box->itemData(i) == value) {
box->setCurrentIndex(i);
break;
#ifndef IMAGESETTINGS_H
#define IMAGESETTINGS_H
-#include <QtWidgets/QDialog>
-#include <qmediaencodersettings.h>
+#include <QDialog>
+#include <QAudioEncoderSettings>
+#include <QVideoEncoderSettings>
QT_BEGIN_NAMESPACE
class QComboBox;
-namespace Ui {
- class ImageSettingsUi;
-}
-
class QCameraImageCapture;
+namespace Ui { class ImageSettingsUi; }
QT_END_NAMESPACE
-QT_USE_NAMESPACE
-
-class ImageSettings : public QDialog {
+class ImageSettings : public QDialog
+{
Q_OBJECT
+
public:
ImageSettings(QCameraImageCapture *imageCapture, QWidget *parent = 0);
~ImageSettings();
QAudioEncoderSettings audioSettings() const;
- void setAudioSettings(const QAudioEncoderSettings&);
+ void setAudioSettings(const QAudioEncoderSettings &settings);
QImageEncoderSettings imageSettings() const;
- void setImageSettings(const QImageEncoderSettings&);
+ void setImageSettings(const QImageEncoderSettings &settings);
QString format() const;
void setFormat(const QString &format);
void changeEvent(QEvent *e);
private:
- QVariant boxValue(const QComboBox*) const;
+ QVariant boxValue(const QComboBox *box) const;
void selectComboBoxItem(QComboBox *box, const QVariant &value);
Ui::ImageSettingsUi *ui;
#include "videosettings.h"
#include "ui_videosettings.h"
-#include <QtWidgets/qcombobox.h>
-#include <QtCore/qdebug.h>
-#include <qmediarecorder.h>
-#include <qmediaservice.h>
+#include <QComboBox>
+#include <QDebug>
+#include <QMediaRecorder>
+#include <QMediaService>
VideoSettings::VideoSettings(QMediaRecorder *mediaRecorder, QWidget *parent) :
//audio codecs
ui->audioCodecBox->addItem(tr("Default audio codec"), QVariant(QString()));
- foreach(const QString &codecName, mediaRecorder->supportedAudioCodecs()) {
+ foreach (const QString &codecName, mediaRecorder->supportedAudioCodecs()) {
QString description = mediaRecorder->audioCodecDescription(codecName);
ui->audioCodecBox->addItem(codecName+": "+description, QVariant(codecName));
}
//sample rate:
- foreach(int sampleRate, mediaRecorder->supportedAudioSampleRates()) {
+ foreach (int sampleRate, mediaRecorder->supportedAudioSampleRates()) {
ui->audioSampleRateBox->addItem(QString::number(sampleRate), QVariant(sampleRate));
}
//video codecs
ui->videoCodecBox->addItem(tr("Default video codec"), QVariant(QString()));
- foreach(const QString &codecName, mediaRecorder->supportedVideoCodecs()) {
+ foreach (const QString &codecName, mediaRecorder->supportedVideoCodecs()) {
QString description = mediaRecorder->videoCodecDescription(codecName);
ui->videoCodecBox->addItem(codecName+": "+description, QVariant(codecName));
}
ui->videoResolutionBox->addItem(tr("Default"));
QList<QSize> supportedResolutions = mediaRecorder->supportedResolutions();
- foreach(const QSize &resolution, supportedResolutions) {
+ foreach (const QSize &resolution, supportedResolutions) {
ui->videoResolutionBox->addItem(QString("%1x%2").arg(resolution.width()).arg(resolution.height()),
QVariant(resolution));
}
ui->videoFramerateBox->addItem(tr("Default"));
QList<qreal> supportedFrameRates = mediaRecorder->supportedFrameRates();
qreal rate;
- foreach(rate, supportedFrameRates) {
+ foreach (rate, supportedFrameRates) {
QString rateString = QString("%1").arg(rate, 0, 'f', 2);
ui->videoFramerateBox->addItem(rateString, QVariant(rate));
}
//containers
ui->containerFormatBox->addItem(tr("Default container"), QVariant(QString()));
- foreach(const QString &format, mediaRecorder->supportedContainers()) {
+ foreach (const QString &format, mediaRecorder->supportedContainers()) {
ui->containerFormatBox->addItem(format+":"+mediaRecorder->containerDescription(format),
QVariant(format));
}
ui->videoQualitySlider->setValue(videoSettings.quality());
//special case for frame rate
- for (int i=0; i<ui->videoFramerateBox->count(); i++) {
+ for (int i = 0; i < ui->videoFramerateBox->count(); ++i) {
qreal itemRate = ui->videoFramerateBox->itemData(i).value<qreal>();
if (qFuzzyCompare(itemRate, videoSettings.frameRate())) {
ui->videoFramerateBox->setCurrentIndex(i);
void VideoSettings::selectComboBoxItem(QComboBox *box, const QVariant &value)
{
- for (int i=0; i<box->count(); i++) {
+ for (int i = 0; i < box->count(); ++i) {
if (box->itemData(i) == value) {
box->setCurrentIndex(i);
break;
#ifndef VIDEOSETTINGS_H
#define VIDEOSETTINGS_H
-#include <QtWidgets/QDialog>
-#include <qmediaencodersettings.h>
+#include <QDialog>
+#include <QAudioEncoderSettings>
+#include <QVideoEncoderSettings>
QT_BEGIN_NAMESPACE
class QComboBox;
-namespace Ui {
- class VideoSettingsUi;
-}
-
class QMediaRecorder;
+namespace Ui { class VideoSettingsUi; }
QT_END_NAMESPACE
-QT_USE_NAMESPACE
-
-class VideoSettings : public QDialog {
+class VideoSettings : public QDialog
+{
Q_OBJECT
+
public:
VideoSettings(QMediaRecorder *mediaRecorder, QWidget *parent = 0);
~VideoSettings();