|
Lines 15-25
Link Here
|
| 15 |
/* */ |
15 |
/* */ |
| 16 |
/**************************************************************************/ |
16 |
/**************************************************************************/ |
| 17 |
|
17 |
|
|
|
18 |
#include "X.h" |
| 19 |
#include "Agent.h" |
| 20 |
|
| 18 |
#include "NXpicturestr.h" |
21 |
#include "NXpicturestr.h" |
| 19 |
#include "NXglyphstr.h" |
22 |
#include "NXglyphstr.h" |
| 20 |
#include "Render.h" |
23 |
#include "Render.h" |
| 21 |
|
24 |
|
| 22 |
#include "X.h" |
|
|
| 23 |
#include "Xproto.h" |
25 |
#include "Xproto.h" |
| 24 |
|
26 |
|
| 25 |
#include "render.h" |
27 |
#include "render.h" |
|
Lines 29-35
Link Here
|
| 29 |
#include "fb.h" |
31 |
#include "fb.h" |
| 30 |
#include "mipict.h" |
32 |
#include "mipict.h" |
| 31 |
#include "fbpict.h" |
33 |
#include "fbpict.h" |
| 32 |
#include "Agent.h" |
|
|
| 33 |
#include "Drawable.h" |
34 |
#include "Drawable.h" |
| 34 |
|
35 |
|
| 35 |
#include "../../../../lib/Xrender/Xrenderint.h" |
36 |
#include "../../../../lib/Xrender/Xrenderint.h" |
|
Lines 65-71
Bool nxagentDisconnectPictures(void);
Link Here
|
| 65 |
|
66 |
|
| 66 |
void nxagentCreateGlyphSet(GlyphSetPtr pGly); |
67 |
void nxagentCreateGlyphSet(GlyphSetPtr pGly); |
| 67 |
void nxagentQueryFormats(void); |
68 |
void nxagentQueryFormats(void); |
| 68 |
void nxagentAddGlyphs(GlyphSetPtr glyphsSet, Glyph *gids, xGlyphInfo *gi, int nglyphs, CARD8 *images, int sizeImages); |
69 |
void nxagentAddGlyphs(GlyphSetPtr glyphsSet, CARD32 *gids, xGlyphInfo *gi, int nglyphs, CARD8 *images, int sizeImages); |
| 69 |
static XRenderPictFormat *nxagentMatchingFormats(PictFormatPtr pForm); |
70 |
static XRenderPictFormat *nxagentMatchingFormats(PictFormatPtr pForm); |
| 70 |
|
71 |
|
| 71 |
#ifdef NX_RENDER_DEBUG |
72 |
#ifdef NX_RENDER_DEBUG |
|
Lines 984-994
void nxagentCreateGlyphSet(GlyphSetPtr p
Link Here
|
| 984 |
#endif |
985 |
#endif |
| 985 |
} |
986 |
} |
| 986 |
|
987 |
|
| 987 |
void nxagentAddGlyphs(GlyphSetPtr glyphSet, Glyph *gids, xGlyphInfo *gi, int nglyphs, CARD8 *images, int sizeImages) |
988 |
void nxagentAddGlyphs(GlyphSetPtr glyphSet, CARD32 *gids, xGlyphInfo *gi, int nglyphs, CARD8 *images, int sizeImages) |
| 988 |
{ |
989 |
{ |
| 989 |
extern const CARD8 glyphDepths[]; |
990 |
extern const CARD8 glyphDepths[]; |
| 990 |
extern int ServerOrder(void); |
991 |
extern int ServerOrder(void); |
| 991 |
extern void BitOrderInvert(unsigned char*, int); |
992 |
extern void BitOrderInvert(unsigned char*, int); |
|
|
993 |
Glyph *gconv; |
| 994 |
|
| 995 |
if (sizeof(CARD32) != sizeof(Glyph)) { |
| 996 |
int i; |
| 997 |
gconv = malloc (nglyphs * sizeof(Glyph)); |
| 998 |
for (i = 0; i < nglyphs; i++) |
| 999 |
gconv[i] = (Glyph) gids[i]; |
| 1000 |
} else |
| 1001 |
gconv = (Glyph *) gids; |
| 992 |
|
1002 |
|
| 993 |
#ifdef NX_RENDER_DEBUG |
1003 |
#ifdef NX_RENDER_DEBUG |
| 994 |
fprintf(stderr, "nxagentAddGlyphs\n"); |
1004 |
fprintf(stderr, "nxagentAddGlyphs\n"); |
|
Lines 1002-1008
void nxagentAddGlyphs(GlyphSetPtr glyphS
Link Here
|
| 1002 |
|
1012 |
|
| 1003 |
XRenderAddGlyphs(nxagentDisplay, |
1013 |
XRenderAddGlyphs(nxagentDisplay, |
| 1004 |
glyphSet -> remoteID, |
1014 |
glyphSet -> remoteID, |
| 1005 |
gids, |
1015 |
gconv, |
| 1006 |
(XGlyphInfo*)(gi), |
1016 |
(XGlyphInfo*)(gi), |
| 1007 |
nglyphs, |
1017 |
nglyphs, |
| 1008 |
(char*)images, |
1018 |
(char*)images, |
|
Lines 1011-1016
void nxagentAddGlyphs(GlyphSetPtr glyphS
Link Here
|
| 1011 |
#ifdef NX_RENDER_DEBUG |
1021 |
#ifdef NX_RENDER_DEBUG |
| 1012 |
XSync(nxagentDisplay, False); |
1022 |
XSync(nxagentDisplay, False); |
| 1013 |
#endif |
1023 |
#endif |
|
|
1024 |
if (sizeof(CARD32) != sizeof(Glyph)) |
| 1025 |
free (gconv); |
| 1014 |
} |
1026 |
} |
| 1015 |
|
1027 |
|
| 1016 |
void nxagentReferenceGlyphSet(GlyphSetPtr glyphSet) |
1028 |
void nxagentReferenceGlyphSet(GlyphSetPtr glyphSet) |
|
Lines 1020-1029
void nxagentReferenceGlyphSet(GlyphSetPt
Link Here
|
| 1020 |
|
1032 |
|
| 1021 |
void nxagentFreeGlyphs(GlyphSetPtr glyphSet, CARD32 *gids, int nglyph) |
1033 |
void nxagentFreeGlyphs(GlyphSetPtr glyphSet, CARD32 *gids, int nglyph) |
| 1022 |
{ |
1034 |
{ |
| 1023 |
/* Glyph nx_gids[nglyph]; |
1035 |
Glyph *gconv; |
| 1024 |
*/ |
1036 |
|
| 1025 |
XRenderFreeGlyphs (nxagentDisplay, glyphSet -> remoteID, gids, nglyph); |
1037 |
if (sizeof(CARD32) != sizeof(Glyph)) { |
|
|
1038 |
int i; |
| 1039 |
gconv = malloc (nglyph * sizeof(Glyph)); |
| 1040 |
for (i = 0; i < nglyph; i++) |
| 1041 |
gconv[i] = (Glyph) gids[i]; |
| 1042 |
} else |
| 1043 |
gconv = (Glyph *) gids; |
| 1044 |
|
| 1045 |
XRenderFreeGlyphs (nxagentDisplay, glyphSet -> remoteID, gconv, nglyph); |
| 1026 |
|
1046 |
|
|
|
1047 |
if (sizeof(CARD32) != sizeof(Glyph)) |
| 1048 |
free (gconv); |
| 1027 |
} |
1049 |
} |
| 1028 |
|
1050 |
|
| 1029 |
void nxagentFreeGlyphSet(GlyphSetPtr glyphSet) |
1051 |
void nxagentFreeGlyphSet(GlyphSetPtr glyphSet) |