xmem.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #define Font XXFont
  2. #define Screen XXScreen
  3. #define Display XXDisplay
  4. #include <X11/Xlib.h>
  5. /* #include <X11/Xlibint.h> */
  6. #include <X11/Xatom.h>
  7. #include <X11/Xutil.h>
  8. #include <X11/IntrinsicP.h>
  9. #include <X11/StringDefs.h>
  10. #undef Font
  11. #undef Screen
  12. #undef Display
  13. /*
  14. * Structure pointed to by X field of Memimage
  15. */
  16. typedef struct Xmem Xmem;
  17. enum
  18. {
  19. PMundef = ~0 /* undefined pixmap id */
  20. };
  21. struct Xmem
  22. {
  23. int pmid; /* pixmap id for screen ldepth instance */
  24. XImage *xi; /* local image if we currenty have the data */
  25. int dirty;
  26. Rectangle dirtyr;
  27. Rectangle r;
  28. uintptr pc; /* who wrote into xi */
  29. };
  30. extern int xtblbit;
  31. extern int x24bitswap;
  32. extern int plan9tox11[];
  33. extern int x11toplan9[];
  34. extern int xscreendepth;
  35. extern XXDisplay *xdisplay;
  36. extern Drawable xscreenid;
  37. extern Visual *xvis;
  38. extern GC xgcfill, xgcfill0;
  39. extern int xgcfillcolor, xgcfillcolor0;
  40. extern GC xgccopy, xgccopy0;
  41. extern GC xgczero, xgczero0;
  42. extern int xgczeropm, xgczeropm0;
  43. extern GC xgcsimplesrc, xgcsimplesrc0;
  44. extern int xgcsimplecolor, xgcsimplecolor0, xgcsimplepm, xgcsimplepm0;
  45. extern GC xgcreplsrc, xgcreplsrc0;
  46. extern int xgcreplsrcpm, xgcreplsrcpm0, xgcreplsrctile, xgcreplsrctile0;
  47. extern XImage* allocXdata(Memimage*, Rectangle);
  48. extern void putXdata(Memimage*, Rectangle);
  49. extern XImage* getXdata(Memimage*, Rectangle);
  50. extern void freeXdata(Memimage*);
  51. extern void dirtyXdata(Memimage*, Rectangle);
  52. extern ulong xscreenchan;
  53. extern void xfillcolor(Memimage*, Rectangle, ulong);