search for: masked_by

Displaying 6 results from an estimated 6 matches for "masked_by".

2008 Jan 02
0
3 commits - libswfdec/swfdec_movie.c test/trace
...diff --git a/libswfdec/swfdec_movie.c b/libswfdec/swfdec_movie.c index 400ca2e..547155b 100644 --- a/libswfdec/swfdec_movie.c +++ b/libswfdec/swfdec_movie.c @@ -950,12 +950,20 @@ swfdec_movie_render (SwfdecMovie *movie, cairo_t *cr, cairo_pattern_t *mask; if (movie->parent == movie->masked_by->parent) { cairo_transform (cr, &movie->inverse_matrix); + rect = *inval; } else { - cairo_matrix_t mat; + cairo_matrix_t mat, mat2; swfdec_movie_local_to_global_matrix (movie, &mat); + swfdec_movie_global_to_local_matrix (movie->masked_by, &a...
2007 Nov 20
0
4 commits - libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_resource.c test/image test/trace
...ie->matrix); + movie = movie->parent; + } +} + +void swfdec_movie_global_to_local (SwfdecMovie *movie, double *x, double *y) { g_return_if_fail (SWFDEC_IS_MOVIE (movie)); @@ -876,7 +902,11 @@ swfdec_movie_render (SwfdecMovie *movie, cairo_t *cr, if (movie->parent == movie->masked_by->parent) { cairo_transform (cr, &movie->inverse_matrix); } else { - SWFDEC_FIXME ("implement different parents when masking"); + cairo_matrix_t mat; + swfdec_movie_local_to_global_matrix (movie, &mat); + cairo_transform (cr, &mat); +...
2007 Dec 10
0
6 commits - libswfdec/Makefile.am libswfdec/swfdec_as_interpret.c libswfdec/swfdec_color_as.c libswfdec/swfdec_graphic_movie.c libswfdec/swfdec_image_decoder.c libswfdec/swfdec_morph_movie.c libswfdec/swfdec_movie_as_drawing.c
...g_assert (movie->parent); - swfdec_movie_invalidate (movie->parent); + swfdec_movie_invalidate_last (movie->parent); movie->clip_depth = 0; } else { - swfdec_movie_invalidate (movie); + swfdec_movie_invalidate_last (movie); } if (mask) { if (mask->masked_by) @@ -811,13 +811,13 @@ swfdec_sprite_movie_setMask (SwfdecAsContext *cx, SwfdecAsObject *object, mask->mask_of->masked_by = NULL; mask->masked_by = NULL; mask->mask_of = movie; - swfdec_movie_invalidate (mask); + swfdec_movie_invalidate_last (mask); if (mask-...
2007 Nov 20
0
19 commits - libswfdec/swfdec_audio_event.c libswfdec/swfdec_bits.c libswfdec/swfdec_color.c libswfdec/swfdec_color.h libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_image.c libswfdec/swfdec_initialize.as libswfdec/swfdec_initialize.h
...ie, *mask; + + /* yes, this works with regular movies */ + SWFDEC_AS_CHECK (SWFDEC_TYPE_MOVIE, &movie, "O", &mask); + + if (mask != NULL && !SWFDEC_IS_MOVIE (mask)) { + SWFDEC_FIXME ("mask is not a movie, what now?"); + mask = NULL; + } + if (movie->masked_by) + movie->masked_by->mask_of = NULL; + if (movie->mask_of) + movie->mask_of->masked_by = NULL; + movie->masked_by = mask; + movie->mask_of = NULL; + if (movie->clip_depth) { + g_assert (movie->parent); + swfdec_movie_invalidate (movie->parent); + mov...
2007 Nov 20
0
7 commits - libswfdec/swfdec_movie.c libswfdec/swfdec_sprite_movie_as.c test/image
...-git a/libswfdec/swfdec_sprite_movie_as.c b/libswfdec/swfdec_sprite_movie_as.c index 49cc39f..549661c 100644 --- a/libswfdec/swfdec_sprite_movie_as.c +++ b/libswfdec/swfdec_sprite_movie_as.c @@ -564,6 +564,13 @@ swfdec_sprite_movie_setMask (SwfdecAsContext *cx, SwfdecAsObject *object, mask->masked_by = NULL; mask->mask_of = movie; swfdec_movie_invalidate (mask); + if (mask->clip_depth) { + g_assert (mask->parent); + swfdec_movie_invalidate (mask->parent); + mask->clip_depth = 0; + } else { + swfdec_movie_invalidate (mask); + } } } comm...
2007 Dec 13
0
libswfdec-gtk/swfdec_gtk_player.c libswfdec/swfdec_as_date.c libswfdec/swfdec_audio.c libswfdec/swfdec_audio_event.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_interval.c libswfdec/swfdec_key_as.c libswfdec/swfdec_mouse_as.c libswfdec/swfdec_movie.c
...>parent) { movie->parent->list = g_list_remove (movie->parent->list, movie); } else { - player->roots = g_list_remove (player->roots, movie); + player->priv->roots = g_list_remove (player->priv->roots, movie); } /* unset masks */ if (movie->masked_by) @@ -394,7 +396,7 @@ swfdec_movie_destroy (SwfdecMovie *movie) swfdec_player_remove_all_actions (player, movie); if (klass->finish_movie) klass->finish_movie (movie); - player->movies = g_list_remove (player->movies, movie); + player->priv->movies = g_list_remove (pla...