manpagez: man pages & more
html files: gtkimageview
Home | html | info | man

GtkAnimView

GtkAnimView — Subclass of GtkImageView capable of playing GIF animations.

Synopsis

                    GtkAnimView;
GtkWidget *         gtk_anim_view_new                   (void);
GdkPixbufAnimation * gtk_anim_view_get_anim             (GtkAnimView *aview);
void                gtk_anim_view_set_anim              (GtkAnimView *aview,
                                                         GdkPixbufAnimation *anim);
void                gtk_anim_view_set_is_playing        (GtkAnimView *aview,
                                                         gboolean playing);
gboolean            gtk_anim_view_get_is_playing        (GtkAnimView *aview);
void                gtk_anim_view_step                  (GtkAnimView *aview);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkImageView
                           +----GtkAnimView

Implemented Interfaces

GtkAnimView implements AtkImplementorIface and GtkBuildable.

Signals

  "step"                                           : Run Last / Action
  "toggle-running"                                 : Run Last / Action

Description

GtkAnimView subclasses GtkImageView. It has the same look and feel as its parent but is also capable of displaying GIF animations.

Keybindings

GtkAnimView uses a few more keybindings in addition to those used by GtkImageView:

Keys Corresponding function Description
GDK_p gtk_anim_view_set_is_playing() Stops or resumes the running animation.
GDK_j gtk_anim_view_step() Steps the animation one frame forward.

Details

GtkAnimView

typedef struct _GtkAnimView GtkAnimView;

GtkAnimView is a subclass of GtkImageView that provies facilities for displaying and controlling an animation.


gtk_anim_view_new ()

GtkWidget *         gtk_anim_view_new                   (void);

Creates a new GtkAnimView with default values. The default values are:

  • anim : NULL
  • is_playing : FALSE

Returns :

A new GtkAnimView.

gtk_anim_view_get_anim ()

GdkPixbufAnimation * gtk_anim_view_get_anim             (GtkAnimView *aview);

Returns the current animation of the view.

aview :

a GtkAnimView.

Returns :

the current animation

gtk_anim_view_set_anim ()

void                gtk_anim_view_set_anim              (GtkAnimView *aview,
                                                         GdkPixbufAnimation *anim);

Sets the pixbuf animation to play, or NULL to not play any animation.

If the animation is a static image or only has one frame, then the static image will be displayed instead. If more frames are loaded into the animation, then GtkAnimView will automatically animate to those frames.

The effect of this method is analoguous to gtk_image_view_set_pixbuf(). Fit mode is reset to GTK_FIT_SIZE_IF_LARGER so that the whole area of the animation fits in the view. Three signals are emitted, first the GtkImageView will emit ::zoom-changed and then ::pixbuf-changed, second, GtkAnimView itself will emit ::anim-changed.

The default pixbuf animation is NULL.

aview :

A GtkAnimView.

anim :

A pixbuf animation to play.

gtk_anim_view_set_is_playing ()

void                gtk_anim_view_set_is_playing        (GtkAnimView *aview,
                                                         gboolean playing);

Sets whether the animation should play or not. If there is no current animation this method does not have any effect.

aview :

a GtkImageView

playing :

TRUE to play the animation, FALSE otherwise

gtk_anim_view_get_is_playing ()

gboolean            gtk_anim_view_get_is_playing        (GtkAnimView *aview);

Returns whether the animation is playing or not. If there is no current animation, this method will always returns FALSE.

aview :

A GtkImageView.

Returns :

TRUE if an animation is playing, FALSE otherwise.

gtk_anim_view_step ()

void                gtk_anim_view_step                  (GtkAnimView *aview);

Steps the animation one frame forward. If the animation is playing it will be stopped. Will it wrap around if the animation is at its last frame?

aview :

A GtkImageView.

Signal Details

The "step" signal

void                user_function                      (GtkAnimView *aview,
                                                        gpointer     user_data)      : Run Last / Action

Steps the animation one frame forward. If the animation is playing it will first be stopped. ::step is a keybinding signal emitted when GDK_j is pressed on the widget and should not be used by clients of this library.

aview :

a GtkAnimView

user_data :

user data set when the signal handler was connected.

The "toggle-running" signal

void                user_function                      (GtkAnimView *aview,
                                                        gpointer     user_data)      : Run Last / Action

Stops the animation if it was playing or resumes it, if it was playing. ::toggle-running is a keybinding signal emitted when GDK_p is pressed on the widget and should not be used by clients of this library.

aview :

a GtkAnimView

user_data :

user data set when the signal handler was connected.

See Also

GtkImageView, The ./tests/ex-anim.c program for an example of how this widget is used
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.