[ekiga/ds-gsettings3] Opal: Completed GSettings port.
- From: Damien Sandras <dsandras src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [ekiga/ds-gsettings3] Opal: Completed GSettings port.
- Date: Sun, 17 Nov 2013 16:54:56 +0000 (UTC)
commit 4d45172f9efc049439ab00295658534a59696081
Author: Damien Sandras <dsandras beip be>
Date: Sun Nov 17 16:49:39 2013 +0100
Opal: Completed GSettings port.
lib/ekiga-settings.h | 1 +
lib/engine/components/opal/opal-bank.cpp | 1 -
lib/engine/components/opal/opal-call-manager.cpp | 85 ++++++++++-
lib/engine/components/opal/opal-call-manager.h | 5 +
lib/engine/components/opal/opal-gmconf-bridge.cpp | 166 ---------------------
lib/engine/components/opal/opal-gmconf-bridge.h | 69 ---------
6 files changed, 85 insertions(+), 242 deletions(-)
---
diff --git a/lib/ekiga-settings.h b/lib/ekiga-settings.h
index b6be259..44a8372 100644
--- a/lib/ekiga-settings.h
+++ b/lib/ekiga-settings.h
@@ -55,6 +55,7 @@
#define VIDEO_DISPLAY_SCHEMA USER_INTERFACE ".video-display"
#define PROTOCOLS_SCHEMA "org.gnome." PACKAGE_NAME ".protocols"
+#define PORTS_SCHEMA PROTOCOLS_SCHEMA ".sip"
#define SIP_SCHEMA PROTOCOLS_SCHEMA ".sip"
#define H323_SCHEMA PROTOCOLS_SCHEMA ".h323"
#define CALL_FORWARDING_SCHEMA PROTOCOLS_SCHEMA ".call-forwarding"
diff --git a/lib/engine/components/opal/opal-bank.cpp b/lib/engine/components/opal/opal-bank.cpp
index 258538f..9f151cd 100644
--- a/lib/engine/components/opal/opal-bank.cpp
+++ b/lib/engine/components/opal/opal-bank.cpp
@@ -41,7 +41,6 @@
#include <glib/gi18n.h>
-#include "gmconf.h"
#include "menu-builder.h"
#include "form-request-simple.h"
diff --git a/lib/engine/components/opal/opal-call-manager.cpp
b/lib/engine/components/opal/opal-call-manager.cpp
index 6e29d63..6c1fc08 100644
--- a/lib/engine/components/opal/opal-call-manager.cpp
+++ b/lib/engine/components/opal/opal-call-manager.cpp
@@ -175,18 +175,42 @@ CallManager::CallManager (Ekiga::ServiceCore& core)
add_protocol_manager (h323_endpoint);
#endif
- nat_settings = boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (NAT_SCHEMA));
+ nat_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (NAT_SCHEMA));
nat_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
- audio_codecs_settings = boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (AUDIO_CODECS_SCHEMA));
+ audio_codecs_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (AUDIO_CODECS_SCHEMA));
audio_codecs_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
-
- video_codecs_settings = boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (VIDEO_CODECS_SCHEMA));
+
+ video_codecs_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (VIDEO_CODECS_SCHEMA));
video_codecs_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
- video_devices_settings = boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (VIDEO_DEVICES_SCHEMA));
+ video_devices_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (VIDEO_DEVICES_SCHEMA));
video_devices_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
+ ports_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (PORTS_SCHEMA));
+ ports_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
+
+ protocols_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (PROTOCOLS_SCHEMA));
+ protocols_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
+
+ call_options_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (CALL_OPTIONS_SCHEMA));
+ call_options_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
+
+ call_forwarding_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (CALL_FORWARDING_SCHEMA));
+ call_forwarding_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
+
+ personal_data_settings =
+ boost::shared_ptr<Ekiga::Settings> (new Ekiga::Settings (PERSONAL_DATA_SCHEMA));
+ personal_data_settings->changed.connect (boost::bind (&CallManager::setup, this, _1));
+
setup ();
}
@@ -1022,7 +1046,7 @@ CallManager::setup (const std::string & setting)
set_stun_server (nat_settings->get_string ("stun-server"));
}
if (setting.empty () || setting == "enable-stun") {
-
+
set_stun_enabled (nat_settings->get_bool ("enable-stun"));
}
if (setting.empty () || setting == "maximum-jitter-buffer") {
@@ -1037,6 +1061,30 @@ CallManager::setup (const std::string & setting)
set_echo_cancellation (audio_codecs_settings->get_bool ("enable-echo-cancellation"));
}
+ if (setting.empty () || setting == "rtp-tos-field") {
+ set_rtp_tos (protocols_settings->get_int ("rtp-tos-field"));
+ }
+ if (setting.empty () || setting == "no-answer-timeout") {
+
+ set_reject_delay (call_options_settings->get_int ("no-answer-timeout"));
+ }
+ if (setting.empty () || setting == "auto-answer") {
+ set_auto_answer (call_options_settings->get_bool ("auto-answer"));
+ }
+ if (setting.empty () || setting == "forward-on-no-anwer") {
+ set_forward_on_no_answer (call_forwarding_settings->get_bool ("forward-on-no-answer"));
+ }
+ if (setting.empty () || setting == "forward-on-busy") {
+ set_forward_on_busy (call_forwarding_settings->get_bool ("forward-on-busy"));
+ }
+ if (setting.empty () || setting == "always-forward") {
+ set_unconditional_forward (call_forwarding_settings->get_bool ("always-forward"));
+ }
+ if (setting.empty () || setting == "full-name") {
+ std::string full_name = personal_data_settings->get_string ("full-name");
+ if (!full_name.empty ())
+ set_display_name (full_name);
+ }
if (setting.empty () || setting == "maximum-video-tx-bitrate") {
options.maximum_transmitted_bitrate = video_codecs_settings->get_int ("maximum-video-tx-bitrate");
@@ -1079,6 +1127,31 @@ CallManager::setup (const std::string & setting)
if (v_codecs != fcodecs.get_video_list ())
video_codecs_settings->set_string_list ("media-list", fcodecs.get_video_list ().slist ());
}
+ if (setting.empty () || setting == "udp-port-range" || setting == "tcp-port-range") {
+
+ std::string ports;
+ gchar **couple = NULL;
+ unsigned min_port = 0;
+ unsigned max_port = 0;
+ const char *key[2] = { "udp-port-range", "tcp-port-range" };
+
+ for (int i = 0 ; i < 2 ; i++) {
+ ports = ports_settings->get_string (key[i]);
+ if (!ports.empty ())
+ couple = g_strsplit (ports.c_str (), ":", 2);
+ if (couple && couple [0])
+ min_port = atoi (couple [0]);
+ if (couple && couple [1])
+ max_port = atoi (couple [1]);
+
+ if (i == 0)
+ set_udp_ports (min_port, max_port);
+ else
+ set_tcp_ports (min_port, max_port);
+
+ g_strfreev (couple);
+ }
+ }
set_video_options (options);
}
diff --git a/lib/engine/components/opal/opal-call-manager.h b/lib/engine/components/opal/opal-call-manager.h
index 88cfaf9..dd51a11 100644
--- a/lib/engine/components/opal/opal-call-manager.h
+++ b/lib/engine/components/opal/opal-call-manager.h
@@ -229,6 +229,11 @@ private:
boost::shared_ptr<Ekiga::Settings> audio_codecs_settings;
boost::shared_ptr<Ekiga::Settings> video_codecs_settings;
boost::shared_ptr<Ekiga::Settings> video_devices_settings;
+ boost::shared_ptr<Ekiga::Settings> protocols_settings;
+ boost::shared_ptr<Ekiga::Settings> ports_settings;
+ boost::shared_ptr<Ekiga::Settings> call_options_settings;
+ boost::shared_ptr<Ekiga::Settings> call_forwarding_settings;
+ boost::shared_ptr<Ekiga::Settings> personal_data_settings;
/* FIXME: this piece of the api is because the code is getting turned around,
* this should disappear at some point! */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]