1
mirror of https://github.com/qbittorrent/qBittorrent synced 2025-10-07 09:52:18 +02:00

Compare commits

...

54 Commits

Author SHA1 Message Date
Christophe Dumez
bf83cae284 - Tagging for v0.9.3 2007-05-07 21:26:14 +00:00
Christophe Dumez
1057cdbe44 ******** v0.9.3 release ********* 2007-05-07 21:23:16 +00:00
Christophe Dumez
fe4c1859a8 Remember sorted column in download list on restart 2007-05-07 21:14:44 +00:00
Christophe Dumez
0d8a22dcda - Fixes in Slovak translation 2007-05-07 20:10:23 +00:00
Christophe Dumez
a643bd64db - Fixed size display for torrent with no filtered files (with libtorrent < v0.13), introduced recently 2007-05-07 19:58:07 +00:00
Christophe Dumez
21be57d06f - Fixed compiling with libtorrent v0.12 stable
- Fixed EffectiveSize() function so that the file size really reflects only unfiltered files in the torrent
2007-05-04 14:35:39 +00:00
Christophe Dumez
1c5262b1ed - Fixed compiling with latest libtorrent svn/trunk
- Added some errors messages if fastresume fails
2007-05-04 13:58:07 +00:00
Christophe Dumez
a01a461dd0 - Fixed a small error in the german translation 2007-04-15 21:37:22 +00:00
Christophe Dumez
06448509fb - BUGFIX: The torrent size displayed now takes filtered files into consideration
- BUGFIX: Fixed compiling errors with libtorrent svn (adds UPnP support)
2007-04-12 21:42:05 +00:00
Christophe Dumez
985bb8926b - Updated splash screen 2007-04-11 20:58:31 +00:00
Christophe Dumez
d0a766d49a - Fixed double click in download list 2007-04-11 20:54:02 +00:00
Christophe Dumez
7140a532ed - Updated version to v0.9.2 final 2007-04-10 21:02:47 +00:00
Christophe Dumez
db4f3ab08a - Updated turkish translation 2007-04-10 20:49:55 +00:00
Christophe Dumez
1deb7b88bc - disabled main window context menu (more annoying than useful) 2007-04-10 10:56:18 +00:00
Christophe Dumez
0d40bb0d68 - Fixed the name of the protuguese translator 2007-04-09 19:01:56 +00:00
Christophe Dumez
b033893d39 - Added Japanese translator : Nardog 2007-04-09 17:13:30 +00:00
Christophe Dumez
e9693d3829 - BUGFIX: Disabled context menu in toolbar (makes no sense) 2007-04-08 18:23:11 +00:00
Christophe Dumez
bc7d9d00ab - Translated "Japanese" into japanese in options 2007-04-07 13:58:23 +00:00
Christophe Dumez
0c05c893a0 - Updated to rc3 2007-04-07 07:44:45 +00:00
Christophe Dumez
8b3c4f8143 - Added Japanese translation 2007-04-07 07:43:57 +00:00
Christophe Dumez
90bc79d4e1 - Allow to compile with libtorrent v0.11 2007-04-06 00:39:58 +00:00
Christophe Dumez
676d6764b9 - Use PKGConfig again to configure libtorrent 2007-04-05 23:00:41 +00:00
Christophe Dumez
cb08280180 - window can now stay maximized on exit 2007-04-04 14:56:40 +00:00
Christophe Dumez
ecede8b53e - Updated release date in Changelog 2007-04-03 22:03:48 +00:00
Christophe Dumez
f6a54f6fcf - Updated version to final v0.9.1 2007-04-03 22:01:55 +00:00
Christophe Dumez
6039851f13 - Updated version in desktop file 2007-04-03 21:57:30 +00:00
Christophe Dumez
f1decc5432 - Updated changelog, splashscreen and version for v0.9.1 2007-04-03 21:55:36 +00:00
Christophe Dumez
12629a9e38 - Fixed configure files 2007-04-03 21:51:26 +00:00
Christophe Dumez
14f13d0406 - fixed a typo in option_imp 2007-03-30 13:17:48 +00:00
Christophe Dumez
e0213dc6c3 - Optimized a little friendlyUnit() function 2007-03-30 12:53:55 +00:00
Christophe Dumez
2f065bd9ea - Bring main window to foreground when it is minimized on exit confirmation 2007-03-29 20:24:23 +00:00
Christophe Dumez
b87882dd59 Bring mainWindow to foreground when asking for exit confirmation 2007-03-29 18:49:36 +00:00
Christophe Dumez
df06fcac03 - Updated Dutch translation
- Disabled debug mode
2007-03-29 13:55:02 +00:00
Christophe Dumez
3de95cdb04 - Updated Italian translation 2007-03-28 11:19:30 +00:00
Christophe Dumez
062fd6d81c - Optimized headers import for faster compiling 2007-03-27 19:21:13 +00:00
Christophe Dumez
82d9e19e96 - Made ipfilter.dat parser less sensitive to errors 2007-03-26 14:48:01 +00:00
Christophe Dumez
22eead5f9a - Updated Changelog 2007-03-25 18:39:49 +00:00
Christophe Dumez
f5627e4345 - Fixed a small error in fastresume files saving 2007-03-25 16:19:28 +00:00
Christophe Dumez
da867a767b - Updated Portuguese translation 2007-03-25 10:51:43 +00:00
Christophe Dumez
b751954566 - Updated Ukrainian translation 2007-03-24 15:30:52 +00:00
Christophe Dumez
f774228529 - Changed Danish to Dansk in option 2007-03-23 18:09:57 +00:00
Christophe Dumez
4d6aad8cab - Added option entry to select new danish translation 2007-03-23 14:26:48 +00:00
Christophe Dumez
188e3956d8 - Added danish translation 2007-03-23 14:13:29 +00:00
Christophe Dumez
88d7400644 - Updated spanish translation 2007-03-22 08:32:56 +00:00
Christophe Dumez
41254bcdf4 - Updated greek and bulgarian translations 2007-03-19 22:01:13 +00:00
Christophe Dumez
067aa010b6 - Updated chinese (simplified) translation & translator 2007-03-19 21:24:53 +00:00
Christophe Dumez
f94197816c - Added CONFIG += thread 2007-03-19 15:52:03 +00:00
Christophe Dumez
78e976e97e Update application style according to the system (WindowsXP, MacOS, X11) 2007-03-19 14:46:04 +00:00
Christophe Dumez
225d8bcc5b - Fixed a memory leak in options
- Removed unneeded QTranslator object in options.
2007-03-19 14:31:51 +00:00
Christophe Dumez
9bd29ebdb0 - Updated korean translation 2007-03-17 13:58:22 +00:00
Christophe Dumez
7565902fc1 - Removing empty doc folders (moved) 2007-03-15 16:28:40 +00:00
Christophe Dumez
0b8a1f8c1f - Updated version to v0.9.0rc1 2007-03-15 15:57:27 +00:00
Christophe Dumez
8800614077 - Updated slovak translation 2007-03-15 15:56:45 +00:00
Christophe Dumez
156001f51d - Created a branch for v0.9.x 2007-03-15 15:51:11 +00:00
65 changed files with 10198 additions and 5611 deletions

