diff --git a/README.md b/README.md
index c007791..4401476 100644
--- a/README.md
+++ b/README.md
@@ -33,24 +33,25 @@ Toxygen is cross-platform [Tox](https://tox.chat/) client written on Python
- [x] File resuming
- [x] Save file encryption
- [x] Plugins support
+- [x] Read receipts
+- [x] Faux offline messaging
- [ ] Video
- [ ] Group chats
-- [ ] Read receipts
-- [ ] Faux offline messaging
- [ ] Desktop sharing
###Downloads
+[Releases](https://github.com/xveduk/toxygen/releases)
+
[Download last stable version](https://github.com/xveduk/toxygen/archive/master.zip)
[Download develop version](https://github.com/xveduk/toxygen/archive/develop.zip)
-[Releases](https://github.com/xveduk/toxygen/releases)
-
###Screenshots
*Toxygen on Ubuntu and Windows*
![Ubuntu](/docs/ubuntu.png)
![Windows](/docs/windows.png)
+
###Docs
[Check /docs/ for more info](/docs/)
diff --git a/docs/contributing.md b/docs/contributing.md
index 32b835e..2eeb453 100644
--- a/docs/contributing.md
+++ b/docs/contributing.md
@@ -9,13 +9,13 @@ Help us find all bugs in Toxygen! Please provide following info:
- Toxygen executable info - .py or precompiled binary
- Steps to reproduce the bug
-Want to see new feature in Toxygen? [Open issue!](https://github.com/xveduk/toxygen/issues)
+Want to see new feature in Toxygen? [Ask for it!](https://github.com/xveduk/toxygen/issues)
#Pull requests
Developer? Feel free to open pull request. Our dev team is small so we glad to get help.
-Don't know what to do? Impove UI, fix [issues](https://github.com/xveduk/toxygen/issues) or implement features from our TODO list.
-You can find our TODO's in code and [here](/README.md)
+Don't know what to do? Improve UI, fix [issues](https://github.com/xveduk/toxygen/issues) or implement features from our TODO list.
+You can find our TODO's in code and [here](/README.md). Also you can implement plugins for Toxygen.
#Translations
diff --git a/docs/plugins.md b/docs/plugins.md
index 3fb13b7..36981c0 100644
--- a/docs/plugins.md
+++ b/docs/plugins.md
@@ -1,6 +1,6 @@
#Plugins
-Toxygen is the first [Tox](https://tox.chat/) client with plugins support. Plugin is Python module and directory with plugin's data which provide some additional functionality.
+Toxygen is the first [Tox](https://tox.chat/) client with plugins support. Plugin is Python module (.py file) and directory with plugin's data which provide some additional functionality.
#How to write plugin
diff --git a/src/menu.py b/src/menu.py
index 689d1d6..8b7c6be 100644
--- a/src/menu.py
+++ b/src/menu.py
@@ -548,6 +548,9 @@ class InterfaceSettings(CenteredWidget):
class AudioSettings(CenteredWidget):
+ """
+ Audio calls settings form
+ """
def __init__(self):
super(AudioSettings, self).__init__()
@@ -601,6 +604,9 @@ class AudioSettings(CenteredWidget):
class PluginsSettings(CenteredWidget):
+ """
+ Plugins settings form
+ """
def __init__(self):
super(PluginsSettings, self).__init__()
diff --git a/src/profile.py b/src/profile.py
index 3074f85..8a71797 100644
--- a/src/profile.py
+++ b/src/profile.py
@@ -506,6 +506,7 @@ class Profile(Contact, Singleton):
"""
Friend with specified number quit
"""
+ # TODO: fix
self.get_friend_by_number(friend_number).status = None
self.friend_typing(friend_number, False)
if friend_number in self._call:
diff --git a/src/translations/en_GB.ts b/src/translations/en_GB.ts
index 87c2b31..50ae041 100644
--- a/src/translations/en_GB.ts
+++ b/src/translations/en_GB.ts
@@ -3,50 +3,63 @@
AddContact
-
+
Add contact
-
+
TOX ID:
-
+
Message:
+
+
+
+
+
+
+
+ Callback
+
+
+
+
+
Form
-
+
Send request
-
+
IPv6
-
+
UDP
-
+
Proxy
-
+
IP:
-
+
Port:
@@ -56,12 +69,12 @@
Online contacts
-
+
HTTP
-
+
@@ -71,103 +84,103 @@ can produce IP leak
MainWindow
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Choose file
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Enter new alias for friend {} or leave empty to use friend's name:
-
+
Audio
@@ -177,82 +190,137 @@ can produce IP leak
Find contact
-
+
Friend added
-
+
Toxygen is Tox client written on Python.
Version:
-
+
Friend added without sending friend request
-
+
Choose folder
-
+
Send screenshot
-
+
Send file
-
+
Send message
-
+
Start audio call with friend
-
+
-
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
NetworkSettings
-
+
Network settings
-
+
Restart Tox core
@@ -260,12 +328,12 @@ Version:
PluginWindow
-
+
-
+
@@ -273,125 +341,130 @@ Version:
PluginsForm
-
+
-
+
-
+
-
+
-
+
-
+
+
+
+
+
+
ProfileSettingsForm
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
New NoSpam
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -399,17 +472,17 @@ Version:
audioSettingsForm
-
+
Audio settings
-
+
Input device:
-
+
Output device:
@@ -417,12 +490,12 @@ Version:
incoming_call
-
+
Incoming video call
-
+
Incoming audio call
@@ -430,17 +503,17 @@ Version:
interfaceForm
-
+
-
+
-
+
@@ -496,22 +569,22 @@ Version:
notificationsForm
-
+
-
+
-
+
-
+
@@ -519,77 +592,77 @@ Version:
privacySettings
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Blocked users:
-
+
Unblock
-
+
Block user
-
+
Add to friend list
-
+
Do you want to add this user to friend list?
-
+
Block by TOX ID:
diff --git a/src/translations/fr_FR.ts b/src/translations/fr_FR.ts
index 5755033..4824ecf 100644
--- a/src/translations/fr_FR.ts
+++ b/src/translations/fr_FR.ts
@@ -3,50 +3,63 @@
AddContact
-
+
Rajouter un contact
-
+
ID TOX :
-
+
Message :
+
+
+
+
+
+
+
+ Callback
+
+
+
+
+
Form
-
+
Envoyer une demande
-
+
IPv6
-
+
UDP
-
+
Proxy
-
+
IP :
-
+
Port :
@@ -56,12 +69,12 @@
Contacts connectés
-
+
HTTP
-
+
@@ -71,58 +84,58 @@ can produce IP leak
MainWindow
-
+
Profile
-
+
Paramêtres
-
+
À Propos
-
+
Rajouter un contact
-
+
Confidentialité
-
+
Interface
-
+
Notifications
-
+
Réseau
-
+
À propos du programme
-
+
L'Utilisateur {} veut vout rajouter à sa liste de contacts. Message : {}
-
+
Demande d'amis
@@ -132,47 +145,47 @@ can produce IP leak
Toxygen est un client Tox écris en Python 2.7. Version :
-
+
Choisir un fichier
-
+
Désactiver l'auto-réception
-
+
Activer l'auto-réception
-
+
Définir un alias
-
+
Vider l'historique
-
+
Copier la clé publique
-
+
Retirer un ami
-
+
Entrez un nouvel alias pour l'ami {} ou laissez vide pour garder son nom de base :
-
+
Audio
@@ -182,82 +195,137 @@ can produce IP leak
Trouver le contact
-
+
Ami rajouté
-
+
Toxygen est un client Tox écrit en Python.
Version :
-
+
Ami rajouté sans avoir envoyé de demande
-
+
Choisir le dossier
-
+
Envoyer une capture d'écran
-
+
Envoyer le fichier
-
+
Envoyer le message
-
+
Lancer un appel audio avec un ami
-
+
-
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
NetworkSettings
-
+
Paramètres réseaux
-
+
Relancer le noyau TOX
@@ -265,12 +333,12 @@ Version :
PluginWindow
-
+
-
+
@@ -278,125 +346,130 @@ Version :
PluginsForm
-
+
-
+
-
+
-
+
-
+
-
+
+
+
+
+
+
ProfileSettingsForm
-
+
Exporter le profile
-
+
Paramêtres du profil
-
+
Nom :
-
+
Status :
-
+
ID TOX :
-
+
Copier l'ID TOX
-
+
Nouvel avatar
-
+
Réinitialiser l'avatar
-
+
Nouveau NoSpam
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -404,17 +477,17 @@ Version :
audioSettingsForm
-
+
Paramètres audio
-
+
Péripherique d'entrée :
-
+
Péripherique de sortie :
@@ -422,12 +495,12 @@ Version :
incoming_call
-
+
Appel vidéo entrant
-
+
Appel audio entrant
@@ -435,17 +508,17 @@ Version :
interfaceForm
-
+
Paramêtres de l'interface
-
+
Thème :
-
+
Langue :
@@ -501,22 +574,22 @@ Version :
notificationsForm
-
+
Paramêtres de notification
-
+
Activer les notifications
-
+
Activer les sons d'appel
-
+
Activer les sons de notifications
@@ -524,77 +597,77 @@ Version :
privacySettings
-
+
Paramêtres de confidentialité
-
+
Sauvegarder l'historique de chat
-
+
Autoriser les fichier automatiquement
-
+
Notifier la frappe
-
+
Chemin d'accès des fichiers acceptés automatiquement :
-
+
Modifier
-
+
Activer l'auto-réception
-
+
Historique de chat
-
+
L'Historique va être nettoyé ! Confirmer ?
-
+
Utilisateurs bloqués :
-
+
Débloquer
-
+
Bloquer l'utilisateur
-
+
Ajouter à la liste des amis
-
+
Voulez vous rajouter cet utilisateur à votre liste d'amis ?
-
+
Bloquer l'ID TOX :
diff --git a/src/translations/ru_RU.qm b/src/translations/ru_RU.qm
index dffe08c..bf98ef1 100644
Binary files a/src/translations/ru_RU.qm and b/src/translations/ru_RU.qm differ
diff --git a/src/translations/ru_RU.ts b/src/translations/ru_RU.ts
index 83723b0..d6a8cd3 100644
--- a/src/translations/ru_RU.ts
+++ b/src/translations/ru_RU.ts
@@ -4,50 +4,63 @@
AddContact
-
+
Добавить контакт
-
+
TOX ID:
-
+
Сообщение:
+
+
+
+ TOX ID или публичный ключ контакта
+
+
+
+ Callback
+
+
+
+ Файл от
+
Form
-
+
Отправить запрос
-
+
IPv6
-
+
UDP
-
+
Прокси
-
+
IP:
-
+
Порт:
@@ -57,16 +70,16 @@
Контакты в сети
-
+
HTTP
-
+
- Предупреждение:
+ Предупреждение:
использование прокси с UDP
может привести к утечке IP
@@ -74,104 +87,104 @@ can produce IP leak
MainWindow
-
+
Профиль
-
+
Настройки
-
+
О программе
-
+
Добавить контакт
-
+
Приватность
-
+
Интерфейс
-
+
Уведомления
-
+
Сеть
-
+
О программе
-
+
Пользователь {} хочет добавить Вас в список контактов. Сообщение:
{}
-
+
Запрос на добавление в друзья
-
+
Выберите файл
-
+
Запретить автоматическое получение файлов
-
+
Разрешить автоматическое получение файлов
-
+
Изменить псевдоним
-
+
Очистить историю
-
+
Копировать публичный ключ
-
+
Удалить друга
-
+
Введите новый псевдоним для друга {} или оставьте пустым для использования его имени:
-
+
Аудио
@@ -181,81 +194,136 @@ can produce IP leak
Найти контакт
-
+
Друг добавлен
-
+
Toxygen - клиент для мессенджера Tox, написанный на Python. Версия:
-
+
Друг добавлен без отправки запроса на добавление в друзья
-
+
Выбрать папку
-
+
Отправить снимок экрана
-
+
Отправить файл
-
+
Отправить сообщение
-
+
Начать аудиозвонок с другом
-
+
Плагины
-
+
Список плагинов
-
+
Поиск
-
+
Все
-
+
Онлайн
+
+
+
+ Заметки
+
+
+
+
+ Заметки о пользователе
+
+
+
+
+ Копировать адрес ссылки
+
+
+
+
+ Копировать
+
+
+
+
+ Выделить всё
+
+
+
+
+ Удалить
+
+
+
+
+ Вставить
+
+
+
+
+ Вырезать
+
+
+
+
+ Отменить
+
+
+
+
+ Повторить
+
+
+
+
+ Сохранить
+
NetworkSettings
-
+
Настройки сети
-
+
Перезапустить ядро TOX
@@ -263,12 +331,12 @@ Version:
PluginWindow
-
+
Список команд для плагина {}
-
+
Команды не найдены
@@ -276,65 +344,70 @@ Version:
PluginsForm
-
+
Плагины
-
+
Открыть выбранный плагин
-
+
GUI для данного плагина не найден
-
+
Описание недоступно
-
+
Отключить плагин
-
+
Включить плагин
+
+
+
+ Плагины не найдены
+
ProfileSettingsForm
-
+
Экспорт профиля
-
+
Настройки профиля
-
+
Имя:
-
+
Статус:
-
+
TOX ID:
-
+
Копировать TOX ID
@@ -344,62 +417,62 @@ Version:
Язык:
-
+
Новый аватар
-
+
Сбросить аватар
-
+
Новый NoSpam
-
+
Пароль профиля
-
+
Пароль (минимум 8 символов)
-
+
Подтверждение пароля
-
+
Изменить пароль
-
+
Пароли не совпадают
-
+
Пустое поле сбросит текущий пароль
-
+
Восстановление забытых паролей не поддерживается
-
+
Пароль должен быть длиной не менее 8 символов
-
+
Выбрать аватар
@@ -407,17 +480,17 @@ Version:
audioSettingsForm
-
+
Настройки аудио
-
+
Устройство ввода:
-
+
Устройство вывода:
@@ -425,12 +498,12 @@ Version:
incoming_call
-
+
Входящий видеозвонок
-
+
Входящий аудиозвонок
@@ -438,17 +511,17 @@ Version:
interfaceForm
-
+
Настройки интерфейса
-
+
Тема:
-
+
Язык:
@@ -504,22 +577,22 @@ Version:
notificationsForm
-
+
Настройки уведомлений
-
+
Включить уведомления
-
+
Включить звук звонка
-
+
Включить звуковые уведомления
@@ -528,77 +601,77 @@ Version:
privacySettings
-
+
Настройки приватности
-
+
Сохранять историю переписки
-
+
Разрешить автополучение файлов
-
+
Посылать уведомления о наборе текста
-
+
Путь автоприема файлов:
-
+
Изменить
-
+
Разрешать инлайны
-
+
История чата
-
+
История переписки будет очищена! Продолжить?
-
+
Заблокированные пользователи:
-
+
Разблокировать
-
+
Заблокировать пользователя
-
+
Добавить в список друзей
-
+
Добавить этого пользователя в список друзей?
-
+
Блокировать по TOX ID:
diff --git a/src/widgets.py b/src/widgets.py
index 51121fc..3fdccf3 100644
--- a/src/widgets.py
+++ b/src/widgets.py
@@ -5,6 +5,9 @@ except ImportError:
class DataLabel(QtGui.QLabel):
+ """
+ Label with elided text
+ """
def paintEvent(self, event):
painter = QtGui.QPainter(self)
@@ -27,6 +30,9 @@ class CenteredWidget(QtGui.QWidget):
class QRightClickButton(QtGui.QPushButton):
+ """
+ Button with right click support
+ """
def __init__(self, parent):
super(QRightClickButton, self).__init__(parent)
@@ -56,10 +62,13 @@ class RubberBand(QtGui.QRubberBand):
def create_menu(menu):
+ """
+ :return translated menu
+ """
for action in menu.actions():
text = action.text()
if 'Link Location' in text:
- text = text.replace('Copy Link Location',
+ text = text.replace('Copy &Link Location',
QtGui.QApplication.translate("MainWindow", "Copy link location", None,
QtGui.QApplication.UnicodeUTF8))
elif '&Copy' in text: