Hi, thanks for working on this. I can't get back to it until this weekend.
> 1,i found the freerpd/xrdp-freerdp.c > > static RD_HCURSOR DEFAULT_CC > ui_create_cursor(rdpInst* inst, unsigned int x, unsigned int y, > int width, int height, uint8* andmask, > uint8* xormask, int bpp) > { > struct my_cursor* cur; > > g_writeln("ui_create_cursor: x %d y %d width %d height %d bpp %d", > x, y, width, height, bpp); > cur = (struct my_cursor*)g_malloc(sizeof(struct my_cursor), 1); > cur->width = width; > cur->height = height; > cur->hotx = x; > cur->hoty = y; > cur->andmask = g_malloc(32 * 32 * 4, 1); > cur->xormask = g_malloc(32 * 32 * 4, 1); > return (RD_HCURSOR)cur; > } > cur->andmask and cur->xormask have to be assigned. > > i add the code > > memcpy( cur->andmask,andmask,32 * 32 * 4); > memcpy( cur->xormask ,xormask ,32 * 32 * 4); > > > but the mouse image can not be showed correctly. This should work. Maybe the data has to be converted. > 2,i found the freerpd/xrdp-freerdp.c > > > static void DEFAULT_CC ui_draw_glyph(rdpInst* inst, int x, int y, int cx, > int cy, RD_HGLYPH glyph) > > has not be implemented. it cause much image and text not to be showed > correctly. > > i try to implement this function. > > in the freerdp-0.8.2 , the function is the > > static void > l_ui_draw_glyph(struct rdp_inst * inst, int x, int y, int cx, int cy, > RD_HGLYPH glyph) > { > xfInfo * xfi; > > xfi = GET_XFI(inst); > //DEBUG("ui_draw_glyph:\n"); > XSetStipple(xfi->display, xfi->gc, (Pixmap) glyph); > XSetTSOrigin(xfi->display, xfi->gc, x, y); > XFillRectangle(xfi->display, xfi->drw, xfi->gc, x, y, cx, cy); > XSetStipple(xfi->display, xfi->gc, xfi->bitmap_mono); > } > > i do not how to implement the XSetStipple(xfi->display, xfi->gc, (Pixmap) > glyph) and XSetTSOrigin(xfi->display, xfi->gc, x, y); and > XSetStipple(xfi->display, xfi->gc, xfi->bitmap_mono); > in the xrdp. > > can any people give me some advice. thank you What I was going to do there is change freerdp to pass the unparsed font data to the ui so the ui can process it if it wants. xrdp would just pass it on to the client. This is how librdp works in xrdp now. Jay ------------------------------------------------------------------------------ What Every C/C++ and Fortran developer Should Know! Read this article and learn how Intel has extended the reach of its next-generation tools to help Windows* and Linux* C/C++ and Fortran developers boost performance applications - including clusters. http://p.sf.net/sfu/intel-dev2devmay _______________________________________________ xrdp-devel mailing list xrdp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xrdp-devel