- added help in window About\nchanged About QMessageBox by a window

This commit is contained in:
Daniel Tartavel 2023-02-13 16:54:56 +01:00
parent d681d65d9c
commit ca61c6013e
8 changed files with 202 additions and 57 deletions

View File

@ -3,3 +3,45 @@
client Rsync - QT5 - KDE
# Compilation:
$ qmake
$ make
$ make install
# Lancement
Lancez le programme en cliquant sur l'icone ou en tapant dans un terminal:
$ RsyncUI
# Utilisation
Entrez le nom du serveur et le numéro port dans les champs de saisie dédiés.(par défaut le port est 873)
La liste des services s'affiche dans le cadre services, cliquez sur celui que vous voulez consulter.
La liste des dossiers et des fichiers s'affichent.
Un clic gauche sur un fichier l'ajoute à la file des téléchargements, sur un dossier, ça l'ouvre.
Un clic droit sur un dossier ouvre un menu contextuel permettant de télécharger le dossier entier.
Une notification s'affiche lors du début, de la fin, et lorsque l'on stoppe un téléchargement.
Le gadget de fermeture ferme la fenêtre mais ne quitte pas l'application, pour afficher à nouveau la fenêtre, cliquez sur l'icône dans la boite à miniatures.
## File de téléchargement
Cliquez sur un fichier pour le supprimer de la file et une fenêtre de confirmation apparait.
## Barre d'outils
1er icône: Changer le dossier de destination
Permet de changer le dossier de téléchargement par défaut pour chaque service de chaque serveur.
2ème icône: Paramètres de l'application
- Limite de bande passante
Permet de limiter le débit de téléchargement en Ko, Mo, Go, To et Po.
Si la valeur est 0 alors pas de limite de la vitesse de téléchargement.
- Affichage de la barre d'outils
Permet de choisir le style d'affichage des icônes de la barre d'outils
- Enregistrement automatique
Enregistre automatiquement la liste des téléchargements en cours.(activé par défaut)
3ème icône: À propos
Affiche les propriétés de l'application.
4ème icône: À propos de QT
5 ème icône: Quitter
Permet de quitter le programme.

View File

@ -27,6 +27,7 @@ HEADERS += \
tools.h
FORMS += \
about.ui \
configuration.ui \
mainwindow.ui

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 4.14.2, 2023-02-12T17:55:57. -->
<!-- Written by QtCreator 4.14.2, 2023-02-13T00:55:51. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>

View File

