!107 实现需求

Merge pull request !107 from 杨敏/openkylin/huanghe
This commit is contained in:
杨敏 2024-11-13 12:26:39 +00:00 committed by Gitee
commit 5037bf20d9
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
71 changed files with 1502 additions and 927 deletions

9
debian/changelog vendored
View File

@ -1,3 +1,12 @@
ukui-screensaver (4.20.0.0-ok1) huanghe; urgency=medium
* BUG号
* 需求号:#18336 登录锁屏生物特征验证流程优化
* 其他改动说明:无
* 其他改动影响域:无
-- Yang Min <yangmin@kylinos.cn> Wed, 13 Nov 2024 20:23:54 +0800
ukui-screensaver (4.10.0.0-ok34~1031) nile; urgency=medium ukui-screensaver (4.10.0.0-ok34~1031) nile; urgency=medium
* BUG号#IB0Q93【wlcom】【快捷键】更新版本后重启进系统无法使用快捷键重启后正常使用但是之后进锁屏再解锁快捷键失效 * BUG号#IB0Q93【wlcom】【快捷键】更新版本后重启进系统无法使用快捷键重启后正常使用但是之后进锁屏再解锁快捷键失效

View File

@ -12,195 +12,195 @@
<context> <context>
<name>AuthDialog</name> <name>AuthDialog</name>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/> <location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Verify face recognition or enter password to unlock</source> <source>Facial recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/> <location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Press fingerprint or enter password to unlock</source> <source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/> <location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/> <location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Verify finger vein or enter password to unlock</source> <source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/> <location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Verify iris or enter password to unlock</source> <source>Iris recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/> <location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -438,7 +438,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -559,58 +559,58 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation></translation> <translation></translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation>iris </translation> <translation type="vanished">iris </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>%1 </translation> <translation>%1 </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>%1 </translation> <translation>%1 </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation>FingerVein</translation> <translation>FingerVein</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation>Iris</translation> <translation>Iris</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation></translation> <translation></translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation></translation> <translation></translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>%1 %2</translation> <translation>%1 %2</translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished"> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation></translation> <translation></translation>
</message> </message>
@ -1693,7 +1717,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2086,53 +2110,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2141,7 +2165,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation></translation> <translation></translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation>Wiederholen</translation> <translation>Wiederholen</translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation>Versuchen Sie es in %1 Minuten erneut.</translation> <translation>Versuchen Sie es in %1 Minuten erneut.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation>Bitte versuchen Sie es in %1 Sekunden erneut.</translation> <translation>Bitte versuchen Sie es in %1 Sekunden erneut.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation>Das Konto wurde dauerhaft gesperrt.</translation> <translation>Das Konto wurde dauerhaft gesperrt.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation>Überprüfen Sie die Gesichtserkennung oder geben Sie das Passwort ein, um zu entsperren</translation> <translation type="vanished">Überprüfen Sie die Gesichtserkennung oder geben Sie das Passwort ein, um zu entsperren</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation>Drücken Sie den Fingerabdruck oder geben Sie das Passwort ein, um zu entsperren</translation> <translation type="vanished">Drücken Sie den Fingerabdruck oder geben Sie das Passwort ein, um zu entsperren</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation>Überprüfen Sie den Stimmabdruck oder geben Sie das Passwort ein, um zu entsperren</translation> <translation type="vanished">Überprüfen Sie den Stimmabdruck oder geben Sie das Passwort ein, um zu entsperren</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation>Überprüfen Sie die Fingervene oder geben Sie das Passwort ein, um zu entsperren</translation> <translation type="vanished">Überprüfen Sie die Fingervene oder geben Sie das Passwort ein, um zu entsperren</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation>Überprüfen Sie die Iris oder geben Sie das Passwort ein, um zu entsperren</translation> <translation type="vanished">Überprüfen Sie die Iris oder geben Sie das Passwort ein, um zu entsperren</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation>Passwort eingeben</translation> <translation>Passwort eingeben</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation type="unfinished">Nutzername</translation> <translation type="unfinished">Nutzername</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>%1 konnte nicht verifiziert werden, bitte geben Sie das Kennwort zum Entsperren ein</translation> <translation>%1 konnte nicht verifiziert werden, bitte geben Sie das Kennwort zum Entsperren ein</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>%1 kann nicht verifiziert werden, bitte geben Sie das Kennwort zum Entsperren ein</translation> <translation>%1 kann nicht verifiziert werden, bitte geben Sie das Kennwort zum Entsperren ein</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation>Ungewöhnliches Netzwerk</translation> <translation>Ungewöhnliches Netzwerk</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished">Ukey</translation> <translation type="unfinished">Ukey</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished">QRCode</translation> <translation type="unfinished">QRCode</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation>Das Kennwort darf nicht leer sein.</translation> <translation>Das Kennwort darf nicht leer sein.</translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>%1 konnte nicht verifiziert werden, Sie haben immer noch %2 Überprüfungsmöglichkeiten</translation> <translation>%1 konnte nicht verifiziert werden, Sie haben immer noch %2 Überprüfungsmöglichkeiten</translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation>Authentifizierungsfehler, Bitte versuchen Sie es erneut</translation> <translation>Authentifizierungsfehler, Bitte versuchen Sie es erneut</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation>Verwenden Sie den gebundenen Wechat-Scan-Code oder geben Sie das Passwort zum Entsperren ein</translation> <translation type="vanished">Verwenden Sie den gebundenen Wechat-Scan-Code oder geben Sie das Passwort zum Entsperren ein</translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished">Passwort </translation> <translation type="vanished">Passwort </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation>Einloggen</translation> <translation>Einloggen</translation>
</message> </message>
@ -1704,7 +1728,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation>OKAY</translation> <translation>OKAY</translation>
</message> </message>
@ -2090,53 +2114,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation>Login-Optionen</translation> <translation>Login-Optionen</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation>Passwort</translation> <translation>Passwort</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation>Andere</translation> <translation>Andere</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished">Ukey</translation> <translation type="unfinished">Ukey</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished">QRCode</translation> <translation type="unfinished">QRCode</translation>
</message> </message>
@ -2145,7 +2169,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation>Gerät identifizieren entfernt!</translation> <translation>Gerät identifizieren entfernt!</translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation>Reintentar</translation> <translation>Reintentar</translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation>Inténtelo de nuevo en %1 minutos.</translation> <translation>Inténtelo de nuevo en %1 minutos.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation>Inténtelo de nuevo en %1 segundos.</translation> <translation>Inténtelo de nuevo en %1 segundos.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation>Cuenta bloqueada permanentemente.</translation> <translation>Cuenta bloqueada permanentemente.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation>Verifique el reconocimiento facial o ingrese la contraseña para desbloquear</translation> <translation type="vanished">Verifique el reconocimiento facial o ingrese la contraseña para desbloquear</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation>Presione la huella dactilar o ingrese la contraseña para desbloquear</translation> <translation type="vanished">Presione la huella dactilar o ingrese la contraseña para desbloquear</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation>Verifica la huella de voz o ingresa la contraseña para desbloquear</translation> <translation type="vanished">Verifica la huella de voz o ingresa la contraseña para desbloquear</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation>Verifique la vena del dedo o ingrese la contraseña para desbloquear</translation> <translation type="vanished">Verifique la vena del dedo o ingrese la contraseña para desbloquear</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation>Verifique el iris o ingrese la contraseña para desbloquear</translation> <translation type="vanished">Verifique el iris o ingrese la contraseña para desbloquear</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation>Contraseña de entrada</translation> <translation>Contraseña de entrada</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation type="unfinished">Nombre de usuario</translation> <translation type="unfinished">Nombre de usuario</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>No se pudo verificar %1, ingrese la contraseña para desbloquear</translation> <translation>No se pudo verificar %1, ingrese la contraseña para desbloquear</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>No se puede verificar %1, ingrese la contraseña para desbloquear</translation> <translation>No se puede verificar %1, ingrese la contraseña para desbloquear</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation>Red anormal</translation> <translation>Red anormal</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished">Ukey</translation> <translation type="unfinished">Ukey</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished">QRCode</translation> <translation type="unfinished">QRCode</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation>La contraseña no puede estar vacía</translation> <translation>La contraseña no puede estar vacía</translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>No se pudo verificar %1, todavía tiene %2 oportunidades de verificación</translation> <translation>No se pudo verificar %1, todavía tiene %2 oportunidades de verificación</translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation>Error de autenticación, inténtelo de nuevo</translation> <translation>Error de autenticación, inténtelo de nuevo</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation>Use el código de escaneo de wechat vinculado o ingrese la contraseña para desbloquear</translation> <translation type="vanished">Use el código de escaneo de wechat vinculado o ingrese la contraseña para desbloquear</translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished">Contraseña </translation> <translation type="vanished">Contraseña </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation>Iniciar sesión</translation> <translation>Iniciar sesión</translation>
</message> </message>
@ -1704,7 +1728,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation>De acuerdo</translation> <translation>De acuerdo</translation>
</message> </message>
@ -2094,53 +2118,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation>Opciones de inicio de sesión</translation> <translation>Opciones de inicio de sesión</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation>Contraseña</translation> <translation>Contraseña</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation>Otro</translation> <translation>Otro</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished">Ukey</translation> <translation type="unfinished">Ukey</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished">QRCode</translation> <translation type="unfinished">QRCode</translation>
</message> </message>
@ -2149,7 +2173,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation>¡Identifique el dispositivo eliminado!</translation> <translation>¡Identifique el dispositivo eliminado!</translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation>Réessayer</translation> <translation>Réessayer</translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation>Veuillez réessayer dans %1 minutes.</translation> <translation>Veuillez réessayer dans %1 minutes.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation>Veuillez réessayer dans %1 secondes.</translation> <translation>Veuillez réessayer dans %1 secondes.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation>Compte verrouillé définitivement.</translation> <translation>Compte verrouillé définitivement.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation>Vérifier la reconnaissance faciale ou saisir le mot de passe pour déverrouiller</translation> <translation type="vanished">Vérifier la reconnaissance faciale ou saisir le mot de passe pour déverrouiller</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation>Appuyez sur lempreinte digitale ou entrez le mot de passe pour déverrouiller</translation> <translation type="vanished">Appuyez sur lempreinte digitale ou entrez le mot de passe pour déverrouiller</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation>Vérifier lempreinte vocale ou saisir le mot de passe pour déverrouiller</translation> <translation type="vanished">Vérifier lempreinte vocale ou saisir le mot de passe pour déverrouiller</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation>Vérifiez la veine du doigt ou entrez le mot de passe pour déverrouiller</translation> <translation type="vanished">Vérifiez la veine du doigt ou entrez le mot de passe pour déverrouiller</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation>Vérifiez liris ou entrez le mot de passe pour déverrouiller</translation> <translation type="vanished">Vérifiez liris ou entrez le mot de passe pour déverrouiller</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation>Mot de passe dentrée</translation> <translation>Mot de passe dentrée</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation type="unfinished">Nom dutilisateur</translation> <translation type="unfinished">Nom dutilisateur</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>Impossible de vérifier %1, veuillez entrer le mot de passe pour déverrouiller</translation> <translation>Impossible de vérifier %1, veuillez entrer le mot de passe pour déverrouiller</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>Impossible de vérifier %1, veuillez entrer le mot de passe pour déverrouiller</translation> <translation>Impossible de vérifier %1, veuillez entrer le mot de passe pour déverrouiller</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation>Réseau anormal</translation> <translation>Réseau anormal</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished">Ukey (en anglais seulement)</translation> <translation type="unfinished">Ukey (en anglais seulement)</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished">QRCode</translation> <translation type="unfinished">QRCode</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation>Le mot de passe ne peut pas être vide</translation> <translation>Le mot de passe ne peut pas être vide</translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>Échec de la vérification %1, vous avez encore %2 possibilités de vérification</translation> <translation>Échec de la vérification %1, vous avez encore %2 possibilités de vérification</translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation>Échec de lauthentification, veuillez réessayer</translation> <translation>Échec de lauthentification, veuillez réessayer</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation>Utilisez le code danalyse wechat lié ou entrez le mot de passe pour déverrouiller</translation> <translation type="vanished">Utilisez le code danalyse wechat lié ou entrez le mot de passe pour déverrouiller</translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished">Mot de passe </translation> <translation type="vanished">Mot de passe </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation>Connectez-vous</translation> <translation>Connectez-vous</translation>
</message> </message>
@ -1704,7 +1728,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation>DACCORD</translation> <translation>DACCORD</translation>
</message> </message>
@ -2090,53 +2114,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation>Options de connexion</translation> <translation>Options de connexion</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation>Mot de passe</translation> <translation>Mot de passe</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation>Autre</translation> <translation>Autre</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished">Ukey (en anglais seulement)</translation> <translation type="unfinished">Ukey (en anglais seulement)</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished">QRCode</translation> <translation type="unfinished">QRCode</translation>
</message> </message>
@ -2145,7 +2169,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation>Identifier lappareil supprimé !</translation> <translation>Identifier lappareil supprimé !</translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation>قاتە قاتە سىناۋ</translation> <translation>قاتە قاتە سىناۋ</translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation>.ٴسىز 1% مينۋت ٸشٸندە قاتە سىناپ كور</translation> <translation>.ٴسىز 1% مينۋت ٸشٸندە قاتە سىناپ كور</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation>.ٴسىز 1% سەكونت ٸشٸندە قاتە سىناپ كور</translation> <translation>.ٴسىز 1% سەكونت ٸشٸندە قاتە سىناپ كور</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation>.ەسەپات ماڭگىلىك قۇلىپتالادى</translation> <translation>.ەسەپات ماڭگىلىك قۇلىپتالادى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation>چىراي تانىسن دالەلدەۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ</translation> <translation type="vanished">چىراي تانىسن دالەلدەۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation>مەيمان (اتسىز تٸزٸمدەۇ)</translation> <translation>مەيمان (اتسىز تٸزٸمدەۇ)</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation>بارماقشى ٴٸزدٸ باسٸۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ</translation> <translation type="vanished">بارماقشى ٴٸزدٸ باسٸۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation>اۋا ٴٸزدٸ دالەلدەۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ</translation> <translation type="vanished">اۋا ٴٸزدٸ دالەلدەۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation>بارماقشى ٴٸزٸ ارقىلى انىقتاۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ</translation> <translation type="vanished">بارماقشى ٴٸزٸ ارقىلى انىقتاۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation>نى انىقتاۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ Iris</translation> <translation type="vanished">نى انىقتاۋ ياكي قۇپيا نومەر كىرگىزۋ ارقىلى قۇلىپ ٸشٸۋ Iris</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation>قۇپيا نومەر</translation> <translation>قۇپيا نومەر</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation>قۇپيا نۇمىردى كىرگىزىڭىز</translation> <translation>قۇپيا نۇمىردى كىرگىزىڭىز</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation>ابونت مى</translation> <translation>ابونت مى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation>پايدالانۋشٸ اتٸ قاتە كىرگىزىلدى</translation> <translation>پايدالانۋشٸ اتٸ قاتە كىرگىزىلدى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation>كىرۋ</translation> <translation>كىرۋ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>دالەلدەۋ 1% جەڭىلىپ قالدى، قۇپيا نومەر كىرگىزىڭىز</translation> <translation>دالەلدەۋ 1% جەڭىلىپ قالدى، قۇپيا نومەر كىرگىزىڭىز</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>دالەلدەۋگە بولمادى 1%، قۇپيا نۇمىردى كىرەۈزۈپ قۇلىبىن ٴٸشڭٸز</translation> <translation>دالەلدەۋگە بولمادى 1%، قۇپيا نۇمىردى كىرەۈزۈپ قۇلىبىن ٴٸشڭٸز</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation>بينورمال تور</translation> <translation>بينورمال تور</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation>چىراي تونۇتۇشنىڭ ساقتاۋ ۋاقىتى ٸشٸپ كەتتى، جاڭالاۋدى تۇرتىپ ياكي قۇپيا نومەر كىرەۈزۈپ قۇلىبىن ٴٸشڭٸز.</translation> <translation>چىراي تونۇتۇشنىڭ ساقتاۋ ۋاقىتى ٸشٸپ كەتتى، جاڭالاۋدى تۇرتىپ ياكي قۇپيا نومەر كىرەۈزۈپ قۇلىبىن ٴٸشڭٸز.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation>بارماقشى ٴٸزٸ</translation> <translation>بارماقشى ٴٸزٸ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation>بارماقشى ۋېناسى</translation> <translation>بارماقشى ۋېناسى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation>تۇستى پەردە</translation> <translation>تۇستى پەردە</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation>ادام بەتى</translation> <translation>ادام بەتى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation>اۋا ٴٸزٸ</translation> <translation>اۋا ٴٸزٸ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation>قۇپيا كىلت</translation> <translation>قۇپيا كىلت</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation>ەكٸلٸك رازمەر</translation> <translation>ەكٸلٸك رازمەر</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation>بارماقشى ٴٸزٸ</translation> <translation>بارماقشى ٴٸزٸ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation>بارماقشى ۋېنا تومۇزى</translation> <translation>بارماقشى ۋېنا تومۇزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation>تۇستى پەردە</translation> <translation>تۇستى پەردە</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation>ادام بەتى</translation> <translation>ادام بەتى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation>اۋا ٴٸزٸ</translation> <translation>اۋا ٴٸزٸ</translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation>قۇپيا نۇمىردى بوس قويۋعا بولمايدى</translation> <translation>قۇپيا نۇمىردى بوس قويۋعا بولمايدى</translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>دالەلدەۋ 1% جەڭىلىپ قالدى، جانە 2% دالەلدەۋ ورايڭىز بار</translation> <translation>دالەلدەۋ 1% جەڭىلىپ قالدى، جانە 2% دالەلدەۋ ورايڭىز بار</translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation>دالەلدەۋ جەڭىلىپ قالدى، قاتە سىناپ كور</translation> <translation>دالەلدەۋ جەڭىلىپ قالدى، قاتە سىناپ كور</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation>بايلانعان ئۈندىدارنى كەسكىندەۋ بەلگىسى ياكي قۇپيا نۇمىردى كىرەۈزۈپ قۇلىپ ٸشٸۋ</translation> <translation type="vanished">بايلانعان ئۈندىدارنى كەسكىندەۋ بەلگىسى ياكي قۇپيا نۇمىردى كىرەۈزۈپ قۇلىپ ٸشٸۋ</translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished"> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation>كىرۋ</translation> <translation>كىرۋ</translation>
</message> </message>
@ -1684,7 +1708,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2066,53 +2090,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation>كىرۋ تالدانبالارٸ</translation> <translation>كىرۋ تالدانبالارٸ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation>قۇپيا نومەر</translation> <translation>قۇپيا نومەر</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation>باسقا</translation> <translation>باسقا</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation>بارماقشى ٴٸزٸ</translation> <translation>بارماقشى ٴٸزٸ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation>بارماقشى ۋېناسى</translation> <translation>بارماقشى ۋېناسى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation>تۇستى پەردە</translation> <translation>تۇستى پەردە</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation>ادام بەتى</translation> <translation>ادام بەتى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation>اۋا ٴٸزٸ</translation> <translation>اۋا ٴٸزٸ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation>قۇپيا كىلت</translation> <translation>قۇپيا كىلت</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation>ەكٸلٸك رازمەر</translation> <translation>ەكٸلٸك رازمەر</translation>
</message> </message>
@ -2121,7 +2145,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation>!اسبابٸن پارىقتاندىرۋ چىقىرىۋېتىلدى</translation> <translation>!اسبابٸن پارىقتاندىرۋ چىقىرىۋېتىلدى</translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation>قايرا قايرا سىنوو</translation> <translation>قايرا قايرا سىنوو</translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation>.سىز 1% مىنۇت ىچىندە قايرا سىناپ باعىڭ</translation> <translation>.سىز 1% مىنۇت ىچىندە قايرا سىناپ باعىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation>.سىز 1% سىكونت ىچىندە قايرا سىناپ باعىڭ</translation> <translation>.سىز 1% سىكونت ىچىندە قايرا سىناپ باعىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation>.ەسابات تۉبۅلۉك قۇلۇپلىنىدۇ</translation> <translation>.ەسابات تۉبۅلۉك قۇلۇپلىنىدۇ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation>چىراي تاانىشتى دالىلدۅ كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ</translation> <translation type="vanished">چىراي تاانىشتى دالىلدۅ كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation>قونوق (اتى جوق تىزىمدەتىش )</translation> <translation>قونوق (اتى جوق تىزىمدەتىش )</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation>بارماق ىزىن باسۇۇدا كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ</translation> <translation type="vanished">بارماق ىزىن باسۇۇدا كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation>دووش ىزىن دالىلدۅ كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ</translation> <translation type="vanished">دووش ىزىن دالىلدۅ كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation>بارماق ئزى ارقىلۇۇ انىقتاش كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ</translation> <translation type="vanished">بارماق ئزى ارقىلۇۇ انىقتاش كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation>نى انىقتاش كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ Iris</translation> <translation type="vanished">نى انىقتاش كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىرگىزۉۉ ارقىلۇۇ قۇلپ اچۇۇ Iris</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation>جاشىرۇۇن نومۇر</translation> <translation>جاشىرۇۇن نومۇر</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation>جاشىرۇۇن نومۇردۇ كىرگىزىڭ</translation> <translation>جاشىرۇۇن نومۇردۇ كىرگىزىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation>كەرەكتۅۅچۉ ناامى</translation> <translation>كەرەكتۅۅچۉ ناامى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation>ىشتەتۉۉچۉ اتى قاتاا كىرگىزىلدى</translation> <translation>ىشتەتۉۉچۉ اتى قاتاا كىرگىزىلدى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation>كىرۉۉ</translation> <translation>كىرۉۉ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>دالىلدۅ 1% جەڭىلۉۉ بولدۇ ، جاشىرۇۇن نومۇر كىرگىزىڭ</translation> <translation>دالىلدۅ 1% جەڭىلۉۉ بولدۇ ، جاشىرۇۇن نومۇر كىرگىزىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>دالىلدۅۅگۅ بولبودۇ 1%، جاشىرۇۇن نومۇردۇ كىيىرىپ قۇلۇپنى اچىڭ</translation> <translation>دالىلدۅۅگۅ بولبودۇ 1%، جاشىرۇۇن نومۇردۇ كىيىرىپ قۇلۇپنى اچىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation>بۅتۅنچۅ تور</translation> <translation>بۅتۅنچۅ تور</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation>چىراي تونۇتۇشنىڭ ساقتوو ۇباقتى اشىپ كەتتى، جاڭىلوونۇ چەگىپ كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىيىرىپ قۇلۇپنى اچىڭ.</translation> <translation>چىراي تونۇتۇشنىڭ ساقتوو ۇباقتى اشىپ كەتتى، جاڭىلوونۇ چەگىپ كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇر كىيىرىپ قۇلۇپنى اچىڭ.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation>بارماق ئزى</translation> <translation>بارماق ئزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation>بارماق ۋېناسى</translation> <translation>بارماق ۋېناسى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation>رەڭدار پاردا</translation> <translation>رەڭدار پاردا</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation>ادام بەتى</translation> <translation>ادام بەتى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation>دووش ئزى</translation> <translation>دووش ئزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation>جاشىرۇۇن اچقىچ</translation> <translation>جاشىرۇۇن اچقىچ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation>ەكىلىك قۇپۇيا نومۇر</translation> <translation>ەكىلىك قۇپۇيا نومۇر</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation>بارماق ئزى</translation> <translation>بارماق ئزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation>بارماق ۋېنا تومۇزى</translation> <translation>بارماق ۋېنا تومۇزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation>رەڭدار پاردا</translation> <translation>رەڭدار پاردا</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation>ادام بەتى</translation> <translation>ادام بەتى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation>دووش ئزى</translation> <translation>دووش ئزى</translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation>جاشىرۇۇن نومۇردۇ بوش ،بەكەر قويۇشقا بولبويت</translation> <translation>جاشىرۇۇن نومۇردۇ بوش ،بەكەر قويۇشقا بولبويت</translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>دالىلدۅ 1% جەڭىلۉۉ بولدۇ ، داعى 2% دالىلدۅ وڭۇتۇڭۇز بار</translation> <translation>دالىلدۅ 1% جەڭىلۉۉ بولدۇ ، داعى 2% دالىلدۅ وڭۇتۇڭۇز بار</translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation>دالىلدۅ جەڭىلۉۉ بولدۇ ، قايرا سىناپ باعىڭ</translation> <translation>دالىلدۅ جەڭىلۉۉ بولدۇ ، قايرا سىناپ باعىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation>بايلانعان ئۈندىدارنى ىسكاننىردوو قۇپۇيا نومۇرۇ كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇرۇن كىيىرىپ قۇلپ اچۇۇ</translation> <translation type="vanished">بايلانعان ئۈندىدارنى ىسكاننىردوو قۇپۇيا نومۇرۇ كۅرۉنۉشتۅرۉ جاشىرۇۇن نومۇرۇن كىيىرىپ قۇلپ اچۇۇ</translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished"> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation>كىرۉۉ</translation> <translation>كىرۉۉ</translation>
</message> </message>
@ -1684,7 +1708,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2066,53 +2090,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation>كىرۉۉ تاندالمالارى</translation> <translation>كىرۉۉ تاندالمالارى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation>جاشىرۇۇن نومۇر</translation> <translation>جاشىرۇۇن نومۇر</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation>باشقا</translation> <translation>باشقا</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation>بارماق ئزى</translation> <translation>بارماق ئزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation>بارماق ۋېناسى</translation> <translation>بارماق ۋېناسى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation>رەڭدار پاردا</translation> <translation>رەڭدار پاردا</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation>ادام بەتى</translation> <translation>ادام بەتى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation>دووش ئزى</translation> <translation>دووش ئزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation>جاشىرۇۇن اچقىچ</translation> <translation>جاشىرۇۇن اچقىچ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation>ەكىلىك قۇپۇيا نومۇر</translation> <translation>ەكىلىك قۇپۇيا نومۇر</translation>
</message> </message>
@ -2121,7 +2145,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation>!اسپاپتى ايىرمالاندىرىش چىقىرىۋېتىلدى</translation> <translation>!اسپاپتى ايىرمالاندىرىش چىقىرىۋېتىلدى</translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation> </translation> <translation> </translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation>%1 </translation> <translation>%1 </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation>%1 </translation> <translation>%1 </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation> !</translation> <translation> !</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>%1 </translation> <translation>%1 </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>%1/ </translation> <translation>%1/ </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation> </translation> <translation> </translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation> </translation> <translation> </translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>%1/ %2 </translation> <translation>%1/ %2 </translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished"> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation> </translation> <translation> </translation>
</message> </message>
@ -1688,7 +1712,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation> </translation> <translation> </translation>
</message> </message>
@ -2089,53 +2113,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation> </translation> <translation> </translation>
</message> </message>
@ -2144,7 +2168,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation> !</translation> <translation> !</translation>
</message> </message>

