Movie Info: First GObject version
[maevies] / src / mvs-movie-info.h
1 /*
2  * mvs-movie-info.h
3  *
4  * This file is part of maevies
5  * Copyright (C) 2010 Simón Pena <spenap@gmail.com>
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License as
9  * published by the Free Software Foundation; either version 3 of the
10  * License, or (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * General Public License for more details.
16  *
17  */
18
19 #ifndef _MVS_MOVIE_INFO
20 #define _MVS_MOVIE_INFO
21
22 #include <glib-object.h>
23
24 G_BEGIN_DECLS
25
26 #define MVS_TYPE_MOVIE_INFO mvs_movie_info_get_type()
27 #define MVS_MOVIE_INFO(obj) \
28   (G_TYPE_CHECK_INSTANCE_CAST ((obj), MVS_TYPE_MOVIE_INFO, MvsMovieInfo))
29 #define MVS_MOVIE_INFO_CLASS(klass) \
30   (G_TYPE_CHECK_CLASS_CAST ((klass), MVS_TYPE_MOVIE_INFO, MvsMovieInfoClass))
31 #define IS_MVS_MOVIE_INFO(obj) \
32   (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MVS_TYPE_MOVIE_INFO))
33 #define IS_MVS_MOVIE_INFO_CLASS(klass) \
34   (G_TYPE_CHECK_CLASS_TYPE ((klass), MVS_TYPE_MOVIE_INFO))
35 #define MVS_MOVIE_INFO_GET_CLASS(obj) \
36   (G_TYPE_INSTANCE_GET_CLASS ((obj), MVS_TYPE_MOVIE_INFO, MvsMovieInfoClass))
37
38 typedef struct _MvsMovieInfoPrivate MvsMovieInfoPrivate;
39
40 typedef struct {
41         GObject parent;
42
43         /* <private> */
44         MvsMovieInfoPrivate *priv;
45 } MvsMovieInfo;
46
47 typedef struct {
48         GObjectClass parent_class;
49 } MvsMovieInfoClass;
50
51 GType mvs_movie_info_get_type (void);
52 MvsMovieInfo* mvs_movie_info_new (void);
53
54 gboolean mvs_movie_info_set_stingers (MvsMovieInfo *self,
55                                       gboolean has_stingers);
56 gboolean mvs_movie_info_set_title (MvsMovieInfo *self, const gchar *title);
57 gboolean mvs_movie_info_set_director (MvsMovieInfo *self,
58                                       const gchar *director);
59 gboolean mvs_movie_info_set_cast (MvsMovieInfo *self, const gchar *cast);
60 gboolean mvs_movie_info_set_ranking (MvsMovieInfo *self, gfloat ranking);
61 gboolean mvs_movie_info_set_release_date (MvsMovieInfo *self,
62                                           const gchar *released);
63 gboolean mvs_movie_info_set_overview (MvsMovieInfo *self,
64                                       const gchar *overview);
65 gboolean mvs_movie_info_set_url (MvsMovieInfo *self, const gchar *url);
66 gboolean mvs_movie_info_set_schedule (MvsMovieInfo *self,
67                                       const gchar *schedule);
68
69 G_END_DECLS
70
71 #endif /* _MVS_MOVIE_INFO */