summaryrefslogtreecommitdiffstats
path: root/kaffeine/src/kaffeineiface.h
blob: cb5f6f3acaa52ea1f2b7d3be10ffd2a173394c60 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
/*
 * kaffeineiface.h
 *
 * Copyright (C) 2004-2005 Jürgen Kofler <kaffeine@gmx.net>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
 */

#ifndef KAFFEINEIFACE_H
#define KAFFEINEIFACE_H

#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

#include <dcopobject.h>

class KaffeineIface : virtual public DCOPObject
{
	K_DCOP
k_dcop:
	/* Add url to playlist and play it */
	virtual void openURL(TQString url) = 0;

	/* Append url to playlist */
	virtual void appendURL(TQString url) = 0;

	/* Play next in playlist */
	virtual void play() = 0;

	/* Start playing audio CD */
	virtual void playAudioCD() = 0;

	/* Start playing video CD */
	virtual void playVCD() = 0;

	/* Start playing DVD */
	virtual void playDVD() = 0;

	/* Toggle pause / play */
	virtual void pause() = 0;

	/* Stop playback */
	virtual void stop() = 0;

	/* Play next in playlist */
	virtual void next() = 0;

	/* Play previous in playlist */
	virtual void previous() = 0;

	/* Change to next playlist */
	virtual void changePlaylist() = 0;

	/* Is currently playback in progress? */
	virtual bool isPlaying() = 0;

	/* Is a video being played? */
	virtual bool isVideo() = 0;

	/* Returns current track title */
	virtual TQString title() = 0;

	/* Returns current artist */
	virtual TQString artist() = 0;

	/* Returns current album */
	virtual TQString album() = 0;

	/* Returns current track */
	virtual TQString track() = 0;

	/* Returns current track file (media) name */
	virtual TQString getFileName() = 0;

	/* Toggle random play */
	virtual void random() = 0;

	/* Toggle fullscreen / windowed mode */
	virtual void fullscreen() = 0;

	/* Switch to/from minimal mode */
	virtual void minimal() = 0;

	/* Returns current track length in seconds */
	virtual int getLength() = 0;

	/* Returns current track position in seconds */
	virtual int getTimePos() = 0;

	/* Increase stream position */
	virtual void posPlus() = 0;

	/* Decrease stream position */
	virtual void posMinus() = 0;

	/* Volume up */
	virtual void volUp() = 0;

	/* Volume down */
	virtual void volDown() = 0;

	/* Toggle mute */
	virtual void mute() = 0;

	/* Quit Kaffeine */
	virtual void quit() = 0;

	/* Jump to number */
	virtual void setNumber(int num) = 0;

	/* Create new DVB timer. datetime=2006-08-28T19:45:00, duration=01:55:00 */
	virtual void dvbNewTimer(TQString name, TQString channel, TQString datetime, TQString duration) = 0;

	virtual int dvbSNR(int device) = 0;

	virtual void dvbOSD() = 0;
	virtual void dvbOSDNextChannel() = 0;
	virtual void dvbOSDPreviousChannel() = 0;
	virtual void dvbOSDNextProgram() = 0;
	virtual void dvbOSDPreviousProgram() = 0;
	virtual void dvbOSDZap() = 0;

	virtual void playDvb() = 0;
};

#endif /* KAFFEINEIFACE_H */