~serge-hallyn/ubuntu/precise/rhythmbox/rhythmbox-sort

« back to all changes in this revision

Viewing changes to remote/rb-remote-proxy.h

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher
  • Date: 2005-12-02 19:23:18 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20051202192318-7ayjionj59dq1wk4
Tags: 0.9.2-0ubuntu3
* debian/control.in:
  - Build-Depends on libmusicbrainz4-dev so rhythmbox does the CD 
    query on internet (Ubuntu: #20363).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* 
 
2
 * arch-tag: Header for Rhythmbox remote proxy interface
 
3
 *
 
4
 * Copyright (C) 2004 Colin Walters <walters@verbum.org>
 
5
 *
 
6
 * This program is free software; you can redistribute it and/or
 
7
 * modify it under the terms of the GNU General Public
 
8
 * License as published by the Free Software Foundation; either
 
9
 * version 2 of the License, or (at your option) any later version.
 
10
 *
 
11
 * This program is distributed in the hope that it will be useful,
 
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 
14
 * Library General Public License for more details.
 
15
 *
 
16
 * You should have received a copy of the GNU General Public
 
17
 * License along with this library; if not, write to the
 
18
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 
19
 * Boston, MA 02111-1307, USA.
 
20
 */
 
21
 
 
22
#ifndef __RB_REMOTE_PROXY_H__
 
23
#define __RB_REMOTE_PROXY_H__
 
24
 
 
25
#include <glib-object.h>
 
26
#include "rb-remote-common.h"
 
27
 
 
28
G_BEGIN_DECLS
 
29
 
 
30
#define RB_TYPE_REMOTE_PROXY (rb_remote_proxy_get_type ())
 
31
#define RB_REMOTE_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RB_TYPE_REMOTE_PROXY, RBRemoteProxy))
 
32
#define RB_IS_REMOTE_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RB_TYPE_REMOTE_PROXY))
 
33
#define RB_REMOTE_PROXY_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), RB_TYPE_REMOTE_PROXY, RBRemoteProxyIface))
 
34
 
 
35
typedef struct _RBRemoteProxy        RBRemoteProxy; /* Dummy typedef */
 
36
typedef struct _RBRemoteProxyIface RBRemoteProxyIface;
 
37
 
 
38
struct _RBRemoteProxy
 
39
{
 
40
        int dummy;
 
41
};
 
42
 
 
43
struct _RBRemoteProxyIface
 
44
{
 
45
        GTypeInterface g_iface;
 
46
        
 
47
        /* Signals */
 
48
        void (*song_changed) (RBRemoteProxy *proxy,
 
49
                              const RBRemoteSong *song);
 
50
        void (*visibility_changed) (RBRemoteProxy *proxy,
 
51
                                    gboolean visible);
 
52
 
 
53
        /* Methods */
 
54
        void (*load_uri) (RBRemoteProxy *proxy, const char *uri, gboolean play);
 
55
        void (*select_uri) (RBRemoteProxy *proxy, const char *uri);
 
56
        void (*play_uri) (RBRemoteProxy *proxy, const char *uri);
 
57
 
 
58
        void (*grab_focus) (RBRemoteProxy *proxy);
 
59
        void (*set_visibility) (RBRemoteProxy *proxy, gboolean visible);
 
60
        gboolean (*get_visibility) (RBRemoteProxy *proxy);
 
61
 
 
62
        gboolean (*get_shuffle) (RBRemoteProxy *proxy);
 
63
        void (*set_shuffle) (RBRemoteProxy *proxy, gboolean shuffle);
 
64
        gboolean (*get_repeat) (RBRemoteProxy *proxy);
 
65
        void (*set_repeat) (RBRemoteProxy *proxy, gboolean repeat);
 
66
 
 
67
        void (*play) (RBRemoteProxy *proxy);
 
68
        void (*pause) (RBRemoteProxy *proxy);
 
69
        gboolean (*playing) (RBRemoteProxy *proxy);
 
70
 
 
71
        long (*get_playing_time) (RBRemoteProxy *proxy);
 
72
        void (*set_playing_time) (RBRemoteProxy *proxy, long time);
 
73
        void (*seek) (RBRemoteProxy *proxy, long offset);
 
74
 
 
75
        gchar* (*get_playing_uri) (RBRemoteProxy *proxy);
 
76
        gboolean (*get_song_info) (RBRemoteProxy *proxy, const gchar *uri, RBRemoteSong *song);
 
77
        void (*set_rating) (RBRemoteProxy *proxy, double rating);
 
78
 
 
79
        void (*jump_next) (RBRemoteProxy *proxy);
 
80
        void (*jump_previous) (RBRemoteProxy *proxy);
 
81
 
 
82
        void (*toggle_mute) (RBRemoteProxy *proxy);
 
83
 
 
84
        void (*quit) (RBRemoteProxy *proxy);
 
85
 
 
86
        GParamSpec *(*find_player_property) (RBRemoteProxy *proxy, const gchar *property);
 
87
        void (*player_notify_handler) (RBRemoteProxy *proxy, GCallback c_handler, gpointer gobject);
 
88
        void (*get_player_property) (RBRemoteProxy *proxy, const gchar *property, GValue *value);
 
89
        void (*set_player_property) (RBRemoteProxy *proxy, const gchar *property, GValue *value);
 
90
 
 
91
        gchar* (*get_playing_source) (RBRemoteProxy *proxy);
 
92
 
 
93
};
 
94
 
 
95
GType rb_remote_proxy_get_type (void) G_GNUC_CONST;
 
96
 
 
97
void rb_remote_proxy_load_uri (RBRemoteProxy *proxy,
 
98
                               const char *uri,
 
99
                               gboolean play);
 
100
void rb_remote_proxy_select_uri (RBRemoteProxy *proxy,
 
101
                                 const char *uri);
 
102
void rb_remote_proxy_play_uri (RBRemoteProxy *proxy,
 
103
                               const char *uri);
 
104
void rb_remote_proxy_grab_focus (RBRemoteProxy *proxy);
 
105
void rb_remote_proxy_set_visibility (RBRemoteProxy *proxy, gboolean visible);
 
106
gboolean rb_remote_proxy_get_visibility (RBRemoteProxy *proxy);
 
107
 
 
108
gboolean rb_remote_proxy_get_shuffle (RBRemoteProxy *proxy);
 
109
void rb_remote_proxy_set_shuffle (RBRemoteProxy *proxy, gboolean shuffle);
 
110
gboolean rb_remote_proxy_get_repeat (RBRemoteProxy *proxy);
 
111
void rb_remote_proxy_set_repeat (RBRemoteProxy *proxy, gboolean repeat);
 
112
 
 
113
void rb_remote_proxy_play (RBRemoteProxy *proxy);
 
114
void rb_remote_proxy_pause (RBRemoteProxy *proxy);
 
115
gboolean rb_remote_proxy_playing (RBRemoteProxy *proxy);
 
116
 
 
117
long rb_remote_proxy_get_playing_time (RBRemoteProxy *proxy);
 
118
void rb_remote_proxy_set_playing_time (RBRemoteProxy *proxy, long time);
 
119
void rb_remote_proxy_seek (RBRemoteProxy *proxy, long offset);
 
120
void rb_remote_proxy_set_rating (RBRemoteProxy *proxy, double rating);
 
121
 
 
122
gchar *rb_remote_proxy_get_playing_uri (RBRemoteProxy *proxy);
 
123
gboolean rb_remote_proxy_get_song_info (RBRemoteProxy *proxy, const gchar *uri, RBRemoteSong *song);
 
124
 
 
125
void rb_remote_proxy_jump_next (RBRemoteProxy *proxy);
 
126
void rb_remote_proxy_jump_previous (RBRemoteProxy *proxy);
 
127
 
 
128
void rb_remote_proxy_toggle_mute (RBRemoteProxy *proxy);
 
129
 
 
130
void rb_remote_proxy_quit (RBRemoteProxy *proxy);
 
131
 
 
132
GParamSpec *rb_remote_proxy_find_player_property (RBRemoteProxy *proxy, const gchar *property);
 
133
void rb_remote_proxy_player_notify_handler (RBRemoteProxy *proxy, GCallback c_handler, gpointer gobject);
 
134
void rb_remote_proxy_set_player_property (RBRemoteProxy *proxy, const gchar *property, GValue *value);
 
135
void rb_remote_proxy_get_player_property (RBRemoteProxy *proxy, const gchar *property, GValue *value);
 
136
 
 
137
gchar *rb_remote_proxy_get_playing_source (RBRemoteProxy *proxy);
 
138
 
 
139
G_END_DECLS
 
140
 
 
141
#endif /* __RB_REMOTE_PROXY_H__ */