+ case BUFFER_EVENT_HIGHLIGHT:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+
+ action = ELM_ACCESS_ACTION_HIGHLIGHT;
+ info->x = x;
+ info->y = y;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_HIGHLIGHT: %dx%d returns %d\n", x, y, ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_ERROR : LB_ACCESS_STATUS_DONE;
+ break;
+ case BUFFER_EVENT_HIGHLIGHT_NEXT:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_HIGHLIGHT_NEXT;
+ info->highlight_cycle = EINA_FALSE;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_HIGHLIGHT_NEXT, returns %d\n", ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_LAST : LB_ACCESS_STATUS_DONE;
+ break;
+ case BUFFER_EVENT_HIGHLIGHT_PREV:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_HIGHLIGHT_PREV;
+ info->highlight_cycle = EINA_FALSE;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_HIGHLIGHT_PREV, returns %d\n", ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_FIRST : LB_ACCESS_STATUS_DONE;
+ break;
+ case BUFFER_EVENT_ACTIVATE:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_ACTIVATE;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_ACTIVATE, returns %d\n", ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_ERROR : LB_ACCESS_STATUS_DONE;
+ break;
+ case BUFFER_EVENT_ACTION_UP:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_UP;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_ACTION(%d), returns %d\n", down, ret);
+ break;
+ case BUFFER_EVENT_ACTION_DOWN:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_DOWN;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_ACTION(%d), returns %d\n", down, ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_ERROR : LB_ACCESS_STATUS_DONE;
+ break;
+ case BUFFER_EVENT_SCROLL_UP:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_SCROLL;
+ info->x = ix;
+ info->y = iy;
+ info->mouse_type = 0;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_HIGHLIGHT_SCROLL, returns %d\n", ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_ERROR : LB_ACCESS_STATUS_DONE;
+ break;
+ case BUFFER_EVENT_SCROLL_MOVE:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_SCROLL;
+ info->x = ix;
+ info->y = iy;
+ info->mouse_type = -1;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_HIGHLIGHT_SCROLL, returns %d\n", ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_ERROR : LB_ACCESS_STATUS_DONE;
+ break;
+ case BUFFER_EVENT_SCROLL_DOWN:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_SCROLL;
+ info->x = ix;
+ info->y = iy;
+ info->mouse_type = 1;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_HIGHLIGHT_SCROLL, returns %d\n", ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_ERROR : LB_ACCESS_STATUS_DONE;
+ break;
+ case BUFFER_EVENT_UNHIGHLIGHT:
+ if (!info->elm_parent)
+ return LB_ACCESS_STATUS_ERROR;
+ action = ELM_ACCESS_ACTION_UNHIGHLIGHT;
+ ret = elm_access_action(info->elm_parent, action, info);
+ DbgPrint("ACCESS_UNHIGHLIGHT, returns %d\n", ret);
+ ret = (ret == EINA_FALSE) ? LB_ACCESS_STATUS_ERROR : LB_ACCESS_STATUS_DONE;
+ break;