Add config_flush () 66/45566/1
authorHaifeng Deng <haifeng.deng@samsung.com>
Fri, 7 Aug 2015 07:56:38 +0000 (15:56 +0800)
committerJihoon Kim <jihoon48.kim@samsung.com>
Fri, 7 Aug 2015 10:04:32 +0000 (19:04 +0900)
Change-Id: Iba55c303b1e459ac2c374fb20d06c69b32409b6e
Signed-off-by: Haifeng Deng <haifeng.deng@samsung.com>
src/sclconnection-isf.cpp
src/sclconnection-isf.h
src/sclconnection.cpp
src/sclconnection.h
src/sclcore.cpp
src/sclcore.h
src/sclcoreimpl.cpp
src/sclcoreimpl.h

index a35abb2..96514eb 100644 (file)
@@ -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;
 }
index 2ef0605..a31098f 100644 (file)
@@ -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();
index b1ddef3..77dd424 100644 (file)
@@ -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) {
index 24905d1..bf9df23 100644 (file)
@@ -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();
index 64f7c1b..aa17f15 100644 (file)
@@ -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) {
index bc5be66..521b165 100644 (file)
@@ -78,6 +78,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
      *
      * @param[in] ic The handle of the IMEngineInstance to receive the event.
index d705522..de45bab 100644 (file)
@@ -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);
index 933b84d..2a7d61f 100644 (file)
@@ -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();