Compare commits
	
		
			72 Commits
		
	
	
		
			release-2.
			...
			release-2.
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 6c220c715b | ||
|   | 754eb2788f | ||
|   | 8dcb9f17bc | ||
|   | 38121920a1 | ||
|   | e815f934e1 | ||
|   | 4a305222be | ||
|   | dcfed67173 | ||
|   | db43606620 | ||
|   | 3b16a89c36 | ||
|   | 4c03e708e0 | ||
|   | 3e0fc5234f | ||
|   | 5ba7e643b9 | ||
|   | c53e265b70 | ||
|   | 2b5f12e014 | ||
|   | ee518973ea | ||
|   | aa08552686 | ||
|   | fa43393b65 | ||
|   | 48dcfb56ad | ||
|   | 511fa5d988 | ||
|   | 5694c8aa8b | ||
|   | e3098c5191 | ||
|   | dbacb1961c | ||
|   | 1092064115 | ||
|   | 7988f15da7 | ||
|   | 689df74d7e | ||
|   | c59dde4f58 | ||
|   | 4bc36b4d28 | ||
|   | 430c7d2deb | ||
|   | d72c79b259 | ||
|   | efbf470585 | ||
|   | 4e20723ae6 | ||
|   | f3268bf49e | ||
|   | 5aba9179c4 | ||
|   | 450814ae23 | ||
|   | ba22fa8331 | ||
|   | 5ce02cb612 | ||
|   | 1013f39a42 | ||
|   | cd5c4bf464 | ||
|   | 84bfc54b03 | ||
|   | 5b3b5eb2ef | ||
|   | 990a863d41 | ||
|   | 7f27d10735 | ||
|   | 1377a75a53 | ||
|   | bcd33fc861 | ||
|   | 46d8fa1656 | ||
|   | 28cf69b84d | ||
|   | 89389df74d | ||
|   | 77c29f48cb | ||
|   | c5d92f3d69 | ||
|   | 54487c8247 | ||
|   | be64008870 | ||
|   | 8113b150dd | ||
|   | 4a33367cb0 | ||
|   | 0af5d82114 | ||
|   | 10c4fd330a | ||
|   | 9a30d5a295 | ||
|   | 724b47d999 | ||
|   | 2c0f7c33a2 | ||
|   | ce33e266fe | ||
|   | 2f291daefa | ||
|   | 722f2aeb5d | ||
|   | d5b9598b5b | ||
|   | cc7d74b67c | ||
|   | e853b0b736 | ||
|   | 5e395b24a9 | ||
|   | 9c3789f83f | ||
|   | 758595dc8c | ||
|   | 01f9e989ef | ||
|   | eb9f0cb559 | ||
|   | 2592948182 | ||
|   | 6f6ab1c439 | ||
|   | b10e606dda | 
							
								
								
									
										11
									
								
								AUTHORS
									
									
									
									
									
								
							
							
						
						| @@ -3,19 +3,12 @@ Author: | ||||
