~ubuntu-branches/debian/jessie/smplayer/jessie

« back to all changes in this revision

Viewing changes to src/myserver.cpp

  • Committer: Package Import Robot
  • Author(s): Alessio Treglia
  • Date: 2012-02-16 11:51:44 UTC
  • mfrom: (1.1.12)
  • Revision ID: package-import@ubuntu.com-20120216115144-hkpz36a4h5f3x9w3
Tags: 0.7.0-1
* Team upload.
* New upstream release (Closes: #655125):
  - Changes since 0.6.10:
    + New favorite menu, where you can add your favorite videos, music,
       streams, youtube videos... It's also possible to add submenus.
    + Support for youtube. Now you can open urls like
      http://www.youtube.com/watch?v=..... using the Open -> URL dialog or
      dragging a link from a browser to the smplayer window.
    + Support for mplayer2 (http://www.mplayer2.org). It's a fork of mplayer
      with interesting features like precise seeking, ordered chapters in
      mkv videos and better pause handling (e.g. seek works while the video
      is paused).
    + New translation: croatian.
  - Changes since 0.6.9:
    + New vdpau configuration dialog, which allow to select the vdpau codecs
      to use. (Closes: #610204)
    + Port for eCS, OS/2 (by Silvan Scherrer).
    + New menu to select the closed caption channel (requires mplayer >=
      r32607).
    + Possibility to select the seeking method (absolute or relative).
    + Possibility to sort the items of the playlist.
* Remove debian/patches/enable_ffodivxvdpau.diff, the application now
  provides a configuration dialog for vdpau.
* Refresh handle_local_urls.diff.
* Update copyright notice.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*  smplayer, GUI front-end for mplayer.
2
 
    Copyright (C) 2006-2010 Ricardo Villalba <rvm@escomposlinux.org>
 
2
    Copyright (C) 2006-2012 Ricardo Villalba <rvm@users.sourceforge.net>
3
3
 
4
4
    This program is free software; you can redistribute it and/or modify
5
5
    it under the terms of the GNU General Public License as published by
58
58
        QRegExp rx_open_files("(^open_files|^add_files) (.*)");
59
59
        QRegExp rx_function("^(function|f) (.*)");
60
60
        QRegExp rx_loadsub("^load_sub (.*)");
61
 
 
 
61
        QRegExp rx_playItem("^play item ([0-9]+)");
 
62
        QRegExp rx_moveItem("^move item ([0-9]+) ([+-]?[0-9]+)");
 
63
        QRegExp rx_removeItem("^remove item (\\*|[0-9]+)");
 
64
        QRegExp rx_seek("^seek ([0-9]*\\.*[0-9]*)");
 
65
        QRegExp rx_get("^get (.*)");
 
66
        QRegExp rx_setVol("^set volume ([0-9]+)");
62
67
 
63
68
        if (str.toLower() == "hello") {
64
69
                sendText(QString("Hello, this is SMPlayer %1").arg(smplayerVersion()));
72
77
                sendText(" function [function_name]");
73
78
                sendText(" f [function_name]");
74
79
                sendText(" open [file]");
 
80
                sendText(" open_files_start \\n open_files [file1] \\n open_files [file2]  \\n ... open_files_end");
 
81
                sendText(" add_files_start  \\n  add_files [file1] \\n  add_files [file2]  \\n ...  add_files_end");
 
82
                sendText(" remove item [index]");
 
83
                sendText(" play item [index]");
 
84
                sendText(" move item [index] [shift]");
 
85
                sendText(" view playlist");
 
86
                sendText(" view status");
 
87
                sendText(" view clip info");
 
88
                sendText(" seek [position]");
 
89
                sendText(" get [action]");
 
90
                sendText(" get volume");
 
91
                sendText(" set volume [value]");
75
92
        }
76
93
        else
77
94
        if (str.toLower() == "quit") {
84
101
                        sendText( actions_list[n] );
85
102
                }
86
103
        }
87
 
        else 
 
104
        else
 
105
        if (rx_playItem.indexIn(str) > -1) {
 
106
                QString index = rx_playItem.cap(1);
 
107
                qDebug("Connection::parseLine: asked to play file #%s.", index.toUtf8().data());
 
108
                sendText("OK, command sent to GUI.");
 
109
                emit receivedPlayItem(index.toInt());
 
110
        }
 
111
        else
 
112
        if (rx_removeItem.indexIn(str) > -1) {
 
113
                QString index = rx_removeItem.cap(1);
 
114
                qDebug("Connection::parseLine: asked to remove file %s.", index.toUtf8().data());
 
115
                sendText("OK, command sent to GUI.");
 
116
                emit receivedRemoveItem(index == "*" ? -1 : index.toInt());
 
117
        }
 
118
        else
 
119
        if (rx_moveItem.indexIn(str) > -1) {
 
120
                QString index = rx_moveItem.cap(1);
 
121
                QString shift = rx_moveItem.cap(2);
 
122
                qDebug("Connection::parseLine: asked to move file %s %s.", index.toUtf8().data(), shift.toUtf8().data());
 
123
                sendText("OK, command sent to GUI.");
 
124
                emit receivedMoveItem(index.toInt(), shift.toInt());
 
125
        }
 
126
        else
88
127
        if (rx_open.indexIn(str) > -1) {
89
128
                QString file = rx_open.cap(1);
90
129
                qDebug("Connection::parseLine: asked to open '%s'", file.toUtf8().data());
133
172
                sendText("OK, function sent to GUI");
134
173
                emit receivedFunction(function);
135
174
        }
 
175
        else
 
176
        if(str.toLower() == "get volume"){
 
177
                int output = 0;
 
178
                emit receivedGetVolume(&output);
 
179
                sendText(QString::number(output));
 
180
 
 
181
        }
 
182
        else
 
183
        if(rx_setVol.indexIn(str) > -1){
 
184
                int value = rx_setVol.cap(1).toInt();
 
185
                emit receivedSetVolume(value);
 
186
 
 
187
        }
 
188
        else
 
189
        if(str.toLower() == "view playlist"){
 
190
                QString output = "";
 
191
                emit receivedViewPlaylist(&output);
 
192
                sendText(output);
 
193
 
 
194
        }
 
195
        else
 
196
        if(str.toLower() == "view status"){
 
197
                QString output = "";
 
198
                emit receivedViewStatus(&output);
 
199
                sendText(output);
 
200
 
 
201
        }
 
202
        else
 
203
        if(str.toLower() == "view clip info"){
 
204
                QString output = "";
 
205
                emit receivedViewClipInfo(&output);
 
206
                sendText(output);
 
207
 
 
208
        }
 
209
        else
 
210
        if(rx_seek.indexIn(str) > -1){
 
211
                qDebug("Connection::parseLine: asked to seek to %s", rx_seek.cap(1).toUtf8().data());
 
212
                emit receivedSeek(rx_seek.cap(1).toDouble());
 
213
        }
 
214
        else
 
215
        if(rx_get.indexIn(str) > -1){
 
216
                qDebug("Connection::parseLine: asked to get state of action '%s'", rx_get.cap(1).toUtf8().data());
 
217
                QString value = "";
 
218
                emit receivedGetChecked(rx_get.cap(1), &value);
 
219
                sendText(value);
 
220
        }
136
221
        else {
137
222
                sendText("Unknown command");
138
223
        }
152
237
        Connection * c = new Connection( nextPendingConnection() );
153
238
        c->setActionsList( actionsList() );
154
239
 
 
240
        connect(c, SIGNAL(receivedPlayItem(int)),
 
241
                        this, SIGNAL(receivedPlayItem(int)));
 
242
        connect(c, SIGNAL(receivedRemoveItem(int)),
 
243
                        this, SIGNAL(receivedRemoveItem(int)));
155
244
        connect(c, SIGNAL(receivedOpen(QString)),
156
 
            this, SIGNAL(receivedOpen(QString)));
 
245
                        this, SIGNAL(receivedOpen(QString)));
157
246
        connect(c, SIGNAL(receivedOpenFiles(QStringList)),
158
247
            this, SIGNAL(receivedOpenFiles(QStringList)));
159
248
        connect(c, SIGNAL(receivedAddFiles(QStringList)),
162
251
            this, SIGNAL(receivedFunction(QString)));
163
252
        connect(c, SIGNAL(receivedLoadSubtitle(QString)),
164
253
            this, SIGNAL(receivedLoadSubtitle(QString)));
 
254
        connect(c, SIGNAL(receivedViewPlaylist(QString*)),
 
255
                        this, SIGNAL(receivedViewPlaylist(QString*)));
 
256
        connect(c, SIGNAL(receivedViewStatus(QString*)),
 
257
                        this, SIGNAL(receivedViewStatus(QString*)));
 
258
        connect(c, SIGNAL(receivedViewClipInfo(QString*)),
 
259
                        this, SIGNAL(receivedViewClipInfo(QString*)));
 
260
        connect(c, SIGNAL(receivedSeek(double)),
 
261
                        this, SIGNAL(receivedSeek(double)));
 
262
        connect(c, SIGNAL(receivedGetChecked(QString,QString*)),
 
263
                        this, SIGNAL(receivedGetChecked(QString,QString*)));
 
264
        connect(c, SIGNAL(receivedMoveItem(int,int)),
 
265
                        this, SIGNAL(receivedMoveItem(int,int)));
 
266
        connect(c, SIGNAL(receivedGetVolume(int*)),
 
267
                        this, SIGNAL(receivedGetVolume(int*)));
 
268
        connect(c, SIGNAL(receivedSetVolume(int)),
 
269
                        this, SIGNAL(receivedSetVolume(int)));
165
270
}
166
271
 
167
272
#include "moc_myserver.cpp"