Changes in uspace/lib/memgfx/src/memgc.c [bc52b5b:43ffecf] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/memgfx/src/memgc.c
rbc52b5b r43ffecf 57 57 static errno_t mem_gc_bitmap_render(void *, gfx_rect_t *, gfx_coord2_t *); 58 58 static errno_t mem_gc_bitmap_get_alloc(void *, gfx_bitmap_alloc_t *); 59 static errno_t mem_gc_cursor_get_pos(void *, gfx_coord2_t *);60 static errno_t mem_gc_cursor_set_pos(void *, gfx_coord2_t *);61 static errno_t mem_gc_cursor_set_visible(void *, bool);62 59 static void mem_gc_invalidate_rect(mem_gc_t *, gfx_rect_t *); 63 60 … … 70 67 .bitmap_destroy = mem_gc_bitmap_destroy, 71 68 .bitmap_render = mem_gc_bitmap_render, 72 .bitmap_get_alloc = mem_gc_bitmap_get_alloc, 73 .cursor_get_pos = mem_gc_cursor_get_pos, 74 .cursor_set_pos = mem_gc_cursor_set_pos, 75 .cursor_set_visible = mem_gc_cursor_set_visible 69 .bitmap_get_alloc = mem_gc_bitmap_get_alloc 76 70 }; 77 71 … … 108 102 mem_gc_t *mgc = (mem_gc_t *) arg; 109 103 uint16_t r, g, b; 110 uint8_t attr;111 104 112 105 gfx_color_get_rgb_i16(color, &r, &g, &b); 113 gfx_color_get_ega(color, &attr); 114 mgc->color = PIXEL(attr, r >> 8, g >> 8, b >> 8); 106 mgc->color = PIXEL(0, r >> 8, g >> 8, b >> 8); 115 107 return EOK; 116 108 } … … 160 152 mem_gc_t *mgc = (mem_gc_t *) arg; 161 153 162 mgc-> cb->update(mgc->cb_arg);154 mgc->update(mgc->cb_arg); 163 155 return EOK; 164 156 } … … 170 162 * @param rect Bounding rectangle 171 163 * @param alloc Allocation info 172 * @param cb Pointer to memory GC callbacks173 * @param cb_arg Argument to callback function s164 * @param update_cb Function called to update a rectangle 165 * @param cb_arg Argument to callback function 174 166 * @param rgc Place to store pointer to new memory GC 175 167 * … … 177 169 */ 178 170 errno_t mem_gc_create(gfx_rect_t *rect, gfx_bitmap_alloc_t *alloc, 179 mem_gc_cb_t *cb, void *cb_arg, mem_gc_t **rgc) 171 mem_gc_invalidate_cb_t invalidate_cb, mem_gc_update_cb_t update_cb, 172 void *cb_arg, mem_gc_t **rgc) 180 173 { 181 174 mem_gc_t *mgc = NULL; … … 198 191 mgc->alloc = *alloc; 199 192 200 mgc->cb = cb; 193 mgc->invalidate = invalidate_cb; 194 mgc->update = update_cb; 201 195 mgc->cb_arg = cb_arg; 202 196 … … 252 246 static void mem_gc_invalidate_rect(mem_gc_t *mgc, gfx_rect_t *rect) 253 247 { 254 mgc-> cb->invalidate(mgc->cb_arg, rect);248 mgc->invalidate(mgc->cb_arg, rect); 255 249 } 256 250 … … 470 464 } 471 465 472 /** Get cursor position on memory GC.473 *474 * @param arg Memory GC475 * @param pos Place to store position476 *477 * @return EOK on success or an error code478 */479 static errno_t mem_gc_cursor_get_pos(void *arg, gfx_coord2_t *pos)480 {481 mem_gc_t *mgc = (mem_gc_t *) arg;482 483 if (mgc->cb->cursor_get_pos != NULL)484 return mgc->cb->cursor_get_pos(mgc->cb_arg, pos);485 else486 return ENOTSUP;487 }488 489 /** Set cursor position on memory GC.490 *491 * @param arg Memory GC492 * @param pos New position493 *494 * @return EOK on success or an error code495 */496 static errno_t mem_gc_cursor_set_pos(void *arg, gfx_coord2_t *pos)497 {498 mem_gc_t *mgc = (mem_gc_t *) arg;499 500 if (mgc->cb->cursor_set_pos != NULL)501 return mgc->cb->cursor_set_pos(mgc->cb_arg, pos);502 else503 return ENOTSUP;504 }505 506 /** Set cursor visibility on memory GC.507 *508 * @param arg Memory GC509 * @param visible @c true iff cursor should be made visible510 *511 * @return EOK on success or an error code512 */513 static errno_t mem_gc_cursor_set_visible(void *arg, bool visible)514 {515 mem_gc_t *mgc = (mem_gc_t *) arg;516 517 if (mgc->cb->cursor_set_visible != NULL)518 return mgc->cb->cursor_set_visible(mgc->cb_arg, visible);519 else520 return ENOTSUP;521 }522 523 466 /** @} 524 467 */
Note:
See TracChangeset
for help on using the changeset viewer.