|  | ||||
| Contributors: | ||||
| * Stefanos Antaris <santaris@csd.auth.gr> | ||||
| * Mohammad Dib <mdib@qbittorrent.org> | ||||
| * Mirco Chinelli <infinity89@fastwebmail.it> | ||||
| * Ishan Arora <ishan@qbittorrent.org> | ||||
| * Arnaud Demaizière <arnaud@qbittorrent.org> | ||||
| * Grigis Gaëtan <cipher16@gmail.com> | ||||
| * Christian Kandeler <zambesi@users.sourceforge.net> | ||||
| * Silvan Scherrer <silvan.scherrer@aroa.ch> | ||||
|  | ||||
| Code from other projects: | ||||
| * files src/qtsingleapp/* src/lineedit/* | ||||
|   copyright: Nokia Corporation | ||||
|   license: LGPL | ||||
|  | ||||
| * files src/ico.cpp src/ico.h | ||||
|   copyright: Malte Starostik <malte@kde.org> | ||||
|   license: LGPL | ||||
| @@ -67,13 +60,11 @@ Images Authors: | ||||
| Translations authors: | ||||
| * files: src/lang/*.ts | ||||
|   copyright: | ||||
|   - Arabic: SDERAWI (abz8868@msn.com) and sn51234 (nesseyan@gmail.com) | ||||
|   - Brazilian: Nick Marinho (nickmarinho@gmail.com) | ||||
|   - Bulgarian: Tsvetan & Boyko Bankoff (emerge_life@users.sourceforge.net) | ||||
|   - Catalan: Francisco Luque Contreras (frannoe@ya.com) | ||||
|   - Chinese (Simplified): Guo Yue (yue.guo0418@gmail.com) | ||||
|   - Chinese (Traditional): Yi-Shun Wang (dnextstep@gmail.com) | ||||
|   - Croatian: Oliver Mucafir (oliver.untwist@gmail.com) | ||||
|   - Czech: Jirka Vilim (web@tets.cz) | ||||
|   - Danish: Mathias Nielsen (comoneo@gmail.com) | ||||
|   - Dutch: Joost Schipper (heavyjoost@users.sourceforge.net) | ||||
| @@ -83,7 +74,7 @@ Translations authors: | ||||
|   - German: Niels Hoffmann (zentralmaschine@users.sourceforge.net) | ||||
|   - Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net) and Stephanos Antaris (santaris@csd.auth.gr) | ||||
|   - Hungarian: Majoros Péter (majoros.j.p@t-online.hu) | ||||
|   - Italian: Matteo Sechi (bu17714@gmail.com) | ||||
|   - Italian: Mirko Ferrari (mirkoferrari@gmail.com) and Ferraro Luciano (luciano.ferraro@gmail.com) | ||||
|   - Japanese: Nardog (alphisation@gmail.com) | ||||
|   - Korean: Jin Woo Sin (jin828sin@users.sourceforge.net) | ||||
|   - Norwegian: Lars-Erik Labori (hamil@users.sourceforge.net) | ||||
|   | ||||
							
								
								
									
										165
									
								
								Changelog
									
									
									
									
									
								
							
							
						
						| @@ -1,128 +1,51 @@ | ||||
| * Wed Nov 10 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.10 | ||||
|     - BUGFIX: Fix possible crash when selecting a RSS item (really closes #575624) | ||||
|     - BUGFIX: Improved IPv6 support (IP filter and Peer list) | ||||
|     - BUGFIX: Make IP filter more tolerant towards strangely formatted IPs | ||||
|     - BUGFIX: More reliable folder scanning | ||||
|     - BUGFIX: Do not create the torrent root folder at final destination if | ||||
|     torrent is in the temp dir (closes #673271) | ||||
|     - BUGFIX: Fix compilation with libnotify v0.7.0 (closes #671769) | ||||
|     - BUGFIX: Use a pointing cursor over status bar buttons | ||||
| * Wed Apr 07 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.2.5 | ||||
|     - BUGFIX: Fix crash when adding a new torrent label | ||||
|     - BUGFIX: Fix HTTPS protocol support in torrent/rss downloader | ||||
|     - BUGFIX: Fix default width of file name column in torrent content | ||||
|     - BUGFIX: Fix torrent addition dialog buttons height | ||||
|     - BUGFIX: Fix deprecation warnings with libtorrent v0.15 | ||||
|     - BUGFIX: Fix "Download from URL" title size in Web UI | ||||
|     - BUGFIX: Fix transparency of speed limits icons | ||||
|     - BUGFIX: Dropped dependency on Qt gif library | ||||
|     - BUGFIX: Improved libboost detection by configure file | ||||
|     - BUGFIX: Bring back compatibility with boost v1.34 | ||||
|     - COSMETIC: Added icons to menu actions in Web UI | ||||
|  | ||||
| * Sun Oct 31 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.9 | ||||
|     - BUGFIX: Fix crash when pressing enter in save path field in torrent addition dialog | ||||
|     - BUGFIX: Fix crash when deleting a torrent with no metadata (closes #667528) | ||||
|     - BUGFIX: Fix possible crash on clicking a RSS article (closes #575624) | ||||
|     - BUGFIX: Correctly update total number of torrents when a torrent is automatically removed (closes #668726) | ||||
|     - BUGFIX: Correctly display the hash of torrents with no metadata | ||||
|     - BUGFIX: Elide status bar text if it is too wide | ||||
|     - BUGFIX: Make sure the splash screen is displayed for 2 seconds | ||||
|     - BUGFIX: Make listening on a particular interface more reliable | ||||
|     - BUGFIX: Fix torrent size update in torrent addition dialog | ||||
|     - BUGFIX: Fix possible crash on qBittorrent shutdown | ||||
|     - BUGFIX: Fix and improve file priorities editing (closes #669084) | ||||
|     - I18N: Updated Arabic, Italian and Croatian translations | ||||
| * Tue Apr 06 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.2.4 | ||||
|     - BUGFIX: Fix possible crash when adding a torrent | ||||
|     - BUGFIX: Fix failure to remember some torrents on startup | ||||
|     - BUGFIX: Fix torrent addition window layout (torrent content not expanding) | ||||
|     - BUGFIX: Fix about dialog in Web UI | ||||
|     - BUGFIX: Correctly clear trackers error messages once they work | ||||
|     - BUGFIX: Display correct share ratio for paused torrents | ||||
|     - COSMETIC: Improved alternative speed limits icons | ||||
|  | ||||
| * Sun Oct 24 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.8 | ||||
|     - BUGFIX: Fix possible crash on manual peer ban | ||||
|     - BUGFIX: Improved hostname resolution code | ||||
|     - BUGFIX: Several search plugins fixed | ||||
|     - BUGFIX: Auto-disable the shutdown feature | ||||
|     - BUGFIX: Remember the current property tab on startup | ||||
|     - BUGFIX: Fix status list widget height issue on style change | ||||
|     - BUGFIX: Fix rounding issue in torrent progress display | ||||
|     - BUGFIX: Fix issue when altering files priorities of a seeding torrent | ||||
|     - BUGFIX: Better fix for save path editing issues in torrent addition dialog | ||||
|     - BUGFIX: Peers can now be sorted by country | ||||
| * Sun Apr 04 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.2.3 | ||||
|     - BUGFIX: Fix possible crash when deleting a torrent just after pausing it | ||||
|     - BUGFIX: Enable Apply button when alternative rate limits are changed | ||||
|     - BUGFIX: Source compatibility with Windows (Thanks Ishan Arora) | ||||
|     - BUGFIX: Source compatibility with eCS (OS/2) (Thanks Silvan Scherrer) | ||||
|     - BUGFIX: Cleaner binutils gold linker support | ||||
|     - BUGFIX: Clean fix for progress display with cleanlooks style | ||||
|  | ||||
| * Tue Oct 19 2010  - Christophe Dumez <chris@qbittorrent.org> - v2.4.7 | ||||
|     - BUGFIX: Display the priority column when the queueing system gets enabled | ||||
|     - BUGFIX: Fix encoding problem in file renaming | ||||
|     - BUGFIX: Delete uneeded files on torrent "soft" deletion | ||||
|     - BUGFIX: Fix issues when marking a file as 'not downloaded' causes the torrent to complete | ||||
|     - BUGFIX: Improved "Set Location" and "Change save path" dialogs | ||||
|     - BUGFIX: Fix display of queued seeding torrents | ||||
| * Mon Mar 22 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.2.2 | ||||
|     - FEATURE: DHT port can be set from Web UI | ||||
|     - BUGFIX: Fix possible crash with folder scanning | ||||
|     - BUGFIX: Fix Mac compilation | ||||
|     - BUGFIX: Save fast resume data every 3 minutes (for robustness) | ||||
|     - I18N: Updated Polish translation (thanks Szymon Świerkosz) | ||||
|  | ||||
| * Sun Oct 17 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.6 | ||||
|     - BUGFIX: Fix "torrent seeding after creation" feature | ||||
|     - BUGFIX: The properties panel data would sometimes not match the selected torrent | ||||
|     - BUGFIX: Fix detection of files at final destination when temp dir is used | ||||
|     - BUGFIX: Fix moving of a torrent to an unexisting directory | ||||
|  | ||||
| * Tue Oct 12 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.5 | ||||
|     - BUGFIX: Remember torrent completion date correctly | ||||
|     - BUGFIX: Fix feature to keep incomplete torrents in a separate folder | ||||
|     - BUGFIX: Fix display of URL seeds in the UI | ||||
|     - BUGFIX: Improved peer hostname resolution with caching | ||||
|     - BUGFIX: Piece availability/downloaded widgets performance improvement | ||||
|  | ||||
| * Fri Oct 1 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.4 | ||||
|     - BUGFIX: Clean program exit on system shutdown/logout | ||||
|     - BUGFIX: Fix possible search engine plugin update | ||||
|  | ||||
| * Tue Sep 28 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.3 | ||||
|     - BUGFIX: Fix encoding issue in command line parameters processing | ||||
|     - BUGFIX: Fix possible crash when changing the save path in addition dialog | ||||
|     - BUGFIX: Fix wrong mapping to source model | ||||
|  | ||||
| * Sun Sep 26 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.2 | ||||
|     - BUGFIX: Fix display of torrent content in addition dialog | ||||
|     - BUGFIX: Really fix manual editing of save path in torrent addition dialog | ||||
|  | ||||
| * Sun Sep 26 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.1 | ||||
|     - I18N: Updated Arabic translation | ||||
|     - I18N: Fixes to German translation | ||||
|     - BUGFIX: Save path can now be edited in torrent addition dialog | ||||
|     - BUGFIX: Fix save path encoding on non-utf8 systems | ||||
|     - BUGFIX: Fix saving to drive root on Windows | ||||
|     - BUGFIX: OGV can now be previewed | ||||
|     - BUGFIX: Maximum download limit is now 10MB/s | ||||
|     - BUGFIX: Fix 'download in scan dir' persistence | ||||
|     - BUGFIX: Add .torrent extension only when missing (torrent creator) | ||||
|     - BUGFIX: Fix possible issue with temporary download path persistence | ||||
|     - BUGFIX: Added support for | (OR) operator in RSS feed downloader | ||||
|     - BUGFIX: Fix Web UI for spanish users | ||||
|     - BUGFIX: Fix locale switching from Web UI | ||||
|     - BUGFIX: Use AND operator for torrentdownloads.net searches | ||||
|     - BUGFIX: Limit torrent addition dialog width to fit the screen | ||||
|     - COSMETIC: Fix progress bars style on Windows | ||||
|  | ||||
| * Tue Aug 24 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.0 | ||||
|     - FEATURE: Added actions to "Move to top/bottom" of priority queue | ||||
|     - FEATURE: Auto-Shutdown on downloads completion | ||||
|     - FEATURE: Email notification on download completion | ||||
|     - FEATURE: Added button to password-lock the UI | ||||
|     - FEATURE: Added label-level Pause/Resume/Delete actions | ||||
|     - FEATURE: Torrents can now be filtered by name | ||||
|     - FEATURE: Run external program on torrent completion | ||||
|     - FEATURE: Detect executable updates in order to advise the user to restart | ||||
|  | ||||
| * Tue Jul 27 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.3.0 | ||||
|     - FEATURE: Simplified torrent root folder renaming/truncating (< v2.3.0 is no longer forward compatible) | ||||
|     - FEATURE: Remember previous save paths in torrent addition dialog | ||||
|     - FEATURE: Max number of half-open connections can now be edited | ||||
|     - FEATURE: Added support for strict super seeding | ||||
|     - FEATURE: The user can force listening on a particular network interface | ||||
|     - FEATURE: Added cookie support for RSS feeds | ||||
|     - FEATURE: User can force tracker reannounce | ||||
|     - FEATURE: Added "No action" setting for double-click action | ||||
|     - FEATURE: Several torrents can be moved at once | ||||
|     - FEATURE: Added error state for torrents (error is displayed in a tooltip) | ||||
|     - FEATURE: Added filter for paused/error torrents | ||||
|     - FEATURE: Add Check/Uncheck all feature in Web UI | ||||
|     - FEATURE: Search engine can now be disabled | ||||
|     - FEATURE: Torrents can be automatically paused once they reach a given ratio | ||||
|     - FEATURE: Several files can now be disabled at once | ||||
|     - FEATURE: Added "Select All/None" buttons to files list | ||||
|     - FEATURE: Added support for BitComet links (bc://bt/...) | ||||
|     - BUGFIX: Hide seeding torrents files priorities in Web UI | ||||
|     - BUGFIX: The user can disable permanently recursive torrent download | ||||
|     - BUGFIX: Peer Exchange status is now correctly reported | ||||
|     - BUGFIX: Use an INI file instead of the registry on Windows (More reliable) | ||||
|     - BUGFIX: Removed client spoofing feature to avoid tracker blacklisting | ||||
|     - COSMETIC: Display peers country name in tooltip | ||||
|     - COSMETIC: Display number of torrents in transfers tab label | ||||
|     - COSMETIC: Simplified program preferences | ||||
|     - COSMETIC: Fix naming of actions opening new dialogs (use Name...) | ||||
| * Sat Mar 20 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.2.1 | ||||
|     - FEATURE: Display pieces that are being downloaded | ||||
|     - FEATURE: Added back folder watching in Web UI | ||||
|     - FEATURE: Added back file prioritizing in Web UI | ||||
|     - BUGFIX: Fix compilation with Qt 4.4 | ||||
|     - BUGFIX: Fix Web UI compatibility with Safari | ||||
|     - BUGFIX: Fix progress display with cleanlook style | ||||
|     - BUGFIX: Fix file filtering in complex torrents | ||||
|     - BUGFIX: Ask for user confirmation for recursive torrent download | ||||
|     - BUGFIX: Fix "add file" dialog in torrent creation tool | ||||
|     - BUGFIX: Fix "Ctrl+A" in Web UI | ||||
|  | ||||
| * Sun Mar 14 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.2.0 | ||||
|     - FEATURE: User can set alternative speed limits for fast toggling | ||||
|   | ||||
							
								
								
									
										62
									
								
								README.os2
									
									
									
									
									
								
							
							
						
						| @@ -1,62 +0,0 @@ | ||||
| qBittorrent - A BitTorrent client in Qt4 | ||||
| ------------------------------------------ | ||||
|  | ||||
| This is the eComStation (OS/2) qBittorrent part of the readme. See also README for more general information. | ||||
|  | ||||
|  | ||||
| Building qBittorrent | ||||
| ******************** | ||||
|  | ||||
|  | ||||
| Requirements | ||||
| ============ | ||||
|  | ||||
| - gcc based build env (recommended gcc v4.4.2 or greater) | ||||
|    | ||||
| - Qt4 for eCS (OS/2) dev package (see http://svn.netlabs.org/qt4 for more information) | ||||
|  | ||||
| - libtorrent-rasterbar for eCS (OS/2) port (see http://svn.netlabs.org/ports for more information) | ||||
|  | ||||
| - boost for eCS (OS/2) port (see http://svn.netlabs.org/ports for more information) | ||||
|  | ||||
|  | ||||
| How to build | ||||
| ============ | ||||
|  | ||||
| First you need to create the conf.pri file in the same dir as this readme.os2 is. | ||||
| the conf.pri file has the following content: | ||||
|  | ||||
| ##### conf.pri content beginn ##### | ||||
| PREFIX = . | ||||
| BINDIR = ./bin | ||||
| INCDIR = ./include | ||||
| LIBDIR = ./lib | ||||
| DATADIR = ./share | ||||
|  | ||||
| CONFIG += staticlib | ||||
| INCLUDEPATH += x:/trees/libtorrent/trunk/include | ||||
| LIBS += -Lx:/trees/libtorrent/trunk/src/.libs \ | ||||
|         -Lx:/trees/boost/trunk/stage/lib \ | ||||
|         -Lx:/trees/openssl \ | ||||
| 	-Lx:/extras/lib | ||||
| ##### conf.pri content end ##### | ||||
|  | ||||
| Of course all the above path references have to be adjusted to your build env. | ||||
|  | ||||
| It should now be easy to build qBittorrent: | ||||
|  | ||||
| Simply type: | ||||
| $ qmake | ||||
|  | ||||
| Followed by: | ||||
| $ make | ||||
|  | ||||
| If all works fine you should get a working qbittorrent executable. | ||||
|  | ||||
| If you have any question regarding the eCS (OS/2) port of qBittorrent you can meet me (_diver) on IRC: | ||||
| #netlabs on irc.freenode.net | ||||
|  | ||||
| ------------------------------------------ | ||||
| Silvan Scherrer <silvan.scherrer@aroa.ch> | ||||
|  | ||||
|  | ||||
							
								
								
									
										121
									
								
								configure
									
									
									
									
										vendored
									
									
								
							
							
						
						| @@ -18,24 +18,15 @@ Main options: | ||||
|   --help              This help text. | ||||
|  | ||||
| Dependency options: | ||||
|   --disable-gui                                   Disable qBittorrent | ||||
|                                                  Graphical user interface for | ||||
|                                                  headless running | ||||
|   --with-libboost-inc=[path]                      Path to libboost include | ||||
|                                                  files | ||||
|   --with-libboost-lib=[path]                      Path to libboost library | ||||
|                                                  files | ||||
|   --disable-libnotify                            Disable use of libnotify | ||||
|   --disable-geoip-database                       Disable use of geoip-database | ||||
|   --with-geoip-database-embedded                  Geoip Database will be | ||||
|                                                  embedded in qBittorrent | ||||
|                                                  executable (please follow | ||||
|                                                  instructions in | ||||
|                                                  src/geoip/README) | ||||
|   --disable-qtsingleapplication                  Disable use of libboost | ||||
|   --with-qtsingleapplication=[system|shipped]     Use the shipped | ||||
|                                                  qtsingleapplication library | ||||
|                                                  or the system one | ||||
|   --disable-gui                      Disable qBittorrent Graphical user | ||||
|                                     interface for headless running | ||||
|   --with-libboost-inc=[path]         Path to libboost include files | ||||
|   --with-libboost-lib=[path]         Path to libboost library files | ||||
|   --disable-libnotify               Disable use of libnotify | ||||
|   --disable-geoip-database          Disable use of geoip-database | ||||
|   --with-geoip-database-embedded     Geoip Database will be embedded in | ||||
|                                     qBittorrent executable (please follow | ||||
|                                     instructions in src/geoip/README) | ||||
|  | ||||
| EOT | ||||
| } | ||||
| @@ -182,16 +173,6 @@ while [ $# -gt 0 ]; do | ||||
| 			shift | ||||
| 			;; | ||||
|  | ||||
| 		--disable-qtsingleapplication) | ||||
| 			QC_DISABLE_qtsingleapplication="Y" | ||||
| 			shift | ||||
| 			;; | ||||
|  | ||||
| 		--with-qtsingleapplication=*) | ||||
| 			QC_WITH_QTSINGLEAPPLICATION=$optarg | ||||
| 			shift | ||||
| 			;; | ||||
|  | ||||
| 		--verbose) | ||||
| 			QC_VERBOSE="Y" | ||||
| 			shift | ||||
| @@ -219,8 +200,6 @@ echo QC_WITH_LIBBOOST_LIB=$QC_WITH_LIBBOOST_LIB | ||||
| echo QC_DISABLE_libnotify=$QC_DISABLE_libnotify | ||||
| echo QC_DISABLE_geoip_database=$QC_DISABLE_geoip_database | ||||
| echo QC_WITH_GEOIP_DATABASE_EMBEDDED=$QC_WITH_GEOIP_DATABASE_EMBEDDED | ||||
| echo QC_DISABLE_qtsingleapplication=$QC_DISABLE_qtsingleapplication | ||||
| echo QC_WITH_QTSINGLEAPPLICATION=$QC_WITH_QTSINGLEAPPLICATION | ||||
| echo | ||||
| fi | ||||
|  | ||||
| @@ -376,15 +355,28 @@ public: | ||||
| 	bool exec(){ | ||||
| 		QStringList incs; | ||||
| 		QString req_ver = "0.14.4"; | ||||
| 		QString adv_ver = "0.15.0"; | ||||
| 		QString version, libs, other; | ||||
| 		VersionMode mode = VersionMin; | ||||
| 		if(!conf->findPkgConfig("libtorrent-rasterbar", mode, req_ver, &version, &incs, &libs, &other)) | ||||
| 			return false; | ||||
| 		for(int n = 0; n < incs.count(); ++n) | ||||
| 			conf->addIncludePath(incs[n]); | ||||
| 		if(conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||
|   		  conf->addLib("-lcrypto"); | ||||
|                 } | ||||
| 		//if(!libs.isEmpty()) | ||||
| 		//	conf->addLib(libs); | ||||
| 		if(conf->findPkgConfig("libtorrent-rasterbar", mode, adv_ver, &version, &incs, &libs, &other)) { | ||||
|                         //printf("\nWarning: libtorrent-rasterbar v%s was detected. Some feature will be disabled because they require v%s.\n", version.toLocal8Bit().data(), adv_ver.toUtf8().data()); | ||||
| 		//else | ||||
| 			conf->addDefine("LIBTORRENT_0_15"); | ||||
| 		} | ||||
| 		// Get linking parameters | ||||
| 		//QStringList params; | ||||
| 		//QByteArray staticlibs; | ||||
| 		//params << "--static" << "--libs" << "libtorrent-rasterbar"; | ||||
| 		//conf->doCommand("pkg-config", params, &staticlibs); | ||||
| 		//conf->addLib(staticlibs.trimmed()); | ||||
| 		//libcrypto | ||||
| 		conf->addLib("-lcrypto"); | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
| @@ -413,16 +405,6 @@ public: | ||||
|       name = result.first().mid(3); | ||||
|       // Remove .so | ||||
|       name.chop(3); | ||||
|     } else { | ||||
|       // Fall back to non -mt boost lib | ||||
|       filters.clear(); | ||||
|       filters << "libboost_"+lib+"*.so"; | ||||
|       result = libDir.entryList(filters, QDir::Files); | ||||
|       if(!result.empty()) { | ||||
|         name = result.first().mid(3); | ||||
|         // Remove .so | ||||
|         name.chop(3); | ||||
|       } | ||||
|     } | ||||
|     return name; | ||||
|   } | ||||
| @@ -470,13 +452,11 @@ public: | ||||
| 		// Find library | ||||
| 		s = conf->getenv("QC_WITH_LIBBOOST_LIB"); | ||||
|     QStringList required_libs; | ||||
|     required_libs  | ||||
| #if BOOST_VERSION >= 103500 | ||||
|       required_libs << "system";  | ||||
|       << "system"  | ||||
| #endif | ||||
|     if(conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||
|       // Not required by nox | ||||
|       required_libs << "filesystem" << "thread"; | ||||
|     } | ||||
|       << "filesystem" << "thread"; | ||||
|     QStringList libDirs; | ||||
|     libDirs << "/usr/lib/" << "/usr/lib64/" << "/usr/local/lib/" << "/usr/local/lib64/"; | ||||
|     foreach(const QString& lib, required_libs) { | ||||
| @@ -550,21 +530,10 @@ public: | ||||
| 			} else { | ||||
| 				return false; | ||||
| 			} | ||||
| 			QStringList incs3; | ||||
|                         QString req_ver3 = "2.0"; | ||||
|                         QString version3, libs3, other3; | ||||
| 			if(conf->findPkgConfig("gtk+-2.0", mode, req_ver3, &version3, &incs3, &libs3, &other3)) { | ||||
|                                 for(int n = 0; n < incs3.count(); ++n) | ||||
|                                 conf->addIncludePath(incs3[n]); | ||||
|                                 if(!libs3.isEmpty()) | ||||
|                                         conf->addLib(libs3); | ||||
|                         } else { | ||||
|                                 return false; | ||||
|                         } | ||||
| 		} else { | ||||
| 			return false; | ||||
| 		} | ||||
|  | ||||
| 		 | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
| @@ -606,33 +575,6 @@ public: | ||||
| #endif | ||||
| 	} | ||||
| }; | ||||
| #line 1 "qtsingleapplication.qcm" | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: libboost | ||||
| arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| class qc_qtsingleapplication : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_qtsingleapplication(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "qtsingleapplication library"; } | ||||
| 	QString shortname() const { return "qtsingleapplication"; } | ||||
|  | ||||
| 	bool exec(){ | ||||
|         	QString s; | ||||
| 		s = conf->getenv("QC_WITH_QTSINGLEAPPLICATION"); | ||||
|                 if(s.compare("system", Qt::CaseInsensitive) == 0) { | ||||
|                   // System | ||||
|                   conf->addDefine("USE_SYSTEM_QTSINGLEAPPLICATION"); | ||||
|                   printf(" [system] "); | ||||
|                 } else { | ||||
|                   printf(" [shipped] "); | ||||
| 		} | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
|  | ||||
| EOT | ||||
| cat >$1/modules_new.cpp <<EOT | ||||
| @@ -654,9 +596,6 @@ cat >$1/modules_new.cpp <<EOT | ||||
|     o = new qc_geoip_database(conf); | ||||
|     o->required = false; | ||||
|     o->disabled = false; | ||||
|     o = new qc_qtsingleapplication(conf); | ||||
|     o->required = false; | ||||
|     o->disabled = false; | ||||
|  | ||||
| EOT | ||||
| cat >$1/conf4.h <<EOT | ||||
| @@ -1608,8 +1547,6 @@ export QC_WITH_LIBBOOST_LIB | ||||
| export QC_DISABLE_libnotify | ||||
| export QC_DISABLE_geoip_database | ||||
| export QC_WITH_GEOIP_DATABASE_EMBEDDED | ||||
| export QC_DISABLE_qtsingleapplication | ||||
| export QC_WITH_QTSINGLEAPPLICATION | ||||
| export QC_VERBOSE | ||||
| rm -rf .qconftemp | ||||
| ( | ||||
|   | ||||
| @@ -19,6 +19,4 @@ | ||||
|   </dep> | ||||
|   <dep type='geoip-database'> | ||||
|   </dep> | ||||
|   <dep type='qtsingleapplication'> | ||||
|   </dep> | ||||
| </qconf> | ||||
|   | ||||
| @@ -22,16 +22,6 @@ public: | ||||
|       name = result.first().mid(3); | ||||
|       // Remove .so | ||||
|       name.chop(3); | ||||
|     } else { | ||||
|       // Fall back to non -mt boost lib | ||||
|       filters.clear(); | ||||
|       filters << "libboost_"+lib+"*.so"; | ||||
|       result = libDir.entryList(filters, QDir::Files); | ||||
|       if(!result.empty()) { | ||||
|         name = result.first().mid(3); | ||||
|         // Remove .so | ||||
|         name.chop(3); | ||||
|       } | ||||
|     } | ||||
|     return name; | ||||
|   } | ||||
| @@ -79,13 +69,11 @@ public: | ||||
| 		// Find library | ||||
| 		s = conf->getenv("QC_WITH_LIBBOOST_LIB"); | ||||
|     QStringList required_libs; | ||||
|     required_libs  | ||||
| #if BOOST_VERSION >= 103500 | ||||
|       required_libs << "system";  | ||||
|       << "system"  | ||||
| #endif | ||||
|     if(conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||
|       // Not required by nox | ||||
|       required_libs << "filesystem" << "thread"; | ||||
|     } | ||||
|       << "filesystem" << "thread"; | ||||
|     QStringList libDirs; | ||||
|     libDirs << "/usr/lib/" << "/usr/lib64/" << "/usr/local/lib/" << "/usr/local/lib64/"; | ||||
|     foreach(const QString& lib, required_libs) { | ||||
|   | ||||
| @@ -40,21 +40,10 @@ public: | ||||
| 			} else { | ||||
| 				return false; | ||||
| 			} | ||||
| 			QStringList incs3; | ||||
|                         QString req_ver3 = "2.0"; | ||||
|                         QString version3, libs3, other3; | ||||
| 			if(conf->findPkgConfig("gtk+-2.0", mode, req_ver3, &version3, &incs3, &libs3, &other3)) { | ||||
|                                 for(int n = 0; n < incs3.count(); ++n) | ||||
|                                 conf->addIncludePath(incs3[n]); | ||||
|                                 if(!libs3.isEmpty()) | ||||
|                                         conf->addLib(libs3); | ||||
|                         } else { | ||||
|                                 return false; | ||||
|                         } | ||||
| 		} else { | ||||
| 			return false; | ||||
| 		} | ||||
|  | ||||
| 		 | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
|   | ||||
| @@ -13,15 +13,28 @@ public: | ||||
| 	bool exec(){ | ||||
| 		QStringList incs; | ||||
| 		QString req_ver = "0.14.4"; | ||||
| 		QString adv_ver = "0.15.0"; | ||||
| 		QString version, libs, other; | ||||
| 		VersionMode mode = VersionMin; | ||||
| 		if(!conf->findPkgConfig("libtorrent-rasterbar", mode, req_ver, &version, &incs, &libs, &other)) | ||||
| 			return false; | ||||
| 		for(int n = 0; n < incs.count(); ++n) | ||||
| 			conf->addIncludePath(incs[n]); | ||||
| 		if(conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||
|   		  conf->addLib("-lcrypto"); | ||||
|                 } | ||||
| 		//if(!libs.isEmpty()) | ||||
| 		//	conf->addLib(libs); | ||||
| 		if(conf->findPkgConfig("libtorrent-rasterbar", mode, adv_ver, &version, &incs, &libs, &other)) { | ||||
|                         //printf("\nWarning: libtorrent-rasterbar v%s was detected. Some feature will be disabled because they require v%s.\n", version.toLocal8Bit().data(), adv_ver.toUtf8().data()); | ||||
| 		//else | ||||
| 			conf->addDefine("LIBTORRENT_0_15"); | ||||
| 		} | ||||
| 		// Get linking parameters | ||||
| 		//QStringList params; | ||||
| 		//QByteArray staticlibs; | ||||
| 		//params << "--static" << "--libs" << "libtorrent-rasterbar"; | ||||
| 		//conf->doCommand("pkg-config", params, &staticlibs); | ||||
| 		//conf->addLib(staticlibs.trimmed()); | ||||
| 		//libcrypto | ||||
| 		conf->addLib("-lcrypto"); | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
|   | ||||
| @@ -1,26 +0,0 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: libboost | ||||
| arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| class qc_qtsingleapplication : public ConfObj | ||||
| { | ||||
| public: | ||||
|         qc_qtsingleapplication(Conf *c) : ConfObj(c) {} | ||||
|         QString name() const { return "qtsingleapplication library"; } | ||||
|         QString shortname() const { return "qtsingleapplication"; } | ||||
|  | ||||
|         bool exec(){ | ||||
|                 QString s; | ||||
|                 s = conf->getenv("QC_WITH_QTSINGLEAPPLICATION"); | ||||
|                 if(s.compare("system", Qt::CaseInsensitive) == 0) { | ||||
|                   // System | ||||
|                   conf->addDefine("USE_SYSTEM_QTSINGLEAPPLICATION"); | ||||
|                   printf(" [system] "); | ||||
|                 } else { | ||||
|                   printf(" [shipped] "); | ||||
|                 } | ||||
|                 return true; | ||||
|         } | ||||
| }; | ||||
							
								
								
									
										572
									
								
								src/GUI.cpp
									
									
									
									
									
								
							
							
						
						
							
								
								
									
										40
									
								
								src/GUI.h
									
									
									
									
									
								
							
							
						
						| @@ -37,10 +37,13 @@ | ||||
| #include "ui_mainwindow.h" | ||||
| #include "qtorrenthandle.h" | ||||
|  | ||||
| enum TabIndex{TAB_TRANSFER, TAB_SEARCH, TAB_RSS}; | ||||
|  | ||||
| class Bittorrent; | ||||
| class QTimer; | ||||
| class downloadFromURL; | ||||
| class SearchEngine; | ||||
| class QLocalServer; | ||||
| class QCloseEvent; | ||||
| class RSSImp; | ||||
| class QShortcut; | ||||
| @@ -56,9 +59,6 @@ class consoleDlg; | ||||
| class about; | ||||
| class createtorrent; | ||||
| class downloadFromURL; | ||||
| class HidableTabWidget; | ||||
| class LineEdit; | ||||
| class QFileSystemWatcher; | ||||
|  | ||||
| class GUI : public QMainWindow, private Ui::MainWindow{ | ||||
|   Q_OBJECT | ||||
| @@ -68,10 +68,8 @@ public: | ||||
|   GUI(QWidget *parent=0, QStringList torrentCmdLine=QStringList()); | ||||
|   ~GUI(); | ||||
|   // Methods | ||||
|   QWidget* getCurrentTabWidget() const; | ||||
|   int getCurrentTabIndex() const; | ||||
|   TransferListWidget* getTransferList() const { return transferList; } | ||||
|   QMenu* getTrayIconMenu(); | ||||
|   PropertiesWidget *getProperties() const { return properties; } | ||||
|  | ||||
| public slots: | ||||
|   void trackerAuthenticationRequired(QTorrentHandle& h); | ||||
| @@ -79,8 +77,6 @@ public slots: | ||||
|   void showNotificationBaloon(QString title, QString msg) const; | ||||
|   void downloadFromURLList(const QStringList& urls); | ||||
|   void updateAltSpeedsBtn(bool alternative); | ||||
|   void updateNbTorrents(unsigned int nb_downloading, unsigned int nb_seeding, unsigned int nb_active, unsigned int nb_inactive, unsigned int nb_paused); | ||||
|   void deleteBTSession(); | ||||
|  | ||||
| protected slots: | ||||
|   // GUI related slots | ||||
| @@ -92,6 +88,8 @@ protected slots: | ||||
|   void on_actionWebsite_triggered() const; | ||||
|   void on_actionBugReport_triggered() const; | ||||
|   void on_actionShow_console_triggered(); | ||||
|   void readParamsOnSocket(); | ||||
|   void acceptConnection(); | ||||
|   void balloonClicked(); | ||||
|   void writeSettings(); | ||||
|   void readSettings(); | ||||
| @@ -101,10 +99,6 @@ protected slots: | ||||
|   void handleDownloadFromUrlFailure(QString, QString) const; | ||||
|   void createSystrayDelayed(); | ||||
|   void tab_changed(int); | ||||
|   void on_actionLock_qBittorrent_triggered(); | ||||
|   void defineUILockPassword(); | ||||
|   bool unlockUI(); | ||||
|   void notifyOfUpdate(QString); | ||||
|   // Keyboard shortcuts | ||||
|   void createKeyboardShortcuts(); | ||||
|   void displayTransferTab() const; | ||||
| @@ -117,7 +111,6 @@ protected slots: | ||||
|   void on_actionOpen_triggered(); | ||||
|   void updateGUI(); | ||||
|   void loadPreferences(bool configure_session=true); | ||||
|   void processParams(const QString& params); | ||||
|   void processParams(const QStringList& params); | ||||
|   void addTorrent(QString path); | ||||
|   void addUnauthenticatedTracker(const QPair<QTorrentHandle,QString> &tracker); | ||||
| @@ -135,16 +128,14 @@ protected: | ||||
|   void showEvent(QShowEvent *); | ||||
|   bool event(QEvent * event); | ||||
|   void displayRSSTab(bool enable); | ||||
|   void displaySearchTab(bool enable); | ||||
|  | ||||
| private: | ||||
|   QFileSystemWatcher *executable_watcher; | ||||
|   // Bittorrent | ||||
|   Bittorrent *BTSession; | ||||
|   QList<QPair<QTorrentHandle,QString> > unauthenticated_trackers; // Still needed? | ||||
|   // GUI related | ||||
|   QTimer *guiUpdater; | ||||
|   HidableTabWidget *tabs; | ||||
|   QTabWidget *tabs; | ||||
|   StatusBar *status_bar; | ||||
|   QPointer<options_imp> options; | ||||
|   QPointer<consoleDlg> console; | ||||
| @@ -153,14 +144,12 @@ private: | ||||
|   QPointer<downloadFromURL> downloadFromURLDialog; | ||||
|   QPointer<QSystemTrayIcon> systrayIcon; | ||||
|   QPointer<QTimer> systrayCreator; | ||||
|   QPointer<QMenu> myTrayIconMenu; | ||||
|   QMenu *myTrayIconMenu; | ||||
|   TransferListWidget *transferList; | ||||
|   TransferListFiltersWidget *transferListFilters; | ||||
|   PropertiesWidget *properties; | ||||
|   bool displaySpeedInTitle; | ||||
|   bool force_exit; | ||||
|   bool ui_locked; | ||||
|   LineEdit *search_filter; | ||||
|   // Keyboard shortcuts | ||||
|   QShortcut *switchSearchShortcut; | ||||
|   QShortcut *switchSearchShortcut2; | ||||
| @@ -171,19 +160,12 @@ private: | ||||
|   QAction *prioSeparator2; | ||||
|   QSplitter *hSplitter; | ||||
|   QSplitter *vSplitter; | ||||
|   QMenu *lockMenu; | ||||
|   // Search | ||||
|   QPointer<SearchEngine> searchEngine; | ||||
|   SearchEngine *searchEngine; | ||||
|   // RSS | ||||
|   QPointer<RSSImp> rssWidget; | ||||
|  | ||||
| private slots: | ||||
|     void on_actionSearch_engine_triggered(); | ||||
|     void on_actionRSS_Reader_triggered(); | ||||
|     void on_actionSpeed_in_title_bar_triggered(); | ||||
|     void on_actionTop_tool_bar_triggered(); | ||||
|     void on_actionShutdown_when_downloads_complete_triggered(); | ||||
|     void on_actionDonate_money_triggered(); | ||||
|   // Misc | ||||
|   QLocalServer *localServer; | ||||
| }; | ||||
|  | ||||
| #endif | ||||
|   | ||||
| Before Width: | Height: | Size: 322 B | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/L.gif
									
									
									
									
									
								
							
							
						
						| Before Width: | Height: | Size: 66 B | 
| Before Width: | Height: | Size: 546 B | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/locale.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.3 KiB | 
| Before Width: | Height: | Size: 2.3 KiB | 
| Before Width: | Height: | Size: 1.9 KiB | 
| Before Width: | Height: | Size: 1.0 KiB | 
| Before Width: | Height: | Size: 1.0 KiB | 
| Before Width: | Height: | Size: 892 B | 
| Before Width: | Height: | Size: 996 B | 
| Before Width: | Height: | Size: 929 B | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/mail-queue.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 860 B | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/wallet.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.2 KiB | 
| @@ -1,9 +1,8 @@ | ||||
| [Desktop Entry] | ||||
| Categories=Qt;Network;P2P; | ||||
| Comment=V2.4.10 | ||||
| Comment=V2.2.5 | ||||
| Exec=qbittorrent %f | ||||
| GenericName=Bittorrent client | ||||
| GenericName[ar]=العميل Bittorrent | ||||
| GenericName[bg]=Торент клиент | ||||
| GenericName[cs]=Bittorrent klient | ||||
| GenericName[de]=Bittorren Client | ||||
| @@ -11,7 +10,6 @@ GenericName[el]=Bittorrent πελάτης | ||||
| GenericName[es]=Cliente Bittorrent | ||||
| GenericName[fi]=Bittorrent-ohjelma | ||||
| GenericName[fr]=Client Bittorrent | ||||
| GenericName[hr]=Bittorrent klijent | ||||
| GenericName[hu]=Bittorrent kliens | ||||
| GenericName[it]=Client Bittorrent | ||||
| GenericName[ja]=Bittorrent クライアント | ||||
|   | ||||
| Before Width: | Height: | Size: 54 B | 
| Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/skin/checkingUP.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 3.3 KiB | 
| Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB | 
| Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 257 B |