View File

@ -70,30 +70,6 @@
<source>Login</source> <source>Login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Verify face recognition or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Press fingerprint or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Verify voiceprint or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Verify finger vein or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Verify iris or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@ -182,6 +158,30 @@
<source>Password:</source> <source>Password:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>BatteryWidget</name> <name>BatteryWidget</name>

View File

@ -70,30 +70,6 @@
<source>Login</source> <source>Login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Verify face recognition or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Press fingerprint or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Verify voiceprint or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Verify finger vein or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Verify iris or enter password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@ -182,6 +158,30 @@
<source>Password:</source> <source>Password:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>BatteryWidget</name> <name>BatteryWidget</name>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">Parola</translation> <translation type="obsolete">Parola</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation type="unfinished">Yeniden Dene</translation> <translation type="unfinished">Yeniden Dene</translation>
</message> </message>
@ -49,190 +49,190 @@
<translation type="vanished">Kimlik doğrulama hatası, hala %1 kalan denemen var</translation> <translation type="vanished">Kimlik doğrulama hatası, hala %1 kalan denemen var</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation type="unfinished">Misafir</translation> <translation type="unfinished">Misafir</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/> <location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Verify face recognition or enter password to unlock</source> <source>Facial recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/> <location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Press fingerprint or enter password to unlock</source> <source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/> <location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/> <location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Verify finger vein or enter password to unlock</source> <source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/> <location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Verify iris or enter password to unlock</source> <source>Iris recognition to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/> <location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished">Parmak İzi</translation> <translation type="unfinished">Parmak İzi</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished">Göz</translation> <translation type="unfinished">Göz</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished">Yüz</translation> <translation type="unfinished">Yüz</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished">Ses İzi</translation> <translation type="unfinished">Ses İzi</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -629,7 +629,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation type="unfinished">Tamam</translation> <translation type="unfinished">Tamam</translation>
</message> </message>
@ -762,58 +762,58 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation type="unfinished">Parola</translation> <translation type="unfinished">Parola</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation type="unfinished">Parmak İzi</translation> <translation type="unfinished">Parmak İzi</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation type="unfinished">Göz</translation> <translation type="unfinished">Göz</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation type="unfinished">Yüz</translation> <translation type="unfinished">Yüz</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation type="unfinished">Ses İzi</translation> <translation type="unfinished">Ses İzi</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation>قايتا قايتا سىناش</translation> <translation>قايتا قايتا سىناش</translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation>.سىز 1% مىنۇت ئىچىدە قايتا سىناپ بېقىڭ</translation> <translation>.سىز 1% مىنۇت ئىچىدە قايتا سىناپ بېقىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation>.سىز 1% سېكۇنت ئىچىدە قايتا سىناپ بېقىڭ</translation> <translation>.سىز 1% سېكۇنت ئىچىدە قايتا سىناپ بېقىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation>.ھېسابات مەڭگۈلۈك قۇلۇپلىنىدۇ</translation> <translation>.ھېسابات مەڭگۈلۈك قۇلۇپلىنىدۇ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation>چىراي تونۇشنى دەلىللەش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش</translation> <translation type="vanished">چىراي تونۇشنى دەلىللەش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation>مېھمان (نامسىز تىزىملىتىش)</translation> <translation>مېھمان (نامسىز تىزىملىتىش)</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation>بارماق ئىزىنى بېسىش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش</translation> <translation type="vanished">بارماق ئىزىنى بېسىش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation>ئاۋاز ئىزىنى دەلىللەش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش</translation> <translation type="vanished">ئاۋاز ئىزىنى دەلىللەش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation>بارماق ئىزى ئارقىلىق ئېنىقلاش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش</translation> <translation type="vanished">بارماق ئىزى ئارقىلىق ئېنىقلاش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation>نى ئېنىقلاش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش Iris</translation> <translation type="vanished">نى ئېنىقلاش ياكى مەخپىي نومۇر كىرگۈزۈش ئارقىلىق قۇلۇپ ئېچىش Iris</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation>مەخپىي نومۇر</translation> <translation>مەخپىي نومۇر</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation>مەخپىي نومۇرنى كىرگۈزۈڭ</translation> <translation>مەخپىي نومۇرنى كىرگۈزۈڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation>ئابۇنت نامى</translation> <translation>ئابۇنت نامى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation>ئىشلەتكۈچى ئىسمى خاتا كىرگۈزۈلدى</translation> <translation>ئىشلەتكۈچى ئىسمى خاتا كىرگۈزۈلدى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation>كىرىش</translation> <translation>كىرىش</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>دەلىللەش 1% مەغلۇپ بولدى، مەخپىي نومۇر كىرگۈزۈڭ</translation> <translation>دەلىللەش 1% مەغلۇپ بولدى، مەخپىي نومۇر كىرگۈزۈڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>دەلىللەشكە بولمىدى 1%، مەخپىي نومۇرنى كىرگۈزۈپ قۇلۇپنى ئېچىڭ</translation> <translation>دەلىللەشكە بولمىدى 1%، مەخپىي نومۇرنى كىرگۈزۈپ قۇلۇپنى ئېچىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation>بىنورمال تور</translation> <translation>بىنورمال تور</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation>چىراي تونۇتۇشنىڭ ساقلاش ۋاقتى ئېشىپ كەتتى، يېڭىلاشنى چېكىپ ياكى مەخپىي نومۇر كىرگۈزۈپ قۇلۇپنى ئېچىڭ.</translation> <translation>چىراي تونۇتۇشنىڭ ساقلاش ۋاقتى ئېشىپ كەتتى، يېڭىلاشنى چېكىپ ياكى مەخپىي نومۇر كىرگۈزۈپ قۇلۇپنى ئېچىڭ.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation>بارماق ئىزى</translation> <translation>بارماق ئىزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation>بارماق ۋېناسى</translation> <translation>بارماق ۋېناسى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation>رەڭدار پەردە</translation> <translation>رەڭدار پەردە</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation>ئادەم يۈزى</translation> <translation>ئادەم يۈزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation>ئاۋاز ئىزى</translation> <translation>ئاۋاز ئىزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation>مەخپىي ئاچقۇچ</translation> <translation>مەخپىي ئاچقۇچ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation>ئىككىلىك كود</translation> <translation>ئىككىلىك كود</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation>بارماق ئىزى</translation> <translation>بارماق ئىزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation>بارماق ۋېنا تومۇزى</translation> <translation>بارماق ۋېنا تومۇزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation>رەڭدار پەردە</translation> <translation>رەڭدار پەردە</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation>ئادەم يۈزى</translation> <translation>ئادەم يۈزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation>ئاۋاز ئىزى</translation> <translation>ئاۋاز ئىزى</translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation>مەخپىي نومۇرنى بوش قويۇشقا بولمايدۇ</translation> <translation>مەخپىي نومۇرنى بوش قويۇشقا بولمايدۇ</translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>دەلىللەش 1% مەغلۇپ بولدى، يەنە 2% دەلىللەش پۇرسىتىڭىز بار</translation> <translation>دەلىللەش 1% مەغلۇپ بولدى، يەنە 2% دەلىللەش پۇرسىتىڭىز بار</translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation>دەلىللەش مەغلۇپ بولدى، قايتا سىناپ بېقىڭ</translation> <translation>دەلىللەش مەغلۇپ بولدى، قايتا سىناپ بېقىڭ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation>باغلانغان ئۈندىدارنى سىكاننېرلاش كودى ياكى مەخپىي نومۇرىنى كىرگۈزۈپ قۇلۇپ ئېچىش</translation> <translation type="vanished">باغلانغان ئۈندىدارنى سىكاننېرلاش كودى ياكى مەخپىي نومۇرىنى كىرگۈزۈپ قۇلۇپ ئېچىش</translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished">مەخپىي نۇمۇر </translation> <translation type="vanished">مەخپىي نۇمۇر </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation>كىرىش</translation> <translation>كىرىش</translation>
</message> </message>
@ -1700,7 +1724,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2074,53 +2098,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation>كىرىش تاللانمىلىرى</translation> <translation>كىرىش تاللانمىلىرى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation>مەخپىي نومۇر</translation> <translation>مەخپىي نومۇر</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation>باشقا</translation> <translation>باشقا</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation>بارماق ئىزى</translation> <translation>بارماق ئىزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation>بارماق ۋېناسى</translation> <translation>بارماق ۋېناسى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation>رەڭدار پەردە</translation> <translation>رەڭدار پەردە</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation>ئادەم يۈزى</translation> <translation>ئادەم يۈزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation>ئاۋاز ئىزى</translation> <translation>ئاۋاز ئىزى</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation>مەخپىي ئاچقۇچ</translation> <translation>مەخپىي ئاچقۇچ</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation>ئىككىلىك كود</translation> <translation>ئىككىلىك كود</translation>
</message> </message>
@ -2129,7 +2153,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation>!ئۈسكۈنىنى پەرقلەندۈرۈش چىقىرىۋېتىلدى</translation> <translation>!ئۈسكۈنىنى پەرقلەندۈرۈش چىقىرىۋېتىلدى</translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation></translation> <translation></translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation>%1</translation> <translation>%1</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation>%1</translation> <translation>%1</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation>:</translation> <translation>:</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation>%1</translation> <translation>%1</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation>%1</translation> <translation>%1</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation></translation> <translation></translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation></translation> <translation></translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation>%1%2</translation> <translation>%1%2</translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation>使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished"> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation></translation> <translation></translation>
</message> </message>
@ -1684,7 +1708,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2066,53 +2090,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2121,7 +2145,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation>!</translation> <translation>!</translation>
</message> </message>