View File

@@ -1,4 +1,23 @@
* Unknown - Christophe Dumez <chris@qbittorrent.org> - v0.9.0
* Mon May 07 2007 - Christophe Dumez <chris@qbittorrent.org> - v0.9.3
- BUGFIX: Fixed pause toggle on double-click in download list
- BUGFIX: The torrent size displayed now only takes unfiltered files into account
- BUGFIX: Fixed compiling errors with libtorrent svn (future v0.13 with UPnP enabled)
- BUGFIX: Remember sorted column in download list on restart
- BUGFIX: Small fix in the german translation
- BUGFIX: Some fixes in slovak translation
* Tue Apr 10 2007 - Christophe Dumez <chris@qbittorrent.org> - v0.9.2
- BUGFIX: Window can now stay maximized on exit
- BUGFIX: Use PKGCONFIG again for configuring libtorrent
- BUGFIX: Allow to compile with libtorrent v0.11
- BUGFIX: Disabled main window context menu (annoying)
- I18N: Added Japanese translation
- I18N: Updated Turkish translation
* Wed Apr 04 2007 - Christophe Dumez <chris@qbittorrent.org> - v0.9.1
- BUGFIX: A lot of fixes in configure file
* Sun Apr 01 2007 - Christophe Dumez <chris@qbittorrent.org> - v0.9.0
- FEATURE: Based on libtorrent v0.12
- FEATURE: Based on Qt4.2
- FEATURE: Brand new trayicon from Qt4.2
@@ -12,6 +31,7 @@
- FEATURE: Added Autocompletion to search engine
- FEATURE: Splitted BT & GUI parts (huge code rewriting & optimization)
- FEATURE: New parameters for configure file to point to custom locations for libtorrent/libcurl
- FEATURE: Update application style according to the system (WindowsXP, MacOS, X11)
- BUGFIX: Two torrents can now have the same name although they are different (use their hash)
- BUGFIX: Fixed download from url that would fail sometimes
- BUGFIX: Save directory was reset to default when filtering files in torrent
@@ -25,6 +45,9 @@
- BUGFIX: Create Options object only when necessary (to save memory)
- BUGFIX: Let libtorrent store the torrent handles (save memory)
- BUGFIX: Set DHT Port only when DHT is enabled
- BUGFIX: Made ipfilter.dat parser less sensitive to errors
- BUGFIX: Bring main window to foreground when asking for exit confirmation
- I18N: Added Danish translation
- I18N: Better internationalization thanks to dynamic text support
- COSMETIC: Replaced OSD messages by Qt4.2 systray messages

