diff options
author | Mateusz Łukasik <mati75@linuxmint.pl> | 2015-04-25 16:17:41 +0200 |
---|---|---|
committer | Mateusz Łukasik <mati75@linuxmint.pl> | 2015-04-25 16:17:41 +0200 |
commit | 45ee5ac6dc2159352596ce8e8ec744e0c864d492 (patch) | |
tree | 55ca90fd4a0d5c0eae188c5919510b6b0d2e3c5d /src/findsubtitles | |
parent | a35c74c509f107094fd81cee8df109b652063969 (diff) |
Imported Upstream version 14.9.0.6690~ds0
Diffstat (limited to 'src/findsubtitles')
-rw-r--r-- | src/findsubtitles/filedownloader/filedownloader.cpp | 2 | ||||
-rw-r--r-- | src/findsubtitles/filedownloader/filedownloader.h | 2 | ||||
-rw-r--r-- | src/findsubtitles/findsubtitles.pro | 2 | ||||
-rw-r--r-- | src/findsubtitles/findsubtitlesconfigdialog.cpp | 22 | ||||
-rw-r--r-- | src/findsubtitles/findsubtitlesconfigdialog.h | 9 | ||||
-rw-r--r-- | src/findsubtitles/findsubtitlesconfigdialog.ui | 51 | ||||
-rw-r--r-- | src/findsubtitles/findsubtitleswindow.cpp | 36 | ||||
-rw-r--r-- | src/findsubtitles/findsubtitleswindow.h | 9 | ||||
-rw-r--r-- | src/findsubtitles/fixsubs.cpp | 2 | ||||
-rw-r--r-- | src/findsubtitles/fixsubs.h | 2 | ||||
-rw-r--r-- | src/findsubtitles/main.cpp | 2 | ||||
-rw-r--r-- | src/findsubtitles/osclient.cpp | 9 | ||||
-rw-r--r-- | src/findsubtitles/osclient.h | 16 | ||||
-rw-r--r-- | src/findsubtitles/osparser.cpp | 2 | ||||
-rw-r--r-- | src/findsubtitles/osparser.h | 2 | ||||
-rw-r--r-- | src/findsubtitles/subchooserdialog.cpp | 2 | ||||
-rw-r--r-- | src/findsubtitles/subchooserdialog.h | 2 |
17 files changed, 149 insertions, 23 deletions
diff --git a/src/findsubtitles/filedownloader/filedownloader.cpp b/src/findsubtitles/filedownloader/filedownloader.cpp index d7a64e3..7c0f15e 100644 --- a/src/findsubtitles/filedownloader/filedownloader.cpp +++ b/src/findsubtitles/filedownloader/filedownloader.cpp @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 diff --git a/src/findsubtitles/filedownloader/filedownloader.h b/src/findsubtitles/filedownloader/filedownloader.h index 367eb99..942aa61 100644 --- a/src/findsubtitles/filedownloader/filedownloader.h +++ b/src/findsubtitles/filedownloader/filedownloader.h @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 diff --git a/src/findsubtitles/findsubtitles.pro b/src/findsubtitles/findsubtitles.pro index 43279f5..c316236 100644 --- a/src/findsubtitles/findsubtitles.pro +++ b/src/findsubtitles/findsubtitles.pro @@ -41,6 +41,8 @@ FORMS += findsubtitleswindow.ui findsubtitlesconfigdialog.ui DEFINES += NO_SMPLAYER_SUPPORT DEFINES += DOWNLOAD_SUBS #DEFINES += USE_QUAZIP +#DEFINES += FS_USE_PROXY +DEFINES += OS_SEARCH_WORKAROUND contains( DEFINES, DOWNLOAD_SUBS ) { INCLUDEPATH += filedownloader diff --git a/src/findsubtitles/findsubtitlesconfigdialog.cpp b/src/findsubtitles/findsubtitlesconfigdialog.cpp index bfbafc9..6aede06 100644 --- a/src/findsubtitles/findsubtitlesconfigdialog.cpp +++ b/src/findsubtitles/findsubtitlesconfigdialog.cpp @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 @@ -24,6 +24,7 @@ FindSubtitlesConfigDialog::FindSubtitlesConfigDialog( QWidget* parent, Qt::Windo { setupUi(this); +#ifdef FS_USE_PROXY proxy_type_combo->addItem( tr("HTTP"), QNetworkProxy::HttpProxy); proxy_type_combo->addItem( tr("SOCKS5"), QNetworkProxy::Socks5Proxy); @@ -35,6 +36,13 @@ FindSubtitlesConfigDialog::FindSubtitlesConfigDialog( QWidget* parent, Qt::Windo tr("The password for the proxy. <b>Warning:</b> the password will be saved " "as plain text in the configuration file.") ); proxy_type_combo->setWhatsThis( tr("Select the proxy type to be used.") ); +#else + proxy_group->hide(); +#endif + +#ifndef OS_SEARCH_WORKAROUND + misc_group->hide(); +#endif layout()->setSizeConstraint(QLayout::SetFixedSize); } @@ -50,6 +58,17 @@ QString FindSubtitlesConfigDialog::server() { return server_edit->text(); } +#ifdef OS_SEARCH_WORKAROUND +void FindSubtitlesConfigDialog::setRetries(int n) { + retries_spin->setValue(n); +} + +int FindSubtitlesConfigDialog::retries() { + return retries_spin->value(); +} +#endif + +#ifdef FS_USE_PROXY void FindSubtitlesConfigDialog::setUseProxy(bool b) { use_proxy_check->setChecked(b); } @@ -100,5 +119,6 @@ int FindSubtitlesConfigDialog::proxyType() { int index = proxy_type_combo->currentIndex(); return proxy_type_combo->itemData(index).toInt(); } +#endif #include "moc_findsubtitlesconfigdialog.cpp" diff --git a/src/findsubtitles/findsubtitlesconfigdialog.h b/src/findsubtitles/findsubtitlesconfigdialog.h index 82c29ce..9a2113a 100644 --- a/src/findsubtitles/findsubtitlesconfigdialog.h +++ b/src/findsubtitles/findsubtitlesconfigdialog.h @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 @@ -33,6 +33,12 @@ public: void setServer(QString server); QString server(); +#ifdef OS_SEARCH_WORKAROUND + void setRetries(int n); + int retries(); +#endif + +#ifdef FS_USE_PROXY // Proxy void setUseProxy(bool b); bool useProxy(); @@ -51,6 +57,7 @@ public: void setProxyType(int type); int proxyType(); +#endif }; #endif diff --git a/src/findsubtitles/findsubtitlesconfigdialog.ui b/src/findsubtitles/findsubtitlesconfigdialog.ui index cf27e15..bb2b151 100644 --- a/src/findsubtitles/findsubtitlesconfigdialog.ui +++ b/src/findsubtitles/findsubtitlesconfigdialog.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>493</width> - <height>335</height> + <width>499</width> + <height>397</height> </rect> </property> <property name="windowTitle"> @@ -15,7 +15,7 @@ </property> <layout class="QVBoxLayout"> <item> - <widget class="QGroupBox" name="groupBox_2"> + <widget class="QGroupBox" name="server_group"> <property name="title"> <string>Server</string> </property> @@ -37,7 +37,7 @@ </widget> </item> <item> - <widget class="QGroupBox" name="groupBox"> + <widget class="QGroupBox" name="proxy_group"> <property name="title"> <string>Proxy</string> </property> @@ -151,6 +151,48 @@ </widget> </item> <item> + <widget class="QGroupBox" name="misc_group"> + <property name="title"> + <string>Misc</string> + </property> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QLabel" name="label_7"> + <property name="text"> + <string>Number of &retries:</string> + </property> + <property name="buddy"> + <cstring>retries_spin</cstring> + </property> + </widget> + </item> + <item> + <widget class="QSpinBox" name="retries_spin"> + <property name="minimum"> + <number>1</number> + </property> + <property name="maximum"> + <number>50</number> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>257</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> + </widget> + </item> + <item> <widget class="QDialogButtonBox" name="buttonBox"> <property name="orientation"> <enum>Qt::Horizontal</enum> @@ -170,6 +212,7 @@ <tabstop>proxy_username_edit</tabstop> <tabstop>proxy_password_edit</tabstop> <tabstop>proxy_type_combo</tabstop> + <tabstop>retries_spin</tabstop> <tabstop>buttonBox</tabstop> </tabstops> <resources/> diff --git a/src/findsubtitles/findsubtitleswindow.cpp b/src/findsubtitles/findsubtitleswindow.cpp index b7593d5..670b070 100644 --- a/src/findsubtitles/findsubtitleswindow.cpp +++ b/src/findsubtitles/findsubtitleswindow.cpp @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 @@ -176,6 +176,7 @@ FindSubtitlesWindow::FindSubtitlesWindow( QWidget * parent, Qt::WindowFlags f ) os_server = "http://api.opensubtitles.org/xml-rpc"; osclient->setServer(os_server); +#ifdef FS_USE_PROXY // Proxy use_proxy = false; proxy_type = QNetworkProxy::HttpProxy; @@ -185,6 +186,7 @@ FindSubtitlesWindow::FindSubtitlesWindow( QWidget * parent, Qt::WindowFlags f ) proxy_password = ""; setupProxy(); +#endif } FindSubtitlesWindow::~FindSubtitlesWindow() { @@ -194,9 +196,12 @@ FindSubtitlesWindow::~FindSubtitlesWindow() { void FindSubtitlesWindow::setSettings(QSettings * settings) { set = settings; loadSettings(); +#ifdef FS_USE_PROXY setupProxy(); +#endif } +#ifdef FS_USE_PROXY void FindSubtitlesWindow::setProxy(QNetworkProxy proxy) { /* downloader->abort(); @@ -211,6 +216,7 @@ void FindSubtitlesWindow::setProxy(QNetworkProxy proxy) { qDebug("FindSubtitlesWindow::setProxy: host: '%s' port: %d type: %d", proxy.hostName().toUtf8().constData(), proxy.port(), proxy.type()); } +#endif void FindSubtitlesWindow::retranslateStrings() { retranslateUi(this); @@ -760,27 +766,40 @@ void FindSubtitlesWindow::on_configure_button_clicked() { FindSubtitlesConfigDialog d(this); d.setServer( os_server ); + #ifdef OS_SEARCH_WORKAROUND + d.setRetries(osclient->retries()); + #endif + #ifdef FS_USE_PROXY d.setUseProxy( use_proxy ); d.setProxyHostname( proxy_host ); d.setProxyPort( proxy_port ); d.setProxyUsername( proxy_username ); d.setProxyPassword( proxy_password ); d.setProxyType( proxy_type ); + #endif if (d.exec() == QDialog::Accepted) { os_server = d.server(); + #ifdef OS_SEARCH_WORKAROUND + osclient->setRetries( d.retries() ); + #endif + #ifdef FS_USE_PROXY use_proxy = d.useProxy(); proxy_host = d.proxyHostname(); proxy_port = d.proxyPort(); proxy_username = d.proxyUsername(); proxy_password = d.proxyPassword(); proxy_type = d.proxyType(); + #endif osclient->setServer(os_server); + #ifdef FS_USE_PROXY setupProxy(); + #endif } } +#ifdef FS_USE_PROXY void FindSubtitlesWindow::setupProxy() { QNetworkProxy proxy; @@ -802,6 +821,7 @@ void FindSubtitlesWindow::setupProxy() { setProxy(proxy); } +#endif void FindSubtitlesWindow::saveSettings() { qDebug("FindSubtitlesWindow::saveSettings"); @@ -809,16 +829,23 @@ void FindSubtitlesWindow::saveSettings() { set->beginGroup("findsubtitles"); set->setValue("xmlrpc_server", os_server); +#ifdef OS_SEARCH_WORKAROUND + set->setValue("retries", osclient->retries()); +#endif + set->setValue("language", language()); #ifdef DOWNLOAD_SUBS set->setValue("include_lang_on_filename", includeLangOnFilename()); #endif + +#ifdef FS_USE_PROXY set->setValue("proxy/use_proxy", use_proxy); set->setValue("proxy/type", proxy_type); set->setValue("proxy/host", proxy_host); set->setValue("proxy/port", proxy_port); set->setValue("proxy/username", proxy_username); set->setValue("proxy/password", proxy_password); +#endif set->endGroup(); } @@ -829,16 +856,23 @@ void FindSubtitlesWindow::loadSettings() { set->beginGroup("findsubtitles"); os_server = set->value("xmlrpc_server", os_server).toString(); +#ifdef OS_SEARCH_WORKAROUND + osclient->setRetries( set->value("retries", osclient->retries()).toInt() ); +#endif + setLanguage( set->value("language", language()).toString() ); #ifdef DOWNLOAD_SUBS setIncludeLangOnFilename( set->value("include_lang_on_filename", includeLangOnFilename()).toBool() ); #endif + +#ifdef FS_USE_PROXY use_proxy = set->value("proxy/use_proxy", use_proxy).toBool(); proxy_type = set->value("proxy/type", proxy_type).toInt(); proxy_host = set->value("proxy/host", proxy_host).toString(); proxy_port = set->value("proxy/port", proxy_port).toInt(); proxy_username = set->value("proxy/username", proxy_username).toString(); proxy_password = set->value("proxy/password", proxy_password).toString(); +#endif set->endGroup(); } diff --git a/src/findsubtitles/findsubtitleswindow.h b/src/findsubtitles/findsubtitleswindow.h index 096e744..7c84506 100644 --- a/src/findsubtitles/findsubtitleswindow.h +++ b/src/findsubtitles/findsubtitleswindow.h @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 @@ -20,7 +20,10 @@ #define _FINDSUBTITLESWINDOW_H_ #include "ui_findsubtitleswindow.h" + +#ifdef FS_USE_PROXY #include <QNetworkProxy> +#endif class OSClient; class QStandardItemModel; @@ -93,8 +96,10 @@ protected: virtual void retranslateStrings(); virtual void changeEvent(QEvent * event); +#ifdef FS_USE_PROXY void setProxy(QNetworkProxy proxy); void setupProxy(); +#endif void saveSettings(); void loadSettings(); @@ -133,6 +138,7 @@ protected: // Opensubtitles server QString os_server; +#ifdef FS_USE_PROXY // Proxy bool use_proxy; int proxy_type; @@ -140,6 +146,7 @@ protected: int proxy_port; QString proxy_username; QString proxy_password; +#endif QSettings * set; }; diff --git a/src/findsubtitles/fixsubs.cpp b/src/findsubtitles/fixsubs.cpp index 7b3b049..1c37085 100644 --- a/src/findsubtitles/fixsubs.cpp +++ b/src/findsubtitles/fixsubs.cpp @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 diff --git a/src/findsubtitles/fixsubs.h b/src/findsubtitles/fixsubs.h index ac80ec0..491fc54 100644 --- a/src/findsubtitles/fixsubs.h +++ b/src/findsubtitles/fixsubs.h @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 diff --git a/src/findsubtitles/main.cpp b/src/findsubtitles/main.cpp index 9a51115..964b728 100644 --- a/src/findsubtitles/main.cpp +++ b/src/findsubtitles/main.cpp @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 diff --git a/src/findsubtitles/osclient.cpp b/src/findsubtitles/osclient.cpp index ddb3581..86acce6 100644 --- a/src/findsubtitles/osclient.cpp +++ b/src/findsubtitles/osclient.cpp @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 @@ -25,6 +25,7 @@ OSClient::OSClient(QObject* parent) : , search_size(0) #ifdef OS_SEARCH_WORKAROUND , best_search_count(0) + , search_retries(8) #endif { rpc = new MaiaXmlRpcClient(QUrl("http://api.opensubtitles.org/xml-rpc"), this); @@ -34,9 +35,11 @@ void OSClient::setServer(const QString & server) { rpc->setUrl(QUrl(server)); } +#ifdef FS_USE_PROXY void OSClient::setProxy(const QNetworkProxy & proxy) { rpc->setProxy(proxy); } +#endif void OSClient::login() { qDebug("OSClient::login"); @@ -59,6 +62,8 @@ void OSClient::search(const QString & hash, qint64 file_size) { search_hash = hash; search_size = file_size; + disconnect(this, SIGNAL(loggedIn()), this, SLOT(doSearch())); + #if 0 if (logged_in) { doSearch(); @@ -75,7 +80,7 @@ void OSClient::search(const QString & hash, qint64 file_size) { #ifdef OS_SEARCH_WORKAROUND void OSClient::doSearch() { best_search_count = -1; - for (int n = 1; n < 8; n++) doSearch(n); + for (int n = 1; n <= search_retries; n++) doSearch(n); } void OSClient::doSearch(int nqueries) { diff --git a/src/findsubtitles/osclient.h b/src/findsubtitles/osclient.h index e961ec6..cb32139 100644 --- a/src/findsubtitles/osclient.h +++ b/src/findsubtitles/osclient.h @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 @@ -21,8 +21,6 @@ #include "maiaXmlRpcClient.h" -#define OS_SEARCH_WORKAROUND - class OSSubtitle { public: QString movie, releasename, link, iso639, language, date; @@ -34,12 +32,21 @@ class OSClient : public QObject { public: OSClient(QObject* parent = 0); + + QList<OSSubtitle> subtitleList() { return s_list; }; + +#ifdef FS_USE_PROXY void setProxy(const QNetworkProxy & proxy); +#endif + +#ifdef OS_SEARCH_WORKAROUND + void setRetries(int n) { search_retries = n; }; + int retries() { return search_retries; }; +#endif public slots: void setServer(const QString & server); void search(const QString & hash, qint64 file_size); - QList<OSSubtitle> subtitleList() { return s_list; }; private slots: void login(); @@ -68,6 +75,7 @@ private: qint64 search_size; #ifdef OS_SEARCH_WORKAROUND int best_search_count; + int search_retries; #endif QList <OSSubtitle> s_list; }; diff --git a/src/findsubtitles/osparser.cpp b/src/findsubtitles/osparser.cpp index aa9887c..df70c6f 100644 --- a/src/findsubtitles/osparser.cpp +++ b/src/findsubtitles/osparser.cpp @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 diff --git a/src/findsubtitles/osparser.h b/src/findsubtitles/osparser.h index aac82d3..93a719e 100644 --- a/src/findsubtitles/osparser.h +++ b/src/findsubtitles/osparser.h @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 diff --git a/src/findsubtitles/subchooserdialog.cpp b/src/findsubtitles/subchooserdialog.cpp index 813d0bb..c5b00c7 100644 --- a/src/findsubtitles/subchooserdialog.cpp +++ b/src/findsubtitles/subchooserdialog.cpp @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 diff --git a/src/findsubtitles/subchooserdialog.h b/src/findsubtitles/subchooserdialog.h index 8c46d16..743a055 100644 --- a/src/findsubtitles/subchooserdialog.h +++ b/src/findsubtitles/subchooserdialog.h @@ -1,5 +1,5 @@ /* smplayer, GUI front-end for mplayer. - Copyright (C) 2006-2014 Ricardo Villalba <rvm@users.sourceforge.net> + Copyright (C) 2006-2015 Ricardo Villalba <rvm@users.sourceforge.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 |