View File

@ -24,7 +24,7 @@
<translation type="obsolete">使</translation> <translation type="obsolete">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1173"/> <location filename="../src/widgets/authdialog.cpp" line="1204"/>
<source>Retry</source> <source>Retry</source>
<translation></translation> <translation></translation>
</message> </message>
@ -53,162 +53,187 @@
<translation type="vanished">%1%2</translation> <translation type="vanished">%1%2</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1244"/> <location filename="../src/widgets/authdialog.cpp" line="1275"/>
<source>Please try again in %1 minutes.</source> <source>Please try again in %1 minutes.</source>
<translation> %1 </translation> <translation> %1 </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1251"/> <location filename="../src/widgets/authdialog.cpp" line="1282"/>
<source>Please try again in %1 seconds.</source> <source>Please try again in %1 seconds.</source>
<translation> %1 </translation> <translation> %1 </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1258"/> <location filename="../src/widgets/authdialog.cpp" line="1289"/>
<source>Account locked permanently.</source> <source>Account locked permanently.</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="652"/>
<location filename="../src/widgets/authdialog.cpp" line="680"/>
<source>Verify face recognition or enter password to unlock</source> <source>Verify face recognition or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="458"/> <location filename="../src/widgets/authdialog.cpp" line="470"/>
<source>Guest</source> <source>Guest</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="655"/>
<source>Press fingerprint or enter password to unlock</source> <source>Press fingerprint or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="658"/>
<source>Verify voiceprint or enter password to unlock</source> <source>Verify voiceprint or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="661"/>
<source>Verify finger vein or enter password to unlock</source> <source>Verify finger vein or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="664"/>
<source>Verify iris or enter password to unlock</source> <source>Verify iris or enter password to unlock</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="934"/> <location filename="../src/widgets/authdialog.cpp" line="682"/>
<location filename="../src/widgets/authdialog.cpp" line="710"/>
<source>Facial recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="685"/>
<source>Fingerprint recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="688"/>
<source>Voiceprint recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="691"/>
<source>Finger vein recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="694"/>
<source>Iris recognition to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="697"/>
<source>Use the bound wechat scanning code to unlock</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/authdialog.cpp" line="964"/>
<source>Password:</source> <source>Password:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="937"/> <location filename="../src/widgets/authdialog.cpp" line="967"/>
<source>Input Password</source> <source>Input Password</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="942"/> <location filename="../src/widgets/authdialog.cpp" line="972"/>
<source>Username</source> <source>Username</source>
<translation type="unfinished">使</translation> <translation type="unfinished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1012"/> <location filename="../src/widgets/authdialog.cpp" line="1043"/>
<source>User name input error!</source> <source>User name input error!</source>
<translation>使!</translation> <translation>使!</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1091"/> <location filename="../src/widgets/authdialog.cpp" line="1122"/>
<source>login</source> <source>login</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1477"/> <location filename="../src/widgets/authdialog.cpp" line="1508"/>
<location filename="../src/widgets/authdialog.cpp" line="1627"/> <location filename="../src/widgets/authdialog.cpp" line="1658"/>
<location filename="../src/widgets/authdialog.cpp" line="1771"/> <location filename="../src/widgets/authdialog.cpp" line="1802"/>
<location filename="../src/widgets/authdialog.cpp" line="1952"/> <location filename="../src/widgets/authdialog.cpp" line="1983"/>
<source>Failed to verify %1, please enter password to unlock</source> <source>Failed to verify %1, please enter password to unlock</source>
<translation> %1 </translation> <translation> %1 </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1480"/> <location filename="../src/widgets/authdialog.cpp" line="1511"/>
<location filename="../src/widgets/authdialog.cpp" line="1630"/> <location filename="../src/widgets/authdialog.cpp" line="1661"/>
<location filename="../src/widgets/authdialog.cpp" line="1776"/> <location filename="../src/widgets/authdialog.cpp" line="1807"/>
<location filename="../src/widgets/authdialog.cpp" line="1779"/> <location filename="../src/widgets/authdialog.cpp" line="1810"/>
<location filename="../src/widgets/authdialog.cpp" line="1955"/> <location filename="../src/widgets/authdialog.cpp" line="1986"/>
<source>Unable to verify %1, please enter password to unlock</source> <source>Unable to verify %1, please enter password to unlock</source>
<translation> %1</translation> <translation> %1</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1808"/> <location filename="../src/widgets/authdialog.cpp" line="1839"/>
<source>Abnormal network</source> <source>Abnormal network</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1816"/> <location filename="../src/widgets/authdialog.cpp" line="1847"/>
<source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source> <source>Face recognition waiting time out, please click refresh or enter the password to unlock.</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2079"/> <location filename="../src/widgets/authdialog.cpp" line="2110"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2081"/> <location filename="../src/widgets/authdialog.cpp" line="2112"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2083"/> <location filename="../src/widgets/authdialog.cpp" line="2114"/>
<source>Iris</source> <source>Iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2085"/> <location filename="../src/widgets/authdialog.cpp" line="2116"/>
<source>Face</source> <source>Face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2087"/> <location filename="../src/widgets/authdialog.cpp" line="2118"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2089"/> <location filename="../src/widgets/authdialog.cpp" line="2120"/>
<location filename="../src/widgets/authdialog.cpp" line="2111"/> <location filename="../src/widgets/authdialog.cpp" line="2142"/>
<source>Ukey</source> <source>Ukey</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2091"/> <location filename="../src/widgets/authdialog.cpp" line="2122"/>
<location filename="../src/widgets/authdialog.cpp" line="2113"/> <location filename="../src/widgets/authdialog.cpp" line="2144"/>
<source>QRCode</source> <source>QRCode</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2101"/> <location filename="../src/widgets/authdialog.cpp" line="2132"/>
<source>fingerprint</source> <source>fingerprint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2103"/> <location filename="../src/widgets/authdialog.cpp" line="2134"/>
<source>fingervein</source> <source>fingervein</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2105"/> <location filename="../src/widgets/authdialog.cpp" line="2136"/>
<source>iris</source> <source>iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2107"/> <location filename="../src/widgets/authdialog.cpp" line="2138"/>
<source>face</source> <source>face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="2109"/> <location filename="../src/widgets/authdialog.cpp" line="2140"/>
<source>voiceprint</source> <source>voiceprint</source>
<translation></translation> <translation></translation>
</message> </message>
@ -217,7 +242,7 @@
<translation type="vanished">使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="791"/> <location filename="../src/widgets/authdialog.cpp" line="821"/>
<source>Password cannot be empty</source> <source>Password cannot be empty</source>
<translation></translation> <translation></translation>
</message> </message>
@ -230,8 +255,8 @@
<translation type="vanished">%1.</translation> <translation type="vanished">%1.</translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1793"/> <location filename="../src/widgets/authdialog.cpp" line="1824"/>
<location filename="../src/widgets/authdialog.cpp" line="1797"/> <location filename="../src/widgets/authdialog.cpp" line="1828"/>
<source>Failed to verify %1, you still have %2 verification opportunities</source> <source>Failed to verify %1, you still have %2 verification opportunities</source>
<translation> %1 %2 </translation> <translation> %1 %2 </translation>
</message> </message>
@ -260,15 +285,14 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="1015"/> <location filename="../src/widgets/authdialog.cpp" line="1046"/>
<location filename="../src/widgets/authdialog.cpp" line="1019"/> <location filename="../src/widgets/authdialog.cpp" line="1050"/>
<source>Authentication failure, Please try again</source> <source>Authentication failure, Please try again</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="667"/>
<source>Use the bound wechat scanning code or enter the password to unlock</source> <source>Use the bound wechat scanning code or enter the password to unlock</source>
<translation>使</translation> <translation type="vanished">使</translation>
</message> </message>
<message> <message>
<source>Enter the ukey password</source> <source>Enter the ukey password</source>
@ -283,8 +307,8 @@
<translation type="vanished"> </translation> <translation type="vanished"> </translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/authdialog.cpp" line="456"/> <location filename="../src/widgets/authdialog.cpp" line="468"/>
<location filename="../src/widgets/authdialog.cpp" line="1165"/> <location filename="../src/widgets/authdialog.cpp" line="1196"/>
<source>Login</source> <source>Login</source>
<translation></translation> <translation></translation>
</message> </message>
@ -1692,7 +1716,7 @@
<context> <context>
<name>IconEdit</name> <name>IconEdit</name>
<message> <message>
<location filename="../src/widgets/iconedit.cpp" line="92"/> <location filename="../src/widgets/iconedit.cpp" line="97"/>
<source>OK</source> <source>OK</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2086,53 +2110,53 @@
<context> <context>
<name>LoginOptionsWidget</name> <name>LoginOptionsWidget</name>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="82"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="80"/>
<location filename="../src/widgets/loginoptionswidget.cpp" line="105"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="103"/>
<source>Login Options</source> <source>Login Options</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="289"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="287"/>
<source>Password</source> <source>Password</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="315"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="313"/>
<source>Other</source> <source>Other</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1034"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1016"/>
<source>FingerPrint</source> <source>FingerPrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1036"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1018"/>
<source>FingerVein</source> <source>FingerVein</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1038"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1020"/>
<source>Iris</source> <source>Iris</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1040"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1022"/>
<source>Face</source> <source>Face</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1042"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1024"/>
<source>VoicePrint</source> <source>VoicePrint</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1044"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1026"/>
<source>Ukey</source> <source>Ukey</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="1046"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="1028"/>
<source>QRCode</source> <source>QRCode</source>
<translation></translation> <translation></translation>
</message> </message>
@ -2141,7 +2165,7 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/loginoptionswidget.cpp" line="703"/> <location filename="../src/widgets/loginoptionswidget.cpp" line="685"/>
<source>Identify device removed!</source> <source>Identify device removed!</source>
<translation></translation> <translation></translation>
</message> </message>

