1/*
2 * Copyright © 2018 Benjamin Otte
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
16 *
17 * Authors: Benjamin Otte <otte@gnome.org>
18 */
19
20#ifndef __GTK_VIDEO_H__
21#define __GTK_VIDEO_H__
22
23#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
24#error "Only <gtk/gtk.h> can be included directly."
25#endif
26
27#include <gtk/gtkmediastream.h>
28#include <gtk/gtkwidget.h>
29
30G_BEGIN_DECLS
31
32#define GTK_TYPE_VIDEO (gtk_video_get_type ())
33
34GDK_AVAILABLE_IN_ALL
35G_DECLARE_FINAL_TYPE (GtkVideo, gtk_video, GTK, VIDEO, GtkWidget)
36
37GDK_AVAILABLE_IN_ALL
38GtkWidget * gtk_video_new (void);
39GDK_AVAILABLE_IN_ALL
40GtkWidget * gtk_video_new_for_media_stream (GtkMediaStream *stream);
41GDK_AVAILABLE_IN_ALL
42GtkWidget * gtk_video_new_for_file (GFile *file);
43GDK_AVAILABLE_IN_ALL
44GtkWidget * gtk_video_new_for_filename (const char *filename);
45GDK_AVAILABLE_IN_ALL
46GtkWidget * gtk_video_new_for_resource (const char *resource_path);
47
48GDK_AVAILABLE_IN_ALL
49GtkMediaStream *gtk_video_get_media_stream (GtkVideo *self);
50GDK_AVAILABLE_IN_ALL
51void gtk_video_set_media_stream (GtkVideo *self,
52 GtkMediaStream *stream);
53GDK_AVAILABLE_IN_ALL
54GFile * gtk_video_get_file (GtkVideo *self);
55GDK_AVAILABLE_IN_ALL
56void gtk_video_set_file (GtkVideo *self,
57 GFile *file);
58GDK_AVAILABLE_IN_ALL
59void gtk_video_set_filename (GtkVideo *self,
60 const char *filename);
61GDK_AVAILABLE_IN_ALL
62void gtk_video_set_resource (GtkVideo *self,
63 const char *resource_path);
64GDK_AVAILABLE_IN_ALL
65gboolean gtk_video_get_autoplay (GtkVideo *self);
66GDK_AVAILABLE_IN_ALL
67void gtk_video_set_autoplay (GtkVideo *self,
68 gboolean autoplay);
69GDK_AVAILABLE_IN_ALL
70gboolean gtk_video_get_loop (GtkVideo *self);
71GDK_AVAILABLE_IN_ALL
72void gtk_video_set_loop (GtkVideo *self,
73 gboolean loop);
74
75
76G_END_DECLS
77
78#endif /* __GTK_VIDEO_H__ */
79

source code of gtk/gtk/gtkvideo.h