From 6ecb45d661ea18bb1227316e94a69b3929815bcb Mon Sep 17 00:00:00 2001 From: Christophe Dumez Date: Tue, 28 Aug 2007 16:17:32 +0000 Subject: [PATCH] - Code optimization using initialization lists - Removed Traditional Chinese translation because we lost our translator and translation is outdated --- TODO | 2 + src/FinishedTorrents.cpp | 5 +- src/FinishedTorrents.h | 2 +- src/GUI.cpp | 3 +- src/about_imp.h | 7 +- src/bittorrent.cpp | 5 +- src/bittorrent.h | 2 +- src/deleteThread.h | 8 +- src/downloadThread.h | 8 +- src/downloadingTorrents.cpp | 6 +- src/downloadingTorrents.h | 4 +- src/lang/qbittorrent_zh_HK.qm | Bin 30072 -> 0 bytes src/lang/qbittorrent_zh_HK.ts | 3324 --------------------------------- src/options_imp.cpp | 6 +- src/properties_imp.cpp | 5 +- src/properties_imp.h | 4 +- src/rss.h | 16 +- src/searchEngine.cpp | 4 +- src/src.pro | 1 - 19 files changed, 27 insertions(+), 3385 deletions(-) delete mode 100644 src/lang/qbittorrent_zh_HK.qm delete mode 100644 src/lang/qbittorrent_zh_HK.ts diff --git a/TODO b/TODO index a03f6e432..e1f857cab 100644 --- a/TODO +++ b/TODO @@ -73,6 +73,7 @@ LANGUAGES UPDATED: beta5->beta6 changelog: - FEATURE: Split download tab from GUI class and cleaned up code +- FEATURE: A lot of code optimization - BUGFIX: Made torrent deletion from hard-drive safer - BUGFIX: Fixed a bug when switching from finished to downloading list - BUGFIX: Showing checking progress for paused torrents too @@ -81,3 +82,4 @@ beta5->beta6 changelog: - BUGFIX: Made finished list context menu more similar to the download list one - BUGFIX: Fixed Pause/Start action in lists context menus - BUGFIX: Display the torrent that are being checked as 'checking' in seeding list +- I18N: Removed no longer maintained Traditional chinese translation \ No newline at end of file diff --git a/src/FinishedTorrents.cpp b/src/FinishedTorrents.cpp index 2739009a5..6d081209b 100644 --- a/src/FinishedTorrents.cpp +++ b/src/FinishedTorrents.cpp @@ -32,13 +32,10 @@ #include #include -FinishedTorrents::FinishedTorrents(QObject *parent, bittorrent *BTSession){ +FinishedTorrents::FinishedTorrents(QObject *parent, bittorrent *BTSession) : parent(parent), BTSession(BTSession), nbFinished(0){ setupUi(this); actionStart->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/play.png"))); actionPause->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/pause.png"))); - nbFinished = 0; - this->BTSession = BTSession; - this->parent = parent; connect(BTSession, SIGNAL(addedTorrent(QString, QTorrentHandle&, bool)), this, SLOT(torrentAdded(QString, QTorrentHandle&, bool))); finishedListModel = new QStandardItemModel(0,7); finishedListModel->setHeaderData(F_NAME, Qt::Horizontal, tr("Name", "i.e: file name")); diff --git a/src/FinishedTorrents.h b/src/FinishedTorrents.h index 2c1b31057..35be2156c 100644 --- a/src/FinishedTorrents.h +++ b/src/FinishedTorrents.h @@ -34,11 +34,11 @@ using namespace libtorrent; class FinishedTorrents : public QWidget, public Ui::seeding { Q_OBJECT private: + QObject *parent; bittorrent *BTSession; FinishedListDelegate *finishedListDelegate; QStandardItemModel *finishedListModel; unsigned int nbFinished; - QObject *parent; public: FinishedTorrents(QObject *parent, bittorrent *BTSession); diff --git a/src/GUI.cpp b/src/GUI.cpp index 2559b46e7..798d304e9 100644 --- a/src/GUI.cpp +++ b/src/GUI.cpp @@ -56,7 +56,7 @@ namespace fs = boost::filesystem; *****************************************************/ // Constructor -GUI::GUI(QWidget *parent, QStringList torrentCmdLine) : QMainWindow(parent) { +GUI::GUI(QWidget *parent, QStringList torrentCmdLine) : QMainWindow(parent), force_exit(false) { setupUi(this); setWindowTitle(tr("qBittorrent %1", "e.g: qBittorrent v0.x").arg(QString::fromUtf8(VERSION))); QSettings settings(QString::fromUtf8("qBittorrent"), QString::fromUtf8("qBittorrent")); @@ -104,7 +104,6 @@ GUI::GUI(QWidget *parent, QStringList torrentCmdLine) : QMainWindow(parent) { // creating options options = new options_imp(this); connect(options, SIGNAL(status_changed(QString, bool)), this, SLOT(OptionsSaved(QString, bool))); - force_exit = false; BTSession = new bittorrent(); connect(BTSession, SIGNAL(fullDiskError(QTorrentHandle&)), this, SLOT(fullDiskError(QTorrentHandle&))); connect(BTSession, SIGNAL(finishedTorrent(QTorrentHandle&)), this, SLOT(finishedTorrent(QTorrentHandle&))); diff --git a/src/about_imp.h b/src/about_imp.h index 691f8b95d..db4ffff79 100644 --- a/src/about_imp.h +++ b/src/about_imp.h @@ -57,12 +57,11 @@ class about : public QDialog, private Ui::AboutDlg{ - Bulgarian: Tsvetan & Boiko Bankov (emerge_life@users.sourceforge.net)
\ - Catalan: Gekko Dam Beer (gekko04@users.sourceforge.net)
\ - Chinese (Simplified): Guo Yue (guoyue0418@hotmail.com)
\ - - Chinese (Traditional): Jeff Chen (jeff.cn.chen@gmail.com)
\ - Danish: Mathias Nielsen (comoneo@gmail.com)
\ - - Dutch: Luke Niesink (luke@lukeniesink.net)
\ + - Dutch: Luke Niesink (luke@lukeniesink.net)
\ - Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net)
\ - German: Niels Hoffmann (zentralmaschine@users.sourceforge.net)
\ - - Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net)
\ + - Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net)
\ - Hungarian: Majoros Péter (majoros.j.p@t-online.hu)
\ - Italian: Mirko Ferrari (mirkoferrari@gmail.com) and Ferraro Luciano (luciano.ferraro@gmail.com)
\ - Japanese: Nardog (nardog@e2umail.com)
\ @@ -74,7 +73,7 @@ class about : public QDialog, private Ui::AboutDlg{ - Russian: Nick Khazov (m2k3d0n at users.sourceforge.net)
\ - Slovak: helix84
\ - Spanish: Vicente Raul Plata Fonseca (silverxnt@users.sourceforge.net)
\ - - Swedish: Daniel Nylander (po@danielnylander.se)
\ + - Swedish: Daniel Nylander (po@danielnylander.se)
\ - Turkish: Erdem Bingöl (erdem84@gmail.com)
\ - Ukrainian: Andrey Shpachenko (masterfix@users.sourceforge.net)

")); te_translation->append(tr("Please contact me if you would like to translate qBittorrent into your own language.")); diff --git a/src/bittorrent.cpp b/src/bittorrent.cpp index 5d6c41f95..31e5aec0d 100644 --- a/src/bittorrent.cpp +++ b/src/bittorrent.cpp @@ -42,10 +42,9 @@ #define ETAS_MAX_VALUES 8 // Main constructor -bittorrent::bittorrent() { +bittorrent::bittorrent() : timerScan(0), DHTEnabled(false){ // To avoid some exceptions fs::path::default_name_check(fs::no_check); - timerScan = 0; // Supported preview extensions // XXX: A bit dirty to do it this way (use mime types?) supported_preview_extensions << "AVI" << "DIVX" << "MPG" << "MPEG" << "MPE" << "MP3" << "OGG" << "WMV" << "WMA" << "RMV" << "RMVB" << "ASF" << "MOV" << "WAV" << "MP2" << "SWF" << "AC3" << "OGM" << "MP4" << "FLV" << "VOB" << "QT" << "MKV" << "AIF" << "AIFF" << "AIFC" << "MID" << "MPG" << "RA" << "RAM" << "AU" << "M4A" << "FLAC" << "M4P" << "3GP" << "AAC" << "RM" << "SWA" << "MPC" << "MPP"; @@ -57,8 +56,6 @@ bittorrent::bittorrent() { s->start_lsd(); s->start_natpmp(); s->start_upnp(); - // DHT (Trackerless), disabled until told otherwise - DHTEnabled = false; // Enabling metadata plugin s->add_extension(&create_metadata_plugin); timerAlerts = new QTimer(); diff --git a/src/bittorrent.h b/src/bittorrent.h index ee68409e3..a31359dba 100644 --- a/src/bittorrent.h +++ b/src/bittorrent.h @@ -40,10 +40,10 @@ class bittorrent : public QObject{ private: session *s; - bool DHTEnabled; QString scan_dir; QTimer *timerScan; QTimer *timerAlerts; + bool DHTEnabled; downloadThread *downloader; QStringList supported_preview_extensions; QString defaultSavePath; diff --git a/src/deleteThread.h b/src/deleteThread.h index 2e0a9d56a..af7c70c35 100644 --- a/src/deleteThread.h +++ b/src/deleteThread.h @@ -38,9 +38,7 @@ class subDeleteThread : public QThread { bool abort; public: - subDeleteThread(QObject *parent, QString save_path, QStringList files_path) : QThread(parent), save_path(save_path), files_path(files_path){ - abort = false; - } + subDeleteThread(QObject *parent, QString save_path, QStringList files_path) : QThread(parent), save_path(save_path), files_path(files_path), abort(false){} ~subDeleteThread(){ abort = true; @@ -72,9 +70,7 @@ class deleteThread : public QThread { QList subThreads; public: - deleteThread(QObject* parent) : QThread(parent){ - abort = false; - } + deleteThread(QObject* parent) : QThread(parent), abort(false){} ~deleteThread(){ mutex.lock(); diff --git a/src/downloadThread.h b/src/downloadThread.h index 3703e024e..37e7095a8 100644 --- a/src/downloadThread.h +++ b/src/downloadThread.h @@ -45,9 +45,7 @@ class subDownloadThread : public QThread { bool abort; public: - subDownloadThread(QObject *parent, QString url) : QThread(parent), url(url){ - abort = false; - } + subDownloadThread(QObject *parent, QString url) : QThread(parent), url(url), abort(false){} ~subDownloadThread(){ abort = true; @@ -146,9 +144,7 @@ class downloadThread : public QThread { void downloadFailure(QString url, QString reason); public: - downloadThread(QObject* parent) : QThread(parent){ - abort = false; - } + downloadThread(QObject* parent) : QThread(parent), abort(false){} ~downloadThread(){ mutex.lock(); diff --git a/src/downloadingTorrents.cpp b/src/downloadingTorrents.cpp index 007442eab..f03375969 100644 --- a/src/downloadingTorrents.cpp +++ b/src/downloadingTorrents.cpp @@ -33,12 +33,8 @@ #include #include -DownloadingTorrents::DownloadingTorrents(QObject *parent, bittorrent *BTSession) { +DownloadingTorrents::DownloadingTorrents(QObject *parent, bittorrent *BTSession) : parent(parent), BTSession(BTSession), delayedSorting(false), nbTorrents(0) { setupUi(this); - this->BTSession = BTSession; - this->parent = parent; - delayedSorting = false; - nbTorrents = 0; // Setting icons actionStart->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/play.png"))); actionPause->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/pause.png"))); diff --git a/src/downloadingTorrents.h b/src/downloadingTorrents.h index 99592a709..4533c862e 100644 --- a/src/downloadingTorrents.h +++ b/src/downloadingTorrents.h @@ -34,13 +34,13 @@ using namespace libtorrent; class DownloadingTorrents : public QWidget, public Ui::downloading{ Q_OBJECT private: + QObject *parent; bittorrent *BTSession; DLListDelegate *DLDelegate; QStandardItemModel *DLListModel; - unsigned int nbTorrents; bool delayedSorting; + unsigned int nbTorrents; Qt::SortOrder delayedSortingOrder; - QObject *parent; public: DownloadingTorrents(QObject *parent, bittorrent *BTSession); diff --git a/src/lang/qbittorrent_zh_HK.qm b/src/lang/qbittorrent_zh_HK.qm deleted file mode 100644 index 389171307566bd1df4fde322ca8e1638d73fe54b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30072 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 diff --git a/src/lang/qbittorrent_zh_HK.ts b/src/lang/qbittorrent_zh_HK.ts deleted file mode 100644 index 5997bbfef..000000000 --- a/src/lang/qbittorrent_zh_HK.ts +++ /dev/null @@ -1,3324 +0,0 @@ - - - - AboutDlg - - - About qBittorrent - 關於 qBittorrent - - - - About - 關於 - - - - Author - 作者 - - - - qBitorrent Author - qBittorrent 作者 - - - - Name: - 名稱: - - - - Country: - 國家: - - - - E-mail: - 電子郵件: - - - - Home page: - 主頁: - - - - Christophe Dumez - - - - - France - 法國 - - - - Thanks To - 感謝 - - - - Translation - 翻譯 - - - - License - 許可證 - - - - <h3><b>qBittorrent</b></h3> - - - - - A bittorrent client using Qt4 and libtorrent, programmed in C++.<br> -<br> -Copyright © 2006 by Christophe Dumez<br> -<br> <u>Home Page:</u> <i>http://qbittorrent.sourceforge.net</i><br> - bittorrent的用戶使用由C++語言編寫的Qt4和libtorrent. - -Copyright © 2006 by Christophe Dumez -主頁:http://qbittorrent.sourceforge.net - - - - qBittorrent Author - qBittorrent 作者 - - - - A bittorrent client using Qt4 and libtorrent, programmed in C++.<br> -<br> -Copyright © 2006 by Christophe Dumez<br> -<br> <u>Home Page:</u> <i>http://www.qbittorrent.org</i><br> - bittorrent的用戶使用由C++語言編寫的Qt4和libtorrent.<br> -<br> -Copyright © 2006 by Christophe Dumez<br> -<br> <u>主頁:</u> <i>http://qbittorrent.sourceforge.net</i><br> - - - - chris@qbittorrent.org - - - - - http://www.dchris.eu - - - - - Birthday: - - - - - Occupation: - - - - - 03/05/1985 - - - - - Student in computer science - - - - - Thanks to - - - - - BandwidthAllocationDialog - - - Upload limit: - - - - - Download limit: - - - - - Unlimited - Unlimited (bandwidth) - - - - - KiB/s - - - - - DLListDelegate - - - KiB/s - kB/s - - - - Dialog - - - Options -- qBittorrent - 選項 -- qBittorrent - - - - Options - 選項 - - - - Main - 常規 - - - - Save Path: - 保存路徑: - - - - Download Limit: - 下載限制: - - - - Upload Limit: - 上傳限制: - - - - Max Connects: - 最大連接數: - - - - Port range: - Port範圍: - - - - ... - ... - - - - Disable - 放棄 - - - - connections - 連接 - - - - to - - - - - Proxy - Proxy - - - - Proxy Settings - Proxy設置 - - - - Server IP: - 伺服器IP: - - - - 0.0.0.0 - - - - - Port: - Port: - - - - Proxy server requires authentication - 代理伺服器需要身分驗證 - - - - Authentication - 驗證 - - - - User Name: - 用戶名: - - - - Password: - 密碼: - - - - Enable connection through a proxy server - 可使用代理伺服器連接 - - - - Language - 語言 - - - - Please choose your preferred language in the following list: - 請選擇所需語言: - - - - OK - 確認 - - - - Cancel - 取消 - - - - Language settings will take effect after restart. - 語言設置將在重新啟動本軟體後生效. - - - - Scanned Dir: - 監視目錄: - - - - Enable directory scan (auto add torrent files inside) - 可使用目錄監視功能(自動添加torrent文件) - - - - Connection Settings - 連接設置 - - - - Share ratio: - 共享比率: - - - - 1 KB DL = - 1 KB 下載限 = - - - - KB UP max. - KB 上傳最大值. - - - - Activate IP Filtering - 啟用IP過濾器 - - - - Filter Settings - 過濾器設置 - - - - ipfilter.dat URL or PATH: - ipfilter.dat路徑或網址: - - - - Start IP - 起始IP - - - - End IP - 截止IP - - - - Origin - 來源 - - - - Comment - 注釋 - - - - Apply - 應用 - - - - IP Filter - IP過濾器 - - - - Add Range - 添加IP列 - - - - Remove Range - 刪除IP列 - - - - ipfilter.dat Path: - ipfilter.dat路徑: - - - - Misc - 其他 - - - - Ask for confirmation on exit - 離開時確認 - - - - Clear finished downloads on exit - 離開時清除完成的下載 - - - - Go to systray when minimizing window - 最小化時移至systray - - - - Localization - 地方化 - - - - Language: - 語言 - - - - Behaviour - 行為 - - - - OSD - OSD - - - - Always display OSD - 永遠顯示OSD - - - - Display OSD only if window is minimized or iconified - 顯示OSD當視窗最小化 - - - - Never display OSD - 不要顯示OSD - - - - KiB/s - kB/s - - - - 1 KiB DL = - 1 KB 下傳 - - - - KiB UP max. - 最大上傳KB - - - - Preview program - - - - - Audio/Video player: - - - - - Always display systray messages - - - - - Display systray messages only when window is hidden - - - - - Never display systray messages - - - - - DHT configuration - - - - - DHT port: - - - - - <b>Note:</b> Changes will be applied after qBittorrent is restarted. - - - - - <b>Translators note:</b> If qBittorrent is not available in your language, <br/>and if you would like to translate it in your mother tongue, <br/>please contact me (chris@qbittorrent.org). - - - - - Display a torrent addition dialog everytime I add a torrent - - - - - Default save path - - - - - Disable DHT (Trackerless) - - - - - Disable Peer eXchange (PeX) - - - - - Go to systray when closing main window - - - - - Connection - - - - - Peer eXchange (PeX) - - - - - DHT (trackerless) - - - - - Torrent addition - - - - - Main window - - - - - Systray messages - - - - - Directory scan - - - - - Style (Look 'n Feel) - - - - - Plastique style (KDE like) - - - - - Cleanlooks style (GNOME like) - - - - - Motif style (default Qt style on Unix systems) - - - - - CDE style (Common Desktop Environment like) - - - - - MacOS style (MacOSX only) - - - - - Exit confirmation when the download list is not empty - - - - - Disable systray integration - - - - - WindowsXP style (Windows XP only) - - - - - Server IP or url: - - - - - Proxy type: - - - - - HTTP - - - - - SOCKS5 - - - - - Affected connections - - - - - Use proxy for connections to trackers - - - - - Use proxy for connections to regular peers - - - - - Use proxy for connections to web seeds - - - - - Use proxy for DHT messages - - - - - Encryption - - - - - Encryption state: - - - - - Enabled - - - - - Forced - - - - - Disabled - - - - - DownloadingTorrents - - - Name - i.e: file name - 名稱 - - - - Size - i.e: file size - 大小 - - - - Progress - i.e: % downloaded - 進度 - - - - DL Speed - i.e: Download speed - 下載速度 - - - - UP Speed - i.e: Upload speed - 上傳速度 - - - - Seeds/Leechs - i.e: full/partial sources - - - - - Ratio - - - - - ETA - i.e: Estimated Time of Arrival / Time left - ETA - - - - qBittorrent %1 started. - e.g: qBittorrent v0.x started. - - - - - Be careful, sharing copyrighted material without permission is against the law. - - - - - <font color='red'>%1</font> <i>was blocked</i> - x.y.z.w was blocked - - - - - Fast resume data was rejected for torrent %1, checking again... - - - - - Url seed lookup failed for url: %1, message: %2 - - - - - '%1' added to download list. - '/home/y/xxx.torrent' was added to download list. - - - - - '%1' resumed. (fast resume) - '/home/y/xxx.torrent' was resumed. (fast resume) - - - - - '%1' is already in download list. - e.g: 'xxx.avi' is already in download list. - - - - - Unable to decode torrent file: '%1' - e.g: Unable to decode torrent file: '/home/y/xxx.torrent' - - - - - This file is either corrupted or this isn't a torrent. - 該文件不是torrent文件或已經損壞. - - - - Couldn't listen on any of the given ports. - 所給端口無回應. - - - - Downloading '%1', please wait... - e.g: Downloading 'xxx.torrent', please wait... - - - - - FinishedListDelegate - - - KiB/s - - - - - FinishedTorrents - - - Finished - 完成 - - - - Name - i.e: file name - 名稱 - - - - Size - i.e: file size - 大小 - - - - Progress - i.e: % downloaded - 進度 - - - - DL Speed - i.e: Download speed - 下載速度 - - - - UP Speed - i.e: Upload speed - 上傳速度 - - - - Seeds/Leechs - i.e: full/partial sources - - - - - Status - 狀態 - - - - ETA - i.e: Estimated Time of Arrival / Time left - ETA - - - - Finished - i.e: Torrent has finished downloading - 完成 - - - - None - i.e: No error message - - - - - Ratio - - - - - GUI - - - Open Torrent Files - 打開Torrent文件 - - - - Unknown - 無效 - - - - This file is either corrupted or this isn't a torrent. - 該文件不是torrent文件或已經損壞. - - - - Are you sure you want to delete all files in download list? - 確定刪除下在列表中的所有文件? - - - - &Yes - &是 - - - - &No - &否 - - - - Are you sure you want to delete the selected item(s) in download list? - 確定刪除所選中的文件? - - - - paused - 暫停 - - - - started - 開始 - - - - Finished - 完成 - - - - Checking... - 檢查中... - - - - Connecting... - 連接中... - - - - Downloading... - 下載中... - - - - Download list cleared. - 下載列表以清空. - - - - All Downloads Paused. - 暫停所有下載. - - - - All Downloads Resumed. - 重新開始所有下載. - - - - DL Speed: - 下載速度: - - - - started. - 已開始. - - - - UP Speed: - 上傳速度: - - - - Couldn't create the directory: - 無法建立目錄: - - - - Torrent Files - Torrent檔案 - - - - already in download list. - <file> already in download list. - 該文件已存在於下載列表中. - - - - added to download list. - 增加到下載列表. - - - - resumed. (fast resume) - 重新開始. (快速) - - - - Unable to decode torrent file: - 無法解碼torrent文件: - - - - removed. - <file> removed. - 移除. - - - - paused. - <file> paused. - 暫停. - - - - resumed. - <file> resumed. - 重新開始. - - - - Listening on port: - 使用端口: - - - - Are you sure? -- qBittorrent - 確定? -- qBittorrent - - - - <b>qBittorrent</b><br>DL Speed: - <b>qBittorrent</b><br>下載速度: - - - - <b>Connection Status:</b><br>Online - <b>連接狀態:</b><br>在線上 - - - - <b>Connection Status:</b><br>Firewalled?<br><i>No incoming connections...</i> - <b>連接狀態:</b><br>有防火牆?<br><i>無incoming連接...</i> - - - - <b>Connection Status:</b><br>Offline<br><i>No peers found...</i> - <b>連接狀態:</b><br>離線<br><i>無法找到任何資源...</i> - - - - has finished downloading. - 下載完畢. - - - - Couldn't listen on any of the given ports. - 所給端口無回應. - - - - None - - - - - Empty search pattern - 無關鍵字 - - - - Please type a search pattern first - 請輸入關鍵字 - - - - No seach engine selected - 無選中的搜索引擎 - - - - You must select at least one search engine. - 至少選擇一個搜索引擎. - - - - Searching... - 搜索中... - - - - Could not create search plugin. - 無法建立搜索插件. - - - - Stopped - 停止 - - - - I/O Error - 輸入/輸出錯誤 - - - - Couldn't create temporary file on hard drive. - 無法在硬碟上建立臨時文件. - - - - Torrent file URL - Torrent文件URL - - - - Downloading using HTTP: - 使用HTTP下載: - - - - Torrent file URL: - Torrent文件URL: - - - - A http download failed... - http下載失敗... - - - - A http download failed, reason: - http失敗原因: - - - - Are you sure you want to quit? -- qBittorrent - 確定要退出嗎? -- qBittorrent - - - - Are you sure you want to quit qbittorrent? - 確定要退出qbittorrent嗎? - - - - Timed out - 超時 - - - - Search is finished - 搜尋結束 - - - - An error occured during search... - 搜尋發生錯誤... - - - - Search aborted - 搜尋中斷 - - - - Search returned no results - 搜尋無結果 - - - - Search is Finished - 搜尋結束 - - - - Search plugin update -- qBittorrent - 搜尋 plugin 更新 -- qBittorrent - - - - Search plugin can be updated, do you want to update it? - -Changelog: - - 搜尋 plugin 可更新, 是否更新? - - - - Sorry, update server is temporarily unavailable. - 抱歉, 更新伺服器暫時不能用 - - - - Your search plugin is already up to date. - 您的搜尋 plugin 已是最新 - - - - Results - 結果 - - - - Name - 名稱 - - - - Size - 大小 - - - - Progress - 進度 - - - - DL Speed - 下載速度 - - - - UP Speed - 上傳速度 - - - - Status - 狀態 - - - - ETA - ETA - - - - Seeders - 種子 - - - - Leechers - 不完整種子 - - - - Search engine - 搜尋引擎 - - - - Paused - 暫停 - - - - Preview process already running - - - - - There is already another preview process running. -Please close the other one first. - - - - - Download finished - - - - - has finished downloading. - <filename> has finished downloading. - 下載完畢. - - - - Search Engine - 搜索引擎 - - - - qBittorrent %1 - e.g: qBittorrent v0.x - - - - - Connection status: - - - - - Offline - - - - - No peers found... - - - - - Name - i.e: file name - 名稱 - - - - Size - i.e: file size - 大小 - - - - Progress - i.e: % downloaded - 進度 - - - - DL Speed - i.e: Download speed - 下載速度 - - - - UP Speed - i.e: Upload speed - 上傳速度 - - - - ETA - i.e: Estimated Time of Arrival / Time left - ETA - - - - Seeders - i.e: Number of full sources - 種子 - - - - Leechers - i.e: Number of partial sources - 不完整種子 - - - - qBittorrent - - - - - DL speed: %1 KiB/s - e.g: Download speed: 10 KiB/s - - - - - UP speed: %1 KiB/s - e.g: Upload speed: 10 KiB/s - - - - - Finished - i.e: Torrent has finished downloading - 完成 - - - - Checking... - i.e: Checking already downloaded parts... - 檢查中... - - - - Are you sure you want to quit? - - - - - '%1' was removed. - 'xxx.avi' was removed. - - - - - None - i.e: No error message - - - - - All downloads were paused. - - - - - '%1' paused. - xxx.avi paused. - - - - - Connecting... - i.e: Connecting to the tracker... - 連接中... - - - - All downloads were resumed. - - - - - '%1' resumed. - e.g: xxx.avi resumed. - - - - - %1 has finished downloading. - e.g: xxx.avi has finished downloading. - - - - - I/O Error - i.e: Input/Output Error - 輸入/輸出錯誤 - - - - An error occured when trying to read or write %1. The disk is probably full, download has been paused - e.g: An error occured when trying to read or write xxx.avi. The disk is probably full, download has been paused - - - - - Connection Status: - - - - - Online - - - - - Firewalled? - i.e: Behind a firewall/router? - - - - - No incoming connections... - - - - - Results - i.e: Search results - 結果 - - - - An error occured (full disk?), '%1' paused. - e.g: An error occured (full disk?), 'xxx.avi' paused. - - - - - Search - 搜索 - - - - RSS - - - - - qBittorrent is bind to port: %1 - e.g: qBittorrent is bind to port: 1666 - - - - - DHT support [ON], port: %1 - - - - - DHT support [OFF] - - - - - PeX support [ON] - - - - - PeX support [OFF] - - - - - The download list is not empty. -Are you sure you want to quit qBittorrent? - - - - - Downloads - 下載 - - - - Are you sure you want to delete the selected item(s) in finished list? - - - - - UPnP support [ON] - - - - - Encryption support [ON] - - - - - Encryption support [FORCED] - - - - - Encryption support [OFF] - - - - - Alt+1 - shortcut to switch to first tab - - - - - Alt+2 - shortcut to switch to second tab - - - - - Alt+4 - shortcut to switch to fourth tab - - - - - Url download error - - - - - Couldn't download file at url: %1, reason: %2. - - - - - Are you sure you want to delete the selected item(s) from download list and from hard drive? - - - - - Are you sure you want to delete the selected item(s) from finished list and from hard drive? - - - - - '%1' was removed permanently. - 'xxx.avi' was removed permanently. - - - - - Alt+3 - shortcut to switch to third tab - - - - - Ctrl+F - shortcut to switch to search tab - - - - - MainWindow - - - Log: - 記錄: - - - - Total DL Speed: - 總下載速度: - - - - Total UP Speed: - 總上傳速度: - - - - Name - 名稱 - - - - Size - 大小 - - - - % DL - % 下載 - - - - DL Speed - 下載速度 - - - - UP Speed - 上傳速度 - - - - Status - 狀態 - - - - &Options - &選項 - - - - &Edit - &編輯 - - - - &File - &文件 - - - - &Help - &幫助 - - - - Open - 打開 - - - - Exit - 退出 - - - - Preferences - 偏好 - - - - About - 關於 - - - - Start - 開始 - - - - Pause - 暫停 - - - - Delete - 刪除 - - - - Pause All - 暫停全部 - - - - Start All - 開始全部 - - - - Documentation - 參考資料 - - - - Connexion Status - 連接狀態 - - - - Delete All - 刪除全部 - - - - Torrent Properties - Torrent所有權 - - - - Connection Status - 連接狀態 - - - - Downloads - 下載 - - - - Search - 搜索 - - - - Search Pattern: - 搜索關鍵字: - - - - Status: - 狀態: - - - - Stopped - 停止 - - - - Search Engines - 搜索引擎 - - - - Results: - 結果: - - - - Stop - 停止 - - - - Seeds - 完整種子 - - - - Leechers - 不完整種子 - - - - Search Engine - 搜索引擎 - - - - Download from URL - 通過網址下載 - - - - Download - 下載 - - - - Clear - 清除 - - - - Create torrent - 創造 torrent - - - - Update search plugin - 更新搜尋plugin - - - - Session ratio: - session 比率 - - - - Preview file - - - - - Clear log - - - - - Delete Permanently - - - - - Visit website - - - - - Report a bug - - - - - Set upload limit - - - - - Set download limit - - - - - Set global download limit - - - - - Set global upload limit - - - - - Options - 選項 - - - - PropListDelegate - - - Ignored - - - - - Normal - Normal (priority) - - - - - High - High (priority) - - - - - Maximum - Maximum (priority) - - - - - QTextEdit - - - Clear - 清除 - - - - RSS - - - Search - 搜索 - - - - Delete - 刪除 - - - - Rename - - - - - Refresh - - - - - Delete selected streams - - - - - Refresh RSS streams - - - - - Add a new RSS stream - - - - - <b>News:</b> <i>(double-click to open the link in your web browser)</i> - - - - - Add RSS stream - - - - - Refresh all streams - - - - - RSS streams: - - - - - 2 - - - - - RSSImp - - - Please type a rss stream url - - - - - Stream URL: - - - - - Please choose a new name for this stream - - - - - New stream name: - - - - - Are you sure? -- qBittorrent - 確定? -- qBittorrent - - - - &Yes - &是 - - - - &No - &否 - - - - Are you sure you want to delete this stream from the list? - - - - - Description: - - - - - url: - - - - - Last refresh: - - - - - qBittorrent - - - - - This rss feed is already in the list. - - - - - RssItem - - - No description available - - - - - RssStream - - - %1 ago - 10min ago - - - - - Never - - - - - SearchEngine - - - Name - i.e: file name - 名稱 - - - - Size - i.e: file size - 大小 - - - - Seeders - i.e: Number of full sources - 種子 - - - - Leechers - i.e: Number of partial sources - 不完整種子 - - - - Search engine - 搜尋引擎 - - - - Empty search pattern - 無關鍵字 - - - - Please type a search pattern first - 請輸入關鍵字 - - - - No search engine selected - - - - - You must select at least one search engine. - 至少選擇一個搜索引擎. - - - - Results - 結果 - - - - Searching... - 搜索中... - - - - Search plugin update -- qBittorrent - 搜尋 plugin 更新 -- qBittorrent - - - - Search plugin can be updated, do you want to update it? - -Changelog: - - 搜尋 plugin 可更新, 是否更新? - - - - &Yes - &是 - - - - &No - &否 - - - - Search plugin update - - - - - qBittorrent - - - - - Sorry, update server is temporarily unavailable. - 抱歉, 更新伺服器暫時不能用 - - - - Your search plugin is already up to date. - 您的搜尋 plugin 已是最新 - - - - Search Engine - 搜索引擎 - - - - Search has finished - - - - - An error occured during search... - 搜尋發生錯誤... - - - - Search aborted - 搜尋中斷 - - - - Search returned no results - 搜尋無結果 - - - - Results - i.e: Search results - 結果 - - - - Search plugin download error - - - - - Couldn't download search plugin update at url: %1, reason: %2. - - - - - Ui - - - Name - 名稱 - - - - Size - 大小 - - - - Progress - 進度 - - - - about - - - qBittorrent - - - - - I would like to thank the following people who volunteered to translate qBittorrent: - - - - - Please contact me if you would like to translate qBittorrent into your own language. - - - - - addTorrentDialog - - - Torrent addition dialog - - - - - Save path: - - - - - ... - ... - - - - Torrent content: - - - - - Download in correct order (slower but good for previewing) - - - - - Add to download list in paused state - - - - - Add - - - - - Cancel - 取消 - - - - Ignored - - - - - Normal - - - - - High - - - - - Maximum - - - - - authentication - - - Tracker authentication - - - - - Tracker: - - - - - Login - - - - - Username: - - - - - Password: - 密碼: - - - - Log in - - - - - Cancel - 取消 - - - - bandwidth_dlg - - - Bandwidth allocation - - - - - KiB/s - - - - - createTorrentDialog - - - Torrent Creation Tool - - - - - ... - ... - - - - Create - - - - - Cancel - 取消 - - - - Torrent file creation - - - - - Input files or directories: - - - - - Announce urls (trackers): - - - - - Comment (optional): - - - - - Private (won't be distributed on trackerless network / DHT if enabled) - - - - - Destination torrent file: - - - - - Web seeds urls (optional): - - - - - createtorrent - - - Select destination torrent file - - - - - Torrent Files - Torrent檔案 - - - - No destination path set - - - - - Please type a destination path first - - - - - No input path set - - - - - Please type an input path first - - - - - Torrent creation - - - - - Torrent was created successfully: - - - - - Select a folder to add to the torrent - - - - - Select files to add to the torrent - - - - - Please type an announce URL - - - - - Torrent creation was unsuccessful, reason: %1 - - - - - Announce URL: - Tracker URL - - - - - Please type a web seed url - - - - - Web seed URL: - - - - - downloadFromURL - - - Download Torrents from URLs - - - - - Only one URL per line - - - - - Download - 下載 - - - - Cancel - 取消 - - - - Download from urls - - - - - No URL entered - - - - - Please type at least one URL. - - - - - downloading - - - Search - 搜索 - - - - Total DL Speed: - 總下載速度: - - - - KiB/s - - - - - Session ratio: - session 比率 - - - - Total UP Speed: - 總上傳速度: - - - - Log - - - - - IP filter - - - - - Start - 開始 - - - - Pause - 暫停 - - - - Delete - 刪除 - - - - Clear - 清除 - - - - Preview file - - - - - Set upload limit - - - - - Set download limit - - - - - Delete Permanently - - - - - Torrent Properties - Torrent所有權 - - - - misc - - - Unknown - Unknown (size) - 無效 - - - - B - bytes - - - - - KiB - kibibytes (1024 bytes) - - - - - MiB - mebibytes (1024 kibibytes) - - - - - GiB - gibibytes (1024 mibibytes) - - - - - TiB - tebibytes (1024 gibibytes) - - - - - Unknown - 無效 - - - - < 1m - < 1 minute - - - - - %1m - e.g: 10minutes - - - - - %1h%2m - e.g: 3hours 5minutes - - - - - %1d%2h%3m - e.g: 2days 10hours 2minutes - - - - - options_imp - - - to - <min port> to <max port> - - - - - I/O Error - 輸入/輸出錯誤 - - - - Range Start IP - - - - - Start IP: - - - - - Range End IP - - - - - End IP: - - - - - IP Range Comment - - - - - Comment: - - - - - Choose your favourite preview program - - - - - Invalid IP - - - - - This IP is invalid. - - - - - Options were saved successfully. - - - - - Choose scan directory - - - - - Choose an ipfilter.dat file - - - - - Choose a save directory - - - - - I/O Error - Input/Output Error - 輸入/輸出錯誤 - - - - Couldn't open %1 in read mode. - - - - - preview - - - Preview selection - - - - - File preview - - - - - The following files support previewing, <br>please select one of them: - - - - - Preview - - - - - Cancel - 取消 - - - - previewSelect - - - Preview impossible - - - - - Sorry, we can't preview this file - - - - - Name - 名稱 - - - - Size - 大小 - - - - Progress - 進度 - - - - properties - - - Torrent Properties - Torrent所有權 - - - - Main infos - - - - - Tracker - - - - - Trackers: - - - - - Errors: - - - - - Current tracker: - - - - - Total uploaded: - - - - - Total downloaded: - - - - - Total failed: - - - - - Torrent content - - - - - Files contained in current torrent: - - - - - OK - 確認 - - - - Size - 大小 - - - - Progress - 進度 - - - - Finished - 完成 - - - - None - Unreachable? - - - - - Unknown - 無效 - - - - Options - 選項 - - - - Download in correct order (slower but good for previewing) - - - - - Save path: - - - - - Torrent infos - - - - - Creator: - - - - - Torrent hash: - - - - - Comment: - - - - - Current session - - - - - Share ratio: - 共享比率: - - - - Trackers - - - - - New tracker - - - - - New tracker url: - - - - - Priorities: - - - - - Normal: normal priority. Download order is dependent on availability - - - - - High: higher than normal priority. Pieces are preferred over pieces with the same availability, but not over pieces with lower availability - - - - - Maximum: maximum priority, availability is disregarded, the piece is preferred over any other piece with lower priority - - - - - File name - - - - - Priority - - - - - qBittorrent - - - - - Trackers list can't be empty. - - - - - Ignored: file is not downloaded at all - - - - - Ignored - - - - - Normal - - - - - Maximum - - - - - High - - - - - Url seeds - - - - - New url seed: - - - - - This url seed is already in the list. - - - - - None - i.e: No error message - - - - - New url seed - New HTTP source - - - - - The following url seeds are available for this torrent: - - - - - search_engine - - - Search - 搜索 - - - - Search Engines - 搜索引擎 - - - - Search Pattern: - 搜索關鍵字: - - - - Stop - 停止 - - - - Status: - 狀態: - - - - Stopped - 停止 - - - - Results: - 結果: - - - - Download - 下載 - - - - Clear - 清除 - - - - Update search plugin - 更新搜尋plugin - - - - seeding - - - Search - 搜索 - - - - The following torrents are finished and shared: - - - - - <u>Note:</u> It is important that you keep sharing your torrents after they are finished for the well being of the network. - - - - - Start - 開始 - - - - Pause - 暫停 - - - - Delete - 刪除 - - - - Delete Permanently - - - - - Torrent Properties - Torrent所有權 - - - - Preview file - - - - - Set upload limit - - - - - subDownloadThread - - - Host is unreachable - - - - - File was not found (404) - - - - - Connection was denied - - - - - Url is invalid - - - - - Connection forbidden (403) - - - - - Connection was not authorized (401) - - - - - Content has moved (301) - - - - - Connection failure - - - - - Connection was timed out - - - - - Incorrect network interface - - - - - Unknown error - - - - - torrentAdditionDialog - - - Unable to decode torrent file: - 無法解碼torrent文件: - - - - This file is either corrupted or this isn't a torrent. - 該文件不是torrent文件或已經損壞. - - - - Choose save path - - - - - Empty save path - - - - - Please enter a save path - - - - - Save path creation error - - - - - Could not create the save path - - - - - Invalid file selection - - - - - You must select at least one file in the torrent - - - - - File name - - - - - Size - 大小 - - - - Progress - 進度 - - - - Priority - - - - diff --git a/src/options_imp.cpp b/src/options_imp.cpp index a347fc499..eb9888a19 100644 --- a/src/options_imp.cpp +++ b/src/options_imp.cpp @@ -122,12 +122,10 @@ options_imp::options_imp(QWidget *parent):QDialog(parent){ locales << "uk_UA"; combo_i18n->addItem((QIcon(QString::fromUtf8(":/Icons/flags/russia.png"))), QString::fromUtf8("Русский")); locales << "ru_RU"; - combo_i18n->addItem((QIcon(QString::fromUtf8(":/Icons/flags/japan.png"))), QString::fromUtf8("日本語")); - locales << "ja_JP"; + combo_i18n->addItem((QIcon(QString::fromUtf8(":/Icons/flags/japan.png"))), QString::fromUtf8("日本語")); + locales << "ja_JP"; combo_i18n->addItem((QIcon(QString::fromUtf8(":/Icons/flags/china.png"))), QString::fromUtf8("中文 (简体)")); locales << "zh_CN"; - combo_i18n->addItem((QIcon(QString::fromUtf8(":/Icons/flags/china_hong_kong.png"))), QString::fromUtf8("中文 (繁體)")); - locales << "zh_HK"; combo_i18n->addItem((QIcon(QString::fromUtf8(":/Icons/flags/south_korea.png"))), QString::fromUtf8("한글")); locales << "ko_KR"; diff --git a/src/properties_imp.cpp b/src/properties_imp.cpp index 5bb2d7bbc..c9122f21c 100644 --- a/src/properties_imp.cpp +++ b/src/properties_imp.cpp @@ -31,10 +31,8 @@ #include // Constructor -properties::properties(QWidget *parent, bittorrent *BTSession, QTorrentHandle &h): QDialog(parent), h(h){ +properties::properties(QWidget *parent, bittorrent *BTSession, QTorrentHandle &h): QDialog(parent), h(h), BTSession(BTSession), changedFilteredfiles(false), hash(h.hash()) { setupUi(this); - this->BTSession = BTSession; - changedFilteredfiles = false; lbl_priorities->setText(tr("Priorities:")+"
  • "+tr("Ignored: file is not downloaded at all")+"
  • "+tr("Normal: normal priority. Download order is dependent on availability")+"
  • "+tr("High: higher than normal priority. Pieces are preferred over pieces with the same availability, but not over pieces with lower availability")+"
  • "+tr("Maximum: maximum priority, availability is disregarded, the piece is preferred over any other piece with lower priority")+"
