source: smplayer/trunk/src/myclient.h@ 100

Last change on this file since 100 was 93, checked in by Silvan Scherrer, 15 years ago

smplayer: 0.6.9

File size: 2.0 KB
Line 
1/* smplayer, GUI front-end for mplayer.
2 Copyright (C) 2006-2010 Ricardo Villalba <rvm@escomposlinux.org>
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17*/
18
19#ifndef _MYCLIENT_H_
20#define _MYCLIENT_H_
21
22#include <QStringList>
23
24class QTextStream;
25class QTcpSocket;
26
27
28//! MyClient communicates with other running instances.
29
30/*!
31 It can be used to know if there's another instance of smplayer running.
32 It also allows to send the file(s) that the user wants to open to
33 the other instance.
34*/
35
36class MyClient : public QObject
37{
38public:
39 MyClient(quint16 port, QObject * parent = 0);
40 ~MyClient();
41
42 //! Sets the maximum time that should wait in the waitFor... functions.
43 void setTimeOut(int ms) { timeout = ms; };
44 int timeOut() { return timeout; };
45
46 //! Return true if it can open a connection to another instance.
47 bool openConnection();
48 void closeConnection();
49
50 //! Send the list of files to the other instance. Return true on success.
51 bool sendFiles( const QStringList & files, bool addToPlaylist = false);
52
53 //! Pass an action (pause, fullscreen...) to GUI.
54 bool sendAction( const QString & action );
55
56 bool sendSubtitleFile(const QString & file);
57
58protected:
59 QString readLine();
60 void writeLine(QString);
61
62private:
63 quint16 port;
64 QTcpSocket * socket;
65 int timeout;
66};
67
68#endif
Note: See TracBrowser for help on using the repository browser.