View File

@ -128,6 +128,53 @@
<file>assets/logout.svg</file> <file>assets/logout.svg</file>
<file>assets/lockscreen.svg</file> <file>assets/lockscreen.svg</file>
<file>assets/fengmian.png</file> <file>assets/fengmian.png</file>
<file>assets/biowaiting/iris0.svg</file>
<file>assets/biowaiting/iris1.svg</file>
<file>assets/biowaiting/iris2.svg</file>
<file>assets/biowaiting/iris3.svg</file>
<file>assets/biowaiting/iris4.svg</file>
<file>assets/biowaiting/iris5.svg</file>
<file>assets/biowaiting/iris6.svg</file>
<file>assets/biowaiting/iris7.svg</file>
<file>assets/biowaiting/iris8.svg</file>
<file>assets/biowaiting/iris9.svg</file>
<file>assets/biowaiting/iris10.svg</file>
<file>assets/biowaiting/iris11.svg</file>
<file>assets/biowaiting/fingervein0.svg</file>
<file>assets/biowaiting/fingervein1.svg</file>
<file>assets/biowaiting/fingervein2.svg</file>
<file>assets/biowaiting/fingervein3.svg</file>
<file>assets/biowaiting/fingervein4.svg</file>
<file>assets/biowaiting/fingervein5.svg</file>
<file>assets/biowaiting/fingervein6.svg</file>
<file>assets/biowaiting/fingervein7.svg</file>
<file>assets/biowaiting/fingervein8.svg</file>
<file>assets/biowaiting/fingervein9.svg</file>
<file>assets/biowaiting/fingervein10.svg</file>
<file>assets/biowaiting/fingervein11.svg</file>
<file>assets/biowaiting/voiceprint0.svg</file>
<file>assets/biowaiting/voiceprint1.svg</file>
<file>assets/biowaiting/voiceprint2.svg</file>
<file>assets/biowaiting/voiceprint3.svg</file>
<file>assets/biowaiting/fingerprint0.svg</file>
<file>assets/biowaiting/fingerprint1.svg</file>
<file>assets/biowaiting/fingerprint2.svg</file>
<file>assets/biowaiting/fingerprint3.svg</file>
<file>assets/biowaiting/fingerprint4.svg</file>
<file>assets/biowaiting/fingerprint5.svg</file>
<file>assets/biowaiting/fingerprint6.svg</file>
<file>assets/biowaiting/fingerprint7.svg</file>
<file>assets/biowaiting/fingerprint8.svg</file>
<file>assets/biowaiting/fingerprint9.svg</file>
<file>assets/biowaiting/fingerprint10.svg</file>
<file>assets/biowaiting/fingerprint11.svg</file>
<file>assets/biowaiting/fingerprint12.svg</file>
<file>assets/biowaiting/fingerprint13.svg</file>
<file>assets/biowaiting/fingerprint14.svg</file>
<file>assets/biowaiting/voiceprint4.svg</file>
<file>assets/biowaiting/voiceprint5.svg</file>
<file>assets/biowaiting/voiceprint6.svg</file>
<file>assets/biowaiting/voiceprint7.svg</file>
</qresource> </qresource>
<qresource prefix="/"> <qresource prefix="/">
<file>assets/data/conf.ini</file> <file>assets/data/conf.ini</file>

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.9 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.4 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 15 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 15 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 16 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.9 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.1 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.8 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 10 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 11 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}</style></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/></g></svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="27" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="16"/><rect class="cls-2" x="22" y="24" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="126" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="115"/><rect class="cls-2" x="22" y="123" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="137" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="126"/><rect class="cls-2" x="22" y="134" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="38" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="27"/><rect class="cls-2" x="22" y="35" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="49" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="38"/><rect class="cls-2" x="22" y="46" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="60" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="49"/><rect class="cls-2" x="22" y="57" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="71" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="60"/><rect class="cls-2" x="22" y="68" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="82" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="71"/><rect class="cls-2" x="22" y="79" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="93" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="82"/><rect class="cls-2" x="22" y="90" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="104" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="11" width="116" height="93"/><rect class="cls-2" x="22" y="101" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{opacity:0.2;}.cls-2{fill:#3790fa;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="116" x2="80" y2="12" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><g class="cls-1"><path d="M114.27147,96.46253a2.28536,2.28536,0,0,0-2.28534,2.28534v14.1233a2.28534,2.28534,0,1,0,4.57068,0V98.74787A2.28536,2.28536,0,0,0,114.27147,96.46253Z"/><path d="M65.6855,39.7409a33.36686,33.36686,0,0,1,14.30613-3.15372l.03571-.00119a30.94322,30.94322,0,0,1,31.95879,29.89309v22.6704a2.29317,2.29317,0,1,0,4.57068-.2742v-22.579A35.514,35.514,0,0,0,79.99163,32.0165a37.88963,37.88963,0,0,0-16.22581,3.56516A2.29044,2.29044,0,1,0,65.6855,39.7409Z"/><path d="M56.72706,42.9404a2.295,2.295,0,0,0-3.24518-.04578A33.09153,33.09153,0,0,0,43.42645,66.47908v47.21479a2.2853,2.2853,0,1,0,4.57059,0V66.47908a28.567,28.567,0,0,1,8.68424-20.29359A2.29484,2.29484,0,0,0,56.72706,42.9404Z"/><path d="M86.80188,42.84894a27.92679,27.92679,0,0,0-12.29509-.2742A27.14962,27.14962,0,0,0,52.56772,68.90157v53.11088a2.28534,2.28534,0,1,0,4.57068,0V93.63914a17.4489,17.4489,0,0,0,2.97089,4.19458,20.85342,20.85342,0,0,1,6.17039,11.86918v6.78754a2.25125,2.25125,0,0,0,0,.24985v8.97437a2.2853,2.2853,0,1,0,4.57059,0v-8.773a25.4804,25.4804,0,0,0,.30615-5.15689c.59317-6.03013,2.33194-16.46175,7.41825-23.59508,6.51407-9.13551,6.12479-15.36586,5.911-17.32271h4.63651a55.70992,55.70992,0,0,0,.01071,6.69315v48.15458a2.28535,2.28535,0,0,0,4.57069,0V94.87812a25.77379,25.77379,0,0,0,1.554,2.45288,45.685,45.685,0,0,1,7.58726,21.88753v2.79392a2.2853,2.2853,0,1,0,4.57059,0V68.90157A27.05818,27.05818,0,0,0,86.80188,42.84894ZM66.27968,97.80616a25.48236,25.48236,0,0,0-2.97089-3.40036c-5.02772-5.25632-6.17039-18.694-6.17039-23.53887h9.14128Zm8.59278-12.26743a36.49909,36.49909,0,0,0-4.02219,7.30536V70.86693h9.09742a2.31209,2.31209,0,0,0,.04394.5485C79.99163,71.46111,81.1343,76.763,74.87246,85.53873Zm27.9724,16.12006a49.905,49.905,0,0,0-3.885-6.97879c-6.49036-9.09559-5.11917-23.58455-5.11917-23.58455l.00229-.02271c.00659-.06985-.00156-.137-.00119-.20581h9.00312ZM57.36573,66.29625A22.52238,22.52238,0,0,1,75.37526,47.28247a23.67615,23.67615,0,0,1,10.284,0,22.431,22.431,0,0,1,16.99293,19.01378Z"/><path d="M82.27688,91.43482a2.28527,2.28527,0,0,0-2.28525,2.28534v31.9945a2.2853,2.2853,0,1,0,4.57059,0V93.72016A2.28535,2.28535,0,0,0,82.27688,91.43482Z"/></g><path class="cls-2" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-2" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-2" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-2" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><rect class="cls-3" x="22" y="12" width="116" height="104"/><rect class="cls-2" x="22" y="112" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}</style></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g></g></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="27" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="16"/><rect class="cls-1" x="22" y="24" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="126" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="115"/><rect class="cls-1" x="22" y="123" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="137" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="126"/><rect class="cls-1" x="22" y="134" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="38" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="27"/><rect class="cls-1" x="22" y="35" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="49" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="38"/><rect class="cls-1" x="22" y="46" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="60" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="49"/><rect class="cls-1" x="22" y="57" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="71" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="60"/><rect class="cls-1" x="22" y="68" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="82" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="71"/><rect class="cls-1" x="22" y="79" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="93" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="82"/><rect class="cls-1" x="22" y="90" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="104" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="93"/><rect class="cls-1" x="22" y="101" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160"><defs><style>.cls-1{fill:#3790fa;}.cls-2{opacity:0.2;}.cls-3{fill:url(#未命名的渐变_8);}</style><linearGradient id="未命名的渐变_8" x1="80" y1="115" x2="80" y2="11" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#3790fa"/><stop offset="1" stop-color="#3790fa" stop-opacity="0"/></linearGradient></defs><g id="文字标注"><path class="cls-1" d="M154,52h-8V35a21.0239,21.0239,0,0,0-21-21H108V6h17a29.03307,29.03307,0,0,1,29,29Z"/><path class="cls-1" d="M125,154H108v-8h17a21.02422,21.02422,0,0,0,21-21V108h8v17A29.03339,29.03339,0,0,1,125,154Z"/><path class="cls-1" d="M52,154H35A29.03339,29.03339,0,0,1,6,125V108h8v17a21.02422,21.02422,0,0,0,21,21H52Z"/><path class="cls-1" d="M14,52H6V35A29.03307,29.03307,0,0,1,35,6H52v8H35A21.0239,21.0239,0,0,0,14,35Z"/><g class="cls-2"><path d="M80,112c-28.1582,0-50.24707-28.35742-51.17285-29.56445L26.958,80l1.86914-2.43555C29.75293,76.35742,51.8418,48,80,48s50.24707,28.35742,51.17285,29.56445L133.042,80l-1.86914,2.43555C130.24707,83.64258,108.1582,112,80,112ZM37.22266,80C42.99512,86.54346,60.249,104,80,104s37.00391-17.45508,42.77734-24C117.00391,73.45508,99.751,56,80,56S42.99609,73.45508,37.22266,80Z"/></g><g class="cls-2"><circle cx="80" cy="80" r="18"/></g><rect class="cls-3" x="22" y="11" width="116" height="104"/><rect class="cls-1" x="22" y="112" width="116" height="4"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

@ -67,6 +67,21 @@ QPixmap scaledPixmap(QPixmap src)
return rectPixmap; return rectPixmap;
} }
QPixmap scaledSmoothPixmap(const QPixmap &src, int nWidth, int nHeight)
{
if (src.isNull()) {
return QPixmap();
}
QPixmap pixmapa(src);
QPixmap pixmap(nWidth, nHeight);
pixmap.fill(Qt::transparent);
QPainter painter(&pixmap);
painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
painter.drawPixmap(0, 0, nWidth, nHeight, pixmapa);
return pixmap;
}
QPixmap PixmapToRound(const QPixmap &src, int radius) QPixmap PixmapToRound(const QPixmap &src, int radius)
{ {
if (src.isNull()) { if (src.isNull()) {
@ -102,7 +117,10 @@ QPixmap PixmapToRound(const QPixmap &src, int leftTop, int rightTop, int leftBot
path.lineTo(0, src.height() - leftBottom); path.lineTo(0, src.height() - leftBottom);
path.arcTo(QRect(0, src.height() - 2 * leftBottom, 2 * leftBottom, 2 * leftBottom), 180, 90); path.arcTo(QRect(0, src.height() - 2 * leftBottom, 2 * leftBottom, 2 * leftBottom), 180, 90);
path.lineTo(src.width() - rightBottom, src.height()); path.lineTo(src.width() - rightBottom, src.height());
path.arcTo(QRect(src.width() - 2*rightBottom, src.height() - 2*rightBottom, 2*rightBottom, 2*rightBottom), 270, 90); path.arcTo(
QRect(src.width() - 2 * rightBottom, src.height() - 2 * rightBottom, 2 * rightBottom, 2 * rightBottom),
270,
90);
path.lineTo(src.width(), rightTop); path.lineTo(src.width(), rightTop);
path.arcTo(QRect(src.width() - 2 * rightTop, 0, 2 * rightTop, 2 * rightTop), 0, 90); path.arcTo(QRect(src.width() - 2 * rightTop, 0, 2 * rightTop, 2 * rightTop), 0, 90);
path.closeSubpath(); path.closeSubpath();

View File

@ -39,4 +39,6 @@ QPixmap blurPixmap(QPixmap pixmap);
QPixmap scaleBlurPixmap(int width, int height, QString url); QPixmap scaleBlurPixmap(int width, int height, QString url);
QPixmap scaledSmoothPixmap(const QPixmap &src, int nWidth, int nHeight);
#endif // COMMONFUNC_H #endif // COMMONFUNC_H

View File

@ -30,6 +30,7 @@
#include <QKeyEvent> #include <QKeyEvent>
#include <QEvent> #include <QEvent>
#include <QTimer> #include <QTimer>
#include <QPixmapCache>
#include "definetypes.h" #include "definetypes.h"
#include <unistd.h> #include <unistd.h>
#include <sys/types.h> #include <sys/types.h>
@ -67,6 +68,9 @@ void AuthDialog::initUI()
m_curFontSize = m_modelLockDialog->getCurFontSize(); m_curFontSize = m_modelLockDialog->getCurFontSize();
m_ptToPx = m_modelLockDialog->getPtToPx(); m_ptToPx = m_modelLockDialog->getPtToPx();
// 生物认证空占位
m_widgetPlaceholder = new QWidget(this);
m_widgetPlaceholder->hide();
// 生物认证提示 // 生物认证提示
m_tipWidget = new QWidget(this); m_tipWidget = new QWidget(this);
@ -89,6 +93,7 @@ void AuthDialog::initUI()
m_widgetLoginOpts = new QWidget(this); m_widgetLoginOpts = new QWidget(this);
mainLayout->addStretch(); mainLayout->addStretch();
mainLayout->addWidget(m_widgetPlaceholder);
mainLayout->addWidget(m_tipWidget); mainLayout->addWidget(m_tipWidget);
mainLayout->addWidget(m_headerWidget); mainLayout->addWidget(m_headerWidget);
mainLayout->addWidget(m_nameWidget); mainLayout->addWidget(m_nameWidget);
@ -163,6 +168,9 @@ void AuthDialog::updateAuthSize()
m_nameWidget->setFixedSize(this->width(), WIDGET_HEIGHT_USERNAME); m_nameWidget->setFixedSize(this->width(), WIDGET_HEIGHT_USERNAME);
if (m_editWidget) if (m_editWidget)
m_editWidget->setFixedSize(this->width(), WIDGET_HEIGHT_PASSWDEDIT); m_editWidget->setFixedSize(this->width(), WIDGET_HEIGHT_PASSWDEDIT);
if (m_widgetPlaceholder) {
m_widgetPlaceholder->setFixedSize(this->width(), WIDGET_HEIGHT_PASSWDEDIT);
}
if (m_ukeyPasswdWidget) if (m_ukeyPasswdWidget)
m_ukeyPasswdWidget->setFixedSize(this->width(), WIDGET_HEIGHT_PASSWDEDIT); m_ukeyPasswdWidget->setFixedSize(this->width(), WIDGET_HEIGHT_PASSWDEDIT);
@ -178,7 +186,8 @@ void AuthDialog::updateAuthSize()
if (m_labelLoginTypeTip) { if (m_labelLoginTypeTip) {
m_labelLoginTypeTip->setFixedSize(m_tipWidget->size()); m_labelLoginTypeTip->setFixedSize(m_tipWidget->size());
m_labelLoginTypeTip->setFontSize((14 + m_curFontSize) * m_ptToPx); m_labelLoginTypeTip->setFontSize((26 + m_curFontSize) * m_ptToPx);
m_labelLoginTypeTip->setFontWeight(QFont::Medium);
} }
if (m_labelHeadImg) if (m_labelHeadImg)
m_labelHeadImg->setFixedSize(WIDGET_HEIGHT_HEADIMAGE, WIDGET_HEIGHT_HEADIMAGE); m_labelHeadImg->setFixedSize(WIDGET_HEIGHT_HEADIMAGE, WIDGET_HEIGHT_HEADIMAGE);
@ -203,6 +212,9 @@ void AuthDialog::updateAuthSize()
m_labelQRCodeMsg->setFixedHeight(30 * scale); m_labelQRCodeMsg->setFixedHeight(30 * scale);
m_labelQRCodeMsg->setFontSize((14 + m_curFontSize) * m_ptToPx); m_labelQRCodeMsg->setFontSize((14 + m_curFontSize) * m_ptToPx);
} }
if (m_labelBioWaiting) {
m_labelBioWaiting->setFixedSize(WIDGET_HEIGHT_HEADIMAGE, WIDGET_HEIGHT_HEADIMAGE);
}
if (m_nameLabel) { if (m_nameLabel) {
m_nameLabel->setFixedSize(this->width(), WIDGET_HEIGHT_USERNAME); m_nameLabel->setFixedSize(this->width(), WIDGET_HEIGHT_USERNAME);
m_nameLabel->setFontSize((24 + m_curFontSize) * m_ptToPx); m_nameLabel->setFontSize((24 + m_curFontSize) * m_ptToPx);
@ -266,7 +278,7 @@ void AuthDialog::updateAuthFont(QString fontFamily)
void AuthDialog::updateAuthFontSize(double fontSize) void AuthDialog::updateAuthFontSize(double fontSize)
{ {
if (m_labelLoginTypeTip) { if (m_labelLoginTypeTip) {
m_labelLoginTypeTip->setFontSize((14 + fontSize) * m_ptToPx); m_labelLoginTypeTip->setFontSize((26 + fontSize) * m_ptToPx);
} }
if (m_ukeyMessageLabel) { if (m_ukeyMessageLabel) {
m_ukeyMessageLabel->setFontSize((14 + fontSize) * m_ptToPx); m_ukeyMessageLabel->setFontSize((14 + fontSize) * m_ptToPx);
@ -312,6 +324,11 @@ void AuthDialog::initHeaderWidget()
headerLayout->addWidget(m_labelFace); headerLayout->addWidget(m_labelFace);
m_labelFace->hide(); m_labelFace->hide();
// 生物特征等待验证动画
m_labelBioWaiting = new QLabel(m_headerWidget);
headerLayout->addWidget(m_labelBioWaiting);
m_labelBioWaiting->hide();
// 人脸识别重试 // 人脸识别重试
m_fRetryButton = new QPushButton(m_headerWidget); m_fRetryButton = new QPushButton(m_headerWidget);
m_fRetryButton->setFocusPolicy(Qt::NoFocus); m_fRetryButton->setFocusPolicy(Qt::NoFocus);
@ -537,11 +554,14 @@ void AuthDialog::switchLoginOptType(unsigned uLoginOptType, bool faceBtnClicked)
case LOGINOPT_TYPE_PASSWORD: { case LOGINOPT_TYPE_PASSWORD: {
m_tipWidget->show(); m_tipWidget->show();
m_editWidget->show(); m_editWidget->show();
m_widgetPlaceholder->hide();
m_headerWidget->show(); m_headerWidget->show();
m_nameWidget->show(); m_nameWidget->show();
m_labelHeadImg->show(); m_labelHeadImg->show();
m_labelQRCode->hide(); m_labelQRCode->hide();
m_labelFace->hide(); m_labelFace->hide();
m_labelBioWaiting->hide();
stopBioWaiting();
m_fRetryButton->hide(); m_fRetryButton->hide();
m_ukeyPasswdWidget->hide(); m_ukeyPasswdWidget->hide();
m_ukeyPasswordEdit->clearFocus(); m_ukeyPasswordEdit->clearFocus();
@ -550,12 +570,15 @@ void AuthDialog::switchLoginOptType(unsigned uLoginOptType, bool faceBtnClicked)
} break; } break;
case LOGINOPT_TYPE_FACE: { case LOGINOPT_TYPE_FACE: {
m_tipWidget->show(); m_tipWidget->show();
m_editWidget->show(); m_editWidget->hide();
m_widgetPlaceholder->show();
m_headerWidget->show(); m_headerWidget->show();
m_nameWidget->show(); m_nameWidget->show();
m_labelHeadImg->hide(); m_labelHeadImg->hide();
m_labelQRCode->hide(); m_labelQRCode->hide();
m_labelFace->show(); m_labelFace->show();
m_labelBioWaiting->hide();
stopBioWaiting();
m_fRetryButton->hide(); m_fRetryButton->hide();
m_ukeyPasswdWidget->hide(); m_ukeyPasswdWidget->hide();
m_ukeyPasswordEdit->clearFocus(); m_ukeyPasswordEdit->clearFocus();
@ -570,12 +593,15 @@ void AuthDialog::switchLoginOptType(unsigned uLoginOptType, bool faceBtnClicked)
case LOGINOPT_TYPE_FINGERVEIN: case LOGINOPT_TYPE_FINGERVEIN:
case LOGINOPT_TYPE_IRIS: { case LOGINOPT_TYPE_IRIS: {
m_tipWidget->show(); m_tipWidget->show();
m_editWidget->show(); m_editWidget->hide();
m_widgetPlaceholder->show();
m_headerWidget->show(); m_headerWidget->show();
m_nameWidget->show(); m_nameWidget->show();
m_labelHeadImg->show(); m_labelHeadImg->hide();
m_labelQRCode->hide(); m_labelQRCode->hide();
m_labelFace->hide(); m_labelFace->hide();
m_labelBioWaiting->show();
startBioWaiting(uLoginOptType);
m_fRetryButton->hide(); m_fRetryButton->hide();
m_ukeyPasswdWidget->hide(); m_ukeyPasswdWidget->hide();
m_ukeyPasswordEdit->clearFocus(); m_ukeyPasswordEdit->clearFocus();
@ -584,13 +610,16 @@ void AuthDialog::switchLoginOptType(unsigned uLoginOptType, bool faceBtnClicked)
} break; } break;
case LOGINOPT_TYPE_QRCODE: { case LOGINOPT_TYPE_QRCODE: {
m_tipWidget->show(); m_tipWidget->show();
m_editWidget->show(); m_editWidget->hide();
m_widgetPlaceholder->show();
m_headerWidget->show(); m_headerWidget->show();
m_nameWidget->show(); m_nameWidget->show();
m_labelHeadImg->hide(); m_labelHeadImg->hide();
setQRCodeMsg(""); setQRCodeMsg("");
m_labelQRCode->show(); m_labelQRCode->show();
m_labelFace->hide(); m_labelFace->hide();
m_labelBioWaiting->hide();
stopBioWaiting();
m_fRetryButton->hide(); m_fRetryButton->hide();
m_ukeyPasswdWidget->hide(); m_ukeyPasswdWidget->hide();
m_ukeyPasswordEdit->clearFocus(); m_ukeyPasswordEdit->clearFocus();
@ -600,11 +629,14 @@ void AuthDialog::switchLoginOptType(unsigned uLoginOptType, bool faceBtnClicked)
case LOGINOPT_TYPE_GENERAL_UKEY: { case LOGINOPT_TYPE_GENERAL_UKEY: {
m_tipWidget->show(); m_tipWidget->show();
m_editWidget->show(); m_editWidget->show();
m_widgetPlaceholder->hide();
m_headerWidget->show(); m_headerWidget->show();
m_nameWidget->show(); m_nameWidget->show();
m_labelHeadImg->show(); m_labelHeadImg->show();
m_labelQRCode->hide(); m_labelQRCode->hide();
m_labelFace->hide(); m_labelFace->hide();
m_labelBioWaiting->hide();
stopBioWaiting();
m_fRetryButton->hide(); m_fRetryButton->hide();
m_customWidget->hide(); m_customWidget->hide();
m_ukeyPasswdWidget->show(); m_ukeyPasswdWidget->show();
@ -616,8 +648,10 @@ void AuthDialog::switchLoginOptType(unsigned uLoginOptType, bool faceBtnClicked)
case LOGINOPT_TYPE_CUSTOM: { case LOGINOPT_TYPE_CUSTOM: {
m_tipWidget->hide(); m_tipWidget->hide();
m_editWidget->hide(); m_editWidget->hide();
m_widgetPlaceholder->hide();
m_headerWidget->hide(); m_headerWidget->hide();
m_nameWidget->hide(); m_nameWidget->hide();
stopBioWaiting();
setQRCodeMsg(""); setQRCodeMsg("");
m_ukeyPasswdWidget->hide(); m_ukeyPasswdWidget->hide();
m_ukeyPasswordEdit->clearFocus(); m_ukeyPasswordEdit->clearFocus();
@ -658,22 +692,22 @@ void AuthDialog::switchLoginOptType(unsigned uLoginOptType, bool faceBtnClicked)
setLoginTypeTip(""); setLoginTypeTip("");
} break; } break;
case LOGINOPT_TYPE_FACE: { case LOGINOPT_TYPE_FACE: {
setLoginTypeTip(tr("Verify face recognition or enter password to unlock")); setLoginTypeTip(tr("Facial recognition to unlock"));
} break; } break;
case LOGINOPT_TYPE_FINGERPRINT: { case LOGINOPT_TYPE_FINGERPRINT: {
setLoginTypeTip(tr("Press fingerprint or enter password to unlock")); setLoginTypeTip(tr("Fingerprint recognition to unlock"));
} break; } break;
case LOGINOPT_TYPE_VOICEPRINT: { case LOGINOPT_TYPE_VOICEPRINT: {
setLoginTypeTip(tr("Verify voiceprint or enter password to unlock")); setLoginTypeTip(tr("Voiceprint recognition to unlock"));
} break; } break;
case LOGINOPT_TYPE_FINGERVEIN: { case LOGINOPT_TYPE_FINGERVEIN: {
setLoginTypeTip(tr("Verify finger vein or enter password to unlock")); setLoginTypeTip(tr("Finger vein recognition to unlock"));
} break; } break;
case LOGINOPT_TYPE_IRIS: { case LOGINOPT_TYPE_IRIS: {
setLoginTypeTip(tr("Verify iris or enter password to unlock")); setLoginTypeTip(tr("Iris recognition to unlock"));
} break; } break;
case LOGINOPT_TYPE_QRCODE: { case LOGINOPT_TYPE_QRCODE: {
setLoginTypeTip(tr("Use the bound wechat scanning code or enter the password to unlock")); setLoginTypeTip(tr("Use the bound wechat scanning code to unlock"));
} break; } break;
case LOGINOPT_TYPE_GENERAL_UKEY: { case LOGINOPT_TYPE_GENERAL_UKEY: {
setLoginTypeTip(""); setLoginTypeTip("");
@ -686,7 +720,7 @@ void AuthDialog::switchLoginOptType(unsigned uLoginOptType, bool faceBtnClicked)
} }
} else if (uLoginOptType == m_uCurLoginOptType && uLoginOptType == LOGINOPT_TYPE_FACE && !faceBtnClicked) { } else if (uLoginOptType == m_uCurLoginOptType && uLoginOptType == LOGINOPT_TYPE_FACE && !faceBtnClicked) {
clearMessage(); clearMessage();
setLoginTypeTip(tr("Verify face recognition or enter password to unlock")); setLoginTypeTip(tr("Facial recognition to unlock"));
} }
if (m_deviceInfo) { if (m_deviceInfo) {
m_nLastDeviceId = m_deviceInfo->id; m_nLastDeviceId = m_deviceInfo->id;
@ -974,6 +1008,9 @@ void AuthDialog::onPamShowPrompt(QString strPrompt, int nType)
m_timerUserUnlock->start(); m_timerUserUnlock->start();
} }
} }
if (!m_isInhibitShow) {
show();
}
} }
void AuthDialog::onPamAuthCompleted() void AuthDialog::onPamAuthCompleted()
@ -981,6 +1018,7 @@ void AuthDialog::onPamAuthCompleted()
if (m_curUserInfo->name().isEmpty()) if (m_curUserInfo->name().isEmpty())
return; return;
m_passwordEdit->stopWaiting(); m_passwordEdit->stopWaiting();
stopBioWaiting();
bool isAuthenticated = (Q_EMIT m_modelLockDialog->pamIsAuthenticated()); bool isAuthenticated = (Q_EMIT m_modelLockDialog->pamIsAuthenticated());
qDebug() << "onPamAuthCompleted:" << isAuthenticated << m_curUserInfo->name(); qDebug() << "onPamAuthCompleted:" << isAuthenticated << m_curUserInfo->name();
if (isAuthenticated) { if (isAuthenticated) {
@ -1165,6 +1203,7 @@ void AuthDialog::onCurUserChanged(UserInfoPtr userInfo)
void AuthDialog::showAuthenticated(bool successful /* = true*/) void AuthDialog::showAuthenticated(bool successful /* = true*/)
{ {
m_editWidget->show(); m_editWidget->show();
m_widgetPlaceholder->hide();
m_passwordEdit->hide(); m_passwordEdit->hide();
m_messageButton->show(); m_messageButton->show();
m_messageButton->setDefault(true); m_messageButton->setDefault(true);
@ -1492,6 +1531,7 @@ void AuthDialog::performBiometricAuth()
QImage imgFailed; QImage imgFailed;
setFaceImg(imgFailed, 1); setFaceImg(imgFailed, 1);
} }
stopBioWaiting(true);
} }
m_loginOpts->setDeviceDisable(m_deviceInfo->id, true); m_loginOpts->setDeviceDisable(m_deviceInfo->id, true);
// skipBiometricAuth(); // skipBiometricAuth();
@ -1642,6 +1682,7 @@ void AuthDialog::onLoginOptsCount(unsigned uCount)
QImage imgFailed; QImage imgFailed;
setFaceImg(imgFailed, 1); setFaceImg(imgFailed, 1);
} }
stopBioWaiting(true);
} }
m_loginOpts->setDeviceDisable(m_deviceInfo->id, true); m_loginOpts->setDeviceDisable(m_deviceInfo->id, true);
return; return;
@ -1787,6 +1828,7 @@ void AuthDialog::onBiometricAuthComplete(bool result, int nStatus)
} else { } else {
setLoginTypeTip(tr("Unable to verify %1, please enter password to unlock") setLoginTypeTip(tr("Unable to verify %1, please enter password to unlock")
.arg(getDeviceType_lowerTr(m_deviceInfo->deviceType))); .arg(getDeviceType_lowerTr(m_deviceInfo->deviceType)));
stopBioWaiting(true);
} }
if (m_loginOpts) if (m_loginOpts)
m_loginOpts->setDeviceDisable(m_deviceInfo->id, true); m_loginOpts->setDeviceDisable(m_deviceInfo->id, true);
@ -2124,3 +2166,157 @@ QString AuthDialog::getDeviceType_lowerTr(int deviceType)
return ""; return "";
} }
} }
void AuthDialog::startBioWaiting(unsigned uCurLoginOptType)
{
if (uCurLoginOptType == m_nCurBioWaitingType
|| (uCurLoginOptType != LOGINOPT_TYPE_FINGERPRINT && uCurLoginOptType != LOGINOPT_TYPE_FINGERVEIN
&& uCurLoginOptType != LOGINOPT_TYPE_IRIS && uCurLoginOptType != LOGINOPT_TYPE_VOICEPRINT)) {
return;
}
m_nCurBioWaitingType = uCurLoginOptType;
if (!m_timerBioWaiting) {
m_timerBioWaiting = new QTimer(this);
m_timerBioWaiting->setInterval(100);
}
if (m_timerBioWaiting) {
if (m_timerBioWaiting->isActive()) {
m_timerBioWaiting->stop();
}
// 重新连接信号槽
disconnect(m_timerBioWaiting, nullptr, this, nullptr);
connect(m_timerBioWaiting, &QTimer::timeout, this, [&, this, uCurLoginOptType]() {
m_nBioWaitingFrame += 1;
QString strPicName = "";
switch (uCurLoginOptType) {
case LOGINOPT_TYPE_FINGERPRINT: {
if (m_nBioWaitingFrame >= 15) {
m_nBioWaitingFrame = 0;
}
strPicName = QString(":/image/assets/biowaiting/fingerprint%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_FINGERVEIN: {
if (m_nBioWaitingFrame >= 12) {
m_nBioWaitingFrame = 0;
}
strPicName = QString(":/image/assets/biowaiting/fingervein%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_IRIS: {
if (m_nBioWaitingFrame >= 12) {
m_nBioWaitingFrame = 0;
}
strPicName = QString(":/image/assets/biowaiting/iris%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_VOICEPRINT: {
if (m_nBioWaitingFrame >= 8) {
m_nBioWaitingFrame = 0;
}
strPicName = QString(":/image/assets/biowaiting/voiceprint%1.svg").arg(m_nBioWaitingFrame);
} break;
default:
break;
}
if (!strPicName.isEmpty()) {
QPixmap pixmap;
if (QPixmapCache::find(strPicName, &pixmap)) {
m_labelBioWaiting->setPixmap(pixmap);
} else {
pixmap = scaledSmoothPixmap(QPixmap(strPicName), WIDGET_HEIGHT_HEADIMAGE, WIDGET_HEIGHT_HEADIMAGE);
if (!pixmap.isNull()) {
QPixmapCache::insert(strPicName, pixmap);
m_labelBioWaiting->setPixmap(pixmap);
}
}
}
});
m_timerBioWaiting->start();
m_nBioWaitingFrame = 0;
QString strPicName = "";
switch (uCurLoginOptType) {
case LOGINOPT_TYPE_FINGERPRINT: {
strPicName = QString(":/image/assets/biowaiting/fingerprint%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_FINGERVEIN: {
strPicName = QString(":/image/assets/biowaiting/fingervein%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_IRIS: {
strPicName = QString(":/image/assets/biowaiting/iris%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_VOICEPRINT: {
strPicName = QString(":/image/assets/biowaiting/voiceprint%1.svg").arg(m_nBioWaitingFrame);
} break;
default:
break;
}
if (!strPicName.isEmpty()) {
QPixmap pixmap;
if (QPixmapCache::find(strPicName, &pixmap)) {
m_labelBioWaiting->setPixmap(pixmap);
} else {
pixmap = scaledSmoothPixmap(QPixmap(strPicName), WIDGET_HEIGHT_HEADIMAGE, WIDGET_HEIGHT_HEADIMAGE);
if (!pixmap.isNull()) {
QPixmapCache::insert(strPicName, pixmap);
m_labelBioWaiting->setPixmap(pixmap);
}
}
}
}
}
void AuthDialog::stopBioWaiting(bool isDisable /* = false*/)
{
if (m_timerBioWaiting) {
if (m_timerBioWaiting->isActive()) {
m_timerBioWaiting->stop();
}
}
m_nBioWaitingFrame = 0;
if (isDisable) {
QString strPicName = "";
switch (m_nCurBioWaitingType) {
case LOGINOPT_TYPE_FINGERPRINT: {
strPicName = QString(":/image/assets/biowaiting/fingerprint%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_FINGERVEIN: {
strPicName = QString(":/image/assets/biowaiting/fingervein%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_IRIS: {
strPicName = QString(":/image/assets/biowaiting/iris%1.svg").arg(m_nBioWaitingFrame);
} break;
case LOGINOPT_TYPE_VOICEPRINT: {
strPicName = QString(":/image/assets/biowaiting/voiceprint%1.svg").arg(m_nBioWaitingFrame);
} break;
default:
break;
}
if (!strPicName.isEmpty()) {
QPixmap pixmap;
if (QPixmapCache::find(strPicName, &pixmap)) {
m_labelBioWaiting->setPixmap(pixmap);
} else {
pixmap = scaledSmoothPixmap(QPixmap(strPicName), WIDGET_HEIGHT_HEADIMAGE, WIDGET_HEIGHT_HEADIMAGE);
if (!pixmap.isNull()) {
QPixmapCache::insert(strPicName, pixmap);
m_labelBioWaiting->setPixmap(pixmap);
}
}
}
}
m_nCurBioWaitingType = -1;
}
void AuthDialog::inhibitShow(bool isInhibit)
{
if (m_isInhibitShow != isInhibit) {
if (!isInhibit) {
if (isHidden() || !isVisible()) {
show();
}
} else {
if (!isHidden() || isVisible()) {
hide();
}
}
m_isInhibitShow = isInhibit;
}
}

View File

@ -73,6 +73,8 @@ public:
void updateAuthFontSize(double fontSize); void updateAuthFontSize(double fontSize);
void inhibitShow(bool isInhibit);
private Q_SLOTS: private Q_SLOTS:
void onPamShowMessage(QString strMsg, int nType); void onPamShowMessage(QString strMsg, int nType);
void onPamShowPrompt(QString strPrompt, int nType); void onPamShowPrompt(QString strPrompt, int nType);
@ -174,6 +176,9 @@ private:
//一键开机认证函数 //一键开机认证函数
void startFirstLogin(); void startFirstLogin();
void startBioWaiting(unsigned uCurLoginOptType);
void stopBioWaiting(bool isDisable = false);
private: private:
LockDialogModel *m_modelLockDialog = nullptr; LockDialogModel *m_modelLockDialog = nullptr;
@ -204,6 +209,12 @@ private:
KLabel *m_labelQRCodeMsg = nullptr; // 二维码状态消息提示 KLabel *m_labelQRCodeMsg = nullptr; // 二维码状态消息提示
QLabel *m_labelQRCodeTip = nullptr; QLabel *m_labelQRCodeTip = nullptr;
QPushButton *m_fRetryButton = nullptr; //人脸识别重试按钮 QPushButton *m_fRetryButton = nullptr; //人脸识别重试按钮
// 指纹、指静脉、虹膜、声纹识别动图
QLabel *m_labelBioWaiting = nullptr; // 指纹、指静脉、虹膜、声纹识别动图提示
QTimer *m_timerBioWaiting = nullptr; // 指纹、指静脉、虹膜、声纹识别动图切换定时器
int m_nBioWaitingFrame = 0; // 当前显示的动图帧
int m_nCurBioWaitingType = -1; // 当前显示的动图类型
QWidget *m_widgetPlaceholder = nullptr; // 占位控件
QWidget *m_widgetLoginOpts = nullptr; // 登录选项 QWidget *m_widgetLoginOpts = nullptr; // 登录选项
KLabel *m_optionTip = nullptr; KLabel *m_optionTip = nullptr;
@ -284,5 +295,6 @@ private:
QString m_strLastPamAuthName = ""; QString m_strLastPamAuthName = "";
QDateTime m_lastPamAuthTime; QDateTime m_lastPamAuthTime;
bool m_isInhibitShow = false;
}; };
#endif // AUTHDIALOG_H #endif // AUTHDIALOG_H

View File

@ -23,9 +23,7 @@
#include <QPainter> #include <QPainter>
#include <QDebug> #include <QDebug>
KLabel::KLabel(QWidget *parent) : QLabel(parent) KLabel::KLabel(QWidget *parent) : QLabel(parent), m_speed(2), m_scrollOffset(0)
, m_speed(2)
, m_scrollOffset(0)
{ {
setWindowFlags(Qt::FramelessWindowHint); setWindowFlags(Qt::FramelessWindowHint);
// m_strText = ""; // m_strText = "";
@ -48,6 +46,12 @@ void KLabel::setFontFamily(QString &family)
this->setFont(sysFont); this->setFont(sysFont);
} }
void KLabel::setFontWeight(int weight)
{
sysFont.setWeight(weight);
this->setFont(sysFont);
}
void KLabel::setTipText(const QString &strText) void KLabel::setTipText(const QString &strText)
{ {
m_scrollOffset = 0; m_scrollOffset = 0;
@ -95,9 +99,15 @@ void KLabel::paintEvent(QPaintEvent *event)
if (m_isMarqueeMode) { if (m_isMarqueeMode) {
QLabel::setText(""); QLabel::setText("");
QPainter painter(this); QPainter painter(this);
painter.drawText(m_scrollOffset + contentsMargins().left(), rect().top(), width() - contentsMargins().left() - contentsMargins().right() - m_scrollOffset, height(), painter.drawText(
Qt::AlignLeft | Qt::TextSingleLine, m_strText); m_scrollOffset + contentsMargins().left(),
//qDebug()<<"MarqueueText:"<<m_scrollOffset<<rect().top()<<width() - contentsMargins().left() - contentsMargins().right() - m_scrollOffset<<height()<<","<<m_strText; rect().top(),
width() - contentsMargins().left() - contentsMargins().right() - m_scrollOffset,
height(),
Qt::AlignLeft | Qt::TextSingleLine,
m_strText);
// qDebug()<<"MarqueueText:"<<m_scrollOffset<<rect().top()<<width() - contentsMargins().left() -
// contentsMargins().right() - m_scrollOffset<<height()<<","<<m_strText;
startMarqueueTimer(); startMarqueueTimer();
} else { } else {
QLabel::setText(strEText); QLabel::setText(strEText);
@ -111,7 +121,8 @@ void KLabel::setMarqueueMode(bool isMarqueue)
{ {
m_isMarqueeMode = isMarqueue; m_isMarqueeMode = isMarqueue;
if (isMarqueue && !m_strText.isEmpty()) { if (isMarqueue && !m_strText.isEmpty()) {
QString strEText = getElidedText(font(), width() - contentsMargins().left() - contentsMargins().right(), m_strText); QString strEText
= getElidedText(font(), width() - contentsMargins().left() - contentsMargins().right(), m_strText);
if (strEText != m_strText) { if (strEText != m_strText) {
startMarqueueTimer(); startMarqueueTimer();
} }

View File

@ -35,6 +35,7 @@ public:
void clear(); void clear();
QString text() const; QString text() const;
void setFontFamily(QString &family); void setFontFamily(QString &family);
void setFontWeight(int weight);
void setMarqueueMode(bool isMarqueue); void setMarqueueMode(bool isMarqueue);
public Q_SLOTS: public Q_SLOTS:

View File

@ -102,6 +102,12 @@ bool LockWidget::eventFilter(QObject *obj, QEvent *event)
m_mediaControlWidget->initMultimediaControl(); m_mediaControlWidget->initMultimediaControl();
} }
} }
} else if (event->type() == QEvent::Hide) {
if (obj == this) {
if (authDialog && !authDialog->isHidden()) {
authDialog->hide();
}
}
} }
return false; return false;
@ -111,7 +117,7 @@ bool LockWidget::exitSubWidget(bool isForScreensaver, bool hideVirkeyboard)
{ {
if (m_isSessionTools) { if (m_isSessionTools) {
authDialog->setFocus(); authDialog->setFocus();
authDialog->show(); authDialog->inhibitShow(false);
buttonListWidget->show(); buttonListWidget->show();
m_timeWidget->show(); m_timeWidget->show();
m_powerListWidget->hide(); m_powerListWidget->hide();
@ -137,7 +143,7 @@ bool LockWidget::exitSubWidget(bool isForScreensaver, bool hideVirkeyboard)
} }
if (m_powerListWidget && m_powerListWidget->isVisible()) { if (m_powerListWidget && m_powerListWidget->isVisible()) {
authDialog->setFocus(); authDialog->setFocus();
authDialog->show(); authDialog->inhibitShow(false);
if (m_widgetMediaControl) { if (m_widgetMediaControl) {
m_widgetMediaControl->show(); m_widgetMediaControl->show();
} }
@ -339,6 +345,7 @@ void LockWidget::initUI()
authDialog = new AuthDialog(m_modelLockDialog, m_curUserInfo, this); authDialog = new AuthDialog(m_modelLockDialog, m_curUserInfo, this);
authDialog->installEventFilter(this); authDialog->installEventFilter(this);
authDialog->hide();
m_curFont = m_modelLockDialog->getCurFont(); m_curFont = m_modelLockDialog->getCurFont();
m_ptToPx = m_modelLockDialog->getPtToPx(); m_ptToPx = m_modelLockDialog->getPtToPx();
m_curFontSize = m_modelLockDialog->getCurFontSize(); m_curFontSize = m_modelLockDialog->getCurFontSize();
@ -1126,7 +1133,7 @@ void LockWidget::onShowPowerListWidget(bool issessionTools)
} }
if (m_powerListWidget->isHidden()) { if (m_powerListWidget->isHidden()) {
m_powerListWidget->show(); m_powerListWidget->show();
authDialog->hide(); authDialog->inhibitShow(true);
if (m_powerListWidget->getScrollShowStatus()) { // 如果显示Scroll直接从时间窗口底部开始显示 if (m_powerListWidget->getScrollShowStatus()) { // 如果显示Scroll直接从时间窗口底部开始显示
m_powerListWidget->move((width() - m_powerListWidget->width()) / 2, m_timeWidget->height() + 30); m_powerListWidget->move((width() - m_powerListWidget->width()) / 2, m_timeWidget->height() + 30);
} else { // 居中显示 } else { // 居中显示
@ -1143,7 +1150,7 @@ void LockWidget::onShowPowerListWidget(bool issessionTools)
} }
} else { } else {
m_powerListWidget->hide(); m_powerListWidget->hide();
authDialog->show(); authDialog->inhibitShow(false);
authDialog->setFocus(); authDialog->setFocus();
m_systemMonitorBtn->hide(); m_systemMonitorBtn->hide();
buttonListWidget->show(); buttonListWidget->show();
@ -1215,7 +1222,7 @@ void LockWidget::onHideVirkeyboard()
void LockWidget::onShowInhibitWarning(QStringList list, int type, bool iscommand) void LockWidget::onShowInhibitWarning(QStringList list, int type, bool iscommand)
{ {
authDialog->hide(); authDialog->inhibitShow(true);
if (m_widgetMediaControl) { if (m_widgetMediaControl) {
m_widgetMediaControl->hide(); m_widgetMediaControl->hide();
} }
@ -1238,7 +1245,7 @@ void LockWidget::onShowInhibitWarning(QStringList list, int type, bool iscommand
void LockWidget::onSureShutDown(int inhibitType, bool iscommand) void LockWidget::onSureShutDown(int inhibitType, bool iscommand)
{ {
authDialog->hide(); authDialog->inhibitShow(true);
buttonListWidget->hide(); buttonListWidget->hide();
m_timeWidget->hide(); m_timeWidget->hide();
m_powerListWidget->hide(); m_powerListWidget->hide();
@ -1271,7 +1278,7 @@ void LockWidget::onSureShutDown(int inhibitType, bool iscommand)
void LockWidget::onMulUsersLogined(int inhibitType, bool iscommand) void LockWidget::onMulUsersLogined(int inhibitType, bool iscommand)
{ {
authDialog->hide(); authDialog->inhibitShow(true);
if (m_widgetMediaControl) { if (m_widgetMediaControl) {
m_widgetMediaControl->hide(); m_widgetMediaControl->hide();
} }
@ -1306,7 +1313,7 @@ void LockWidget::onConfirmBtnClicked()
{ {
m_blockWidget->hide(); m_blockWidget->hide();
m_powerListWidget->hide(); m_powerListWidget->hide();
authDialog->show(); authDialog->inhibitShow(false);
if (m_widgetMediaControl) { if (m_widgetMediaControl) {
m_widgetMediaControl->show(); m_widgetMediaControl->show();
} }

View File

@ -43,10 +43,8 @@
#include <QJsonArray> #include <QJsonArray>
#include <QJsonParseError> #include <QJsonParseError>
LoginOptionsWidget::LoginOptionsWidget(BiometricHelper *bioHelper, LoginOptionsWidget::LoginOptionsWidget(
int uid, BiometricHelper *bioHelper, int uid, UniAuthService *uniauthService, QWidget *parent)
UniAuthService *uniauthService,
QWidget *parent)
: QWidget(parent), m_biomericProxy(bioHelper), m_uid(uid), m_uniauthService(uniauthService) : QWidget(parent), m_biomericProxy(bioHelper), m_uid(uid), m_uniauthService(uniauthService)
{ {
m_listPriority.clear(); m_listPriority.clear();
@ -324,16 +322,6 @@ void LoginOptionsWidget::updateOptionButtons()
isShowUkey = true; isShowUkey = true;
} }
if (m_mapOptBtns.size() <= 2 && (!isShowUkey && !m_mapDevices.contains(LOGINOPT_TYPE_CUSTOM))) {
// 因为默认添加一个密码选项因此当ukey没有显示出来时按钮数小于等于2时就隐藏选项界面
m_labelOptTitle->hide();
QMap<int, QPushButton *>::iterator itMapBtn = m_mapOptBtns.begin();
for (; itMapBtn != m_mapOptBtns.end(); itMapBtn++) {
if (itMapBtn.value()) {
itMapBtn.value()->hide();
}
}
} else {
m_labelOptTitle->show(); m_labelOptTitle->show();
QMap<int, QPushButton *>::iterator itMapBtn = m_mapOptBtns.begin(); QMap<int, QPushButton *>::iterator itMapBtn = m_mapOptBtns.begin();
for (; itMapBtn != m_mapOptBtns.end(); itMapBtn++) { for (; itMapBtn != m_mapOptBtns.end(); itMapBtn++) {
@ -342,13 +330,6 @@ void LoginOptionsWidget::updateOptionButtons()
} }
} }
} }
m_mapOptBtns[-1]->hide();
if (m_mapOptBtns.size() == 2 && (isShowUkey || m_mapDevices.contains(LOGINOPT_TYPE_CUSTOM))) {
m_mapOptBtns[-1]->show();
} else if (m_mapOptBtns.size() == 3 && isShowUkey && m_mapDevices.contains(LOGINOPT_TYPE_CUSTOM)) {
m_mapOptBtns[-1]->show();
}
}
void LoginOptionsWidget::setUser(int uid) void LoginOptionsWidget::setUser(int uid)
{ {
@ -572,7 +553,8 @@ void LoginOptionsWidget::onIdentifyComplete(QDBusPendingCallWatcher *watcher)
Q_EMIT authComplete(false, 1); Q_EMIT authComplete(false, 1);
} else if (ret.opsStatus == OPS_IDENTIFY_STOP_BY_USER || ret.opsStatus == OPS_VERIFY_STOP_BY_USER) { } else if (ret.opsStatus == OPS_IDENTIFY_STOP_BY_USER || ret.opsStatus == OPS_VERIFY_STOP_BY_USER) {
Q_EMIT authComplete(false, -2); // 主动停止,直接重试 Q_EMIT authComplete(false, -2); // 主动停止,直接重试
} else if (ret.opsStatus == OPS_OPEN_FAIL } else if (
ret.opsStatus == OPS_OPEN_FAIL
|| ret.opsStatus == OPS_OPEN_ERROR) { // 无法打开设备(设备是坏的/被占用),直接停止 || ret.opsStatus == OPS_OPEN_ERROR) { // 无法打开设备(设备是坏的/被占用),直接停止
Q_EMIT authComplete(false, 5); Q_EMIT authComplete(false, 5);
} else if (ret.opsStatus >= OPS_GET_FLIST_SUCCESS && ret.opsStatus <= OPS_GET_FLIST_MAX) { } else if (ret.opsStatus >= OPS_GET_FLIST_SUCCESS && ret.opsStatus <= OPS_GET_FLIST_MAX) {
@ -959,6 +941,9 @@ QString LoginOptionsWidget::getDefaultDevice(QString strUserName)
if (m_uniauthService && m_uniauthService->isActivatable()) { if (m_uniauthService && m_uniauthService->isActivatable()) {
QString defaultDeviceName = ""; QString defaultDeviceName = "";
for (auto bioType : m_listPriority) { for (auto bioType : m_listPriority) {
if (bioType == UniT_Remote) {
continue;
}
QString strDeviceName = m_uniauthService->getDefaultDevice(strUserName, bioType); QString strDeviceName = m_uniauthService->getDefaultDevice(strUserName, bioType);
if (!strDeviceName.isEmpty()) { if (!strDeviceName.isEmpty()) {
DeviceInfoPtr pDeviceInfo = findDeviceByName(strDeviceName); DeviceInfoPtr pDeviceInfo = findDeviceByName(strDeviceName);