inlines part 3 - settings

This commit is contained in:
ingvar1995 2016-04-14 11:29:59 +03:00
parent af22d8ef23
commit 100d83aea7
6 changed files with 252 additions and 201 deletions

View File

@ -257,10 +257,9 @@ class PrivacySettings(CenteredWidget):
def initUI(self): def initUI(self):
self.setObjectName("privacySettings") self.setObjectName("privacySettings")
self.resize(350, 200) self.resize(350, 400)
self.setMinimumSize(QtCore.QSize(350, 200)) self.setMinimumSize(QtCore.QSize(350, 400))
self.setMaximumSize(QtCore.QSize(350, 200)) self.setMaximumSize(QtCore.QSize(350, 400))
self.setBaseSize(QtCore.QSize(350, 200))
self.saveHistory = QtGui.QCheckBox(self) self.saveHistory = QtGui.QCheckBox(self)
self.saveHistory.setGeometry(QtCore.QRect(40, 20, 291, 22)) self.saveHistory.setGeometry(QtCore.QRect(40, 20, 291, 22))
self.saveHistory.setObjectName("saveHistory") self.saveHistory.setObjectName("saveHistory")
@ -268,19 +267,25 @@ class PrivacySettings(CenteredWidget):
self.fileautoaccept.setGeometry(QtCore.QRect(40, 60, 271, 22)) self.fileautoaccept.setGeometry(QtCore.QRect(40, 60, 271, 22))
self.fileautoaccept.setObjectName("fileautoaccept") self.fileautoaccept.setObjectName("fileautoaccept")
self.typingNotifications = QtGui.QCheckBox(self) self.typingNotifications = QtGui.QCheckBox(self)
self.typingNotifications.setGeometry(QtCore.QRect(40, 90, 350, 30)) self.typingNotifications.setGeometry(QtCore.QRect(40, 100, 350, 30))
self.typingNotifications.setObjectName("typingNotifications") self.typingNotifications.setObjectName("typingNotifications")
self.inlines = QtGui.QCheckBox(self)
self.inlines.setGeometry(QtCore.QRect(40, 140, 350, 30))
self.inlines.setObjectName("inlines")
self.auto_path = QtGui.QLabel(self) self.auto_path = QtGui.QLabel(self)
self.auto_path.setGeometry(QtCore.QRect(40, 120, 350, 30)) self.auto_path.setGeometry(QtCore.QRect(40, 190, 350, 30))
self.path = QtGui.QPlainTextEdit(self) self.path = QtGui.QPlainTextEdit(self)
self.path.setGeometry(QtCore.QRect(10, 160, 330, 30)) self.path.setGeometry(QtCore.QRect(10, 240, 330, 30))
self.change_path = QtGui.QPushButton(self) self.change_path = QtGui.QPushButton(self)
self.change_path.setGeometry(QtCore.QRect(230, 120, 100, 30)) self.change_path.setGeometry(QtCore.QRect(125, 280, 100, 30))
self.retranslateUi() self.retranslateUi()
settings = Settings.get_instance() settings = Settings.get_instance()
self.typingNotifications.setChecked(settings['typing_notifications']) self.typingNotifications.setChecked(settings['typing_notifications'])
self.fileautoaccept.setChecked(settings['allow_auto_accept']) self.fileautoaccept.setChecked(settings['allow_auto_accept'])
self.saveHistory.setChecked(settings['save_history']) self.saveHistory.setChecked(settings['save_history'])
self.inlines.setChecked(settings['allow_inline'])
self.path.setPlainText(settings['auto_accept_path'] or curr_directory()) self.path.setPlainText(settings['auto_accept_path'] or curr_directory())
self.change_path.clicked.connect(self.new_path) self.change_path.clicked.connect(self.new_path)
QtCore.QMetaObject.connectSlotsByName(self) QtCore.QMetaObject.connectSlotsByName(self)
@ -292,15 +297,29 @@ class PrivacySettings(CenteredWidget):
self.typingNotifications.setText(QtGui.QApplication.translate("privacySettings", "Send typing notifications", None, QtGui.QApplication.UnicodeUTF8)) self.typingNotifications.setText(QtGui.QApplication.translate("privacySettings", "Send typing notifications", None, QtGui.QApplication.UnicodeUTF8))
self.auto_path.setText(QtGui.QApplication.translate("privacySettings", "Auto accept default path:", None, QtGui.QApplication.UnicodeUTF8)) self.auto_path.setText(QtGui.QApplication.translate("privacySettings", "Auto accept default path:", None, QtGui.QApplication.UnicodeUTF8))
self.change_path.setText(QtGui.QApplication.translate("privacySettings", "Change", None, QtGui.QApplication.UnicodeUTF8)) self.change_path.setText(QtGui.QApplication.translate("privacySettings", "Change", None, QtGui.QApplication.UnicodeUTF8))
self.inlines.setText(QtGui.QApplication.translate("privacySettings", "Allow inlines", None, QtGui.QApplication.UnicodeUTF8))
def closeEvent(self, event): def closeEvent(self, event):
settings = Settings.get_instance() settings = Settings.get_instance()
settings['typing_notifications'] = self.typingNotifications.isChecked() settings['typing_notifications'] = self.typingNotifications.isChecked()
settings['allow_auto_accept'] = self.fileautoaccept.isChecked() settings['allow_auto_accept'] = self.fileautoaccept.isChecked()
if settings['save_history'] and not self.saveHistory.isChecked(): # clear history if settings['save_history'] and not self.saveHistory.isChecked(): # clear history
Profile.get_instance().clear_history() reply = QtGui.QMessageBox.question(None,
settings['save_history'] = self.saveHistory.isChecked() QtGui.QApplication.translate("privacySettings",
'Chat history',
None, QtGui.QApplication.UnicodeUTF8),
QtGui.QApplication.translate("privacySettings",
'History will be cleaned! Continue?',
None, QtGui.QApplication.UnicodeUTF8),
QtGui.QMessageBox.Yes,
QtGui.QMessageBox.No)
if reply == QtGui.QMessageBox.Yes:
Profile.get_instance().clear_history()
settings['save_history'] = self.saveHistory.isChecked()
else:
settings['save_history'] = self.saveHistory.isChecked()
settings['auto_accept_path'] = self.path.toPlainText() settings['auto_accept_path'] = self.path.toPlainText()
settings['allow_inline'] = self.inlines.isChecked()
settings.save() settings.save()
def new_path(self): def new_path(self):

