void ListHookedConsumer::disableNumLock(void) { ListHookedConsumer::Item* p = static_cast<ListHookedConsumer::Item*>(get_replaced()); if (p) { p->disableNumLock(); } }
void ListHookedConsumer::apply(const Params_KeyboardSpecialEventCallback& params) { ListHookedConsumer::Item* p = static_cast<ListHookedConsumer::Item*>(get_replaced()); if (p) { p->apply(params); } }
void ListHookedPointing::apply(const Params_ScrollWheelEventCallback& params) { ListHookedPointing::Item* p = static_cast<ListHookedPointing::Item*>(get_replaced()); if (p) { p->apply(params); } }
void ListHookedKeyboard::apply(const Params_UpdateEventFlagsCallback& params) { ListHookedKeyboard::Item* p = static_cast<ListHookedKeyboard::Item*>(get_replaced()); if (p) { p->apply(params); } }
void ListHookedPointing::apply(const Params_RelativePointerEventCallback& params) { // if all button are released, send event for all devices. if (params.buttons == Buttons(0) && params.dx == 0 && params.dy == 0) { for (Item* p = static_cast<Item*>(list_.safe_front()); p; p = static_cast<Item*>(p->getnext())) { if (!p->isReplaced()) continue; p->apply(params); } } else { ListHookedPointing::Item* p = static_cast<ListHookedPointing::Item*>(get_replaced()); if (p) { p->apply(params); } } }
static int replace_dollar(char **str, int *i) { int j; char *tmp; j = *i; if ((*str)[*i + 1] == '?' || (ft_isalnum((*str)[*i + 1]) == 0 && (*str)[*i + 1] != '_')) { *i += 2; return (0); } while ((*str)[*i + 1] && (ft_isalnum((*str)[*i + 1]) == 1 || (*str)[*i + 1] == '_') && *i - j < 256) (*i)++; tmp = get_replaced(*str, i, j); free(*str); *str = tmp; return (0); }