6187 # define pe ((XPropertyEvent *)&ev) |
6188 # define pe ((XPropertyEvent *)&ev) |
6188 # define sce ((XSelectionClearEvent *)&ev) |
6189 # define sce ((XSelectionClearEvent *)&ev) |
6189 # define cme ((XColormapEvent *)&ev) |
6190 # define cme ((XColormapEvent *)&ev) |
6190 |
6191 |
6191 if (((t = __INST(lastId)) != nil) |
6192 if (((t = __INST(lastId)) != nil) |
6192 && __isExternalAddress(t) |
6193 && __isExternalAddress(t) |
6193 && (__WindowVal(t) == ae->window)) { |
6194 && (__WindowVal(t) == ae->window)) { |
6194 windowID = t; |
6195 windowID = t; |
6195 } else { |
6196 } else { |
6196 windowID = __MKEXTERNALADDRESS(ae->window); |
6197 windowID = __MKEXTERNALADDRESS(ae->window); |
6197 } |
6198 } |
6198 |
6199 |
6199 __ArrayInstPtr(anEventArray)->a_element[0] = windowID; __STORE(anEventArray, windowID); |
6200 __ArrayInstPtr(anEventArray)->a_element[0] = windowID; __STORE(anEventArray, windowID); |
6200 __ArrayInstPtr(anEventArray)->a_element[1] = __MKSMALLINT(ev.type); |
6201 __ArrayInstPtr(anEventArray)->a_element[1] = __MKSMALLINT(ev.type); |
6201 |
6202 |
6202 switch (ev.type) { |
6203 switch (ev.type) { |
6203 case KeyRelease: |
6204 case KeyRelease: |
6204 sym = @symbol(keyRelease:key:code:state:x:y:rootX:rootY:time:); |
6205 sym = @symbol(keyRelease:key:code:state:x:y:rootX:rootY:time:); |
6205 goto keyPressAndRelease; |
6206 goto keyPressAndRelease; |
6206 |
6207 |
6207 case KeyPress: |
6208 case KeyPress: |
6208 sym = @symbol(keyPress:key:code:state:x:y:rootX:rootY:time:); |
6209 sym = @symbol(keyPress:key:code:state:x:y:rootX:rootY:time:); |
6209 /* FALL INTO */ |
6210 /* FALL INTO */ |
6210 |
6211 |
6211 keyPressAndRelease: |
6212 keyPressAndRelease: |
6212 arg = nil; |
6213 arg = nil; |
6213 nchars = XLookupString(ke, (char *)buffer, sizeof(buffer), &keySym, NULL); |
6214 nchars = XLookupString(ke, (char *)buffer, sizeof(buffer), &keySym, NULL); |
6214 if (nchars == 1 && (((buffer[0] >= ' ') && (buffer[0] <= '~')) |
6215 if (nchars == 1 && (((buffer[0] >= ' ') && (buffer[0] <= '~')) |
6215 || (buffer[0] >= 0x80))) { |
6216 || (buffer[0] >= 0x80))) { |
6216 arg = __MKCHARACTER(buffer[0]); |
6217 arg = __MKCHARACTER(buffer[0]); |
6217 // } else if (nchars > 2) { |
6218 // } else if (nchars > 2) { |
6218 // arg = __MKSTRING_L(buffer, nchars); |
6219 // arg = __MKSTRING_L(buffer, nchars); |
6219 } else { |
6220 } else { |
6220 keySymString = XKeysymToString(keySym); |
6221 keySymString = XKeysymToString(keySym); |
6221 if (keySymString) { |
6222 if (keySymString) { |
6222 arg = __MKSYMBOL(keySymString, 0); |
6223 arg = __MKSYMBOL(keySymString, 0); |
6223 } |
6224 } |
6224 } |
6225 } |
6225 |
6226 |
6226 #ifdef IGNORE_UNKNOWN_KEYCODES |
6227 #ifdef IGNORE_UNKNOWN_KEYCODES |
6227 if (arg == nil) { |
6228 if (arg == nil) { |
6228 /* happens sometimes (alt-graph on sun has no keysym) */ |
6229 /* happens sometimes (alt-graph on sun has no keysym) */ |
6229 RETURN (false); |
6230 RETURN (false); |
6230 } |
6231 } |
6231 #endif |
6232 #endif |
6232 __ArrayInstPtr(anEventArray)->a_element[2] = sym; |
6233 __ArrayInstPtr(anEventArray)->a_element[2] = sym; |
6233 |
6234 |
6234 __ArrayInstPtr(anEventArray)->a_element[3] = arg; __STORE(anEventArray, arg); |
6235 __ArrayInstPtr(anEventArray)->a_element[3] = arg; __STORE(anEventArray, arg); |
6235 t = __MKUINT(ke->keycode); __ArrayInstPtr(anEventArray)->a_element[4] = t; __STORE(anEventArray, t); |
6236 t = __MKUINT(ke->keycode); __ArrayInstPtr(anEventArray)->a_element[4] = t; __STORE(anEventArray, t); |
6236 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(ke->state); |
6237 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(ke->state); |
6237 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(ke->x); |
6238 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(ke->x); |
6238 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(ke->y); |
6239 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(ke->y); |
6239 __ArrayInstPtr(anEventArray)->a_element[8] = __mkSmallInteger(ke->x_root); |
6240 __ArrayInstPtr(anEventArray)->a_element[8] = __mkSmallInteger(ke->x_root); |
6240 __ArrayInstPtr(anEventArray)->a_element[9] = __mkSmallInteger(ke->y_root); |
6241 __ArrayInstPtr(anEventArray)->a_element[9] = __mkSmallInteger(ke->y_root); |
6241 t = __MKUINT(ke->time); __ArrayInstPtr(anEventArray)->a_element[10] = t; __STORE(anEventArray, t); |
6242 t = __MKUINT(ke->time); __ArrayInstPtr(anEventArray)->a_element[10] = t; __STORE(anEventArray, t); |
6242 break; |
6243 break; |
6243 |
6244 |
6244 case ButtonPress: |
6245 case ButtonPress: |
6245 sym = @symbol(buttonPress:button:state:x:y:rootX:rootY:time:); |
6246 sym = @symbol(buttonPress:button:state:x:y:rootX:rootY:time:); |
6246 goto buttonPressAndRelease; |
6247 goto buttonPressAndRelease; |
6247 |
6248 |
6248 case ButtonRelease: |
6249 case ButtonRelease: |
6249 sym = @symbol(buttonRelease:button:state:x:y:rootX:rootY:time:); |
6250 sym = @symbol(buttonRelease:button:state:x:y:rootX:rootY:time:); |
6250 /* fall into */ |
6251 /* fall into */ |
6251 |
6252 |
6252 buttonPressAndRelease: |
6253 buttonPressAndRelease: |
6253 __ArrayInstPtr(anEventArray)->a_element[2] = sym; |
6254 __ArrayInstPtr(anEventArray)->a_element[2] = sym; |
6254 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(be->button); |
6255 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(be->button); |
6255 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(ke->state); |
6256 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(ke->state); |
6256 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(be->x); |
6257 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(be->x); |
6257 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(be->y); |
6258 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(be->y); |
6258 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(be->x_root); |
6259 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(be->x_root); |
6259 __ArrayInstPtr(anEventArray)->a_element[8] = __mkSmallInteger(be->y_root); |
6260 __ArrayInstPtr(anEventArray)->a_element[8] = __mkSmallInteger(be->y_root); |
6260 t = __MKUINT(be->time); __ArrayInstPtr(anEventArray)->a_element[9] = t; __STORE(anEventArray, t); |
6261 t = __MKUINT(be->time); __ArrayInstPtr(anEventArray)->a_element[9] = t; __STORE(anEventArray, t); |
6261 break; |
6262 break; |
6262 |
6263 |
6263 case MotionNotify: |
6264 case MotionNotify: |
6264 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(buttonMotion:state:x:y:rootX:rootY:time:); |
6265 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(buttonMotion:state:x:y:rootX:rootY:time:); |
6265 |
6266 |
6266 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(me->state); |
6267 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(me->state); |
6267 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(me->x); |
6268 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(me->x); |
6268 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(me->y); |
6269 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(me->y); |
6269 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(me->x_root); |
6270 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(me->x_root); |
6270 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(me->y_root); |
6271 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(me->y_root); |
6271 t = __MKUINT(me->time); __ArrayInstPtr(anEventArray)->a_element[8] = t; __STORE(anEventArray, t); |
6272 t = __MKUINT(me->time); __ArrayInstPtr(anEventArray)->a_element[8] = t; __STORE(anEventArray, t); |
6272 break; |
6273 break; |
6273 |
6274 |
6274 case FocusIn: |
6275 case FocusIn: |
6275 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(focusIn:mode:detail:); |
6276 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(focusIn:mode:detail:); |
6276 goto focusInOut; |
6277 goto focusInOut; |
6277 |
6278 |
6278 case FocusOut: |
6279 case FocusOut: |
6279 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(focusOut:mode:detail:); |
6280 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(focusOut:mode:detail:); |
6280 /* fall into */ |
6281 /* fall into */ |
6281 |
6282 |
6282 focusInOut: |
6283 focusInOut: |
6283 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(fe->mode); |
6284 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(fe->mode); |
6284 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(fe->detail); |
6285 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(fe->detail); |
6285 break; |
6286 break; |
6286 |
6287 |
6287 case EnterNotify: |
6288 case EnterNotify: |
6288 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(pointerEnter:x:y:rootX:rootY:state:mode:detail:time:); |
6289 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(pointerEnter:x:y:rootX:rootY:state:mode:detail:time:); |
6289 goto enterLeave; |
6290 goto enterLeave; |
6290 |
6291 |
6291 case LeaveNotify: |
6292 case LeaveNotify: |
6292 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(pointerLeave:x:y:rootX:rootY:state:mode:detail:time:); |
6293 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(pointerLeave:x:y:rootX:rootY:state:mode:detail:time:); |
6293 /* fall into */ |
6294 /* fall into */ |
6294 |
6295 |
6295 enterLeave: |
6296 enterLeave: |
6296 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(ele->x); |
6297 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(ele->x); |
6297 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(ele->y); |
6298 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(ele->y); |
6298 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(ele->x_root); |
6299 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(ele->x_root); |
6299 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(ele->y_root); |
6300 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(ele->y_root); |
6300 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(ele->state); |
6301 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(ele->state); |
6301 __ArrayInstPtr(anEventArray)->a_element[8] = __mkSmallInteger(ele->mode); |
6302 __ArrayInstPtr(anEventArray)->a_element[8] = __mkSmallInteger(ele->mode); |
6302 __ArrayInstPtr(anEventArray)->a_element[9] = __mkSmallInteger(ele->detail); |
6303 __ArrayInstPtr(anEventArray)->a_element[9] = __mkSmallInteger(ele->detail); |
6303 t = __MKUINT(ele->time); __ArrayInstPtr(anEventArray)->a_element[10] = t; __STORE(anEventArray, t); |
6304 t = __MKUINT(ele->time); __ArrayInstPtr(anEventArray)->a_element[10] = t; __STORE(anEventArray, t); |
6304 break; |
6305 break; |
6305 |
6306 |
6306 case Expose: |
6307 case Expose: |
6307 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(expose:x:y:width:height:count:); |
6308 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(expose:x:y:width:height:count:); |
6308 goto expose; |
6309 goto expose; |
6309 |
6310 |
6310 case GraphicsExpose: |
6311 case GraphicsExpose: |
6311 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(graphicsExpose:x:y:width:height:count:); |
6312 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(graphicsExpose:x:y:width:height:count:); |
6312 /* fall into */ |
6313 /* fall into */ |
6313 |
6314 |
6314 expose: |
6315 expose: |
6315 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(ee->x); |
6316 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(ee->x); |
6316 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(ee->y); |
6317 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(ee->y); |
6317 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(ee->width); |
6318 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(ee->width); |
6318 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(ee->height); |
6319 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(ee->height); |
6319 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(ee->count); |
6320 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(ee->count); |
6320 break; |
6321 break; |
6321 |
6322 |
6322 case NoExpose: |
6323 case NoExpose: |
6323 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(noExposeView:); |
6324 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(noExposeView:); |
6324 break; |
6325 break; |
6325 |
6326 |
6326 case VisibilityNotify: |
6327 case VisibilityNotify: |
6327 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(visibilityNotify:state:); |
6328 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(visibilityNotify:state:); |
6328 switch (ve->state) { |
6329 switch (ve->state) { |
6329 case VisibilityUnobscured: |
6330 case VisibilityUnobscured: |
6330 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(unobscured); |
6331 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(unobscured); |
6331 break; |
6332 break; |
6332 case VisibilityPartiallyObscured: |
6333 case VisibilityPartiallyObscured: |
6333 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(partiallyObscured); |
6334 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(partiallyObscured); |
6334 break; |
6335 break; |
6335 case VisibilityFullyObscured: |
6336 case VisibilityFullyObscured: |
6336 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(fullyObscured); |
6337 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(fullyObscured); |
6337 break; |
6338 break; |
6338 default: |
6339 default: |
6339 __ArrayInstPtr(anEventArray)->a_element[3] = __MKSMALLINT(ve->state); |
6340 __ArrayInstPtr(anEventArray)->a_element[3] = __MKSMALLINT(ve->state); |
6340 break; |
6341 break; |
6341 } |
6342 } |
6342 break; |
6343 break; |
6343 |
6344 |
6344 case CreateNotify: |
6345 case CreateNotify: |
6345 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(createWindow:x:y:width:height:); |
6346 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(createWindow:x:y:width:height:); |
6346 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(cre->x); |
6347 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(cre->x); |
6347 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(cre->y); |
6348 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(cre->y); |
6348 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(cre->width); |
6349 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(cre->width); |
6349 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(cre->height); |
6350 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(cre->height); |
6350 break; |
6351 break; |
6351 |
6352 |
6352 case DestroyNotify: |
6353 case DestroyNotify: |
6353 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(destroyedView:); |
6354 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(destroyedView:); |
6354 break; |
6355 break; |
6355 |
6356 |
6356 case UnmapNotify: |
6357 case UnmapNotify: |
6357 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(unmappedView:); |
6358 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(unmappedView:); |
6358 break; |
6359 break; |
6359 |
6360 |
6360 case MapNotify: |
6361 case MapNotify: |
6361 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(mappedView:); |
6362 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(mappedView:); |
6362 break; |
6363 break; |
6363 |
6364 |
6364 case ConfigureNotify: |
6365 case ConfigureNotify: |
6365 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(configure:relativeTo:x:y:width:height:borderWidth:above:overrideRedirect:); |
6366 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(configure:relativeTo:x:y:width:height:borderWidth:above:overrideRedirect:); |
6366 __ArrayInstPtr(anEventArray)->a_element[3] = nil; |
6367 __ArrayInstPtr(anEventArray)->a_element[3] = nil; |
6367 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(ce->x); |
6368 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(ce->x); |
6368 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(ce->y); |
6369 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(ce->y); |
6369 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(ce->width); |
6370 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(ce->width); |
6370 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(ce->height); |
6371 __ArrayInstPtr(anEventArray)->a_element[7] = __mkSmallInteger(ce->height); |
6371 __ArrayInstPtr(anEventArray)->a_element[8] = __mkSmallInteger(ce->border_width); |
6372 __ArrayInstPtr(anEventArray)->a_element[8] = __mkSmallInteger(ce->border_width); |
6372 __ArrayInstPtr(anEventArray)->a_element[9] = nil; |
6373 __ArrayInstPtr(anEventArray)->a_element[9] = nil; |
6373 __ArrayInstPtr(anEventArray)->a_element[10] = ce->override_redirect ? true : false; |
6374 __ArrayInstPtr(anEventArray)->a_element[10] = ce->override_redirect ? true : false; |
6374 if (ce->event != None) { |
6375 if (ce->event != None) { |
6375 t = __MKEXTERNALADDRESS(ce->event); __ArrayInstPtr(anEventArray)->a_element[3] = t; __STORE(anEventArray, t); |
6376 t = __MKEXTERNALADDRESS(ce->event); __ArrayInstPtr(anEventArray)->a_element[3] = t; __STORE(anEventArray, t); |
6376 } |
6377 } |
6377 if (ce->above != None) { |
6378 if (ce->above != None) { |
6378 t = __MKEXTERNALADDRESS(ce->above); __ArrayInstPtr(anEventArray)->a_element[9] = t; __STORE(anEventArray, t); |
6379 t = __MKEXTERNALADDRESS(ce->above); __ArrayInstPtr(anEventArray)->a_element[9] = t; __STORE(anEventArray, t); |
6379 } |
6380 } |
6380 break; |
6381 break; |
6381 |
6382 |
6382 case GravityNotify: |
6383 case GravityNotify: |
6383 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(gravityNotify:x:y:); |
6384 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(gravityNotify:x:y:); |
6384 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(gre->x); |
6385 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(gre->x); |
6385 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(gre->y); |
6386 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(gre->y); |
6386 break; |
6387 break; |
6387 |
6388 |
6388 case ResizeRequest: |
6389 case ResizeRequest: |
6389 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(resizeRequest:width:height:); |
6390 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(resizeRequest:width:height:); |
6390 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(rr->width); |
6391 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(rr->width); |
6391 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(rr->height); |
6392 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(rr->height); |
6392 break; |
6393 break; |
6393 |
6394 |
6394 case ConfigureRequest: |
6395 case ConfigureRequest: |
6395 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(configureRequest:x:y:width:height:above:detail:); |
6396 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(configureRequest:x:y:width:height:above:detail:); |
6396 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(cr->x); |
6397 __ArrayInstPtr(anEventArray)->a_element[3] = __mkSmallInteger(cr->x); |
6397 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(cr->y); |
6398 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(cr->y); |
6398 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(cr->width); |
6399 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(cr->width); |
6399 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(cr->height); |
6400 __ArrayInstPtr(anEventArray)->a_element[6] = __mkSmallInteger(cr->height); |
6400 __ArrayInstPtr(anEventArray)->a_element[7] = nil; |
6401 __ArrayInstPtr(anEventArray)->a_element[7] = nil; |
6401 if (cr->above != None) { |
6402 if (cr->above != None) { |
6402 t = __MKEXTERNALADDRESS(cr->above); __ArrayInstPtr(anEventArray)->a_element[7] = t; __STORE(anEventArray, t); |
6403 t = __MKEXTERNALADDRESS(cr->above); __ArrayInstPtr(anEventArray)->a_element[7] = t; __STORE(anEventArray, t); |
6403 } |
6404 } |
6404 switch (cr->detail) { |
6405 switch (cr->detail) { |
6405 case Above: |
6406 case Above: |
6406 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(above); |
6407 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(above); |
6407 break; |
6408 break; |
6408 case Below: |
6409 case Below: |
6409 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(below); |
6410 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(below); |
6410 break; |
6411 break; |
6411 case TopIf: |
6412 case TopIf: |
6412 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(topIf); |
6413 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(topIf); |
6413 break; |
6414 break; |
6414 case BottomIf: |
6415 case BottomIf: |
6415 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(bottomIf); |
6416 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(bottomIf); |
6416 break; |
6417 break; |
6417 case Opposite: |
6418 case Opposite: |
6418 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(opposite); |
6419 __ArrayInstPtr(anEventArray)->a_element[8] = @symbol(opposite); |
6419 break; |
6420 break; |
6420 default: |
6421 default: |
6421 __ArrayInstPtr(anEventArray)->a_element[8] = __MKSMALLINT(cr->detail); |
6422 __ArrayInstPtr(anEventArray)->a_element[8] = __MKSMALLINT(cr->detail); |
6422 break; |
6423 break; |
6423 } |
6424 } |
6424 break; |
6425 break; |
6425 |
6426 |
6426 case CirculateNotify: |
6427 case CirculateNotify: |
6427 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(circulateNotify:place:); |
6428 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(circulateNotify:place:); |
6428 goto circulate; |
6429 goto circulate; |
6429 |
6430 |
6430 case CirculateRequest: |
6431 case CirculateRequest: |
6431 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(circulateRequest:place:); |
6432 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(circulateRequest:place:); |
6432 /* fall into */ |
6433 /* fall into */ |
6433 circulate: |
6434 circulate: |
6434 switch (cie->place) { |
6435 switch (cie->place) { |
6435 case PlaceOnTop: |
6436 case PlaceOnTop: |
6436 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(placeOnTop); |
6437 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(placeOnTop); |
6437 break; |
6438 break; |
6438 case PlaceOnBottom: |
6439 case PlaceOnBottom: |
6439 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(placeOnBottom); |
6440 __ArrayInstPtr(anEventArray)->a_element[3] = @symbol(placeOnBottom); |
6440 break; |
6441 break; |
6441 default: |
6442 default: |
6442 __ArrayInstPtr(anEventArray)->a_element[3] = __MKSMALLINT(cie->place); |
6443 __ArrayInstPtr(anEventArray)->a_element[3] = __MKSMALLINT(cie->place); |
6443 break; |
6444 break; |
6444 } |
6445 } |
6445 break; |
6446 break; |
6446 |
6447 |
6447 case PropertyNotify: |
6448 case PropertyNotify: |
6448 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(propertyChange:property:state:time:); |
6449 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(propertyChange:property:state:time:); |
6449 __ArrayInstPtr(anEventArray)->a_element[3] = __MKATOMOBJ(pe->atom); |
6450 __ArrayInstPtr(anEventArray)->a_element[3] = __MKATOMOBJ(pe->atom); |
6450 switch (pe->state) { |
6451 switch (pe->state) { |
6451 case PropertyNewValue: |
6452 case PropertyNewValue: |
6452 __ArrayInstPtr(anEventArray)->a_element[4] = @symbol(newValue); |
6453 __ArrayInstPtr(anEventArray)->a_element[4] = @symbol(newValue); |
6453 break; |
6454 break; |
6454 case PropertyDelete: |
6455 case PropertyDelete: |
6455 __ArrayInstPtr(anEventArray)->a_element[4] = @symbol(deleted); |
6456 __ArrayInstPtr(anEventArray)->a_element[4] = @symbol(deleted); |
6456 break; |
6457 break; |
6457 default: |
6458 default: |
6458 __ArrayInstPtr(anEventArray)->a_element[4] = __MKSMALLINT(pe->state); |
6459 __ArrayInstPtr(anEventArray)->a_element[4] = __MKSMALLINT(pe->state); |
6459 break; |
6460 break; |
6460 } |
6461 } |
6461 t = __MKUINT(pe->time); __ArrayInstPtr(anEventArray)->a_element[5] = t; __STORE(anEventArray, t); |
6462 t = __MKUINT(pe->time); __ArrayInstPtr(anEventArray)->a_element[5] = t; __STORE(anEventArray, t); |
6462 break; |
6463 break; |
6463 |
6464 |
6464 case SelectionClear: |
6465 case SelectionClear: |
6465 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(selectionClear:selection:time:); |
6466 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(selectionClear:selection:time:); |
6466 __ArrayInstPtr(anEventArray)->a_element[3] = __MKATOMOBJ(sce->selection); |
6467 __ArrayInstPtr(anEventArray)->a_element[3] = __MKATOMOBJ(sce->selection); |
6467 t = __MKUINT(sce->time); __ArrayInstPtr(anEventArray)->a_element[4] = t; __STORE(anEventArray, t); |
6468 t = __MKUINT(sce->time); __ArrayInstPtr(anEventArray)->a_element[4] = t; __STORE(anEventArray, t); |
6468 break; |
6469 break; |
6469 |
6470 |
6470 case SelectionRequest: |
6471 case SelectionRequest: |
6471 /* |
6472 /* |
6472 * someone wants the selection |
6473 * someone wants the selection |
6473 */ |
6474 */ |
6474 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(selectionRequest:requestor:selection:target:property:time:); |
6475 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(selectionRequest:requestor:selection:target:property:time:); |
6475 t = __MKEXTERNALADDRESS(ev.xselectionrequest.requestor); __ArrayInstPtr(anEventArray)->a_element[3] = t; __STORE(anEventArray, t); |
6476 t = __MKEXTERNALADDRESS(ev.xselectionrequest.requestor); __ArrayInstPtr(anEventArray)->a_element[3] = t; __STORE(anEventArray, t); |
6476 __ArrayInstPtr(anEventArray)->a_element[4] = __MKATOMOBJ(ev.xselectionrequest.selection); |
6477 __ArrayInstPtr(anEventArray)->a_element[4] = __MKATOMOBJ(ev.xselectionrequest.selection); |
6477 __ArrayInstPtr(anEventArray)->a_element[5] = __MKATOMOBJ(ev.xselectionrequest.target); |
6478 __ArrayInstPtr(anEventArray)->a_element[5] = __MKATOMOBJ(ev.xselectionrequest.target); |
6478 __ArrayInstPtr(anEventArray)->a_element[6] = __MKATOMOBJ(ev.xselectionrequest.property); |
6479 __ArrayInstPtr(anEventArray)->a_element[6] = __MKATOMOBJ(ev.xselectionrequest.property); |
6479 t = __MKUINT(ev.xselectionrequest.time); __ArrayInstPtr(anEventArray)->a_element[7] = t; __STORE(anEventArray, t); |
6480 t = __MKUINT(ev.xselectionrequest.time); __ArrayInstPtr(anEventArray)->a_element[7] = t; __STORE(anEventArray, t); |
6480 break; |
6481 break; |
6481 |
6482 |
6482 case SelectionNotify: |
6483 case SelectionNotify: |
6483 /* |
6484 /* |
6484 * returned selection value (answer from SelectionRequest) |
6485 * returned selection value (answer from SelectionRequest) |
6485 */ |
6486 */ |
6486 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(selectionNotify:selection:target:property:requestor:time:); |
6487 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(selectionNotify:selection:target:property:requestor:time:); |
6487 __ArrayInstPtr(anEventArray)->a_element[3] = __MKATOMOBJ(ev.xselection.selection); |
6488 __ArrayInstPtr(anEventArray)->a_element[3] = __MKATOMOBJ(ev.xselection.selection); |
6488 __ArrayInstPtr(anEventArray)->a_element[4] = __MKATOMOBJ(ev.xselection.target); |
6489 __ArrayInstPtr(anEventArray)->a_element[4] = __MKATOMOBJ(ev.xselection.target); |
6489 __ArrayInstPtr(anEventArray)->a_element[5] = __MKATOMOBJ(ev.xselection.property); |
6490 __ArrayInstPtr(anEventArray)->a_element[5] = __MKATOMOBJ(ev.xselection.property); |
6490 t = __MKEXTERNALADDRESS(ev.xselection.requestor); __ArrayInstPtr(anEventArray)->a_element[6] = t; __STORE(anEventArray, t); |
6491 t = __MKEXTERNALADDRESS(ev.xselection.requestor); __ArrayInstPtr(anEventArray)->a_element[6] = t; __STORE(anEventArray, t); |
6491 t = __MKUINT(ev.xselection.time); __ArrayInstPtr(anEventArray)->a_element[7] = t; __STORE(anEventArray, t); |
6492 t = __MKUINT(ev.xselection.time); __ArrayInstPtr(anEventArray)->a_element[7] = t; __STORE(anEventArray, t); |
6492 break; |
6493 break; |
6493 |
6494 |
6494 case ColormapNotify: |
6495 case ColormapNotify: |
6495 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(colormapNotify:state:); |
6496 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(colormapNotify:state:); |
6496 __ArrayInstPtr(anEventArray)->a_element[3] = cme->state == ColormapInstalled ? true : false; |
6497 __ArrayInstPtr(anEventArray)->a_element[3] = cme->state == ColormapInstalled ? true : false; |
6497 break; |
6498 break; |
6498 |
6499 |
6499 case ClientMessage: |
6500 case ClientMessage: |
6500 if (ev.xclient.message_type == (int) __AtomVal(__INST(protocolsAtom))) { |
6501 if (ev.xclient.message_type == (int) __AtomVal(__INST(protocolsAtom))) { |
6501 if ((ev.xclient.data.l[0] == (int) __AtomVal(__INST(quitAppAtom))) |
6502 if ((ev.xclient.data.l[0] == (int) __AtomVal(__INST(quitAppAtom))) |
6502 || (ev.xclient.data.l[0] == (int) __AtomVal(__INST(deleteWindowAtom)))) { |
6503 || (ev.xclient.data.l[0] == (int) __AtomVal(__INST(deleteWindowAtom)))) { |
6503 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(terminateView:); |
6504 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(terminateView:); |
6504 break; |
6505 break; |
6505 } |
6506 } |
6506 if (ev.xclient.data.l[0] == (int) __AtomVal(__INST(saveYourselfAtom))) { |
6507 if (ev.xclient.data.l[0] == (int) __AtomVal(__INST(saveYourselfAtom))) { |
6507 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(saveAndTerminateView:); |
6508 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(saveAndTerminateView:); |
6508 break; |
6509 break; |
6509 } |
6510 } |
6510 } |
6511 } |
6511 /* |
6512 /* |
6512 * any other client message |
6513 * any other client message |
6513 */ |
6514 */ |
6514 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(clientMessage:type:format:data:); |
6515 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(clientMessage:type:format:data:); |
6515 __ArrayInstPtr(anEventArray)->a_element[3] = __MKATOMOBJ(ev.xclient.message_type); |
6516 __ArrayInstPtr(anEventArray)->a_element[3] = __MKATOMOBJ(ev.xclient.message_type); |
6516 __ArrayInstPtr(anEventArray)->a_element[4] = __MKSMALLINT(ev.xclient.format); |
6517 __ArrayInstPtr(anEventArray)->a_element[4] = __MKSMALLINT(ev.xclient.format); |
6517 t = __MKBYTEARRAY(&ev.xclient.data, sizeof(ev.xclient.data)); __ArrayInstPtr(anEventArray)->a_element[5] = t; __STORE(anEventArray, t); |
6518 t = __MKBYTEARRAY(&ev.xclient.data, sizeof(ev.xclient.data)); __ArrayInstPtr(anEventArray)->a_element[5] = t; __STORE(anEventArray, t); |
6518 break; |
6519 break; |
6519 |
6520 |
6520 case MappingNotify: |
6521 case MappingNotify: |
6521 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(mappingNotify:request:event:); |
6522 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(mappingNotify:request:event:); |
6522 switch(mape->request) { |
6523 switch(mape->request) { |
6523 case MappingModifier: |
6524 case MappingModifier: |
6524 arg = @symbol(mappingModifier); |
6525 arg = @symbol(mappingModifier); |
6525 break; |
6526 break; |
6526 case MappingKeyboard: |
6527 case MappingKeyboard: |
6527 arg = @symbol(mappingKeyboard); |
6528 arg = @symbol(mappingKeyboard); |
6528 break; |
6529 break; |
6529 case MappingPointer: |
6530 case MappingPointer: |
6530 arg = @symbol(mappingPointer); |
6531 arg = @symbol(mappingPointer); |
6531 break; |
6532 break; |
6532 default: |
6533 default: |
6533 arg = __MKSMALLINT(mape->request); |
6534 arg = __MKSMALLINT(mape->request); |
6534 break; |
6535 break; |
6535 } |
6536 } |
6536 __ArrayInstPtr(anEventArray)->a_element[3] = arg; |
6537 __ArrayInstPtr(anEventArray)->a_element[3] = arg; |
6537 t = __MKBYTEARRAY(&ev, sizeof(*mape)); __ArrayInstPtr(anEventArray)->a_element[4] = t; |
6538 t = __MKBYTEARRAY(&ev, sizeof(*mape)); __ArrayInstPtr(anEventArray)->a_element[4] = t; |
6538 __STORE(anEventArray, t); |
6539 __STORE(anEventArray, t); |
6539 break; |
6540 break; |
6540 |
6541 |
6541 case KeymapNotify: |
6542 case KeymapNotify: |
6542 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(keymapNotify:); |
6543 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(keymapNotify:); |
6543 break; |
6544 break; |
6544 |
6545 |
6545 case MapRequest: |
6546 case MapRequest: |
6546 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(mapRequest:); |
6547 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(mapRequest:); |
6547 break; |
6548 break; |
6548 |
6549 |
6549 case ReparentNotify: |
6550 case ReparentNotify: |
6550 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(reparentedView:parentId:x:y:); |
6551 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(reparentedView:parentId:x:y:); |
6551 t = __MKEXTERNALADDRESS(rpe->parent); |
6552 t = __MKEXTERNALADDRESS(rpe->parent); |
6552 __ArrayInstPtr(anEventArray)->a_element[3] = t; __STORE(anEventArray, t); |
6553 __ArrayInstPtr(anEventArray)->a_element[3] = t; __STORE(anEventArray, t); |
6553 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(rpe->x); |
6554 __ArrayInstPtr(anEventArray)->a_element[4] = __mkSmallInteger(rpe->x); |
6554 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(rpe->y); |
6555 __ArrayInstPtr(anEventArray)->a_element[5] = __mkSmallInteger(rpe->y); |
6555 break; |
6556 break; |
6556 |
6557 |
6557 default: |
6558 default: |
6558 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(unknownX11Event); |
6559 __ArrayInstPtr(anEventArray)->a_element[2] = @symbol(unknownX11Event); |
6559 break; |
6560 break; |
6560 } |
6561 } |
6561 #undef ae |
6562 #undef ae |
6562 #undef ee |
6563 #undef ee |
6563 #undef ke |
6564 #undef ke |
6564 #undef be |
6565 #undef be |