View File

@@ -16,7 +16,7 @@ will install and execute qBittorrent hopefully without any problems.
Dependencies:
- Qt >= 4.2 (libqt-devel, libqtgui, libqtcore, libqtnetwork)
- libtorrent by Arvid Norberg (>= v0.12 REQUIRED)
- libtorrent by Arvid Norberg (>= v0.11 REQUIRED, >= 0.12 ADVISED)
-> http://libtorrent.sf.net
Be carefull: another library (the one used by rtorrent) use the same name.
These are TWO different libraries and qBittorrent will only work with the one provided

4
TODO
View File

@@ -36,7 +36,3 @@
- Add IPv6 support (at least start working on it)
- UPnP support?
// In v0.9.0
- Update translations (FR, SV, NB, PL, RU, DE done)
- Bug squashing
- Wait for libtorrent v0.12 official release

243
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,7 @@
/*
-----BEGIN QCMOD-----
name: libboost
arg: with-libboost-inc=[path], Path to libboost include files
-----END QCMOD-----
*/
class qc_libboost : public ConfObj
@@ -10,31 +11,46 @@ public:
QString name() const { return "libboost"; }
QString shortname() const { return "libboost"; }
bool exec(){
QString s;
QStringList sl;
sl += "/usr/include";
sl += "/usr/local/include";
sl += "/sw/include";
if(!conf->findHeader("boost/format.hpp", sl, &s)) {
qWarning("libboost includes not found!");
return false;
}
conf->addIncludePath(s);
if(!conf->findHeader("boost/date_time/posix_time/posix_time.hpp", sl, &s)) {
qWarning("libboost-date-time includes not found!");
return false;
}
conf->addIncludePath(s);
if(!conf->findHeader("boost/filesystem/path.hpp", sl, &s)) {
qWarning("libboost-filesystem includes not found!");
return false;
}
if(!conf->findHeader("boost/thread.hpp", sl, &s)) {
qWarning("libboost-thread includes not found!");
return false;
}
conf->addIncludePath(s);
return true;
QString s;
s = conf->getenv("QC_WITH_LIBBOOST_INC");
if(!s.isEmpty()) {
if(!conf->checkHeader(s, "boost/format.hpp")) {
return false;
}
if(!conf->checkHeader(s, "boost/date_time/posix_time/posix_time.hpp")) {
return false;
}
if(!conf->checkHeader(s, "boost/filesystem/path.hpp")) {
return false;
}
if(!conf->checkHeader(s, "boost/thread.hpp")) {
return false;
}
}else{
QStringList sl;
sl << "/usr/include";
sl << "/usr/local/include";
bool found = false;
foreach(s, sl){
if(conf->checkHeader(s, "boost/format.hpp")){
found = true;
break;
}
}
if(!found) {
return false;
}
if(!conf->checkHeader(s, "boost/date_time/posix_time/posix_time.hpp")) {
return false;
}
if(!conf->checkHeader(s, "boost/filesystem/path.hpp")) {
return false;
}
if(!conf->checkHeader(s, "boost/thread.hpp")) {
return false;
}
}
conf->addIncludePath(s);
return true;
}
};

