/*! Construct a declarative camera object using \a parent object. */ QDeclarativeCamera::QDeclarativeCamera(QObject *parent) : QObject(parent), m_camera(0), m_pendingState(ActiveState), m_componentComplete(false) { m_camera = new QCamera(this); m_imageCapture = new QDeclarativeCameraCapture(m_camera, this); m_videoRecorder = new QDeclarativeCameraRecorder(m_camera, this); m_exposure = new QDeclarativeCameraExposure(m_camera, this); m_flash = new QDeclarativeCameraFlash(m_camera, this); m_focus = new QDeclarativeCameraFocus(m_camera, this); m_imageProcessing = new QDeclarativeCameraImageProcessing(m_camera, this); connect(m_camera, SIGNAL(captureModeChanged(QCamera::CaptureModes)), this, SIGNAL(captureModeChanged())); connect(m_camera, SIGNAL(lockStatusChanged(QCamera::LockStatus,QCamera::LockChangeReason)), this, SIGNAL(lockStatusChanged())); connect(m_camera, SIGNAL(stateChanged(QCamera::State)), this, SLOT(_q_updateState(QCamera::State))); connect(m_camera, SIGNAL(statusChanged(QCamera::Status)), this, SIGNAL(cameraStatusChanged())); connect(m_camera, SIGNAL(error(QCamera::Error)), this, SLOT(_q_error(QCamera::Error))); connect(m_camera, SIGNAL(availabilityChanged(QMultimedia::AvailabilityStatus)), this, SLOT(_q_availabilityChanged(QMultimedia::AvailabilityStatus))); connect(m_camera->focus(), SIGNAL(opticalZoomChanged(qreal)), this, SIGNAL(opticalZoomChanged(qreal))); connect(m_camera->focus(), SIGNAL(digitalZoomChanged(qreal)), this, SIGNAL(digitalZoomChanged(qreal))); connect(m_camera->focus(), SIGNAL(maximumOpticalZoomChanged(qreal)), this, SIGNAL(maximumOpticalZoomChanged(qreal))); connect(m_camera->focus(), SIGNAL(maximumDigitalZoomChanged(qreal)), this, SIGNAL(maximumDigitalZoomChanged(qreal))); }
VideoRecorder::VideoRecorder(QDeclarativeItem *parent) : QDeclarativeItem(parent) { m_camera = new QCamera(this); connect(m_camera, SIGNAL(stateChanged(QCamera::State)), SLOT(cameraStateChanged(QCamera::State))); connect(m_camera, SIGNAL(statusChanged(QCamera::Status)), SLOT(cameraStatusChanged(QCamera::Status))); connect(m_camera, SIGNAL(error(QCamera::Error)), SLOT(cameraError(QCamera::Error))); m_viewFinder = new QGraphicsVideoItem(this); m_viewFinder->setAspectRatioMode(Qt::IgnoreAspectRatio); m_camera->setViewfinder(m_viewFinder); m_camera->setCaptureMode(QCamera::CaptureVideo); m_recorder = new QMediaRecorder(m_camera, this); connect(m_recorder, SIGNAL(stateChanged(QMediaRecorder::State)), SLOT(recorderStateChanged(QMediaRecorder::State))); connect(m_recorder, SIGNAL(error(QMediaRecorder::Error)), SLOT(recorderError(QMediaRecorder::Error))); connect(m_recorder, SIGNAL(durationChanged(qint64)), SLOT(videoDurationChanged(qint64))); }