Replaced QMediaRecorderControl::play/stop/pause with setState
This allows to introduce new states without breaking BC. Change-Id: I03c064cec92d6745b251a51cfb301e7f01f4b765 Reviewed-by: Ling Hu <ling.hu@nokia.com>
This commit is contained in:
committed by
Qt by Nokia
parent
b7935a84d7
commit
b36e2f5209
@@ -93,38 +93,33 @@ qint64 AudioMediaRecorderControl::duration() const
|
||||
return m_session->position();
|
||||
}
|
||||
|
||||
void AudioMediaRecorderControl::record()
|
||||
{
|
||||
if (m_state != QMediaRecorder::RecordingState) {
|
||||
m_state = QMediaRecorder::RecordingState;
|
||||
m_session->record();
|
||||
updateStatus();
|
||||
}
|
||||
}
|
||||
|
||||
void AudioMediaRecorderControl::pause()
|
||||
{
|
||||
if (m_state != QMediaRecorder::PausedState) {
|
||||
m_state = QMediaRecorder::PausedState;
|
||||
m_session->pause();
|
||||
updateStatus();
|
||||
}
|
||||
}
|
||||
|
||||
void AudioMediaRecorderControl::stop()
|
||||
{
|
||||
if (m_state != QMediaRecorder::StoppedState) {
|
||||
m_state = QMediaRecorder::StoppedState;
|
||||
m_session->pause();
|
||||
updateStatus();
|
||||
}
|
||||
}
|
||||
|
||||
bool AudioMediaRecorderControl::isMuted() const
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
void AudioMediaRecorderControl::setState(QMediaRecorder::State state)
|
||||
{
|
||||
if (m_state == state)
|
||||
return;
|
||||
|
||||
m_state = state;
|
||||
|
||||
switch (state) {
|
||||
case QMediaRecorder::StoppedState:
|
||||
m_session->stop();
|
||||
break;
|
||||
case QMediaRecorder::PausedState:
|
||||
m_session->pause();
|
||||
break;
|
||||
case QMediaRecorder::RecordingState:
|
||||
m_session->record();
|
||||
break;
|
||||
}
|
||||
|
||||
updateStatus();
|
||||
}
|
||||
|
||||
void AudioMediaRecorderControl::setMuted(bool)
|
||||
{
|
||||
}
|
||||
@@ -141,5 +136,5 @@ void AudioMediaRecorderControl::updateStatus()
|
||||
void AudioMediaRecorderControl::handleSessionError(int code, const QString &description)
|
||||
{
|
||||
emit error(code, description);
|
||||
stop();
|
||||
setState(QMediaRecorder::StoppedState);
|
||||
}
|
||||
|
||||
@@ -71,9 +71,7 @@ public:
|
||||
void applySettings() {}
|
||||
|
||||
public slots:
|
||||
void record();
|
||||
void pause();
|
||||
void stop();
|
||||
void setState(QMediaRecorder::State state);
|
||||
void setMuted(bool);
|
||||
|
||||
private slots:
|
||||
|
||||
@@ -126,6 +126,21 @@ qint64 QGstreamerRecorderControl::duration() const
|
||||
return m_session->duration();
|
||||
}
|
||||
|
||||
void QGstreamerRecorderControl::setState(QMediaRecorder::State state)
|
||||
{
|
||||
switch (state) {
|
||||
case QMediaRecorder::StoppedState:
|
||||
stop();
|
||||
break;
|
||||
case QMediaRecorder::PausedState:
|
||||
pause();
|
||||
break;
|
||||
case QMediaRecorder::RecordingState:
|
||||
record();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void QGstreamerRecorderControl::record()
|
||||
{
|
||||
if (m_state == QMediaRecorder::RecordingState)
|
||||
|
||||
@@ -71,6 +71,7 @@ public:
|
||||
void applySettings();
|
||||
|
||||
public slots:
|
||||
void setState(QMediaRecorder::State state);
|
||||
void record();
|
||||
void pause();
|
||||
void stop();
|
||||
|
||||
Reference in New Issue
Block a user