From 1e83bd74b371595d827a14008ed8d09b354e55eb Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Wed, 1 Mar 2017 17:23:17 +0100 Subject: [PATCH] feat(ui/views/App/Settings/SettingsCallsChat): supports auto answer delay --- .../src/components/settings/SettingsModel.cpp | 13 +++++++++++++ .../src/components/settings/SettingsModel.hpp | 7 +++++++ .../ui/views/App/Settings/SettingsCallsChat.qml | 8 ++++++++ 3 files changed, 28 insertions(+) diff --git a/linphone-desktop/src/components/settings/SettingsModel.cpp b/linphone-desktop/src/components/settings/SettingsModel.cpp index f30019fd8..96d62ce55 100644 --- a/linphone-desktop/src/components/settings/SettingsModel.cpp +++ b/linphone-desktop/src/components/settings/SettingsModel.cpp @@ -42,6 +42,19 @@ SettingsModel::SettingsModel (QObject *parent) : QObject(parent) { // Chat & calls. // ============================================================================= +// ----------------------------------------------------------------------------- + +int SettingsModel::getAutoAnswerDelay () const { + return m_config->getInt(UI_SECTION, "auto_answer_delay", 0); +} + +void SettingsModel::setAutoAnswerDelay (int delay) { + m_config->setInt(UI_SECTION, "auto_answer_delay", delay); + emit autoAnswerDelayChanged(delay); +} + +// ----------------------------------------------------------------------------- + bool SettingsModel::getAutoAnswerStatus () const { return !!m_config->getInt(UI_SECTION, "auto_answer", 0); } diff --git a/linphone-desktop/src/components/settings/SettingsModel.hpp b/linphone-desktop/src/components/settings/SettingsModel.hpp index 36de2fbe1..b52e7d31b 100644 --- a/linphone-desktop/src/components/settings/SettingsModel.hpp +++ b/linphone-desktop/src/components/settings/SettingsModel.hpp @@ -38,6 +38,8 @@ class SettingsModel : public QObject { // Chat & calls. ------------------------------------------------------------- Q_PROPERTY(bool autoAnswerStatus READ getAutoAnswerStatus WRITE setAutoAnswerStatus NOTIFY autoAnswerStatusChanged); + Q_PROPERTY(int autoAnswerDelay READ getAutoAnswerDelay WRITE setAutoAnswerDelay NOTIFY autoAnswerDelayChanged); + Q_PROPERTY(QString fileTransferUrl READ getFileTransferUrl WRITE setFileTransferUrl NOTIFY fileTransferUrlChanged); Q_PROPERTY(bool limeIsSupported READ getLimeIsSupported CONSTANT); @@ -114,6 +116,9 @@ public: bool getAutoAnswerStatus () const; void setAutoAnswerStatus (bool status); + int getAutoAnswerDelay () const; + void setAutoAnswerDelay (int delay); + QString getFileTransferUrl () const; void setFileTransferUrl (const QString &url); @@ -199,6 +204,8 @@ signals: // Chat & calls. ------------------------------------------------------------- void autoAnswerStatusChanged (bool status); + void autoAnswerDelayChanged (int delay); + void fileTransferUrlChanged (const QString &url); void mediaEncryptionChanged (MediaEncryption encryption); diff --git a/linphone-desktop/ui/views/App/Settings/SettingsCallsChat.qml b/linphone-desktop/ui/views/App/Settings/SettingsCallsChat.qml index 33122f5ff..5b54f27ec 100644 --- a/linphone-desktop/ui/views/App/Settings/SettingsCallsChat.qml +++ b/linphone-desktop/ui/views/App/Settings/SettingsCallsChat.qml @@ -68,6 +68,14 @@ TabContainer { NumericField { readOnly: !autoAnswer.checked + + minValue: 0 + maxValue: 30000 + step: 1000 + + text: SettingsModel.autoAnswerDelay + + onEditingFinished: SettingsModel.autoAnswerDelay = text } } }