Mercurial > sdl-ios-xcode
comparison src/video/directfb/SDL_DirectFB_render.c @ 5151:5429daf5e3f9
The DrawRect API is implemented using lines
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Tue, 01 Feb 2011 20:50:04 -0800 |
parents | c8e049de174c |
children | be02be2ea897 |
comparison
equal
deleted
inserted
replaced
5150:ad50b3db78bd | 5151:5429daf5e3f9 |
---|---|
66 const SDL_Rect * rects); | 66 const SDL_Rect * rects); |
67 static int DirectFB_RenderDrawPoints(SDL_Renderer * renderer, | 67 static int DirectFB_RenderDrawPoints(SDL_Renderer * renderer, |
68 const SDL_Point * points, int count); | 68 const SDL_Point * points, int count); |
69 static int DirectFB_RenderDrawLines(SDL_Renderer * renderer, | 69 static int DirectFB_RenderDrawLines(SDL_Renderer * renderer, |
70 const SDL_Point * points, int count); | 70 const SDL_Point * points, int count); |
71 static int DirectFB_RenderDrawRects(SDL_Renderer * renderer, | |
72 const SDL_Rect ** rects, int count); | |
73 static int DirectFB_RenderFillRects(SDL_Renderer * renderer, | 71 static int DirectFB_RenderFillRects(SDL_Renderer * renderer, |
74 const SDL_Rect ** rects, int count); | 72 const SDL_Rect ** rects, int count); |
75 static int DirectFB_RenderCopy(SDL_Renderer * renderer, | 73 static int DirectFB_RenderCopy(SDL_Renderer * renderer, |
76 SDL_Texture * texture, | 74 SDL_Texture * texture, |
77 const SDL_Rect * srcrect, | 75 const SDL_Rect * srcrect, |
269 renderer->UnlockTexture = DirectFB_UnlockTexture; | 267 renderer->UnlockTexture = DirectFB_UnlockTexture; |
270 renderer->DirtyTexture = DirectFB_DirtyTexture; | 268 renderer->DirtyTexture = DirectFB_DirtyTexture; |
271 renderer->RenderDrawPoints = DirectFB_RenderDrawPoints; | 269 renderer->RenderDrawPoints = DirectFB_RenderDrawPoints; |
272 renderer->RenderDrawLines = DirectFB_RenderDrawLines; | 270 renderer->RenderDrawLines = DirectFB_RenderDrawLines; |
273 renderer->RenderFillRects = DirectFB_RenderFillRects; | 271 renderer->RenderFillRects = DirectFB_RenderFillRects; |
274 renderer->RenderDrawRects = DirectFB_RenderDrawRects; | |
275 /* RenderDrawEllipse - no reference implementation yet */ | 272 /* RenderDrawEllipse - no reference implementation yet */ |
276 /* RenderFillEllipse - no reference implementation yet */ | 273 /* RenderFillEllipse - no reference implementation yet */ |
277 renderer->RenderCopy = DirectFB_RenderCopy; | 274 renderer->RenderCopy = DirectFB_RenderCopy; |
278 renderer->RenderPresent = DirectFB_RenderPresent; | 275 renderer->RenderPresent = DirectFB_RenderPresent; |
279 /* RenderReadPixels is difficult to implement */ | 276 /* RenderReadPixels is difficult to implement */ |
815 error: | 812 error: |
816 return -1; | 813 return -1; |
817 } | 814 } |
818 | 815 |
819 static int | 816 static int |
820 DirectFB_RenderDrawRects(SDL_Renderer * renderer, const SDL_Rect ** rects, int count) | |
821 { | |
822 DirectFB_RenderData *data = (DirectFB_RenderData *) renderer->driverdata; | |
823 SDL_DFB_WINDOWSURFACE(data->window); | |
824 int i; | |
825 | |
826 PrepareDraw(renderer); | |
827 | |
828 for (i=0; i<count; i++) | |
829 SDL_DFB_CHECKERR(destsurf->DrawRectangle(destsurf, rects[i]->x, rects[i]->y, | |
830 rects[i]->w, rects[i]->h)); | |
831 | |
832 return 0; | |
833 error: | |
834 return -1; | |
835 } | |
836 | |
837 static int | |
838 DirectFB_RenderFillRects(SDL_Renderer * renderer, const SDL_Rect ** rects, int count) | 817 DirectFB_RenderFillRects(SDL_Renderer * renderer, const SDL_Rect ** rects, int count) |
839 { | 818 { |
840 DirectFB_RenderData *data = (DirectFB_RenderData *) renderer->driverdata; | 819 DirectFB_RenderData *data = (DirectFB_RenderData *) renderer->driverdata; |
841 SDL_DFB_WINDOWSURFACE(data->window); | 820 SDL_DFB_WINDOWSURFACE(data->window); |
842 int i; | 821 int i; |