View File

@ -896,7 +896,7 @@ class Profile(Contact, Singleton):
if transfer.state: if transfer.state:
del self._file_transfers[(friend_number, file_number)] del self._file_transfers[(friend_number, file_number)]
if type(transfer) is not SendAvatar: if type(transfer) is not SendAvatar:
if type(transfer) is SendFromBuffer: # inline if type(transfer) is SendFromBuffer and Settings.get_instance()['allow_inline']: # inline
inline = InlineImage(transfer.get_data()) inline = InlineImage(transfer.get_data())
self.get_friend_by_number(friend_number).update_transfer_data(file_number, self.get_friend_by_number(friend_number).update_transfer_data(file_number,
FILE_TRANSFER_MESSAGE_STATUS['FINISHED'], FILE_TRANSFER_MESSAGE_STATUS['FINISHED'],

Binary file not shown.

View File

@ -1,21 +1,22 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS><TS version="1.1" language="en"> <!DOCTYPE TS>
<TS version="2.0" language="en">
<context> <context>
<name>AddContact</name> <name>AddContact</name>
<message> <message>
<location filename="menu.py" line="76"/> <location filename="menu.py" line="76"/>
<source>Add contact</source> <source>Add contact</source>
<translation type="unfinished">Add contact</translation> <translation>Add contact</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="78"/> <location filename="menu.py" line="78"/>
<source>TOX ID:</source> <source>TOX ID:</source>
<translation type="unfinished">TOX ID:</translation> <translation>TOX ID:</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="79"/> <location filename="menu.py" line="79"/>
<source>Message:</source> <source>Message:</source>
<translation type="unfinished">Message:</translation> <translation>Message:</translation>
</message> </message>
</context> </context>
<context> <context>
@ -23,37 +24,37 @@
<message> <message>
<location filename="menu.py" line="77"/> <location filename="menu.py" line="77"/>
<source>Send request</source> <source>Send request</source>
<translation type="unfinished">Send request</translation> <translation>Send request</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="227"/> <location filename="menu.py" line="227"/>
<source>IPv6</source> <source>IPv6</source>
<translation type="unfinished">IPv6</translation> <translation>IPv6</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="228"/> <location filename="menu.py" line="228"/>
<source>UDP</source> <source>UDP</source>
<translation type="unfinished">UDP</translation> <translation>UDP</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="229"/> <location filename="menu.py" line="229"/>
<source>Proxy</source> <source>Proxy</source>
<translation type="unfinished">Proxy</translation> <translation>Proxy</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="230"/> <location filename="menu.py" line="230"/>
<source>IP:</source> <source>IP:</source>
<translation type="unfinished">IP:</translation> <translation>IP:</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="231"/> <location filename="menu.py" line="231"/>
<source>Port:</source> <source>Port:</source>
<translation type="unfinished">Port:</translation> <translation>Port:</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="87"/> <location filename="mainscreen.py" line="87"/>
<source>Online contacts</source> <source>Online contacts</source>
<translation type="unfinished">Online contacts</translation> <translation>Online contacts</translation>
</message> </message>
</context> </context>
<context> <context>
@ -61,98 +62,98 @@
<message> <message>
<location filename="mainscreen.py" line="92"/> <location filename="mainscreen.py" line="92"/>
<source>Profile</source> <source>Profile</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="98"/> <location filename="mainscreen.py" line="98"/>
<source>Settings</source> <source>Settings</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="280"/> <location filename="mainscreen.py" line="280"/>
<source>About</source> <source>About</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="91"/> <location filename="mainscreen.py" line="91"/>
<source>Add contact</source> <source>Add contact</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="93"/> <location filename="mainscreen.py" line="93"/>
<source>Privacy</source> <source>Privacy</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="94"/> <location filename="mainscreen.py" line="94"/>
<source>Interface</source> <source>Interface</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="95"/> <location filename="mainscreen.py" line="95"/>
<source>Notifications</source> <source>Notifications</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="96"/> <location filename="mainscreen.py" line="96"/>
<source>Network</source> <source>Network</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="97"/> <location filename="mainscreen.py" line="97"/>
<source>About program</source> <source>About program</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="profile.py" line="686"/> <location filename="profile.py" line="700"/>
<source>User {} wants to add you to contact list. Message: <source>User {} wants to add you to contact list. Message:
{}</source> {}</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="profile.py" line="688"/> <location filename="profile.py" line="702"/>
<source>Friend request</source> <source>Friend request</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="281"/> <location filename="mainscreen.py" line="281"/>
<source>Toxygen is Tox client written on Python 2.7. Version: </source> <source>Toxygen is Tox client written on Python 2.7. Version: </source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="319"/> <location filename="mainscreen.py" line="319"/>
<source>Choose file</source> <source>Choose file</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="338"/> <location filename="mainscreen.py" line="338"/>
<source>Disallow auto accept</source> <source>Disallow auto accept</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="339"/> <location filename="mainscreen.py" line="339"/>
<source>Allow auto accept</source> <source>Allow auto accept</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="341"/> <location filename="mainscreen.py" line="341"/>
<source>Set alias</source> <source>Set alias</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="342"/> <location filename="mainscreen.py" line="342"/>
<source>Clear history</source> <source>Clear history</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="343"/> <location filename="mainscreen.py" line="343"/>
<source>Copy public key</source> <source>Copy public key</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="345"/> <location filename="mainscreen.py" line="345"/>
<source>Remove friend</source> <source>Remove friend</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
</context> </context>
<context> <context>
@ -160,7 +161,7 @@
<message> <message>
<location filename="menu.py" line="226"/> <location filename="menu.py" line="226"/>
<source>Network settings</source> <source>Network settings</source>
<translation type="unfinished">Network settings</translation> <translation>Network settings</translation>
</message> </message>
</context> </context>
<context> <context>
@ -168,60 +169,60 @@
<message> <message>
<location filename="menu.py" line="142"/> <location filename="menu.py" line="142"/>
<source>Export profile</source> <source>Export profile</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="143"/> <location filename="menu.py" line="143"/>
<source>Profile settings</source> <source>Profile settings</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="144"/> <location filename="menu.py" line="144"/>
<source>Name:</source> <source>Name:</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="145"/> <location filename="menu.py" line="145"/>
<source>Status:</source> <source>Status:</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="146"/> <location filename="menu.py" line="146"/>
<source>TOX ID:</source> <source>TOX ID:</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="147"/> <location filename="menu.py" line="147"/>
<source>Copy TOX ID</source> <source>Copy TOX ID</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="148"/> <location filename="menu.py" line="148"/>
<source>New avatar</source> <source>New avatar</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="149"/> <location filename="menu.py" line="149"/>
<source>Reset avatar</source> <source>Reset avatar</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
</context> </context>
<context> <context>
<name>interfaceForm</name> <name>interfaceForm</name>
<message> <message>
<location filename="menu.py" line="401"/> <location filename="menu.py" line="420"/>
<source>Interface settings</source> <source>Interface settings</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="402"/> <location filename="menu.py" line="421"/>
<source>Theme:</source> <source>Theme:</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="403"/> <location filename="menu.py" line="422"/>
<source>Language:</source> <source>Language:</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
</context> </context>
<context> <context>
@ -229,116 +230,131 @@
<message> <message>
<location filename="loginscreen.py" line="66"/> <location filename="loginscreen.py" line="66"/>
<source>Log in</source> <source>Log in</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="67"/> <location filename="loginscreen.py" line="67"/>
<source>Create</source> <source>Create</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="68"/> <location filename="loginscreen.py" line="68"/>
<source>Profile name:</source> <source>Profile name:</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="69"/> <location filename="loginscreen.py" line="69"/>
<source>Load profile</source> <source>Load profile</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="70"/> <location filename="loginscreen.py" line="70"/>
<source>Use as default</source> <source>Use as default</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="71"/> <location filename="loginscreen.py" line="71"/>
<source>Load existing profile</source> <source>Load existing profile</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="72"/> <location filename="loginscreen.py" line="72"/>
<source>Create new profile</source> <source>Create new profile</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="73"/> <location filename="loginscreen.py" line="73"/>
<source>toxygen</source> <source>toxygen</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="main.py" line="81"/> <location filename="main.py" line="80"/>
<source>Looks like other instance of Toxygen uses this profile! Continue?</source> <source>Looks like other instance of Toxygen uses this profile! Continue?</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
</context> </context>
<context> <context>
<name>notificationsForm</name> <name>notificationsForm</name>
<message> <message>
<location filename="menu.py" line="342"/> <location filename="menu.py" line="361"/>
<source>Notification settings</source> <source>Notification settings</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="343"/> <location filename="menu.py" line="362"/>
<source>Enable notifications</source> <source>Enable notifications</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="344"/> <location filename="menu.py" line="363"/>
<source>Enable call&apos;s sound</source> <source>Enable call&apos;s sound</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="345"/> <location filename="menu.py" line="364"/>
<source>Enable sound notifications</source> <source>Enable sound notifications</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
</context> </context>
<context> <context>
<name>privacySettings</name> <name>privacySettings</name>
<message>
<location filename="menu.py" line="289"/>
<source>Privacy settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="menu.py" line="290"/>
<source>Save chat history</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="menu.py" line="291"/>
<source>Allow file auto accept</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="menu.py" line="292"/>
<source>Send typing notifications</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="menu.py" line="293"/>
<source>Auto accept default path:</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<location filename="menu.py" line="294"/> <location filename="menu.py" line="294"/>
<source>Privacy settings</source>
<translation></translation>
</message>
<message>
<location filename="menu.py" line="295"/>
<source>Save chat history</source>
<translation></translation>
</message>
<message>
<location filename="menu.py" line="296"/>
<source>Allow file auto accept</source>
<translation></translation>
</message>
<message>
<location filename="menu.py" line="297"/>
<source>Send typing notifications</source>
<translation></translation>
</message>
<message>
<location filename="menu.py" line="298"/>
<source>Auto accept default path:</source>
<translation></translation>
</message>
<message>
<location filename="menu.py" line="299"/>
<source>Change</source> <source>Change</source>
<translation type="unfinished"></translation> <translation></translation>
</message>
<message>
<location filename="menu.py" line="300"/>
<source>Allow inlines</source>
<translation></translation>
</message>
<message>
<location filename="menu.py" line="310"/>
<source>Chat history</source>
<translation></translation>
</message>
<message>
<location filename="menu.py" line="313"/>
<source>History will be cleaned! Continue?</source>
<translation></translation>
</message> </message>
</context> </context>
<context> <context>
<name>tray</name> <name>tray</name>
<message> <message>
<location filename="main.py" line="108"/> <location filename="main.py" line="106"/>
<source>Open Toxygen</source> <source>Open Toxygen</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="main.py" line="109"/> <location filename="main.py" line="107"/>
<source>Exit</source> <source>Exit</source>
<translation type="unfinished"></translation> <translation></translation>
</message> </message>
</context> </context>
</TS> </TS>

Binary file not shown.

View File

@ -1,21 +1,22 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS><TS version="1.1" language="ru_RU"> <!DOCTYPE TS>
<TS version="2.0" language="ru_RU">
<context> <context>
<name>AddContact</name> <name>AddContact</name>
<message> <message>
<location filename="menu.py" line="76"/> <location filename="menu.py" line="76"/>
<source>Add contact</source> <source>Add contact</source>
<translation type="unfinished">Добавить контакт</translation> <translation>Добавить контакт</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="78"/> <location filename="menu.py" line="78"/>
<source>TOX ID:</source> <source>TOX ID:</source>
<translation type="unfinished">TOX ID:</translation> <translation>TOX ID:</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="79"/> <location filename="menu.py" line="79"/>
<source>Message:</source> <source>Message:</source>
<translation type="unfinished">Сообщение:</translation> <translation>Сообщение:</translation>
</message> </message>
</context> </context>
<context> <context>
@ -23,37 +24,37 @@
<message> <message>
<location filename="menu.py" line="77"/> <location filename="menu.py" line="77"/>
<source>Send request</source> <source>Send request</source>
<translation type="unfinished">Отправить запрос</translation> <translation>Отправить запрос</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="227"/> <location filename="menu.py" line="227"/>
<source>IPv6</source> <source>IPv6</source>
<translation type="unfinished">IPv6</translation> <translation>IPv6</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="228"/> <location filename="menu.py" line="228"/>
<source>UDP</source> <source>UDP</source>
<translation type="unfinished">UDP</translation> <translation>UDP</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="229"/> <location filename="menu.py" line="229"/>
<source>Proxy</source> <source>Proxy</source>
<translation type="unfinished">Прокси</translation> <translation>Прокси</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="230"/> <location filename="menu.py" line="230"/>
<source>IP:</source> <source>IP:</source>
<translation type="unfinished">IP:</translation> <translation>IP:</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="231"/> <location filename="menu.py" line="231"/>
<source>Port:</source> <source>Port:</source>
<translation type="unfinished">Порт:</translation> <translation>Порт:</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="87"/> <location filename="mainscreen.py" line="87"/>
<source>Online contacts</source> <source>Online contacts</source>
<translation type="unfinished">Контакты в сети</translation> <translation>Контакты в сети</translation>
</message> </message>
</context> </context>
<context> <context>
@ -61,99 +62,99 @@
<message> <message>
<location filename="mainscreen.py" line="92"/> <location filename="mainscreen.py" line="92"/>
<source>Profile</source> <source>Profile</source>
<translation type="unfinished">Профиль</translation> <translation>Профиль</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="98"/> <location filename="mainscreen.py" line="98"/>
<source>Settings</source> <source>Settings</source>
<translation type="unfinished">Настройки</translation> <translation>Настройки</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="280"/> <location filename="mainscreen.py" line="280"/>
<source>About</source> <source>About</source>
<translation type="unfinished">О программе</translation> <translation>О программе</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="91"/> <location filename="mainscreen.py" line="91"/>
<source>Add contact</source> <source>Add contact</source>
<translation type="unfinished">Добавить контакт</translation> <translation>Добавить контакт</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="93"/> <location filename="mainscreen.py" line="93"/>
<source>Privacy</source> <source>Privacy</source>
<translation type="unfinished">Приватность</translation> <translation>Приватность</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="94"/> <location filename="mainscreen.py" line="94"/>
<source>Interface</source> <source>Interface</source>
<translation type="unfinished">Интерфейс</translation> <translation>Интерфейс</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="95"/> <location filename="mainscreen.py" line="95"/>
<source>Notifications</source> <source>Notifications</source>
<translation type="unfinished">Уведомления</translation> <translation>Уведомления</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="96"/> <location filename="mainscreen.py" line="96"/>
<source>Network</source> <source>Network</source>
<translation type="unfinished">Сеть</translation> <translation>Сеть</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="97"/> <location filename="mainscreen.py" line="97"/>
<source>About program</source> <source>About program</source>
<translation type="unfinished">О программе</translation> <translation>О программе</translation>
</message> </message>
<message> <message>
<location filename="profile.py" line="686"/> <location filename="profile.py" line="700"/>
<source>User {} wants to add you to contact list. Message: <source>User {} wants to add you to contact list. Message:
{}</source> {}</source>
<translation type="unfinished">Пользователь {} хочет добавить Вас в список контактов. Сообщение: <translation>Пользователь {} хочет добавить Вас в список контактов. Сообщение:
{}</translation> {}</translation>
</message> </message>
<message> <message>
<location filename="profile.py" line="688"/> <location filename="profile.py" line="702"/>
<source>Friend request</source> <source>Friend request</source>
<translation type="unfinished">Запрос на добавление в друзья</translation> <translation>Запрос на добавление в друзья</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="281"/> <location filename="mainscreen.py" line="281"/>
<source>Toxygen is Tox client written on Python 2.7. Version: </source> <source>Toxygen is Tox client written on Python 2.7. Version: </source>
<translation type="unfinished">Toxygen - клиент для мессенджера Tox, написанный на Python 2.7. Версия: </translation> <translation>Toxygen - клиент для мессенджера Tox, написанный на Python 2.7. Версия: </translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="319"/> <location filename="mainscreen.py" line="319"/>
<source>Choose file</source> <source>Choose file</source>
<translation type="unfinished">Выберите файл</translation> <translation>Выберите файл</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="338"/> <location filename="mainscreen.py" line="338"/>
<source>Disallow auto accept</source> <source>Disallow auto accept</source>
<translation type="unfinished">Запретить автоматическое получение файлов</translation> <translation>Запретить автоматическое получение файлов</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="339"/> <location filename="mainscreen.py" line="339"/>
<source>Allow auto accept</source> <source>Allow auto accept</source>
<translation type="unfinished">Разрешить автоматическое получение файлов</translation> <translation>Разрешить автоматическое получение файлов</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="341"/> <location filename="mainscreen.py" line="341"/>
<source>Set alias</source> <source>Set alias</source>
<translation type="unfinished">Изменить псевдоним</translation> <translation>Изменить псевдоним</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="342"/> <location filename="mainscreen.py" line="342"/>
<source>Clear history</source> <source>Clear history</source>
<translation type="unfinished">Очистить историю</translation> <translation>Очистить историю</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="343"/> <location filename="mainscreen.py" line="343"/>
<source>Copy public key</source> <source>Copy public key</source>
<translation type="unfinished">Копировать публичный ключ</translation> <translation>Копировать публичный ключ</translation>
</message> </message>
<message> <message>
<location filename="mainscreen.py" line="345"/> <location filename="mainscreen.py" line="345"/>
<source>Remove friend</source> <source>Remove friend</source>
<translation type="unfinished">Удалить друга</translation> <translation>Удалить друга</translation>
</message> </message>
</context> </context>
<context> <context>
@ -161,7 +162,7 @@
<message> <message>
<location filename="menu.py" line="226"/> <location filename="menu.py" line="226"/>
<source>Network settings</source> <source>Network settings</source>
<translation type="unfinished">Настройки сети</translation> <translation>Настройки сети</translation>
</message> </message>
</context> </context>
<context> <context>
@ -169,32 +170,32 @@
<message> <message>
<location filename="menu.py" line="142"/> <location filename="menu.py" line="142"/>
<source>Export profile</source> <source>Export profile</source>
<translation type="unfinished">Экспорт профиля</translation> <translation>Экспорт профиля</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="143"/> <location filename="menu.py" line="143"/>
<source>Profile settings</source> <source>Profile settings</source>
<translation type="unfinished">Настройки профиля</translation> <translation>Настройки профиля</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="144"/> <location filename="menu.py" line="144"/>
<source>Name:</source> <source>Name:</source>
<translation type="unfinished">Имя:</translation> <translation>Имя:</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="145"/> <location filename="menu.py" line="145"/>
<source>Status:</source> <source>Status:</source>
<translation type="unfinished">Статус:</translation> <translation>Статус:</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="146"/> <location filename="menu.py" line="146"/>
<source>TOX ID:</source> <source>TOX ID:</source>
<translation type="unfinished">TOX ID:</translation> <translation>TOX ID:</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="147"/> <location filename="menu.py" line="147"/>
<source>Copy TOX ID</source> <source>Copy TOX ID</source>
<translation type="unfinished">Копировать TOX ID</translation> <translation>Копировать TOX ID</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="156"/> <location filename="menu.py" line="156"/>
@ -204,30 +205,30 @@
<message> <message>
<location filename="menu.py" line="148"/> <location filename="menu.py" line="148"/>
<source>New avatar</source> <source>New avatar</source>
<translation type="unfinished">Новый аватар</translation> <translation>Новый аватар</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="149"/> <location filename="menu.py" line="149"/>
<source>Reset avatar</source> <source>Reset avatar</source>
<translation type="unfinished">Сбросить аватар</translation> <translation>Сбросить аватар</translation>
</message> </message>
</context> </context>
<context> <context>
<name>interfaceForm</name> <name>interfaceForm</name>
<message> <message>
<location filename="menu.py" line="401"/> <location filename="menu.py" line="420"/>
<source>Interface settings</source> <source>Interface settings</source>
<translation type="unfinished">Настройки интерфейса</translation> <translation>Настройки интерфейса</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="402"/> <location filename="menu.py" line="421"/>
<source>Theme:</source> <source>Theme:</source>
<translation type="unfinished">Тема:</translation> <translation>Тема:</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="403"/> <location filename="menu.py" line="422"/>
<source>Language:</source> <source>Language:</source>
<translation type="unfinished">Язык:</translation> <translation>Язык:</translation>
</message> </message>
</context> </context>
<context> <context>
@ -235,117 +236,132 @@
<message> <message>
<location filename="loginscreen.py" line="66"/> <location filename="loginscreen.py" line="66"/>
<source>Log in</source> <source>Log in</source>
<translation type="unfinished">Вход</translation> <translation>Вход</translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="67"/> <location filename="loginscreen.py" line="67"/>
<source>Create</source> <source>Create</source>
<translation type="unfinished">Создать</translation> <translation>Создать</translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="68"/> <location filename="loginscreen.py" line="68"/>
<source>Profile name:</source> <source>Profile name:</source>
<translation type="unfinished">Имя профиля:</translation> <translation>Имя профиля:</translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="69"/> <location filename="loginscreen.py" line="69"/>
<source>Load profile</source> <source>Load profile</source>
<translation type="unfinished">Загрузить профиль</translation> <translation>Загрузить профиль</translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="70"/> <location filename="loginscreen.py" line="70"/>
<source>Use as default</source> <source>Use as default</source>
<translation type="unfinished">По умолчанию</translation> <translation>По умолчанию</translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="71"/> <location filename="loginscreen.py" line="71"/>
<source>Load existing profile</source> <source>Load existing profile</source>
<translation type="unfinished">Загрузить профиль</translation> <translation>Загрузить профиль</translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="72"/> <location filename="loginscreen.py" line="72"/>
<source>Create new profile</source> <source>Create new profile</source>
<translation type="unfinished">Создать новый профиль</translation> <translation>Создать новый профиль</translation>
</message> </message>
<message> <message>
<location filename="loginscreen.py" line="73"/> <location filename="loginscreen.py" line="73"/>
<source>toxygen</source> <source>toxygen</source>
<translation type="unfinished">toxygen</translation> <translation>toxygen</translation>
</message> </message>
<message> <message>
<location filename="main.py" line="81"/> <location filename="main.py" line="80"/>
<source>Looks like other instance of Toxygen uses this profile! Continue?</source> <source>Looks like other instance of Toxygen uses this profile! Continue?</source>
<translation type="unfinished">Похоже, что этот профиль используется другим экземпляром Toxygen! Продолжить?</translation> <translation>Похоже, что этот профиль используется другим экземпляром Toxygen! Продолжить?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>notificationsForm</name> <name>notificationsForm</name>
<message> <message>
<location filename="menu.py" line="342"/> <location filename="menu.py" line="361"/>
<source>Notification settings</source> <source>Notification settings</source>
<translation type="unfinished">Настройки уведомлений</translation> <translation>Настройки уведомлений</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="343"/> <location filename="menu.py" line="362"/>
<source>Enable notifications</source> <source>Enable notifications</source>
<translation type="unfinished">Включить уведомления</translation> <translation>Включить уведомления</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="344"/> <location filename="menu.py" line="363"/>
<source>Enable call&apos;s sound</source> <source>Enable call&apos;s sound</source>
<translation type="unfinished">Включить звук звонков</translation> <translation>Включить звук звонка</translation>
</message> </message>
<message> <message>
<location filename="menu.py" line="345"/> <location filename="menu.py" line="364"/>
<source>Enable sound notifications</source> <source>Enable sound notifications</source>
<translation type="unfinished">Включить звуковые уведомления <translation>Включить звуковые уведомления
</translation> </translation>
</message> </message>
</context> </context>
<context> <context>
<name>privacySettings</name> <name>privacySettings</name>
<message>
<location filename="menu.py" line="289"/>
<source>Privacy settings</source>
<translation type="unfinished">Настройки приватности</translation>
</message>
<message>
<location filename="menu.py" line="290"/>
<source>Save chat history</source>
<translation type="unfinished">Сохранять историю переписки</translation>
</message>
<message>
<location filename="menu.py" line="291"/>
<source>Allow file auto accept</source>
<translation type="unfinished">Разрешить автополучение файлов</translation>
</message>
<message>
<location filename="menu.py" line="292"/>
<source>Send typing notifications</source>
<translation type="unfinished">Посылать уведомления о наборе текста</translation>
</message>
<message>
<location filename="menu.py" line="293"/>
<source>Auto accept default path:</source>
<translation type="unfinished">Путь автоприема файлов:</translation>
</message>
<message> <message>
<location filename="menu.py" line="294"/> <location filename="menu.py" line="294"/>
<source>Privacy settings</source>
<translation>Настройки приватности</translation>
</message>
<message>
<location filename="menu.py" line="295"/>
<source>Save chat history</source>
<translation>Сохранять историю переписки</translation>
</message>
<message>
<location filename="menu.py" line="296"/>
<source>Allow file auto accept</source>
<translation>Разрешить автополучение файлов</translation>
</message>
<message>
<location filename="menu.py" line="297"/>
<source>Send typing notifications</source>
<translation>Посылать уведомления о наборе текста</translation>
</message>
<message>
<location filename="menu.py" line="298"/>
<source>Auto accept default path:</source>
<translation>Путь автоприема файлов:</translation>
</message>
<message>
<location filename="menu.py" line="299"/>
<source>Change</source> <source>Change</source>
<translation type="unfinished">Изменить</translation> <translation>Изменить</translation>
</message>
<message>
<location filename="menu.py" line="300"/>
<source>Allow inlines</source>
<translation>Разрешать инлайны</translation>
</message>
<message>
<location filename="menu.py" line="310"/>
<source>Chat history</source>
<translation>История чата</translation>
</message>
<message>
<location filename="menu.py" line="313"/>
<source>History will be cleaned! Continue?</source>
<translation>История переписки будет очищена! Продолжить?</translation>
</message> </message>
</context> </context>
<context> <context>
<name>tray</name> <name>tray</name>
<message> <message>
<location filename="main.py" line="108"/> <location filename="main.py" line="106"/>
<source>Open Toxygen</source> <source>Open Toxygen</source>
<translation type="unfinished">Открыть Toxygen</translation> <translation>Открыть Toxygen</translation>
</message> </message>
<message> <message>
<location filename="main.py" line="109"/> <location filename="main.py" line="107"/>
<source>Exit</source> <source>Exit</source>
<translation type="unfinished">Выход</translation> <translation>Выход</translation>
</message> </message>
</context> </context>
</TS> </TS>