Lines Matching refs:dpy

72 #define MajorOpCode(dpy)	(Codes[DPY_NUMBER(dpy)] ?		\
73 Codes[DPY_NUMBER(dpy)]->major_opcode : \
137 static int NumberType[DPSMAXDISPLAYS]; /* Garbage okay after dpy closed */
138 static char *FloatingName[DPSMAXDISPLAYS]; /* Garbage okay after dpy closed */
154 static void DPSCAPInitGC(Display *dpy, Display *agent, GC gc);
155 static Status DPSCAPClientMessageProc(Display *dpy, XEvent *re, xEvent *event);
191 need it till we get dpy->fd fixed in VMS%%%%%*/
192 static int FindDpyNum(Display *dpy)
195 for (i=0; dpys[i] != dpy ; i++)
199 dpys[nextDpy++]=dpy;
205 #define DPY_NUMBER(dpy) FindDpyNum(dpy)
207 #define DPY_NUMBER(dpy) ((dpy)->fd)
214 XDPSLSetTextEventHandler(Display *dpy, XDPSLEventHandler proc)
221 XDPSLCallOutputEventHandler(Display *dpy, XEvent *event)
227 XDPSLSetStatusEventHandler(Display *dpy, XDPSLEventHandler proc)
229 StatusProc[DPY_NUMBER(dpy)] = proc;
233 XDPSLCallStatusEventHandler(Display *dpy, XEvent *event)
235 (*(StatusProc[DPY_NUMBER(dpy)]))(event);
240 XDPSLSetReadyEventHandler(Display *dpy, XDPSLEventHandler proc)
242 ReadyProc[DPY_NUMBER(dpy)] = proc;
247 XDPSLCallReadyEventHandler(Display *dpy, XEvent *event)
249 (*(ReadyProc[DPY_NUMBER(dpy)]))(event);
254 XDPSLGetVersion(Display *dpy)
256 return(version[DPY_NUMBER(dpy)]);
261 XDPSLInitDisplayFlags(Display *dpy)
263 int d = DPY_NUMBER(dpy);
272 XExtCodes *XDPSLGetCodes(Display *dpy)
274 return Codes[DPY_NUMBER(dpy)];
279 CloseDisplayProc(Display *dpy, XExtCodes *codes)
282 Codes[DPY_NUMBER(dpy)] = NULL;
284 XDPSPrivZapDpy(dpy);
286 dpys[DPY_NUMBER(dpy)] = NULL;
287 /*%%%%Temp till we fix dpy->fd*/
293 XDPSLGetPassEventsFlag(Display *dpy)
295 return displayFlags[DPY_NUMBER(dpy)].passEvents;
299 XDPSLSetPassEventsFlag(Display *dpy, Bool flag)
301 displayFlags[DPY_NUMBER(dpy)].passEvents = flag;
305 XDPSLGetWrapWaitingFlag(Display *dpy)
307 return displayFlags[DPY_NUMBER(dpy)].wrapWaiting;
311 XDPSLSetWrapWaitingFlag(Display *dpy, Bool flag)
313 displayFlags[DPY_NUMBER(dpy)].wrapWaiting = flag;
317 ConvertOutputEvent(Display *dpy, XEvent *ce, xEvent *we)
323 clientevent->serial = _XSetLastRequestRead(dpy,
326 clientevent->display = dpy;
330 if (TextProc && !XDPSLGetPassEventsFlag(dpy)) {
338 ConvertStatusEvent(Display *dpy, XEvent *ce, xEvent *we)
344 clientevent->serial = _XSetLastRequestRead(dpy,
347 clientevent->display = dpy;
350 if (StatusProc[DPY_NUMBER(dpy)] && !XDPSLGetPassEventsFlag(dpy)) {
351 (*(StatusProc[DPY_NUMBER(dpy)]))((XEvent *) clientevent);
359 ConvertReadyEvent(Display *dpy, XEvent *ce, xEvent *we)
365 clientevent->serial = _XSetLastRequestRead(dpy,
368 clientevent->display = dpy;
374 if (ReadyProc[DPY_NUMBER(dpy)] && !XDPSLGetPassEventsFlag(dpy)) {
375 (*(ReadyProc[DPY_NUMBER(dpy)]))((XEvent *) clientevent);
385 CatchBadMatch(Display *dpy, xError *err, XExtCodes *codes, int *ret_code)
402 Display *dpy,
422 if ((codes = Codes[DPY_NUMBER(dpy)]) != NULL) {
424 *numberType = NumberType[DPY_NUMBER(dpy)];
426 *floatingName = FloatingName[DPY_NUMBER(dpy)];
431 codes = XInitExtension(dpy, DPSNAME);
434 codes = XInitExtension(dpy, DECDPSNAME);
440 first_event = CSDPSInit(dpy, &myNumberType, &myFloatingName);
441 NumberType[DPY_NUMBER(dpy)] = myNumberType;
442 FloatingName[DPY_NUMBER(dpy)] = myFloatingName;
450 Codes[DPY_NUMBER(dpy)] = codes;
451 ShuntMap[DPY_NUMBER(dpy)] = dpy;
453 XESetCloseDisplay(dpy, codes->extension, CloseDisplayProc);
454 XESetWireToEvent(dpy, codes->first_event + PSEVENTOUTPUT,
456 XESetWireToEvent(dpy, codes->first_event + PSEVENTSTATUS,
458 XESetWireToEvent(dpy, codes->first_event + PSEVENTREADY,
471 XSync(dpy, False);
472 LockDisplay(dpy);
473 oldErrorProc = XESetError(dpy, codes->extension, CatchBadMatch);
479 req->reqType = MajorOpCode(dpy);
482 if (_XReply(dpy, (xReply *) &rep, 0, xFalse))
490 oldErrorProc = XESetError(dpy, codes->extension, oldErrorProc);
518 version[DPY_NUMBER(dpy)] = rep.serverversion;
519 NumberType[DPY_NUMBER(dpy)] = rep.preferredNumberFormat;
524 _XReadPad(dpy, ptr, rep.floatingNameLength);
526 FloatingName[DPY_NUMBER(dpy)] = ptr;
530 UnlockDisplay(dpy);
597 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
654 if (dpy != xdpy)
663 LockDisplay(dpy);
680 IFNXSETCALL(dpy, xdpy);
681 (void) (*call->Reply) (dpy, (xReply *)&rep, 0, xTrue);
686 UnlockDisplay(dpy);
688 if (rep.cpsid && xdpy != dpy && gc != NULL)
690 DPSCAPInitGC(xdpy, dpy, gc);
694 if (dpy != xdpy)
716 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
773 if (dpy != xdpy)
782 LockDisplay(dpy);
797 IFNXSETCALL(dpy, xdpy);
798 (void) (*call->Reply) (dpy, (xReply *)&rep, 0, xTrue);
802 UnlockDisplay(dpy);
804 if (rep.cpsid && xdpy != dpy && gc != NULL)
806 DPSCAPInitGC(xdpy, dpy, gc);
811 if (dpy != xdpy)
820 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
824 LockDisplay(dpy);
831 UnlockDisplay(dpy);
833 if (dpy != xdpy)
853 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
857 if (dpy != xdpy)
874 N_XFlush(dpy);
884 LockDisplay(dpy);
887 req = (xPSGiveInputReq *) dpy->last_req;
891 && dpy->bufptr + length + 3 < dpy->bufmax) {
896 dpy->bufptr = dpy->last_req + sizeof(xPSGiveInputReq) +
923 if (dpy != xdpy) {
930 NXProcData(dpy, (char *) data, nunits);
932 {Data(dpy, (char *) data, nunits);}
940 buffered in dpy (NX connection). We can't leave the stuff
943 clear out the dpy buffer after we cleared out the xdpy
946 if (dpy != xdpy
947 && dpy->bufptr != dpy->buffer
949 N_XFlush(dpy);
951 UnlockDisplay(dpy);
953 if (dpy != xdpy)
962 Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
967 if (dpy != xdpy)
976 LockDisplay(dpy);
984 IFNXSETCALL(dpy, xdpy);
985 if (! (*call->Reply)(dpy, (xReply *)&rep, 0, xTrue))
987 UnlockDisplay(dpy);
990 if (dpy != xdpy)
1002 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1005 if (dpy != xdpy)
1014 LockDisplay(dpy);
1021 if (gAutoFlush && dpy != xdpy)
1023 N_XFlush(dpy);
1025 UnlockDisplay(dpy);
1027 if (dpy != xdpy)
1036 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1039 if (dpy != xdpy)
1048 LockDisplay(dpy);
1055 if (gAutoFlush && dpy != xdpy)
1057 N_XFlush(dpy);
1059 UnlockDisplay(dpy);
1061 if (dpy != xdpy)
1072 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1075 if (dpy != xdpy)
1084 LockDisplay(dpy);
1092 if (dpy != xdpy)
1094 N_XFlush(dpy); /* THIS IS CRITICAL TO AVOID HANGING! */
1097 UnlockDisplay(dpy);
1100 if (dpy != xdpy)
1116 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1122 if (dpy != xdpy)
1131 LockDisplay(dpy);
1139 IFNXSETCALL(dpy, xdpy);
1140 (void) (*call->Reply) (dpy, (xReply *)&rep, 0, xTrue);
1144 UnlockDisplay(dpy);
1146 if (dpy != xdpy)
1162 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1167 if (dpy != xdpy)
1176 LockDisplay(dpy);
1183 IFNXSETCALL(dpy, xdpy);
1184 (void) (*call->Reply) (dpy, (xReply *)&rep, 0, xTrue);
1188 UnlockDisplay(dpy);
1191 if (dpy != xdpy)
1201 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1206 if (dpy != xdpy)
1215 LockDisplay(dpy);
1222 IFNXSETCALL(dpy, xdpy);
1223 (void) (*call->Reply) (dpy, (xReply *)&rep, 0, xTrue);
1225 UnlockDisplay(dpy);
1228 if (dpy != xdpy)
1243 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1246 if (dpy != xdpy)
1255 LockDisplay(dpy);
1265 if (gAutoFlush && dpy != xdpy)
1267 N_XFlush(dpy);
1269 UnlockDisplay(dpy);
1271 if (dpy != xdpy)
1304 _XReadPad (Display *dpy, char *data, long size)
1310 CheckLock(dpy);
1312 _XRead( dpy, data, size );
1314 _XRead( dpy, pad, padlength[size & 3] );
1329 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1338 if (dpy != xdpy)
1351 N_XFlush(dpy);
1356 LockDisplay(dpy);
1367 if (gAutoFlush && dpy != xdpy)
1369 N_XFlush(dpy);
1371 UnlockDisplay(dpy);
1373 if (dpy != xdpy)
1378 XDPSLTestErrorCode(Display *dpy, int ecode)
1380 XExtCodes *c = XDPSLGetCodes(dpy);
1390 if (version[DPY_NUMBER(dpy)] < DPSPROTO_V09)
1403 XDPSLSetVersion(Display *dpy, unsigned ver)
1405 version[DPY_NUMBER(dpy)] = ver;
1409 XDPSLSetCodes(Display *dpy, XExtCodes *codes)
1411 Codes[DPY_NUMBER(dpy)] = codes;
1427 XDPSLGetSyncMask(Display *dpy)
1429 return (int)displayFlags[DPY_NUMBER(dpy)].syncMask;
1433 XDPSLSetSyncMask(Display *dpy, int mask)
1435 displayFlags[DPY_NUMBER(dpy)].syncMask = (char)mask;
1442 register Display *dpy = ShuntMap[DPY_NUMBER(xdpy)];
1445 if (dpy != xdpy)
1446 N_XFlush(dpy);
1454 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1461 if (dpy == xdpy || gNXSyncGCMode != 1) /* 1 means sync always */
1469 || dpy == xdpy)
1477 XDPSLSetDisplay(Display *dpy)
1479 dpys[DPY_NUMBER(dpy)] = dpy;
1484 XDPSLSetAgentName(Display *dpy, char *name, int deflt)
1497 old = gCSDPS->map[DPY_NUMBER(dpy)];
1498 gCSDPS->map[DPY_NUMBER(dpy)] = name;
1505 XDPSLSetClientMessageHandler(Display *dpy)
1507 if (dpy == NULL) return;
1508 ClientMsgProc[DPY_NUMBER(dpy)] = XESetWireToEvent(
1509 dpy,
1525 XDPSLGetCSDPSFakeEventType(Display *dpy, XEvent *event)
1527 XExtCodes *codes = Codes[DPY_NUMBER(dpy)];
1534 CSDPSHeadOfDpyExt(dpy),
1555 Display *dpy,
1562 XExtCodes *codes = Codes[DPY_NUMBER(dpy)];
1584 oce->display = dpy;
1587 XDPSLCallOutputEventHandler(dpy, (XEvent *) oce);
1600 sce->display = dpy;
1603 XDPSLCallStatusEventHandler(dpy, (XEvent *) sce);
1615 rce->display = dpy;
1621 XDPSLCallReadyEventHandler(dpy, (XEvent *) rce);
1678 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1681 if (dpy == xdpy) return;
1690 LockDisplay(dpy);
1701 N_XFlush(dpy);
1703 UnlockDisplay(dpy);
1711 register Display *dpy = ShuntMap[DPY_NUMBER(xdpy)];
1713 if (dpy == xdpy)
1716 XSync(dpy, False);
1735 my->saveseq = XNextRequest(dpy)-1;
1742 N_XFlush(dpy);
1761 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1763 if (dpy == xdpy)
1774 N_XFlush(dpy); /* This is what XDPSLCAPNotify would do */
1792 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1796 if (dpy == xdpy)
1799 /* dpy will be NIL if we haven't opened a connection yet,
1802 if (dpy)
1825 if (!dpy)
1828 LockDisplay(dpy);
1837 N_XFlush(dpy);
1839 UnlockDisplay(dpy);
1850 /* Clean up all state associated with dpy */
1883 /* Clean up all state associated with cxid on this dpy */
1907 XDPSLSetGCFlushMode(dpy, value)
1908 Display *dpy;
1912 register Display *agent = ShuntMap[dpyix = DPY_NUMBER(dpy)];
1920 GCFlushMode[dpyix] = (agent == dpy) ? 0 : value;
1924 XDPSLGetGCFlushMode(dpy)
1925 Display *dpy;
1927 return(GCFlushMode[DPY_NUMBER(dpy)]);
1936 register Display *dpy = ShuntMap[dpyix = DPY_NUMBER(xdpy)];
1945 /* Okay to call Xlib, since dpy isn't locked */
1949 LockDisplay(dpy);
1950 DPSCAPChangeGC(dpy, gc, DPSGCBITS, &vals);
1951 UnlockDisplay(dpy);
1965 Display *dpy,
1972 XExtCodes *codes = Codes[DPY_NUMBER(dpy)];
1973 PSCMProc oldProc = ClientMsgProc[DPY_NUMBER(dpy)];
1979 CSDPSHeadOfDpyExt(dpy),
1990 if (XDPSLGetPassEventsFlag(dpy) &&
2011 oce->serial = _XSetLastRequestRead(dpy, (xGenericReply *)event);
2013 oce->display = dpy;
2030 sce->serial = _XSetLastRequestRead(dpy, (xGenericReply *)event);
2032 sce->display = dpy;
2036 if (StatusProc[DPY_NUMBER(dpy)])
2037 (*(StatusProc[DPY_NUMBER(dpy)]))((XEvent *) sce);
2054 return(_XError(dpy, e));
2064 rce->serial = _XSetLastRequestRead(dpy, (xGenericReply *)event);
2066 rce->display = dpy;
2072 XDPSLCallReadyEventHandler(dpy, (XEvent *) rce);
2079 return(oldProc(dpy, re, event));
2084 DPSCAPInitGC(Display *dpy, Display *agent, GC gc)
2089 /* Okay to call Xlib, since dpy isn't locked */
2090 DPSAssertWarn(XGetGCValues(dpy, gc, valuemask, &values),
2095 XDPSLSync(dpy);
2119 register Display *dpy = ShuntMap[DPY_NUMBER(xdpy)];
2122 if (dpy != (Display *)NULL && dpy != xdpy)
2124 LockDisplay(dpy);
2125 N_XFlush(dpy);
2126 UnlockDisplay(dpy);