Lines Matching refs:map

45     XkbClientMapPtr map;
61 if (xkb->map == NULL) {
62 map = _XkbTypedCalloc(1, XkbClientMapRec);
63 if (map == NULL)
65 xkb->map = map;
68 map = xkb->map;
71 if (map->types == NULL) {
72 map->num_types = map->size_types = 0;
74 if ((map->types == NULL) || (map->size_types < nTotalTypes)) {
75 _XkbResizeArray(map->types, map->size_types, nTotalTypes,
78 if (map->types == NULL) {
79 map->num_types = map->size_types = 0;
82 map->size_types = nTotalTypes;
88 if (map->syms == NULL) {
89 map->size_syms = (nKeys * 15) / 10;
90 map->syms = _XkbTypedCalloc(map->size_syms, KeySym);
91 if (!map->syms) {
92 map->size_syms = 0;
95 map->num_syms = 1;
96 map->syms[0] = NoSymbol;
98 if (map->key_sym_map == NULL) {
100 map->key_sym_map = _XkbTypedCalloc(i, XkbSymMapRec);
101 if (map->key_sym_map == NULL)
110 if (map->modmap == NULL) {
112 map->modmap = _XkbTypedCalloc(i, unsigned char);
113 if (map->modmap == NULL)
124 XkbServerMapPtr map;
129 map = _XkbTypedCalloc(1, XkbServerMapRec);
130 if (map == NULL)
133 map->vmods[i] = XkbNoModifierMask;
135 xkb->server = map;
138 map = xkb->server;
144 if (map->explicit == NULL) {
146 map->explicit = _XkbTypedCalloc(i, unsigned char);
147 if (map->explicit == NULL)
158 if (map->acts == NULL) {
159 map->num_acts = 1;
160 map->size_acts = 0;
162 if ((map->acts == NULL) ||
163 ((map->size_acts - map->num_acts) < nNewActions)) {
166 need = map->num_acts + nNewActions;
167 _XkbResizeArray(map->acts, map->size_acts, need, XkbAction);
168 if (map->acts == NULL) {
169 map->num_acts = map->size_acts = 0;
172 map->size_acts = need;
174 if (map->key_acts == NULL) {
176 map->key_acts = _XkbTypedCalloc(i, unsigned short);
177 if (map->key_acts == NULL)
186 if (map->behaviors == NULL) {
188 map->behaviors = _XkbTypedCalloc(i, XkbBehavior);
189 if (map->behaviors == NULL)
198 if (map->vmodmap == NULL) {
200 map->vmodmap = _XkbTypedCalloc(i, unsigned short);
201 if (map->vmodmap == NULL)
216 _XkbFree(into->map);
217 into->map = NULL;
226 if ((from->map) && (into->map_count > 0)) {
227 into->map = _XkbTypedCalloc(into->map_count, XkbKTMapEntryRec);
228 if (!into->map)
230 memcpy(into->map, from->map,
274 XkbClientMapPtr map;
278 map = xkb->map;
279 if ((map) && (map->types)) {
280 for (i = 0; i < map->num_types; i++) {
281 if (map->types[i].name == name) {
285 return (status == Success ? &map->types[i] : NULL);
289 if ((!map) || (!map->types) || (map->num_types < XkbNumRequiredTypes)) {
293 if (!map)
294 map = xkb->map;
296 if (map->num_types <= XkbKeypadIndex)
298 if (map->num_types <= XkbAlphabeticIndex)
300 if (map->num_types <= XkbTwoLevelIndex)
302 if (map->num_types <= XkbOneLevelIndex)
305 for (i = 0; i < map->num_types; i++) {
308 if (map->types[i].name != name)
312 return (status == Success ? &map->types[i] : NULL);
316 if ((map->num_types <= map->size_types) &&
317 (XkbAllocClientMap(xkb, XkbKeyTypesMask, map->num_types + 1) !=
321 type = &map->types[map->num_types];
322 map->num_types++;
328 type->map = _XkbTypedCalloc(map_count, XkbKTMapEntryRec);
329 if (!type->map) {
330 map->num_types--;
336 _XkbFree(type->map);
337 map->num_types--;
355 if ((type_ndx < 0) || (type_ndx >= xkb->map->num_types) || (map_count < 0)
370 type = &xkb->map->types[type_ndx];
372 _XkbFree(type->map);
373 type->map = NULL;
379 if ((map_count > type->map_count) || (type->map == NULL))
380 _XkbResizeArray(type->map, type->map_count, map_count,
382 if (!type->map) {
460 xkb->map->size_syms = (nTotal * 15) / 10;
461 newSyms = _XkbTypedCalloc(xkb->map->size_syms, KeySym);
477 xkb->map->key_sym_map[i].offset = nSyms;
483 xkb->map->key_sym_map[i].offset = nSyms;
488 _XkbFree(xkb->map->syms);
489 xkb->map->syms = newSyms;
490 xkb->map->num_syms = nSyms;
548 xkb->map->key_sym_map[key].offset = 0;
549 return xkb->map->syms;
555 if (xkb->map->size_syms - xkb->map->num_syms >= (unsigned) needed) {
557 memcpy(&xkb->map->syms[xkb->map->num_syms], XkbKeySymsPtr(xkb, key),
561 bzero(&xkb->map->syms[xkb->map->num_syms + XkbKeyNumSyms(xkb, key)],
564 xkb->map->key_sym_map[key].offset = xkb->map->num_syms;
565 xkb->map->num_syms += needed;
566 return &xkb->map->syms[xkb->map->key_sym_map[key].offset];
568 xkb->map->size_syms += (needed > 32 ? needed : 32);
569 newSyms = _XkbTypedCalloc(xkb->map->size_syms, KeySym);
587 xkb->map->key_sym_map[i].offset = nSyms;
590 _XkbFree(xkb->map->syms);
591 xkb->map->syms = newSyms;
592 xkb->map->num_syms = nSyms;
593 return &xkb->map->syms[xkb->map->key_sym_map[key].offset];
636 changes->map.min_key_code = minKC;
638 if (xkb->map) {
639 if (xkb->map->key_sym_map) {
640 bzero((char *) &xkb->map->key_sym_map[minKC],
643 changes->map.changed = _ExtendRange(changes->map.changed,
645 &changes->map.first_key_sym,
646 &changes->map.num_key_syms);
649 if (xkb->map->modmap) {
650 bzero((char *) &xkb->map->modmap[minKC], tmp);
652 changes->map.changed = _ExtendRange(changes->map.changed,
654 &changes->map.first_modmap_key,
655 &changes->map.num_modmap_keys);
664 changes->map.changed = _ExtendRange(changes->map.changed,
666 &changes->map.first_key_behavior,
667 &changes->map.num_key_behaviors);
674 changes->map.changed = _ExtendRange(changes->map.changed,
676 &changes->map.first_key_act,
677 &changes->map.num_key_acts);
684 changes->map.changed = _ExtendRange(changes->map.changed,
686 &changes->map.first_vmodmap_key,
687 &changes->map.num_vmodmap_keys);
705 changes->map.max_key_code = maxKC;
707 if (xkb->map) {
708 if (xkb->map->key_sym_map) {
709 _XkbResizeArray(xkb->map->key_sym_map, xkb->max_key_code + 1,
711 if (!xkb->map->key_sym_map) {
715 changes->map.changed = _ExtendRange(changes->map.changed,
717 &changes->map.first_key_sym,
718 &changes->map.num_key_syms);
721 if (xkb->map->modmap) {
722 _XkbResizeArray(xkb->map->modmap, xkb->max_key_code + 1,
724 if (!xkb->map->modmap) {
728 changes->map.changed = _ExtendRange(changes->map.changed,
730 &changes->map.first_modmap_key,
731 &changes->map.num_modmap_keys);
743 changes->map.changed = _ExtendRange(changes->map.changed,
745 &changes->map.first_key_behavior,
746 &changes->map.num_key_behaviors);
756 changes->map.changed = _ExtendRange(changes->map.changed,
758 &changes->map.first_key_act,
759 &changes->map.num_key_acts);
769 changes->map.changed = _ExtendRange(changes->map.changed,
771 &changes->map.first_vmodmap_key,
772 &changes->map.num_vmodmap_keys);
849 XkbClientMapPtr map;
851 if ((xkb == NULL) || (xkb->map == NULL))
855 map = xkb->map;
857 if (map->types != NULL) {
858 if (map->num_types > 0) {
862 for (i = 0, type = map->types; i < map->num_types; i++, type++) {
863 _XkbFree(type->map);
864 type->map = NULL;
875 _XkbFree(map->types);
876 map->num_types = map->size_types = 0;
877 map->types = NULL;
881 _XkbFree(map->key_sym_map);
882 map->key_sym_map = NULL;
884 _XkbFree(map->syms);
885 map->size_syms = map->num_syms = 0;
886 map->syms = NULL;
889 _XkbFree(map->modmap);
890 map->modmap = NULL;
893 _XkbFree(xkb->map);
894 xkb->map = NULL;
902 XkbServerMapPtr map;
908 map = xkb->server;
910 _XkbFree(map->explicit);
911 map->explicit = NULL;
914 _XkbFree(map->key_acts);
915 map->key_acts = NULL;
917 _XkbFree(map->acts);
918 map->num_acts = map->size_acts = 0;
919 map->acts = NULL;
922 _XkbFree(map->behaviors);
923 map->behaviors = NULL;
926 _XkbFree(map->vmodmap);
927 map->vmodmap = NULL;