~ubuntu-branches/ubuntu/trusty/totem/trusty-proposed

« back to all changes in this revision

Viewing changes to src/plparse/totem-pl-parser.h

  • Committer: Bazaar Package Importer
  • Author(s): Josselin Mouette, Josselin Mouette, Loic Minier, Sjoerd Simons
  • Date: 2008-09-10 15:38:34 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20080910153834-kxne946nj2b5squf
Tags: 2.22.2-4
[ Josselin Mouette ]
* Change the recommends on g-c-c to one on g-s-d. Also move it to
  totem-plugins, which is the package providing the media keys
  functionality.
* Change the depends on dbus to dbus-x11.

[ Loic Minier ]
* Let totem-gstreamer recommend gnome-app-install for easy codec
  installation.

[ Josselin Mouette ]
* 02_flv.patch: the canonical MIME type for Flash videos is 
  video/x-flv, not video/flv. Closes: #486468.

[ Sjoerd Simons ]
* 30_fix_youtube_plugin.patch: Set the server as a keyword argument to be
  compatible with both old and new versions of python-gdata. Fixes searching
  for youtube videos
* debian/control.in: Fix double Recommend field for totem-gstreamer

[ Josselin Mouette ]
* rules: rally disable the vala plugin.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* 
2
 
   2002, 2003, 2004, 2005, 2006 Bastien Nocera
3
 
   Copyright (C) 2003 Colin Walters <walters@verbum.org>
4
 
 
5
 
   The Gnome Library is free software; you can redistribute it and/or
6
 
   modify it under the terms of the GNU Library General Public License as
7
 
   published by the Free Software Foundation; either version 2 of the
8
 
   License, or (at your option) any later version.
9
 
 
10
 
   The Gnome Library is distributed in the hope that it will be useful,
11
 
   but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
 
   Library General Public License for more details.
14
 
 
15
 
   You should have received a copy of the GNU Library General Public
16
 
   License along with the Gnome Library; see the file COPYING.LIB.  If not,
17
 
   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18
 
   Boston, MA 02111-1307, USA.
19
 
 
20
 
   Author: Bastien Nocera <hadess@hadess.net>
21
 
 */
22
 
 
23
 
#ifndef TOTEM_PL_PARSER_H
24
 
#define TOTEM_PL_PARSER_H
25
 
 
26
 
#include <glib.h>
27
 
 
28
 
#include <gtk/gtktreemodel.h>
29
 
#include "totem-pl-parser-features.h"
30
 
#include "totem-pl-parser-builtins.h"
31
 
 
32
 
G_BEGIN_DECLS
33
 
 
34
 
#define TOTEM_TYPE_PL_PARSER            (totem_pl_parser_get_type ())
35
 
#define TOTEM_PL_PARSER(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), TOTEM_TYPE_PL_PARSER, TotemPlParser))
36
 
#define TOTEM_PL_PARSER_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), TOTEM_TYPE_PL_PARSER, TotemPlParserClass))
37
 
#define TOTEM_IS_PL_PARSER(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TOTEM_TYPE_PL_PARSER))
38
 
#define TOTEM_IS_PL_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TOTEM_TYPE_PL_PARSER))
39
 
 
40
 
typedef enum
41
 
{
42
 
        TOTEM_PL_PARSER_RESULT_UNHANDLED,
43
 
        TOTEM_PL_PARSER_RESULT_ERROR,
44
 
        TOTEM_PL_PARSER_RESULT_SUCCESS,
45
 
        TOTEM_PL_PARSER_RESULT_IGNORED
46
 
} TotemPlParserResult;
47
 
 
48
 
typedef struct TotemPlParser           TotemPlParser;
49
 
typedef struct TotemPlParserClass      TotemPlParserClass;
50
 
typedef struct TotemPlParserPrivate    TotemPlParserPrivate;
51
 
 
52
 
struct TotemPlParser {
53
 
        GObject parent;
54
 
        TotemPlParserPrivate *priv;
55
 
};
56
 
 
57
 
struct TotemPlParserClass {
58
 
        GObjectClass parent_class;
59
 
 
60
 
        /* signals */
61
 
        void (*entry) (TotemPlParser *parser, const char *uri,
62
 
                       const char *title, const char *genre);
63
 
        void (*playlist_start) (TotemPlParser *parser, const char *title);
64
 
        void (*playlist_end) (TotemPlParser *parser, const char *title);
65
 
};
66
 
 
67
 
typedef enum
68
 
{
69
 
        TOTEM_PL_PARSER_PLS,
70
 
        TOTEM_PL_PARSER_M3U,
71
 
        TOTEM_PL_PARSER_M3U_DOS,
72
 
        TOTEM_PL_PARSER_XSPF,
73
 
} TotemPlParserType;
74
 
 
75
 
typedef enum
76
 
{
77
 
        TOTEM_PL_PARSER_ERROR_VFS_OPEN,
78
 
        TOTEM_PL_PARSER_ERROR_VFS_WRITE,
79
 
} TotemPlParserError;
80
 
 
81
 
#define TOTEM_PL_PARSER_ERROR (totem_pl_parser_error_quark ())
82
 
 
83
 
GQuark totem_pl_parser_error_quark (void);
84
 
 
85
 
typedef void (*TotemPlParserIterFunc) (GtkTreeModel *model, GtkTreeIter *iter,
86
 
                                       char **uri, char **title,
87
 
                                       gboolean *custom_title,
88
 
                                       gpointer user_data);
89
 
 
90
 
GType    totem_pl_parser_get_type (void);
91
 
 
92
 
gboolean   totem_pl_parser_write (TotemPlParser *parser, GtkTreeModel *model,
93
 
                                  TotemPlParserIterFunc func,
94
 
                                  const char *output, TotemPlParserType type,
95
 
                                  gpointer user_data,
96
 
                                  GError **error);
97
 
 
98
 
gboolean   totem_pl_parser_write_with_title (TotemPlParser *parser,
99
 
                                             GtkTreeModel *model,
100
 
                                             TotemPlParserIterFunc func,
101
 
                                             const char *output,
102
 
                                             const char *title,
103
 
                                             TotemPlParserType type,
104
 
                                             gpointer user_data,
105
 
                                             GError **error);
106
 
 
107
 
void       totem_pl_parser_add_ignored_scheme (TotemPlParser *parser,
108
 
                                               const char *scheme);
109
 
void       totem_pl_parser_add_ignored_mimetype (TotemPlParser *parser,
110
 
                                                 const char *mimetype);
111
 
TotemPlParserResult totem_pl_parser_parse (TotemPlParser *parser, const char *url, gboolean fallback);
112
 
 
113
 
TotemPlParser *totem_pl_parser_new (void);
114
 
 
115
 
G_END_DECLS
116
 
 
117
 
#endif /* TOTEM_PL_PARSER_H */