"); // set icons addTracker_button->setIcon(QIcon(QString::fromUtf8(":/Icons/skin/add.png"))); @@ -66,7 +64,6 @@ properties::properties(QWidget *parent, bittorrent *BTSession, QTorrentHandle &h connect(addWS_button, SIGNAL(clicked()), this, SLOT(askWebSeed())); connect(deleteWS_button, SIGNAL(clicked()), this, SLOT(deleteSelectedUrlSeeds())); // get Infos from torrent handle - hash = h.hash(); fileName->setText(h.name()); // Torrent Infos save_path->setText(h.save_path()); diff --git a/src/properties_imp.h b/src/properties_imp.h index 26ea04608..0fd3c0ec1 100644 --- a/src/properties_imp.h +++ b/src/properties_imp.h @@ -36,13 +36,13 @@ class properties : public QDialog, private Ui::properties{ Q_OBJECT private: QTorrentHandle h; + bittorrent *BTSession; + bool changedFilteredfiles; QString hash; PropListDelegate *PropDelegate; QStandardItemModel *PropListModel; QTimer *updateInfosTimer; bool has_filtered_files; - bool changedFilteredfiles; - bittorrent *BTSession; QStringList urlSeeds; protected slots: diff --git a/src/rss.h b/src/rss.h index 19322daad..117e2d11f 100644 --- a/src/rss.h +++ b/src/rss.h @@ -59,9 +59,7 @@ class RssItem : public QObject { public: // public constructor - RssItem(const QDomElement& properties) { - read = false; - downloadLink = "none"; + RssItem(const QDomElement& properties) : read(false), downloadLink("none") { QDomElement property = properties.firstChild().toElement(); while(!property.isNull()) { if (property.tagName() == "title") @@ -116,18 +114,18 @@ class RssStream : public QObject{ private: QString title; - QString alias; QString link; QString description; QString image; QString url; + QString alias; QString filePath; QString iconPath; QList listItem; QTime lastRefresh; bool read; - bool downloadFailure; bool refreshed; + bool downloadFailure; bool currently_loading; public slots : @@ -150,13 +148,7 @@ class RssStream : public QObject{ } public: - RssStream(QString _url) { - url = _url; - alias = ""; - refreshed = false; - downloadFailure = false; - currently_loading = false; - iconPath = ":/Icons/rss.png"; + RssStream(QString _url): url(_url), alias(""), iconPath(":/Icons/rss.png"), refreshed(false), downloadFailure(false), currently_loading(false) { qDebug("RSSStream constructed"); } diff --git a/src/searchEngine.cpp b/src/searchEngine.cpp index 56eeec067..acd5b4e6b 100644 --- a/src/searchEngine.cpp +++ b/src/searchEngine.cpp @@ -42,10 +42,8 @@ #define SEARCHHISTORY_MAXSIZE 50 -SearchEngine::SearchEngine(bittorrent *BTSession, QSystemTrayIcon *myTrayIcon, bool systrayIntegration) : QWidget(), systrayIntegration(systrayIntegration){ +SearchEngine::SearchEngine(bittorrent *BTSession, QSystemTrayIcon *myTrayIcon, bool systrayIntegration) : QWidget(), BTSession(BTSession), myTrayIcon(myTrayIcon), systrayIntegration(systrayIntegration){ setupUi(this); - this->BTSession = BTSession; - this->myTrayIcon = myTrayIcon; downloader = new downloadThread(this); connect(downloader, SIGNAL(downloadFinished(QString, QString)), this, SLOT(novaUpdateDownloaded(QString, QString))); connect(downloader, SIGNAL(downloadFailure(QString, QString)), this, SLOT(handleNovaDownloadFailure(QString, QString))); diff --git a/src/src.pro b/src/src.pro index d512a8b7c..8689f4d81 100644 --- a/src/src.pro +++ b/src/src.pro @@ -123,7 +123,6 @@ TRANSLATIONS = $$LANG_PATH/qbittorrent_fr.ts \ $$LANG_PATH/qbittorrent_uk.ts \ $$LANG_PATH/qbittorrent_bg.ts \ $$LANG_PATH/qbittorrent_it.ts \ - $$LANG_PATH/qbittorrent_zh_HK.ts \ $$LANG_PATH/qbittorrent_sk.ts \ $$LANG_PATH/qbittorrent_ro.ts \ $$LANG_PATH/qbittorrent_pt.ts \