/* window backend */
typedef void (*scl_nui_update_window_cb)(SCLWindowType type, int x, int y, int width, int height, void* user_data);
-typedef int (*scl_nui_key_click_event_cb)(SclUIEventDesc event_desc);
-typedef int (*scl_nui_drag_state_changed_cb)(SclUIEventDesc event_desc);
+typedef int (*scl_nui_key_click_event_cb)(const char *key_value, unsigned long key_event, int key_type, int key_modifier);
+typedef int (*scl_nui_drag_state_changed_cb)(const char *key_value, unsigned long key_event, int key_type, int event_type, int current_x, int current_y);
typedef int (*scl_nui_event_notification_cb)(SCLUINotiType noti_type, SclNotiDesc *etc_info);
typedef void (*scl_nui_update_window_position_cb)(SCLWindowType type, int pos_x, int pos_y, int rot_x, int rot_y, void* user_data);
int scl_nui_init(const char *entry_filepath);
int scl_nui_fini();
+int scl_nui_show();
+int scl_nui_hide();
int scl_nui_get_input_mode(const char **input_mode);
int scl_nui_set_input_mode(const char *input_mode);
int scl_nui_set_cur_sublayout(const char *sub_layout_name);
int scl_nui_set_string_substitution(const char *original, const char *substitute);
+int scl_nui_unset_string_substitution(const char *original);
int scl_nui_set_update_window_cb(scl_nui_update_window_cb callback, void *user_data);
int scl_nui_set_update_window_position_cb(scl_nui_update_window_position_cb callback, void *user_data);
int scl_nui_enable_magnifier(bool enabled);
+int scl_nui_enable_sound(bool enabled);
+int scl_nui_enable_vibration(bool enabled);
+int scl_nui_set_private_key(const char* custom_id, char* label, char* imagelabel[SCL_BUTTON_STATE_MAX], char* imagebg[SCL_BUTTON_STATE_MAX], unsigned long key_event, char *key_value, bool redraw);
+int scl_nui_unset_private_key(const char* custom_id);
+int scl_nui_enable_button(const char* custom_id, bool enabled);
+int scl_nui_get_shift_state(unsigned int *state);
+int scl_nui_set_shift_state(unsigned int state);
+int scl_nui_set_autocapital_shift_state(bool state);
+int scl_nui_disable_input_event(bool disable);
#ifdef __cplusplus
}
LOGI("");
int ret = 0;
if (g_key_click_event_cb) {
- ret = g_key_click_event_cb(event_desc);
+ ret = g_key_click_event_cb(event_desc.key_value, (int)event_desc.key_event, event_desc.key_type, event_desc.key_modifier);
}
return (SCLEventReturnType)ret;
LOGI("");
int ret = 0;
if (g_drag_state_changed_cb) {
- ret = g_drag_state_changed_cb(event_desc);
+ ret = g_drag_state_changed_cb(event_desc.key_value, (int)event_desc.key_event, event_desc.key_type, event_desc.event_type, event_desc.mouse_current_point.x, event_desc.mouse_current_point.y);
}
return (SCLEventReturnType)ret;
return ret;
}
+EXPORT_API int scl_nui_show()
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("");
+ g_ui->show();
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_hide()
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("");
+ g_ui->hide();
+
+ return 0;
+}
+
EXPORT_API int scl_nui_get_input_mode(const char **input_mode)
{
if (!g_ui)
return 0;
}
+EXPORT_API int scl_nui_unset_string_substitution(const char *original)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("original : %s", original);
+
+ g_ui->unset_string_substitution(original);
+
+ return 0;
+}
+
EXPORT_API int scl_nui_set_update_window_cb(scl_nui_update_window_cb callback, void *user_data)
{
g_update_window_cb = callback;
g_ui->enable_magnifier(enabled);
return 0;
+}
+
+EXPORT_API int scl_nui_enable_sound(bool enabled)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("enabled : %d", enabled);
+
+ g_ui->enable_sound(enabled);
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_enable_vibration(bool enabled)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("enabled : %d", enabled);
+
+ g_ui->enable_vibration(enabled);
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_set_private_key(const char* custom_id, char* label, char* imagelabel[SCL_BUTTON_STATE_MAX], char* imagebg[SCL_BUTTON_STATE_MAX], unsigned long key_event, char *key_value, bool redraw)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("custom_id : %s, label : %s, ", custom_id, label);
+
+ static sclchar *private_label[SCL_BUTTON_STATE_MAX] = {
+ const_cast<sclchar*>(imagelabel[0]), const_cast<sclchar*>(imagelabel[1]), const_cast<sclchar*>(imagelabel[2])};
+ g_ui->set_private_key(custom_id, label, private_label, imagebg, key_event, key_value, redraw);
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_unset_private_key(const char* custom_id)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("custom_id : %s", custom_id);
+
+ g_ui->unset_private_key(custom_id);
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_enable_button(const char* custom_id, bool enabled)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("custom_id : %s, enabled : %d", custom_id, enabled);
+
+ g_ui->enable_button(custom_id, enabled);
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_get_shift_state(unsigned int *state)
+{
+ if (!g_ui)
+ return 1;
+
+ SCLShiftState ret = g_ui->get_shift_state();
+
+ LOGD("shift state : %d", ret);
+ *state = ret;
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_set_shift_state(unsigned int state)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("shift state : %d", state);
+
+ g_ui->set_shift_state((SCLShiftState)state);
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_set_autocapital_shift_state(bool state)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("state : %d", state);
+
+ g_ui->set_autocapital_shift_state(state);
+
+ return 0;
+}
+
+EXPORT_API int scl_nui_disable_input_event(bool disable)
+{
+ if (!g_ui)
+ return 1;
+
+ LOGD("disable : %d", disable);
+
+ g_ui->disable_input_events(disable);
+
+ return 0;
}
\ No newline at end of file