tmdb-image: Added fields
[maevies] / src / mvs-tmdb-image.h
1 /*
2  * mvs-tmdb-image.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_TMDB_IMAGE
20 #define _MVS_TMDB_IMAGE
21
22 #include <glib-object.h>
23
24 G_BEGIN_DECLS
25
26 #define MVS_TYPE_TMDB_IMAGE mvs_tmdb_image_get_type()
27 #define MVS_TMDB_IMAGE(obj) \
28   (G_TYPE_CHECK_INSTANCE_CAST ((obj), MVS_TYPE_TMDB_IMAGE, MvsTmdbImage))
29 #define MVS_TMDB_IMAGE_CLASS(klass) \
30   (G_TYPE_CHECK_CLASS_CAST ((klass), MVS_TYPE_TMDB_IMAGE, MvsTmdbImageClass))
31 #define MVS_IS_TMDB_IMAGE(obj) \
32   (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MVS_TYPE_TMDB_IMAGE))
33 #define MVS_IS_TMDB_IMAGE_CLASS(klass) \
34   (G_TYPE_CHECK_CLASS_TYPE ((klass), MVS_TYPE_TMDB_IMAGE))
35 #define MVS_TMDB_IMAGE_GET_CLASS(obj) \
36   (G_TYPE_INSTANCE_GET_CLASS ((obj), MVS_TYPE_TMDB_IMAGE, MvsTmdbImageClass))
37
38 typedef struct _MvsTmdbImagePrivate MvsTmdbImagePrivate;
39
40 typedef struct {
41         GObject parent;
42
43         /* <private> */
44         MvsTmdbImagePrivate *priv;
45 } MvsTmdbImage;
46
47 typedef struct {
48         GObjectClass parent_class;
49 } MvsTmdbImageClass;
50
51 enum {
52         TYPE_FIELD,
53         URL_FIELD,
54         SIZE_FIELD,
55         ID_FIELD,
56         LAST_FIELD
57 };
58
59 static const gchar*
60 image_fields[LAST_FIELD] = { "type", "url", "size", "id" };
61
62 GType mvs_tmdb_image_get_type (void);
63
64 MvsTmdbImage* mvs_tmdb_image_new ();
65
66 gboolean
67 mvs_tmdb_image_set_imagetype (MvsTmdbImage *self, const gchar *type);
68
69 const gchar*
70 mvs_tmdb_image_get_imagetype (MvsTmdbImage *self);
71
72 gboolean
73 mvs_tmdb_image_set_url (MvsTmdbImage *self, const gchar *url);
74
75 const gchar*
76 mvs_tmdb_image_get_url (MvsTmdbImage *self);
77
78 gboolean
79 mvs_tmdb_image_set_size (MvsTmdbImage *self, const gchar *size);
80
81 const gchar*
82 mvs_tmdb_image_get_size (MvsTmdbImage *self);
83
84 gboolean
85 mvs_tmdb_image_set_width (MvsTmdbImage *self, gint width);
86
87 gint
88 mvs_tmdb_image_get_width (MvsTmdbImage *self);
89
90 gboolean
91 mvs_tmdb_image_set_height (MvsTmdbImage *self, gint height);
92
93 gint
94 mvs_tmdb_image_get_height (MvsTmdbImage *self);
95
96 gboolean
97 mvs_tmdb_image_set_id (MvsTmdbImage *self, const gchar *id);
98
99 const gchar*
100 mvs_tmdb_image_get_id (MvsTmdbImage *self);
101
102 G_END_DECLS
103
104 #endif /* _MVS_TMDB_IMAGE */