This commit is contained in:
Leroy.H.Y 2020-01-14 12:49:39 +08:00
parent 8b0ecf00cf
commit 1d2f6f91c1
62 changed files with 185 additions and 212 deletions

View File

@ -1 +1 @@
2760
2766

View File

@ -145,8 +145,8 @@ message("|-------------------------------------------------|")
message(" ")
RC_ICONS += ./icons/qv2ray.ico
ICON = ./icons/qv2ray.icns
RC_ICONS += ./assets/icons/qv2ray.ico
ICON = ./assets/icons/qv2ray.icns
# ------------------------------------------ Begin checking gRPC and protobuf headers.
!exists(libs/gen/v2ray_api_commands.grpc.pb.h) || !exists(libs/gen/v2ray_api_commands.grpc.pb.cc) || !exists(libs/gen/v2ray_api_commands.pb.h) || !exists(libs/gen/v2ray_api_commands.pb.cc) {
@ -254,11 +254,11 @@ unix {
SOURCES += src/ui/NetSpeedBar/QvNetSpeedBar_linux.cpp
message(" --> Generating desktop dependency.")
desktop.files += ./icons/qv2ray.desktop
desktop.files += ./assets/icons/qv2ray.desktop
desktop.path = /usr/share/applications/
message(" --> Generating icons dependency.")
icon.files += ./icons/qv2ray.png
icon.files += ./assets/icons/qv2ray.png
icon.path = /usr/share/icons/hicolor/256x256/apps/
target.path = /usr/local/bin/
@ -269,7 +269,7 @@ build_flatpak {
# For Packaging
message("Configuring for packaging platform")
message(" --> Generating metainfo dependency.")
appdataXml.files += ./icons/qv2ray.metainfo.xml
appdataXml.files += ./assets/qv2ray.metainfo.xml
appdataXml.path = /app/share/metainfo/
LIBS += -L/app/lib
INCLUDEPATH += /app/include/

22
assets/credit.html Normal file
View File

@ -0,0 +1,22 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
p, li { white-space: pre-wrap; }
</style></head><body style=" font-family:'WenQuanYi Micro Hei'; font-size:10pt; font-weight:400; font-style:normal;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; font-weight:600; color:#d68952;">This program comes with ABSOLUTELY NO WARRANTY.</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; font-weight:600; color:#d68952;">This is free software, and you are welcome to redistribute it under certain conditions.</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (C) 2020 Leroy.H.Y (@lhy0403): Qv2ray Current Developer</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (C) 2019 Hork (@aliyuchang33): Hv2ray Initial Designs &amp; gRPC implementation</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (C) 2019 SOneWinstone (@SoneWinstone): Hv2ray/Qv2ray HTTP Request Helper</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Qv2ray ArtWork designs done by ArielAxionL (@axionl)</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">TheBadGateway (@thebadgateway): Qv2ray Russian Translations</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Riko (@rikakomoe): Qv2ray patch 8a8c1a/PR115</span></p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Noto Sans'; color:#d68952;"><br /></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; font-weight:600; color:#d68952;">Libraries that have been used in Qv2ray are listed below (Sorted by date added):</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (c) 2020 dridk (@dridk): X2Struct (Apache)</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (c) 2011 SCHUTZ Sacha (@dridk): QJsonModel (MIT)</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (c) 2020 Nikolaos Ftylitakis (@ftylitak): QZXing (Apache2)</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (c) 2016 Singein (@Singein): ScreenShot (MIT)</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (c) 2016 Nikhil Marathe (@nikhilm): QHttpServer (MIT)</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (c) 2020 Itay Grudev (@itay-grudev): SingleApplication (MIT)</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (c) 2020 paceholder (@paceholder): nodeeditor (QNodeEditor modified by lhy0403) (BSD-3-Clause)</span></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MonoSpace'; color:#d68952;">Copyright (c) 2019 TheWanderingCoel (@TheWanderingCoel): ShadowClash (launchatlogin) (GPLv3)</span></p></body></html>

View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

View File

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

Before

Width:  |  Height:  |  Size: 264 KiB

After

Width:  |  Height:  |  Size: 264 KiB

View File

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

View File

Before

Width:  |  Height:  |  Size: 804 B

After

Width:  |  Height:  |  Size: 804 B

View File

Before

Width:  |  Height:  |  Size: 507 B

After

Width:  |  Height:  |  Size: 507 B

View File

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

View File

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 8.0 KiB

After

Width:  |  Height:  |  Size: 8.0 KiB

View File

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

Before

Width:  |  Height:  |  Size: 6.8 KiB

After

Width:  |  Height:  |  Size: 6.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

View File

Before

Width:  |  Height:  |  Size: 7.4 KiB

After

Width:  |  Height:  |  Size: 7.4 KiB

View File

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 8.8 KiB

View File

Before

Width:  |  Height:  |  Size: 905 B

After

Width:  |  Height:  |  Size: 905 B

View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Before

Width:  |  Height:  |  Size: 790 B

After

Width:  |  Height:  |  Size: 790 B

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

Before

Width:  |  Height:  |  Size: 820 B

After

Width:  |  Height:  |  Size: 820 B

View File

Before

Width:  |  Height:  |  Size: 512 B

After

Width:  |  Height:  |  Size: 512 B

View File

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

View File

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

View File

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

Before

Width:  |  Height:  |  Size: 6.8 KiB

After

Width:  |  Height:  |  Size: 6.8 KiB

View File

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

View File

Before

Width:  |  Height:  |  Size: 7.4 KiB

After

Width:  |  Height:  |  Size: 7.4 KiB

View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

Before

Width:  |  Height:  |  Size: 927 B

After

Width:  |  Height:  |  Size: 927 B

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 818 B

After

Width:  |  Height:  |  Size: 818 B

View File

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -1,27 +1,28 @@
<RCC>
<qresource prefix="/">
<file>icons/qv2ray.icns</file>
<file>icons/qv2ray.png</file>
<file>icons/qv2ray.ico</file>
<file>icons/ui_dark/add.png</file>
<file>icons/ui_dark/delete.png</file>
<file>icons/ui_dark/duplicate.png</file>
<file>icons/ui_dark/edit.png</file>
<file>icons/ui_dark/import.png</file>
<file>icons/ui_dark/json.png</file>
<file>icons/ui_dark/netspeed_arrow.png</file>
<file>icons/ui_dark/ping_gauge.png</file>
<file>icons/ui_dark/share.png</file>
<file>icons/ui_light/add.png</file>
<file>icons/ui_light/delete.png</file>
<file>icons/ui_light/duplicate.png</file>
<file>icons/ui_light/edit.png</file>
<file>icons/ui_light/import.png</file>
<file>icons/ui_light/json.png</file>
<file>icons/ui_light/netspeed_arrow.png</file>
<file>icons/ui_light/ping_gauge.png</file>
<file>icons/ui_light/share.png</file>
<file>icons/ui_light/tray.png</file>
<file>icons/ui_dark/tray.png</file>
<file>assets/icons/ui_dark/add.png</file>
<file>assets/icons/ui_dark/delete.png</file>
<file>assets/icons/ui_dark/duplicate.png</file>
<file>assets/icons/ui_dark/edit.png</file>
<file>assets/icons/ui_dark/import.png</file>
<file>assets/icons/ui_dark/json.png</file>
<file>assets/icons/ui_dark/netspeed_arrow.png</file>
<file>assets/icons/ui_dark/ping_gauge.png</file>
<file>assets/icons/ui_dark/share.png</file>
<file>assets/icons/ui_dark/tray.png</file>
<file>assets/icons/ui_light/add.png</file>
<file>assets/icons/ui_light/delete.png</file>
<file>assets/icons/ui_light/duplicate.png</file>
<file>assets/icons/ui_light/edit.png</file>
<file>assets/icons/ui_light/import.png</file>
<file>assets/icons/ui_light/json.png</file>
<file>assets/icons/ui_light/netspeed_arrow.png</file>
<file>assets/icons/ui_light/ping_gauge.png</file>
<file>assets/icons/ui_light/share.png</file>
<file>assets/icons/ui_light/tray.png</file>
<file>assets/icons/qv2ray.icns</file>
<file>assets/icons/qv2ray.ico</file>
<file>assets/icons/qv2ray.png</file>
<file>assets/credit.html</file>
</qresource>
</RCC>

View File

@ -66,7 +66,7 @@ const int QV2RAY_CONFIG_VERSION = 6;
#define BLACK(obj) \
obj->setPalette(this->palette());
#define QV2RAY_UI_RESOURCES_ROOT (QV2RAY_IS_DARKTHEME ? QStringLiteral(":/icons/ui_dark/") : QStringLiteral(":/icons/ui_light/"))
#define QV2RAY_UI_RESOURCES_ROOT (QV2RAY_IS_DARKTHEME ? QStringLiteral(":/assets/icons/ui_dark/") : QStringLiteral(":/assets/icons/ui_light/"))
#define QICON_R(file) QIcon(QV2RAY_UI_RESOURCES_ROOT + file)
#define QSTRN(num) QString::number(num)

View File

@ -26,7 +26,7 @@
<string/>
</property>
<property name="pixmap">
<pixmap resource="../../resources.qrc">:/icons/qv2ray.png</pixmap>
<pixmap resource="../../resources.qrc">:/assets/icons/qv2ray.ico</pixmap>
</property>
<property name="scaledContents">
<bool>false</bool>

View File

@ -356,11 +356,7 @@
<item row="1" column="3">
<widget class="QToolButton" name="httpRemoveUserBtn">
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset>
<normaloff>:/icons/remove_connection_btn.png</normaloff>:/icons/remove_connection_btn.png</iconset>
<string>-</string>
</property>
</widget>
</item>
@ -377,11 +373,7 @@
<item row="3" column="3">
<widget class="QToolButton" name="httpAddUserBtn">
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset>
<normaloff>:/icons/add_connection_btn.png</normaloff>:/icons/add_connection_btn.png</iconset>
<string>+</string>
</property>
</widget>
</item>
@ -504,11 +496,7 @@
<item row="1" column="3">
<widget class="QToolButton" name="socksRemoveUserBtn">
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset>
<normaloff>:/icons/remove_connection_btn.png</normaloff>:/icons/remove_connection_btn.png</iconset>
<string>-</string>
</property>
</widget>
</item>
@ -525,11 +513,7 @@
<item row="3" column="3">
<widget class="QToolButton" name="socksAddUserBtn">
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset>
<normaloff>:/icons/add_connection_btn.png</normaloff>:/icons/add_connection_btn.png</iconset>
<string>+</string>
</property>
</widget>
</item>

View File

@ -94,8 +94,8 @@ MainWindow::MainWindow(QWidget *parent):
requestHelper = new QvHttpRequestHelper();
connect(tcpingModel, &QvTCPingModel::PingFinished, this, &MainWindow::onPingFinished);
//
this->setWindowIcon(QIcon(":/icons/qv2ray.png"));
hTray->setIcon(QIcon(currentConfig.uiConfig.useDarkTrayIcon ? ":/icons/ui_dark/tray.png" : ":/icons/ui_light/tray.png"));
this->setWindowIcon(QIcon(":/assets/icons/qv2ray.png"));
hTray->setIcon(QIcon(currentConfig.uiConfig.useDarkTrayIcon ? ":/assets/icons/ui_dark/tray.png" : ":/assets/icons/ui_light/tray.png"));
importConfigButton->setIcon(QICON_R("import.png"));
duplicateBtn->setIcon(QICON_R("duplicate.png"));
removeConfigButton->setIcon(QICON_R("delete.png"));

View File

@ -20,6 +20,7 @@ PreferencesWindow::PreferencesWindow(QWidget *parent) : QDialog(parent),
CurrentConfig()
{
setupUi(this);
textBrowser->setHtml(StringFromFile(new QFile(":/assets/credit.html")));
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
// We add locales
languageComboBox->clear();

View File

@ -42,7 +42,7 @@
<enum>QTabWidget::Rounded</enum>
</property>
<property name="currentIndex">
<number>2</number>
<number>0</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
@ -1470,7 +1470,7 @@
</size>
</property>
<property name="styleSheet">
<string notr="true">image: url(:/icons/qv2ray.ico);</string>
<string notr="true">image: url(:/assets/icons/qv2ray.ico);</string>
</property>
</widget>
</item>
@ -1633,7 +1633,7 @@
</layout>
</item>
<item>
<widget class="QTextEdit" name="textEdit">
<widget class="QTextBrowser" name="textBrowser">
<property name="lineWrapMode">
<enum>QTextEdit::NoWrap</enum>
</property>
@ -1645,24 +1645,7 @@
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'WenQuanYi Micro Hei'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; font-weight:600; color:#d68952;&quot;&gt;This program comes with ABSOLUTELY NO WARRANTY.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; font-weight:600; color:#d68952;&quot;&gt;This is free software, and you are welcome to redistribute it under certain conditions.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (C) 2020 Leroy.H.Y (@lhy0403): Qv2ray Current Developer&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (C) 2019 Hork (@aliyuchang33): Hv2ray Initial Designs &amp;amp; gRPC implementation&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (C) 2019 SOneWinstone (@SoneWinstone): Hv2ray/Qv2ray HTTP Request Helper&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Qv2ray ArtWork designs done by ArielAxionL (@axionl)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;TheBadGateway (@thebadgateway): Qv2ray Russian Translations&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Riko (@rikakomoe): Qv2ray patch 8a8c1a/PR115&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Noto Sans'; color:#d68952;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; font-weight:600; color:#d68952;&quot;&gt;Libraries that have been used in Qv2ray are listed below (Sorted by date added):&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (c) 2020 dridk (@dridk): X2Struct (Apache)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (c) 2011 SCHUTZ Sacha (@dridk): QJsonModel (MIT)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (c) 2020 Nikolaos Ftylitakis (@ftylitak): QZXing (Apache2)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (c) 2016 Singein (@Singein): ScreenShot (MIT)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (c) 2016 Nikhil Marathe (@nikhilm): QHttpServer (MIT)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (c) 2020 Itay Grudev (@itay-grudev): SingleApplication (MIT)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (c) 2020 paceholder (@paceholder): nodeeditor (QNodeEditor modified by lhy0403) (BSD-3-Clause)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MonoSpace'; color:#d68952;&quot;&gt;Copyright (c) 2019 TheWanderingCoel (@TheWanderingCoel): ShadowClash (launchatlogin) (GPLv3)&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'WenQuanYi Micro Hei';&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>

View File

@ -261,13 +261,16 @@
</item>
<item row="1" column="1">
<widget class="QToolBox" name="toolBox">
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="page_2">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>359</width>
<height>529</height>
<height>535</height>
</rect>
</property>
<attribute name="label">
@ -362,7 +365,7 @@
<x>0</x>
<y>0</y>
<width>345</width>
<height>618</height>
<height>607</height>
</rect>
</property>
<attribute name="label">
@ -525,10 +528,6 @@
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset>
<normaloff>:/icons/remove_connection_btn.png</normaloff>:/icons/remove_connection_btn.png</iconset>
</property>
</widget>
</item>
<item row="2" column="1">
@ -549,10 +548,6 @@
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset>
<normaloff>:/icons/add_connection_btn.png</normaloff>:/icons/add_connection_btn.png</iconset>
</property>
</widget>
</item>
</layout>

View File

@ -380,8 +380,8 @@
<location filename="../src/ui/w_InboundEditor.ui" line="267"/>
<location filename="../src/ui/w_InboundEditor.ui" line="274"/>
<location filename="../src/ui/w_InboundEditor.ui" line="335"/>
<location filename="../src/ui/w_InboundEditor.ui" line="486"/>
<location filename="../src/ui/w_InboundEditor.ui" line="695"/>
<location filename="../src/ui/w_InboundEditor.ui" line="478"/>
<location filename="../src/ui/w_InboundEditor.ui" line="679"/>
<source>Enabled</source>
<translation></translation>
</message>
@ -392,7 +392,7 @@
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="312"/>
<location filename="../src/ui/w_InboundEditor.ui" line="652"/>
<location filename="../src/ui/w_InboundEditor.ui" line="636"/>
<source>Timeout</source>
<translation></translation>
</message>
@ -403,131 +403,135 @@
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="342"/>
<location filename="../src/ui/w_InboundEditor.ui" line="476"/>
<location filename="../src/ui/w_InboundEditor.ui" line="672"/>
<location filename="../src/ui/w_InboundEditor.ui" line="759"/>
<location filename="../src/ui/w_InboundEditor.ui" line="468"/>
<location filename="../src/ui/w_InboundEditor.ui" line="656"/>
<location filename="../src/ui/w_InboundEditor.ui" line="743"/>
<source>User Level</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="359"/>
<location filename="../src/ui/w_InboundEditor.ui" line="380"/>
<location filename="../src/ui/w_InboundEditor.ui" line="507"/>
<location filename="../src/ui/w_InboundEditor.ui" line="528"/>
<source>...</source>
<translation></translation>
<location filename="../src/ui/w_InboundEditor.ui" line="499"/>
<source>-</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="373"/>
<location filename="../src/ui/w_InboundEditor.ui" line="521"/>
<location filename="../src/ui/w_InboundEditor.ui" line="369"/>
<location filename="../src/ui/w_InboundEditor.ui" line="509"/>
<source>Password</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="391"/>
<location filename="../src/ui/w_InboundEditor.ui" line="539"/>
<location filename="../src/ui/w_InboundEditor.ui" line="376"/>
<location filename="../src/ui/w_InboundEditor.ui" line="516"/>
<source>+</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="383"/>
<location filename="../src/ui/w_InboundEditor.ui" line="523"/>
<source>Add</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="401"/>
<location filename="../src/ui/w_InboundEditor.ui" line="549"/>
<location filename="../src/ui/w_InboundEditor.ui" line="393"/>
<location filename="../src/ui/w_InboundEditor.ui" line="533"/>
<source>Username</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="408"/>
<location filename="../src/ui/w_InboundEditor.ui" line="556"/>
<location filename="../src/ui/w_InboundEditor.ui" line="400"/>
<location filename="../src/ui/w_InboundEditor.ui" line="540"/>
<source>Accounts</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="424"/>
<location filename="../src/ui/w_InboundEditor.ui" line="416"/>
<source>SOCKS Inbound Settings</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="432"/>
<location filename="../src/ui/w_InboundEditor.ui" line="424"/>
<source>Auth</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="456"/>
<location filename="../src/ui/w_InboundEditor.ui" line="448"/>
<source>Enable UDP</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="466"/>
<location filename="../src/ui/w_InboundEditor.ui" line="458"/>
<source>Local UDP IP</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="493"/>
<location filename="../src/ui/w_InboundEditor.ui" line="485"/>
<source>127.0.0.1</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="572"/>
<location filename="../src/ui/w_InboundEditor.ui" line="556"/>
<source>Dokodemo-Door Inbound Settings</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="578"/>
<location filename="../src/ui/w_InboundEditor.ui" line="562"/>
<source>IP Address</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="588"/>
<location filename="../src/ui/w_InboundEditor.ui" line="572"/>
<source>Not necessary when setting &quot;Follow Redirect&quot;</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="595"/>
<location filename="../src/ui/w_InboundEditor.ui" line="579"/>
<source>Port</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="618"/>
<location filename="../src/ui/w_InboundEditor.ui" line="602"/>
<source>Network</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="630"/>
<location filename="../src/ui/w_InboundEditor.ui" line="614"/>
<source>TCP</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="643"/>
<location filename="../src/ui/w_InboundEditor.ui" line="627"/>
<source>UDP</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="662"/>
<location filename="../src/ui/w_InboundEditor.ui" line="646"/>
<source>Follow Redirect</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="705"/>
<location filename="../src/ui/w_InboundEditor.ui" line="689"/>
<source>If you want to use tProxy, please go to Preference Window to enable this feature.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="719"/>
<location filename="../src/ui/w_InboundEditor.ui" line="703"/>
<source>MTProto Inbound Settings</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="725"/>
<location filename="../src/ui/w_InboundEditor.ui" line="709"/>
<source>EMail Address</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="742"/>
<location filename="../src/ui/w_InboundEditor.ui" line="726"/>
<source>Secret</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_InboundEditor.ui" line="752"/>
<location filename="../src/ui/w_InboundEditor.ui" line="736"/>
<source>SECRET</source>
<translation></translation>
</message>
@ -1431,10 +1435,10 @@
<name>PreferencesWindow</name>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="23"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="181"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="431"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="442"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="453"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="182"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="432"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="443"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="454"/>
<source>Preferences</source>
<translation type="unfinished"></translation>
</message>
@ -1855,13 +1859,13 @@
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1286"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="678"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="679"/>
<source>Bold</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1293"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="679"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="680"/>
<source>Italic</source>
<translation type="unfinished"></translation>
</message>
@ -1930,32 +1934,6 @@
<source>This feature is not stable enough and no documentation is provided, please use it as your own risk!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1644"/>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;WenQuanYi Micro Hei&apos;; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; font-weight:600; color:#d68952;&quot;&gt;This program comes with ABSOLUTELY NO WARRANTY.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; font-weight:600; color:#d68952;&quot;&gt;This is free software, and you are welcome to redistribute it under certain conditions.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (C) 2020 Leroy.H.Y (@lhy0403): Qv2ray Current Developer&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (C) 2019 Hork (@aliyuchang33): Hv2ray Initial Designs &amp;amp; gRPC implementation&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (C) 2019 SOneWinstone (@SoneWinstone): Hv2ray/Qv2ray HTTP Request Helper&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Qv2ray ArtWork designs done by ArielAxionL (@axionl)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;TheBadGateway (@thebadgateway): Qv2ray Russian Translations&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Riko (@rikakomoe): Qv2ray patch 8a8c1a/PR115&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:&apos;Noto Sans&apos;; color:#d68952;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; font-weight:600; color:#d68952;&quot;&gt;Libraries that have been used in Qv2ray are listed below (Sorted by date added):&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (c) 2020 dridk (@dridk): X2Struct (Apache)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (c) 2011 SCHUTZ Sacha (@dridk): QJsonModel (MIT)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (c) 2020 Nikolaos Ftylitakis (@ftylitak): QZXing (Apache2)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (c) 2016 Singein (@Singein): ScreenShot (MIT)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (c) 2016 Nikhil Marathe (@nikhilm): QHttpServer (MIT)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (c) 2020 Itay Grudev (@itay-grudev): SingleApplication (MIT)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (c) 2020 paceholder (@paceholder): nodeeditor (QNodeEditor modified by lhy0403) (BSD-3-Clause)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:&apos;MonoSpace&apos;; color:#d68952;&quot;&gt;Copyright (c) 2019 TheWanderingCoel (@TheWanderingCoel): ShadowClash (launchatlogin) (GPLv3)&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1453"/>
<source>About</source>
@ -1997,126 +1975,135 @@ p, li { white-space: pre-wrap; }
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1674"/>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1644"/>
<source>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;WenQuanYi Micro Hei&apos;; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:&apos;WenQuanYi Micro Hei&apos;;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1657"/>
<source>Ignore Next Version</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1681"/>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1664"/>
<source>Cancel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1722"/>
<location filename="../src/ui/w_PreferencesWindow.ui" line="1705"/>
<source>About Qt</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="48"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="49"/>
<source>Use Darkmode Theme</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="120"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="121"/>
<source>Page</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="120"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="121"/>
<source>Item(s)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="181"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="182"/>
<source>Port numbers cannot be the same</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="301"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="302"/>
<source>Open v2ray assets folder</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="311"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="312"/>
<source>Open v2ray core file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="370"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="415"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="371"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="416"/>
<source>Enable tProxy Support</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="371"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="372"/>
<source>This will append capabilities to the v2ray executable.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="372"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="373"/>
<source>Qv2ray will copy your v2ray core to this path: </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="373"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="374"/>
<source>If anything goes wrong after enabling this, please refer to issue #57 or the link below:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="416"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="417"/>
<source>Qv2ray cannot copy one or both v2ray files from: </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="418"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="419"/>
<source>to this path: </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="431"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="442"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="432"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="443"/>
<source>Failed to setcap onto v2ray executable. You may need to run `setcap` manually.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="453"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="454"/>
<source>tProxy is not supported on macOS and Windows</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="756"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="757"/>
<source>Dark Mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="756"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="757"/>
<source>Please restart Qv2ray to fully apply this feature.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="827"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="828"/>
<source>Select GFWList in base64</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="833"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="834"/>
<source>Download GFWList</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="833"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="834"/>
<source>Successfully downloaded GFWList.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="909"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="921"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="910"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="922"/>
<source>Start with boot</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="909"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="921"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="910"/>
<location filename="../src/ui/w_PreferencesWindow.cpp" line="922"/>
<source>Failed to set auto start option.</source>
<translation type="unfinished"></translation>
</message>
@ -2499,23 +2486,23 @@ p, li { white-space: pre-wrap; }
<name>RouteEditor</name>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="20"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="412"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="415"/>
<location filename="../src/ui/w_RoutesEditor.cpp" line="554"/>
<source>Route Editor</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="570"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="565"/>
<source>Route Detail Settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="583"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="578"/>
<source>Source IP Matches</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="631"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="626"/>
<source>Status</source>
<translation></translation>
</message>
@ -2526,7 +2513,7 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="160"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="485"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="488"/>
<source>Port</source>
<translation></translation>
</message>
@ -2567,7 +2554,7 @@ p, li { white-space: pre-wrap; }
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="390"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="393"/>
<source>Enabled</source>
<translation></translation>
</message>
@ -2582,49 +2569,49 @@ p, li { white-space: pre-wrap; }
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="506"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="509"/>
<source>Use Balancers</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="526"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="550"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="529"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="549"/>
<source>...</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="603"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="598"/>
<source>Target IP List</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="596"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="591"/>
<source>Target Domain List</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="421"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="424"/>
<source>Network</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="430"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="433"/>
<source>TCP</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="437"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="440"/>
<source>UDP</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="444"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="447"/>
<source>Both</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="118"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="453"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="456"/>
<source>Protocol</source>
<translation></translation>
</message>
@ -2689,77 +2676,77 @@ p, li { white-space: pre-wrap; }
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="274"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="277"/>
<source>General Settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="280"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="283"/>
<source>GroupBox</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="286"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="289"/>
<source>Domain Strategy</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="312"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="315"/>
<source>Default Outbound</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="325"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="328"/>
<source>Rule Order Settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="331"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="334"/>
<source>Drag and drop to re-order the rules.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="369"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="372"/>
<source>Rule Settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="380"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="383"/>
<source>Rule Status</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="397"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="400"/>
<source>Rule Tag</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="462"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="465"/>
<source>HTTP</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="469"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="472"/>
<source>TLS</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="476"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="479"/>
<source>BitTorrent</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="492"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="495"/>
<source>e.g. 80, 443, 8000-8080</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="499"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="502"/>
<source>Balancers</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/w_RoutesEditor.ui" line="576"/>
<location filename="../src/ui/w_RoutesEditor.ui" line="571"/>
<source>Users List</source>
<translation></translation>
</message>