Lines Matching refs:map
48 XkbClientMapPtr map;
61 if (xkb->map==NULL) {
62 map= calloc(1, sizeof(XkbClientMapRec));
63 if (map==NULL)
65 xkb->map= map;
67 else map= xkb->map;
70 if (map->types==NULL) {
71 map->types= calloc(nTotalTypes, sizeof(XkbKeyTypeRec));
72 if (map->types==NULL)
74 map->num_types= 0;
75 map->size_types= nTotalTypes;
77 else if (map->size_types<nTotalTypes) {
78 XkbKeyTypeRec *prev_types = map->types;
80 map->types= realloc(map->types,nTotalTypes * sizeof(XkbKeyTypeRec));
81 if (map->types==NULL) {
83 map->num_types= map->size_types= 0;
86 map->size_types= nTotalTypes;
87 memset(&map->types[map->num_types], 0,
88 ((map->size_types-map->num_types)*sizeof(XkbKeyTypeRec)));
93 if (map->syms==NULL) {
94 map->size_syms= (nKeys*15)/10;
95 map->syms= calloc(map->size_syms, sizeof(KeySym));
96 if (!map->syms) {
97 map->size_syms= 0;
100 map->num_syms= 1;
101 map->syms[0]= NoSymbol;
103 if (map->key_sym_map==NULL) {
105 map->key_sym_map= calloc(i, sizeof(XkbSymMapRec));
106 if (map->key_sym_map==NULL)
115 if (map->modmap==NULL) {
117 map->modmap= calloc(i, sizeof(unsigned char));
118 if (map->modmap==NULL)
129 XkbServerMapPtr map;
134 map= calloc(1, sizeof(XkbServerMapRec));
135 if (map==NULL)
138 map->vmods[i]= XkbNoModifierMask;
140 xkb->server= map;
142 else map= xkb->server;
148 if (map->explicit==NULL) {
150 map->explicit= calloc(i, sizeof(unsigned char));
151 if (map->explicit==NULL)
162 if (map->acts==NULL) {
163 map->acts= calloc((nNewActions+1), sizeof(XkbAction));
164 if (map->acts==NULL)
166 map->num_acts= 1;
167 map->size_acts= nNewActions+1;
169 else if ((map->size_acts-map->num_acts)<nNewActions) {
171 XkbAction *prev_acts = map->acts;
172 need= map->num_acts+nNewActions;
173 map->acts= realloc(map->acts,need * sizeof(XkbAction));
174 if (map->acts==NULL) {
176 map->num_acts= map->size_acts= 0;
179 map->size_acts= need;
180 memset(&map->acts[map->num_acts], 0,
181 ((map->size_acts-map->num_acts)*sizeof(XkbAction)));
183 if (map->key_acts==NULL) {
185 map->key_acts= calloc(i, sizeof(unsigned short));
186 if (map->key_acts==NULL)
195 if (map->behaviors==NULL) {
197 map->behaviors= calloc(i, sizeof(XkbBehavior));
198 if (map->behaviors==NULL)
207 if (map->vmodmap==NULL) {
209 map->vmodmap= calloc(i, sizeof(unsigned short));
210 if (map->vmodmap==NULL)
224 free(into->map);
225 into->map = NULL;
231 if ((from->map)&&(into->map_count>0)) {
232 into->map= calloc(into->map_count, sizeof(XkbKTMapEntryRec));
233 if (!into->map)
235 memcpy(into->map,from->map,into->map_count*sizeof(XkbKTMapEntryRec));
278 if ((type_ndx<0)||(type_ndx>=xkb->map->num_types)||(map_count<0)||
293 type= &xkb->map->types[type_ndx];
295 free(type->map);
296 type->map= NULL;
302 XkbKTMapEntryRec *prev_map = type->map;
304 if ((map_count>type->map_count)||(type->map==NULL))
305 type->map = realloc(type->map,map_count * sizeof(XkbKTMapEntryRec));
306 if (!type->map) {
388 xkb->map->size_syms= (nTotal*15)/10;
389 newSyms = calloc(xkb->map->size_syms, sizeof(KeySym));
404 xkb->map->key_sym_map[i].offset= nSyms;
410 xkb->map->key_sym_map[i].offset= nSyms;
415 free(xkb->map->syms);
416 xkb->map->syms= newSyms;
417 xkb->map->num_syms= nSyms;
470 xkb->map->key_sym_map[key].offset= 0;
471 return xkb->map->syms;
477 if (xkb->map->size_syms-xkb->map->num_syms>=(unsigned)needed) {
479 memcpy(&xkb->map->syms[xkb->map->num_syms],XkbKeySymsPtr(xkb,key),
483 memset(&xkb->map->syms[xkb->map->num_syms+XkbKeyNumSyms(xkb, key)],
486 xkb->map->key_sym_map[key].offset = xkb->map->num_syms;
487 xkb->map->num_syms+= needed;
488 return &xkb->map->syms[xkb->map->key_sym_map[key].offset];
490 xkb->map->size_syms+= (needed>32?needed:32);
491 newSyms = calloc(xkb->map->size_syms, sizeof(KeySym));
508 xkb->map->key_sym_map[i].offset = nSyms;
511 free(xkb->map->syms);
512 xkb->map->syms = newSyms;
513 xkb->map->num_syms = nSyms;
514 return &xkb->map->syms[xkb->map->key_sym_map[key].offset];
556 changes->map.min_key_code= minKC;
558 if (xkb->map) {
559 if (xkb->map->key_sym_map) {
560 memset((char *)&xkb->map->key_sym_map[minKC], 0,
563 changes->map.changed= _ExtendRange(changes->map.changed,
565 &changes->map.first_key_sym,
566 &changes->map.num_key_syms);
569 if (xkb->map->modmap) {
570 memset((char *)&xkb->map->modmap[minKC], 0, tmp);
572 changes->map.changed= _ExtendRange(changes->map.changed,
574 &changes->map.first_modmap_key,
575 &changes->map.num_modmap_keys);
584 changes->map.changed= _ExtendRange(changes->map.changed,
586 &changes->map.first_key_behavior,
587 &changes->map.num_key_behaviors);
594 changes->map.changed= _ExtendRange(changes->map.changed,
596 &changes->map.first_key_act,
597 &changes->map.num_key_acts);
604 changes->map.changed= _ExtendRange(changes->map.changed,
606 &changes->map.first_modmap_key,
607 &changes->map.num_vmodmap_keys);
624 changes->map.max_key_code= maxKC;
626 if (xkb->map) {
627 if (xkb->map->key_sym_map) {
628 XkbSymMapRec *prev_key_sym_map = xkb->map->key_sym_map;
630 xkb->map->key_sym_map = realloc(xkb->map->key_sym_map,
632 if (!xkb->map->key_sym_map) {
636 memset((char *)&xkb->map->key_sym_map[xkb->max_key_code], 0,
639 changes->map.changed= _ExtendRange(changes->map.changed,
641 &changes->map.first_key_sym,
642 &changes->map.num_key_syms);
645 if (xkb->map->modmap) {
646 unsigned char *prev_modmap = xkb->map->modmap;
648 xkb->map->modmap = realloc(xkb->map->modmap,
650 if (!xkb->map->modmap) {
654 memset((char *)&xkb->map->modmap[xkb->max_key_code], 0, tmp);
656 changes->map.changed= _ExtendRange(changes->map.changed,
658 &changes->map.first_modmap_key,
659 &changes->map.num_modmap_keys);
676 changes->map.changed= _ExtendRange(changes->map.changed,
678 &changes->map.first_key_behavior,
679 &changes->map.num_key_behaviors);
694 changes->map.changed= _ExtendRange(changes->map.changed,
696 &changes->map.first_key_act,
697 &changes->map.num_key_acts);
712 changes->map.changed= _ExtendRange(changes->map.changed,
714 &changes->map.first_modmap_key,
715 &changes->map.num_vmodmap_keys);
795 XkbClientMapPtr map;
797 if ((xkb==NULL)||(xkb->map==NULL))
801 map= xkb->map;
803 if (map->types!=NULL) {
804 if (map->num_types>0) {
807 for (i=0,type=map->types;i<map->num_types;i++,type++) {
808 free(type->map);
809 type->map = NULL;
817 free(map->types);
818 map->num_types= map->size_types= 0;
819 map->types= NULL;
823 free(map->key_sym_map);
824 map->key_sym_map = NULL;
825 if (map->syms!=NULL) {
826 free(map->syms);
827 map->size_syms= map->num_syms= 0;
828 map->syms= NULL;
831 if ((what&XkbModifierMapMask)&&(map->modmap!=NULL)) {
832 free(map->modmap);
833 map->modmap= NULL;
836 free(xkb->map);
837 xkb->map= NULL;
845 XkbServerMapPtr map;
851 map= xkb->server;
852 if ((what&XkbExplicitComponentsMask)&&(map->explicit!=NULL)) {
853 free(map->explicit);
854 map->explicit= NULL;
857 free(map->key_acts);
858 map->key_acts = NULL;
859 if (map->acts!=NULL) {
860 free(map->acts);
861 map->num_acts= map->size_acts= 0;
862 map->acts= NULL;
865 if ((what&XkbKeyBehaviorsMask)&&(map->behaviors!=NULL)) {
866 free(map->behaviors);
867 map->behaviors= NULL;
869 if ((what&XkbVirtualModMapMask)&&(map->vmodmap!=NULL)) {
870 free(map->vmodmap);
871 map->vmodmap= NULL;