From: Haifeng Deng Date: Fri, 7 Aug 2015 07:56:38 +0000 (+0800) Subject: Add config_flush () X-Git-Tag: submit/tizen/20150810.034127~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4e6adad8ce02021e87f583acf5e5eeea8c8a8868;p=platform%2Fcore%2Fuifw%2Flibscl-core.git Add config_flush () Change-Id: Iba55c303b1e459ac2c374fb20d06c69b32409b6e Signed-off-by: Haifeng Deng --- diff --git a/src/sclconnection-isf.cpp b/src/sclconnection-isf.cpp index a35abb2..96514eb 100644 --- a/src/sclconnection-isf.cpp +++ b/src/sclconnection-isf.cpp @@ -667,6 +667,7 @@ sclboolean CSCLConnectionISF::config_read_int(const sclchar *name, sclint &value sclboolean ret = FALSE; if (m_initialized && _scim_config) { value = _scim_config->read(name, value); + ret = TRUE; } return ret; } @@ -676,6 +677,7 @@ sclboolean CSCLConnectionISF::config_read_string(const sclchar *name, std::strin sclboolean ret = FALSE; if (m_initialized && _scim_config) { value = _scim_config->read(name, value); + ret = TRUE; } return ret; } @@ -685,6 +687,7 @@ sclboolean CSCLConnectionISF::config_write_int(const sclchar *name, sclint value sclboolean ret = FALSE; if (m_initialized && _scim_config) { _scim_config->write(name, value); + ret = TRUE; } return ret; } @@ -694,6 +697,7 @@ sclboolean CSCLConnectionISF::config_write_string(const sclchar *name, const std sclboolean ret = FALSE; if (m_initialized && _scim_config) { _scim_config->write(name, value); + ret = TRUE; } return ret; } @@ -703,6 +707,17 @@ sclboolean CSCLConnectionISF::config_erase(const sclchar *name) sclboolean ret = FALSE; if (m_initialized && _scim_config) { _scim_config->erase(name); + ret = TRUE; + } + return ret; +} + +sclboolean CSCLConnectionISF::config_flush(void) +{ + sclboolean ret = FALSE; + if (m_initialized && _scim_config) { + _scim_config->flush(); + ret = TRUE; } return ret; } diff --git a/src/sclconnection-isf.h b/src/sclconnection-isf.h index 2ef0605..a31098f 100644 --- a/src/sclconnection-isf.h +++ b/src/sclconnection-isf.h @@ -53,6 +53,7 @@ public: sclboolean config_write_int(const sclchar *name, sclint value); sclboolean config_write_string(const sclchar *name, const std::string value); sclboolean config_erase(const sclchar *name); + sclboolean config_flush(void); void send_imengine_event(sclint ic, const sclchar *ic_uuid, const sclint command, const sclu32 value); void reset_keyboard_ise(); diff --git a/src/sclconnection.cpp b/src/sclconnection.cpp index b1ddef3..77dd424 100644 --- a/src/sclconnection.cpp +++ b/src/sclconnection.cpp @@ -124,6 +124,15 @@ sclboolean CSCLConnection::config_erase(const sclchar *name) return ret; } +sclboolean CSCLConnection::config_flush(void) +{ + sclboolean ret = FALSE; + if (m_impl) { + ret = m_impl->config_flush(); + } + return ret; +} + void CSCLConnection::send_imengine_event(sclint ic, const sclchar *ic_uuid, const sclint command, const sclu32 value) { if (m_impl) { diff --git a/src/sclconnection.h b/src/sclconnection.h index 24905d1..bf9df23 100644 --- a/src/sclconnection.h +++ b/src/sclconnection.h @@ -53,6 +53,7 @@ public: virtual sclboolean config_write_int(const sclchar *name, sclint value); virtual sclboolean config_write_string(const sclchar *name, const std::string value); virtual sclboolean config_erase(const sclchar *name); + virtual sclboolean config_flush(void); virtual void send_imengine_event(sclint ic, const sclchar *ic_uuid, const sclint command, const sclu32 value); virtual void reset_keyboard_ise(); diff --git a/src/sclcore.cpp b/src/sclcore.cpp index 64f7c1b..aa17f15 100644 --- a/src/sclcore.cpp +++ b/src/sclcore.cpp @@ -93,6 +93,15 @@ sclboolean CSCLCore::config_erase(const sclchar *name) return ret; } +sclboolean CSCLCore::config_flush(void) +{ + sclboolean ret = FALSE; + if (m_impl) { + ret = m_impl->config_flush(); + } + return ret; +} + void CSCLCore::send_imengine_event(sclint ic, const sclchar *ic_uuid, const sclint command, const sclu32 value) { if (m_impl) { diff --git a/src/sclcore.h b/src/sclcore.h index bc5be66..521b165 100644 --- a/src/sclcore.h +++ b/src/sclcore.h @@ -77,6 +77,11 @@ public: */ sclboolean config_erase(const sclchar *name); + /** + * @brief Request ISF to permanently writes all changes. + */ + sclboolean config_flush(void); + /** * @brief Send an Event to IMEngine * diff --git a/src/sclcoreimpl.cpp b/src/sclcoreimpl.cpp index d705522..de45bab 100644 --- a/src/sclcoreimpl.cpp +++ b/src/sclcoreimpl.cpp @@ -125,6 +125,11 @@ sclboolean CSCLCoreImpl::config_erase(const sclchar *name) return m_connection.config_erase(name); } +sclboolean CSCLCoreImpl::config_flush(void) +{ + return m_connection.config_flush(); +} + void CSCLCoreImpl::send_imengine_event(sclint ic, const sclchar *ic_uuid, const sclint command, const sclu32 value) { m_connection.send_imengine_event(ic, ic_uuid, command, value); diff --git a/src/sclcoreimpl.h b/src/sclcoreimpl.h index 933b84d..2a7d61f 100644 --- a/src/sclcoreimpl.h +++ b/src/sclcoreimpl.h @@ -58,6 +58,7 @@ public: sclboolean config_write_int(const sclchar *name, sclint value); sclboolean config_write_string(const sclchar *name, const std::string value); sclboolean config_erase(const sclchar *name); + sclboolean config_flush(void); void send_imengine_event(sclint ic, const sclchar *ic_uuid, const sclint command, const sclu32 value); void reset_keyboard_ise();