@ -183,209 +183,238 @@
<translation>Paramètres</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="90"/>
<location filename="mainwindow.cpp" line="101"/>
<source>KB</source>
<translation>Ko</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="90"/>
<location filename="mainwindow.cpp" line="101"/>
<source>MB</source>
<translation>Mo</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="90"/>
<location filename="mainwindow.cpp" line="101"/>
<source>GB</source>
<translation>Go</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="90"/>
<location filename="mainwindow.cpp" line="101"/>
<source>TB</source>
<translation>To</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="90"/>
<location filename="mainwindow.cpp" line="101"/>
<source>PB</source>
<translation>Po</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="50"/>
<source>Client for rsync server
<location filename="mainwindow.cpp" line="59"/>
<source>You click on file to enqueue it, and RyncUI Download one file a time</source>
<oldsource>Client for rsync server&lt;br&gt;&lt;br&gt;You click on file to enqueue it, and RyncUI Download one file a time</oldsource>
<translation>&lt;h3&gt;Utilisation&lt;/h3&gt;
Entrez le nom du serveur et le numéro du port dans les champs de saisie dédiés.(par défaut le port est 873)
La liste des services s&apos;affiche dans le cadre services, cliquez sur celui que vous voulez consulter.
La liste des dossiers et des fichiers s&apos;affichent.
Un clic gauche sur un fichier l&apos;ajoute à la file des téléchargements, sur un dossier, ça l&apos;ouvre.
Un clic droit sur un dossier ouvre un menu contextuel permettant de télécharger le dossier entier.
Une notification s&apos;affiche lors du début, de la fin, et lorsque l&apos;on stoppe un téléchargement.
Le gadget de fermeture ferme la fenêtre mais ne quitte pas l&apos;application, pour afficher à nouveau la fenêtre, cliquez sur l&apos;icône dans la boite à miniatures.
You click on file to enqueue it, and RyncUI Download one file a time</source>
<translation>Client pour serveur rsync
&lt;h3&gt;File de téléchargement&lt;/h3&gt;
Cliquez sur un fichier pour le supprimer de la file et une fenêtre de confirmation apparait.
Cliquez sur un fichier pour l&apos;ajouter dans la file de téléchargement</translation>
&lt;h3&gt;Barre d&apos;outils&lt;/h3&gt;
&lt;b&gt;1er icône: Changer le dossier de destination&lt;/b&gt;&lt;br&gt;
Permet de changer le dossier de téléchargement par défaut pour chaque service de chaque serveur.&lt;br&gt;
&lt;b&gt;2ème icône: Paramètres de l&apos;application&lt;/b&gt;&lt;br&gt;
Limite de bande passante: permet de limiter le débit de téléchargement en Ko, Mo, Go, To et Po.&lt;br&gt;
Si la valeur est 0 alors pas de limite de la vitesse de téléchargement.&lt;br&gt;
- Affichage de la barre d&apos;outils&lt;br&gt;
Permet de choisir le style d&apos;affichage des icônes de la barre d&apos;outils&lt;br&gt;
- Enregistrement automatique&lt;br&gt;
Enregistre automatiquement la liste des téléchargements en cours.(activé par défaut)&lt;br&gt;
&lt;b&gt;3ème icône: À propos&lt;/b&gt;&lt;br&gt;
affiche les propriétés de l&apos;application, ainsi que l&apos;aide.&lt;br&gt;
&lt;b&gt;4ème icône: À propos de QT&lt;/b&gt;&lt;br&gt;
affiche les propriétés de QT&lt;br&gt;
&lt;b&gt;5ème icône: Quitter&lt;/b&gt;&lt;br&gt;
Permet de quitter le programme</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="62"/>
<location filename="mainwindow.cpp" line="53"/>
<source>&lt;h2&gt;Client for rsync server&lt;2&gt;&lt;br&gt;&lt;br&gt;</source>
<translation>&lt;h2&gt;Client pour serveur rsync&lt;2&gt;&lt;br&gt;&lt;br&gt;éaa</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="73"/>
<source>Path</source>
<translation>Chemin</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="62"/>
<location filename="mainwindow.cpp" line="73"/>
<source>Size</source>
<translation>Taille</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="62"/>
<location filename="mainwindow.cpp" line="73"/>
<source>Type</source>
<translation>Type</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="97"/>
<location filename="mainwindow.cpp" line="108"/>
<source>A list of interrupted downloads exists, do you want to continue downloading ? if not the list will be cleared</source>
<translation>Une liste de téléchargement existe, voulez-vous utiliser cette liste ? si non, elle sera effacée</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="125"/>
<location filename="mainwindow.cpp" line="136"/>
<source>&amp;Quit</source>
<translation>&amp;Quitter</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="182"/>
<location filename="mainwindow.cpp" line="193"/>
<source>Clicking Save button, You can save the list of downloads
</source>
<translation>Vous pouvez enregistrer la liste des téléchargements en cliquant sur &quot;enregister&quot;
</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="187"/>
<location filename="mainwindow.cpp" line="198"/>
<source>Exiting will stop downloading, and will clear the download queue.
Do you want to exit ?</source>
<translation>Si vous sortez, les téléchargements seront arrêter.
Voulez-vous vraiment sortir ?</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="215"/>
<location filename="mainwindow.cpp" line="226"/>
<source>The program will keep running in the system tray. To terminate the program, choose &lt;b&gt;Quit&lt;/b&gt; in the context menu of the system tray entry.</source>
<translation>Le programme continue dans la boîte à miniatures. Pour quitter le programme cliquez sur l&apos;icône &lt;b&gt;Quitter&lt;/b&gt; ou dans les menu contextuel.</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="500"/>
<location filename="mainwindow.cpp" line="511"/>
<source>server does not exists</source>
<translation>Le serveur n&apos;existe pas</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="527"/>
<location filename="mainwindow.cpp" line="547"/>
<location filename="mainwindow.cpp" line="538"/>
<location filename="mainwindow.cpp" line="558"/>
<source>Dir</source>
<translation>dossier</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="531"/>
<location filename="mainwindow.cpp" line="615"/>
<location filename="mainwindow.cpp" line="542"/>
<location filename="mainwindow.cpp" line="626"/>
<source>File</source>
<translation>Doc</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="624"/>
<location filename="mainwindow.cpp" line="635"/>
<source>File is already downloaded. Do you want to reload it ? The old file will be deleted</source>
<translation>Le document est déjà téléchargé. Voulez-vous le télécharger à nouveau ? L&apos;ancien fichier sera effacé</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="659"/>
<location filename="mainwindow.cpp" line="670"/>
<source>File is already downloading</source>
<translation>Le document est déjà en téléchargement</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="682"/>
<location filename="mainwindow.cpp" line="693"/>
<source>Starting downloading
</source>
<translation>Démarrage du téléchargement
</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="697"/>
<location filename="mainwindow.cpp" line="708"/>
<source>finished</source>
<translation>Terminé</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="705"/>
<location filename="mainwindow.cpp" line="716"/>
<source>Rsync process crashed</source>
<translation>Le processus rsync à planté</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="717"/>
<location filename="mainwindow.cpp" line="728"/>
<source>stopped by user</source>
<translation>stoppé par l&apos;utilisateur</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="721"/>
<location filename="mainwindow.cpp" line="732"/>
<source>Download </source>
<translation>Téléchargement </translation>
</message>
<message>
<location filename="mainwindow.cpp" line="867"/>
<location filename="mainwindow.cpp" line="54"/>
<source>Version</source>
<translation>Version</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="868"/>
<location filename="mainwindow.cpp" line="55"/>
<source>Licence</source>
<translation>License</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="869"/>
<location filename="mainwindow.cpp" line="56"/>
<source>Author</source>
<translation>Auteur</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="870"/>
<location filename="mainwindow.cpp" line="57"/>
<source>EMail</source>
<translation>Courriel</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="871"/>
<location filename="mainwindow.cpp" line="58"/>
<source>Source code</source>
<translation>Code source</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="894"/>
<location filename="mainwindow.cpp" line="899"/>
<source>Since the save path is linked to service, you need to select a service before you can select a folder</source>
<translation>Vous devez sélectionnez un service pour pouvoir sélectionnez un dossier par défaut</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="899"/>
<location filename="mainwindow.cpp" line="904"/>
<source>Choose folder where to save file</source>
<translation>Choisissez un dossier enregistrer le document</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="785"/>
<location filename="mainwindow.cpp" line="796"/>
<source>Do you want to stop downloading and delete this file from download queue ?</source>
<translation>Voulez-vous arrêter le téléchargement et enlever ce fichier de la file de téléchargement ?</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="799"/>
<location filename="mainwindow.cpp" line="810"/>
<source>Do you want to delete this file from download queue ?</source>
<translation>Voulez-vous enlever ce fichier de la file de téléchargement ?</translation>
</message>
<message>
<location filename="mainwindow.h" line="122"/>
<location filename="mainwindow.h" line="125"/>
<source>The process failed to start. Either the invoked program is missing, or you may have insufficient permissions or resources to invoke the program.</source>
<translation>Le processus échoué, soit le programme est manquant, soit vous n&apos;avez pas l&apos;autorisation de l&apos;exécuter.</translation>
</message>
<message>
<location filename="mainwindow.h" line="123"/>
<location filename="mainwindow.h" line="126"/>
<source>The process crashed some time after starting successfully.</source>
<translation>Le processus à planté après avoir démarré avec succès.</translation>
</message>
<message>
<location filename="mainwindow.h" line="124"/>
<location filename="mainwindow.h" line="127"/>
<source>The last waitFor...() function timed out. The state of QProcess is unchanged, and you can try calling waitFor...() again.</source>
<translation>La fonction waitFor...() a dépassé la limite de temps, you pouvez essayer de la relancer.</translation>
</message>
<message>
<location filename="mainwindow.h" line="125"/>
<location filename="mainwindow.h" line="128"/>
<source>An error occurred when attempting to write to the process. For example, the process may not be running, or it may have closed its input channel.</source>
<translation>Une erreur est survenue lors de l&apos;envoi des données vers le processus. Le processus est peut être arrté ou il a fermé son canal d&apos;entrée.</translation>
</message>
<message>
<location filename="mainwindow.h" line="126"/>
<location filename="mainwindow.h" line="129"/>
<source>An error occurred when attempting to read from the process. For example, the process may not be running.</source>
<translation>Une erreur est survenue lors de la lecturee de données, le processus est probablement arrêté.</translation>
</message>
<message>
<location filename="mainwindow.h" line="127"/>
<location filename="mainwindow.h" line="130"/>
<source>An unknown error occurred. This is the default return value of error().</source>
<translation>Une erreur inconnue est survenue. C&apos;est la valeur de retour par défaut de error().</translation>
</message>
@ -478,4 +507,12 @@ Voulez-vous vraiment sortir ?</translation>
<translation>Transfert partiel à la disparition des fichiers source. Des fichiers source ont disparu avec d&apos;avoir é transférés.</translation>
</message>
</context>
<context>
<name>windowAbout</name>
<message>
<location filename="about.ui" line="23"/>
<source>About RsyncUI</source>
<translation>À propos de RsyncUI</translation>
</message>
</context>
</TS>

