/* window backend */
typedef void (*scl_nui_update_window_cb)(int x, int y, int width, int height, void* user_data);
+typedef int (*scl_nui_key_click_event_cb)(SclUIEventDesc event_desc);
int scl_nui_init(const char *entry_filepath);
int scl_nui_fini();
int scl_nui_set_update_window_cb(scl_nui_update_window_cb callback, void *user_data);
+int scl_nui_set_key_click_event_cb(scl_nui_key_click_event_cb callback);
+
#ifdef __cplusplus
}
#endif
static scl_nui_update_window_cb g_update_window_cb = NULL;
static void *g_update_window_cb_data = NULL;
+static scl_nui_key_click_event_cb g_key_click_event_cb = NULL;
+
void CUIGraphicsBackendCallback::on_draw_text(const SclFontInfo& font_info, const SclColor& color, const char *str, int pos_x, int pos_y, int w, int h,
SCLLabelAlignment align, int padding_x, int padding_y, int inner_width, int inner_height, void* user_data)
//const char *str, int x, int y, int w, int h, int fontsize, void* user_data)
SCLEventReturnType CUIEventCallback::on_event_key_clicked(SclUIEventDesc event_desc)
{
LOGI("");
- return SCL_EVENT_PASS_ON;
+ int ret = 0;
+ if (g_key_click_event_cb) {
+ ret = g_key_click_event_cb(event_desc);
+ }
+
+ return (SCLEventReturnType)ret;
}
SCLEventReturnType CUIEventCallback::on_event_notification(SCLUINotiType noti_type, SclNotiDesc *etc_info)
return 0;
}
+
+EXPORT_API int scl_nui_set_key_click_event_cb(scl_nui_key_click_event_cb callback)
+{
+ g_key_click_event_cb = callback;
+
+ return 0;
+}
\ No newline at end of file