Recorder::~Recorder()
{
+ if (getState() != RECORDER_STATE_READY) {
+ recorder_cancel(m_Recorder);
+ }
+ recorder_unset_recording_status_cb(m_Recorder);
+ recorder_unset_recording_limit_reached_cb(m_Recorder);
+ recorder_unset_interrupted_cb(m_Recorder);
+ recorder_unprepare(m_Recorder);
recorder_destroy(m_Recorder);
}
image.normal: RECORD_BTN_CLOSE;
color: 77 77 77 255;
}
- desc { "hiden";
+ desc { "hidden";
inherit: "default";
visible: 0;
}
program {
signal: SIGNAL_CLOSE_BTN_HIDE;
source: "*";
- action: STATE_SET "hiden" 0.0;
+ action: STATE_SET "hidden" 0.0;
target: PART_CLOSE_BTN;
}
}
}
programs {
program {
- name: "record";
signal: SIGNAL_BTN_RESUME;
source: "*";
script {
}
}
program {
- name: "pause";
signal: SIGNAL_BTN_PAUSE;
source: "*";
script {
script {
if (get_int(is_paused) == 1) {
emit(BTN_PAUSE_CLICKED, "");
- run_program(PROGRAM:"record");
} else {
emit(BTN_RESUME_CLICKED, "");
- run_program(PROGRAM:"pause");
}
}
}
RecordField::~RecordField()
{
if (m_Recorder) {
- m_Recorder->save();
delete m_Recorder;
}
if (m_PlayTimer) {
case ModeRecorder:
if (m_Recorder->getState() == RECORDER_STATE_RECORDING) {
pauseRecorder();
- elm_object_signal_emit(m_RecordBtn, SIGNAL_BTN_RESUME, "*");
}
break;
case ModePlayer:
if (m_Player->getState() == PLAYER_STATE_PLAYING) {
pausePlayer();
- elm_object_signal_emit(m_PlayBtn, SIGNAL_BTN_RESUME, "*");
}
break;
}
}
+void RecordField::save()
+{
+ if (m_Mode == ModeRecorder && (m_Recorder->getState() == RECORDER_STATE_RECORDING
+ || m_Recorder->getState() == RECORDER_STATE_PAUSED)) {
+ m_Recorder->save();
+ }
+}
+
Evas_Object *RecordField::onCreate(Evas_Object *parent)
{
Evas_Object *layout = elm_layout_add(parent);
{
m_Recorder->pause();
elm_object_signal_emit(getEvasObject(), SIGNAL_ICON_PAUSE, "*");
+ elm_object_signal_emit(m_RecordBtn, SIGNAL_BTN_RESUME, "*");
}
void RecordField::pausePlayer()
{
ecore_timer_freeze(m_PlayTimer);
m_Player->pause();
+ elm_object_signal_emit(m_PlayBtn, SIGNAL_BTN_RESUME, "*");
}
void RecordField::onRecording(unsigned long long elapsedTime, unsigned long long fileSize)
m_Recorder->start();
elm_object_signal_emit(getEvasObject(), SIGNAL_ICON_REC, "*");
elm_object_signal_emit(getEvasObject(), SIGNAL_BTN_STOP_SHOW, "*");
+ elm_object_signal_emit(m_RecordBtn, SIGNAL_BTN_PAUSE, "*");
}
void RecordField::onRecordPausePressed()
m_Player->start();
elm_object_signal_emit(getEvasObject(), SIGNAL_RECORD_TIME_HIDE, "*");
elm_object_signal_emit(getEvasObject(), SIGNAL_PROGRESS_BAR_SHOW, "*");
+ elm_object_signal_emit(m_PlayBtn, SIGNAL_BTN_PAUSE, "*");
elm_progressbar_value_set(m_ProgressBar, 0.0);
ecore_timer_thaw(m_PlayTimer);
}