static void MapInterpolateGet(Widget w, StdForm *sf, XmListCallbackStruct *cb) { int n, nL; list *pL; list *mL; MAP *m = NULL; list *get_action_list(); list *get_maplist(); void wprintf(); mL = get_maplist(); if ((pL = get_action_list(cb, &nL, *mL)) == NULL) return; for (n=0; n<nL; n++) m = (MAP *)DATA(pL[n]); sf->any = m; wprintf(sf->edit[0], "Interpolated %s", m->name); free(pL); }
Array InputMap::_get_action_list(const StringName& p_action) { Array ret; const List<InputEvent> *al = get_action_list(p_action); if (al) { for(const List<InputEvent>::Element *E=al->front();E;E=E->next()) { ret.push_back(E->get());; } } return ret; }