View File

@@ -12,43 +12,50 @@ public:
QString name() const { return "libcurl"; }
QString shortname() const { return "libcurl"; }
bool exec(){
QString s;
s = conf->getenv("QC_WITH_LIBCURL_INC");
if(!s.isEmpty()) {
if(!conf->checkHeader(s, "curl/curl.h")) {
qWarning("libcurl includes not found!");
return false;
QString s;
s = conf->getenv("QC_WITH_LIBCURL_INC");
if(!s.isEmpty()) {
if(!conf->checkHeader(s, "curl/curl.h")) {
return false;
}
conf->addIncludePath(s);
}else{
QStringList sl;
sl += "/usr/include";
sl += "/usr/local/include";
if(!conf->findHeader("curl/curl.h", sl, &s)) {
qWarning("libcurl includes not found!");
return false;
}
conf->addIncludePath(s);
}
}else{
QStringList sl;
sl << "/usr/include";
sl << "/usr/local/include";
bool found = false;
foreach(s, sl){
if(conf->checkHeader(s, "curl/curl.h")){
found = true;
break;
}
}
if(!found) {
return false;
}
}
conf->addIncludePath(s);
s = conf->getenv("QC_WITH_LIBCURL_LIB");
if(!s.isEmpty()) {
if(!conf->checkLibrary(s, "curl")) {
qWarning("libcurl library not found!");
return false;
}
conf->addLib(QString("-L") + s);
}else{
if(!conf->findLibrary("curl", &s)) {
qWarning("libcurl library not found!");
return false;
}
if (!s.isEmpty())
conf->addLib(QString("-L") + s);
}
conf->addLib("-lcurl");
return true;
s = conf->getenv("QC_WITH_LIBCURL_LIB");
if(!s.isEmpty()) {
if(!conf->checkLibrary(s, "curl")) {
return false;
}
conf->addLib(QString("-L") + s);
}else{
QStringList sl;
sl << "/usr/lib/";
sl << "/usr/local/lib/";
bool found = false;
foreach(s, sl){
if(conf->checkLibrary(s, "curl")){
found = true;
break;
}
}
if(!found) return false;
conf->addLib(QString("-L") + s);
}
conf->addLib("-lcurl");
return true;
}
};

View File

