libbluray | branch: master | hpi1 <[email protected]> | Mon Dec 13 15:14:21 2010 +0200| [3c5744b96a145d76ac40fa7cc0a255d94f389ff8] | committer: hpi1
Splitted _render_page() > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=3c5744b96a145d76ac40fa7cc0a255d94f389ff8 --- src/libbluray/decoders/graphics_controller.c | 32 +++++++++++++++++-------- 1 files changed, 22 insertions(+), 10 deletions(-) diff --git a/src/libbluray/decoders/graphics_controller.c b/src/libbluray/decoders/graphics_controller.c index f36b1f1..9d41def 100644 --- a/src/libbluray/decoders/graphics_controller.c +++ b/src/libbluray/decoders/graphics_controller.c @@ -246,17 +246,13 @@ static BD_IG_PAGE *_find_page(BD_IG_INTERACTIVE_COMPOSITION *c, unsigned page_id return NULL; } -/* - * IG rendering - */ - enum { BTN_NORMAL, BTN_SELECTED, BTN_ACTIVATED }; -static void _render_button(GRAPHICS_CONTROLLER *gc, BD_IG_BUTTON *button, BD_PG_PALETTE *palette, int state) +static BD_PG_OBJECT *_find_object_for_button(PG_DISPLAY_SET *s, + BD_IG_BUTTON *button, int state) { - BD_PG_OBJECT *object = NULL; - unsigned object_id = 0xffff; - BD_OVERLAY ov; + BD_PG_OBJECT *object = NULL; + unsigned object_id = 0xffff; switch (state) { case BTN_NORMAL: @@ -270,9 +266,25 @@ static void _render_button(GRAPHICS_CONTROLLER *gc, BD_IG_BUTTON *button, BD_PG_ break; } - object = _find_object(gc->igs, object_id); + object = _find_object(s, object_id); + + return object; +} + + +/* + * IG rendering + */ + +static void _render_button(GRAPHICS_CONTROLLER *gc, BD_IG_BUTTON *button, BD_PG_PALETTE *palette, + int state) +{ + BD_PG_OBJECT *object = NULL; + BD_OVERLAY ov; + + object = _find_object_for_button(gc->igs, button, state); if (!object) { - TRACE("_render_button(#%d): object #%d (state %d) not found\n", button->id, object_id, state); + TRACE("_render_button(#%d): object (state %d) not found\n", button->id, state); return; } _______________________________________________ libbluray-devel mailing list [email protected] http://mailman.videolan.org/listinfo/libbluray-devel