57
about.ui Normal file
View File

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>windowAbout</class>
<widget class="QWidget" name="windowAbout">
<property name="windowModality">
<enum>Qt::NonModal</enum>
</property>
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>640</width>
<height>387</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="windowTitle">
<string>About RsyncUI</string>
</property>
<property name="windowIcon">
<iconset>
<normaloff>../../../../usr/share/icons/RsyncUI.png</normaloff>../../../../usr/share/icons/RsyncUI.png</iconset>
</property>
<property name="autoFillBackground">
<bool>true</bool>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="sizeConstraint">
<enum>QLayout::SetNoConstraint</enum>
</property>
<item>
<widget class="QTextEdit" name="TextAbout">
<property name="autoFormatting">
<set>QTextEdit::AutoAll</set>
</property>
<property name="undoRedoEnabled">
<bool>false</bool>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -46,8 +46,19 @@ MainWindow::MainWindow(QWidget *parent)
// init configuration window
config.setupUi(&Configuration);
// init of About
this->about.description = tr("Client for rsync server\n\nYou click on file to enqueue it, and RyncUI Download one file a time");
// init about window
AboutW.setupUi(&aboutDialog);
// text of About
QString aboutText = tr("<h2>Client for rsync server</h2>") +
"<b>" + tr("Version") + ": " + this->about.version + "</b><br>" +
"<b>" + tr("Licence") + ": " + this->about.licence + "</b><br>" +
"<b>" + tr("Author") + ": " + this->about.author + "</b><br>" +
"<b>" + tr("EMail") + ": " + this->about.email + "</b><br>" +
"<b>" + tr("Source code") + ": " + this->about.git + "</b><br>" +
tr("You click on file to enqueue it, and RyncUI Download one file a time");
AboutW.TextAbout->setHtml(aboutText);
// connectors
connect(this, &MainWindow::progressSignal, ui->progressBar, &QProgressBar::setValue);
@ -863,13 +874,7 @@ void MainWindow::saveSettings()
// About
void MainWindow::on_actionAbout_triggered()
{
QString text = this->about.description + "\n\n" +
tr("Version") + ": " + this->about.version + "\n" +
tr("Licence") + ": " + this->about.licence + "\n" +
tr("Author") + ": " + this->about.author + "\n" +
tr("EMail") + ": " + this->about.email + "\n" +
tr("Source code") + ": " + this->about.git;
QMessageBox::about(this, this->about.title, text);
aboutDialog.show();
}
// About QT
@ -1029,7 +1034,7 @@ void MainWindow::on_actionDownload_triggered()
}
*/
// Chnage toolbar style
// Change toolbar style
void MainWindow::on_comboBox_currentIndexChanged(int index)
{
ui->toolBar->setToolButtonStyle((Qt::ToolButtonStyle)index);

View File

@ -4,6 +4,7 @@
#define QT_USE_FAST_OPERATOR_PLUS
#include "ui_mainwindow.h"
#include "ui_configuration.h"
#include "ui_about.h"
#include "downloadfile.h"
#include "tools.h"
#include <QMainWindow>
@ -100,6 +101,8 @@ class MainWindow : public QMainWindow
About about;
QDialog Configuration;
Ui::Configuration config;
QDialog aboutDialog;
Ui::windowAbout AboutW;
std::vector <QString> serversList;
QSystemTrayIcon * trayIcon;
QList<QString> bwUnitText {