@@ -9,46 +9,66 @@ class qc_libtorrent : public ConfObj
{
public:
qc_libtorrent(Conf *c) : ConfObj(c) {}
QString name() const { return "libtorrent >= 0.12"; }
QString name() const { return "libtorrent >= 0.11 (>= 0.12 ADVISED)"; }
QString shortname() const { return "libtorrent"; }
bool exec(){
QString s;
s = conf->getenv("QC_WITH_LIBTORRENT_INC");
if(!s.isEmpty()) {
if(!conf->checkHeader(s, "libtorrent/extensions/ut_pex.hpp")) {
qWarning("libtorrent v0.12 includes not found!\nYou can download it at http://www.libtorrent.net");
return false;
QString s;
s = conf->getenv("QC_WITH_LIBTORRENT_INC");
if(!s.isEmpty()) {
if(!conf->checkHeader(s, "libtorrent/kademlia/node.hpp")){
return false;
}
if(!conf->checkHeader(s, "libtorrent/extensions/ut_pex.hpp")) {
qWarning("Libtorrent >= v0.12 was not detected, PeX will be disabled.");
conf->addDefine("NO_PEX");
}
conf->addIncludePath(s);
}else{
QStringList sl;
sl << "/usr/include/";
sl << "/usr/local/include";
if(!conf->findHeader("libtorrent/extensions/ut_pex.hpp", sl, &s)) {
qWarning("libtorrent v0.12 includes not found!\nYou can download it at http://www.libtorrent.net");
return false;
}
conf->addIncludePath(s);
}
if(conf->checkHeader(s, "libtorrent/lsd.hpp")){
conf->addDefine("V_0_13");
}
}else{
QStringList sl;
sl << "/usr/include";
sl << "/usr/local/include";
bool found = false;
foreach(s, sl){
if(conf->checkHeader(s, "libtorrent/kademlia/node.hpp")){
found = true;
break;
}
}
if(!found) return false;
if(!conf->checkHeader(s, "libtorrent/extensions/ut_pex.hpp")){
qWarning("Libtorrent >= v0.12 was not detected, PeX will be disabled.");
conf->addDefine("NO_PEX");
}
if(conf->checkHeader(s, "libtorrent/lsd.hpp")){
conf->addDefine("V_0_13");
}
}
conf->addIncludePath(s);
conf->addIncludePath(s+QDir::separator()+"libtorrent");
s = conf->getenv("QC_WITH_LIBTORRENT_LIB");
if(!s.isEmpty()) {
s = conf->getenv("QC_WITH_LIBTORRENT_LIB");
if(!s.isEmpty()) {
if(!conf->checkLibrary(s, "torrent")) {
qWarning("libtorrent library not found!");
return false;
}
}
conf->addLib(QString("-L") + s);
}else{
if(!conf->findLibrary("torrent", &s)) {
qWarning("libtorrent library not found!");
return false;
}
if (!s.isEmpty())
conf->addLib(QString("-L") + s);
}
conf->addLib("-ltorrent");
return true;
}else{
QStringList sl;
sl << "/usr/lib/";
sl << "/usr/local/lib/";
bool found = false;
foreach(s, sl){
if(conf->checkLibrary(s, "torrent")){
found = true;
break;
}
}
if(!found) return false;
conf->addLib(QString("-L") + s);
}
//conf->addLib("-ltorrent");
return true;
}
};

File diff suppressed because it is too large Load Diff

View File

@@ -23,11 +23,8 @@
#define GUI_H
#include <QMainWindow>
#include <QHash>
#include <QProcess>
#include <QTcpServer>
#include <QTcpSocket>
#include <QCloseEvent>
#include <QSystemTrayIcon>
#include <libtorrent/entry.hpp>
@@ -55,6 +52,8 @@ class DLListDelegate;
class SearchListDelegate;
class downloadThread;
class downloadFromURL;
class QTcpSocket;
class QCloseEvent;
using namespace libtorrent;
namespace fs = boost::filesystem;
@@ -82,6 +81,7 @@ class GUI : public QMainWindow, private Ui::MainWindow{
SearchListDelegate *SearchDelegate;
unsigned int nbTorrents;
QLabel *connecStatusLblIcon;
bool force_exit;
// Preview
previewSelect *previewSelection;
QProcess *previewProcess;
@@ -117,7 +117,7 @@ class GUI : public QMainWindow, private Ui::MainWindow{
void loadCheckedSearchEngines();
bool loadColWidthDLList();
bool loadColWidthSearchList();
void sortDownloadList(int index);
void sortDownloadList(int index, Qt::SortOrder startSortOrder=Qt::AscendingOrder, bool fromLoadColWidth=false);
void sortDownloadListFloat(int index, Qt::SortOrder sortOrder);
void sortDownloadListString(int index, Qt::SortOrder sortOrder);
void sortSearchList(int index);
@@ -136,6 +136,7 @@ class GUI : public QMainWindow, private Ui::MainWindow{
void readSettings();
void forceExit();
// Torrent actions
size_type torrentEffectiveSize(QString hash) const;
void showProperties(const QModelIndex &index);
void propertiesSelection();
void pauseSelection();
@@ -183,6 +184,7 @@ class GUI : public QMainWindow, private Ui::MainWindow{
void portListeningFailure();
void trackerError(const QString& hash, const QString& time, const QString& msg);
void trackerAuthenticationRequired(torrent_handle& h);
void updateFileSize(QString hash);
protected:
void closeEvent(QCloseEvent *);
@@ -193,7 +195,7 @@ class GUI : public QMainWindow, private Ui::MainWindow{
GUI(QWidget *parent=0, QStringList torrentCmdLine=QStringList());
~GUI();
// Methods
int getRowFromHash(const QString& name) const;
int getRowFromHash(const QString& hash) const;
float getNovaVersion(const QString& novaPath) const;
QByteArray getNovaChangelog(const QString& novaPath) const;
void updateNova() const;

BIN
src/Icons/flags/denmark.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B

BIN
src/Icons/flags/japan.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 324 B

View File

@@ -1,6 +1,6 @@
[Desktop Entry]
Categories=Qt;Application;Network;P2P
Comment=V0.9.0
Comment=V0.9.2
Encoding=UTF-8
Exec=qbittorrent
GenericName=Bittorrent client

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 49 KiB

View File

@@ -782,6 +782,9 @@
<property name="enabled" >
<bool>true</bool>
</property>
<property name="contextMenuPolicy" >
<enum>Qt::NoContextMenu</enum>
</property>
<property name="movable" >
<bool>false</bool>
</property>

View File

@@ -45,17 +45,19 @@ class about : public QDialog, private Ui::AboutDlg{
te_translation->append(QString::fromUtf8(
"<i>- <u>Bulgarian:</u> Tsvetan & Boiko Bankov (emerge_life@users.sourceforge.net)<br>\
- <u>Catalan:</u> Gekko Dam Beer (gekko04@users.sourceforge.net)<br>\
- <u>Chinese (Simplified):</u> Chen Wuyang (wuyang@gmail.com)<br>\
- <u>Chinese (Simplified):</u> Guo Yue (guoyue0418@hotmail.com)<br>\
- <u>Chinese (Traditional):</u> Jeff Chen (jeff.cn.chen@gmail.com)<br>\
- <u>Danish:</u> Mathias Nielsen (comoneo@gmail.com)<br>\
- <u>Dutch:</u> Luke Niesink (luke@lukeniesink.net)<br>\
- <u>Finnish:</u> Niklas Laxström (nikerabbit@users.sourceforge.net)<br>\
- <u>German:</u> Niels Hoffmann (zentralmaschine@users.sourceforge.net)<br>\
- <u>Greek:</u> Tsvetan Bankov (emerge_life@users.sourceforge.net)<br>\
- <u>Italian:</u> Ferraro Luciano (luciano.ferraro@gmail.com)<br>\
- <u>Japanese:</u> Nardog (nardog@e2umail.com)<br>\
- <u>Korean:</u> Jin Woo Sin (jin828sin@users.sourceforge.net)<br>\
- <u>Norwegian:</u> Lars-Erik Labori (hamil@users.sourceforge.net)<br>\
- <u>Polish:</u> Adam Babol (a-b@users.sourceforge.net)<br>\
- <u>Portuguese:</u> Bruno Nunes (brunopatriarca@users.sourceforge.net)<br>\
- <u>Portuguese:</u> Nick Marinho (nickmarinho@gmail.com)<br>\
- <u>Romanian:</u> Obada Denis (obadadenis@users.sourceforge.net)<br>\
- <u>Russian:</u> Nick Khazov (m2k3d0n at users.sourceforge.net)<br>\
- <u>Slovak:</u> helix84<br>\

File diff suppressed because it is too large Load Diff

View File

@@ -21,9 +21,6 @@
#ifndef __BITTORRENT_H__
#define __BITTORRENT_H__
#include <QHash>
#include <QString>
#include <QStringList>
#include <QTimer>
#include <libtorrent/entry.hpp>
@@ -33,9 +30,15 @@
#include <libtorrent/session_settings.hpp>
#include <libtorrent/identify_client.hpp>
#include <libtorrent/alert_types.hpp>
#include <libtorrent/ip_filter.hpp>
#ifndef NO_PEX
#include <libtorrent/extensions/metadata_transfer.hpp>
#include <libtorrent/extensions/ut_pex.hpp>
#include <libtorrent/ip_filter.hpp>
#endif
#ifdef NO_PEX
#include <QHash>
#endif
#include <boost/format.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
@@ -60,6 +63,9 @@ class bittorrent : public QObject{
downloadThread *downloader;
QStringList supported_preview_extensions;
QString defaultSavePath;
#ifdef NO_PEX
QHash<QString, torrent_handle> torrent_list;
#endif
protected:
QString getSavePath(const QString& hash);
@@ -69,7 +75,12 @@ class bittorrent : public QObject{
bittorrent();
~bittorrent();
torrent_handle getTorrentHandle(const QString& hash) const;
#ifndef NO_PEX
std::vector<torrent_handle> getTorrentHandles() const;
#endif
#ifdef NO_PEX
QList<torrent_handle> getTorrentHandles() const;
#endif
bool isPaused(const QString& hash) const;
bool hasFilteredFiles(const QString& fileHash) const;
bool isFilePreviewPossible(const QString& fileHash) const;
@@ -95,7 +106,9 @@ class bittorrent : public QObject{
void saveFastResumeData();
void enableDirectoryScanning(const QString& scan_dir);
void disableDirectoryScanning();
#ifndef NO_PEX
void enablePeerExchange();
#endif
void enableIPFilter(ip_filter filter);
void disableIPFilter();
void reloadTorrent(const torrent_handle &h, bool compact_mode = true);
@@ -108,6 +121,9 @@ class bittorrent : public QObject{
void setGlobalRatio(float ratio);
void setDHTPort(int dht_port);
void setSessionSettings(session_settings sessionSettings);
#ifdef V_0_13
void setProxySettings(proxy_settings proxySettings);
#endif
void setDefaultSavePath(const QString& savepath);
protected slots:
@@ -131,6 +147,7 @@ class bittorrent : public QObject{
void scanDirFoundTorrents(const QStringList& pathList);
void newDownloadedTorrent(const QString& path, const QString& url);
void aboutToDownloadFromUrl(const QString& url);
void updateFileSize(QString hash);
};
#endif

View File

@@ -32,7 +32,10 @@
#include <libtorrent/file.hpp>
#include <libtorrent/storage.hpp>
#include <libtorrent/hasher.hpp>
#ifndef NO_PEX
#include <libtorrent/file_pool.hpp>
#endif
#include "createtorrent_imp.h"
@@ -105,9 +108,18 @@ void createtorrent::on_createButton_clicked(){
add_files(t, full_path.branch_path(), full_path.leaf());
t.set_piece_size(piece_size);
file_pool fp;
#ifndef NO_PEX
file_pool fp;
#ifndef V_0_13
storage st(t, full_path.branch_path(), fp);
#endif
#ifdef V_0_13
boost::scoped_ptr<storage_interface> st(default_storage_constructor(t, full_path.branch_path(), fp));
#endif
#endif
#ifdef NO_PEX
storage st(t, full_path.branch_path());
#endif
QStringList trackers = txt_announce->toPlainText().split('\n');
for(int i=0; i<trackers.size(); ++i){
t.add_tracker((const char*)trackers.at(i).toUtf8());
@@ -118,7 +130,12 @@ void createtorrent::on_createButton_clicked(){
std::vector<char> buf(piece_size);
for (int i = 0; i < num; ++i)
{
#ifndef V_0_13
st.read(&buf[0], i, 0, t.piece_size(i));
#endif
#ifdef V_0_13
st->read(&buf[0], i, 0, t.piece_size(i));
#endif
hasher h(&buf[0], t.piece_size(i));
t.set_hash(i, h.final());
}

View File

@@ -2,13 +2,13 @@
<qresource>
<file>Icons/encrypted.png</file>
<file>Icons/locale.png</file>
<file>Icons/newmsg.png</file>
<file>Icons/style.png</file>
<file>Icons/wizard.png</file>
<file>Icons/button_cancel.png</file>
<file>Icons/button_ok.png</file>
<file>Icons/smile.png</file>
<file>Icons/stare.png</file>
<file>Icons/newmsg.png</file>
<file>Icons/qbittorrent22.png</file>
<file>Icons/proxy.png</file>
<file>Icons/log.png</file>
@@ -29,19 +29,20 @@
<file>Icons/flags/south_korea.png</file>
<file>Icons/flags/slovakia.png</file>
<file>Icons/flags/spain.png</file>
<file>Icons/flags/finland.png</file>
<file>Icons/flags/poland.png</file>
<file>Icons/flags/spain_catalunya.png</file>
<file>Icons/flags/china_hong_kong.png</file>
<file>Icons/flags/spain_catalunya.png</file>
<file>Icons/flags/norway.png</file>
<file>Icons/flags/italy.png</file>
<file>Icons/flags/china.png</file>
<file>Icons/flags/norway.png</file>
<file>Icons/flags/denmark.png</file>
<file>Icons/flags/turkey.png</file>
<file>Icons/flags/sweden.png</file>
<file>Icons/flags/romania.png</file>
<file>Icons/flags/bulgaria.png</file>
<file>Icons/flags/greece.png</file>
<file>Icons/flags/finland.png</file>
<file>Icons/skin/delete_perm.png</file>
<file>Icons/flags/japan.png</file>
<file>Icons/skin/properties.png</file>
<file>Icons/skin/play_all.png</file>
<file>Icons/skin/remove.png</file>
@@ -51,9 +52,9 @@
<file>Icons/skin/delete.png</file>
<file>Icons/skin/connected.png</file>
<file>Icons/skin/url.png</file>
<file>Icons/skin/play.png</file>
<file>Icons/skin/pause_all.png</file>
<file>Icons/skin/downloading.png</file>
<file>Icons/skin/play.png</file>
<file>Icons/skin/search.png</file>
<file>Icons/skin/exit.png</file>
<file>Icons/skin/pause.png</file>
@@ -61,6 +62,7 @@
<file>Icons/skin/seeding.png</file>
<file>Icons/skin/paused.png</file>
<file>Icons/skin/preview.png</file>
<file>Icons/skin/delete_perm.png</file>
<file>Icons/skin/connecting.png</file>
<file>Icons/skin/add.png</file>
<file>Icons/skin/stalled.png</file>

View File

@@ -6,6 +6,7 @@
<file>lang/qbittorrent_uk.qm</file>
<file>lang/qbittorrent_ro.qm</file>
<file>lang/qbittorrent_ru.qm</file>
<file>lang/qbittorrent_nb.qm</file>
<file>lang/qbittorrent_el.qm</file>
<file>lang/qbittorrent_en.qm</file>
<file>lang/qbittorrent_fr.qm</file>
@@ -16,11 +17,12 @@
<file>lang/qbittorrent_pt.qm</file>
<file>lang/qbittorrent_ca.qm</file>
<file>lang/qbittorrent_tr.qm</file>
<file>lang/qbittorrent_sv.qm</file>
<file>lang/qbittorrent_bg.qm</file>
<file>lang/qbittorrent_de.qm</file>
<file>lang/qbittorrent_zh_HK.qm</file>
<file>lang/qbittorrent_nb.qm</file>
<file>lang/qbittorrent_sv.qm</file>
<file>lang/qbittorrent_fi.qm</file>
<file>lang/qbittorrent_zh_HK.qm</file>
<file>lang/qbittorrent_da.qm</file>
<file>lang/qbittorrent_ja.qm</file>
</qresource>
</RCC>

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
src/lang/qbittorrent_da.qm Normal file

Binary file not shown.

1740
src/lang/qbittorrent_da.ts Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More